25 lines
967 B
JavaScript
25 lines
967 B
JavaScript
import { c } from "../../_utils/cssr/index.mjs";
|
|
import commonVariables from "../common/_common.mjs";
|
|
const {
|
|
cubicBezierEaseInOut
|
|
} = commonVariables;
|
|
export function fadeDownTransition({
|
|
name = 'fade-down',
|
|
fromOffset = '-4px',
|
|
enterDuration = '.3s',
|
|
leaveDuration = '.3s',
|
|
enterCubicBezier = cubicBezierEaseInOut,
|
|
leaveCubicBezier = cubicBezierEaseInOut
|
|
} = {}) {
|
|
return [c(`&.${name}-transition-enter-from, &.${name}-transition-leave-to`, {
|
|
opacity: 0,
|
|
transform: `translateY(${fromOffset})`
|
|
}), c(`&.${name}-transition-enter-to, &.${name}-transition-leave-from`, {
|
|
opacity: 1,
|
|
transform: 'translateY(0)'
|
|
}), c(`&.${name}-transition-leave-active`, {
|
|
transition: `opacity ${leaveDuration} ${leaveCubicBezier}, transform ${leaveDuration} ${leaveCubicBezier}`
|
|
}), c(`&.${name}-transition-enter-active`, {
|
|
transition: `opacity ${enterDuration} ${enterCubicBezier}, transform ${enterDuration} ${enterCubicBezier}`
|
|
})];
|
|
} |