UNPKG

@atlaskit/motion

Version:

A set of utilities to apply motion in your application.

49 lines (46 loc) 1.87 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireDefault(require("react")); var _keyframesMotion = _interopRequireDefault(require("./keyframes-motion")); var invertedDirection = { top: 'bottom', bottom: 'top', left: 'right', right: 'left' }; /** * Props for controlling the behavior of the FadeIn animation */ /** * __FadeIn__ * * Useful for fading in one or more elements. * * - [Examples](https://atlaskit.atlassian.com/packages/design-system/motion/docs/entering-motions) */ var FadeIn = function FadeIn(_ref) { var children = _ref.children, _ref$duration = _ref.duration, duration = _ref$duration === void 0 ? 'large' : _ref$duration, entranceDirection = _ref.entranceDirection, exitDirection = _ref.exitDirection, _ref$distance = _ref.distance, distance = _ref$distance === void 0 ? 'proportional' : _ref$distance, onFinish = _ref.onFinish, isPaused = _ref.isPaused; var invertedEntranceDirection = entranceDirection !== undefined ? invertedDirection[entranceDirection] : undefined; var isExitDirect = Boolean(exitDirection || invertedEntranceDirection) ? "fade-out-from-".concat(exitDirection || invertedEntranceDirection).concat(distance === 'proportional' ? '' : '-constant') : 'fade-out'; return /*#__PURE__*/_react.default.createElement(_keyframesMotion.default, { duration: duration, enteringAnimation: entranceDirection ? "fade-in-from-".concat(entranceDirection).concat(distance === 'proportional' ? '' : '-constant') : 'fade-in', exitingAnimation: isExitDirect, animationTimingFunction: "ease-in-out", onFinish: onFinish, isPaused: isPaused }, children); }; var _default = exports.default = FadeIn;