Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 
 

69 righe
2.6 KiB

  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  3. exports.__esModule = true;
  4. exports.default = void 0;
  5. var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
  6. var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
  7. var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread"));
  8. var _react = _interopRequireDefault(require("react"));
  9. var _propTypes = _interopRequireDefault(require("prop-types"));
  10. var _classnames = _interopRequireDefault(require("classnames"));
  11. var _reactTransitionGroup = require("react-transition-group");
  12. var _utils = require("./utils");
  13. var propTypes = (0, _objectSpread2.default)({}, _reactTransitionGroup.Transition.propTypes, {
  14. children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node]),
  15. tag: _utils.tagPropType,
  16. baseClass: _propTypes.default.string,
  17. baseClassActive: _propTypes.default.string,
  18. className: _propTypes.default.string,
  19. cssModule: _propTypes.default.object,
  20. innerRef: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.string, _propTypes.default.func])
  21. });
  22. var defaultProps = (0, _objectSpread2.default)({}, _reactTransitionGroup.Transition.defaultProps, {
  23. tag: 'div',
  24. baseClass: 'fade',
  25. baseClassActive: 'show',
  26. timeout: _utils.TransitionTimeouts.Fade,
  27. appear: true,
  28. enter: true,
  29. exit: true,
  30. in: true
  31. });
  32. function Fade(props) {
  33. var Tag = props.tag,
  34. baseClass = props.baseClass,
  35. baseClassActive = props.baseClassActive,
  36. className = props.className,
  37. cssModule = props.cssModule,
  38. children = props.children,
  39. innerRef = props.innerRef,
  40. otherProps = (0, _objectWithoutPropertiesLoose2.default)(props, ["tag", "baseClass", "baseClassActive", "className", "cssModule", "children", "innerRef"]);
  41. var transitionProps = (0, _utils.pick)(otherProps, _utils.TransitionPropTypeKeys);
  42. var childProps = (0, _utils.omit)(otherProps, _utils.TransitionPropTypeKeys);
  43. return _react.default.createElement(_reactTransitionGroup.Transition, transitionProps, function (status) {
  44. var isActive = status === 'entered';
  45. var classes = (0, _utils.mapToCssModules)((0, _classnames.default)(className, baseClass, isActive && baseClassActive), cssModule);
  46. return _react.default.createElement(Tag, (0, _extends2.default)({
  47. className: classes
  48. }, childProps, {
  49. ref: innerRef
  50. }), children);
  51. });
  52. }
  53. Fade.propTypes = propTypes;
  54. Fade.defaultProps = defaultProps;
  55. var _default = Fade;
  56. exports.default = _default;