refactor(web/transitions): improve scale fade transition

This commit is contained in:
Luke
2023-01-02 19:33:50 +01:00
parent 9f1ae6184a
commit 7d9e76b043

View File

@@ -3,13 +3,12 @@ import { AnimatePresence, motion } from 'framer-motion';
const ScaleFade: React.FC<{ visible: boolean; children: React.ReactNode }> = ({ visible, children }) => { const ScaleFade: React.FC<{ visible: boolean; children: React.ReactNode }> = ({ visible, children }) => {
return ( return (
<> <>
<AnimatePresence initial={false}> <AnimatePresence>
{visible && ( {visible && (
<motion.div <motion.div
initial={{ opacity: 0, scale: 0.95 }} initial={{ opacity: 0, scale: 0.95 }}
animate={{ opacity: 1, scale: 1 }} animate={{ opacity: 1, scale: 1, transition: { duration: 0.2, ease: [0.4, 0, 1, 1] } }}
exit={{ opacity: 0, scale: 0.95 }} exit={{ opacity: 0, scale: 0.95, transition: { duration: 0.1, ease: [0, 0, 0.2, 1] } }}
transition={{ duration: 0.1 }}
> >
{children} {children}
</motion.div> </motion.div>