mirror of
https://github.com/ToolJet/ToolJet
synced 2026-05-24 09:28:31 +00:00
* Ensure consistent transition timing * Revert "Ensure consistent transition timing" This reverts commit83301a34af. * Revert "Revert "Ensure consistent transition timing"" This reverts commite190f0b1f2. * Remove unrequired code
22 lines
631 B
JavaScript
22 lines
631 B
JavaScript
import { useEffect, useState } from 'react';
|
|
|
|
const useMountTransition = (isMounted, unmountDelay) => {
|
|
const [isTransitioning, setIsTransitioning] = useState(false);
|
|
|
|
useEffect(() => {
|
|
let timeoutId;
|
|
|
|
if (isMounted && !isTransitioning) {
|
|
timeoutId = setTimeout(() => setIsTransitioning(true), unmountDelay);
|
|
} else if (!isMounted && isTransitioning) {
|
|
timeoutId = setTimeout(() => setIsTransitioning(false), unmountDelay);
|
|
}
|
|
return () => {
|
|
clearTimeout(timeoutId);
|
|
};
|
|
}, [unmountDelay, isMounted, isTransitioning]);
|
|
|
|
return isTransitioning;
|
|
};
|
|
|
|
export default useMountTransition;
|