{"version":3,"sources":["webpack://gatsby-starter-default/./node_modules/react-bootstrap/esm/CardContext.js","webpack://gatsby-starter-default/./node_modules/dom-helpers/esm/getComputedStyle.js","webpack://gatsby-starter-default/./node_modules/dom-helpers/esm/ownerWindow.js","webpack://gatsby-starter-default/./node_modules/dom-helpers/esm/hyphenate.js","webpack://gatsby-starter-default/./node_modules/dom-helpers/esm/hyphenateStyle.js","webpack://gatsby-starter-default/./node_modules/dom-helpers/esm/isTransform.js","webpack://gatsby-starter-default/./node_modules/dom-helpers/esm/css.js","webpack://gatsby-starter-default/./node_modules/react-transition-group/esm/config.js","webpack://gatsby-starter-default/./node_modules/react-transition-group/esm/TransitionGroupContext.js","webpack://gatsby-starter-default/./node_modules/react-transition-group/esm/Transition.js","webpack://gatsby-starter-default/./node_modules/dom-helpers/esm/transitionEnd.js","webpack://gatsby-starter-default/./node_modules/react-bootstrap/esm/transitionEndListener.js","webpack://gatsby-starter-default/./node_modules/react-bootstrap/esm/Collapse.js","webpack://gatsby-starter-default/./node_modules/react-bootstrap/esm/triggerBrowserReflow.js"],"names":["context","displayName","getComputedStyle","node","psuedoElement","doc","ownerDocument","defaultView","window","ownerWindow","rUpper","msPattern","hyphenateStyleName","string","replace","toLowerCase","hyphenate","supportedTransforms","property","css","transforms","style","getPropertyValue","Object","keys","forEach","key","value","test","isTransform","removeProperty","cssText","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING","Transition","_React$Component","props","_this","call","this","initialStatus","appear","isMounting","enter","appearStatus","in","unmountOnExit","mountOnEnter","state","status","nextCallback","getDerivedStateFromProps","_ref","prevState","_proto","prototype","componentDidMount","updateStatus","componentDidUpdate","prevProps","nextStatus","componentWillUnmount","cancelNextCallback","getTimeouts","exit","timeout","undefined","mounting","performEnter","performExit","setState","_this2","appearing","_ref2","nodeRef","maybeNode","maybeAppearing","timeouts","enterTimeout","config","safeSetState","onEntered","onEnter","onEntering","onTransitionEnd","_this3","onExit","onExiting","onExited","cancel","nextState","callback","setNextCallback","_this4","active","event","handler","current","doesNotHaveTimeoutOrListener","addEndListener","_ref3","maybeNextCallback","setTimeout","render","_this$props","children","childProps","TransitionGroupContext","Provider","noop","contextType","defaultProps","emulateTransitionEnd","element","duration","padding","called","handle","evt","document","createEvent","initEvent","dispatchEvent","triggerTransitionEnd","remove","listen","once","clearTimeout","transitionEnd","str","mult","indexOf","parseFloat","removeEmulate","transitionEndListener","e","target","_collapseStyles","MARGINS","height","width","getDefaultDimensionValue","dimension","elem","toUpperCase","slice","margins","parseInt","collapseStyles","getDimensionValue","Collapse","ref","className","_ref$dimension","_ref$getDimensionValu","computedDimension","handleEnter","useMemo","createChainedFunction","handleEntering","scroll","handleEntered","handleExit","offsetHeight","handleExiting","role","innerProps"],"mappings":"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","file":"ff432e7368989e5949c489e93fbb8606a5a68f2f-43f713eed2e04400c4b2.js","sourcesContent":["import React from 'react';\nvar context = /*#__PURE__*/React.createContext(null);\ncontext.displayName = 'CardContext';\nexport default context;","import ownerWindow from './ownerWindow';\nexport default function getComputedStyle(node, psuedoElement) {\n return ownerWindow(node).getComputedStyle(node, psuedoElement);\n}","import ownerDocument from './ownerDocument';\nexport default function ownerWindow(node) {\n var doc = ownerDocument(node);\n return doc && doc.defaultView || window;\n}","var rUpper = /([A-Z])/g;\nexport default function hyphenate(string) {\n return string.replace(rUpper, '-$1').toLowerCase();\n}","/**\n * Copyright 2013-2014, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js\n */\nimport hyphenate from './hyphenate';\nvar msPattern = /^ms-/;\nexport default function hyphenateStyleName(string) {\n return hyphenate(string).replace(msPattern, '-ms-');\n}","var supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i;\nexport default function isTransform(value) {\n return !!(value && supportedTransforms.test(value));\n}","import getComputedStyle from './getComputedStyle';\nimport hyphenate from './hyphenateStyle';\nimport isTransform from './isTransform';\n\nfunction style(node, property) {\n var css = '';\n var transforms = '';\n\n if (typeof property === 'string') {\n return node.style.getPropertyValue(hyphenate(property)) || getComputedStyle(node).getPropertyValue(hyphenate(property));\n }\n\n Object.keys(property).forEach(function (key) {\n var value = property[key];\n\n if (!value && value !== 0) {\n node.style.removeProperty(hyphenate(key));\n } else if (isTransform(key)) {\n transforms += key + \"(\" + value + \") \";\n } else {\n css += hyphenate(key) + \": \" + value + \";\";\n }\n });\n\n if (transforms) {\n css += \"transform: \" + transforms + \";\";\n }\n\n node.style.cssText += \";\" + css;\n}\n\nexport default style;","export default {\n disabled: false\n};","import React from 'react';\nexport default React.createContext(null);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport config from './config';\nimport { timeoutsShape } from './utils/PropTypes';\nimport TransitionGroupContext from './TransitionGroupContext';\nexport var UNMOUNTED = 'unmounted';\nexport var EXITED = 'exited';\nexport var ENTERING = 'entering';\nexport var ENTERED = 'entered';\nexport var EXITING = 'exiting';\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * ---\n *\n * **Note**: `Transition` is a platform-agnostic base component. If you're using\n * transitions in CSS, you'll probably want to use\n * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition)\n * instead. It inherits all the features of `Transition`, but contains\n * additional features necessary to play nice with CSS transitions (hence the\n * name of the component).\n *\n * ---\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the\n * components. It's up to you to give meaning and effect to those states. For\n * example we can add styles to a component when it enters or exits:\n *\n * ```jsx\n * import { Transition } from 'react-transition-group';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 1 },\n * entered: { opacity: 1 },\n * exiting: { opacity: 0 },\n * exited: { opacity: 0 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {state => (\n *
\n * I'm a fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * There are 4 main states a Transition can be in:\n * - `'entering'`\n * - `'entered'`\n * - `'exiting'`\n * - `'exited'`\n *\n * Transition state is toggled via the `in` prop. When `true` the component\n * begins the \"Enter\" stage. During this stage, the component will shift from\n * its current transition state, to `'entering'` for the duration of the\n * transition and then to the `'entered'` stage once it's complete. Let's take\n * the following example (we'll use the\n * [useState](https://reactjs.org/docs/hooks-reference.html#usestate) hook):\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n *
\n * \n * {state => (\n * // ...\n * )}\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state\n * and stay there for 500ms (the value of `timeout`) before it finally switches\n * to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from\n * `'exiting'` to `'exited'`.\n */\n\nvar Transition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Transition, _React$Component);\n\n function Transition(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n var parentGroup = context; // In the context of a TransitionGroup all enters are really appears\n\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n var initialStatus;\n _this.appearStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.appearStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = {\n status: initialStatus\n };\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {\n var nextIn = _ref.in;\n\n if (nextIn && prevState.status === UNMOUNTED) {\n return {\n status: EXITED\n };\n }\n\n return null;\n } // getSnapshotBeforeUpdate(prevProps) {\n // let nextStatus = null\n // if (prevProps !== this.props) {\n // const { status } = this.state\n // if (this.props.in) {\n // if (status !== ENTERING && status !== ENTERED) {\n // nextStatus = ENTERING\n // }\n // } else {\n // if (status === ENTERING || status === ENTERED) {\n // nextStatus = EXITING\n // }\n // }\n // }\n // return { nextStatus }\n // }\n ;\n\n var _proto = Transition.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.updateStatus(true, this.appearStatus);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var nextStatus = null;\n\n if (prevProps !== this.props) {\n var status = this.state.status;\n\n if (this.props.in) {\n if (status !== ENTERING && status !== ENTERED) {\n nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n nextStatus = EXITING;\n }\n }\n }\n\n this.updateStatus(false, nextStatus);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n _proto.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n var exit, enter, appear;\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter; // TODO: remove fallback for next major\n\n appear = timeout.appear !== undefined ? timeout.appear : enter;\n }\n\n return {\n exit: exit,\n enter: enter,\n appear: appear\n };\n };\n\n _proto.updateStatus = function updateStatus(mounting, nextStatus) {\n if (mounting === void 0) {\n mounting = false;\n }\n\n if (nextStatus !== null) {\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n\n if (nextStatus === ENTERING) {\n this.performEnter(mounting);\n } else {\n this.performExit();\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({\n status: UNMOUNTED\n });\n }\n };\n\n _proto.performEnter = function performEnter(mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n var appearing = this.context ? this.context.isMounting : mounting;\n\n var _ref2 = this.props.nodeRef ? [appearing] : [ReactDOM.findDOMNode(this), appearing],\n maybeNode = _ref2[0],\n maybeAppearing = _ref2[1];\n\n var timeouts = this.getTimeouts();\n var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n\n if (!mounting && !enter || config.disabled) {\n this.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode);\n });\n return;\n }\n\n this.props.onEnter(maybeNode, maybeAppearing);\n this.safeSetState({\n status: ENTERING\n }, function () {\n _this2.props.onEntering(maybeNode, maybeAppearing);\n\n _this2.onTransitionEnd(enterTimeout, function () {\n _this2.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode, maybeAppearing);\n });\n });\n });\n };\n\n _proto.performExit = function performExit() {\n var _this3 = this;\n\n var exit = this.props.exit;\n var timeouts = this.getTimeouts();\n var maybeNode = this.props.nodeRef ? undefined : ReactDOM.findDOMNode(this); // no exit animation skip right to EXITED\n\n if (!exit || config.disabled) {\n this.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n return;\n }\n\n this.props.onExit(maybeNode);\n this.safeSetState({\n status: EXITING\n }, function () {\n _this3.props.onExiting(maybeNode);\n\n _this3.onTransitionEnd(timeouts.exit, function () {\n _this3.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n });\n });\n };\n\n _proto.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n _proto.safeSetState = function safeSetState(nextState, callback) {\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, callback);\n };\n\n _proto.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n _proto.onTransitionEnd = function onTransitionEnd(timeout, handler) {\n this.setNextCallback(handler);\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this);\n var doesNotHaveTimeoutOrListener = timeout == null && !this.props.addEndListener;\n\n if (!node || doesNotHaveTimeoutOrListener) {\n setTimeout(this.nextCallback, 0);\n return;\n }\n\n if (this.props.addEndListener) {\n var _ref3 = this.props.nodeRef ? [this.nextCallback] : [node, this.nextCallback],\n maybeNode = _ref3[0],\n maybeNextCallback = _ref3[1];\n\n this.props.addEndListener(maybeNode, maybeNextCallback);\n }\n\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n };\n\n _proto.render = function render() {\n var status = this.state.status;\n\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _this$props = this.props,\n children = _this$props.children,\n _in = _this$props.in,\n _mountOnEnter = _this$props.mountOnEnter,\n _unmountOnExit = _this$props.unmountOnExit,\n _appear = _this$props.appear,\n _enter = _this$props.enter,\n _exit = _this$props.exit,\n _timeout = _this$props.timeout,\n _addEndListener = _this$props.addEndListener,\n _onEnter = _this$props.onEnter,\n _onEntering = _this$props.onEntering,\n _onEntered = _this$props.onEntered,\n _onExit = _this$props.onExit,\n _onExiting = _this$props.onExiting,\n _onExited = _this$props.onExited,\n _nodeRef = _this$props.nodeRef,\n childProps = _objectWithoutPropertiesLoose(_this$props, [\"children\", \"in\", \"mountOnEnter\", \"unmountOnExit\", \"appear\", \"enter\", \"exit\", \"timeout\", \"addEndListener\", \"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"onExited\", \"nodeRef\"]);\n\n return (\n /*#__PURE__*/\n // allows for nested Transitions\n React.createElement(TransitionGroupContext.Provider, {\n value: null\n }, typeof children === 'function' ? children(status, childProps) : React.cloneElement(React.Children.only(children), childProps))\n );\n };\n\n return Transition;\n}(React.Component);\n\nTransition.contextType = TransitionGroupContext;\n\n// Name the function so it is clearer in the documentation\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\nTransition.UNMOUNTED = UNMOUNTED;\nTransition.EXITED = EXITED;\nTransition.ENTERING = ENTERING;\nTransition.ENTERED = ENTERED;\nTransition.EXITING = EXITING;\nexport default Transition;","import css from './css';\nimport listen from './listen';\n\nfunction parseDuration(node) {\n var str = css(node, 'transitionDuration') || '';\n var mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\n\nfunction triggerTransitionEnd(element) {\n var evt = document.createEvent('HTMLEvents');\n evt.initEvent('transitionend', true, true);\n element.dispatchEvent(evt);\n}\n\nfunction emulateTransitionEnd(element, duration, padding) {\n if (padding === void 0) {\n padding = 5;\n }\n\n var called = false;\n var handle = setTimeout(function () {\n if (!called) triggerTransitionEnd(element);\n }, duration + padding);\n var remove = listen(element, 'transitionend', function () {\n called = true;\n }, {\n once: true\n });\n return function () {\n clearTimeout(handle);\n remove();\n };\n}\n\nexport default function transitionEnd(element, handler, duration, padding) {\n if (duration == null) duration = parseDuration(element) || 0;\n var removeEmulate = emulateTransitionEnd(element, duration, padding);\n var remove = listen(element, 'transitionend', handler);\n return function () {\n removeEmulate();\n remove();\n };\n}","import transitionEnd from 'dom-helpers/transitionEnd';\nexport default function transitionEndListener(element, handler) {\n var remove = transitionEnd(element, function (e) {\n if (e.target === element) {\n remove();\n handler(e);\n }\n });\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\n\nvar _collapseStyles;\n\nimport classNames from 'classnames';\nimport css from 'dom-helpers/css';\nimport React, { useMemo } from 'react';\nimport Transition, { ENTERED, ENTERING, EXITED, EXITING } from 'react-transition-group/Transition';\nimport transitionEndListener from './transitionEndListener';\nimport createChainedFunction from './createChainedFunction';\nimport triggerBrowserReflow from './triggerBrowserReflow';\nvar MARGINS = {\n height: ['marginTop', 'marginBottom'],\n width: ['marginLeft', 'marginRight']\n};\n\nfunction getDefaultDimensionValue(dimension, elem) {\n var offset = \"offset\" + dimension[0].toUpperCase() + dimension.slice(1);\n var value = elem[offset];\n var margins = MARGINS[dimension];\n return value + // @ts-ignore\n parseInt(css(elem, margins[0]), 10) + // @ts-ignore\n parseInt(css(elem, margins[1]), 10);\n}\n\nvar collapseStyles = (_collapseStyles = {}, _collapseStyles[EXITED] = 'collapse', _collapseStyles[EXITING] = 'collapsing', _collapseStyles[ENTERING] = 'collapsing', _collapseStyles[ENTERED] = 'collapse show', _collapseStyles);\nvar defaultProps = {\n in: false,\n timeout: 300,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n getDimensionValue: getDefaultDimensionValue\n};\nvar Collapse = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var onEnter = _ref.onEnter,\n onEntering = _ref.onEntering,\n onEntered = _ref.onEntered,\n onExit = _ref.onExit,\n onExiting = _ref.onExiting,\n className = _ref.className,\n children = _ref.children,\n _ref$dimension = _ref.dimension,\n dimension = _ref$dimension === void 0 ? 'height' : _ref$dimension,\n _ref$getDimensionValu = _ref.getDimensionValue,\n getDimensionValue = _ref$getDimensionValu === void 0 ? getDefaultDimensionValue : _ref$getDimensionValu,\n props = _objectWithoutPropertiesLoose(_ref, [\"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"className\", \"children\", \"dimension\", \"getDimensionValue\"]);\n /* Compute dimension */\n\n\n var computedDimension = typeof dimension === 'function' ? dimension() : dimension;\n /* -- Expanding -- */\n\n var handleEnter = useMemo(function () {\n return createChainedFunction(function (elem) {\n elem.style[computedDimension] = '0';\n }, onEnter);\n }, [computedDimension, onEnter]);\n var handleEntering = useMemo(function () {\n return createChainedFunction(function (elem) {\n var scroll = \"scroll\" + computedDimension[0].toUpperCase() + computedDimension.slice(1);\n elem.style[computedDimension] = elem[scroll] + \"px\";\n }, onEntering);\n }, [computedDimension, onEntering]);\n var handleEntered = useMemo(function () {\n return createChainedFunction(function (elem) {\n elem.style[computedDimension] = null;\n }, onEntered);\n }, [computedDimension, onEntered]);\n /* -- Collapsing -- */\n\n var handleExit = useMemo(function () {\n return createChainedFunction(function (elem) {\n elem.style[computedDimension] = getDimensionValue(computedDimension, elem) + \"px\";\n triggerBrowserReflow(elem);\n }, onExit);\n }, [onExit, getDimensionValue, computedDimension]);\n var handleExiting = useMemo(function () {\n return createChainedFunction(function (elem) {\n elem.style[computedDimension] = null;\n }, onExiting);\n }, [computedDimension, onExiting]);\n return /*#__PURE__*/React.createElement(Transition // @ts-ignore\n , _extends({\n ref: ref,\n addEndListener: transitionEndListener\n }, props, {\n \"aria-expanded\": props.role ? props.in : null,\n onEnter: handleEnter,\n onEntering: handleEntering,\n onEntered: handleEntered,\n onExit: handleExit,\n onExiting: handleExiting\n }), function (state, innerProps) {\n return /*#__PURE__*/React.cloneElement(children, _extends({}, innerProps, {\n className: classNames(className, children.props.className, collapseStyles[state], computedDimension === 'width' && 'width')\n }));\n });\n}); // @ts-ignore\n// @ts-ignore\n\nCollapse.defaultProps = defaultProps;\nexport default Collapse;","// reading a dimension prop will cause the browser to recalculate,\n// which will let our animations work\nexport default function triggerBrowserReflow(node) {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n node.offsetHeight;\n}"],"sourceRoot":""}