infinity-forge
Version:
21 lines • 798 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useMountTransition = useMountTransition;
var react_1 = require("react");
function useMountTransition(isMounted, delay) {
var _a = (0, react_1.useState)(false), isTransitioning = _a[0], setIsTransitioning = _a[1];
(0, react_1.useEffect)(function () {
var timeoutId;
if (isMounted && !isTransitioning) {
setIsTransitioning(true);
}
else if (!isMounted && isTransitioning) {
timeoutId = setTimeout(function () { return setIsTransitioning(false); }, delay);
}
return function () {
clearTimeout(timeoutId);
};
}, [isMounted, delay, isTransitioning]);
return isTransitioning;
}
//# sourceMappingURL=index.js.map