{"version":3,"file":"8911-0da72.js","mappings":"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","sources":["/home/vsts/work/1/s/node_modules/dom-helpers/esm/removeClass.js","/home/vsts/work/1/s/node_modules/react-transition-group/esm/config.js","/home/vsts/work/1/s/node_modules/react-transition-group/esm/TransitionGroupContext.js","/home/vsts/work/1/s/node_modules/react-transition-group/esm/Transition.js","/home/vsts/work/1/s/node_modules/react-transition-group/esm/CSSTransition.js","/home/vsts/work/1/s/node_modules/dom-helpers/esm/addClass.js","/home/vsts/work/1/s/node_modules/dom-helpers/esm/hasClass.js","/home/vsts/work/1/s/node_modules/react-transition-group/esm/utils/ChildMapping.js","/home/vsts/work/1/s/node_modules/react-transition-group/esm/TransitionGroup.js","/home/vsts/work/1/s/node_modules/react-transition-group/esm/ReplaceTransition.js","/home/vsts/work/1/s/node_modules/react-transition-group/esm/SwitchTransition.js","javascript/esm|/home/vsts/work/1/s/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js"],"sourcesContent":["function replaceClassName(origClass, classToRemove) {\n return origClass.replace(new RegExp(\"(^|\\\\s)\" + classToRemove + \"(?:\\\\s|$)\", 'g'), '$1').replace(/\\s+/g, ' ').replace(/^\\s*|\\s*$/g, '');\n}\n/**\n * Removes a CSS class from a given element.\n * \n * @param element the element\n * @param className the CSS class name\n */\n\n\nexport default function removeClass(element, className) {\n if (element.classList) {\n element.classList.remove(className);\n } else if (typeof element.className === 'string') {\n element.className = replaceClassName(element.className, className);\n } else {\n element.setAttribute('class', replaceClassName(element.className && element.className.baseVal || '', className));\n }\n}","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 PropTypes from 'prop-types';\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;\nTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * A React reference to DOM element that need to transition:\n * https://stackoverflow.com/a/51127130/4671932\n *\n * - When `nodeRef` prop is used, `node` is not passed to callback functions\n * (e.g. `onEnter`) because user already has direct access to the node.\n * - When changing `key` prop of `Transition` in a `TransitionGroup` a new\n * `nodeRef` need to be provided to `Transition` with changed `key` prop\n * (see\n * [test/CSSTransition-test.js](https://github.com/reactjs/react-transition-group/blob/13435f897b3ab71f6e19d724f145596f5910581c/test/CSSTransition-test.js#L362-L437)).\n */\n nodeRef: PropTypes.shape({\n current: typeof Element === 'undefined' ? PropTypes.any : function (propValue, key, componentName, location, propFullName, secret) {\n var value = propValue[key];\n return PropTypes.instanceOf(value && 'ownerDocument' in value ? value.ownerDocument.defaultView.Element : Element)(propValue, key, componentName, location, propFullName, secret);\n }\n }),\n\n /**\n * A `function` child can be used instead of a React element. This function is\n * called with the current transition status (`'entering'`, `'entered'`,\n * `'exiting'`, `'exited'`), which can be used to apply context\n * specific props to a component.\n *\n * ```jsx\n * \n * {state => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * By default the child component does not perform the enter transition when\n * it first mounts, regardless of the value of `in`. If you want this\n * behavior, set both `appear` and `in` to `true`.\n *\n * > **Note**: there are no special appear states like `appearing`/`appeared`, this prop\n * > only adds an additional enter transition. However, in the\n * > `` component that first enter transition does result in\n * > additional `.appear-*` classes, that way you can choose to style it\n * > differently.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEndListener` is provided.\n *\n * You may specify a single timeout for all transitions:\n *\n * ```jsx\n * timeout={500}\n * ```\n *\n * or individually:\n *\n * ```jsx\n * timeout={{\n * appear: 500,\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * - `appear` defaults to the value of `enter`\n * - `enter` defaults to `0`\n * - `exit` defaults to `0`\n *\n * @type {number | { enter?: number, exit?: number, appear?: number }}\n */\n timeout: function timeout(props) {\n var pt = timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return pt.apply(void 0, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. Timeouts are still used as a fallback if provided.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {}; // Name the function so it is clearer in the documentation\n\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 _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport addOneClass from 'dom-helpers/addClass';\nimport removeOneClass from 'dom-helpers/removeClass';\nimport React from 'react';\nimport Transition from './Transition';\nimport { classNamesShape } from './utils/PropTypes';\n\nvar _addClass = function addClass(node, classes) {\n return node && classes && classes.split(' ').forEach(function (c) {\n return addOneClass(node, c);\n });\n};\n\nvar removeClass = function removeClass(node, classes) {\n return node && classes && classes.split(' ').forEach(function (c) {\n return removeOneClass(node, c);\n });\n};\n/**\n * A transition component inspired by the excellent\n * [ng-animate](https://docs.angularjs.org/api/ngAnimate) library, you should\n * use it if you're using CSS transitions or animations. It's built upon the\n * [`Transition`](https://reactcommunity.org/react-transition-group/transition)\n * component, so it inherits all of its props.\n *\n * `CSSTransition` applies a pair of class names during the `appear`, `enter`,\n * and `exit` states of the transition. The first class is applied and then a\n * second `*-active` class in order to activate the CSS transition. After the\n * transition, matching `*-done` class names are applied to persist the\n * transition state.\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n *
\n * \n *
\n * {\"I'll receive my-node-* classes\"}\n *
\n *
\n * \n *
\n * );\n * }\n * ```\n *\n * When the `in` prop is set to `true`, the child component will first receive\n * the class `example-enter`, then the `example-enter-active` will be added in\n * the next tick. `CSSTransition` [forces a\n * reflow](https://github.com/reactjs/react-transition-group/blob/5007303e729a74be66a21c3e2205e4916821524b/src/CSSTransition.js#L208-L215)\n * between before adding the `example-enter-active`. This is an important trick\n * because it allows us to transition between `example-enter` and\n * `example-enter-active` even though they were added immediately one after\n * another. Most notably, this is what makes it possible for us to animate\n * _appearance_.\n *\n * ```css\n * .my-node-enter {\n * opacity: 0;\n * }\n * .my-node-enter-active {\n * opacity: 1;\n * transition: opacity 200ms;\n * }\n * .my-node-exit {\n * opacity: 1;\n * }\n * .my-node-exit-active {\n * opacity: 0;\n * transition: opacity 200ms;\n * }\n * ```\n *\n * `*-active` classes represent which styles you want to animate **to**, so it's\n * important to add `transition` declaration only to them, otherwise transitions\n * might not behave as intended! This might not be obvious when the transitions\n * are symmetrical, i.e. when `*-enter-active` is the same as `*-exit`, like in\n * the example above (minus `transition`), but it becomes apparent in more\n * complex transitions.\n *\n * **Note**: If you're using the\n * [`appear`](http://reactcommunity.org/react-transition-group/transition#Transition-prop-appear)\n * prop, make sure to define styles for `.appear-*` classes as well.\n */\n\n\nvar CSSTransition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(CSSTransition, _React$Component);\n\n function CSSTransition() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this.appliedClasses = {\n appear: {},\n enter: {},\n exit: {}\n };\n\n _this.onEnter = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument[0],\n appearing = _this$resolveArgument[1];\n\n _this.removeClasses(node, 'exit');\n\n _this.addClass(node, appearing ? 'appear' : 'enter', 'base');\n\n if (_this.props.onEnter) {\n _this.props.onEnter(maybeNode, maybeAppearing);\n }\n };\n\n _this.onEntering = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument2 = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument2[0],\n appearing = _this$resolveArgument2[1];\n\n var type = appearing ? 'appear' : 'enter';\n\n _this.addClass(node, type, 'active');\n\n if (_this.props.onEntering) {\n _this.props.onEntering(maybeNode, maybeAppearing);\n }\n };\n\n _this.onEntered = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument3 = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument3[0],\n appearing = _this$resolveArgument3[1];\n\n var type = appearing ? 'appear' : 'enter';\n\n _this.removeClasses(node, type);\n\n _this.addClass(node, type, 'done');\n\n if (_this.props.onEntered) {\n _this.props.onEntered(maybeNode, maybeAppearing);\n }\n };\n\n _this.onExit = function (maybeNode) {\n var _this$resolveArgument4 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument4[0];\n\n _this.removeClasses(node, 'appear');\n\n _this.removeClasses(node, 'enter');\n\n _this.addClass(node, 'exit', 'base');\n\n if (_this.props.onExit) {\n _this.props.onExit(maybeNode);\n }\n };\n\n _this.onExiting = function (maybeNode) {\n var _this$resolveArgument5 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument5[0];\n\n _this.addClass(node, 'exit', 'active');\n\n if (_this.props.onExiting) {\n _this.props.onExiting(maybeNode);\n }\n };\n\n _this.onExited = function (maybeNode) {\n var _this$resolveArgument6 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument6[0];\n\n _this.removeClasses(node, 'exit');\n\n _this.addClass(node, 'exit', 'done');\n\n if (_this.props.onExited) {\n _this.props.onExited(maybeNode);\n }\n };\n\n _this.resolveArguments = function (maybeNode, maybeAppearing) {\n return _this.props.nodeRef ? [_this.props.nodeRef.current, maybeNode] // here `maybeNode` is actually `appearing`\n : [maybeNode, maybeAppearing];\n };\n\n _this.getClassNames = function (type) {\n var classNames = _this.props.classNames;\n var isStringClassNames = typeof classNames === 'string';\n var prefix = isStringClassNames && classNames ? classNames + \"-\" : '';\n var baseClassName = isStringClassNames ? \"\" + prefix + type : classNames[type];\n var activeClassName = isStringClassNames ? baseClassName + \"-active\" : classNames[type + \"Active\"];\n var doneClassName = isStringClassNames ? baseClassName + \"-done\" : classNames[type + \"Done\"];\n return {\n baseClassName: baseClassName,\n activeClassName: activeClassName,\n doneClassName: doneClassName\n };\n };\n\n return _this;\n }\n\n var _proto = CSSTransition.prototype;\n\n _proto.addClass = function addClass(node, type, phase) {\n var className = this.getClassNames(type)[phase + \"ClassName\"];\n\n var _this$getClassNames = this.getClassNames('enter'),\n doneClassName = _this$getClassNames.doneClassName;\n\n if (type === 'appear' && phase === 'done' && doneClassName) {\n className += \" \" + doneClassName;\n } // This is to force a repaint,\n // which is necessary in order to transition styles when adding a class name.\n\n\n if (phase === 'active') {\n /* eslint-disable no-unused-expressions */\n node && node.scrollTop;\n }\n\n if (className) {\n this.appliedClasses[type][phase] = className;\n\n _addClass(node, className);\n }\n };\n\n _proto.removeClasses = function removeClasses(node, type) {\n var _this$appliedClasses$ = this.appliedClasses[type],\n baseClassName = _this$appliedClasses$.base,\n activeClassName = _this$appliedClasses$.active,\n doneClassName = _this$appliedClasses$.done;\n this.appliedClasses[type] = {};\n\n if (baseClassName) {\n removeClass(node, baseClassName);\n }\n\n if (activeClassName) {\n removeClass(node, activeClassName);\n }\n\n if (doneClassName) {\n removeClass(node, doneClassName);\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n _ = _this$props.classNames,\n props = _objectWithoutPropertiesLoose(_this$props, [\"classNames\"]);\n\n return /*#__PURE__*/React.createElement(Transition, _extends({}, props, {\n onEnter: this.onEnter,\n onEntered: this.onEntered,\n onEntering: this.onEntering,\n onExit: this.onExit,\n onExiting: this.onExiting,\n onExited: this.onExited\n }));\n };\n\n return CSSTransition;\n}(React.Component);\n\nCSSTransition.defaultProps = {\n classNames: ''\n};\nCSSTransition.propTypes = process.env.NODE_ENV !== \"production\" ? _extends({}, Transition.propTypes, {\n /**\n * The animation classNames applied to the component as it appears, enters,\n * exits or has finished the transition. A single name can be provided, which\n * will be suffixed for each stage, e.g. `classNames=\"fade\"` applies:\n *\n * - `fade-appear`, `fade-appear-active`, `fade-appear-done`\n * - `fade-enter`, `fade-enter-active`, `fade-enter-done`\n * - `fade-exit`, `fade-exit-active`, `fade-exit-done`\n *\n * A few details to note about how these classes are applied:\n *\n * 1. They are _joined_ with the ones that are already defined on the child\n * component, so if you want to add some base styles, you can use\n * `className` without worrying that it will be overridden.\n *\n * 2. If the transition component mounts with `in={false}`, no classes are\n * applied yet. You might be expecting `*-exit-done`, but if you think\n * about it, a component cannot finish exiting if it hasn't entered yet.\n *\n * 2. `fade-appear-done` and `fade-enter-done` will _both_ be applied. This\n * allows you to define different behavior for when appearing is done and\n * when regular entering is done, using selectors like\n * `.fade-enter-done:not(.fade-appear-done)`. For example, you could apply\n * an epic entrance animation when element first appears in the DOM using\n * [Animate.css](https://daneden.github.io/animate.css/). Otherwise you can\n * simply use `fade-enter-done` for defining both cases.\n *\n * Each individual classNames can also be specified independently like:\n *\n * ```js\n * classNames={{\n * appear: 'my-appear',\n * appearActive: 'my-active-appear',\n * appearDone: 'my-done-appear',\n * enter: 'my-enter',\n * enterActive: 'my-active-enter',\n * enterDone: 'my-done-enter',\n * exit: 'my-exit',\n * exitActive: 'my-active-exit',\n * exitDone: 'my-done-exit',\n * }}\n * ```\n *\n * If you want to set these classes using CSS Modules:\n *\n * ```js\n * import styles from './styles.css';\n * ```\n *\n * you might want to use camelCase in your CSS file, that way could simply\n * spread them instead of listing them one by one:\n *\n * ```js\n * classNames={{ ...styles }}\n * ```\n *\n * @type {string | {\n * appear?: string,\n * appearActive?: string,\n * appearDone?: string,\n * enter?: string,\n * enterActive?: string,\n * enterDone?: string,\n * exit?: string,\n * exitActive?: string,\n * exitDone?: string,\n * }}\n */\n classNames: classNamesShape,\n\n /**\n * A `` callback fired immediately after the 'enter' or 'appear' class is\n * applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEnter: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'enter-active' or\n * 'appear-active' class is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'enter' or\n * 'appear' classes are **removed** and the `done` class is added to the DOM node.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntered: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit' class is\n * applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExit: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit-active' is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExiting: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit' classes\n * are **removed** and the `exit-done` class is added to the DOM node.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExited: PropTypes.func\n}) : {};\nexport default CSSTransition;","import hasClass from './hasClass';\n/**\n * Adds a CSS class to a given element.\n * \n * @param element the element\n * @param className the CSS class name\n */\n\nexport default function addClass(element, className) {\n if (element.classList) element.classList.add(className);else if (!hasClass(element, className)) if (typeof element.className === 'string') element.className = element.className + \" \" + className;else element.setAttribute('class', (element.className && element.className.baseVal || '') + \" \" + className);\n}","/**\n * Checks if a given element has a CSS class.\n * \n * @param element the element\n * @param className the CSS class name\n */\nexport default function hasClass(element, className) {\n if (element.classList) return !!className && element.classList.contains(className);\n return (\" \" + (element.className.baseVal || element.className) + \" \").indexOf(\" \" + className + \" \") !== -1;\n}","import { Children, cloneElement, isValidElement } from 'react';\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\n\nexport function getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && isValidElement(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\n\nexport function mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n } // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n\n\n var nextKeysPending = Object.create(null);\n var pendingKeys = [];\n\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i;\n var childMapping = {};\n\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n\n childMapping[nextKey] = getValueForKey(nextKey);\n } // Finally, add the keys which didn't appear before any key in `next`\n\n\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\nfunction getProp(child, prop, props) {\n return props[prop] != null ? props[prop] : child.props[prop];\n}\n\nexport function getInitialChildMapping(props, onExited) {\n return getChildMapping(props.children, function (child) {\n return cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n appear: getProp(child, 'appear', props),\n enter: getProp(child, 'enter', props),\n exit: getProp(child, 'exit', props)\n });\n });\n}\nexport function getNextChildMapping(nextProps, prevChildMapping, onExited) {\n var nextChildMapping = getChildMapping(nextProps.children);\n var children = mergeChildMappings(prevChildMapping, nextChildMapping);\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n if (!isValidElement(child)) return;\n var hasPrev = (key in prevChildMapping);\n var hasNext = (key in nextChildMapping);\n var prevChild = prevChildMapping[key];\n var isLeaving = isValidElement(prevChild) && !prevChild.props.in; // item is new (entering)\n\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n } else if (!hasNext && hasPrev && !isLeaving) {\n // item is old (exiting)\n // console.log('leaving', key)\n children[key] = cloneElement(child, {\n in: false\n });\n } else if (hasNext && hasPrev && isValidElement(prevChild)) {\n // item hasn't changed transition states\n // copy over the last transition props;\n // console.log('unchanged', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: prevChild.props.in,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n }\n });\n return children;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { getChildMapping, getInitialChildMapping, getNextChildMapping } from './utils/ChildMapping';\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n/**\n * The `` component manages a set of transition components\n * (`` and ``) in a list. Like with the transition\n * components, `` is a state machine for managing the mounting\n * and unmounting of components over time.\n *\n * Consider the example below. As items are removed or added to the TodoList the\n * `in` prop is toggled automatically by the ``.\n *\n * Note that `` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual transition\n * component. This means you can mix and match animations across different list\n * items.\n */\n\nvar TransitionGroup = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n\n var handleExited = _this.handleExited.bind(_assertThisInitialized(_this)); // Initial children should all be entering, dependent on appear\n\n\n _this.state = {\n contextValue: {\n isMounting: true\n },\n handleExited: handleExited,\n firstRender: true\n };\n return _this;\n }\n\n var _proto = TransitionGroup.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.mounted = true;\n this.setState({\n contextValue: {\n isMounting: false\n }\n });\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.mounted = false;\n };\n\n TransitionGroup.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, _ref) {\n var prevChildMapping = _ref.children,\n handleExited = _ref.handleExited,\n firstRender = _ref.firstRender;\n return {\n children: firstRender ? getInitialChildMapping(nextProps, handleExited) : getNextChildMapping(nextProps, prevChildMapping, handleExited),\n firstRender: false\n };\n } // node is `undefined` when user provided `nodeRef` prop\n ;\n\n _proto.handleExited = function handleExited(child, node) {\n var currentChildMapping = getChildMapping(this.props.children);\n if (child.key in currentChildMapping) return;\n\n if (child.props.onExited) {\n child.props.onExited(node);\n }\n\n if (this.mounted) {\n this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[child.key];\n return {\n children: children\n };\n });\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n Component = _this$props.component,\n childFactory = _this$props.childFactory,\n props = _objectWithoutPropertiesLoose(_this$props, [\"component\", \"childFactory\"]);\n\n var contextValue = this.state.contextValue;\n var children = values(this.state.children).map(childFactory);\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n if (Component === null) {\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, children);\n }\n\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, /*#__PURE__*/React.createElement(Component, props, children));\n };\n\n return TransitionGroup;\n}(React.Component);\n\nTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * `` renders a `
` by default. You can change this\n * behavior by providing a `component` prop.\n * If you use React v16+ and would like to avoid a wrapping `
` element\n * you can pass in `component={null}`. This is useful if the wrapping div\n * borks your css styles.\n */\n component: PropTypes.any,\n\n /**\n * A set of `` components, that are toggled `in` and out as they\n * leave. the `` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `` as\n * with our `` example.\n *\n * While this component is meant for multiple `Transition` or `CSSTransition`\n * children, sometimes you may want to have a single transition child with\n * content that you want to be transitioned out and in when you change it\n * (e.g. routes, images etc.) In that case you can change the `key` prop of\n * the transition child as you change its content, this will cause\n * `TransitionGroup` to transition the child out and back in.\n */\n children: PropTypes.node,\n\n /**\n * A convenience prop that enables or disables appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: PropTypes.func\n} : {};\nTransitionGroup.defaultProps = defaultProps;\nexport default TransitionGroup;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport TransitionGroup from './TransitionGroup';\n/**\n * The `` component is a specialized `Transition` component\n * that animates between two children.\n *\n * ```jsx\n * \n *
I appear first
\n *
I replace the above
\n *
\n * ```\n */\n\nvar ReplaceTransition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(ReplaceTransition, _React$Component);\n\n function ReplaceTransition() {\n var _this;\n\n for (var _len = arguments.length, _args = new Array(_len), _key = 0; _key < _len; _key++) {\n _args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(_args)) || this;\n\n _this.handleEnter = function () {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _this.handleLifecycle('onEnter', 0, args);\n };\n\n _this.handleEntering = function () {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _this.handleLifecycle('onEntering', 0, args);\n };\n\n _this.handleEntered = function () {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return _this.handleLifecycle('onEntered', 0, args);\n };\n\n _this.handleExit = function () {\n for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n args[_key5] = arguments[_key5];\n }\n\n return _this.handleLifecycle('onExit', 1, args);\n };\n\n _this.handleExiting = function () {\n for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n args[_key6] = arguments[_key6];\n }\n\n return _this.handleLifecycle('onExiting', 1, args);\n };\n\n _this.handleExited = function () {\n for (var _len7 = arguments.length, args = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n args[_key7] = arguments[_key7];\n }\n\n return _this.handleLifecycle('onExited', 1, args);\n };\n\n return _this;\n }\n\n var _proto = ReplaceTransition.prototype;\n\n _proto.handleLifecycle = function handleLifecycle(handler, idx, originalArgs) {\n var _child$props;\n\n var children = this.props.children;\n var child = React.Children.toArray(children)[idx];\n if (child.props[handler]) (_child$props = child.props)[handler].apply(_child$props, originalArgs);\n\n if (this.props[handler]) {\n var maybeNode = child.props.nodeRef ? undefined : ReactDOM.findDOMNode(this);\n this.props[handler](maybeNode);\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n children = _this$props.children,\n inProp = _this$props.in,\n props = _objectWithoutPropertiesLoose(_this$props, [\"children\", \"in\"]);\n\n var _React$Children$toArr = React.Children.toArray(children),\n first = _React$Children$toArr[0],\n second = _React$Children$toArr[1];\n\n delete props.onEnter;\n delete props.onEntering;\n delete props.onEntered;\n delete props.onExit;\n delete props.onExiting;\n delete props.onExited;\n return /*#__PURE__*/React.createElement(TransitionGroup, props, inProp ? React.cloneElement(first, {\n key: 'first',\n onEnter: this.handleEnter,\n onEntering: this.handleEntering,\n onEntered: this.handleEntered\n }) : React.cloneElement(second, {\n key: 'second',\n onEnter: this.handleExit,\n onEntering: this.handleExiting,\n onEntered: this.handleExited\n }));\n };\n\n return ReplaceTransition;\n}(React.Component);\n\nReplaceTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n in: PropTypes.bool.isRequired,\n children: function children(props, propName) {\n if (React.Children.count(props[propName]) !== 2) return new Error(\"\\\"\" + propName + \"\\\" must be exactly two transition components.\");\n return null;\n }\n} : {};\nexport default ReplaceTransition;","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\n\nvar _leaveRenders, _enterRenders;\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { ENTERED, ENTERING, EXITING } from './Transition';\nimport TransitionGroupContext from './TransitionGroupContext';\n\nfunction areChildrenDifferent(oldChildren, newChildren) {\n if (oldChildren === newChildren) return false;\n\n if (React.isValidElement(oldChildren) && React.isValidElement(newChildren) && oldChildren.key != null && oldChildren.key === newChildren.key) {\n return false;\n }\n\n return true;\n}\n/**\n * Enum of modes for SwitchTransition component\n * @enum { string }\n */\n\n\nexport var modes = {\n out: 'out-in',\n in: 'in-out'\n};\n\nvar callHook = function callHook(element, name, cb) {\n return function () {\n var _element$props;\n\n element.props[name] && (_element$props = element.props)[name].apply(_element$props, arguments);\n cb();\n };\n};\n\nvar leaveRenders = (_leaveRenders = {}, _leaveRenders[modes.out] = function (_ref) {\n var current = _ref.current,\n changeState = _ref.changeState;\n return React.cloneElement(current, {\n in: false,\n onExited: callHook(current, 'onExited', function () {\n changeState(ENTERING, null);\n })\n });\n}, _leaveRenders[modes.in] = function (_ref2) {\n var current = _ref2.current,\n changeState = _ref2.changeState,\n children = _ref2.children;\n return [current, React.cloneElement(children, {\n in: true,\n onEntered: callHook(children, 'onEntered', function () {\n changeState(ENTERING);\n })\n })];\n}, _leaveRenders);\nvar enterRenders = (_enterRenders = {}, _enterRenders[modes.out] = function (_ref3) {\n var children = _ref3.children,\n changeState = _ref3.changeState;\n return React.cloneElement(children, {\n in: true,\n onEntered: callHook(children, 'onEntered', function () {\n changeState(ENTERED, React.cloneElement(children, {\n in: true\n }));\n })\n });\n}, _enterRenders[modes.in] = function (_ref4) {\n var current = _ref4.current,\n children = _ref4.children,\n changeState = _ref4.changeState;\n return [React.cloneElement(current, {\n in: false,\n onExited: callHook(current, 'onExited', function () {\n changeState(ENTERED, React.cloneElement(children, {\n in: true\n }));\n })\n }), React.cloneElement(children, {\n in: true\n })];\n}, _enterRenders);\n/**\n * A transition component inspired by the [vue transition modes](https://vuejs.org/v2/guide/transitions.html#Transition-Modes).\n * You can use it when you want to control the render between state transitions.\n * Based on the selected mode and the child's key which is the `Transition` or `CSSTransition` component, the `SwitchTransition` makes a consistent transition between them.\n *\n * If the `out-in` mode is selected, the `SwitchTransition` waits until the old child leaves and then inserts a new child.\n * If the `in-out` mode is selected, the `SwitchTransition` inserts a new child first, waits for the new child to enter and then removes the old child.\n *\n * **Note**: If you want the animation to happen simultaneously\n * (that is, to have the old child removed and a new child inserted **at the same time**),\n * you should use\n * [`TransitionGroup`](https://reactcommunity.org/react-transition-group/transition-group)\n * instead.\n *\n * ```jsx\n * function App() {\n * const [state, setState] = useState(false);\n * return (\n * \n * node.addEventListener(\"transitionend\", done, false)}\n * classNames='fade'\n * >\n * \n * \n * \n * );\n * }\n * ```\n *\n * ```css\n * .fade-enter{\n * opacity: 0;\n * }\n * .fade-exit{\n * opacity: 1;\n * }\n * .fade-enter-active{\n * opacity: 1;\n * }\n * .fade-exit-active{\n * opacity: 0;\n * }\n * .fade-enter-active,\n * .fade-exit-active{\n * transition: opacity 500ms;\n * }\n * ```\n */\n\nvar SwitchTransition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(SwitchTransition, _React$Component);\n\n function SwitchTransition() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this.state = {\n status: ENTERED,\n current: null\n };\n _this.appeared = false;\n\n _this.changeState = function (status, current) {\n if (current === void 0) {\n current = _this.state.current;\n }\n\n _this.setState({\n status: status,\n current: current\n });\n };\n\n return _this;\n }\n\n var _proto = SwitchTransition.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.appeared = true;\n };\n\n SwitchTransition.getDerivedStateFromProps = function getDerivedStateFromProps(props, state) {\n if (props.children == null) {\n return {\n current: null\n };\n }\n\n if (state.status === ENTERING && props.mode === modes.in) {\n return {\n status: ENTERING\n };\n }\n\n if (state.current && areChildrenDifferent(state.current, props.children)) {\n return {\n status: EXITING\n };\n }\n\n return {\n current: React.cloneElement(props.children, {\n in: true\n })\n };\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n children = _this$props.children,\n mode = _this$props.mode,\n _this$state = this.state,\n status = _this$state.status,\n current = _this$state.current;\n var data = {\n children: children,\n current: current,\n changeState: this.changeState,\n status: status\n };\n var component;\n\n switch (status) {\n case ENTERING:\n component = enterRenders[mode](data);\n break;\n\n case EXITING:\n component = leaveRenders[mode](data);\n break;\n\n case ENTERED:\n component = current;\n }\n\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: {\n isMounting: !this.appeared\n }\n }, component);\n };\n\n return SwitchTransition;\n}(React.Component);\n\nSwitchTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * Transition modes.\n * `out-in`: Current element transitions out first, then when complete, the new element transitions in.\n * `in-out`: New element transitions in first, then when complete, the current element transitions out.\n *\n * @type {'out-in'|'in-out'}\n */\n mode: PropTypes.oneOf([modes.in, modes.out]),\n\n /**\n * Any `Transition` or `CSSTransition` component.\n */\n children: PropTypes.oneOfType([PropTypes.element.isRequired])\n} : {};\nSwitchTransition.defaultProps = {\n mode: modes.out\n};\nexport default SwitchTransition;","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}"],"names":["replaceClassName","origClass","classToRemove","replace","RegExp","disabled","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING","Transition","_React$Component","props","context","_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","node","current","doesNotHaveTimeoutOrListener","addEndListener","_ref3","maybeNextCallback","setTimeout","render","_this$props","children","childProps","TransitionGroupContext","Provider","value","noop","contextType","propTypes","defaultProps","removeClass","classes","split","forEach","c","className","element","classList","remove","setAttribute","baseVal","CSSTransition","_len","arguments","length","args","Array","_key","apply","concat","appliedClasses","_this$resolveArgument","resolveArguments","removeClasses","addClass","_this$resolveArgument2","type","_this$resolveArgument3","getClassNames","classNames","isStringClassNames","baseClassName","activeClassName","doneClassName","phase","scrollTop","add","contains","indexOf","hasClass","_addClass","_this$appliedClasses$","base","done","getChildMapping","mapFn","result","Object","create","Children","child","key","isValidElement","mapper","getProp","prop","getNextChildMapping","nextProps","prevChildMapping","nextChildMapping","prev","next","getValueForKey","i","nextKeysPending","pendingKeys","prevKey","push","childMapping","nextKey","pendingNextKey","mergeChildMappings","keys","hasPrev","hasNext","prevChild","isLeaving","cloneElement","bind","values","obj","map","k","TransitionGroup","handleExited","contextValue","firstRender","mounted","currentChildMapping","Component","component","childFactory","ReplaceTransition","_args","handleEnter","_len2","_key2","handleLifecycle","handleEntering","_len3","_key3","handleEntered","_len4","_key4","handleExit","_len5","_key5","handleExiting","_len6","_key6","_len7","_key7","idx","originalArgs","_child$props","inProp","_React$Children$toArr","first","second","_leaveRenders","_enterRenders","modes","callHook","name","cb","_element$props","leaveRenders","changeState","enterRenders","_ref4","SwitchTransition","appeared","mode","oldChildren","newChildren","_this$state","data","_assertThisInitialized","self","ReferenceError"],"sourceRoot":""}