"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); exports.__esModule = true; exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose")); var _classnames = _interopRequireDefault(require("classnames")); var _react = _interopRequireWildcard(require("react")); var _Transition = _interopRequireWildcard(require("react-transition-group/Transition")); var _end = _interopRequireDefault(require("dom-helpers/transition/end")); var _triggerBrowserReflow = _interopRequireDefault(require("./utils/triggerBrowserReflow")); var _fadeStyles; var defaultProps = { in: false, timeout: 300, mountOnEnter: false, unmountOnExit: false, appear: false }; var fadeStyles = (_fadeStyles = {}, _fadeStyles[_Transition.ENTERING] = 'show', _fadeStyles[_Transition.ENTERED] = 'show', _fadeStyles); var Fade = _react.default.forwardRef(function (_ref, ref) { var className = _ref.className, children = _ref.children, props = (0, _objectWithoutPropertiesLoose2.default)(_ref, ["className", "children"]); var handleEnter = (0, _react.useCallback)(function (node) { (0, _triggerBrowserReflow.default)(node); if (props.onEnter) props.onEnter(node); }, [props]); return _react.default.createElement(_Transition.default, (0, _extends2.default)({ ref: ref, addEndListener: _end.default }, props, { onEnter: handleEnter }), function (status, innerProps) { return _react.default.cloneElement(children, (0, _extends2.default)({}, innerProps, { className: (0, _classnames.default)('fade', className, children.props.className, fadeStyles[status]) })); }); }); Fade.defaultProps = defaultProps; Fade.displayName = 'Fade'; var _default = Fade; exports.default = _default; module.exports = exports["default"];