UNPKG

infinity-forge

Version:
77 lines 3.63 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); var onTouchStart_1 = __importDefault(require("./onTouchStart.js")); var onTouchMove_1 = __importDefault(require("./onTouchMove.js")); var onTouchEnd_1 = __importDefault(require("./onTouchEnd.js")); var onResize_1 = __importDefault(require("./onResize.js")); var onClick_1 = __importDefault(require("./onClick.js")); var onScroll_1 = __importDefault(require("./onScroll.js")); var onLoad_1 = __importDefault(require("./onLoad.js")); var onDocumentTouchStart_1 = __importDefault(require("./onDocumentTouchStart.js")); var document_1 = require("../../ssr-window/document.js"); var events = function (swiper, method) { var document = (0, document_1.getDocument)(); var params = swiper.params, el = swiper.el, wrapperEl = swiper.wrapperEl, device = swiper.device; var capture = !!params.nested; var domMethod = method === 'on' ? 'addEventListener' : 'removeEventListener'; var swiperMethod = method; if (!el || typeof el === 'string') return; // Touch Events document[domMethod]('touchstart', swiper.onDocumentTouchStart, { passive: false, capture: capture }); el[domMethod]('touchstart', swiper.onTouchStart, { passive: false }); el[domMethod]('pointerdown', swiper.onTouchStart, { passive: false }); document[domMethod]('touchmove', swiper.onTouchMove, { passive: false, capture: capture }); document[domMethod]('pointermove', swiper.onTouchMove, { passive: false, capture: capture }); document[domMethod]('touchend', swiper.onTouchEnd, { passive: true }); document[domMethod]('pointerup', swiper.onTouchEnd, { passive: true }); document[domMethod]('pointercancel', swiper.onTouchEnd, { passive: true }); document[domMethod]('touchcancel', swiper.onTouchEnd, { passive: true }); document[domMethod]('pointerout', swiper.onTouchEnd, { passive: true }); document[domMethod]('pointerleave', swiper.onTouchEnd, { passive: true }); document[domMethod]('contextmenu', swiper.onTouchEnd, { passive: true }); // Prevent Links Clicks if (params.preventClicks || params.preventClicksPropagation) { el[domMethod]('click', swiper.onClick, true); } if (params.cssMode) { wrapperEl[domMethod]('scroll', swiper.onScroll); } // Resize handler if (params.updateOnWindowResize) { swiper[swiperMethod](device.ios || device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate', onResize_1.default, true); } else { swiper[swiperMethod]('observerUpdate', onResize_1.default, true); } // Images loader el[domMethod]('load', swiper.onLoad, { capture: true }); }; function attachEvents() { var swiper = this; var params = swiper.params; swiper.onTouchStart = onTouchStart_1.default.bind(swiper); swiper.onTouchMove = onTouchMove_1.default.bind(swiper); swiper.onTouchEnd = onTouchEnd_1.default.bind(swiper); swiper.onDocumentTouchStart = onDocumentTouchStart_1.default.bind(swiper); if (params.cssMode) { swiper.onScroll = onScroll_1.default.bind(swiper); } swiper.onClick = onClick_1.default.bind(swiper); swiper.onLoad = onLoad_1.default.bind(swiper); events(swiper, 'on'); } function detachEvents() { var swiper = this; events(swiper, 'off'); } exports.default = { attachEvents: attachEvents, detachEvents: detachEvents, }; //# sourceMappingURL=index.js.map