Files
aso/frontend/dashboard/src/components/animate/variants/rotate.ts
2023-07-03 11:39:08 +07:00

29 lines
833 B
TypeScript

// @types
import { VariantsType } from '../type';
//
import { varTranEnter, varTranExit } from './transition';
// ----------------------------------------------------------------------
export const varRotate = (props?: VariantsType) => {
const durationIn = props?.durationIn;
const durationOut = props?.durationOut;
const easeIn = props?.easeIn;
const easeOut = props?.easeOut;
return {
// IN
in: {
initial: { opacity: 0, rotate: -360 },
animate: { opacity: 1, rotate: 0, transition: varTranEnter({ durationIn, easeIn }) },
exit: { opacity: 0, rotate: -360, transition: varTranExit({ durationOut, easeOut }) },
},
// OUT
out: {
initial: { opacity: 1, rotate: 0 },
animate: { opacity: 0, rotate: -360, transition: varTranExit({ durationOut, easeOut }) },
},
};
};