{"ast":null,"code":"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 *     <div>\n *       <CSSTransition in={inProp} timeout={200} classNames=\"my-node\">\n *         <div>\n *           {\"I'll receive my-node-* classes\"}\n *         </div>\n *       </CSSTransition>\n *       <button type=\"button\" onClick={() => setInProp(true)}>\n *         Click to Enter\n *       </button>\n *     </div>\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 for 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 `<Transition>` 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 `<Transition>` 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 `<Transition>` 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 `<Transition>` 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 `<Transition>` 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 `<Transition>` 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;","map":{"version":3,"sources":["C:/laragon/www/iot.mksolusi/DriverOPCDA/frontend/node_modules/react-transition-group/esm/CSSTransition.js"],"names":["_extends","_objectWithoutPropertiesLoose","_inheritsLoose","PropTypes","addOneClass","removeOneClass","React","Transition","classNamesShape","_addClass","addClass","node","classes","split","forEach","c","removeClass","CSSTransition","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","appliedClasses","appear","enter","exit","onEnter","maybeNode","maybeAppearing","_this$resolveArgument","resolveArguments","appearing","removeClasses","props","onEntering","_this$resolveArgument2","type","onEntered","_this$resolveArgument3","onExit","_this$resolveArgument4","onExiting","_this$resolveArgument5","onExited","_this$resolveArgument6","nodeRef","current","getClassNames","classNames","isStringClassNames","prefix","baseClassName","activeClassName","doneClassName","_proto","prototype","phase","className","_this$getClassNames","scrollTop","_this$appliedClasses$","base","active","done","render","_this$props","_","createElement","Component","defaultProps","propTypes","process","env","NODE_ENV","func"],"mappings":"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B,YAAzB,GAAwChF,QAAQ,CAAC,EAAD,EAAKO,UAAU,CAACsE,SAAhB,EAA2B;AACnG;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEtB,EAAAA,UAAU,EAAE/C,eArEuF;;AAuEnG;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACEyB,EAAAA,OAAO,EAAE9B,SAAS,CAAC8E,IA/EgF;;AAiFnG;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACExC,EAAAA,UAAU,EAAEtC,SAAS,CAAC8E,IAzF6E;;AA2FnG;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACErC,EAAAA,SAAS,EAAEzC,SAAS,CAAC8E,IAnG8E;;AAqGnG;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACEnC,EAAAA,MAAM,EAAE3C,SAAS,CAAC8E,IA7GiF;;AA+GnG;AACF;AACA;AACA;AACA;AACA;AACA;AACEjC,EAAAA,SAAS,EAAE7C,SAAS,CAAC8E,IAtH8E;;AAwHnG;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACE/B,EAAAA,QAAQ,EAAE/C,SAAS,CAAC8E;AAhI+E,CAA3B,CAAhD,GAiIrB,EAjIL;AAkIA,eAAehE,aAAf","sourcesContent":["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 *     <div>\n *       <CSSTransition in={inProp} timeout={200} classNames=\"my-node\">\n *         <div>\n *           {\"I'll receive my-node-* classes\"}\n *         </div>\n *       </CSSTransition>\n *       <button type=\"button\" onClick={() => setInProp(true)}>\n *         Click to Enter\n *       </button>\n *     </div>\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 for 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 `<Transition>` 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 `<Transition>` 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 `<Transition>` 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 `<Transition>` 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 `<Transition>` 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 `<Transition>` 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;"]},"metadata":{},"sourceType":"module"}