UNPKG

@coreui/react

Version:

UI Components Library for React.js

39 lines (36 loc) 1.26 kB
import getTransitionDurationFromElement from './getTransitionDurationFromElement.js'; var execute = function (callback) { if (typeof callback === 'function') { callback(); } }; var triggerTransitionEnd = function (element) { element.dispatchEvent(new Event('transitionend')); }; var executeAfterTransition = function (callback, transitionElement, waitForTransition) { if (waitForTransition === void 0) { waitForTransition = true; } if (!waitForTransition) { execute(callback); return; } var durationPadding = 5; var emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding; var called = false; var handler = function (_a) { var target = _a.target; if (target !== transitionElement) { return; } called = true; transitionElement.removeEventListener('transitionend', handler); execute(callback); }; transitionElement.addEventListener('transitionend', handler); setTimeout(function () { if (!called) { triggerTransitionEnd(transitionElement); } }, emulatedDuration); }; export { executeAfterTransition as default }; //# sourceMappingURL=executeAfterTransition.js.map