UNPKG

infinity-forge

Version:
47 lines 1.91 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = effectVirtualTransitionEnd; var utils_1 = require("./utils.js"); function effectVirtualTransitionEnd(_a) { var swiper = _a.swiper, duration = _a.duration, transformElements = _a.transformElements, allSlides = _a.allSlides; var activeIndex = swiper.activeIndex; var getSlide = function (el) { if (!el.parentElement) { // assume shadow root var slide = swiper.slides.filter(function (slideEl) { return slideEl.shadowRoot && slideEl.shadowRoot === el.parentNode; })[0]; return slide; } return el.parentElement; }; if (swiper.params.virtualTranslate && duration !== 0) { var eventTriggered_1 = false; var transitionEndTarget = void 0; if (allSlides) { transitionEndTarget = transformElements; } else { transitionEndTarget = transformElements.filter(function (transformEl) { var el = transformEl.classList.contains('swiper-slide-transform') ? getSlide(transformEl) : transformEl; return swiper.getSlideIndex(el) === activeIndex; }); } transitionEndTarget.forEach(function (el) { (0, utils_1.elementTransitionEnd)(el, function () { if (eventTriggered_1) return; if (!swiper || swiper.destroyed) return; eventTriggered_1 = true; swiper.animating = false; var evt = new window.CustomEvent('transitionend', { bubbles: true, cancelable: true, }); swiper.wrapperEl.dispatchEvent(evt); }); }); } } //# sourceMappingURL=effect-virtual-transition-end.js.map