{"version":3,"sources":["../node_modules/@mui/material/transitions/utils.js","../node_modules/@mui/material/Paper/paperClasses.js","../node_modules/@mui/material/Paper/Paper.js","../node_modules/@mui/material/Link/linkClasses.js","../node_modules/@mui/material/Link/Link.js","../node_modules/react-transition-group/esm/config.js","../node_modules/react-transition-group/esm/Transition.js"],"names":["reflow","node","scrollTop","getTransitionProps","props","options","_style$transitionDura","_style$transitionTimi","timeout","easing","style","duration","transitionDuration","mode","transitionTimingFunction","delay","transitionDelay","getPaperUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","getOverlayAlpha","elevation","Math","log","toFixed","PaperRoot","styled","name","overridesResolver","styles","ownerState","root","variant","square","rounded","theme","_extends","backgroundColor","palette","background","paper","color","text","primary","transition","transitions","create","borderRadius","shape","border","divider","boxShadow","shadows","backgroundImage","alpha","Paper","React","inProps","ref","useThemeProps","className","component","other","_objectWithoutPropertiesLoose","classes","slots","composeClasses","useUtilityClasses","_jsx","as","clsx","getLinkUtilityClass","linkClasses","colorTransformations","textPrimary","secondary","textSecondary","error","LinkRoot","Typography","capitalize","underline","button","getPath","transformDeprecatedColors","textDecoration","textDecorationColor","undefined","position","WebkitTapHighlightColor","outline","margin","padding","cursor","userSelect","verticalAlign","MozAppearance","WebkitAppearance","borderStyle","focusVisible","Link","onBlur","onFocus","TypographyClasses","useIsFocusVisible","isFocusVisibleRef","handleBlurVisible","handleFocusVisible","focusVisibleRef","setFocusVisible","handlerRef","useForkRef","event","current","Transition","_React$Component","context","_this","call","this","initialStatus","appear","isMounting","enter","appearStatus","in","unmountOnExit","mountOnEnter","state","status","nextCallback","_inheritsLoose","getDerivedStateFromProps","_ref","prevState","_proto","prototype","componentDidMount","updateStatus","componentDidUpdate","prevProps","nextStatus","componentWillUnmount","cancelNextCallback","getTimeouts","exit","mounting","performEnter","performExit","setState","_this2","appearing","_ref2","nodeRef","ReactDOM","findDOMNode","maybeNode","maybeAppearing","timeouts","enterTimeout","config","safeSetState","onEntered","onEnter","onEntering","onTransitionEnd","_this3","onExit","onExiting","onExited","cancel","nextState","callback","setNextCallback","_this4","active","handler","doesNotHaveTimeoutOrListener","addEndListener","_ref3","maybeNextCallback","setTimeout","render","_this$props","children","childProps","createElement","TransitionGroupContext","Provider","value","cloneElement","Children","only","Component","noop","contextType","propTypes","defaultProps","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING"],"mappings":"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","file":"static/js/21.4cb40c5a.chunk.js","sourcesContent":["export const reflow = node => node.scrollTop;\nexport function getTransitionProps(props, options) {\n var _style$transitionDura, _style$transitionTimi;\n\n const {\n timeout,\n easing,\n style = {}\n } = props;\n return {\n duration: (_style$transitionDura = style.transitionDuration) != null ? _style$transitionDura : typeof timeout === 'number' ? timeout : timeout[options.mode] || 0,\n easing: (_style$transitionTimi = style.transitionTimingFunction) != null ? _style$transitionTimi : typeof easing === 'object' ? easing[options.mode] : easing,\n delay: style.transitionDelay\n };\n}","import { generateUtilityClass, generateUtilityClasses } from '@mui/base';\nexport function getPaperUtilityClass(slot) {\n return generateUtilityClass('MuiPaper', slot);\n}\nconst paperClasses = generateUtilityClasses('MuiPaper', ['root', 'rounded', 'outlined', 'elevation', 'elevation0', 'elevation1', 'elevation2', 'elevation3', 'elevation4', 'elevation5', 'elevation6', 'elevation7', 'elevation8', 'elevation9', 'elevation10', 'elevation11', 'elevation12', 'elevation13', 'elevation14', 'elevation15', 'elevation16', 'elevation17', 'elevation18', 'elevation19', 'elevation20', 'elevation21', 'elevation22', 'elevation23', 'elevation24']);\nexport default paperClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"component\", \"elevation\", \"square\", \"variant\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { chainPropTypes, integerPropType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport useTheme from '../styles/useTheme';\nimport { getPaperUtilityClass } from './paperClasses'; // Inspired by https://github.com/material-components/material-components-ios/blob/bca36107405594d5b7b16265a5b0ed698f85a5ee/components/Elevation/src/UIColor%2BMaterialElevation.m#L61\n\nimport { jsx as _jsx } from \"react/jsx-runtime\";\n\nconst getOverlayAlpha = elevation => {\n let alphaValue;\n\n if (elevation < 1) {\n alphaValue = 5.11916 * elevation ** 2;\n } else {\n alphaValue = 4.5 * Math.log(elevation + 1) + 2;\n }\n\n return (alphaValue / 100).toFixed(2);\n};\n\nconst useUtilityClasses = ownerState => {\n const {\n square,\n elevation,\n variant,\n classes\n } = ownerState;\n const slots = {\n root: ['root', variant, !square && 'rounded', variant === 'elevation' && `elevation${elevation}`]\n };\n return composeClasses(slots, getPaperUtilityClass, classes);\n};\n\nconst PaperRoot = styled('div', {\n name: 'MuiPaper',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[ownerState.variant], !ownerState.square && styles.rounded, ownerState.variant === 'elevation' && styles[`elevation${ownerState.elevation}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n backgroundColor: theme.palette.background.paper,\n color: theme.palette.text.primary,\n transition: theme.transitions.create('box-shadow')\n}, !ownerState.square && {\n borderRadius: theme.shape.borderRadius\n}, ownerState.variant === 'outlined' && {\n border: `1px solid ${theme.palette.divider}`\n}, ownerState.variant === 'elevation' && _extends({\n boxShadow: theme.shadows[ownerState.elevation]\n}, theme.palette.mode === 'dark' && {\n backgroundImage: `linear-gradient(${alpha('#fff', getOverlayAlpha(ownerState.elevation))}, ${alpha('#fff', getOverlayAlpha(ownerState.elevation))})`\n})));\nconst Paper = /*#__PURE__*/React.forwardRef(function Paper(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPaper'\n });\n\n const {\n className,\n component = 'div',\n elevation = 1,\n square = false,\n variant = 'elevation'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n\n const ownerState = _extends({}, props, {\n component,\n elevation,\n square,\n variant\n });\n\n const classes = useUtilityClasses(ownerState);\n\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const theme = useTheme();\n\n if (theme.shadows[elevation] === undefined) {\n console.error([`MUI: The elevation provided is not available in the theme.`, `Please make sure that \\`theme.shadows[${elevation}]\\` is defined.`].join('\\n'));\n }\n }\n\n return /*#__PURE__*/_jsx(PaperRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? Paper.propTypes\n/* remove-proptypes */\n= {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n\n /**\n * Shadow depth, corresponds to `dp` in the spec.\n * It accepts values between 0 and 24 inclusive.\n * @default 1\n */\n elevation: chainPropTypes(integerPropType, props => {\n const {\n elevation,\n variant\n } = props;\n\n if (elevation > 0 && variant === 'outlined') {\n return new Error(`MUI: Combining \\`elevation={${elevation}}\\` with \\`variant=\"${variant}\"\\` has no effect. Either use \\`elevation={0}\\` or use a different \\`variant\\`.`);\n }\n\n return null;\n }),\n\n /**\n * If `true`, rounded corners are disabled.\n * @default false\n */\n square: PropTypes.bool,\n\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n\n /**\n * The variant to use.\n * @default 'elevation'\n */\n variant: PropTypes\n /* @typescript-to-proptypes-ignore */\n .oneOfType([PropTypes.oneOf(['elevation', 'outlined']), PropTypes.string])\n} : void 0;\nexport default Paper;","import { generateUtilityClass, generateUtilityClasses } from '@mui/base';\nexport function getLinkUtilityClass(slot) {\n return generateUtilityClass('MuiLink', slot);\n}\nconst linkClasses = generateUtilityClasses('MuiLink', ['root', 'underlineNone', 'underlineHover', 'underlineAlways', 'button', 'focusVisible']);\nexport default linkClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"component\", \"onBlur\", \"onFocus\", \"TypographyClasses\", \"underline\", \"variant\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { elementTypeAcceptingRef } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha, getPath } from '@mui/system';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport useIsFocusVisible from '../utils/useIsFocusVisible';\nimport useForkRef from '../utils/useForkRef';\nimport Typography from '../Typography';\nimport linkClasses, { getLinkUtilityClass } from './linkClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst colorTransformations = {\n primary: 'primary.main',\n textPrimary: 'text.primary',\n secondary: 'secondary.main',\n textSecondary: 'text.secondary',\n error: 'error.main'\n};\n\nconst transformDeprecatedColors = color => {\n return colorTransformations[color] || color;\n};\n\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n component,\n focusVisible,\n underline\n } = ownerState;\n const slots = {\n root: ['root', `underline${capitalize(underline)}`, component === 'button' && 'button', focusVisible && 'focusVisible']\n };\n return composeClasses(slots, getLinkUtilityClass, classes);\n};\n\nconst LinkRoot = styled(Typography, {\n name: 'MuiLink',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[`underline${capitalize(ownerState.underline)}`], ownerState.component === 'button' && styles.button];\n }\n})(({\n theme,\n ownerState\n}) => {\n const color = getPath(theme, `palette.${transformDeprecatedColors(ownerState.color)}`) || ownerState.color;\n return _extends({}, ownerState.underline === 'none' && {\n textDecoration: 'none'\n }, ownerState.underline === 'hover' && {\n textDecoration: 'none',\n '&:hover': {\n textDecoration: 'underline'\n }\n }, ownerState.underline === 'always' && {\n textDecoration: 'underline',\n textDecorationColor: color !== 'inherit' ? alpha(color, 0.4) : undefined,\n '&:hover': {\n textDecorationColor: 'inherit'\n }\n }, ownerState.component === 'button' && {\n position: 'relative',\n WebkitTapHighlightColor: 'transparent',\n backgroundColor: 'transparent',\n // Reset default value\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0,\n border: 0,\n margin: 0,\n // Remove the margin in Safari\n borderRadius: 0,\n padding: 0,\n // Remove the padding in Firefox\n cursor: 'pointer',\n userSelect: 'none',\n verticalAlign: 'middle',\n MozAppearance: 'none',\n // Reset\n WebkitAppearance: 'none',\n // Reset\n '&::-moz-focus-inner': {\n borderStyle: 'none' // Remove Firefox dotted outline.\n\n },\n [`&.${linkClasses.focusVisible}`]: {\n outline: 'auto'\n }\n });\n});\nconst Link = /*#__PURE__*/React.forwardRef(function Link(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiLink'\n });\n\n const {\n className,\n color = 'primary',\n component = 'a',\n onBlur,\n onFocus,\n TypographyClasses,\n underline = 'always',\n variant = 'inherit'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n\n const {\n isFocusVisibleRef,\n onBlur: handleBlurVisible,\n onFocus: handleFocusVisible,\n ref: focusVisibleRef\n } = useIsFocusVisible();\n const [focusVisible, setFocusVisible] = React.useState(false);\n const handlerRef = useForkRef(ref, focusVisibleRef);\n\n const handleBlur = event => {\n handleBlurVisible(event);\n\n if (isFocusVisibleRef.current === false) {\n setFocusVisible(false);\n }\n\n if (onBlur) {\n onBlur(event);\n }\n };\n\n const handleFocus = event => {\n handleFocusVisible(event);\n\n if (isFocusVisibleRef.current === true) {\n setFocusVisible(true);\n }\n\n if (onFocus) {\n onFocus(event);\n }\n };\n\n const ownerState = _extends({}, props, {\n color,\n component,\n focusVisible,\n underline,\n variant\n });\n\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(LinkRoot, _extends({\n className: clsx(classes.root, className),\n classes: TypographyClasses,\n color: color,\n component: component,\n onBlur: handleBlur,\n onFocus: handleFocus,\n ref: handlerRef,\n ownerState: ownerState,\n variant: variant\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? Link.propTypes\n/* remove-proptypes */\n= {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * The color of the link.\n * @default 'primary'\n */\n color: PropTypes\n /* @typescript-to-proptypes-ignore */\n .any,\n\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: elementTypeAcceptingRef,\n\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n\n /**\n * `classes` prop applied to the [`Typography`](/api/typography/) element.\n */\n TypographyClasses: PropTypes.object,\n\n /**\n * Controls when the link should have an underline.\n * @default 'always'\n */\n underline: PropTypes.oneOf(['always', 'hover', 'none']),\n\n /**\n * Applies the theme typography styles.\n * @default 'inherit'\n */\n variant: PropTypes\n /* @typescript-to-proptypes-ignore */\n .oneOfType([PropTypes.oneOf(['body1', 'body2', 'button', 'caption', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'inherit', 'overline', 'subtitle1', 'subtitle2']), PropTypes.string])\n} : void 0;\nexport default Link;","export default {\n disabled: false\n};","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;"],"sourceRoot":""}