vendor: 91 bytes, lines 1-4
1/******/ (() => { // webpackBootstrap 2/******/ var __webpack_modules__ = ({ 3 4/***/ "./src/
4js/_components.js": 5/*!*******************************!*\ 6 !*** ./src/js/_components.js ***! 7 \*******************************/ 8/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 9 10"use strict"; 11__webpack_require__.r(__webpack_exports__); 12/* harmony import */ var _components_select_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/select.js */ "./src/js/components/select.js"); 13/* harmony import */ var _components_select_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_components_select_js__WEBPACK_IMPORTED_MODULE_0__); 14/* harmony import */ var _components_sliders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/sliders.js */ "./src/js/components/sliders.js"); 15/* harmony import */ var _components_gallery_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/gallery.js */ "./src/js/components/gallery.js"); 16/* harmony import */ var _components_gallery_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_components_gallery_js__WEBPACK_IMPORTED_MODULE_3__); 17 18 19 20 21 22/***/ }), 23
24/***/ "./src/js/_functions.js": 25/*!******************************!*\ 26 !*** ./src/js/_functions.js ***! 27 \******************************/ 28/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 29 30"use strict"; 31__webpack_require__.r(__webpack_exports__); 32/* harmony import */ var _functions_mobile_check__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./functions/mobile-check */ "./src/js/functions/mobile-check.js"); 33// /* harmony import */ var graph_modal__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! graph-modal */ "./node_modules/graph-modal/src/graph-modal.js"); 34/* harmony import */ var smooth_scroll__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! smooth-scroll */ "./node_modules/smooth-scroll/dist/smooth-scroll.polyfills.min.js"); 35/* harmony import */ var smooth_scroll__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(smooth_scroll__WEBPACK_IMPORTED_MODULE_2__); 36// ÐаннÑй Ñайл - лиÑÑ ÑобÑание подклÑÑений гоÑовÑÑ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñов. 37// РекомендÑеÑÑÑ ÑоздаваÑÑ Ð¾ÑделÑнÑй Ñайл в папке components и подклÑÑаÑÑ Ð²Ñе Ñам 38// ÐпÑеделение опеÑаÑионной ÑиÑÑÐµÐ¼Ñ Ð½Ð° мобилÑнÑÑ 39 40// console.log((0,_functions_mobile_check__WEBPACK_IMPORTED_MODULE_0__.mobileCheck)()); // ÐпÑеделение ÑиÑÐ¸Ð½Ñ ÑкÑана 41// import { isMobile, isTablet, isDesktop } from './functions/check-viewport'; 42// if (isDesktop()) { 43// console.log('...') 44// } 45// ТÑоÑÑлинг ÑÑнкÑии (Ð´Ð»Ñ ÑеÑайза, ввода в инпÑÑ, ÑкÑолла и Ñ.д.) 46// import { throttle } from './functions/throttle'; 47// let yourFunc = () => { console.log('throttle') }; 48// let func = throttle(yourFunc); 49// window.addEventListener('resize', func); 50// Ð¤Ð¸ÐºÑ ÑÑлÑкÑин-блоков 51// import './functions/fix-fullheight'; 52// РеализаÑÐ¸Ñ Ð±ÑÑгеÑ-Ð¼ÐµÐ½Ñ 53// import { burger } from './functions/burger'; 54// РеализаÑÐ¸Ñ Ð¾ÑÑановки ÑкÑолла (не забÑдÑÑе вÑзваÑÑ ÑÑнкÑиÑ) 55// import { disableScroll } from './functions/disable-scroll'; 56// РеализаÑÐ¸Ñ Ð²ÐºÐ»ÑÑÐµÐ½Ð¸Ñ ÑкÑолла (не забÑдÑÑе вÑзваÑÑ ÑÑнкÑиÑ) 57// import { enableScroll } from './functions/enable-scroll'; 58// РеализаÑÐ¸Ñ Ð¼Ð¾Ð´Ð°Ð»Ñного окна 59 60 61// const modal = new graph_modal__WEBPACK_IMPORTED_MODULE_1__["default"](); // РеализаÑÐ¸Ñ Ñабов 62// import GraphTabs from 'graph-tabs'; 63// const tabs = new GraphTabs('tab'); 64// ÐолÑÑение вÑÑоÑÑ Ñапки ÑайÑа (не забÑдÑÑе вÑзваÑÑ ÑÑнкÑиÑ) 65// import { getHeaderHeight } from './functions/header-height'; 66// ÐодклÑÑение плагина каÑÑом-ÑкÑолла 67// import 'simplebar'; 68// ÐодклÑÑение плагина Ð´Ð»Ñ Ð¿Ð¾Ð·Ð¸ÑиониÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÑÑлÑипов 69// import { createPopper, right} from '@popperjs/core'; 70// createPopper(el, tooltip, { 71// placement: 'right' 72// }); 73// ÐодклÑÑение ÑвайпеÑа 74// import Swiper, { Navigation, Pagination } from 'swiper'; 75// Swiper.use([Navigation, Pagination]); 76// const swiper = new Swiper(el, { 77// slidesPerView: 'auto', 78// }); 79// ÐодклÑÑение анимаÑий по ÑкÑÐ¾Ð»Ð»Ñ 80// import AOS from 'aos'; 81// AOS.init(); 82// ÐодклÑÑение паÑаллакÑа блоков пÑи ÑкÑолле 83// import Rellax from 'rellax'; 84// const rellax = new Rellax('.rellax'); 85// ÐодклÑÑение плавной пÑокÑÑÑки к ÑкоÑÑм 86 87 88const scroll = new (smooth_scroll__WEBPACK_IMPORTED_MODULE_2___default())('a[href*="#"]'); // ÐодклÑÑение ÑобÑÑий Ñвайпа на мобилÑнÑÑ 89// import 'swiped-events'; 90// document.addEventListener('swiped', function(e) { 91// console.log(e.target); 92// console.log(e.detail); 93// console.log(e.detail.dir); 94// }); 95// import { validateForms } from './functions/validate-forms'; 96// const rules1 = [...]; 97// const afterForm = () => { 98// console.log('ÐÑоизоÑла оÑпÑавка, ÑÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ пиÑаÑÑ Ð»ÑбÑе дейÑÑвиÑ'); 99// }; 100// validateForms('.form-1', rules1, afterForm); 101 102/***/ }), 103
104/***/ "./src/js/_vars.js": 105/*!*************************!*\ 106 !*** ./src/js/_vars.js ***! 107 \*************************/ 108/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 109 110"use strict"; 111__webpack_require__.r(__webpack_exports__); 112/* harmony export */ __webpack_require__.d(__webpack_exports__, { 113/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 114/* harmony export */ }); 115/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 116 windowEl: window, 117 documentEl: document, 118 htmlEl: document.documentElement, 119 bodyEl: document.body 120}); 121 122/***/ }), 123
124/***/ "./src/js/_vendor.js": 125/*!***************************!*\ 126 !*** ./src/js/_vendor.js ***! 127 \***************************/ 128/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 129 130"use strict"; 131__webpack_require__.r(__webpack_exports__); 132/* harmony import */ var _vendor_focus_visible_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./vendor/focus-visible.js */ "./src/js/vendor/focus-visible.js"); 133/* harmony import */ var _vendor_focus_visible_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_vendor_focus_visible_js__WEBPACK_IMPORTED_MODULE_0__); 134/* harmony import */ var _vendor_choices_min_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./vendor/choices.min.js */ "./src/js/vendor/choices.min.js"); 135/* harmony import */ var _vendor_choices_min_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_vendor_choices_min_js__WEBPACK_IMPORTED_MODULE_1__); 136 137 138 139/***/ }), 140
141/***/ "./src/js/components/gallery.js": 142/*!**************************************!*\ 143 !*** ./src/js/components/gallery.js ***! 144 \**************************************/ 145/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => { 146 147/////////// подклÑÑение галеÑеи 148__webpack_require__(/*! fslightbox */ "./node_modules/fslightbox/index.js"); 149 150/***/ }), 151 152 153 154
155/***/ "./src/js/components/select.js": 156/*!*************************************!*\ 157 !*** ./src/js/components/select.js ***! 158 \*************************************/ 159/***/ (() => { 160 161//select 162const multiDefault = () => { 163 const elements = document.querySelectorAll('.multi-default'); 164 elements.forEach(el => { 165 const choices = new Choices(el, { 166 // searchEnabled: false, 167 noResultsText: 'ÐиÑего не найдено' 168 }); 169 }); 170}; 171 172multiDefault(); 173 174/***/ }), 175
176/***/ "./src/js/components/sliders.js": 177/*!**************************************!*\ 178 !*** ./src/js/components/sliders.js ***! 179 \**************************************/ 180/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 181 182"use strict"; 183__webpack_require__.r(__webpack_exports__); 184/* harmony import */ var swiper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! swiper */ "./node_modules/swiper/swiper.esm.js"); 185///////////// подклÑÑение ÑлайдеÑов 186 187swiper__WEBPACK_IMPORTED_MODULE_0__["default"].use([swiper__WEBPACK_IMPORTED_MODULE_0__.Navigation, swiper__WEBPACK_IMPORTED_MODULE_0__.Pagination]); 188const slider1 = document.querySelector('.gallery-slider'); 189let mySwiper1 = new swiper__WEBPACK_IMPORTED_MODULE_0__["default"](slider1, { 190 slidesPerView: 1, 191 spaceBetween: 30, 192 loop: true, 193 pagination: { 194 el: '.gallery__inner .swiper-pagination', 195 clickable: true, 196 }, 197 watchSlidesVisibility: true, 198 // autoplay: { 199 // delay: 5000, 200 // }, 201 navigation: { 202 nextEl: '.gallery__swiper-button-next', 203 prevEl: '.gallery__swiper-button-prev' 204 }, 205 breakpoints: { 206 320: { 207 slidesPerView: 1 208 }, 209 480 : { 210 slidesPerView: 1 211 }, 212 768: { 213 slidesPerView: 2 214 }, 215 1025: { 216 slidesPerView: 3 217 } 218 } 219}); 220const slider2 = document.querySelector('.video-slider'); 221let mySwiper2 = new swiper__WEBPACK_IMPORTED_MODULE_0__["default"](slider2, { 222 slidesPerView: 1, 223 spaceBetween: 30, 224 loop: true, 225 // pagination: { 226 // el: '.swiper-pagination', 227 // clickable: true, 228 // }, 229 // autoplay: { 230 // delay: 5000, 231 // }, 232 navigation: { 233 nextEl: '.video__swiper-button-next', 234 prevEl: '.video__swiper-button-prev' 235 }, 236 breakpoints: { 237 1350: { 238 slidesPerView: 3 239 }, 240 768: { 241 slidesPerView: 2 242 } 243 } 244}); 245 const slider3 = document.querySelector('.mark-slider'); 246 let mySwiper3 = new swiper__WEBPACK_IMPORTED_MODULE_0__["default"](slider3, { 247 slidesPerView: 1, 248 spaceBetween: 30, 249 loop: true, 250 // pagination: { 251 // el: '.swiper-pagination', 252 // clickable: true, 253 // }, 254 // autoplay: { 255 // delay: 5000, 256 // }, 257 navigation: { 258 nextEl: '.mark__swiper-button-next', 259 prevEl: '.mark__swiper-button-prev' 260 }, 261 breakpoints: { 262 1350: { 263 slidesPerView: 6 264 }, 265 900: { 266 slidesPerView: 5 267 }, 268 700: { 269 slidesPerView: 3 270 }, 271 500: { 272 slidesPerView: 2 273 }, 274 350: { 275 slidesPerView: 2 276 } 277 278 } 279 }); 280 281 const slider4 = document.querySelector('.mark-mobile-slider'); 282 let mySwiper4 = new swiper__WEBPACK_IMPORTED_MODULE_0__["default"](slider4, { 283 slidesPerView: 1, 284 spaceBetween: 30, 285 loop: true, 286 // pagination: { 287 // el: '.swiper-pagination', 288 // clickable: true, 289 // }, 290 // autoplay: { 291 // delay: 5000, 292 // }, 293 navigation: { 294 nextEl: '.mark_mobile__swiper-button-next', 295 prevEl: '.mark_mobile__swiper-button-prev' 296 }, 297 breakpoints: { 298 1350: { 299 slidesPerView: 5 300 }, 301 900: { 302 slidesPerView: 4 303 }, 304 700: { 305 slidesPerView: 3 306 }, 307 300: { 308 slidesPerView: 2 309 } 310 } 311 }); 312/***/ }), 313
314/***/ "./src/js/functions/mobile-check.js": 315/*!******************************************!*\ 316 !*** ./src/js/functions/mobile-check.js ***! 317 \******************************************/ 318/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 319 320"use strict"; 321__webpack_require__.r(__webpack_exports__); 322/* harmony export */ __webpack_require__.d(__webpack_exports__, { 323/* harmony export */ "mobileCheck": () => (/* binding */ mobileCheck) 324/* harmony export */ }); 325/* harmony import */ var _vars__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../_vars */ "./src/js/_vars.js"); 326 327const mobileCheck = () => { 328 const userAgent = navigator.userAgent || navigator.vendor || window.opera; 329 330 if (/android/i.test(userAgent)) { 331 _vars__WEBPACK_IMPORTED_MODULE_0__["default"].htmlEl.classList.add('page--android'); 332 return "Android"; 333 } 334 335 if (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream) { 336 _vars__WEBPACK_IMPORTED_MODULE_0__["default"].htmlEl.classList.add('page--ios'); 337 return "iOS"; 338 } 339 340 return "unknown"; 341}; 342 343/***/ }), 344
345/***/ "./src/js/vendor/choices.min.js": 346/*!**************************************!*\ 347 !*** ./src/js/vendor/choices.min.js ***! 348 \**************************************/ 349/***/ (() => { 350 351/*! choices.js v9.0.1 | © 2019 Josh Johnson | https://github.com/jshjohnson/Choices#readme */ 352window.Choices = function (e) { 353 var t = {}; 354 355 function i(n) { 356 if (t[n]) return t[n].exports; 357 var r = t[n] = { 358 i: n, 359 l: !1, 360 exports: {} 361 }; 362 return e[n].call(r.exports, r, r.exports, i), r.l = !0, r.exports; 363 } 364 365 return i.m = e, i.c = t, i.d = function (e, t, n) { 366 i.o(e, t) || Object.defineProperty(e, t, { 367 enumerable: !0, 368 get: n 369 }); 370 }, i.r = function (e) { 371 "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { 372 value: "Module" 373 }), Object.defineProperty(e, "__esModule", { 374 value: !0 375 }); 376 }, i.t = function (e, t) { 377 if (1 & t && (e = i(e)), 8 & t) return e; 378 if (4 & t && "object" == typeof e && e && e.__esModule) return e; 379 var n = Object.create(null); 380 if (i.r(n), Object.defineProperty(n, "default", { 381 enumerable: !0, 382 value: e 383 }), 2 & t && "string" != typeof e) for (var r in e) i.d(n, r, function (t) { 384 return e[t]; 385 }.bind(null, r)); 386 return n; 387 }, i.n = function (e) { 388 var t = e && e.__esModule ? function () { 389 return e.default; 390 } : function () { 391 return e; 392 }; 393 return i.d(t, "a", t), t; 394 }, i.o = function (e, t) { 395 return Object.prototype.hasOwnProperty.call(e, t); 396 }, i.p = "/public/assets/scripts/", i(i.s = 7); 397}([function (e, t, i) { 398 "use strict"; 399 400 Object.defineProperty(t, "__esModule", { 401 value: !0 402 }); 403 var n = i(1); 404 t.DEFAULT_CLASSNAMES = { 405 containerOuter: "choices", 406 containerInner: "choices__inner", 407 input: "choices__input", 408 inputCloned: "choices__input--cloned", 409 list: "choices__list", 410 listItems: "choices__list--multiple", 411 listSingle: "choices__list--single", 412 listDropdown: "choices__list--dropdown", 413 item: "choices__item", 414 itemSelectable: "choices__item--selectable", 415 itemDisabled: "choices__item--disabled", 416 itemChoice: "choices__item--choice", 417 placeholder: "choices__placeholder", 418 group: "choices__group", 419 groupHeading: "choices__heading", 420 button: "choices__button", 421 activeState: "is-active", 422 focusState: "is-focused", 423 openState: "is-open", 424 disabledState: "is-disabled", 425 highlightedState: "is-highlighted", 426 selectedState: "is-selected", 427 flippedState: "is-flipped", 428 loadingState: "is-loading", 429 noResults: "has-no-results", 430 noChoices: "has-no-choices" 431 }, t.DEFAULT_CONFIG = { 432 items: [], 433 choices: [], 434 silent: !1, 435 renderChoiceLimit: -1, 436 maxItemCount: -1, 437 addItems: !0, 438 addItemFilter: null, 439 removeItems: !0, 440 removeItemButton: !1, 441 editItems: !1, 442 duplicateItemsAllowed: !0, 443 delimiter: ",", 444 paste: !0, 445 searchEnabled: !0, 446 searchChoices: !0, 447 searchFloor: 1, 448 searchResultLimit: 4, 449 searchFields: ["label", "value"], 450 position: "auto", 451 resetScrollPosition: !0, 452 shouldSort: !0, 453 shouldSortItems: !1, 454 sorter: n.sortByAlpha, 455 placeholder: !0, 456 placeholderValue: null, 457 searchPlaceholderValue: null, 458 prependValue: null, 459 appendValue: null, 460 renderSelectedChoices: "auto", 461 loadingText: "Loading...", 462 noResultsText: "No results found", 463 noChoicesText: "No choices to choose from", 464 itemSelectText: "Press to select", 465 uniqueItemText: "Only unique values can be added", 466 customAddItemText: "Only values matching specific conditions can be added", 467 addItemText: function (e) { 468 return 'Press Enter to add <b>"' + n.sanitise(e) + '"</b>'; 469 }, 470 maxItemText: function (e) { 471 return "Only " + e + " values can be added"; 472 }, 473 valueComparer: function (e, t) { 474 return e === t; 475 }, 476 fuseOptions: { 477 includeScore: !0 478 }, 479 callbackOnInit: null, 480 callbackOnCreateTemplates: null, 481 classNames: t.DEFAULT_CLASSNAMES 482 }, t.EVENTS = { 483 showDropdown: "showDropdown", 484 hideDropdown: "hideDropdown", 485 change: "change", 486 choice: "choice", 487 search: "search", 488 addItem: "addItem", 489 removeItem: "removeItem", 490 highlightItem: "highlightItem", 491 highlightChoice: "highlightChoice", 492 unhighlightItem: "unhighlightItem" 493 }, t.ACTION_TYPES = { 494 ADD_CHOICE: "ADD_CHOICE", 495 FILTER_CHOICES: "FILTER_CHOICES", 496 ACTIVATE_CHOICES: "ACTIVATE_CHOICES", 497 CLEAR_CHOICES: "CLEAR_CHOICES", 498 ADD_GROUP: "ADD_GROUP", 499 ADD_ITEM: "ADD_ITEM", 500 REMOVE_ITEM: "REMOVE_ITEM", 501 HIGHLIGHT_ITEM: "HIGHLIGHT_ITEM", 502 CLEAR_ALL: "CLEAR_ALL", 503 RESET_TO: "RESET_TO", 504 SET_IS_LOADING: "SET_IS_LOADING" 505 }, t.KEY_CODES = { 506 BACK_KEY: 46, 507 DELETE_KEY: 8,
508 ENTER_KEY: 13, 509 A_KEY: 65, 510 ESC_KEY: 27, 511 UP_KEY: 38, 512 DOWN_KEY: 40, 513 PAGE_UP_KEY: 33, 514 PAGE_DOWN_KEY: 34 515 }, t.TEXT_TYPE = "text", t.SELECT_ONE_TYPE = "select-one", t.SELECT_MULTIPLE_TYPE = "select-multiple", t.SCROLLING_SPEED = 4; 516}, function (e, t, i) { 517 "use strict"; 518 519 var n; 520 Object.defineProperty(t, "__esModule", { 521 value: !0 522 }), t.getRandomNumber = function (e, t) { 523 return Math.floor(Math.random() * (t - e) + e); 524 }, t.generateChars = function (e) { 525 return Array.from({ 526 length: e 527 }, function () { 528 return t.getRandomNumber(0, 36).toString(36); 529 }).join(""); 530 }, t.generateId = function (e, i) { 531 var n = e.id || e.name && e.name + "-" + t.generateChars(2) || t.generateChars(4); 532 return n = i + "-" + (n = n.replace(/(:|\.|\[|\]|,)/g, "")); 533 }, t.getType = function (e) { 534 return Object.prototype.toString.call(e).slice(8, -1); 535 }, t.isType = function (e, i) { 536 return null != i && t.getType(i) === e; 537 }, t.wrap = function (e, t) { 538 return void 0 === t && (t = document.createElement("div")), e.nextSibling ? e.parentNode && e.parentNode.insertBefore(t, e.nextSibling) : e.parentNode && e.parentNode.appendChild(t), t.appendChild(e); 539 }, t.getAdjacentEl = function (e, t, i) { 540 void 0 === i && (i = 1); 541 542 for (var n = (i > 0 ? "next" : "previous") + "ElementSibling", r = e[n]; r;) { 543 if (r.matches(t)) return r; 544 r = r[n]; 545 } 546 547 return r; 548 }, t.isScrolledIntoView = function (e, t, i) { 549 return void 0 === i && (i = 1), !!e && (i > 0 ? t.scrollTop + t.offsetHeight >= e.offsetTop + e.offsetHeight : e.offsetTop >= t.scrollTop); 550 }, t.sanitise = function (e) { 551 return "string" != typeof e ? e : e.replace(/&/g, "&").replace(/>/g, "&rt;").replace(/</g, "<").replace(/"/g, """); 552 }, t.strToEl = (n = document.createElement("div"), function (e) { 553 var t = e.trim(); 554 n.innerHTML = t; 555 556 for (var i = n.children[0]; n.firstChild;) n.removeChild(n.firstChild); 557 558 return i; 559 }), t.sortByAlpha = function (e, t) { 560 var i = e.value, 561 n = e.label, 562 r = void 0 === n ? i : n, 563 o = t.value, 564 s = t.label, 565 a = void 0 === s ? o : s; 566 return r.localeCompare(a, [], { 567 sensitivity: "base", 568 ignorePunctuation: !0, 569 numeric: !0 570 }); 571 }, t.sortByScore = function (e, t) { 572 var i = e.score, 573 n = void 0 === i ? 0 : i, 574 r = t.score; 575 return n - (void 0 === r ? 0 : r); 576 }, t.dispatchEvent = function (e, t, i) { 577 void 0 === i && (i = null); 578 var n = new CustomEvent(t, { 579 detail: i, 580 bubbles: !0, 581 cancelable: !0 582 }); 583 return e.dispatchEvent(n); 584 }, t.existsInArray = function (e, t, i) { 585 return void 0 === i && (i = "value"), e.some(function (e) { 586 return "string" == typeof t ? e[i] === t.trim() : e[i] === t; 587 }); 588 }, t.cloneObject = function (e) { 589 return JSON.parse(JSON.stringify(e)); 590 }, t.diff = function (e, t) { 591 var i = Object.keys(e).sort(), 592 n = Object.keys(t).sort(); 593 return i.filter(function (e) { 594 return n.indexOf(e) < 0; 595 }); 596 }; 597}, function (e, t, i) { 598 "use strict"; 599 600 (function (e, n) { 601 var r, 602 o = i(6); 603 r = "undefined" != typeof self ? self : "undefined" != typeof window ? window : void 0 !== e ? e : n; 604 var s = Object(o.a)(r); 605 t.a = s; 606 }).call(this, i(12), i(13)(e)); 607}, function (e, t, i) { 608 "use strict"; 609 610 i.r(t), i.d(t, "__DO_NOT_USE__ActionTypes", function () { 611 return o; 612 }), i.d(t, "applyMiddleware", function () { 613 return v; 614 }), i.d(t, "bindActionCreators", function () { 615 return h; 616 }), i.d(t, "combineReducers", function () { 617 return l; 618 }), i.d(t, "compose", function () { 619 return m; 620 }), i.d(t, "createStore", function () { 621 return a; 622 }); 623 624 var n = i(2), 625 r = function () { 626 return Math.random().toString(36).substring(7).split("").join("."); 627 }, 628 o = { 629 INIT: "@@redux/INIT" + r(), 630 REPLACE: "@@redux/REPLACE" + r(), 631 PROBE_UNKNOWN_ACTION: function () { 632 return "@@redux/PROBE_UNKNOWN_ACTION" + r(); 633 } 634 }; 635 636 function s(e) { 637 if ("object" != typeof e || null === e) return !1; 638 639 for (var t = e; null !== Object.getPrototypeOf(t);) t = Object.getPrototypeOf(t); 640 641 return Object.getPrototypeOf(e) === t; 642 } 643 644 function a(e, t, i) { 645 var r; 646 if ("function" == typeof t && "function" == typeof i || "function" == typeof i && "function" == typeof arguments[3]) throw new Error("It looks like you are passing several store enhancers to createStore(
646). This is not supported. Instead, compose them together to a single function."); 647 648 if ("function" == typeof t && void 0 === i && (i = t, t = void 0), void 0 !== i) { 649 if ("function" != typeof i) throw new Error("Expected the enhancer to be a function."); 650 return i(a)(e, t); 651 } 652 653 if ("function" != typeof e) throw new Error("Expected the reducer to be a function."); 654 var c = e, 655 l = t, 656 u = [], 657 h = u, 658 d = !1; 659 660 function p() { 661 h === u && (h = u.slice()); 662 } 663 664 function f() { 665 if (d) throw new Error("You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store."); 666 return l; 667 } 668 669 function m(e) { 670 if ("function" != typeof e) throw new Error("Expected the listener to be a function."); 671 if (d) throw new Error("You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api-reference/store#subscribe(listener) for more details."); 672 var t = !0; 673 return p(), h.push(e), function () { 674 if (t) { 675 if (d) throw new Error("You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api-reference/store#subscribe(listener) for more details."); 676 t = !1, p(); 677 var i = h.indexOf(e); 678 h.splice(i, 1); 679 } 680 }; 681 } 682 683 function v(e) { 684 if (!s(e)) throw new Error("Actions must be plain objects. Use custom middleware for async actions."); 685 if (void 0 === e.type) throw new Error('Actions may not have an undefined "type" property. Have you misspelled a constant?'); 686 if (d) throw new Error("Reducers may not dispatch actions."); 687 688 try { 689 d = !0, l = c(l, e); 690 } finally { 691 d = !1; 692 } 693 694 for (var t = u = h, i = 0; i < t.length; i++) { 695 (0, t[i])(); 696 } 697 698 return e; 699 } 700 701 return v({ 702 type: o.INIT 703 }), (r = { 704 dispatch: v, 705 subscribe: m, 706 getState: f, 707 replaceReducer: function (e) { 708 if ("function" != typeof e) throw new Error("Expected the nextReducer to be a function."); 709 c = e, v({ 710 type: o.REPLACE 711 }); 712 } 713 })[n.a] = function () { 714 var e, 715 t = m; 716 return (e = { 717 subscribe: function (e) { 718 if ("object" != typeof e || null === e) throw new TypeError("Expected the observer to be an object."); 719 720 function i() { 721 e.next && e.next(f()); 722 } 723 724 return i(), { 725 unsubscribe: t(i) 726 }; 727 } 728 })[n.a] = function () { 729 return this; 730 }, e; 731 }, r; 732 } 733 734 function c(e, t) { 735 var i = t && t.type; 736 return "Given " + (i && 'action "' + String(i) + '"' || "an action") + ', reducer "' + e + '" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'; 737 } 738 739 function l(e) { 740 for (var t = Object.keys(e), i = {}, n = 0; n < t.length; n++) { 741 var r = t[n]; 742 0, "function" == typeof e[r] && (i[r] = e[r]); 743 } 744 745 var s, 746 a = Object.keys(i); 747 748 try { 749 !function (e) { 750 Object.keys(e).forEach(function (t) { 751 var i = e[t]; 752 if (void 0 === i(void 0, { 753 type: o.INIT 754 })) throw new Error('Reducer "' + t + "\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined."); 755 if (void 0 === i(void 0, { 756 type: o.PROBE_UNKNOWN_ACTION() 757 })) throw new Error('Reducer "' + t + "\" returned undefined when probed with a random type. Don't try to handle " + o.INIT + ' or other actions in "redux/*" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.'); 758 }); 759 }(i); 760 } catch (e) { 761 s = e; 762 } 763 764 return function (e, t) { 765 if (void 0 === e && (e = {}), s) throw s; 766 767 for (var n = !1, r = {}, o = 0; o < a.length; o++) { 768 var l = a[o], 769 u = i[l], 770 h = e[l], 771 d = u(h, t); 772 773 if (void 0 === d) { 774 var p = c(l, t); 775 throw new Error(p); 776 } 777 778 r[l] = d, n = n || d !== h; 779 } 780 781 return n ? r : e; 782 }; 783 } 784 785 function u(e, t) { 786 return function () { 787 return t(e.apply(this, arguments)); 788 }; 789 } 790 791 function h(e, t) { 792 if ("function" == typeof e) return u(e, t); 793 if ("object" != typeof e || null === e) throw new Error("bindActionCreators expected an object or a function, instead received " + (null === e ? "null" : typeof e) + '. Did you write "import ActionCreators from" instead of "import * as ActionCreators from"?'); 794 var i = {}; 795 796 for (var n in e) { 797 var r = e[n]; 798 "function" == typeof r && (i[n] = u(r, t)); 799 } 800 801 return i; 802 } 803 804 function d(e, t, i) { 805 return t in e ? Object.defineProperty(e, t, { 806 value: i, 807 enumerable: !0, 808 configurable: !0, 809 writable: !0 810 }) : e[t] = i, e; 811 } 812 813 function p(e, t) { 814 var i = Object.keys(e); 815 return Object.getOwnPropertySymbols && i.push.apply(i, Object.getOwnPropertySymbols(e)), t && (i = i.filter(function (t) { 816 return Object.getOwnPropertyDescriptor(e, t).enumerable; 817 })), i; 818 } 819 820 function f(e) { 821 for (var t = 1; t < arguments.length; t++) { 822 var i = null != arguments[t] ? arguments[t] : {};
823 t % 2 ? p(i, !0).forEach(function (t) { 824 d(e, t, i[t]); 825 }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(i)) : p(i).forEach(function (t) { 826 Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(i, t)); 827 }); 828 } 829 830 return e; 831 } 832 833 function m() { 834 for (var e = arguments.length, t = new Array(e), i = 0; i < e; i++) t[i] = arguments[i]; 835 836 return 0 === t.length ? function (e) { 837 return e; 838 } : 1 === t.length ? t[0] : t.reduce(function (e, t) { 839 return function () { 840 return e(t.apply(void 0, arguments)); 841 }; 842 }); 843 } 844 845 function v() { 846 for (var e = arguments.length, t = new Array(e), i = 0; i < e; i++) t[i] = arguments[i]; 847 848 return function (e) { 849 return function () { 850 var i = e.apply(void 0, arguments), 851 n = function () { 852 throw new Error("Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch."); 853 }, 854 r = { 855 getState: i.getState, 856 dispatch: function () { 857 return n.apply(void 0, arguments); 858 } 859 }, 860 o = t.map(function (e) { 861 return e(r); 862 }); 863 864 return f({}, i, { 865 dispatch: n = m.apply(void 0, o)(i.dispatch) 866 }); 867 }; 868 }; 869 } 870}, function (e, t, i) { 871 "use strict"; 872 873 var n = this && this.__importDefault || function (e) { 874 return e && e.__esModule ? e : { 875 default: e 876 }; 877 }; 878 879 Object.defineProperty(t, "__esModule", { 880 value: !0 881 }); 882 var r = i(3), 883 o = n(i(14)), 884 s = n(i(15)), 885 a = n(i(16)), 886 c = n(i(17)), 887 l = i(1); 888 t.defaultState = { 889 groups: [], 890 items: [], 891 choices: [], 892 loading: !1 893 }; 894 var u = r.combineReducers({ 895 items: o.default, 896 groups: s.default, 897 choices: a.default, 898 loading: c.default 899 }); 900 901 t.default = function (e, i) { 902 var n = e; 903 if ("CLEAR_ALL" === i.type) n = t.defaultState;else if ("RESET_TO" === i.type) return l.cloneObject(i.state); 904 return u(n, i); 905 }; 906}, function (e, t, i) { 907 "use strict"; 908 909 Object.defineProperty(t, "__esModule", { 910 value: !0 911 }); 912 913 var n = i(1), 914 r = function () { 915 function e(e) { 916 var t = e.element, 917 i = e.classNames; 918 if (this.element = t, this.classNames = i, !(t instanceof HTMLInputElement || t instanceof HTMLSelectElement)) throw new TypeError("Invalid element passed"); 919 this.isDisabled = !1; 920 } 921 922 return Object.defineProperty(e.prototype, "isActive", { 923 get: function () { 924 return "active" === this.element.dataset.choice; 925 }, 926 enumerable: !0, 927 configurable: !0 928 }), Object.defineProperty(e.prototype, "dir", { 929 get: function () { 930 return this.element.dir; 931 }, 932 enumerable: !0, 933 configurable: !0 934 }), Object.defineProperty(e.prototype, "value", { 935 get: function () { 936 return this.element.value; 937 }, 938 set: function (e) { 939 this.element.value = e; 940 }, 941 enumerable: !0, 942 configurable: !0 943 }), e.prototype.conceal = function () { 944 this.element.classList.add(this.classNames.input), this.element.hidden = !0, this.element.tabIndex = -1; 945 var e = this.element.getAttribute("style"); 946 e && this.element.setAttribute("data-choice-orig-style", e), this.element.setAttribute("data-choice", "active"); 947 }, e.prototype.reveal = function () { 948 this.element.classList.remove(this.classNames.input), this.element.hidden = !1, this.element.removeAttribute("tabindex"); 949 var e = this.element.getAttribute("data-choice-orig-style"); 950 e ? (this.element.removeAttribute("data-choice-orig-style"), this.element.setAttribute("style", e)) : this.element.removeAttribute("style"), this.element.removeAttribute("data-choice"), this.element.value = this.element.value; 951 }, e.prototype.enable = function () { 952 this.element.removeAttribute("disabled"), this.element.disabled = !1, this.isDisabled = !1; 953 }, e.prototype.disable = function () { 954 this.element.setAttribute("disabled", ""), this.element.disabled = !0, this.isDisabled = !0; 955 }, e.prototype.triggerEvent = function (e, t) { 956 n.dispatchEvent(this.element, e, t); 957 }, e; 958 }(); 959 960 t.default = r; 961}, function (e, t, i) { 962 "use strict"; 963 964 function n(e) { 965 var t, 966 i = e.Symbol; 967 return "function" == typeof i ? i.observable ? t = i.observable : (t = i("observable"), i.observable = t) : t = "@@observable", t; 968 } 969 970 i.d(t, "a", function () { 971 return n; 972 }); 973}, function (e, t, i) { 974 e.exports = i(8); 975}, function (e, t, i) { 976 "use strict"; 977 978 var n = this && this.__spreadArrays || function () { 979 for (var e = 0, t = 0, i = arguments.length; t < i; t++) e += arguments[t].length; 980 981 var n = Array(e), 982 r = 0; 983 984 for (t = 0; t < i; t++) for (var o = arguments[t], s = 0, a = o.length; s < a; s++, r++) n[r] = o[s]; 985 986 return n; 987 }, 988 r = this && this.__importDefault || function (e) {
989 return e && e.__esModule ? e : { 990 default: e 991 }; 992 }; 993 994 Object.defineProperty(t, "__esModule", { 995 value: !0 996 }); 997 998 var o = r(i(9)), 999 s = r(i(10)), 1000 a = r(i(11)), 1001 c = i(18), 1002 l = i(0), 1003 u = r(i(25)), 1004 h = i(26), 1005 d = i(27), 1006 p = i(28), 1007 f = i(29), 1008 m = i(1), 1009 v = i(4), 1010 _ = "-ms-scroll-limit" in document.documentElement.style && "-ms-ime-align" in document.documentElement.style, 1011 g = {}, 1012 y = function () { 1013 function e(t, i) { 1014 var r = this; 1015 void 0 === t && (t = "[data-choice]"), void 0 === i && (i = {}), this.config = s.default.all([l.DEFAULT_CONFIG, e.defaults.options, i], { 1016 arrayMerge: function (e, t) { 1017 return n(t); 1018 } 1019 }); 1020 var o = m.diff(this.config, l.DEFAULT_CONFIG); 1021 o.length && console.warn("Unknown config option(s) passed", o.join(", ")); 1022 var u = "string" == typeof t ? document.querySelector(t) : t; 1023 if (!(u instanceof HTMLInputElement || u instanceof HTMLSelectElement)) throw TypeError("Expected one of the following types text|select-one|select-multiple"); 1024 1025 if (this._isTextElement = u.type === l.TEXT_TYPE, this._isSelectOneElement = u.type === l.SELECT_ONE_TYPE, this._isSelectMultipleElement = u.type === l.SELECT_MULTIPLE_TYPE, this._isSelectElement = this._isSelectOneElement || this._isSelectMultipleElement, this.config.searchEnabled = this._isSelectMultipleElement || this.config.searchEnabled, ["auto", "always"].includes("" + this.config.renderSelectedChoices) || (this.config.renderSelectedChoices = "auto"), i.addItemFilter && "function" != typeof i.addItemFilter) { 1026 var h = i.addItemFilter instanceof RegExp ? i.addItemFilter : new RegExp(i.addItemFilter); 1027 this.config.addItemFilter = h.test.bind(h); 1028 } 1029 1030 if (this._isTextElement ? this.passedElement = new c.WrappedInput({ 1031 element: u, 1032 classNames: this.config.classNames, 1033 delimiter: this.config.delimiter 1034 }) : this.passedElement = new c.WrappedSelect({ 1035 element: u, 1036 classNames: this.config.classNames, 1037 template: function (e) { 1038 return r._templates.option(e); 1039 } 1040 }), this.initialised = !1, this._store = new a.default(), this._initialState = v.defaultState, this._currentState = v.defaultState, this._prevState = v.defaultState, this._currentValue = "", this._canSearch = !!this.config.searchEnabled, this._isScrollingOnIe = !1, this._highlightPosition = 0, this._wasTap = !0, this._placeholderValue = this._generatePlaceholderValue(), this._baseId = m.generateId(this.passedElement.element, "choices-"), this._direction = this.passedElement.dir, !this._direction) { 1041 var d = window.getComputedStyle(this.passedElement.element).direction; 1042 d !== window.getComputedStyle(document.documentElement).direction && (this._direction = d); 1043 } 1044 1045 if (this._idNames = { 1046 itemChoice: "item-choice" 1047 }, this._isSelectElement && (this._presetGroups = this.passedElement.optionGroups, this._presetOptions = this.passedElement.options), this._presetChoices = this.config.choices, this._presetItems = this.config.items, this.passedElement.value && this._isTextElement) { 1048 var p = this.passedElement.value.split(this.config.delimiter); 1049 this._presetItems = this._presetItems.concat(p); 1050 } 1051 1052 if (this.passedElement.options && this.passedElement.options.forEach(function (e) { 1053 r._presetChoices.push({ 1054 value: e.value, 1055 label: e.innerHTML, 1056 selected: !!e.selected, 1057 disabled: e.disabled || e.parentNode.disabled, 1058 placeholder: "" === e.value || e.hasAttribute("placeholder"), 1059 customProperties: e.dataset["custom-properties"] 1060 }); 1061 }), this._render = this._render.bind(this), this._onFocus = this._onFocus.bind(this), this._onBlur = this._onBlur.bind(this), this._onKeyUp = this._onKeyUp.bind(this), this._onKeyDown = this._onKeyDown.bind(this), this._onClick = this._onClick.bind(this), this._onTouchMove = this._onTouchMove.bind(this), this._onTouchEnd = this._onTouchEnd.bind(this), this._onMouseDown = this._onMouseDown.bind(this), this._onMouseOver = this._onMouseOver.bind(this), this._onFormReset = this._onFormReset.bind(this), this._onSelectKey = this._onSelectKey.bind(this), this._onEnterKey = this._onEnterKey.bind(this), this._onEscapeKey = this._onEscapeKey.bind(this), this._onDirectionKey = this._onDirectionKey.bind(this), this._onDeleteKey = this._onDeleteKey.bind(this), this.passedElement.isActive) return this.config.silent || console.warn("Trying to initialise Choices on element already initialised", { 1062 element: t 1063 }
1063), void (this.initialised = !0); 1064 this.init(); 1065 } 1066 1067 return Object.defineProperty(e, "defaults", { 1068 get: function () { 1069 return Object.preventExtensions({ 1070 get options() { 1071 return g; 1072 }, 1073 1074 get templates() { 1075 return u.default; 1076 } 1077 1078 }); 1079 }, 1080 enumerable: !0, 1081 configurable: !0 1082 }), e.prototype.init = function () { 1083 if (!this.initialised) { 1084 this._createTemplates(), this._createElements(), this._createStructure(), this._store.subscribe(this._render), this._render(), this._addEventListeners(), (!this.config.addItems || this.passedElement.element.hasAttribute("disabled")) && this.disable(), this.initialised = !0; 1085 var e = this.config.callbackOnInit; 1086 e && "function" == typeof e && e.call(this); 1087 } 1088 }, e.prototype.destroy = function () { 1089 this.initialised && (this._removeEventListeners(), this.passedElement.reveal(), this.containerOuter.unwrap(this.passedElement.element), this.clearStore(), this._isSelectElement && (this.passedElement.options = this._presetOptions), this._templates = u.default, this.initialised = !1); 1090 }, e.prototype.enable = function () { 1091 return this.passedElement.isDisabled && this.passedElement.enable(), this.containerOuter.isDisabled && (this._addEventListeners(), this.input.enable(), this.containerOuter.enable()), this; 1092 }, e.prototype.disable = function () { 1093 return this.passedElement.isDisabled || this.passedElement.disable(), this.containerOuter.isDisabled || (this._removeEventListeners(), this.input.disable(), this.containerOuter.disable()), this; 1094 }, e.prototype.highlightItem = function (e, t) { 1095 if (void 0 === t && (t = !0), !e || !e.id) return this; 1096 var i = e.id, 1097 n = e.groupId, 1098 r = void 0 === n ? -1 : n, 1099 o = e.value, 1100 s = void 0 === o ? "" : o, 1101 a = e.label, 1102 c = void 0 === a ? "" : a, 1103 u = r >= 0 ? this._store.getGroupById(r) : null; 1104 return this._store.dispatch(d.highlightItem(i, !0)), t && this.passedElement.triggerEvent(l.EVENTS.highlightItem, { 1105 id: i, 1106 value: s, 1107 label: c, 1108 groupValue: u && u.value ? u.value : null 1109 }), this; 1110 }, e.prototype.unhighlightItem = function (e) { 1111 if (!e || !e.id) return this; 1112 var t = e.id, 1113 i = e.groupId, 1114 n = void 0 === i ? -1 : i, 1115 r = e.value, 1116 o = void 0 === r ? "" : r, 1117 s = e.label, 1118 a = void 0 === s ? "" : s, 1119 c = n >= 0 ? this._store.getGroupById(n) : null; 1120 return this._store.dispatch(d.highlightItem(t, !1)), this.passedElement.triggerEvent(l.EVENTS.highlightItem, { 1121 id: t, 1122 value: o, 1123 label: a, 1124 groupValue: c && c.value ? c.value : null 1125 }), this; 1126 }, e.prototype.highlightAll = function () { 1127 var e = this; 1128 return this._store.items.forEach(function (t) { 1129 return e.highlightItem(t); 1130 }), this; 1131 }, e.prototype.unhighlightAll = function () { 1132 var e = this; 1133 return this._store.items.forEach(function (t) { 1134 return e.unhighlightItem(t); 1135 }), this; 1136 }, e.prototype.removeActiveItemsByValue = function (e) { 1137 var t = this; 1138 return this._store.activeItems.filter(function (t) { 1139 return t.value === e; 1140 }
1140).forEach(function (e) { 1141 return t._removeItem(e); 1142 }), this; 1143 }, e.prototype.removeActiveItems = function (e) { 1144 var t = this; 1145 return this._store.activeItems.filter(function (t) { 1146 return t.id !== e; 1147 }).forEach(function (e) { 1148 return t._removeItem(e); 1149 }), this; 1150 }, e.prototype.removeHighlightedItems = function (e) { 1151 var t = this; 1152 return void 0 === e && (e = !1), this._store.highlightedActiveItems.forEach(function (i) { 1153 t._removeItem(i), e && t._triggerChange(i.value); 1154 }), this; 1155 }, e.prototype.showDropdown = function (e) { 1156 var t = this; 1157 return this.dropdown.isActive ? this : (requestAnimationFrame(function () { 1158 t.dropdown.show(), t.containerOuter.open(t.dropdown.distanceFromTopWindow), !e && t._canSearch && t.input.focus(), t.passedElement.triggerEvent(l.EVENTS.showDropdown, {}); 1159 }), this); 1160 }, e.prototype.hideDropdown = function (e) { 1161 var t = this; 1162 return this.dropdown.isActive ? (requestAnimationFrame(function () { 1163 t.dropdown.hide(), t.containerOuter.close(), !e && t._canSearch && (t.input.removeActiveDescendant(), t.input.blur()), t.passedElement.triggerEvent(l.EVENTS.hideDropdown, {}); 1164 }), this) : this; 1165 }, e.prototype.getValue = function (e) { 1166 void 0 === e && (e = !1); 1167 1168 var t = this._store.activeItems.reduce(function (t, i) { 1169 var n = e ? i.value : i; 1170 return t.push(n), t; 1171 }, []); 1172 1173 return this._isSelectOneElement ? t[0] : t; 1174 }, e.prototype.setValue = function (e) { 1175 var t = this; 1176 return this.initialised ? (e.forEach(function (e) { 1177 return t._setChoiceOrItem(e); 1178 }), this) : this; 1179 }, e.prototype.setChoiceByValue = function (e) { 1180 var t = this; 1181 return !this.initialised || this._isTextElement ? this : ((Array.isArray(e) ? e : [e]).forEac
1181h(function (e) { 1182 return t._findAndSelectChoiceByValue(e); 1183 }), this); 1184 }, e.prototype.setChoices = function (e, t, i, n) { 1185 var r = this; 1186 if (void 0 === e && (e = []), void 0 === t && (t = "value"), void 0 === i && (i = "label"), void 0 === n && (n = !1), !this.initialised) throw new ReferenceError("setChoices was called on a non-initialized instance of Choices"); 1187 if (!this._isSelectElement) throw new TypeError("setChoices can't be used with INPUT based Choices"); 1188 if ("string" != typeof t || !t) throw new TypeError("value parameter must be a name of 'value' field in passed objects"); 1189 1190 if (n && this.clearChoices(), "function" == typeof e) { 1191 var o = e(this); 1192 if ("function" == typeof Promise && o instanceof Promise) return new Promise(function (e) { 1193 return requestAnimationFrame(e); 1194 }).then(function () { 1195 return r._handleLoadingState(!0); 1196 }).then(function () { 1197 return o; 1198 }).then(function (e) { 1199 return r.setChoices(e, t, i, n); 1200 }).catch(function (e) { 1201 r.config.silent || console.error(e); 1202 }).then(function () { 1203 return r._handleLoadingState(!1); 1204 }).then(function () { 1205 return r; 1206 }); 1207 if (!Array.isArray(o)) throw new TypeError(".setChoices first argument function must return either array of choices or Promise, got: " + typeof o); 1208 return this.setChoices(o, t, i, !1); 1209 } 1210 1211 if (!Array.isArray(e)) throw new TypeError(".setChoices must be called either with array of choices with a function resulting into Promise of array of choices"); 1212 return this.containerOuter.removeLoadingState(), this._startLoading(), e.forEach(function (e) { 1213 if (e.choices) r._addGroup({ 1214 id: e.id ? parseInt("" + e.id, 10) : null, 1215 group: e, 1216 valueKey: t, 1217 labelKey: i 1218 });else { 1219 var n = e; 1220 1221 r._addChoice({ 1222 value: n[t], 1223 label: n[i], 1224 isSelected: !!n.selected, 1225 isDisabled: !!n.disabled, 1226 placeholder: !!n.placeholder, 1227 customProperties: n.customProperties 1228 }); 1229 } 1230 }), this._stopLoading(), this; 1231 }, e.prototype.clearChoices = function () { 1232 return this._store.dispatch(h.clearChoices()), this; 1233 }, e.prototype.clearStore = function () { 1234 return this._store.dispatch(f.clearAll()), this; 1235 }, e.prototype.clearInput = function () { 1236 var e = !this._isSelectOneElement; 1237 return this.input.clear(e), !this._isTextElement && this._canSearch && (this._isSearching = !1, this._store.dispatch(h.activateChoices(!0))), this; 1238 }, e.prototype._render = function () { 1239 if (!this._store.isLoading()) { 1240 this._currentState = this._store.state; 1241 var e = this._currentState.choices !== this._prevState.choices || this._currentState.groups !== this._prevState.groups || this._currentState.items !== this._prevState.items, 1242 t = this._isSelectElement, 1243 i = this._currentState.items !== this._prevState.items; 1244 e && (t && this._renderChoices(), i && this._renderItems(), this._prevState = this._currentState); 1245 } 1246 }, e.prototype._renderChoices = function () { 1247 var e = this, 1248 t = this._store, 1249 i = t.activeGroups, 1250 n = t.activeChoices, 1251 r = document.createDocumentFragment(); 1252 1253 if (this.choiceList.clear(), this.config.resetScrollPosition && requestAnimationFrame(function () { 1254 return e.choiceList.scrollToTop(); 1255 }), i.length >= 1 && !this._isSearching) { 1256 var o = n.filter(function (e) { 1257 return !0 === e.placeholder && -1 === e.groupId; 1258 }); 1259 o.length >= 1 && (r = this._createChoicesFragment(o, r)), r = this._createGroupsFragment(i, n, r); 1260 } else n.length >= 1 && (r = this._createChoicesFragment(n, r)); 1261 1262 if (r.childNodes && r.childNodes.length > 0) { 1263 var s = this._store.activeItems, 1264 a = this._canAddItem(s, this.input.value); 1265 1266 if (a.response) this.choiceList.append(r), this._highlightChoice();else { 1267 var c = this._getTemplate("notice", a.notice); 1268 1269 this.choiceList.append(c); 1270 } 1271 } else { 1272 var l = void 0; 1273 c = void 0; 1274 this._isSearching ? (c = "function" == typeof this.config.noResultsText ? this.config.noResultsText() : this.config.noResultsText, l = this._getTemplate("notice", c, "no-results")) : (c = "function" == typeof this.config.noChoicesText ? this.config.noChoicesText() : this.config.noChoicesText, l = this._getTemplate("notice", c, "no-choices")), this.choiceList.append(l); 1275 } 1276 }, e.prototype._renderItems = function () { 1277 var e = this._store.activeItems || []; 1278 this.itemList.clear(); 1279 1280 var t = this._createItemsFragment(e); 1281 1282 t.childNodes && this.itemList.append(t); 1283 }, e.prototype._createGroupsFragment = function (e, t, i) { 1284 var n = this; 1285 void 0 === i && (i = document.createDocumentFragment()); 1286 return this.config.shouldSort && e.sort(this.config.sorter), e.forEach(function (e) { 1287 var r = function (e) { 1288 return t.filter(function (t) { 1289 return n._isSelectOneElement ? t.groupId === e.id : t.groupId === e.id && ("always" === n.config.render
1289SelectedChoices || !t.selected); 1290 }); 1291 }(e); 1292 1293 if (r.length >= 1) { 1294 var o = n._getTemplate("choiceGroup", e); 1295 1296 i.appendChild(o), n._createChoicesFragment(r, i, !0); 1297 } 1298 }), i; 1299 }, e.prototype._createChoicesFragment = function (e, t, i) { 1300 var r = this; 1301 void 0 === t && (t = document.createDocumentFragment()), void 0 === i && (i = !1); 1302 1303 var o = this.config, 1304 s = o.renderSelectedChoices, 1305 a = o.searchResultLimit, 1306 c = o.renderChoiceLimit, 1307 l = this._isSearching ? m.sortByScore : this.config.sorter, 1308 u = function (e) { 1309 if ("auto" !== s || r._isSelectOneElement || !e.selected) { 1310 var i = r._getTemplate("choice", e, r.config.itemSelectText); 1311 1312 t.appendChild(i); 1313 } 1314 }, 1315 h = e; 1316 1317 "auto" !== s || this._isSelectOneElement || (h = e.filter(function (e) { 1318 return !e.selected; 1319 })); 1320 var d = h.reduce(function (e, t) { 1321 return t.placeholder ? e.placeholderChoices.push(t) : e.normalChoices.push(t), e; 1322 }, { 1323 placeholderChoices: [], 1324 normalChoices: [] 1325 }), 1326 p = d.placeholderChoices, 1327 f = d.normalChoices; 1328 (this.config.shouldSort || this._isSearching) && f.sort(l); 1329 1330 var v = h.length, 1331 _ = this._isSelectOneElement ? n(p, f) : f; 1332 1333 this._isSearching ? v = a : c && c > 0 && !i && (v = c); 1334 1335 for (var g = 0; g < v; g += 1) _[g] && u(_[g]); 1336 1337 return t; 1338 }, e.prototype._createItemsFragment = function (e, t) { 1339 var i = this; 1340 void 0 === t && (t = document.createDocumentFragment()); 1341 var n = this.config, 1342 r = n.shouldSortItems, 1343 o = n.sorter, 1344 s = n.removeItemButton; 1345 r && !this._isSelectOneElement && e.sort(o), this._isTextElement ? this.passedElement.value = e.map(function (e) { 1346 return e.value; 1347 }).join(this.config.delimiter) : this.passedElement.options = e; 1348 return e.forEach(function (e) { 1349 var n = i._getTemplate("item", e, s); 1350 1351 t.appendChild(n); 1352 }), t; 1353 }, e.prototype._triggerChange = function (e) { 1354 null != e && this.passedElement.triggerEvent(l.EVENTS.change, { 1355 value: e 1356 }); 1357 }, e.prototype._selectPlaceholderChoice = function (e) { 1358 this._addItem({ 1359 value: e.value, 1360 label: e.label, 1361 choiceId: e.id, 1362 groupId: e.groupId, 1363 placeholder: e.placeholder 1364 }), this._triggerChange(e.value); 1365 }, e.prototype._handleButtonAction = function (e, t) { 1366 if (e && t && this.config.removeItems && this.config.removeItemButton) { 1367 var i = t.parentNode && t.parentNode.dataset.id, 1368 n = i && e.find(function (e) { 1369 return e.id === parseInt(i, 10); 1370 }); 1371 n && (this._removeItem(n), this._triggerChange(n.value), this._isSelectOneElement && this._store.placeholderChoice && this._selectPlaceholderChoice(this._store.placeholderChoice)); 1372 } 1373 }, e.prototype._handleItemAction = function (e, t, i) { 1374 var n = this; 1375 1376 if (void 0 === i && (i = !1), e && t && this.config.removeItems && !this._isSelectOneElement) { 1377 var r = t.dataset.id; 1378 e.forEach(function (e) { 1379 e.id !== parseInt("" + r, 10) || e.highlighted ? !i && e.highlighted && n.unhighlightItem(e) : n.highlightItem(e); 1380 }), this.input.focus(); 1381 } 1382 }, e.prototype._handleChoiceAction = function (e, t) { 1383 if (e && t) { 1384 var i = t.dataset.id, 1385 n = i && this._store.getChoiceById(i); 1386 1387 if (n) { 1388 var r = e[0] && e[0].keyCode ? e[0].keyCode : void 0, 1389 o = this.dropdown.isActive; 1390 if (n.keyCode = r, this.passedElement.triggerEvent(l.EVENTS.choice, { 1391 choice: n 1392 }), !n.selected && !n.disabled) this._canAddItem(e, n.value).response && (this._addItem({ 1393 value: n.value, 1394 label: n.label, 1395 choiceId: n.id, 1396 groupId: n.groupId, 1397 customProperties: n.customProperties, 1398 placeholder: n.placeholder, 1399 keyCode: n.keyCode 1400 }), this._triggerChange(n.value)); 1401 this.clearInput(), o && this._isSelectOneElement && (this.hideDropdown(!0), this.containerOuter.focus()); 1402 } 1403 } 1404 }, e.prototype._handleBackspace = function (e) { 1405 if (this.config.removeItems && e) { 1406 var t = e[e.length - 1], 1407 i = e.some(function (e) { 1408 return e.highlighted; 1409 }); 1410 this.config.editItems && !i && t ? (this.input.value = t.value, this.input.setWidth(), this._removeItem(t), this._triggerChange(t.value)) : (i || this.highlightItem(t, !1), this.removeHighlightedItems(!0)); 1411 } 1412 }, e.prototype._startLoading = function () { 1413 this._store.dispatch(f.setIsLoading(!0)); 1414 }, e.prototype._stopLoading = function () { 1415 this._store.dispatch(f.setIsLoading(!1)); 1416 }, e.prototype._handleLoadingState = function (e) { 1417 void 0 === e && (e = !0); 1418 var t = this.itemList.getChild("." + this.config.classNames.placeholder); 1419 e ? (this.disable(), this.containerOuter.addLoadingState(), this._isSelectOneElement ? t ? t.innerHTML = this.config.loadingText : (t = this._getTemplate("placeholder", this.config.loadingText)) && this.itemList.append(t) : this.input.placeholder = this.config.loadingText) : (this.enable(), this.containerOuter.removeLoadingState(), this._isSelectOneElement ? t && (t.innerHTML = this._placeholderValue || "") : this.input.placeholder = this._placeholderValue || ""); 1420 }, e.prototype._handleSearch = function (e) { 1421 if (e && this.input.isFocussed) { 1422 var t = this._store.choices, 1423 i = this.config, 1424 n = i.searchFloor, 1425 r = i.searchChoices, 1426 o = t.some(function (e) { 1427 return !e.active; 1428 }); 1429 1430 if (e && e.length >= n) { 1431 var s = r ? this._searchChoices(e) : 0; 1432 this.passedElement.triggerEvent(l.EVENTS.search, { 1433 value: e, 1434 resultCount: s 1435 }); 1436 } else o && (this._isSearching = !1, this._store.dispatch(h.activateChoices(!0))); 1437 } 1438 }, e.prototype._canAddItem = function (e, t) { 1439 var i = !0, 1440 n = "function" == typeof this.config.addItemText ? this.config.addItemText(t) : this.config.addItemText; 1441 1442 if (!this._isSelectOneElement) { 1443 var r = m.existsInArray(e, t); 1444 this.config.maxItemCount > 0 && this.config.maxItemCount <= e.length && (i = !1, n = "function" == typeof this.config.maxItemText ? this.config.maxItemText(this.config.maxItemCount) : this.config.maxItemText), !this.config.duplicateItemsAllowed && r && i && (i = !1, n = "function" == typeof this.config.uniqueItemText ? this.config.uniqueItemText(t) : this.config.uniqueItemText), this._isTextElement && this.config.addItems && i && "function" == typeof this.config.addItemFilter && !this.config.addItemFilter(t) && (i = !1, n = "function" == typeof this.config.customAddItemText ? this.config.customAddItemText(t) : this.config.customAddItemText); 1445 } 1446 1447 return { 1448 response: i, 1449 notice: n 1450 }; 1451 }, e.prototype._searchChoices = function (e) { 1452 var t = "string" == typeof e ? e.trim() : e, 1453 i = "string" == typeof this._currentValue ? this._currentValue.trim() : this._currentValue; 1454 if (t.length < 1 && t === i + " ") return 0; 1455 var r = this._store.searchableChoices, 1456 s = t, 1457 a = n(this.config.searchFields), 1458 c = Object.assign(this.config.fuseOptions, { 1459 keys: a, 1460 includeMatches: !0 1461 }), 1462 l = new o.default(r, c).search(s); 1463 return this._currentValue = t, this._highlightPosition = 0, this._isSearching = !0, this._store.dispatch(h.filterChoices(l)), l.length; 1464 }, e.prototype._addEventListeners = function () { 1465 var e = document.documentElement; 1466 e.addEventListener("touchend", this._onTouchEnd, !0), this.containerOuter.element.addEventListener("keydown", this._onKeyDown, !0), this.containerOuter.element.addEventListener("mousedown", this._onMouseDown, !0), e.addEventListener("click", this._onClick, { 1467 passive: !0 1468 }), e.addEventListener("touchmove", this._onTouchMove, { 1469 passive: !0 1470 }), this.dropdown.element.addEventListener("mouseover", this._onMouseOver, { 1471 passive: !0 1472 }), this._isSelectOneElement && (this.containerOuter.element.addEventListener("focus", this._onFocus, { 1473 passive: !0 1474 }), this.containerOuter.element.addEventListener("blur", this._onBlur, { 1475 passive: !0 1476 })), this.input.element.addEventListener("keyup", this._onKeyUp, { 1477 passive: !0 1478 }), this.input.element.addEventListener("focus", this._onFocus, { 1479 passive: !0 1480 }), this.input.element.addEventListener("blur", this._onBlur, { 1481 passive: !0 1482 }), this.input.element.form && this.input.element.form.addEventListener("reset", this._onFormReset, { 1483 passive: !0 1484 }), this.input.addEventListeners(); 1485 }, e.prototype._removeEventListeners = function () { 1486 var e = document.documentElement; 1487 e.removeEventListener("touchend", this._onTouchEnd, !0), this.containerOuter.element.removeEventListener("keydown", this._onKeyDown, !0), this.containerOuter.element.removeEventListener("mousedown", this._onMouseDown, !0), e.removeEventListener("click", this._onClick), e.removeEventListener("touchmove", this._onTouchMove), this.dropdown.element.removeEventListener("mouseover", this._onMouseOver), this._isSelectOneElement && (this.containerOuter.element.removeEventListener("focus", this._onFocus), this.containerOuter.element.removeEventListener("blur", this._onBlur)), this.input.element.removeEventListener("keyup", this._onKeyUp), this.input.element.removeEventListener("focus", this._onFocus), this.input.element.removeEventListener("blur", this._onBlur), this.input.element.form && this.input.element.form.removeEventListener("reset", this._onFormReset), this.input.removeEventListeners(); 1488 }, e.prototype._onKeyDown = function (e) { 1489 var t = e.keyCode, 1490 i = this._store.activeItems, 1491 n = this.input.isFocussed, 1492 r = this.dropdown.isActive, 1493 o = this.itemList.hasChildren(), 1494 s = String.fromCharCode(t), 1495 a = /[a-zA-Z0-9-_ ]/.test(s), 1496 c = l.KEY_CODES.BACK_KEY, 1497 u = l.KEY_CODES.DELETE_KEY, 1498 h = l.KEY_CODES.ENTER_KEY, 1499 d = l.KEY_CODES.A_KEY, 1500 p = l.KEY_CODES.ESC_KEY, 1501 f = l.KEY_CODES.UP_KEY, 1502 m = l.KEY_CODES.DOWN_KEY, 1503 v = l.KEY_CODES.PAGE_UP_KEY, 1504 _ = l.KEY_CODES.PAGE_DOWN_KEY; 1505 1506 switch (this._isTextElement || r || !a || (this.showDropdown(), this.input.isFocussed || (this.input.value += s.toLowerCase())), t) { 1507 case d: 1508 return this._onSelectKey(e, o); 1509 1510 case h: 1511 return this._onEnterKey(e, i, r); 1512 1513 case p: 1514 return this._onEscapeKey(r); 1515 1516 case f: 1517 case v: 1518 case m: 1519 case _: 1520 return this._onDirectionKey(e, r); 1521 1522 case u: 1523 case c: 1524 return this._onDeleteKey(e, i, n); 1525 } 1526 }, e.prototype._onKeyUp = function (e) { 1527 var t = e.target, 1528 i = e.keyCode, 1529 n = this.input.value, 1530 r = this._store.activeItems, 1531 o = this._canAddItem(r, n), 1532 s = l.KEY_CODES.BACK_KEY, 1533 a = l.KEY_CODES.DELETE_KEY; 1534 1535 if (this._isTextElement) { 1536 if (o.notice && n) { 1537 var c = this._getTemplate("notice", o.notice); 1538 1539 this.dropdown.element.innerHTML = c.outerHTML, this.showDropdown(!0); 1540 } else this.hideDropdown(!0); 1541 } else { 1542 var u = (i === s || i === a) && t && !t.value, 1543 d = !this._isTextElement && this._isSearching, 1544 p = this._canSearch && o.response; 1545 u && d ? (this._isSearching = !1, this._store.dispatch(h.activateChoices(!0))) : p && this._handleSearch(this.input.value); 1546 } 1547 1548 this._canSearch = this.config.searchEnabled; 1549 }, e.prototype._onSelectKey = function (e, t) { 1550 var i = e.ctrlKey, 1551 n = e.metaKey; 1552 (i || n) && t && (this._canSearch = !1, this.config.removeItems && !this.input.value && this.input.element === document.activeElement && this.highlightAll()); 1553 }, e.prototype._onEnterKey = function (e, t, i) { 1554 var n = e.target, 1555 r = l.KEY_CODES.ENTER_KEY, 1556 o = n && n.hasAttribute("data-button"); 1557 1558 if (this._isTextElement && n && n.value) { 1559 var s = this.input.value; 1560 this._canAddItem(t, s).response && (this.hideDropdown(!0), this._addItem({ 1561 value: s 1562 }), this._triggerChange(s), this.clearInput()); 1563 } 1564 1565 if (o && (this._handleButtonAction(t, n), e.preventDefault()), i) { 1566 var a = this.dropdown.getChild("." + this.config.classNames.highlightedState); 1567 a && (t[0] && (t[0].keyCode = r), this._handleChoiceAction(t, a)), e.preventDefault(); 1568 } else this._isSelectOneElement && (this.showDropdown(), e.preventDefault()); 1569 }, e.prototype._onEscapeKey = function (e) { 1570 e && (this.hideDropdown(!0), this.containerOuter.focus()); 1571 }, e.prototype._onDirectionKey = function (e, t) { 1572 var i = e.keyCode, 1573 n = e.metaKey, 1574 r = l.KEY_CODES.DOWN_KEY, 1575 o = l.KEY_CODES.PAGE_UP_KEY, 1576 s = l.KEY_CODES.PAGE_DOWN_KEY; 1577 1578 if (t || this._isSelectOneElement) { 1579 this.showDropdown(), this._canSearch = !1; 1580 var a = i === r || i === s ? 1 : -1, 1581 c = void 0; 1582 if (n || i === s || i === o) c = a > 0 ? this.dropdown.element.querySelector("[data-choice-selectable]:last-of-type") : this.dropdown.element.querySelector("[data-choice-selectable]");else { 1583 var u = this.dropdown.element.querySelector("." + this.config.classNames.highlightedState); 1584 c = u ? m.getAdjacentEl(u, "[data-choice-selectable]", a) : this.dropdown.element.querySelector("[data-choice-selectable]"); 1585 } 1586 c && (m.isScrolledIntoView(c, this.choiceList.element, a) || this.choiceList.scrollToChildElement(c, a), this._highlightChoice(c)), e.preventDefault(); 1587 } 1588 }, e.prototype._onDeleteKey = function (e, t, i) { 1589 var n = e.target; 1590 this._isSelectOneElement || n.value || !i || (this._handleBackspace(t), e.preventDefault()); 1591 }, e.prototype._onTouchMove = function () { 1592 this._wasTap && (this._wasTap = !1); 1593 }, e.prototype._onTouchEnd = function (e) { 1594 var t = (e || e.touches[0]).target; 1595 this._wasTap && this.containerOuter.element.contains(t) && ((t === this.containerOuter.element || t === this.containerInner.element) && (this._isTextElement ? this.input.focus() : this._isSelectMultipleElement && this.showDropdown()), e.stopPropagation()); 1596 this._wasTap = !0; 1597 }, e.prototype._onMouseDown = function (e) { 1598 var t = e.target; 1599 1600 if (t instanceof HTMLElement) { 1601 if (_ && this.choiceList.element.contains(t)) { 1602 var i = this.choiceList.element.firstElementChild, 1603 n = "ltr" === this._direction ? e.offsetX >= i.offsetWidth : e.offsetX < i.offsetLeft; 1604 this._isScrollingOnIe = n; 1605 } 1606 1607 if (t !== this.input.element) { 1608 var r = t.closest("[data-button],[data-item],[data-choice]"); 1609 1610 if (r instanceof HTMLElement) { 1611 var o = e.shiftKey, 1612 s = this._store.activeItems, 1613 a = r.dataset; 1614 "button" in a ? this._handleButtonAction(s, r) : "item" in a ? this._handleItemAction(s, r, o) : "choice" in a && this._handleChoiceAction(s, r); 1615 } 1616 1617 e.preventDefault(); 1618 } 1619 } 1620 }, e.prototype._onMouseOver = function (e) { 1621 var t = e.target; 1622 t instanceof HTMLElement && "choice" in t.dataset && this._highlightChoice(t); 1623 }, e.prototype._onClick = function (e) { 1624 var t = e.target; 1625 this.containerOuter.element.contains(t) ? this.dropdown.isActive || this.containerOuter.isDisabled ? this._isSelectOneElement && t !== this.input.element && !this.dropdown.element.contains(t) && this.hideDropdown() : this._isTextElement ? document.activeElement !== this.input.element && this.input.focus() : (this.showDropdown(), this.containerOuter.focus()) : (this._store.hig
1625hlightedActiveItems.length > 0 && this.unhighlightAll(), this.containerOuter.removeFocusState(), this.hideDropdown(!0)); 1626 }, e.prototype._onFocus = function (e) { 1627 var t, 1628 i = this, 1629 n = e.target; 1630 n && this.containerOuter.element.contains(n) && ((t = {})[l.TEXT_TYPE] = function () { 1631 n === i.input.element && i.containerOuter.addFocusState(); 1632 }, t[l.SELECT_ONE_TYPE] = function () { 1633 i.containerOuter.addFocusState(), n === i.input.element && i.showDropdown(!0); 1634 }, t[l.SELECT_MULTIPLE_TYPE] = function () { 1635 n === i.input.element && (i.showDropdown(!0), i.containerOuter.addFocusState()); 1636 }, t)[this.passedElement.element.type](); 1637 }, e.prototype._onBlur = function (e) { 1638 var t, 1639 i = this, 1640 n = e.target; 1641 1642 if (n && this.containerOuter.element.contains(n) && !this._isScrollingOnIe) { 1643 var r = this._store.activeItems.some(function (e) { 1644 return e.highlighted; 1645 }); 1646 1647 ((t = {})[l.TEXT_TYPE] = function () { 1648 n === i.input.element && (i.containerOuter.removeFocusState(), r && i.unhighlightAll(), i.hideDropdown(!0)); 1649 }, t[l.SELECT_ONE_TYPE] = function () { 1650 i.containerOuter.removeFocusState(), (n === i.input.element || n === i.containerOuter.element && !i._canSearch) && i.hideDropdown(!0); 1651 }, t[l.SELECT_MULTIPLE_TYPE] = function () { 1652 n === i.input.element && (i.containerOuter.removeFocusState(), i.hideDropdown(!0), r && i.unhighlightAll()); 1653 }, t)[this.passedElement.element.type](); 1654 } else this._isScrollingOnIe = !1, this.input.element.focus(); 1655 }, e.prototype._onFormReset = function () { 1656 this._store.dispatch(f.resetTo(this._initialState)); 1657 }, e.prototype._highlightChoice = function (e) { 1658 var t = this; 1659 void 0 === e && (e = null); 1660 var i = Array.from(this.dropdown.element.querySelectorAll("[data-choice-selectable]")); 1661 1662 if (i.length) { 1663 var n = e; 1664 Array.from(this.dropdown.element.querySelectorAll("." + this.config.classNames.highlightedState)).forEach(function (e) { 1665 e.classList.remove(t.config.classNames.highlightedState), e.setAttribute("aria-selected", "false"); 1666 }), n ? this._highlightPosition = i.indexOf(n) : (n = i.length > this._highlightPosition ? i[this._highlightPosition] : i[i.length - 1]) || (n = i[0]), n.classList.add(this.config.classNames.highlightedState), n.setAttribute("aria-selected", "true"), this.passedElement.triggerEvent(l.EVENTS.highlightChoice, { 1667 el: n 1668 }), this.dropdown.isActive && (this.input.setActiveDescendant(n.id), this.containerOuter.setActiveDescendant(n.id)); 1669 } 1670 }, e.prototype._addItem = function (e) { 1671 var t = e.value, 1672 i = e.label, 1673 n = void 0 === i ? null : i, 1674 r = e.choiceId, 1675 o = void 0 === r ? -1 : r, 1676 s = e.groupId, 1677 a = void 0 === s ? -1 : s, 1678 c = e.customProperties, 1679 u = void 0 === c ? {} : c, 1680 h = e.placeholder, 1681 p = void 0 !== h && h, 1682 f = e.keyCode, 1683 m = void 0 === f ? -1 : f, 1684 v = "string" == typeof t ? t.trim() : t, 1685 _ = this._store.items, 1686 g = n || v, 1687 y = o || -1, 1688 b = a >= 0 ? this._store.getGroupById(a) : null, 1689 E = _ ? _.length + 1 : 1; 1690 this.config.prependValue && (v = this.config.prependValue + v.toString()), this.config.appendValue && (v += this.config.appendValue.toString()), this._store.dispatch(d.addItem({ 1691 value: v, 1692 label: g, 1693 id: E, 1694 choiceId: y, 1695 groupId: a, 1696 customProperties: u, 1697 placeholder: p, 1698 keyCode: m 1699 })), this._isSelectOneElement && this.removeActiveItems(E), this.passedElement.triggerEvent(l.EVENTS.addItem, { 1700 id: E, 1701 value: v, 1702 label: g, 1703 customProperties: u, 1704 groupValue: b && b.value ? b.value : null, 1705 keyCode: m 1706 }); 1707 }, e.prototype._removeItem = function (e) { 1708 var t = e.id, 1709 i = e.value, 1710 n = e.label, 1711 r = e.customProperties, 1712 o = e.choiceId, 1713 s = e.groupId, 1714 a = s && s >= 0 ? this._store.getGroupById(s) : null; 1715 t && o && (this._store.dispatch(d.removeItem(t, o)), this.passedElement.triggerEvent(l.EVENTS.removeItem, { 1716 id: t, 1717 value: i, 1718 label: n, 1719 customProperties: r, 1720 groupValue: a && a.value ? a.value : null 1721 })); 1722 }, e.prototype._addChoice = function (e) { 1723 var t = e.value, 1724 i = e.label, 1725 n = void 0 === i ? null : i, 1726 r = e.isSelected, 1727 o = void 0 !== r && r, 1728 s = e.isDisabled, 1729 a = void 0 !== s && s, 1730 c = e.groupId, 1731 l = void 0 === c ? -1 : c, 1732 u = e.customProperties, 1733 d = void 0 === u ? {} : u, 1734 p = e.placeholder, 1735 f = void 0 !== p && p, 1736 m = e.keyCode, 1737 v = void 0 === m ? -1 : m; 1738 1739 if (null != t) { 1740 var _ = this._store.choices, 1741 g = n || t, 1742 y = _ ? _.length + 1 : 1, 1743 b = this._baseId + "-" + this._idNames.itemChoice + "-" + y; 1744 this._store.dispatch(h.addChoice({ 1745 id: y, 1746 groupId: l, 1747 elementId: b, 1748 value: t, 1749 label: g, 1750 disabled: a, 1751 customProperties: d, 1752 placeholder: f, 1753 keyCode: v 1754 })), o && this._addItem({ 1755 value: t, 1756 label: g, 1757 choiceId: y, 1758 customProperties: d, 1759 placeholder: f, 1760 keyCode: v 1761 }); 1762 } 1763 }, e.prototype._addGroup = function (e) { 1764 var t = this, 1765 i = e.group, 1766 n = e.id, 1767 r = e.valueKey, 1768 o = void 0 === r ? "value" : r, 1769 s = e.labelKey, 1770 a = void 0 === s ? "label" : s, 1771 c = m.isType("Object", i) ? i.choices : Array.from(i.getElementsByTagName("OPTION")), 1772 l = n || Math.floor(new Date().valueOf() * Math.random()), 1773 u = !!i.disabled && i.disabled; 1774 1775 if (c) { 1776 this._store.dispatch(p.addGroup({ 1777 value: i.label, 1778 id: l, 1779 active: !0, 1780 disabled: u 1781 })); 1782
1783 c.forEach(function (e) { 1784 var i = e.disabled || e.parentNode && e.parentNode.disabled; 1785 1786 t._addChoice({ 1787 value: e[o], 1788 label: m.isType("Object", e) ? e[a] : e.innerHTML, 1789 isSelected: e.selected, 1790 isDisabled: i, 1791 groupId: l, 1792 customProperties: e.customProperties, 1793 placeholder: e.placeholder 1794 }); 1795 }); 1796 } else this._store.dispatch(p.addGroup({ 1797 value: i.label, 1798 id: i.id, 1799 active: !1, 1800 disabled: i.disabled 1801 })); 1802 }, e.prototype._getTemplate = function (e) { 1803 for (var t, i = [], r = 1; r < arguments.length; r++) i[r - 1] = arguments[r]; 1804 1805 var o = this.config.classNames; 1806 return (t = this._templates[e]).call.apply(t, n([this, o], i)); 1807 }, e.prototype._createTemplates = function () { 1808 var e = this.config.callbackOnCreateTemplates, 1809 t = {}; 1810 e && "function" == typeof e && (t = e.call(this, m.strToEl)), this._templates = s.default(u.default, t); 1811 }, e.prototype._createElements = function () { 1812 this.containerOuter = new c.Container({ 1813 element: this._getTemplate("containerOuter", this._direction, this._isSelectElement, this._isSelectOneElement, this.config.searchEnabled, this.passedElement.element.type), 1814 classNames: this.config.classNames, 1815 type: this.passedElement.element.type, 1816 position: this.config.position 1817 }), this.containerInner = new c.Container({ 1818 element: this._getTemplate("containerInner"), 1819 classNames: this.config.classNames, 1820 type: this.passedElement.element.type, 1821 position: this.config.position 1822 }), this.input = new c.Input({ 1823 element: this._getTemplate("input", this._placeholderValue), 1824 classNames: this.config.classNames, 1825 type: this.passedElement.element.type, 1826 preventPaste: !this.config.paste 1827 }), this.choiceList = new c.List({ 1828 element: this._getTemplate("choiceList", this._isSelectOneElement) 1829 }), this.itemList = new c.List({ 1830 element: this._getTemplate("itemList", this._isSelectOneElement) 1831 }), this.dropdown = new c.Dropdown({ 1832 element: this._getTemplate("dropdown"), 1833 classNames: this.config.classNames, 1834 type: this.passedElement.element.type 1835 }); 1836 }, e.prototype._createStructure = function () { 1837 this.passedElement.conceal(), this.containerInner.wrap(this.passedElement.element), this.containerOuter.wrap(this.containerInner.element), this._isSelectOneElement ? this.input.placeholder = this.config.searchPlaceholderValue || "" : this._placeholderValue && (this.input.placeholder = this._placeholderValue, this.input.setWidth()), this.containerOuter.element.appendChild(this.containerInner.element), this.containerOuter.element.appendChild(this.dropdown.element), this.containerInner.element.appendChild(this.itemList.element), this._isTextElement || this.dropdown.element.appendChild(this.choiceList.element), this._isSelectOneElement ? this.config.searchEnabled && this.dropdown.element.insertBefore(this.input.element, this.dropdown.element.firstChild) : this.containerInner.element.appendChild(this.input.element), this._isSelectElement && (this._highlightPosition = 0, this._isSearching = !1, this._startLoading(), this._presetGroups.length ? this._addPredefinedGroups(this._presetGroups) : this._addPredefinedChoices(this._presetChoices), this._stopLoading()), this._isTextElement && this._addPredefinedItems(this._presetItems); 1838 }, e.prototype._addPredefinedGroups = function (e) { 1839 var t = this, 1840 i = this.passedElement.placeholderOption; 1841 i && i.parentNode && "SELECT" === i.parentNode.tagName && this._addChoice({ 1842 value: i.value, 1843 label: i.innerHTML, 1844 isSelected: i.selected, 1845 isDisabled: i.disabled, 1846 placeholder: !0 1847 }), e.forEach(function (e) { 1848 return t._addGroup({ 1849 group: e, 1850 id: e.id || null 1851 }); 1852 }); 1853 }, e.prototype._addPredefinedChoices = function (e) { 1854 var t = this; 1855 this.config.shouldSort && e.sort(this.config.sorter); 1856 var i = e.some(function (e) { 1857 return e.selected; 1858 }), 1859 n = e.findIndex(function (e) { 1860 return void 0 === e.disabled || !e.disabled; 1861 }); 1862 e.forEach(function (e, r) { 1863 var o = e.value, 1864 s = void 0 === o ? "" : o, 1865 a = e.label, 1866 c = e.customProperties, 1867 l = e.placeholder; 1868 if (t._isSelectElement) { 1869 if (e.choices) t._addGroup({ 1870 group: e, 1871 id: e.id || null 1872 });else { 1873 var u = !!(t._isSelectOneElement && !i && r === n) || e.selected, 1874 h = e.disabled; 1875 t._addChoice({ 1876 value: s, 1877 label: a, 1878 isSelected: !!u, 1879 isDisabled: !!h, 1880 placeholder: !!l, 1881 customProperties: c 1882 }); 1883 } 1884 } else t._addChoice({ 1885 value: s, 1886 label: a, 1887 isSelected: !!e.selected, 1888 isDisabled: !!e.disabled, 1889 placeholder: !!e.placeholder, 1890 customProperties: c 1891 }); 1892 }); 1893 }, e.prototype._addPredefinedItems = function (e) { 1894 var t = this; 1895 e.forEach(function (e) { 1896 "object" == typeof e && e.value && t._addItem({ 1897 value: e.value, 1898 label: e.label, 1899 choiceId: e.id, 1900 customProperties: e.customProperties, 1901 placeholder: e.placeholder 1902 }), "string" == typeof e && t._addItem({ 1903 value: e 1904 }); 1905 }); 1906 }, e.prototype._setChoiceOrItem = function (e) { 1907 var t = this; 1908 ({ 1909 object: function () { 1910 e.value && (t._isTextElement ? t._addItem({ 1911 value: e.value, 1912 label: e.label, 1913 choiceId: e.id, 1914 customProperties: e.customProperties, 1915 placeholder: e.placeholder 1916 }) : t._addChoice({ 1917 value: e.value, 1918 label: e.label, 1919 isSelected: !0, 1920 isDisabled: !1, 1921 customProperties: e.customProperties, 1922 placeholder: e.placeholder 1923 })); 1924 },
1925 string: function () { 1926 t._isTextElement ? t._addItem({ 1927 value: e 1928 }) : t._addChoice({ 1929 value: e, 1930 label: e, 1931 isSelected: !0, 1932 isDisabled: !1 1933 }); 1934 } 1935 })[m.getType(e).toLowerCase()](); 1936 }, e.prototype._findAndSelectChoiceByValue = function (e) { 1937 var t = this, 1938 i = this._store.choices.find(function (i) { 1939 return t.config.valueComparer(i.value, e); 1940 }); 1941 1942 i && !i.selected && this._addItem({ 1943 value: i.value, 1944 label: i.label, 1945 choiceId: i.id, 1946 groupId: i.groupId, 1947 customProperties: i.customProperties, 1948 placeholder: i.placeholder, 1949 keyCode: i.keyCode 1950 }); 1951 }, e.prototype._generatePlaceholderValue = function () { 1952 if (this._isSelectElement) { 1953 var e = this.passedElement.placeholderOption; 1954 return e ? e.text : null; 1955 } 1956 1957 var t = this.config, 1958 i = t.placeholder, 1959 n = t.placeholderValue, 1960 r = this.passedElement.element.dataset; 1961 1962 if (i) { 1963 if (n) return n; 1964 if (r.placeholder) return r.placeholder; 1965 } 1966 1967 return null; 1968 }, e; 1969 }(); 1970 1971 t.default = y; 1972}, function (e, t, i) { 1973 /*! 1974 * Fuse.js v3.4.6 - Lightweight fuzzy-search (http://fusejs.io) 1975 * 1976 * Copyright (c) 2012-2017 Kirollos Risk (http://kiro.me) 1977 * All Rights Reserved. Apache Software License 2.0 1978 * 1979 * http://www.apache.org/licenses/LICENSE-2.0 1980 */ 1981 e.exports = function (e) { 1982 var t = {}; 1983 1984 function i(n) { 1985 if (t[n]) return t[n].exports; 1986 var r = t[n] = { 1987 i: n, 1988 l: !1, 1989 exports: {} 1990 }; 1991 return e[n].call(r.exports, r, r.exports, i), r.l = !0, r.exports; 1992 } 1993 1994 return i.m = e, i.c = t, i.d = function (e, t, n) { 1995 i.o(e, t) || Object.defineProperty(e, t, { 1996 enumerable: !0, 1997 get: n 1998 }); 1999 }, i.r = function (e) { 2000 "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { 2001 value: "Module" 2002 }), Object.defineProperty(e, "__esModule", { 2003 value: !0 2004 }); 2005 }, i.t = function (e, t) { 2006 if (1 & t && (e = i(e)), 8 & t) return e; 2007 if (4 & t && "object" == typeof e && e && e.__esModule) return e; 2008 var n = Object.create(null); 2009 if (i.r(n), Object.defineProperty(n, "default", { 2010 enumerable: !0, 2011 value: e 2012 }), 2 & t && "string" != typeof e) for (var r in e) i.d(n, r, function (t) { 2013 return e[t]; 2014 }.bind(null, r)); 2015 return n; 2016 }, i.n = function (e) { 2017 var t = e && e.__esModule ? function () { 2018 return e.default; 2019 } : function () { 2020 return e; 2021 }; 2022 return i.d(t, "a", t), t; 2023 }, i.o = function (e, t) { 2024 return Object.prototype.hasOwnProperty.call(e, t); 2025 }, i.p = "", i(i.s = 1); 2026 }([function (e, t) { 2027 e.exports = function (e) { 2028 return Array.isArray ? Array.isArray(e) : "[object Array]" === Object.prototype.toString.call(e); 2029 }; 2030 }, function (e, t, i) { 2031 function n(e) { 2032 return (n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) { 2033 return typeof e; 2034 } : function (e) { 2035 return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e; 2036 })(e); 2037 } 2038 2039 function r(e, t) { 2040 for (var i = 0; i < t.length; i++) { 2041 var n = t[i]; 2042 n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n); 2043 } 2044 } 2045 2046 var o = i(2), 2047 s = i(8), 2048 a = i(0), 2049 c = function () { 2050 function e(t, i) { 2051 var n = i.location, 2052 r = void 0 === n ? 0 : n, 2053 o = i.distance, 2054 a = void 0 === o ? 100 : o, 2055 c = i.threshold, 2056 l = void 0 === c ? .6 : c, 2057 u = i.maxPatternLength, 2058 h = void 0 === u ? 32 : u, 2059 d = i.caseSensitive, 2060 p = void 0 !== d && d, 2061 f = i.tokenSeparator, 2062 m = void 0 === f ? / +/g : f, 2063 v = i.findAllMatches, 2064 _ = void 0 !== v && v, 2065 g = i.minMatchCharLength, 2066 y = void 0 === g ? 1 : g, 2067 b = i.id, 2068 E = void 0 === b ? null : b, 2069 S = i.keys, 2070 I = void 0 === S ? [] : S, 2071 O = i.shouldSort, 2072 C = void 0 === O || O, 2073 T = i.getFn, 2074 w = void 0 === T ? s : T, 2075 A = i.sortFn, 2076 L = void 0 === A ? function (e, t) { 2077 return e.score - t.score; 2078 } : A, 2079 P = i.tokenize, 2080 D = void 0 !== P && P, 2081 x = i.matchAllTokens, 2082 N = void 0 !== x && x, 2083 M = i.includeMatches, 2084 j = void 0 !== M && M, 2085 k = i.includeScore, 2086 F = void 0 !== k && k, 2087 K = i.verbose, 2088 R = void 0 !== K && K; 2089 2090 !function (e, t) { 2091 if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function"); 2092 }(this, e), this.options = { 2093 location: r, 2094 distance: a, 2095 threshold: l, 2096 maxPatternLength: h, 2097 isCaseSensitive: p, 2098 tokenSeparator: m, 2099 findAllMatches: _, 2100 minMatchCharLength: y, 2101 id: E, 2102 keys: I, 2103 includeMatches: j, 2104 includeScore: F, 2105 shouldSort: C, 2106 getFn: w, 2107 sortFn: L,
vendor: 8,110 bytes, lines 2108-2358
2108 verbose: R, 2109 tokenize: D, 2110 matchAllTokens: N 2111 }, this.setCollection(t); 2112 } 2113 2114 var t, i; 2115 return t = e, (i = [{ 2116 key: "setCollection", 2117 value: function (e) { 2118 return this.list = e, e; 2119 } 2120 }, { 2121 key: "search", 2122 value: function (e) { 2123 var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : { 2124 limit: !1 2125 }; 2126 2127 this._log('---------\nSearch pattern: "'.concat(e, '"')); 2128 2129 var i = this._prepareSearchers(e), 2130 n = i.tokenSearchers, 2131 r = i.fullSearcher, 2132 o = this._search(n, r), 2133 s = o.weights, 2134 a = o.results; 2135 2136 return this._computeScore(s, a), this.options.shouldSort && this._sort(a), t.limit && "number" == typeof t.limit && (a = a.slice(0, t.limit)), this._format(a); 2137 } 2138 }, { 2139 key: "_prepareSearchers", 2140 value: function () { 2141 var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "", 2142 t = []; 2143 if (this.options.tokenize) for (var i = e.split(this.options.tokenSeparator), n = 0, r = i.length; n < r; n += 1) t.push(new o(i[n], this.options)); 2144 return { 2145 tokenSearchers: t, 2146 fullSearcher: new o(e, this.options) 2147 }; 2148 } 2149 }, { 2150 key: "_search", 2151 value: function () { 2152 var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [], 2153 t = arguments.length > 1 ? arguments[1] : void 0, 2154 i = this.list, 2155 n = {}, 2156 r = []; 2157 2158 if ("string" == typeof i[0]) { 2159 for (var o = 0, s = i.length; o < s; o += 1) this._analyze({ 2160 key: "", 2161 value: i[o], 2162 record: o, 2163 index: o 2164 }, { 2165 resultMap: n, 2166 results: r, 2167 tokenSearchers: e, 2168 fullSearcher: t 2169 }); 2170 2171 return { 2172 weights: null, 2173 results: r 2174 }; 2175 } 2176 2177 for (var a = {}, c = 0, l = i.length; c < l; c += 1) for (var u = i[c], h = 0, d = this.options.keys.length; h < d; h += 1) { 2178 var p = this.options.keys[h]; 2179 2180 if ("string" != typeof p) { 2181 if (a[p.name] = { 2182 weight: 1 - p.weight || 1 2183 }, p.weight <= 0 || p.weight > 1) throw new Error("Key weight has to be > 0 and <= 1"); 2184 p = p.name; 2185 } else a[p] = { 2186 weight: 1 2187 }; 2188 2189 this._analyze({ 2190 key: p, 2191 value: this.options.getFn(u, p), 2192 record: u, 2193 index: c 2194 }, { 2195 resultMap: n, 2196 results: r, 2197 tokenSearchers: e, 2198 fullSearcher: t 2199 }); 2200 } 2201 2202 return { 2203 weights: a, 2204 results: r 2205 }; 2206 } 2207 }, { 2208 key: "_analyze", 2209 value: function (e, t) { 2210 var i = e.key, 2211 n = e.arrayIndex, 2212 r = void 0 === n ? -1 : n, 2213 o = e.value, 2214 s = e.record, 2215 c = e.index, 2216 l = t.tokenSearchers, 2217 u = void 0 === l ? [] : l, 2218 h = t.fullSearcher, 2219 d = void 0 === h ? [] : h, 2220 p = t.resultMap, 2221 f = void 0 === p ? {} : p, 2222 m = t.results, 2223 v = void 0 === m ? [] : m; 2224 2225 if (null != o) { 2226 var _ = !1, 2227 g = -1, 2228 y = 0; 2229 2230 if ("string" == typeof o) { 2231 this._log("\nKey: ".concat("" === i ? "-" : i)); 2232 2233 var b = d.search(o); 2234 2235 if (this._log('Full text: "'.concat(o, '", score: ').concat(b.score)), this.options.tokenize) { 2236 for (var E = o.split(this.options.tokenSeparator), S = [], I = 0; I < u.length; I += 1) { 2237 var O = u[I]; 2238 2239 this._log('\nPattern: "'.concat(O.pattern, '"')); 2240 2241 for (var C = !1, T = 0; T < E.length; T += 1) { 2242 var w = E[T], 2243 A = O.search(w), 2244 L = {}; 2245 A.isMatch ? (L[w] = A.score, _ = !0, C = !0, S.push(A.score)) : (L[w] = 1, this.options.matchAllTokens || S.push(1)), this._log('Token: "'.concat(w, '", score: ').concat(L[w])); 2246 } 2247 2248 C && (y += 1); 2249 } 2250 2251 g = S[0]; 2252 2253 for (var P = S.length, D = 1; D < P; D += 1) g += S[D]; 2254 2255 g /= P, this._log("Token score average:", g); 2256 } 2257 2258 var x = b.score; 2259 g > -1 && (x = (x + g) / 2), this._log("Score average:", x); 2260 var N = !this.options.tokenize || !this.options.matchAllTokens || y >= u.length; 2261 2262 if (this._log("\nCheck Matches: ".concat(N)), (_ || b.isMatch) && N) { 2263 var M = f[c]; 2264 M ? M.output.push({ 2265 key: i, 2266 arrayIndex: r, 2267 value: o, 2268 score: x, 2269 matchedIndices: b.matchedIndices 2270 }) : (f[c] = { 2271 item: s, 2272 output: [{ 2273 key: i, 2274 arrayIndex: r, 2275 value: o, 2276 score: x, 2277 matchedIndices: b.matchedIndices 2278 }] 2279 }, v.push(f[c])); 2280 } 2281 } else if (a(o)) for (var j = 0, k = o.length; j < k; j += 1) this._analyze({ 2282 key: i, 2283 arrayIndex: j, 2284 value: o[j], 2285 record: s, 2286 index: c 2287 }, { 2288 resultMap: f, 2289 results: v, 2290 tokenSearchers: u, 2291 fullSearcher: d 2292 }); 2293 } 2294 } 2295 }, { 2296 key: "_computeScore", 2297 value: function (e, t) { 2298 this._log("\n\nComputing score:\n"); 2299 2300 for (var i = 0, n = t.length; i < n; i += 1) { 2301 for (var r = t[i].output, o = r.length, s = 1, a = 1, c = 0; c < o; c += 1) { 2302 var l = e ? e[r[c].key].weight : 1, 2303 u = (1 === l ? r[c].score : r[c].score || .001) * l; 2304 1 !== l ? a = Math.min(a, u) : (r[c].nScore = u, s *= u); 2305 } 2306 2307 t[i].score = 1 === a ? s : a, this._log(t[i]); 2308 } 2309 } 2310 }, { 2311 key: "_sort", 2312 value: function (e) { 2313 this._log("\n\nSorting...."), e.sort(this.options.sortFn); 2314 } 2315 }, { 2316 key: "_format", 2317 value: function (e) { 2318 var t = []; 2319 2320 if (this.options.verbose) { 2321 var i = []; 2322 this._log("\n\nOutput:\n\n", JSON.stringify(e, function (e, t) { 2323 if ("object" === n(t) && null !== t) { 2324 if (-1 !== i.indexOf(t)) return; 2325 i.push(t); 2326 } 2327 2328 return t; 2329 })), i = null; 2330 } 2331 2332 var r = []; 2333 this.options.includeMatches && r.push(function (e, t) { 2334 var i = e.output; 2335 t.matches = []; 2336 2337 for (var n = 0, r = i.length; n < r; n += 1) { 2338 var o = i[n]; 2339 2340 if (0 !== o.matchedIndices.length) { 2341 var s = { 2342 indices: o.matchedIndices, 2343 value: o.value 2344 }; 2345 o.key && (s.key = o.key), o.hasOwnProperty("arrayIndex") && o.arrayIndex > -1 && (s.arrayIndex = o.arrayIndex), t.matches.push(s); 2346 } 2347 } 2348 }), this.options.includeScore && r.push(function (e, t) { 2349 t.score = e.score; 2350 }); 2351 2352 for (var o = 0, s = e.length; o < s; o += 1) { 2353 var a = e[o]; 2354 2355 if (this.options.id && (a.item = this.options.getFn(a.item, this.options.id)[0]), r.length) { 2356 for (var c = { 2357 item: a.item 2358 }, l = 0, u = r.length; l < u;
2358 l += 1) r[l](a, c); 2359 2360 t.push(c); 2361 } else t.push(a.item); 2362 } 2363 2364 return t; 2365 } 2366 }, { 2367 key: "_log", 2368 value: function () { 2369 var e; 2370 this.options.verbose && (e = console).log.apply(e, arguments); 2371 } 2372 }]) && r(t.prototype, i), e; 2373 }(); 2374 2375 e.exports = c; 2376 }, function (e, t, i) { 2377 function n(e, t) { 2378 for (var i = 0; i < t.length; i++) { 2379 var n = t[i]; 2380 n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n); 2381 } 2382 } 2383 2384 var r = i(3), 2385 o = i(4), 2386 s = i(7), 2387 a = function () { 2388 function e(t, i) { 2389 var n = i.location, 2390 r = void 0 === n ? 0 : n, 2391 o = i.distance, 2392 a = void 0 === o ? 100 : o, 2393 c = i.threshold, 2394 l = void 0 === c ? .6 : c, 2395 u = i.maxPatternLength, 2396 h = void 0 === u ? 32 : u, 2397 d = i.isCaseSensitive, 2398 p = void 0 !== d && d, 2399 f = i.tokenSeparator, 2400 m = void 0 === f ? / +/g : f, 2401 v = i.findAllMatches, 2402 _ = void 0 !== v && v, 2403 g = i.minMatchCharLength, 2404 y = void 0 === g ? 1 : g; 2405 2406 !function (e, t) { 2407 if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function"); 2408 }(this, e), this.options = { 2409 location: r, 2410 distance: a, 2411 threshold: l, 2412 maxPatternLength: h, 2413 isCaseSensitive: p, 2414 tokenSeparator: m, 2415 findAllMatches: _, 2416 minMatchCharLength: y 2417 }, this.pattern = this.options.isCaseSensitive ? t : t.toLowerCase(), this.pattern.length <= h && (this.patternAlphabet = s(this.pattern)); 2418 } 2419 2420 var t, i; 2421 return t = e, (i = [{ 2422 key: "search", 2423 value: function (e) { 2424 if (this.options.isCaseSensitive || (e = e.toLowerCase()), this.pattern === e) return { 2425 isMatch: !0, 2426 score: 0, 2427 matchedIndices: [[0, e.length - 1]] 2428 }; 2429 var t = this.options, 2430 i = t.maxPatternLength, 2431 n = t.tokenSeparator; 2432 if (this.pattern.length > i) return r(e, this.pattern, n); 2433 var s = this.options, 2434 a = s.location, 2435 c = s.distance, 2436 l = s.threshold, 2437 u = s.findAllMatches, 2438 h = s.minMatchCharLength; 2439 return o(e, this.pattern, this.patternAlphabet, { 2440 location: a, 2441 distance: c, 2442 threshold: l, 2443 findAllMatches: u, 2444 minMatchCharLength: h 2445 }); 2446 } 2447 }]) && n(t.prototype, i), e; 2448 }(); 2449 2450 e.exports = a; 2451 }, function (e, t) { 2452 var i = /[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g; 2453 2454 e.exports = function (e, t) { 2455 var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : / +/g, 2456 r = new RegExp(t.replace(i, "\\$&").replace(n, "|")), 2457 o = e.match(r), 2458 s = !!o, 2459 a = []; 2460 if (s) for (var c = 0, l = o.length; c < l; c += 1) { 2461 var u = o[c]; 2462 a.push([e.indexOf(u), u.length - 1]); 2463 } 2464 return { 2465 score: s ? .5 : 1, 2466 isMatch: s, 2467 matchedIndices: a 2468 }; 2469 }; 2470 }, function (e, t, i) { 2471 var n = i(5), 2472 r = i(6); 2473 2474 e.exports = function (e, t, i, o) { 2475 for (var s = o.location, a = void 0 === s ? 0 : s, c = o.distance, l = void 0 === c ? 100 : c, u = o.threshold, h = void 0 === u ? .6 : u, d = o.findAllMatches, p = void 0 !== d && d, f = o.minMatchCharLength, m = void 0 === f ? 1 : f, v = a, _ = e.length, g = h, y = e.indexOf(t, v), b = t.length, E = [], S = 0; S < _; S += 1) E[S] = 0; 2476 2477 if (-1 !== y) { 2478 var I = n(t, { 2479 errors: 0, 2480 currentLocation: y, 2481 expectedLocation: v, 2482 distance: l 2483 }); 2484 2485 if (g = Math.min(I, g), -1 !== (y = e.lastIndexOf(t, v + b))) { 2486 var O = n(t, { 2487 errors: 0, 2488 currentLocation: y, 2489 expectedLocation: v, 2490 distance: l
2491 }); 2492 g = Math.min(O, g); 2493 } 2494 } 2495 2496 y = -1; 2497 2498 for (var C = [], T = 1, w = b + _, A = 1 << (b <= 31 ? b - 1 : 30), L = 0; L < b; L += 1) { 2499 for (var P = 0, D = w; P < D;) n(t, { 2500 errors: L, 2501 currentLocation: v + D, 2502 expectedLocation: v, 2503 distance: l 2504 }) <= g ? P = D : w = D, D = Math.floor((w - P) / 2 + P); 2505 2506 w = D; 2507 var x = Math.max(1, v - D + 1), 2508 N = p ? _ : Math.min(v + D, _) + b, 2509 M = Array(N + 2); 2510 M[N + 1] = (1 << L) - 1; 2511 2512 for (var j = N; j >= x; j -= 1) { 2513 var k = j - 1, 2514 F = i[e.charAt(k)]; 2515 2516 if (F && (E[k] = 1), M[j] = (M[j + 1] << 1 | 1) & F, 0 !== L && (M[j] |= (C[j + 1] | C[j]) << 1 | 1 | C[j + 1]), M[j] & A && (T = n(t, { 2517 errors: L, 2518 currentLocation: k, 2519 expectedLocation: v, 2520 distance: l 2521 })) <= g) { 2522 if (g = T, (y = k) <= v) break; 2523 x = Math.max(1, 2 * v - y); 2524 } 2525 } 2526 2527 if (n(t, { 2528 errors: L + 1, 2529 currentLocation: v, 2530 expectedLocation: v, 2531 distance: l 2532 }) > g) break; 2533 C = M; 2534 } 2535 2536 return { 2537 isMatch: y >= 0, 2538 score: 0 === T ? .001 : T, 2539 matchedIndices: r(E, m) 2540 }; 2541 }; 2542 }, function (e, t) { 2543 e.exports = function (e, t) { 2544 var i = t.errors, 2545 n = void 0 === i ? 0 : i, 2546 r = t.currentLocation, 2547 o = void 0 === r ? 0 : r, 2548 s = t.expectedLocation, 2549 a = void 0 === s ? 0 : s, 2550 c = t.distance, 2551 l = void 0 === c ? 100 : c, 2552 u = n / e.length, 2553 h = Math.abs(a - o); 2554 return l ? u + h / l : h ? 1 : u; 2555 }; 2556 }, function (e, t) { 2557 e.exports = function () { 2558 for (var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [], t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1, i = [], n = -1, r = -1, o = 0, s = e.length; o < s; o += 1) { 2559 var a = e[o]; 2560 a && -1 === n ? n = o : a || -1 === n || ((r = o - 1) - n + 1 >= t && i.push([n, r]), n = -1); 2561 } 2562 2563 return e[o - 1] && o - n >= t && i.push([n, o - 1]), i; 2564 }; 2565 }, function (e, t) { 2566 e.exports = function (e) { 2567 for (var t = {}, i = e.length, n = 0; n < i; n += 1) t[e.charAt(n)] = 0; 2568 2569 for (var r = 0; r < i; r += 1) t[e.charAt(r)] |= 1 << i - r - 1; 2570 2571 return t; 2572 }; 2573 }, function (e, t, i) { 2574 var n = i(0); 2575 2576 e.exports = function (e, t) { 2577 return function e(t, i, r) { 2578 if (i) { 2579 var o = i.indexOf("."), 2580 s = i, 2581 a = null; 2582 -1 !== o && (s = i.slice(0, o), a = i.slice(o + 1)); 2583 var c = t[s]; 2584 if (null != c) if (a || "string" != typeof c && "number" != typeof c) { 2585 if (n(c)) for (var l = 0, u = c.length; l < u; l += 1) e(c[l], a, r);else a && e(c, a, r); 2586 } else r.push(c.toString()); 2587 } else r.push(t); 2588 2589 return r; 2590 }(e, t, []); 2591 }; 2592 }]); 2593}, function (e, t, i) { 2594 "use strict"; 2595 2596 var n = function (e) { 2597 return function (e) { 2598 return !!e && "object" == typeof e; 2599 }(e) && !function (e) { 2600 var t = Object.prototype.toString.call(e); 2601 return "[object RegExp]" === t || "[object Date]" === t || function (e) { 2602 return e.$$typeof === r; 2603 }(e); 2604 }(e); 2605 }; 2606 2607 var r = "function" == typeof Symbol && Symbol.for ? Symbol.for("react.element") : 60103; 2608 2609 function o(e, t) { 2610 return !1 !== t.clone && t.isMergeableObject(e) ? l((i = e, Array.isArray(i) ? [] : {}), e, t) : e; 2611 var i; 2612 } 2613 2614 function s(e, t, i) { 2615 return e.concat(t).map(function (e) { 2616 return o(e, i); 2617 }); 2618 } 2619 2620 function a(e) { 2621 return Object.keys(e).concat(function (e) { 2622 return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(e).filter(function (t) { 2623 return e.propertyIsEnumerable(t); 2624 }) : []; 2625 }(e)); 2626 } 2627 2628 function c(e, t, i) { 2629 var n = {}; 2630 return i.isMergeableObject(e) && a(e).forEach(function (t) { 2631 n[t] = o(e[t], i); 2632 }), a(t).forEach(function (r) { 2633 (function (e, t) { 2634 try { 2635 return t in e && !(Object.hasOwnProperty.call(e, t) && Object.propertyIsEnumerable.call(e, t)); 2636 } catch (e) { 2637 return !1; 2638 } 2639 })(e, r) || (i.isMergeableObject(t[r]) && e[r] ? n[r] = function (e, t) { 2640 if (!t.customMerge) return l; 2641 var i = t.customMerge(e); 2642 return "function" == typeof i ? i : l; 2643 }(r, i)(e[r], t[r], i) : n[r] = o(t[r], i)); 2644 }), n; 2645 } 2646 2647 function l(e, t, i) { 2648 (i = i || {}).arrayMerge = i.arrayMerge || s, i.isMergeableObject = i.isMergeableObject || n, i.cloneUnlessOtherwiseSpecified = o; 2649 var r = Array.isArray(t); 2650 return r === Array.isArray(e) ? r ? i.arrayMerge(e, t, i) : c(e, t, i) : o(t, i); 2651 } 2652 2653 l.all = function (e, t) { 2654 if (!Array.isArray(e)) throw new Error("first argument should be an array"); 2655 return e.reduce(function (e, i) { 2656 return l(e, i, t); 2657 }, {}); 2658 }; 2659 2660 var u = l; 2661 e.exports = u; 2662}, function (e, t, i) { 2663 "use strict"; 2664 2665 var n = this && this.__spreadArrays || function () { 2666 for (var e = 0, t = 0, i = arguments.length; t < i; t++) e += arguments[t].length; 2667 2668 var n = Array(e), 2669 r = 0; 2670 2671 for (t = 0; t < i; t++) for (var o = arguments[t], s = 0, a = o.length; s < a; s++, r++) n[r] = o[s]; 2672 2673 return n; 2674 }, 2675 r = this && this.__importDefault || function (e) {
2676 return e && e.__esModule ? e : { 2677 default: e 2678 }; 2679 }; 2680 2681 Object.defineProperty(t, "__esModule", { 2682 value: !0 2683 }); 2684 2685 var o = i(3), 2686 s = r(i(4)), 2687 a = function () { 2688 function e() { 2689 this._store = o.createStore(s.default, window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()); 2690 } 2691 2692 return e.prototype.subscribe = function (e) { 2693 this._store.subscribe(e); 2694 }, e.prototype.dispatch = function (e) { 2695 this._store.dispatch(e); 2696 }, Object.defineProperty(e.prototype, "state", { 2697 get: function () { 2698 return this._store.getState(); 2699 }, 2700 enumerable: !0, 2701 configurable: !0 2702 }), Object.defineProperty(e.prototype, "items", { 2703 get: function () { 2704 return this.state.items; 2705 }, 2706 enumerable: !0, 2707 configurable: !0 2708 }), Object.defineProperty(e.prototype, "activeItems", { 2709 get: function () { 2710 return this.items.filter(function (e) { 2711 return !0 === e.active; 2712 }); 2713 }, 2714 enumerable: !0, 2715 configurable: !0 2716 }), Object.defineProperty(e.prototype, "highlightedActiveItems", { 2717 get: function () { 2718 return this.items.filter(function (e) { 2719 return e.active && e.highlighted; 2720 }); 2721 }, 2722 enumerable: !0, 2723 configurable: !0 2724 }), Object.defineProperty(e.prototype, "choices", { 2725 get: function () { 2726 return this.state.choices; 2727 }, 2728 enumerable: !0, 2729 configurable: !0 2730 }), Object.defineProperty(e.prototype, "activeChoices", { 2731 get: function () { 2732 return this.choices.filter(function (e) { 2733 return !0 === e.active; 2734 }); 2735 }, 2736 enumerable: !0, 2737 configurable: !0 2738 }), Object.defineProperty(e.prototype, "selectableChoices", { 2739 get: function () { 2740 return this.choices.filter(function (e) { 2741 return !0 !== e.disabled; 2742 }); 2743 }, 2744 enumerable: !0, 2745 configurable: !0 2746 }), Object.defineProperty(e.prototype, "searchableChoices", { 2747 get: function () { 2748 return this.selectableChoices.filter(function (e) { 2749 return !0 !== e.placeholder; 2750 }); 2751 }, 2752 enumerable: !0, 2753 configurable: !0 2754 }), Object.defineProperty(e.prototype, "placeholderChoice", { 2755 get: function () { 2756 return n(this.choices).reverse().find(function (e) { 2757 return !0 === e.placeholder; 2758 }); 2759 }, 2760 enumerable: !0, 2761 configurable: !0 2762 }), Object.defineProperty(e.prototype, "groups", { 2763 get: function () { 2764 return this.state.groups; 2765 }, 2766 enumerable: !0, 2767 configurable: !0 2768 }), Object.defineProperty(e.prototype, "activeGroups", { 2769 get: function () { 2770 var e = this.groups, 2771 t = this.choices; 2772 return e.filter(function (e) { 2773 var i = !0 === e.active && !1 === e.disabled, 2774 n = t.some(function (e) { 2775 return !0 === e.active && !1 === e.disabled; 2776 }); 2777 return i && n; 2778 }, []); 2779 }, 2780 enumerable: !0, 2781 configurable: !0 2782 }), e.prototype.isLoading = function () { 2783 return this.state.loading; 2784 }, e.prototype.getChoiceById = function (e) { 2785 return this.activeChoices.find(function (t) { 2786 return t.id === parseInt(e, 10); 2787 }); 2788 }, e.prototype.getGroupById = function (e) { 2789 return this.groups.find(function (t) { 2790 return t.id === e; 2791 }); 2792 }, e; 2793 }(); 2794 2795 t.default = a; 2796}, function (e, t) { 2797 var i; 2798 2799 i = function () { 2800 return this; 2801 }(); 2802 2803 try { 2804 i = i || new Function("return this")(); 2805 } catch (e) { 2806 "object" == typeof window && (i = window); 2807 } 2808 2809 e.exports = i; 2810}, function (e, t) { 2811 e.exports = function (e) { 2812 if (!e.webpackPolyfill) { 2813 var t = Object.create(e); 2814 t.children || (t.children = []), Object.defineProperty(t, "loaded", { 2815 enumerable: !0, 2816 get: function () { 2817 return t.l; 2818 } 2819 }), Object.defineProperty(t, "id", { 2820 enumerable: !0, 2821 get: function () { 2822 return t.i; 2823 } 2824 }), Object.defineProperty(t, "exports", { 2825 enumerable: !0 2826 }), t.webpackPolyfill = 1; 2827 } 2828 2829 return t; 2830 }; 2831}, function (e, t, i) { 2832 "use strict"; 2833 2834 var n = this && this.__spreadArrays || function () { 2835 for (var e = 0, t = 0, i = arguments.length; t < i; t++) e += arguments[t].length; 2836 2837 var n = Array(e), 2838 r = 0; 2839 2840 for (t = 0; t < i; t++) for (var o = arguments[t], s = 0, a = o.length; s < a; s++, r++) n[r] = o[s]; 2841 2842 return n; 2843 }; 2844 2845 Object.defineProperty(t, "__esModule", { 2846 value: !0 2847 }), t.defaultState = [], t.default = function (e, i) { 2848 switch (void 0 === e && (e = t.defaultState), i.type) { 2849 case "ADD_ITEM": 2850 var r = i; 2851 return n(e, [{ 2852 id: r.id, 2853 choiceId: r.choiceId, 2854 groupId: r.groupId, 2855 value: r.value, 2856 label: r.label, 2857 active: !0, 2858 highlighted: !1, 2859 customProperties: r.customProperties, 2860 placeholder: r.placeholder || !1, 2861 keyCode: null 2862 }]).map(function (e) { 2863 var t = e; 2864 return t.highlighted = !1, t; 2865 }); 2866 2867 case "REMOVE_ITEM": 2868 return e.map(function (e) { 2869 var t = e; 2870 return t.id === i.id && (t.active = !1), t; 2871 }); 2872 2873 case "HIGHLIGHT_ITEM": 2874 var o = i; 2875 return e.map(function (e) { 2876 var t = e; 2877 return t.id === o.id && (t.highlighted = o.highlighted), t; 2878 }); 2879 2880 default: 2881 return e; 2882 } 2883 }; 2884}, function (e, t, i) { 2885 "use strict"; 2886 2887 var n = this && this.__spreadArrays || function () { 2888 for (var e = 0, t = 0, i = arguments.length; t < i; t++) e += arguments[t].length; 2889 2890 var n = Array(e), 2891 r = 0; 2892 2893 for (t = 0; t < i; t++) for (var o = arguments[t], s = 0, a = o.length; s < a; s++, r++) n[r] = o[s]; 2894 2895 return n; 2896 }; 2897 2898 Object.defineProperty(t, "__esModule", { 2899 value: !0 2900 }), t.defaultState = [], t.default = function (e, i) { 2901 switch (void 0 === e && (e = t.defaultState), i.type) { 2902 case "ADD_GROUP": 2903 var r = i; 2904 return n(e, [{ 2905 id: r.id, 2906 value: r.value, 2907 active: r.active, 2908 disabled: r.disabled 2909 }]); 2910 2911 case "CLEAR_CHOICES": 2912 return []; 2913 2914 default: 2915 return e; 2916 } 2917 }; 2918}, function (e, t, i) { 2919 "use strict"; 2920 2921 var n = this && this.__spreadArrays || function () { 2922 for (var e = 0, t = 0, i = arguments.length; t < i; t++) e += arguments[t].length; 2923 2924 var n = Array(e), 2925 r = 0; 2926 2927 for (t = 0; t < i; t++) for (var o = arguments[t], s = 0, a = o.length; s < a; s++, r++) n[r] = o[s]; 2928 2929 return n; 2930 }; 2931 2932 Object.defineProperty(t, "__esModule", { 2933 value: !0 2934 }), t.defaultState = [], t.default = function (e, i) { 2935 switch (void 0 === e && (e = t.defaultState), i.type) { 2936 case "ADD_CHOICE": 2937 var r = i, 2938 o = { 2939 id: r.id, 2940 elementId: r.elementId, 2941 groupId: r.groupId, 2942 value: r.value, 2943 label: r.label || r.value, 2944 disabled: r.disabled || !1, 2945 selected: !1, 2946 active: !0, 2947 score: 9999, 2948 customProperties: r.customProperties, 2949 placeholder: r.placeholder || !1 2950 }; 2951 return n(e, [o]); 2952 2953 case "ADD_ITEM": 2954 var s = i; 2955 return s.choiceId > -1 ? e.map(function (e) { 2956 var t = e; 2957 return t.id === parseInt("" + s.choiceId, 10) && (t.selected = !0), t; 2958 }) : e; 2959 2960 case "REMOVE_ITEM": 2961 var a = i; 2962 return a.choiceId && a.choiceId > -1 ? e.map(function (e) { 2963 var t = e; 2964 return t.id === parseInt("" + a.choiceId, 10) && (t.selected = !1), t; 2965 }) : e; 2966 2967 case "FILTER_CHOICES": 2968 var c = i; 2969 return e.map(function (e) { 2970 var t = e; 2971 return t.active = c.results.some(function (e) { 2972 var i = e.item, 2973 n = e.score; 2974 return i.id === t.id && (t.score = n, !0); 2975 }), t; 2976 }); 2977 2978 case "ACTIVATE_CHOICES": 2979 var l = i; 2980 return e.map(function (e) { 2981 var t = e; 2982 return t.active = l.active, t; 2983 }); 2984 2985 case "CLEAR_CHOICES": 2986 return t.defaultState; 2987 2988 default: 2989 return e; 2990 } 2991 }; 2992}, function (e, t, i) { 2993 "use strict"; 2994 2995 Object.defineProperty(t, "__esModule", { 2996 value: !0 2997 }), t.defaultState = !1; 2998 2999 t.default = function (e, i) { 3000 switch (void 0 === e && (e = t.defaultState), i.type) { 3001 case "SET_IS_LOADING": 3002 return i.isLoading; 3003 3004 default: 3005 return e; 3006 } 3007 }; 3008}, function (e, t, i) { 3009 "use strict"; 3010 3011 var n = this && this.__importDefault || function (e) {
3012 return e && e.__esModule ? e : { 3013 default: e 3014 }; 3015 }; 3016 3017 Object.defineProperty(t, "__esModule", { 3018 value: !0 3019 }); 3020 var r = n(i(19)); 3021 t.Dropdown = r.default; 3022 var o = n(i(20)); 3023 t.Container = o.default; 3024 var s = n(i(21)); 3025 t.Input = s.default; 3026 var a = n(i(22)); 3027 t.List = a.default; 3028 var c = n(i(23)); 3029 t.WrappedInput = c.default; 3030 var l = n(i(24)); 3031 t.WrappedSelect = l.default; 3032}, function (e, t, i) { 3033 "use strict"; 3034 3035 Object.defineProperty(t, "__esModule", { 3036 value: !0 3037 }); 3038 3039 var n = function () { 3040 function e(e) { 3041 var t = e.element, 3042 i = e.type, 3043 n = e.classNames; 3044 this.element = t, this.classNames = n, this.type = i, this.isActive = !1; 3045 } 3046 3047 return Object.defineProperty(e.prototype, "distanceFromTopWindow", { 3048 get: function () { 3049 return this.element.getBoundingClientRect().bottom; 3050 }, 3051 enumerable: !0, 3052 configurable: !0 3053 }), e.prototype.getChild = function (e) { 3054 return this.element.querySelector(e); 3055 }, e.prototype.show = function () { 3056 return this.element.classList.add(this.classNames.activeState), this.element.setAttribute("aria-expanded", "true"), this.isActive = !0, this; 3057 }, e.prototype.hide = function () { 3058 return this.element.classList.remove(this.classNames.activeState), this.element.setAttribute("aria-expanded", "false"), this.isActive = !1, this; 3059 }, e; 3060 }(); 3061 3062 t.default = n; 3063}, function (e, t, i) { 3064 "use strict"; 3065 3066 Object.defineProperty(t, "__esModule", { 3067 value: !0 3068 }); 3069 3070 var n = i(1), 3071 r = i(0), 3072 o = function () { 3073 function e(e) { 3074 var t = e.element, 3075 i = e.type, 3076 n = e.classNames, 3077 r = e.position; 3078 this.element = t, this.classNames = n, this.type = i, this.position = r, this.isOpen = !1, this.isFlipped = !1, this.isFocussed = !1, this.isDisabled = !1, this.isLoading = !1, this._onFocus = this._onFocus.bind(this), this._onBlur = this._onBlur.bind(this); 3079 } 3080 3081 return e.prototype.addEventListeners = function () { 3082 this.element.addEventListener("focus", this._onFocus), this.element.addEventListener("blur", this._onBlur); 3083 }, e.prototype.removeEventListeners = function () { 3084 this.element.removeEventListener("focus", this._onFocus), this.element.removeEventListener("blur", this._onBlur); 3085 }, e.prototype.shouldFlip = function (e) { 3086 if ("number" != typeof e) return !1; 3087 var t = !1; 3088 return "auto" === this.position ? t = !window.matchMedia("(min-height: " + (e + 1) + "px)").matches : "top" === this.position && (t = !0), t; 3089 }, e.prototype.setActiveDescendant = function (e) { 3090 this.element.setAttribute("aria-activedescendant", e); 3091 }, e.prototype.removeActiveDescendant = function () { 3092 this.element.removeAttribute("aria-activedescendant"); 3093 }, e.prototype.open = function (e) { 3094 this.element.classList.add(this.classNames.openState), this.element.setAttribute("aria-expanded", "true"), this.isOpen = !0, this.shouldFlip(e) && (this.element.classList.add(this.classNames.flippedState), this.isFlipped = !0); 3095 }, e.prototype.close = function () { 3096 this.element.classList.remove(this.classNames.openState), this.element.setAttribute("aria-expanded", "false"), this.removeActiveDescendant(), this.isOpen = !1, this.isFlipped && (this.element.classList.remove(this.classNames.flippedState), this.isFlipped = !1); 3097 }, e.prototype.focus = function () { 3098 this.isFocussed || this.element.focus(); 3099 }, e.prototype.addFocusState = function () { 3100 this.element.classList.add(this.classNames.focusState); 3101 }, e.prototype.removeFocusState = function () { 3102 this.element.classList.remove(this.classNames.focusState); 3103 }, e.prototype.enable = function () { 3104 this.element.classList.remove(this.classNames.disabledState), this.element.removeAttribute("aria-disabled"), this.type === r.SELECT_ONE_TYPE && this.element.setAttribute("tabindex", "0"), this.isDisabled = !1; 3105 }, e.prototype.disable = function () { 3106 this.element.classList.add(this.classNames.disabledState), this.element.setAttribute("aria-disabled", "true"), this.type === r.SELECT_ONE_TYPE && this.element.setAttribute("tabindex", "-1"), this.isDisabled = !0; 3107 }, e.prototype.wrap = function (e) { 3108 n.wrap(e, this.element); 3109 }, e.prototype.unwrap = function (e) { 3110 this.element.parentNode && (this.element.parentNode.insertBefore(e, this.element), this.element.parentNode.removeChild(this.element)); 3111 }, e.prototype.addLoadingState = function () { 3112 this.element.classList.add(this.classNames.loadingState), this.element.setAttribute("aria-busy", "true"), this.isLoading = !0; 3113 }, e.prototype.removeLoadingState = function () { 3114 this.element.classList.remove(this.classNames.loadingState), this.element.removeAttribute("aria-busy"), this.isLoading = !1; 3115 }, e.prototype._onFocus = function () { 3116 this.isFocussed = !0; 3117 }, e.prototype._onBlur = function () { 3118 this.isFocussed = !1; 3119 }, e; 3120 }(); 3121 3122 t.default = o; 3123}, function (e, t, i) { 3124 "use strict"; 3125 3126 Object.defineProperty(t, "__esModule", { 3127 value: !0 3128 }); 3129 3130 var n = i(1), 3131 r = i(0), 3132 o = function () { 3133 function e(e) { 3134 var t = e.element, 3135 i = e.type, 3136 n = e.classNames, 3137 r = e.preventPaste; 3138 this.element = t, this.type = i, this.classNames = n, this.preventPaste = r, this.isFocussed = this.element.isEqualNode(document.activeElement), this.isDisabled = t.disabled, this._onPaste = this._onPaste.bind(this), this._onInput = this._onInput.bind(this), this._onFocus = this._onFocus.bind(this), this._onBlur = this._onBlur.bind(this); 3139 } 3140 3141 return Object.defineProperty(e.prototype, "placeholder", { 3142 set: function (e) { 3143 this.element.placeholder = e; 3144 }, 3145 enumerable: !0, 3146 configurable: !0 3147 }), Object.defineProperty(e.prototype, "value", { 3148 get: function () { 3149 return n.sanitise(this.element.value); 3150 }, 3151 set: function (e) { 3152 this.element.value = e; 3153 }, 3154 enumerable: !0, 3155 configurable: !0 3156 }), e.prototype.addEventListeners = function () { 3157 this.element.addEventListener("paste", this._onPaste), this.element.addEventListener("input", this._onInput, { 3158 passive: !0 3159 }), this.element.addEventListener("focus", this._onFocus, { 3160 passive: !0 3161 }), this.element.addEventListener("blur", this._onBlur, { 3162 passive: !0 3163 }); 3164 }, e.prototype.removeEventListeners = function () { 3165 this.element.removeEventListener("input", this._onInput), this.element.removeEventListener("paste", this._onPaste), this.element.removeEventListener("focus", this._onFocus), this.element.removeEventListener("blur", this._onBlur); 3166 }, e.prototype.enable = function () { 3167 this.element.removeAttribute("disabled"), this.isDisabled = !1; 3168 }, e.prototype.disable = function () { 3169 this.element.setAttribute("disabled", ""), this.isDisabled = !0; 3170 }
3170, e.prototype.focus = function () { 3171 this.isFocussed || this.element.focus(); 3172 }, e.prototype.blur = function () { 3173 this.isFocussed && this.element.blur(); 3174 }, e.prototype.clear = function (e) { 3175 return void 0 === e && (e = !0), this.element.value && (this.element.value = ""), e && this.setWidth(), this; 3176 }, e.prototype.setWidth = function () { 3177 var e = this.element, 3178 t = e.style, 3179 i = e.value, 3180 n = e.placeholder; 3181 t.minWidth = n.length + 1 + "ch", t.width = i.length + 1 + "ch"; 3182 }, e.prototype.setActiveDescendant = function (e) { 3183 this.element.setAttribute("aria-activedescendant", e); 3184 }, e.prototype.removeActiveDescendant = function () { 3185 this.element.removeAttribute("aria-activedescendant"); 3186 }, e.prototype._onInput = function () { 3187 this.type !== r.SELECT_ONE_TYPE && this.setWidth(); 3188 }, e.prototype._onPaste = function (e) { 3189 this.preventPaste && e.preventDefault(); 3190 }, e.prototype._onFocus = function () { 3191 this.isFocussed = !0; 3192 }, e.prototype._onBlur = function () { 3193 this.isFocussed = !1; 3194 }, e; 3195 }(); 3196 3197 t.default = o; 3198}, function (e, t, i) { 3199 "use strict"; 3200 3201 Object.defineProperty(t, "__esModule", { 3202 value: !0 3203 }); 3204 3205 var n = i(0), 3206 r = function () { 3207 function e(e) { 3208 var t = e.element; 3209 this.element = t, this.scrollPos = this.element.scrollTop, this.height = this.element.offsetHeight; 3210 } 3211 3212 return e.prototype.clear = function () { 3213 this.element.innerHTML = ""; 3214 }, e.prototype.append = function (e) { 3215 this.element.appendChild(e); 3216 }, e.prototype.getChild = function (e) { 3217 return this.element.querySelector(e); 3218 }, e.prototype.hasChildren = function () { 3219 return this.element.hasChildNodes(); 3220 }, e.prototype.scrollToTop = function () { 3221 this.element.scrollTop = 0; 3222 }, e.prototype.scrollToChildElement = function (e, t) { 3223 var i = this; 3224 3225 if (e) { 3226 var n = this.element.offsetHeight, 3227 r = this.element.scrollTop + n, 3228 o = e.offsetHeight, 3229 s = e.offsetTop + o, 3230 a = t > 0 ? this.element.scrollTop + s - r : e.offsetTop; 3231 requestAnimationFrame(function () { 3232 i._animateScroll(a, t); 3233 }); 3234 } 3235 }, e.prototype._scrollDown = function (e, t, i) { 3236 var n = (i - e) / t, 3237 r = n > 1 ? n : 1; 3238 this.element.scrollTop = e + r; 3239 }, e.prototype._scrollUp = function (e, t, i) { 3240 var n = (e - i) / t, 3241 r = n > 1 ? n : 1; 3242 this.element.scrollTop = e - r; 3243 }, e.prototype._animateScroll = function (e, t) { 3244 var i = this, 3245 r = n.SCROLLING_SPEED, 3246 o = this.element.scrollTop, 3247 s = !1; 3248 t > 0 ? (this._scrollDown(o, r, e), o < e && (s = !0)) : (this._scrollUp(o, r, e), o > e && (s = !0)), s && requestAnimationFrame(function () { 3249 i._animateScroll(e, t); 3250 }); 3251 }, e; 3252 }(); 3253 3254 t.default = r; 3255}, function (e, t, i) { 3256 "use strict"; 3257 3258 var n, 3259 r = this && this.__extends || (n = function (e, t) { 3260 return (n = Object.setPrototypeOf || { 3261 __proto__: [] 3262 } instanceof Array && function (e, t) { 3263 e.__proto__ = t; 3264 } || function (e, t) { 3265 for (var i in t) t.hasOwnProperty(i) && (e[i] = t[i]); 3266 })(e, t); 3267 }, function (e, t) { 3268 function i() { 3269 this.constructor = e; 3270 } 3271 3272 n(e, t), e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i()); 3273 }), 3274 o = this && this.__importDefault || function (e) { 3275 return e && e.__esModule ? e : { 3276 default: e 3277 }; 3278 }; 3279 3280 Object.defineProperty(t, "__esModule", { 3281 value: !0 3282 }); 3283 3284 var s = function (e) { 3285 function t(t) { 3286 var i = t.element, 3287 n = t.classNames, 3288 r = t.delimiter, 3289 o = e.call(this, { 3290 element: i, 3291 classNames: n 3292 }) || this; 3293 return o.delimiter = r, o; 3294 } 3295 3296 return r(t, e), Object.defineProperty(t.prototype, "value", { 3297 get: function () { 3298 return this.element.value; 3299 }, 3300 set: function (e) { 3301 this.element.setAttribute("value", e), this.element.value = e; 3302 }, 3303 enumerable: !0, 3304 configurable: !0 3305 }), t; 3306 }(o(i(5)).default); 3307 3308 t.default = s; 3309}, function (e, t, i) { 3310 "use strict"; 3311 3312 var n, 3313 r = this && this.__extends || (n = function (e, t) { 3314 return (n = Object.setPrototypeOf || { 3315 __proto__: [] 3316 } instanceof Array && function (e, t) { 3317 e.__proto__ = t; 3318 } || function (e, t) { 3319 for (var i in t) t.hasOwnProperty(i) && (e[i] = t[i]); 3320 })(e, t); 3321 }, function (e, t) { 3322 function i() { 3323 this.constructor = e; 3324 } 3325 3326 n(e, t), e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i()); 3327 }), 3328 o = this && this.__importDefault || function (e) {
3329 return e && e.__esModule ? e : { 3330 default: e 3331 }; 3332 }; 3333 3334 Object.defineProperty(t, "__esModule", { 3335 value: !0 3336 }); 3337 3338 var s = function (e) { 3339 function t(t) { 3340 var i = t.element, 3341 n = t.classNames, 3342 r = t.template, 3343 o = e.call(this, { 3344 element: i, 3345 classNames: n 3346 }) || this; 3347 return o.template = r, o; 3348 } 3349 3350 return r(t, e), Object.defineProperty(t.prototype, "placeholderOption", { 3351 get: function () { 3352 return this.element.querySelector('option[value=""]') || this.element.querySelector("option[placeholder]"); 3353 }, 3354 enumerable: !0, 3355 configurable: !0 3356 }), Object.defineProperty(t.prototype, "optionGroups", { 3357 get: function () { 3358 return Array.from(this.element.getElementsByTagName("OPTGROUP")); 3359 }, 3360 enumerable: !0, 3361 configurable: !0 3362 }), Object.defineProperty(t.prototype, "options", { 3363 get: function () { 3364 return Array.from(this.element.options); 3365 }, 3366 set: function (e) { 3367 var t = this, 3368 i = document.createDocumentFragment(); 3369 e.forEach(function (e) { 3370 return n = e, r = t.template(n), void i.appendChild(r); 3371 var n, r; 3372 }), this.appendDocFragment(i); 3373 }, 3374 enumerable: !0, 3375 configurable: !0 3376 }), t.prototype.appendDocFragment = function (e) { 3377 this.element.innerHTML = "", this.element.appendChild(e); 3378 }, t; 3379 }(o(i(5)).default); 3380 3381 t.default = s; 3382}, function (e, t, i) { 3383 "use strict"; 3384 3385 Object.defineProperty(t, "__esModule", { 3386 value: !0 3387 }); 3388 var n = { 3389 containerOuter: function (e, t, i, n, r, o) { 3390 var s = e.containerOuter, 3391 a = Object.assign(document.createElement("div"), { 3392 className: s 3393 }); 3394 return a.dataset.type = o, t && (a.dir = t), n && (a.tabIndex = 0), i && (a.setAttribute("role", r ? "combobox" : "listbox"), r && a.setAttribute("aria-autocomplete", "list")), a.setAttribute("aria-haspopup", "true"), a.setAttribute("aria-expanded", "false"), a; 3395 }, 3396 containerInner: function (e) { 3397 var t = e.containerInner; 3398 return Object.assign(document.createElement("div"), { 3399 className: t 3400 }); 3401 }, 3402 itemList: function (e, t) { 3403 var i = e.list, 3404 n = e.listSingle, 3405 r = e.listItems; 3406 return Object.assign(document.createElement("div"), { 3407 className: i + " " + (t ? n : r) 3408 }); 3409 }, 3410 placeholder: function (e, t) { 3411 var i = e.placeholder; 3412 return Object.assign(document.createElement("div"), { 3413 className: i, 3414 innerHTML: t 3415 }); 3416 }, 3417 item: function (e, t, i) { 3418 var n = e.item, 3419 r = e.button, 3420 o = e.highlightedState, 3421 s = e.itemSelectable, 3422 a = e.placeholder, 3423 c = t.id, 3424 l = t.value, 3425 u = t.label, 3426 h = t.customProperties, 3427 d = t.active, 3428 p = t.disabled, 3429 f = t.highlighted, 3430 m = t.placeholder, 3431 v = Object.assign(document.createElement("div"), { 3432 className: n, 3433 innerHTML: u 3434 }); 3435 3436 if (Object.assign(v.dataset, { 3437 item: "", 3438 id: c, 3439 value: l, 3440 customProperties: h 3441 }), d && v.setAttribute("aria-selected", "true"), p && v.setAttribute("aria-disabled", "true"), m && v.classList.add(a), v.classList.add(f ? o : s), i) { 3442 p && v.classList.remove(s), v.dataset.deletable = ""; 3443 3444 var _ = Object.assign(document.createElement("button"), { 3445 type: "button", 3446 className: r, 3447 innerHTML: "Remove item" 3448 }); 3449 3450 _.setAttribute("aria-label", "Remove item: '" + l + "'"), _.dataset.button = "", v.appendChild(_); 3451 } 3452 3453 return v; 3454 }, 3455 choiceList: function (e, t) { 3456 var i = e.list, 3457 n = Object.assign(document.createElement("div"), { 3458 className: i 3459 }); 3460 return t || n.setAttribute("aria-multiselectable", "true"), n.setAttribute("role", "listbox"), n; 3461 }, 3462 choiceGroup: function (e, t) { 3463 var i = e.group, 3464 n = e.groupHeading, 3465 r = e.itemDisabled, 3466 o = t.id, 3467 s = t.value, 3468 a = t.disabled, 3469 c = Object.assign(document.createElement("div"), { 3470 className: i + " " + (a ? r : "") 3471 }); 3472 return c.setAttribute("role", "group"), Object.assign(c.dataset, { 3473 group: "", 3474 id: o, 3475 value: s 3476 }), a && c.setAttribute("aria-disabled", "true"), c.appendChild(Object.assign(document.createElement("div"), { 3477 className: n, 3478 innerHTML: s 3479 })), c; 3480 }, 3481 choice: function (e, t, i) { 3482 var n = e.item, 3483 r = e.itemChoice, 3484 o = e.itemSelectable, 3485 s = e.selectedState, 3486 a = e.itemDisabled, 3487 c = e.placeholder, 3488 l = t.id, 3489 u = t.value, 3490 h = t.label, 3491 d = t.groupId, 3492 p = t.elementId, 3493 f = t.disabled, 3494 m = t.selected, 3495 v = t.placeholder, 3496 _ = Object.assign(document.createElement("div"), { 3497 id: p, 3498 innerHTML: h, 3499 className: n + " " + r 3500 }); 3501 3502 return m && _.classList.add(s), v && _.classList.add(c), _.setAttribute("role", d && d > 0 ? "treeitem" : "option"), Object.assign(_.dataset, { 3503 choice: "", 3504 id: l, 3505 value: u, 3506 selectText: i 3507 }), f ? (_.classList.add(a), _.dataset.choiceDisabled = "", _.setAttribute("aria-disabled", "true")) : (_.classList.add(o), _.dataset.choiceSelectable = ""), _; 3508 }, 3509 input: function (e, t) { 3510 var i = e.input, 3511 n = e.inputCloned, 3512 r = Object.assign(document.createElement("input"), { 3513 type: "text", 3514 className: i + " " + n, 3515 autocomplete: "off", 3516 autocapitalize: "off", 3517 spellcheck: !1 3518 }); 3519 return r.setAttribute("role", "textbox"), r.setAttribute("aria-autocomplete", "list"), r.setAttribute("aria-label", t), r; 3520 }, 3521 dropdown: function (e) { 3522 var t = e.list, 3523 i = e.listDropdown, 3524 n = document.createElement("div"); 3525 return n.classList.add(t, i), n.setAttribute("aria-expanded", "false"), n; 3526 }, 3527 notice: function (e, t, i) { 3528 var n = e.item, 3529 r = e.itemChoice, 3530 o = e.noResults, 3531 s = e.noChoices; 3532 void 0 === i && (i = ""); 3533 var a = [n, r]; 3534 return "no-choices" === i ? a.push(s) : "no-results" === i && a.push(o), Object.assign(document.createElement("div"), { 3535 innerHTML: t, 3536 className: a.join(" ") 3537 }); 3538 }, 3539 option: function (e) { 3540 var t = e.label, 3541 i = e.value, 3542 n = e.customProperties, 3543 r = e.active, 3544 o = e.disabled, 3545 s = new Option(t, i, !1, r); 3546 return n && (s.dataset.customProperties = "" + n), s.disabled = !!o, s; 3547 } 3548 }; 3549 t.default = n; 3550}, function (e, t, i) { 3551 "use strict"; 3552 3553 Object.defineProperty(t, "__esModule", { 3554 value: !0 3555 }); 3556 var n = i(0); 3557 t.addChoice = function (e) { 3558 var t = e.value, 3559 i = e.label, 3560 r = e.id, 3561 o = e.groupId, 3562 s = e.disabled, 3563 a = e.elementId, 3564 c = e.customProperties, 3565 l = e.placeholder, 3566 u = e.keyCode; 3567 return { 3568 type: n.ACTION_TYPES.ADD_CHOICE, 3569 value: t, 3570 label: i, 3571 id: r, 3572 groupId: o, 3573 disabled: s, 3574 elementId: a, 3575 customProperties: c, 3576 placeholder: l, 3577 keyCode: u 3578 }; 3579 }, t.filterChoices = function (e) { 3580 return { 3581 type: n.ACTION_TYPES.FILTER_CHOICES, 3582 results: e 3583 }; 3584 }, t.activateChoices = function (e) { 3585 return void 0 === e && (e = !0), { 3586 type: n.ACTION_TYPES.ACTIVATE_CHOICES, 3587 active: e 3588 }; 3589 }, t.clearChoices = function () { 3590 return { 3591 type: n.ACTION_TYPES.CLEAR_CHOICES 3592 }; 3593 }; 3594}, function (e, t, i) { 3595 "use strict"; 3596 3597 Object.defineProperty(t, "__esModule", { 3598 value: !0 3599 }); 3600 var n = i(0); 3601 t.addItem = function (e) { 3602 var t = e.value, 3603 i = e.label, 3604 r = e.id, 3605 o = e.choiceId, 3606 s = e.groupId, 3607 a = e.customProperties, 3608 c = e.placeholder, 3609 l = e.keyCode; 3610 return { 3611 type: n.ACTION_TYPES.ADD_ITEM, 3612 value: t, 3613 label: i, 3614 id: r, 3615 choiceId: o, 3616 groupId: s, 3617 customProperties: a, 3618 placeholder: c, 3619 keyCode: l 3620 }; 3621 }, t.removeItem = function (e, t) { 3622 return { 3623 type: n.ACTION_TYPES.REMOVE_ITEM, 3624 id: e, 3625 choiceId: t 3626 }; 3627 }, t.highlightItem = function (e, t) { 3628 return { 3629 type: n.ACTION_TYPES.HIGHLIGHT_ITEM, 3630 id: e, 3631 highlighted: t 3632 }; 3633 }; 3634}, function (e, t, i) { 3635 "use strict"; 3636 3637 Object.defineProperty(t, "__esModule", { 3638 value: !0 3639 }); 3640 var n = i(0); 3641 3642 t.addGroup = function (e) { 3643 var t = e.value, 3644 i = e.id, 3645 r = e.active, 3646 o = e.disabled; 3647 return { 3648 type: n.ACTION_TYPES.ADD_GROUP, 3649 value: t, 3650 id: i, 3651 active: r, 3652 disabled: o 3653 }; 3654 }; 3655}, function (e, t, i) { 3656 "use strict"; 3657 3658 Object.defineProperty(t, "__esModule", { 3659 value: !0 3660 }); 3661 var n = i(0); 3662 t.clearAll = function () { 3663 return { 3664 type: n.ACTION_TYPES.CLEAR_ALL 3665 }; 3666 }, t.resetTo = function (e) { 3667 return { 3668 type: n.ACTION_TYPES.RESET_TO, 3669 state: e 3670 }; 3671 }, t.setIsLoading = function (e) { 3672 return { 3673 type: n.ACTION_TYPES.SET_IS_LOADING, 3674 isLoading: e 3675 }; 3676 }; 3677}]).default; 3678 3679/***/ }), 3680
vendor: 4,909 bytes, lines 3681-3855
3681/***/ "./src/js/vendor/focus-visible.js": 3682/*!****************************************!*\ 3683 !*** ./src/js/vendor/focus-visible.js ***! 3684 \****************************************/ 3685/***/ (() => { 3686 3687/** 3688 * Applies the :focus-visible polyfill at the given scope. 3689 * A scope in this case is either the top-level Document or a Shadow Root. 3690 * 3691 * @param {(Document|ShadowRoot)} scope 3692 * @see https://github.com/WICG/focus-visible 3693 */ 3694function applyFocusVisiblePolyfill(scope) { 3695 var hadKeyboardEvent = true; 3696 var hadFocusVisibleRecently = false; 3697 var hadFocusVisibleRecentlyTimeout = null; 3698 var inputTypesAllowlist = { 3699 text: true, 3700 search: true, 3701 url: true, 3702 tel: true, 3703 email: true, 3704 password: true, 3705 number: true, 3706 date: true, 3707 month: true, 3708 week: true, 3709 time: true, 3710 datetime: true, 3711 'datetime-local': true 3712 }; 3713 /** 3714 * Helper function for legacy browsers and iframes which sometimes focus 3715 * elements like document, body, and non-interactive SVG. 3716 * @param {Element} el 3717 */ 3718 3719 function isValidFocusTarget(el) { 3720 if (el && el !== document && el.nodeName !== 'HTML' && el.nodeName !== 'BODY' && 'classList' in el && 'contains' in el.classList) { 3721 return true; 3722 } 3723 3724 return false; 3725 } 3726 /** 3727 * Computes whether the given element should automatically trigger the 3728 * `focus-visible` class being added, i.e. whether it should always match 3729 * `:focus-visible` when focused. 3730 * @param {Element} el 3731 * @return {boolean} 3732 */ 3733 3734 3735 function focusTriggersKeyboardModality(el) { 3736 var type = el.type; 3737 var tagName = el.tagName; 3738 3739 if (tagName === 'INPUT' && inputTypesAllowlist[type] && !el.readOnly) { 3740 return true; 3741 } 3742 3743 if (tagName === 'TEXTAREA' && !el.readOnly) { 3744 return true; 3745 } 3746 3747 if (el.isContentEditable) { 3748 return true; 3749 } 3750 3751 return false; 3752 } 3753 /** 3754 * Add the `focus-visible` class to the given element if it was not added by 3755 * the author. 3756 * @param {Element} el 3757 */ 3758 3759 3760 function addFocusVisibleClass(el) { 3761 if (el.classList.contains('focus-visible')) { 3762 return; 3763 } 3764 3765 el.classList.add('focus-visible'); 3766 el.setAttribute('data-focus-visible-added', ''); 3767 } 3768 /** 3769 * Remove the `focus-visible` class from the given element if it was not 3770 * originally added by the author. 3771 * @param {Element} el 3772 */ 3773 3774 3775 function removeFocusVisibleClass(el) { 3776 if (!el.hasAttribute('data-focus-visible-added')) { 3777 return; 3778 } 3779 3780 el.classList.remove('focus-visible'); 3781 el.removeAttribute('data-focus-visible-added'); 3782 } 3783 /** 3784 * If the most recent user interaction was via the keyboard; 3785 * and the key press did not include a meta, alt/option, or control key; 3786 * then the modality is keyboard. Otherwise, the modality is not keyboard. 3787 * Apply `focus-visible` to any current active element and keep track 3788 * of our keyboard modality state with `hadKeyboardEvent`. 3789 * @param {KeyboardEvent} e 3790 */ 3791 3792 3793 function onKeyDown(e) { 3794 if (e.metaKey || e.altKey || e.ctrlKey) { 3795 return; 3796 } 3797 3798 if (isValidFocusTarget(scope.activeElement)) { 3799 addFocusVisibleClass(scope.activeElement); 3800 } 3801 3802 hadKeyboardEvent = true; 3803 } 3804 /** 3805 * If at any point a user clicks with a pointing device, ensure that we change 3806 * the modality away from keyboard. 3807 * This avoids the situation where a user presses a key on an already focused 3808 * element, and then clicks on a different element, focusing it with a 3809 * pointing device, while we still think we're in keyboard modality. 3810 * @param {Event} e 3811 */ 3812 3813 3814 function onPointerDown(e) { 3815 hadKeyboardEvent = false; 3816 } 3817 /** 3818 * On `focus`, add the `focus-visible` class to the target if: 3819 * - the target received focus as a result of keyboard navigation, or 3820 * - the event target is an element that will likely require interaction 3821 * via the keyboard (e.g. a text box) 3822 * @param {Event} e 3823 */ 3824 3825 3826 function onFocus(e) { 3827 // Prevent IE from focusing the document or HTML element. 3828 if (!isValidFocusTarget(e.target)) { 3829 return; 3830 } 3831 3832 if (hadKeyboardEvent || focusTriggersKeyboardModality(e.target)) { 3833 addFocusVisibleClass(e.target); 3834 } 3835 } 3836 /** 3837 * On `blur`, remove the `focus-visible` class from the target. 3838 * @param {Event} e 3839 */ 3840 3841 3842 function onBlur(e) { 3843 if (!isValidFocusTarget(e.target)) { 3844 return; 3845 } 3846 3847 if (e.target.classList.contains('focus-visible') || e.target.hasAttribute('data-focus-visible-added')) { 3848 // To detect a tab/window switch, we look for a blur event followed 3849 // rapidly by a visibility change. 3850 // If we don't see a visibility change within 100ms, it's probably a 3851 // regular focus change. 3852 hadFocusVisibleRecently = true; 3853 window.clearTimeout(hadFocusVisibleRecentlyTimeout); 3854 hadFocusVisibleRecentlyTimeout = window.setTimeout(function () { 3855 hadFocusVisibleRecently = false;
vendor: 5,973 bytes, lines 3856-3992
3856 }, 100); 3857 removeFocusVisibleClass(e.target); 3858 } 3859 } 3860 /** 3861 * If the user changes tabs, keep track of whether or not the previously 3862 * focused element had .focus-visible. 3863 * @param {Event} e 3864 */ 3865 3866 3867 function onVisibilityChange(e) { 3868 if (document.visibilityState === 'hidden') { 3869 // If the tab becomes active again, the browser will handle calling focus 3870 // on the element (Safari actually calls it twice). 3871 // If this tab change caused a blur on an element with focus-visible, 3872 // re-apply the class when the user switches back to the tab. 3873 if (hadFocusVisibleRecently) { 3874 hadKeyboardEvent = true; 3875 } 3876 3877 addInitialPointerMoveListeners(); 3878 } 3879 } 3880 /** 3881 * Add a group of listeners to detect usage of any pointing devices. 3882 * These listeners will be added when the polyfill first loads, and anytime 3883 * the window is blurred, so that they are active when the window regains 3884 * focus. 3885 */ 3886 3887 3888 function addInitialPointerMoveListeners() { 3889 document.addEventListener('mousemove', onInitialPointerMove); 3890 document.addEventListener('mousedown', onInitialPointerMove); 3891 document.addEventListener('mouseup', onInitialPointerMove); 3892 document.addEventListener('pointermove', onInitialPointerMove); 3893 document.addEventListener('pointerdown', onInitialPointerMove); 3894 document.addEventListener('pointerup', onInitialPointerMove); 3895 document.addEventListener('touchmove', onInitialPointerMove); 3896 document.addEventListener('touchstart', onInitialPointerMove); 3897 document.addEventListener('touchend', onInitialPointerMove); 3898 } 3899 3900 function removeInitialPointerMoveListeners() { 3901 document.removeEventListener('mousemove', onInitialPointerMove); 3902 document.removeEventListener('mousedown', onInitialPointerMove); 3903 document.removeEventListener('mouseup', onInitialPointerMove); 3904 document.removeEventListener('pointermove', onInitialPointerMove); 3905 document.removeEventListener('pointerdown', onInitialPointerMove); 3906 document.removeEventListener('pointerup', onInitialPointerMove); 3907 document.removeEventListener('touchmove', onInitialPointerMove); 3908 document.removeEventListener('touchstart', onInitialPointerMove); 3909 document.removeEventListener('touchend', onInitialPointerMove); 3910 } 3911 /** 3912 * When the polfyill first loads, assume the user is in keyboard modality. 3913 * If any event is received from a pointing device (e.g. mouse, pointer, 3914 * touch), turn off keyboard modality. 3915 * This accounts for situations where focus enters the page from the URL bar. 3916 * @param {Event} e 3917 */ 3918 3919 3920 function onInitialPointerMove(e) { 3921 // Work around a Safari quirk that fires a mousemove on <html> whenever the 3922 // window blurs, even if you're tabbing out of the page. ¯\_(ã)_/¯ 3923 if (e.target.nodeName && e.target.nodeName.toLowerCase() === 'html') { 3924 return; 3925 } 3926 3927 hadKeyboardEvent = false; 3928 removeInitialPointerMoveListeners(); 3929 } // For some kinds of state, we are interested in changes at the global scope 3930 // only. For example, global pointer input, global key presses and global 3931 // visibility change should affect the state at every scope: 3932 3933 3934 document.addEventListener('keydown', onKeyDown, true); 3935 document.addEventListener('mousedown', onPointerDown, true); 3936 document.addEventListener('pointerdown', onPointerDown, true); 3937 document.addEventListener('touchstart', onPointerDown, true); 3938 document.addEventListener('visibilitychange', onVisibilityChange, true); 3939 addInitialPointerMoveListeners(); // For focus and blur, we specifically care about state changes in the local 3940 // scope. This is because focus / blur events that originate from within a 3941 // shadow root are not re-dispatched from the host element if it was already 3942 // the active element in its own scope: 3943 3944 scope.addEventListener('focus', onFocus, true); 3945 scope.addEventListener('blur', onBlur, true); // We detect that a node is a ShadowRoot by ensuring that it is a 3946 // DocumentFragment and also has a host property. This check covers native 3947 // implementation and polyfill implementation transparently. If we only cared 3948 // about the native implementation, we could just check if the scope was 3949 // an instance of a ShadowRoot. 3950 3951 if (scope.nodeType === Node.DOCUMENT_FRAGMENT_NODE && scope.host) { 3952 // Since a ShadowRoot is a special kind of DocumentFragment, it does not 3953 // have a root element to add a class to. So, we add this attribute to the 3954 // host element instead: 3955 scope.host.setAttribute('data-js-focus-visible', ''); 3956 } else if (scope.nodeType === Node.DOCUMENT_NODE) { 3957 document.documentElement.classList.add('js-focus-visible'); 3958 document.documentElement.setAttribute('data-js-focus-visible', ''); 3959 } 3960} // It is important to wrap all references to global window and document in 3961// these checks to support server-side rendering use cases 3962// @see https://github.com/WICG/focus-visible/issues/199 3963 3964 3965if (typeof window !== 'undefined' && typeof document !== 'undefined') { 3966 // Make the polyfill helper globally available. This can be used as a signal 3967 // to interested libraries that wish to coordinate with the polyfill for e.g., 3968 // applying the polyfill to a shadow root: 3969 window.applyFocusVisiblePolyfill = applyFocusVisiblePolyfill; // Notify interested libraries of the polyfill's presence, in case the 3970 // polyfill was loaded lazily: 3971 3972 var event; 3973 3974 try { 3975 event = new CustomEvent('focus-visible-polyfill-ready'); 3976 } catch (error) { 3977 // IE11 does not support using CustomEvent as a constructor directly: 3978 event = document.createEvent('CustomEvent'); 3979 event.initCustomEvent('focus-visible-polyfill-ready', false, false, {}); 3980 } 3981 3982 window.dispatchEvent(event); 3983} 3984 3985if (typeof document !== 'undefined') { 3986 // Apply the polyfill to the global document, so that no JavaScript 3987 // coordination is required to use the polyfill in the top-level document: 3988 applyFocusVisiblePolyfill(document); 3989} 3990 3991/***/ }), 3992
vendor: 36,980 bytes, lines 3993-4204
3993/***/ "./node_modules/fslightbox/index.js": 3994/*!******************************************!*\ 3995 !*** ./node_modules/fslightbox/index.js ***! 3996 \******************************************/ 3997/***/ ((module) => { 3998 3999!function(e,t){if(true)module.exports=t();else { var o, n; }}(window,(function(){return function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){"use strict";n.r(t);var o,r="fslightbox-",i="".concat(r,"styles"),s="".concat(r,"cursor-grabbing"),c="".concat(r,"full-dimension"),a="".concat(r,"flex-centered"),l="".concat(r,"open"),u="".concat(r,"transform-transition"),d="".concat(r,"absoluted"),p="".concat(r,"slide-btn"),f="".concat(p,"-container"),h="".concat(r,"fade-in"),m="".concat(r,"fade-out"),g=h+"-strong",v=m+"-strong",b="".concat(r,"opacity-"),x="".concat(b,"1"),y="".concat(r,"source");function S(e){return(S="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}"object"===("undefined"==typeof document?"undefined":S(document))&&((o=document.createElement("style")).className=i,o.appendChild(document.createTextNode(".fslightbox-absoluted{position:absolute;top:0;left:0}.fslightbox-fade-in{animation:fslightbox-fade-in .3s cubic-bezier(0,0,.7,1)}.fslightbox-fade-out{animation:fslightbox-fade-out .3s ease}.fslightbox-fade-in-strong{animation:fslightbox-fade-in-strong .3s cubic-bezier(0,0,.7,1)}.fslightbox-fade-out-strong{animation:fslightbox-fade-out-strong .3s ease}@keyframes fslightbox-fade-in{from{opacity:.65}to{opacity:1}}@keyframes fslightbox-fade-out{from{opacity:.35}to{opacity:0}}@keyframes fslightbox-fade-in-strong{from{opacity:.3}to{opacity:1}}@keyframes fslightbox-fade-out-strong{from{opacity:1}to{opacity:0}}.fslightbox-cursor-grabbing{cursor:grabbing}.fslightbox-full-dimension{width:100%;height:100%}.fslightbox-open{overflow:hidden;height:100%}.fslightbox-flex-centered{display:flex;justify-content:center;align-items:center}.fslightbox-opacity-0{opacity:0!important}.fslightbox-opacity-1{opacity:1!important}.fslightbox-scrollbarfix{padding-right:17px}.fslightbox-transform-transition{transition:transform .3s}.fslightbox-container{font-family:Arial,sans-serif;position:fixed;top:0;left:0;background:linear-gradient(rgba(30,30,30,.9),#000 1810%);touch-action:pinch-zoom;z-index:1000000000;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.fslightbox-container *{box-sizing:border-box}.fslightbox-svg-path{transition:fill .15s ease;fill:#ddd}.fslightbox-nav{height:45px;width:100%;position:absolute;top:0;left:0}.fslightbox-slide-number-container{display:flex;justify-content:center;align-items:center;position:relative;height:100%;font-size:15px;color:#d7d7d7;z-index:0;max-width:55px;text-align:left}.fslightbox-slide-number-container .fslightbox-flex-centered{height:100%}.fslightbox-slash{display:block;margin:0 5px;width:1px;height:12px;transform:rotate(15deg);background:#fff}.fslightbox-toolbar{position:absolute;z-index:3;right:0;top:0;height:100%;display:flex;background:rgba(35,35,35,.65)}.fslightbox-toolbar-button{height:100%;width:45px;cursor:pointer}.fslightbox-toolbar-button:hover .fslightbox-svg-path{fill:#fff}.fslightbox-slide-btn-container{display:flex;align-items:center;padding:12px 12px 12px 6px;position:absolute;top:50%;cursor:pointer;z-index:3;transform:translateY(-50%)}@media (min-width:476px){.fslightbox-slide-btn-container{padding:22px 22px 22px 6px}}@media (min-width:768px){.fslightbox-slide-btn-container{padding:30px 30px 30px 6px}}.fslightbox-slide-btn-container:hover .fslightbox-svg-path{fill:#f1f1f1}.fslightbox-slide-btn{padding:9px;font-size:26px;background:rgba(35,35,35,.65)}@media (min-width:768px){.fslightbox-slide-btn{padding:10px}}@media (min-width:1600px){.fslightbox-slide-btn{padding:11px}}.fslightbox-slide-btn-container-previous{left:0}@media (max-width:475.99px){.fslightbox-slide-btn-container-previous{padding-left:3px}}.fslightbox-slide-btn-container-next{right:0;padding-left:12px;padding-right:3px}@media (min-width:476px){.fslightbox-slide-btn-container-next{padding-left:22px}}@media (min-width:768px){.fslightbox-slide-btn-container-next{padding-left:30px}}@media (min-width:476px){.fslightbox-slide-btn-container-next{padding-right:6px}}.fslightbox-down-event-detector{position:absolute;z-index:1}.fslightbox-slide-swiping-hoverer{z-index:4}.fslightbox-invalid-file-wrapper{font-size:22px;color:#eaebeb;margin:auto}.fslightbox-video{object-fit:cover}.fslightbox-youtube-iframe{border:0}.fslightbox-loader{display:block;margin:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:67px;height:67px}.fslightbox-loader div{box-sizing:border-box;display:block;position:absolute;width:54px;height:54px;margin:6px;border:5px solid;border-color:#999 transparent transparent transparent;border-radius:50%;animation:fslightbox-loader 1.2s cubic-bezier(.5,0,.5,1) infinite}.fslightbox-loader div:nth-child(1){animation-delay:-.45s}.fslightbox-loader div:nth-child(2){animation-delay:-.3s}.fslightbox-loader div:nth-child(3){animation-delay:-.15s}@keyframes fslightbox-loader{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.fslightbox-source{position:relative;z-index:2;opacity:0}")),document.head.appendChild(o));function w(e){var t,n=e.props,o=0,r={};this.getSourceTypeFromLocalStorageByUrl=function(e){return t[e]?t[e]:i(e)},this.handleReceivedSourceTypeForUrl=function(e,n){!1===r[n]&&(o--,"invalid"!==e?r[n]=e:delete r[n],0===o&&(!function(e,t){for(var n in t)e[n]=t[n]}(t,r),localStorage.setItem("fslightbox-types",JSON.stringify(t))))};var i=function(e){o++,r[e]=!1};n.disableLocalStorage?(this.getSourceTypeFromLocalStorageByUrl=function(){},this.handleReceivedSourceTypeForUrl=function(){}):(t=JSON.parse(localStorage.getItem("fslightbox-types")))||(t={},this.getSourceTypeFromLocalStorageByUrl=i)}function L(e,t,n,o){var r=e.data,i=e.elements.sources,s=n/o,c=0;this.adjustSize=function(){if((c=r.maxSourceWidth/s)<r.maxSourceHeight)return n<r.maxSourceWidth&&(c=o),a();c=o>r.maxSourceHeight?r.maxSourceHeight:o,a()};var a=function(){i[t].style.width=c*s+"px",i[t].style.height=c+"px"}}function C(e,t){var n=this,o=e.collections.sourceSizers,r=e.elements,i=r.sourceAnimationWrappers,s=r.sourceMainWrappers,c=r.sources,a=e.resolve;function l(e,n){o[t]=a(L,[t,e,n]),o[t].adjustSize()}this.runActions=function(e,o){c[t].classList.add(x),i[t].classList.add(g),s[t].removeChild(s[t].firstChild),l(e,o),n.runActions=l}}function F(e,t){var n,o=this,r=e.elements.sources,i=e.props,s=(0,e.resolve)(C,[t]);this.handleImageLoad=function(e){var t=e.target,n=t.naturalWidth,o=t.naturalHeight;s.runActions(n,o)},this.handleVideoLoad=function(e){var t=e.target,o=t.videoWidth,r=t.videoHeight;n=!0,s.runActions(o,r)},this.handleNotMetaDatedVideoLoad=function(){n||o.handleYoutubeLoad()},this.handleYoutubeLoad=function(){var e=1920,t=1080;i.maxYoutubeDimensions&&(e=i.maxYoutubeDimensions.width,t=i.maxYoutubeDimensions.height),s.runActions(e,t)},this.handleCustomLoad=function(){setTimeout((function(){var e=r[t];s.runActions(e.offsetWidth,e.offsetHeight)}))}}function A(e,t,n){var o=e.elements.sources,r=e.props.customClasses,i=r[t]?r[t]:"";o[t].className=n+" "+i}function I(e,t){var n=e.elements.sources,o=e.props.customAttributes;for(var r in o[t])n[t].setAttribute(r,o[t][r])}function T(e,t){var n=e.collections.sourceLoadHandlers,o=e.elements,r=o.sources,i=o.sourceAnimationWrappers,s=e.props.sources;r[t]=document.createElement("img"),A(e,t,y),r[t].src=s[t],r[t].onload=n[t].handleImageLoad,I(e,t),i[t].appendChild(r[t])}function E(e,t){var n=e.collections.sourceLoadHandlers,o=e.elements,r=o.sources,i=o.sourceAnimationWrappers,s=e.props,c=s.sources,a=s.videosPosters;r[t]=document.createElement("video"),A(e,t,y),r[t].src=c[t],r[t].onloadedmetadata=function(e){n[t].handleVideoLoad(e)},r[t].controls=!0,I(e,t),a[t]&&(r[t].poster=a[t]);var l=document.createElement("source");l.src=c[t],r[t].appendChild(l),setTimeout(n[t].handleNotMetaDatedVideoLoad,3e3),i[t].appendChild(r[t])}function N(e,t){var n=e.collections.sourceLoadHandlers,o=e.elements,i=o.sources,s=o.sourceAnimationWrappers,c=e.props.sources;i[t]=document.createElement("iframe"),A(e,t,"".concat(y," ").concat(r,"youtube-iframe")),i[t].src="https://www.youtube.com/embed/".concat(c[t].match(/^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|\&v=)([^#\&\?]*).*/)[2],"?enablejsapi=1"),i[t].allowFullscreen=!0,I(e,t),s[t].appendChild(i[t]),n[t].handleYoutubeLoad()}function W(e,t){var n=e.collections.sourceLoadHandlers,o=e.elements,r=o.sources,i=o.sourceAnimationWrappers,s=e.props.sources;r[t]=s[t],A(e,t,"".concat(r[t].className," ").concat(y)),i[t].appendChild(r[t]),n[t].handleCustomLoad()}function z(e,t){var n=e.elements,o=n.sources,i=n.sourceAnimationWrappers,s=n.sourceMainWrappers;e.props.sources;o[t]=document.createElement("div"),o[t].className="".concat(r,"invalid-file-wrapper ").concat(a),o[t].innerHTML="Invalid source",i[t].classList.add(g),i[t].appendChild(o[t]),s[t].removeChild(s[t].firstChild)}function M(e){var t=e.collections,n=t.sourceLoadHandlers,o=t.sourcesRenderFunctions,r=e.core.sourceDisplayFacade,i=e.resolve;this.runActionsForSourceTypeAndIndex=function(t,s){var c;switch("invalid"!==t&&(n[s]=i(F,[s])),t){case"image":c=T;break;case"video":c=E;break;case"youtube":c=N;break;case"custom":c=W;break;default:c=z}o[s]=function(){return c(e,s)},r.displaySourcesWhichShouldBeDisplayed()}}function P(){var e,t,n,o={isUrlYoutubeOne:function(e){var t=document.createElement("a");return t.href=e,"www.youtube.com"===t.hostname},getTypeFromResponseContentType:function(e){return e.slice(0,e.indexOf("/"))}};function r(){if(4!==n.readyState){if(2===n.readyState){var e;switch(o.getTypeFromResponseContentType(n.getResponseHeader("content-type"))){case"image":e="image";break;case"video":e="video";break;default:e="invalid"}n.onreadystatechange=null,n.abort(),t(e)}}else t("invalid")}this.setUrlToCheck=function(t){e=t},this.getSourceType=function(i){if(o.isUrlYoutubeOne(e))return i("youtube");t=i,(n=new XMLHttpRequest).onreadystatechange=r,n.open("GET",e,!0),n.send()}}function H(e,t,n){var o=e.props,r=o.types,i=o.type,s=o.sources,c=e.resolve;this.getTypeSetByClientForIndex=function(e){var t;return r&&r[e]?t=r[e]:i&&(t=i),t},this.retrieveTypeWithXhrForIndex=function(e){var o=c(P);o.setUrlToCheck(s[e]),o.getSourceType((function(o){t.handleReceivedSourceTypeForUrl(o,s[e]),n.runActionsForSourceTypeAndIndex(o,e)}))}}function k(e,t){var n=e.componentsServices.hideSourceLoaderIfNotYetCollection,o=e.elements,r=o.sourceWrappersContainer,i=o.sourceMainWrappers;i[t]=document.createElement("div"),i[t].className="".concat(d," ").concat(c," ").concat(a),i[t].innerHTML='<div class="fslightbox-loader"><div></div><div></div><div></div><div></div></div>';var s=i[t].firstChild;n[t]=function(){i[t].contains(s)&&i[t].removeChild(s)},r.appendChild(i[t]),function(e,t){var n=e.elements,o=n.sourceMainWrappers,r=n.sourceAnimationWrappers;r[t]=document.createElement("div"),o[t].appendChild(r[t])}(e,t)}function O(e,t,n,o){var i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.setAttributeNS(null,"width",t),i.setAttributeNS(null,"height",t),i.setAttributeNS(null,"viewBox",n);var s=document.createElementNS("http://www.w3.org/2000/svg","path");return s.setAttributeNS(null,"class","".concat(r,"svg-path")),s.setAttributeNS(null,"d",o),i.appendChild(s),e.appendChild(i),i}function R(e,t){var n=document.createElement("div");return n.className="".concat(r,"toolbar-button ").concat(a),n.title=t,e.appendChild(n),n}function D(e,t){var n=document.createElement("div");n.className="".concat(r,"toolbar"),t.appendChild(n),function(e,t){var n=e.componentsServices,o=e.core.fullscreenToggler,r=e.data,i="M4.5 11H3v4h4v-1.5H4.5V11zM3 7h1.5V4.5H7V3H3v4zm10.5 6.5H11V15h4v-4h-1.5v2.5zM11 3v1.5h2.5V7H15V3h-4z",s=R(t);s.title="Enter fullscreen";var c=O(s,"20px","0 0 18 18",i);n.enterFullscreen=function(){r.isFullscreenOpen=!0,s.title="Exit fullscreen",c.setAttributeNS(null,"width","24px"),c.setAttributeNS(null,"height","24px"),c.setAttributeNS(null,"viewBox","0 0 950 1024"),c.firstChild.setAttributeNS(null,"d","M682 342h128v84h-212v-212h84v128zM598 810v-212h212v84h-128v128h-84zM342 342v-128h84v212h-212v-84h128zM214 682v-84h212v212h-84v-128h-128z")},n.exitFullscreen=function(){r.isFullscreenOpen=!1,s.title="Enter fullscreen",c.setAttributeNS(null,"width","20px"),c.setAttributeNS(null,"height","20px"),c.setAttributeNS(null,"viewBox","0 0 18 18"),c.firstChild.setAttributeNS(null,"d",i)},s.onclick=function(){r.isFullscreenOpen?o.exitFullscreen():o.enterFullscreen()}}(e,n),function(e,t){var n=R(t,"Close");n.onclick=e.core.lightboxCloser.closeLightbox,O(n,"20px","0 0 24 24","M 4.7070312 3.2929688 L 3.2929688 4.7070312 L 10.585938 12 L 3.2929688 19.292969 L 4.7070312 20.707031 L 12 13.414062 L 19.292969 20.707031 L 20.707031 19.292969 L 13.414062 12 L 20.707031 4.7070312 L 19.292969 3.2929688 L 12 10.585938 L 4.7070312 3.2929688 z")}(e,n)}function j(e){var t=e.props.sources,n=e.elements.container,o=document.createElement("div");o.className="".concat(r,"nav"),n.appendChild(o),D(e,o),t.length>1&&function(e,t){var n=e.componentsServices,o=e.props.sources,i=(e.stageIndexes,document.createElement("div"));i.className="".concat(r,"slide-number-container");var s=document.createElement("div");s.className=a;var c=document.createElement("span");n.setSlideNumber=function(e){return c.innerHTML=e};var l=document.createElement("span");l.className="".concat(r,"slash");var u=document.createElement("div");u.innerHTML=o.length,i.appendChild(s),s.appendChild(c),s.appendChild(l),s.appendChild(u),t.appendChild(i),setTimeout((function(){s.offsetWidth>55&&(i.style.justifyContent="flex-start")}))}(e,o)}function X(e,t){var n=this,o=e.elements.sourceMainWrappers,r=e.props,i=0;this.byValue=function(e){return i=e,n},this.negative=function(){s(-c())},this.zero=function(){s(0)},this.positive=function(){s(c())};var s=function(e){o[t].style.transform="translateX(".concat(e+i,"px)"),i=0},c=function(){return(1+r.slideDistance)*innerWidth}}function B(e,t,n,o){var r=e.elements.container,i=n.charAt(0).toUpperCase()+n.slice(1),s=document.createElement("div");s.className="".concat(f," ").concat(f,"-").concat(n),s.title="".concat(i," slide"),s.onclick=t,function(e,t){var n=document.createElement("div");n.className="".concat(p," ").concat(a),O(n,"20px","0 0 20 20",t),e.appendChild(n)}(s,o),r.appendChild(s)}function U(e,t){var n=e.classList;n.contains(t)&&n.remove(t)}function V(e){var t=this,n=e.core,o=n.eventsDispatcher,r=n.fullscreenToggler,i=n.globalEventsController,s=n.scrollbarRecompensor,c=e.data,a=e.elements,u=e.props,d=e.sourcePointerProps;this.isLightboxFadingOut=!1,this.runActions=function(){t.isLightboxFadingOut=!0,a.container.classList.add(v),i.removeListeners(),u.exitFullscreenOnClose&&c.isFullscreenOpen&&r.exitFullscreen(),setTimeout((function(){t.isLightboxFadingOut=!1,d.isPointering=!1,a.container.classList.remove(v),document.documentElement.classList.remove(l),s.removeRecompense(),document.body.removeChild(a.container),o.dispatch("onClose")}),270)}}function Y(e){var t,n,o,r=e.collections.sourceMainWrappersTransformers,i=e.componentsServices,s=e.core,c=s.classFacade,a=s.slideIndexChanger,l=s.sourceDisplayFacade,d=s.stageManager,p=e.elements.sourceAnimationWrappers,f=e.stageIndexes,v=(t=function(){c.removeFromEachElementClassIfContains("sourceAnimationWrappers",m)},n=300,o=[],function(){o.push(!0),setTimeout((function(){o.pop(),o.length||t()}),n)});a.changeTo=function(e){f.current=e,d.updateStageIndexes(),i.setSlideNumber(e+1),l.displaySourcesWhichShouldBeDisplayed()},a.jumpTo=function(e){var t=f.current;a.changeTo(e),c.removeFromEachElementClassIfContains("sourceMainWrappers",u),U(p[t],g),U(p[t],h),p[t].classList.add(m),U(p[e],g),U(p[e],m),p[e].classList.add(h),v(),r[e].zero(),setTimeout((function(){t!==f.current&&r[t].negative()}),270)}}function _(e){var t=e.core,n=t.lightboxCloser,o=t.fullscreenToggler,r=t.slideChangeFacade;this.listener=function(e){switch(e.key){case"Escape":n.closeLightbox();break;case"ArrowLeft":r.changeToPrevious();break;case"ArrowRight":r.changeToNext();break;case"F11":e.preventDefault(),o.enterFullscreen()}}}function q(e){var t=e.collections.sourceMainWrappersTransformers,n=e.elements,o=e.sourcePointerProps,r=e.stageIndexes;function i(e,n){t[e].byValue(o.swipedX)[n]()}this.runActionsForEvent=function(e){var t,c,a;n.container.contains(n.slideSwipingHoverer)||n.container.appendChild(n.slideSwipingHoverer),t=n.container,c=s,(a=t.classList).contains(c)||a.add(c),o.swipedX=e.screenX-o.downScreenX,i(r.current,"zero"),void 0!==r.previous&&o.swipedX>0?i(r.previous,"negative"):void 0!==r.next&&o.swipedX<0&&i(r.next,"positive")}}function J(e){var t=e.props.sources,n=e.resolve,o=e.sourcePointerProps,r=n(q);1===t.length?this.listener=function(){o.swipedX=1}:this.listener=function(e){o.isPointering&&r.runActionsForEvent(e)}}function G(e){var t=e.collections.sourceMainWrappersTransformers,n=e.core.slideIndexChanger,o=e.elements.sourceMainWrappers,r=e.stageIndexes;this.runPositiveSwipedXActions=function(){void 0===r.previous||(i("positive"),n.changeTo(r.previous)),i("zero")},this.runNegativeSwipedXActions=function(){void 0===r.next||(i("negative"),n.changeTo(r.next)),i("zero")};var i=function(e){o[r.current].classList.add(u),t[r.current][e]()}}function $(e,t){e.contains(t)&&e.removeChild(t)}function K(e){var t=e.core.lightboxCloser,n=e.elements,o=e.resolve,r=e.sourcePointerProps,i=o(G);this.runNoSwipeActions=function(){$(n.container,n.slideSwipingHoverer),r.isSourceDownEventTarget||t.closeLightbox(),r.isPointering=!1},this.runActions=function(){r.swipedX>0?i.runPositiveSwipedXActions():i.runNegativeSwipedXActions(),$(n.container,n.slideSwipingHoverer),n.container.classList.remove(s),r.isPointering=!1}}function Q(e){var t=e.resolve,n=e.sourcePointerProps,o=t(K);this.listener=function(){n.isPointering&&(n.swipedX?o.runActions():o.runNoSwipeActions())}}function Z(e){var t,n,o;n=(t=e).core.classFacade,o=t.elements,n.removeFromEachElementClassIfContains=function(e,t){for(var n=0;n<o[e].length;n++)U(o[e][n],t)},function(e){var t=e.core.eventsDispatcher,n=e.props;t.dispatch=function(e){n[e]&&n[e]()}}(e),function(e){var t=e.componentsServices,n=e.core.fullscreenToggler;n.enterFullscreen=function(){t.enterFullscreen();var e=document.documentElement;e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullscreen?e.webkitRequestFullscreen():e.msRequestFullscreen&&e.msRequestFullscreen()},n.exitFullscreen=function(){t.exitFullscreen(),document.exitFullscreen?document.exitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.msExitFullscreen&&document.msExitFullscreen()}}(e),function(e){var t=e.core,n=t.globalEventsController,o=t.windowResizeActioner,r=e.resolve,i=r(_),s=r(J),c=r(Q);n.attachListeners=function(){document.addEventListener("pointermove",s.listener),document.addEventListener("pointerup",c.listener),addEventListener("resize",o.runActions),document.addEventListener("keydown",i.listener)},n.removeListeners=function(){document.removeEventListener("pointermove",s.listener),document.removeEventListener("pointerup",c.listener),removeEventListener("resize",o.runActions),document.removeEventListener("keydown",i.listener)}}(e),function(e){var t=e.core.lightboxCloser,n=(0,e.resolve)(V);t.closeLightbox=function(){n.isLightboxFadingOut||n.runActions()}}(e),ne(e),function(e){var t=e.data,n=e.core.scrollbarRecompensor;function o(){document.body.offsetHeight>innerHeight&&(document.body.style.marginRight=t.scrollbarWidth+"px")}n.addRecompense=function(){"complete"===document.readyState?o():addEventListener("load",(function(){o(),n.addRecompense=o}))},n.removeRecompense=function(){document.body.style.removeProperty("margin-right")}}(e),function(e){var t=e.core,n=t.slideChangeFacade,o=t.slideIndexChanger,r=t.stageManager;e.props.sources.length>1?(n.changeToPrevious=function(){o.jumpTo(r.getPreviousSlideIndex())},n.changeToNext=function(){o.jumpTo(r.getNextSlideIndex())}):(n.changeToPrevious=function(){},n.changeToNext=function(){})}(e),Y(e),function(e){var t=e.core,n=t.classFacade,o=t.sourcesPointerDown,r=e.elements.sources,i=e.sourcePointerProps,s=e.stageIndexes;o.listener=function(e){"VIDEO"!==e.target.tagName&&e.preventDefault(),i.isPointering=!0,i.downScreenX=e.screenX,i.swipedX=0;var t=r[s.current];t&&t.contains(e.target)?i.isSourceDownEventTarget=!0:i.isSourceDownEventTarget=!1,n.removeFromEachElementClassIfContains("sourceMainWrappers",u)}}(e),function(e){var t=e.collections.sourcesRenderFunctions,n=e.core.sourceDisplayFacade,o=e.props,r=e.stageIndexes;function i(e){t[e]&&(t[e](),delete t[e])}n.displaySourcesWhichShouldBeDisplayed=function(){if(o.loadOnlyCurrentSource)i(r.current);else for(var e in r)i(r[e])}}(e),function(e){var t=e.stageIndexes,n=e.core.stageManager,o=e.props.sources.length-1;n.getPreviousSlideIndex=function(){return 0===t.current?o:t.current-1},n.getNextSlideIndex=function(){return t.current===o?0:t.current+1},n.updateStageIndexes=0===o?function(){}:1===o?function(){0===t.current?(t.next=1,delete t.previous):(t.previous=0,delete t.next)}:function(){t.previous=n.getPreviousSlideIndex(),t.next=n.getNextSlideIndex()},n.isSourceInStage=o<=2?function(){return!0}:function(e){var n=t.current;if(0===n&&e===o||n===o&&0===e)return!0;var r=n-e;return-1===r||0===r||1===r}}(e),function(e){var t=e.collections,n=t.sourceMainWrappersTransformers,o=t.sourceSizers,r=e.core.windowResizeActioner,i=e.data,s=e.elements.sourceMainWrappers,c=e.props,a=e.stageIndexes;r.runActions=function(){innerWidth<992?i.maxSourceWidth=innerWidth:i.maxSourceWidth=.9*innerWidth,i.maxSourceHeight=.9*innerHeight;for(var e=0;e<c.sources.length;e++)U(s[e],u),e!==a.current&&n[e].negative(),o[e]&&o[e].adjustSize()}}(e)}function ee(e){var t=e.props.disableLocalStorage;if(!t){var n=localStorage.getItem("fslightbox-scrollbar-width");if(n)return n}var o=function(){var e=document.createElement("div"),t=e.style;return t.visibility="hidden",t.width="100px",t.msOverflowStyle="scrollbar",t.overflow="scroll",e}(),r=function(){var e=document.createElement("div");return e.style.width="100%",e}();document.body.appendChild(o);var i=o.offsetWidth;o.appendChild(r);var s=r.offsetWidth;document.body.removeChild(o);var c=i-s;return t||localStorage.setItem("fslightbox-scrollbar-width",c.toString()),c}function te(e){var t=e.core.eventsDispatcher,n=e.data,o=e.elements,i=e.props.sources;n.isInitialized=!0,n.scrollbarWidth=ee(e),function(e){for(var t=e.collections.sourceMainWrappersTransformers,n=e.props.sources,o=e.resolve,r=0;r<n.length;r++)t[r]=o(X,[r])}(e),Z(e),o.container=document.createElement("div"),o.container.className="".concat(r,"container ").concat(c," ").concat(g),function(e){var t=e.elements;t.slideSwipingHoverer=document.createElement("div"),t.slideSwipingHoverer.className="".concat(r,"slide-swiping-hoverer ").concat(c," ").concat(d)}(e),j(e),function(e){var t=e.core.sourcesPointerDown,n=e.elements,o=e.props.sources,r=document.createElement("div");r.className="".concat(d," ").concat(c),n.container.appendChild(r),r.addEventListener("pointerdown",t.listener),n.sourceWrappersContainer=r;for(var i=0;i<o.length;i++)k(e,i)}(e),i.length>1&&function(e){var t=e.core.slideChangeFacade;B(e,t.changeToPrevious,"previous","M18.271,9.212H3.615l4.184-4.184c0.306-0.306,0.306-0.801,0-1.107c-0.306-0.306-0.801-0.306-1.107,0L1.21,9.403C1.194,9.417,1.174,9.421,1.158,9.437c-0.181,0.181-0.242,0.425-0.209,0.66c0.005,0.038,0.012,0.071,0.022,0.109c0.028,0.098,0.075,0.188,0.142,0.271c0.021,0.026,0.021,0.061,0.045,0.085c0.015,0.016,0.034,0.02,0.05,0.033l5.484,5.483c0.306,0.307,0.801,0.307,1.107,0c0.306-0.305,0.306-0.801,0-1.105l-4.184-4.185h14.656c0.436,0,0.788-0.353,0.788-0.788S18.707,9.212,18.271,9.212z"),B(e,t.changeToNext,"next","M1.729,9.212h14.656l-4.184-4.184c-0.307-0.306-0.307-0.801,0-1.107c0.305-0.306,0.801-0.306,1.106,0l5.481,5.482c0.018,0.014,0.037,0.019,0.053,0.034c0.181,0.181,0.242,0.425,0.209,0.66c-0.004,0.038-0.012,0.071-0.021,0.109c-0.028,0.098-0.075,0.188-0.143,0.271c-0.021,0.026-0.021,0.061-0.045,0.085c-0.015,0.016-0.034,0.02-0.051,0.033l-5.483,5.483c-0.306,0.307-0.802,0.307-1.106,0c-0.307-0.305-0.307-0.801,0-1.105l4.184-4.185H1.729c-0.436,0-0.788-0.353-0.788-0.788S1.293,9.212,1.729,9.212z")}(e),function(e){for(var t=e.props.sources,n=e.resolve,o=n(w),r=n(M),i=n(H,[o,r]),s=0;s<t.length;s++)if("string"==typeof t[s]){var c=i.getTypeSetByClientForIndex(s);if(c)r.runActionsForSourceTypeAndIndex(c,s);else{var a=o.getSourceTypeFromLocalStorageByUrl(t[s]);a?r.runActionsForSourceTypeAndIndex(a,s):i.retrieveTypeWithXhrForIndex(s)}}else r.runActionsForSourceTypeAndIndex("custom",s)}(e),t.dispatch("onInit")}function ne(e){var t=e.collections.sourceMainWrappersTransformers,n=e.componentsServices,o=e.core,r=o.eventsDispatcher,i=o.lightboxOpener,s=o.globalEventsController,c=o.scrollbarRecompensor,a=o.sourceDisplayFacade,u=o.stageManager,d=o.windowResizeActioner,p=e.data,f=e.elements,h=e.stageIndexes;i.open=function(){var o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;h.current=o,p.isInitialized?r.dispatch("onShow"):te(e),u.updateStageIndexes(),a.displaySourcesWhichShouldBeDisplayed(),n.setSlideNumber(o+1),document.body.appendChild(f.container),document.documentElement.classList.add(l),c.addRecompense(),s.attachListeners(),d.runActions(),t[h.current].zero(),r.dispatch("onOpen")}}function oe(e,t,n){return(oe=re()?Reflect.construct:function(e,t,n){var o=[null];o.push.apply(o,t);var r=new(Function.bind.apply(e,o));return n&&ie(r,n.prototype),r}).apply(null,arguments)}function re(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}function ie(e,t){return(ie=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function se(e){return function(e){if(Array.isArray(e))return ce(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return ce(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ce(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ce(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}function ae(){for(var e=document.getElementsByTagName("a"),t=function(t){if(!e[t].hasAttribute("data-fslightbox"))return"continue";var n=e[t].getAttribute("data-fslightbox"),o=e[t].getAttribute("href");fsLightboxInstances[n]||(fsLightboxInstances[n]=new FsLightbox);var r=null;"#"===o.charAt(0)?(r=document.getElementById(o.substring(1)).cloneNode(!0)).removeAttribute("id"):r=o,fsLightboxInstances[n].props.sources.push(r),fsLightboxInstances[n].elements.a.push(e[t]);var i=fsLightboxInstances[n].props.sources.length-1;e[t].onclick=function(e){e.preventDefault(),fsLightboxInstances[n].open(i)},d("types","data-type"),d("videosPosters","data-video-poster"),d("customClasses","data-class"),d("customClasses","data-custom-class");for(var s=["href","data-fslightbox","data-type","data-video-poster","data-class","data-custom-class"],c=e[t].attributes,a=fsLightboxInstances[n].props.customAttributes,l=0;l<c.length;l++)if(-1===s.indexOf(c[l].name)&&"data-"===c[l].name.substr(0,5)){a[i]||(a[i]={});var u=c[l].name.substr(5);a[i][u]=c[l].value}function d(o,r){e[t].hasAttribute(r)&&(fsLightboxInstances[n].props[o][i]=e[t].getAttribute(r))}},n=0;n<e.length;n++)t(n);var o=Object.keys(fsLightboxInstances);window.fsLightbox=fsLightboxInstances[o[o.length-1]]}window.FsLightbox=function(){var e=this;this.props={sources:[],customAttributes:[],customClasses:[],types:[],videosPosters:[],slideDistance:.3},this.data={isInitialized:!1,isFullscreenOpen:!1,maxSourceWidth:0,maxSourceHeight:0,scrollbarWidth:0},this.sourcePointerProps={downScreenX:null,isPointering:!1,isSourceDownEventTarget:!1,swipedX:0},this.stageIndexes={},this.elements={a:[],container:null,slideSwipingHoverer:null,sourceWrappersContainer:null,sources:[],sourceMainWrappers:[],sourceAnimationWrappers:[]},this.componentsServices={enterFullscreen:null,exitFullscreen:null,hideSourceLoaderIfNotYetCollection:[],setSlideNumber:function(){}},this.resolve=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return n.unshift(e),oe(t,se(n))},this.collections={sourceMainWrappersTransformers:[],sourceLoadHandlers:[],sourcesRenderFunctions:[],sourceSizers:[]},this.core={classFacade:{},eventsDispatcher:{},fullscreenToggler:{},globalEventsController:{},lightboxCloser:{},lightboxOpener:{},lightboxUpdater:{},scrollbarRecompensor:{},slideChangeFacade:{},slideIndexChanger:{},sourcesPointerDown:{},sourceDisplayFacade:{},stageManager:{},windowResizeActioner:{}},ne(this),this.open=function(t){return e.core.lightboxOpener.open(t)},this.close=function(){return e.core.lightboxCloser.closeLightbox()}},window.fsLightboxInstances={},ae(),window.refreshFsLightbox=function(){for(var e in fsLightboxInstances){var t=fsLightboxInstances[e].props;fsLightboxInstances[e]=new FsLightbox,fsLightboxInstances[e].props=t,fsLightboxInstances[e].props.sources=[],fsLightboxInstances[e].elements.a=[]}ae()}}])})); 4000 4001/***/ }), 4002 4003// /***/ "./node_modules/graph-modal/src/graph-modal.js": 4004// /*!*****************************************************!*\ 4005// !*** ./node_modules/graph-modal/src/graph-modal.js ***! 4006// \*****************************************************/ 4007// /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 4008// 4009// "use strict"; 4010// __webpack_require__.r(__webpack_exports__); 4011// /* harmony export */ __webpack_require__.d(__webpack_exports__, { 4012// /* harmony export */ "default": () => (/* binding */ GraphModal) 4013// /* harmony export */ }); 4014// class GraphModal { 4015// constructor(options) { 4016// let defaultOptions = { 4017// isOpen: () => {}, 4018// isClose: () => {}, 4019// } 4020// this.options = Object.assign(defaultOptions, options); 4021// this.modal = document.querySelector('.graph-modal'); 4022// this.speed = 300; 4023// this.animation = 'fade'; 4024// this._reOpen = false; 4025// this._nextContainer = false; 4026// this.modalContainer = false; 4027// this.isOpen = false; 4028// this.previousActiveElement = false; 4029// this._focusElements = [ 4030// 'a[href]', 4031// 'input', 4032// 'select', 4033// 'textarea', 4034// 'button', 4035// 'iframe', 4036// '[contenteditable]', 4037// '[tabindex]:not([tabindex^="-"])' 4038// ]; 4039// this._fixBlocks = document.querySelectorAll('.fix-block'); 4040// this.events(); 4041// } 4042// 4043// events() { 4044// if (this.modal) { 4045// document.addEventListener('click', function (e) { 4046// const clickedElement = e.target.closest(`[data-graph-path]`); 4047// if (clickedElement) { 4048// let target = clickedElement.dataset.graphPath; 4049// let animation = clickedElement.dataset.graphAnimation; 4050// let speed = clickedElement.dataset.graphSpeed; 4051// this.animation = animation ? animation : 'fade'; 4052// this.speed = speed ? parseInt(speed) : 300; 4053// this._nextContainer = document.querySelector(`[data-graph-target="${target}"]`); 4054// this.open(); 4055// return; 4056// } 4057// 4058// if (e.target.closest('.js-modal-close')) { 4059// this.close(); 4060// return; 4061// } 4062// }.bind(this)); 4063// 4064// window.addEventListener('keydown', function (e) { 4065// if (e.keyCode == 27 && this.isOpen) { 4066// this.close(); 4067// } 4068// 4069// if (e.which == 9 && this.isOpen) { 4070// this.focusCatch(e); 4071// return; 4072// } 4073// }.bind(this)); 4074// 4075// document.addEventListener('click', function (e) { 4076// if (e.target.classList.contains('graph-modal') && e.target.classList.contains("is-open")) { 4077// this.close(); 4078// } 4079// }.bind(this)); 4080// } 4081// 4082// } 4083// 4084// open(selector) { 4085// this.previousActiveElement = document.activeElement; 4086// 4087// if (this.isOpen) { 4088// this.reOpen = true; 4089// this.close(); 4090// return; 4091// } 4092// 4093// this.modalContainer = this._nextContainer; 4094// 4095// if (selector) { 4096// this.modalContainer = document.querySelector(`[data-graph-target="${selector}"]`); 4097// } 4098// 4099// this.modalContainer.scrollTo(0, 0) 4100// 4101// this.modal.style.setProperty('--transition-time', `${this.speed / 1000}s`); 4102// this.modal.classList.add('is-open'); 4103// 4104// document.body.style.scrollBehavior = 'auto'; 4105// document.documentElement.style.scrollBehavior = 'auto'; 4106// 4107// this.disableScroll(); 4108// 4109// this.modalContainer.classList.add('graph-modal-open'); 4110// this.modalContainer.classList.add(this.animation); 4111// 4112// setTimeout(() => { 4113// this.options.isOpen(this); 4114// this.modalContainer.classList.add('animate-open'); 4115// this.isOpen = true; 4116// this.focusTrap(); 4117// }, this.speed); 4118// } 4119// 4120// close() { 4121// if (this.modalContainer) { 4122// this.modalContainer.classList.remove('animate-open'); 4123// this.modalContainer.classList.remove(this.animation); 4124// this.modal.classList.remove('is-open'); 4125// this.modalContainer.classList.remove('graph-modal-open'); 4126// 4127// this.enableScroll(); 4128// 4129// document.body.style.scrollBehavior = 'auto'; 4130// document.documentElement.style.scrollBehavior = 'auto'; 4131// 4132// this.options.isClose(this); 4133// this.isOpen = false; 4134// this.focusTrap(); 4135// 4136// if (this.reOpen) { 4137// this.reOpen = false; 4138// this.open(); 4139// } 4140// } 4141// } 4142// 4143// focusCatch(e) { 4144// const nodes = this.modalContainer.querySelectorAll(this._focusElements); 4145// const nodesArray = Array.prototype.slice.call(nodes); 4146// const focusedItemIndex = nodesArray.indexOf(document.activeElement) 4147// if (e.shiftKey && focusedItemIndex === 0) { 4148// nodesArray[nodesArray.length - 1].focus(); 4149// e.preventDefault(); 4150// } 4151// if (!e.shiftKey && focusedItemIndex === nodesArray.length - 1) { 4152// nodesArray[0].focus(); 4153// e.preventDefault(); 4154// } 4155// } 4156// 4157// focusTrap() { 4158// const nodes = this.modalContainer.querySelectorAll(this._focusElements); 4159// if (this.isOpen) { 4160// if (nodes.length) nodes[0].focus(); 4161// } else { 4162// this.previousActiveElement.focus(); 4163// } 4164// } 4165// 4166// disableScroll() { 4167// let pagePosition = window.scrollY; 4168// this.lockPadding(); 4169// document.body.classList.add('disable-scroll'); 4170// document.body.dataset.position = pagePosition; 4171// document.body.style.top = -pagePosition + 'px'; 4172// } 4173// 4174// enableScroll() { 4175// let pagePosition = parseInt(document.body.dataset.position, 10); 4176// this.unlockPadding(); 4177// document.body.style.top = 'auto'; 4178// document.body.classList.remove('disable-scroll'); 4179// window.scrollTo({ 4180// top: pagePosition, 4181// left: 0 4182// }); 4183// document.body.removeAttribute('data-position'); 4184// } 4185// 4186// lockPadding() { 4187// let paddingOffset = window.innerWidth - document.body.offsetWidth + 'px'; 4188// this._fixBlocks.forEach((el) => { 4189// el.style.paddingRight = paddingOffset; 4190// }); 4191// document.body.style.paddingRight = paddingOffset; 4192// } 4193// 4194// unlockPadding() { 4195// this._fixBlocks.forEach((el) => { 4196// el.style.paddingRight = '0px'; 4197// }); 4198// document.body.style.paddingRight = '0px'; 4199// } 4200// } 4201// 4202// 4203// /***/ }), 4204
vendor: 7,142 bytes, lines 4205-4216
4205/***/ "./node_modules/smooth-scroll/dist/smooth-scroll.polyfills.min.js": 4206/*!************************************************************************!*\ 4207 !*** ./node_modules/smooth-scroll/dist/smooth-scroll.polyfills.min.js ***! 4208 \************************************************************************/ 4209/***/ (function(module, exports, __webpack_require__) { 4210 4211var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! smooth-scroll v16.1.3 | (c) 2020 Chris Ferdinandi | MIT License | http://github.com/cferdinandi/smooth-scroll */ 4212window.Element&&!Element.prototype.closest&&(Element.prototype.closest=function(e){var t,n=(this.document||this.ownerDocument).querySelectorAll(e),o=this;do{for(t=n.length;0<=--t&&n.item(t)!==o;);}while(t<0&&(o=o.parentElement));return o}),(function(){if("function"==typeof window.CustomEvent)return;function e(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};var n=document.createEvent("CustomEvent");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n}e.prototype=window.Event.prototype,window.CustomEvent=e})(),(function(){for(var r=0,e=["ms","moz","webkit","o"],t=0;t<e.length&&!window.requestAnimationFrame;++t)window.requestAnimationFrame=window[e[t]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[e[t]+"CancelAnimationFrame"]||window[e[t]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(e,t){var n=(new Date).getTime(),o=Math.max(0,16-(n-r)),a=window.setTimeout((function(){e(n+o)}),o);return r=n+o,a}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(e){clearTimeout(e)})})(),(function(e,t){ true?!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function(){return t(e)}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), 4213 __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)):0})("undefined"!=typeof __webpack_require__.g?__webpack_require__.g:"undefined"!=typeof window?window:this,(function(M){"use strict";var q={ignore:"[data-scroll-ignore]",header:null,topOnEmptyHash:!0,speed:500,speedAsDuration:!1,durationMax:null,durationMin:null,clip:!0,offset:0,easing:"easeInOutCubic",customEasing:null,updateURL:!0,popstate:!0,emitEvents:!0},I=function(){var n={};return Array.prototype.forEach.call(arguments,(function(e){for(var t in e){if(!e.hasOwnProperty(t))return;n[t]=e[t]}})),n},r=function(e){"#"===e.charAt(0)&&(e=e.substr(1));for(var t,n=String(e),o=n.length,a=-1,r="",i=n.charCodeAt(0);++a<o;){if(0===(t=n.charCodeAt(a)))throw new InvalidCharacterError("Invalid character: the input contains U+0000.");1<=t&&t<=31||127==t||0===a&&48<=t&&t<=57||1===a&&48<=t&&t<=57&&45===i?r+="\\"+t.toString(16)+" ":r+=128<=t||45===t||95===t||48<=t&&t<=57||65<=t&&t<=90||97<=t&&t<=122?n.charAt(a):"\\"+n.charAt(a)}return"#"+r},F=function(){return Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight,document.body.clientHeight,document.documentElement.clientHeight)},L=function(e){return e?(t=e,parseInt(M.getComputedStyle(t).height,10)+e.offsetTop):0;var t},x=function(e,t,n){0===e&&document.body.focus(),n||(e.focus(),document.activeElement!==e&&(e.setAttribute("tabindex","-1"),e.focus(),e.style.outline="none"),M.scrollTo(0,t))},H=function(e,t,n,o){if(t.emitEvents&&"function"==typeof M.CustomEvent){var a=new CustomEvent(e,{bubbles:!0,detail:{anchor:n,toggle:o}});document.dispatchEvent(a)}};return function(o,e){var b,a,A,O,C={};C.cancelScroll=function(e){cancelAnimationFrame(O),O=null,e||H("scrollCancel",b)},C.animateScroll=function(a,r,e){C.cancelScroll();var i=I(b||q,e||{}),c="[object Number]"===Object.prototype.toString.call(a),t=c||!a.tagName?null:a;if(c||t){var s=M.pageYOffset;i.header&&!A&&(A=document.querySelector(i.header));var n,o,u,l,m,d,f,h,p=L(A),g=c?a:(function(e,t,n,o){var a=0;if(e.offsetParent)for(;a+=e.offsetTop,e=e.offsetParent;);return a=Math.max(a-t-n,0),o&&(a=Math.min(a,F()-M.innerHeight)),a})(t,p,parseInt("function"==typeof i.offset?i.offset(a,r):i.offset,10),i.clip),y=g-s,v=F(),w=0,S=(n=y,u=(o=i).speedAsDuration?o.speed:Math.abs(n/1e3*o.speed),o.durationMax&&u>o.durationMax?o.durationMax:o.durationMin&&u<o.durationMin?o.durationMin:parseInt(u,10)),E=function(e){var t,n,o;l||(l=e),w+=e-l,d=s+y*(n=m=1<(m=0===S?0:w/S)?1:m,"easeInQuad"===(t=i).easing&&(o=n*n),"easeOutQuad"===t.easing&&(o=n*(2-n)),"easeInOutQuad"===t.easing&&(o=n<.5?2*n*n:(4-2*n)*n-1),"easeInCubic"===t.easing&&(o=n*n*n),"easeOutCubic"===t.easing&&(o=--n*n*n+1),"easeInOutCubic"===t.easing&&(o=n<.5?4*n*n*n:(n-1)*(2*n-2)*(2*n-2)+1),"easeInQuart"===t.easing&&(o=n*n*n*n),"easeOutQuart"===t.easing&&(o=1- --n*n*n*n),"easeInOutQuart"===t.easing&&(o=n<.5?8*n*n*n*n:1-8*--n*n*n*n),"easeInQuint"===t.easing&&(o=n*n*n*n*n),"easeOutQuint"===t.easing&&(o=1+--n*n*n*n*n),"easeInOutQuint"===t.easing&&(o=n<.5?16*n*n*n*n*n:1+16*--n*n*n*n*n),t.customEasing&&(o=t.customEasing(n)),o||n),M.scrollTo(0,Math.floor(d)),(function(e,t){var n=M.pageYOffset;if(e==t||n==t||(s<t&&M.innerHeight+n)>=v)return C.cancelScroll(!0),x(a,t,c),H("scrollStop",i,a,r),!(O=l=null)})(d,g)||(O=M.requestAnimationFrame(E),l=e)};0===M.pageYOffset&&M.scrollTo(0,0),f=a,h=i,c||history.pushState&&h.updateURL&&history.pushState({smoothScroll:JSON.stringify(h),anchor:f.id},document.title,f===document.documentElement?"#top":"#"+f.id),"matchMedia"in M&&M.matchMedia("(prefers-reduced-motion)").matches?x(a,Math.floor(g),!1):(H("scrollStart",i,a,r),C.cancelScroll(!0),M.requestAnimationFrame(E))}};var t=function(e){if(!e.defaultPrevented&&!(0!==e.button||e.metaKey||e.ctrlKey||e.shiftKey)&&"closest"in e.target&&(a=e.target.closest(o))&&"a"===a.tagName.toLowerCase()&&!e.target.closest(b.ignore)&&a.hostname===M.location.hostname&&a.pathname===M.location.pathname&&/#/.test(a.href)){var t,n;try{t=r(decodeURIComponent(a.hash))}catch(e){t=r(a.hash)}if("#"===t){if(!b.topOnEmptyHash)return;n=document.documentElement}else n=document.querySelector(t);(n=n||"#top"!==t?n:document.documentElement)&&(e.preventDefault(),(function(e){if(history.replaceState&&e.updateURL&&!history.state){var t=M.location.hash;t=t||"",history.replaceState({smoothScroll:JSON.stringify(e),anchor:t||M.pageYOffset},document.title,t||M.location.href)}})(b),C.animateScroll(n,a))}},n=function(e){if(null!==history.state&&history.state.smoothScroll&&history.state.smoothScroll===JSON.stringify(b)){var t=history.state.anchor;"string"==typeof t&&t&&!(t=document.querySelector(r(history.state.anchor)))||C.animateScroll(t,null,{updateURL:!1})}};C.destroy=function(){b&&(document.removeEventListener("click",t,!1),M.removeEventListener("popstate",n,!1),C.cancelScroll(),O=A=a=b=null)};return (function(){if(!("querySelector"in document&&"addEventListener"in M&&"requestAnimationFrame"in M&&"closest"in M.Element.prototype))throw"Smooth Scroll: This browser does not support the required JavaScript methods and browser APIs.";C.destroy(),b=I(q,e||{}),A=b.header?document.querySelector(b.header):null,document.addEventListener("click",t,!1),b.updateURL&&b.popstate&&M.addEventListener("popstate",n,!1)})(),C}})); 4214 4215/***/ }), 4216
vendor: 41,238 bytes, lines 4217-5798
4217/***/ "./node_modules/dom7/dom7.esm.js": 4218/*!***************************************!*\ 4219 !*** ./node_modules/dom7/dom7.esm.js ***! 4220 \***************************************/ 4221/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 4222 4223"use strict"; 4224__webpack_require__.r(__webpack_exports__); 4225/* harmony export */ __webpack_require__.d(__webpack_exports__, { 4226/* harmony export */ "$": () => (/* binding */ $), 4227/* harmony export */ "add": () => (/* binding */ add), 4228/* harmony export */ "addClass": () => (/* binding */ addClass), 4229/* harmony export */ "animate": () => (/* binding */ animate), 4230/* harmony export */ "animationEnd": () => (/* binding */ animationEnd), 4231/* harmony export */ "append": () => (/* binding */ append), 4232/* harmony export */ "appendTo": () => (/* binding */ appendTo), 4233/* harmony export */ "attr": () => (/* binding */ attr), 4234/* harmony export */ "blur": () => (/* binding */ blur), 4235/* harmony export */ "change": () => (/* binding */ change), 4236/* harmony export */ "children": () => (/* binding */ children), 4237/* harmony export */ "click": () => (/* binding */ click), 4238/* harmony export */ "closest": () => (/* binding */ closest), 4239/* harmony export */ "css": () => (/* binding */ css), 4240/* harmony export */ "data": () => (/* binding */ data), 4241/* harmony export */ "dataset": () => (/* binding */ dataset), 4242/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), 4243/* harmony export */ "detach": () => (/* binding */ detach), 4244/* harmony export */ "each": () => (/* binding */ each), 4245/* harmony export */ "empty": () => (/* binding */ empty), 4246/* harmony export */ "eq": () => (/* binding */ eq), 4247/* harmony export */ "filter": () => (/* binding */ filter), 4248/* harmony export */ "find": () => (/* binding */ find), 4249/* harmony export */ "focus": () => (/* binding */ focus), 4250/* harmony export */ "focusin": () => (/* binding */ focusin), 4251/* harmony export */ "focusout": () => (/* binding */ focusout), 4252/* harmony export */ "hasClass": () => (/* binding */ hasClass), 4253/* harmony export */ "height": () => (/* binding */ height), 4254/* harmony export */ "hide": () => (/* binding */ hide), 4255/* harmony export */ "html": () => (/* binding */ html), 4256/* harmony export */ "index": () => (/* binding */ index), 4257/* harmony export */ "insertAfter": () => (/* binding */ insertAfter), 4258/* harmony export */ "insertBefore": () => (/* binding */ insertBefore), 4259/* harmony export */ "is": () => (/* binding */ is), 4260/* harmony export */ "keydown": () => (/* binding */ keydown), 4261/* harmony export */ "keypress": () => (/* binding */ keypress), 4262/* harmony export */ "keyup": () => (/* binding */ keyup), 4263/* harmony export */ "mousedown": () => (/* binding */ mousedown), 4264/* harmony export */ "mouseenter": () => (/* binding */ mouseenter), 4265/* harmony export */ "mouseleave": () => (/* binding */ mouseleave), 4266/* harmony export */ "mousemove": () => (/* binding */ mousemove), 4267/* harmony export */ "mouseout": () => (/* binding */ mouseout), 4268/* harmony export */ "mouseover": () => (/* binding */ mouseover), 4269/* harmony export */ "mouseup": () => (/* binding */ mouseup), 4270/* harmony export */ "next": () => (/* binding */ next), 4271/* harmony export */ "nextAll": () => (/* binding */ nextAll), 4272/* harmony export */ "off": () => (/* binding */ off), 4273/* harmony export */ "offset": () => (/* binding */ offset), 4274/* harmony export */ "on": () => (/* binding */ on), 4275/* harmony export */ "once": () => (/* binding */ once), 4276/* harmony export */ "outerHeight": () => (/* binding */ outerHeight), 4277/* harmony export */ "outerWidth": () => (/* binding */ outerWidth), 4278/* harmony export */ "parent": () => (/* binding */ parent), 4279/* harmony export */ "parents": () => (/* binding */ parents), 4280/* harmony export */ "prepend": () => (/* binding */ prepend), 4281/* harmony export */ "prependTo": () => (/* binding */ prependTo), 4282/* harmony export */ "prev": () => (/* binding */ prev), 4283/* harmony export */ "prevAll": () => (/* binding */ prevAll), 4284/* harmony export */ "prop": () => (/* binding */ prop), 4285/* harmony export */ "remove": () => (/* binding */ remove), 4286/* harmony export */ "removeAttr": () => (/* binding */ removeAttr), 4287/* harmony export */ "removeClass": () => (/* binding */ removeClass), 4288/* harmony export */ "removeData": () => (/* binding */ removeData), 4289/* harmony export */ "resize": () => (/* binding */ resize), 4290/* harmony export */ "scroll": () => (/* binding */ scroll), 4291/* harmony export */ "scrollLeft": () => (/* binding */ scrollLeft), 4292/* harmony export */ "scrollTo": () => (/* binding */ scrollTo), 4293/* harmony export */ "scrollTop": () => (/* binding */ scrollTop), 4294/* harmony export */ "show": () => (/* binding */ show), 4295/* harmony export */ "siblings": () => (/* binding */ siblings), 4296/* harmony export */ "stop": () => (/* binding */ stop), 4297/* harmony export */ "styles": () => (/* binding */ styles), 4298/* harmony export */ "submit": () => (/* binding */ submit), 4299/* harmony export */ "text": () => (/* binding */ text), 4300/* harmony export */ "toggleClass": () => (/* binding */ toggleClass), 4301/* harmony export */ "touchend": () => (/* binding */ touchend), 4302/* harmony export */ "touchmove": () => (/* binding */ touchmove), 4303/* harmony export */ "touchstart": () => (/* binding */ touchstart), 4304/* harmony export */ "transform": () => (/* binding */ transform), 4305/* harmony export */ "transition": () => (/* binding */ transition), 4306/* harmony export */ "transitionEnd": () => (/* binding */ transitionEnd), 4307/* harmony export */ "trigger": () => (/* binding */ trigger), 4308/* harmony export */ "val": () => (/* binding */ val), 4309/* harmony export */ "value": () => (/* binding */ value), 4310/* harmony export */ "width": () => (/* binding */ width) 4311/* harmony export */ }); 4312/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 4313/** 4314 * Dom7 4.0.4 4315 * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API 4316 * https://framework7.io/docs/dom7.html 4317 * 4318 * Copyright 2022, Vladimir Kharlampidi 4319 * 4320 * Licensed under MIT 4321 * 4322 * Released on: January 11, 2022 4323 */ 4324 4325 4326/* eslint-disable no-proto */ 4327function makeReactive(obj) { 4328 const proto = obj.__proto__; 4329 Object.defineProperty(obj, '__proto__', { 4330 get() { 4331 return proto; 4332 }, 4333 4334 set(value) { 4335 proto.__proto__ = value; 4336 } 4337 4338 }); 4339} 4340 4341class Dom7 extends Array { 4342 constructor(items) { 4343 if (typeof items === 'number') { 4344 super(items); 4345 } else { 4346 super(...(items || [])); 4347 makeReactive(this); 4348 } 4349 } 4350 4351} 4352 4353function arrayFlat(arr = []) { 4354 const res = []; 4355 arr.forEach(el => { 4356 if (Array.isArray(el)) { 4357 res.push(...arrayFlat(el)); 4358 } else { 4359 res.push(el); 4360 } 4361 }); 4362 return res; 4363} 4364function arrayFilter(arr, callback) { 4365 return Array.prototype.filter.call(arr, callback); 4366} 4367function arrayUnique(arr) { 4368 const uniqueArray = []; 4369 4370 for (let i = 0; i < arr.length; i += 1) { 4371 if (uniqueArray.indexOf(arr[i]) === -1) uniqueArray.push(arr[i]); 4372 } 4373 4374 return uniqueArray; 4375} 4376function toCamelCase(string) { 4377 return string.toLowerCase().replace(/-(.)/g, (match, group) => group.toUpperCase()); 4378} 4379 4380// eslint-disable-next-line 4381 4382function qsa(selector, context) { 4383 if (typeof selector !== 'string') { 4384 return [selector]; 4385 } 4386 4387 const a = []; 4388 const res = context.querySelectorAll(selector); 4389 4390 for (let i = 0; i < res.length; i += 1) { 4391 a.push(res[i]); 4392 } 4393 4394 return a; 4395} 4396 4397function $(selector, context) { 4398 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 4399 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 4400 let arr = []; 4401 4402 if (!context && selector instanceof Dom7) { 4403 return selector; 4404 } 4405 4406 if (!selector) { 4407 return new Dom7(arr); 4408 } 4409 4410 if (typeof selector === 'string') { 4411 const html = selector.trim(); 4412 4413 if (html.indexOf('<') >= 0 && html.indexOf('>') >= 0) { 4414 let toCreate = 'div'; 4415 if (html.indexOf('<li') === 0) toCreate = 'ul'; 4416 if (html.indexOf('<tr') === 0) toCreate = 'tbody'; 4417 if (html.indexOf('<td') === 0 || html.indexOf('<th') === 0) toCreate = 'tr'; 4418 if (html.indexOf('<tbody') === 0) toCreate = 'table'; 4419 if (html.indexOf('<option') === 0) toCreate = 'select'; 4420 const tempParent = document.createElement(toCreate); 4421 tempParent.innerHTML = html; 4422 4423 for (let i = 0; i < tempParent.childNodes.length; i += 1) { 4424 arr.push(tempParent.childNodes[i]); 4425 } 4426 } else { 4427 arr = qsa(selector.trim(), context || document); 4428 } // arr = qsa(selector, document); 4429 4430 } else if (selector.nodeType || selector === window || selector === document) { 4431 arr.push(selector); 4432 } else if (Array.isArray(selector)) { 4433 if (selector instanceof Dom7) return selector; 4434 arr = selector; 4435 } 4436 4437 return new Dom7(arrayUnique(arr)); 4438} 4439 4440$.fn = Dom7.prototype; 4441 4442// eslint-disable-next-line 4443 4444function addClass(...classes) { 4445 const classNames = arrayFlat(classes.map(c => c.split(' '))); 4446 this.forEach(el => { 4447 el.classList.add(...classNames); 4448 }); 4449 return this; 4450} 4451 4452function removeClass(...classes) { 4453 const classNames = arrayFlat(classes.map(c => c.split(' '))); 4454 this.forEach(el => { 4455 el.classList.remove(...classNames); 4456 }); 4457 return this; 4458} 4459 4460function toggleClass(...classes) { 4461 const classNames = arrayFlat(classes.map(c => c.split(' '))); 4462 this.forEach(el => { 4463 classNames.forEach(className => { 4464 el.classList.toggle(className); 4465 }); 4466 }); 4467} 4468 4469function hasClass(...classes) { 4470 const classNames = arrayFlat(classes.map(c => c.split(' '))); 4471 return arrayFilter(this, el => { 4472 return classNames.filter(className => el.classList.contains(className)).length > 0; 4473 }).length > 0; 4474} 4475 4476function attr(attrs, value) { 4477 if (arguments.length === 1 && typeof attrs === 'string') { 4478 // Get attr 4479 if (this[0]) return this[0].getAttribute(attrs); 4480 return undefined; 4481 } // Set attrs 4482 4483 4484 for (let i = 0; i < this.length; i += 1) { 4485 if (arguments.length === 2) { 4486 // String 4487 this[i].setAttribute(attrs, value); 4488 } else { 4489 // Object 4490 for (const attrName in attrs) { 4491 this[i][attrName] = attrs[attrName]; 4492 this[i].setAttribute(attrName, attrs[attrName]); 4493 } 4494 } 4495 } 4496 4497 return this; 4498} 4499 4500function removeAttr(attr) { 4501 for (let i = 0; i < this.length; i += 1) { 4502 this[i].removeAttribute(attr); 4503 } 4504 4505 return this; 4506} 4507 4508function prop(props, value) { 4509 if (arguments.length === 1 && typeof props === 'string') { 4510 // Get prop 4511 if (this[0]) return this[0][props]; 4512 } else { 4513 // Set props 4514 for (let i = 0; i < this.length; i += 1) { 4515 if (arguments.length === 2) { 4516 // String 4517 this[i][props] = value; 4518 } else { 4519 // Object 4520 for (const propName in props) { 4521 this[i][propName] = props[propName]; 4522 } 4523 } 4524 } 4525 4526 return this; 4527 } 4528 4529 return this; 4530} 4531 4532function data(key, value) { 4533 let el; 4534 4535 if (typeof value === 'undefined') { 4536 el = this[0]; 4537 if (!el) return undefined; // Get value 4538 4539 if (el.dom7ElementDataStorage && key in el.dom7ElementDataStorage) { 4540 return el.dom7ElementDataStorage[key]; 4541 } 4542 4543 const dataKey = el.getAttribute(`data-${key}`); 4544 4545 if (dataKey) { 4546 return dataKey; 4547 } 4548 4549 return undefined; 4550 } // Set value 4551 4552 4553 for (let i = 0; i < this.length; i += 1) { 4554 el = this[i]; 4555 if (!el.dom7ElementDataStorage) el.dom7ElementDataStorage = {}; 4556 el.dom7ElementDataStorage[key] = value; 4557 } 4558 4559 return this; 4560} 4561 4562function removeData(key) { 4563 for (let i = 0; i < this.length; i += 1) { 4564 const el = this[i]; 4565 4566 if (el.dom7ElementDataStorage && el.dom7ElementDataStorage[key]) { 4567 el.dom7ElementDataStorage[key] = null; 4568 delete el.dom7ElementDataStorage[key]; 4569 } 4570 } 4571} 4572 4573function dataset() { 4574 const el = this[0]; 4575 if (!el) return undefined; 4576 const dataset = {}; // eslint-disable-line 4577 4578 if (el.dataset) { 4579 for (const dataKey in el.dataset) { 4580 dataset[dataKey] = el.dataset[dataKey]; 4581 } 4582 } else { 4583 for (let i = 0; i < el.attributes.length; i += 1) { 4584 const attr = el.attributes[i]; 4585 4586 if (attr.name.indexOf('data-') >= 0) { 4587 dataset[toCamelCase(attr.name.split('data-')[1])] = attr.value; 4588 } 4589 } 4590 } 4591 4592 for (const key in dataset) { 4593 if (dataset[key] === 'false') dataset[key] = false;else if (dataset[key] === 'true') dataset[key] = true;else if (parseFloat(dataset[key]) === dataset[key] * 1) dataset[key] *= 1; 4594 } 4595 4596 return dataset; 4597} 4598 4599function val(value) { 4600 if (typeof value === 'undefined') { 4601 // get value 4602 const el = this[0]; 4603 if (!el) return undefined; 4604 4605 if (el.multiple && el.nodeName.toLowerCase() === 'select') { 4606 const values = []; 4607 4608 for (let i = 0; i < el.selectedOptions.length; i += 1) { 4609 values.push(el.selectedOptions[i].value); 4610 } 4611 4612 return values; 4613 } 4614 4615 return el.value; 4616 } // set value 4617 4618 4619 for (let i = 0; i < this.length; i += 1) { 4620 const el = this[i]; 4621 4622 if (Array.isArray(value) && el.multiple && el.nodeName.toLowerCase() === 'select') { 4623 for (let j = 0; j < el.options.length; j += 1) { 4624 el.options[j].selected = value.indexOf(el.options[j].value) >= 0; 4625 } 4626 } else { 4627 el.value = value; 4628 } 4629 } 4630 4631 return this; 4632} 4633 4634function value(value) { 4635 return this.val(value); 4636} 4637 4638function transform(transform) { 4639 for (let i = 0; i < this.length; i += 1) { 4640 this[i].style.transform = transform; 4641 } 4642 4643 return this; 4644} 4645 4646function transition(duration) { 4647 for (let i = 0; i < this.length; i += 1) { 4648 this[i].style.transitionDuration = typeof duration !== 'string' ? `${duration}ms` : duration; 4649 } 4650 4651 return this; 4652} 4653 4654function on(...args) { 4655 let [eventType, targetSelector, listener, capture] = args; 4656 4657 if (typeof args[1] === 'function') { 4658 [eventType, listener, capture] = args; 4659 targetSelector = undefined; 4660 } 4661 4662 if (!capture) capture = false; 4663 4664 function handleLiveEvent(e) { 4665 const target = e.target; 4666 if (!target) return; 4667 const eventData = e.target.dom7EventData || []; 4668 4669 if (eventData.indexOf(e) < 0) { 4670 eventData.unshift(e); 4671 } 4672 4673 if ($(target).is(targetSelector)) listener.apply(target, eventData);else { 4674 const parents = $(target).parents(); // eslint-disable-line 4675 4676 for (let k = 0; k < parents.length; k += 1) { 4677 if ($(parents[k]).is(targetSelector)) listener.apply(parents[k], eventData); 4678 } 4679 } 4680 } 4681 4682 function handleEvent(e) { 4683 const eventData = e && e.target ? e.target.dom7EventData || [] : []; 4684 4685 if (eventData.indexOf(e) < 0) { 4686 eventData.unshift(e); 4687 } 4688 4689 listener.apply(this, eventData); 4690 } 4691 4692 const events = eventType.split(' '); 4693 let j; 4694 4695 for (let i = 0; i < this.length; i += 1) { 4696 const el = this[i]; 4697 4698 if (!targetSelector) { 4699 for (j = 0; j < events.length; j += 1) { 4700 const event = events[j]; 4701 if (!el.dom7Listeners) el.dom7Listeners = {}; 4702 if (!el.dom7Listeners[event]) el.dom7Listeners[event] = []; 4703 el.dom7Listeners[event].push({ 4704 listener, 4705 proxyListener: handleEvent 4706 }); 4707 el.addEventListener(event, handleEvent, capture); 4708 } 4709 } else { 4710 // Live events 4711 for (j = 0; j < events.length; j += 1) { 4712 const event = events[j]; 4713 if (!el.dom7LiveListeners) el.dom7LiveListeners = {}; 4714 if (!el.dom7LiveListeners[event]) el.dom7LiveListeners[event] = []; 4715 el.dom7LiveListeners[event].push({ 4716 listener, 4717 proxyListener: handleLiveEvent 4718 }); 4719 el.addEventListener(event, handleLiveEvent, capture); 4720 } 4721 } 4722 } 4723 4724 return this; 4725} 4726 4727function off(...args) { 4728 let [eventType, targetSelector, listener, capture] = args; 4729 4730 if (typeof args[1] === 'function') { 4731 [eventType, listener, capture] = args; 4732 targetSelector = undefined; 4733 } 4734 4735 if (!capture) capture = false; 4736 const events = eventType.split(' '); 4737 4738 for (let i = 0; i < events.length; i += 1) { 4739 const event = events[i]; 4740 4741 for (let j = 0; j < this.length; j += 1) { 4742 const el = this[j]; 4743 let handlers; 4744 4745 if (!targetSelector && el.dom7Listeners) { 4746 handlers = el.dom7Listeners[event]; 4747 } else if (targetSelector && el.dom7LiveListeners) { 4748 handlers = el.dom7LiveListeners[event]; 4749 } 4750 4751 if (handlers && handlers.length) { 4752 for (let k = handlers.length - 1; k >= 0; k -= 1) { 4753 const handler = handlers[k]; 4754 4755 if (listener && handler.listener === listener) { 4756 el.removeEventListener(event, handler.proxyListener, capture); 4757 handlers.splice(k, 1); 4758 } else if (listener && handler.listener && handler.listener.dom7proxy && handler.listener.dom7proxy === listener) { 4759 el.removeEventListener(event, handler.proxyListener, capture); 4760 handlers.splice(k, 1); 4761 } else if (!listener) { 4762 el.removeEventListener(event, handler.proxyListener, capture); 4763 handlers.splice(k, 1); 4764 } 4765 } 4766 } 4767 } 4768 } 4769 4770 return this; 4771} 4772 4773function once(...args) { 4774 const dom = this; 4775 let [eventName, targetSelector, listener, capture] = args; 4776 4777 if (typeof args[1] === 'function') { 4778 [eventName, listener, capture] = args; 4779 targetSelector = undefined; 4780 } 4781 4782 function onceHandler(...eventArgs) { 4783 listener.apply(this, eventArgs); 4784 dom.off(eventName, targetSelector, onceHandler, capture); 4785 4786 if (onceHandler.dom7proxy) { 4787 delete onceHandler.dom7proxy; 4788 } 4789 } 4790 4791 onceHandler.dom7proxy = listener; 4792 return dom.on(eventName, targetSelector, onceHandler, capture); 4793} 4794 4795function trigger(...args) { 4796 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 4797 const events = args[0].split(' '); 4798 const eventData = args[1]; 4799 4800 for (let i = 0; i < events.length; i += 1) { 4801 const event = events[i]; 4802 4803 for (let j = 0; j < this.length; j += 1) { 4804 const el = this[j]; 4805 4806 if (window.CustomEvent) { 4807 const evt = new window.CustomEvent(event, { 4808 detail: eventData, 4809 bubbles: true, 4810 cancelable: true 4811 }); 4812 el.dom7EventData = args.filter((data, dataIndex) => dataIndex > 0); 4813 el.dispatchEvent(evt); 4814 el.dom7EventData = []; 4815 delete el.dom7EventData; 4816 } 4817 } 4818 } 4819 4820 return this; 4821} 4822 4823function transitionEnd(callback) { 4824 const dom = this; 4825 4826 function fireCallBack(e) { 4827 if (e.target !== this) return; 4828 callback.call(this, e); 4829 dom.off('transitionend', fireCallBack); 4830 } 4831 4832 if (callback) { 4833 dom.on('transitionend', fireCallBack); 4834 } 4835 4836 return this; 4837} 4838 4839function animationEnd(callback) { 4840 const dom = this; 4841 4842 function fireCallBack(e) { 4843 if (e.target !== this) return; 4844 callback.call(this, e); 4845 dom.off('animationend', fireCallBack); 4846 } 4847 4848 if (callback) { 4849 dom.on('animationend', fireCallBack); 4850 } 4851 4852 return this; 4853} 4854 4855function width() { 4856 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 4857 4858 if (this[0] === window) { 4859 return window.innerWidth; 4860 } 4861 4862 if (this.length > 0) { 4863 return parseFloat(this.css('width')); 4864 } 4865 4866 return null; 4867} 4868 4869function outerWidth(includeMargins) { 4870 if (this.length > 0) { 4871 if (includeMargins) { 4872 const styles = this.styles(); 4873 return this[0].offsetWidth + parseFloat(styles.getPropertyValue('margin-right')) + parseFloat(styles.getPropertyValue('margin-left')); 4874 } 4875 4876 return this[0].offsetWidth; 4877 } 4878 4879 return null; 4880} 4881 4882function height() { 4883 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 4884 4885 if (this[0] === window) { 4886 return window.innerHeight; 4887 } 4888 4889 if (this.length > 0) { 4890 return parseFloat(this.css('height')); 4891 } 4892 4893 return null; 4894} 4895 4896function outerHeight(includeMargins) { 4897 if (this.length > 0) { 4898 if (includeMargins) { 4899 const styles = this.styles(); 4900 return this[0].offsetHeight + parseFloat(styles.getPropertyValue('margin-top')) + parseFloat(styles.getPropertyValue('margin-bottom')); 4901 } 4902 4903 return this[0].offsetHeight; 4904 } 4905 4906 return null; 4907} 4908 4909function offset() { 4910 if (this.length > 0) { 4911 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 4912 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 4913 const el = this[0]; 4914 const box = el.getBoundingClientRect(); 4915 const body = document.body; 4916 const clientTop = el.clientTop || body.clientTop || 0; 4917 const clientLeft = el.clientLeft || body.clientLeft || 0; 4918 const scrollTop = el === window ? window.scrollY : el.scrollTop; 4919 const scrollLeft = el === window ? window.scrollX : el.scrollLeft; 4920 return { 4921 top: box.top + scrollTop - clientTop, 4922 left: box.left + scrollLeft - clientLeft 4923 }; 4924 } 4925 4926 return null; 4927} 4928 4929function hide() { 4930 for (let i = 0; i < this.length; i += 1) { 4931 this[i].style.display = 'none'; 4932 } 4933 4934 return this; 4935} 4936 4937function show() { 4938 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 4939 4940 for (let i = 0; i < this.length; i += 1) { 4941 const el = this[i]; 4942 4943 if (el.style.display === 'none') { 4944 el.style.display = ''; 4945 } 4946 4947 if (window.getComputedStyle(el, null).getPropertyValue('display') === 'none') { 4948 // Still not visible 4949 el.style.display = 'block'; 4950 } 4951 } 4952 4953 return this; 4954} 4955 4956function styles() { 4957 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 4958 if (this[0]) return window.getComputedStyle(this[0], null); 4959 return {}; 4960} 4961 4962function css(props, value) { 4963 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 4964 let i; 4965 4966 if (arguments.length === 1) { 4967 if (typeof props === 'string') { 4968 // .css('width') 4969 if (this[0]) return window.getComputedStyle(this[0], null).getPropertyValue(props); 4970 } else { 4971 // .css({ width: '100px' }) 4972 for (i = 0; i < this.length; i += 1) { 4973 for (const prop in props) { 4974 this[i].style[prop] = props[prop]; 4975 } 4976 } 4977 4978 return this; 4979 } 4980 } 4981 4982 if (arguments.length === 2 && typeof props === 'string') { 4983 // .css('width', '100px') 4984 for (i = 0; i < this.length; i += 1) { 4985 this[i].style[props] = value; 4986 } 4987 4988 return this; 4989 } 4990 4991 return this; 4992} 4993 4994function each(callback) { 4995 if (!callback) return this; 4996 this.forEach((el, index) => { 4997 callback.apply(el, [el, index]); 4998 }); 4999 return this; 5000} 5001 5002function filter(callback) { 5003 const result = arrayFilter(this, callback); 5004 return $(result); 5005} 5006 5007function html(html) { 5008 if (typeof html === 'undefined') { 5009 return this[0] ? this[0].innerHTML : null; 5010 } 5011 5012 for (let i = 0; i < this.length; i += 1) { 5013 this[i].innerHTML = html; 5014 } 5015 5016 return this; 5017} 5018 5019function text(text) { 5020 if (typeof text === 'undefined') { 5021 return this[0] ? this[0].textContent.trim() : null; 5022 } 5023 5024 for (let i = 0; i < this.length; i += 1) { 5025 this[i].textContent = text; 5026 } 5027 5028 return this; 5029} 5030 5031function is(selector) { 5032 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 5033 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 5034 const el = this[0]; 5035 let compareWith; 5036 let i; 5037 if (!el || typeof selector === 'undefined') return false; 5038 5039 if (typeof selector === 'string') { 5040 if (el.matches) return el.matches(selector); 5041 if (el.webkitMatchesSelector) return el.webkitMatchesSelector(selector); 5042 if (el.msMatchesSelector) return el.msMatchesSelector(selector); 5043 compareWith = $(selector); 5044 5045 for (i = 0; i < compareWith.length; i += 1) { 5046 if (compareWith[i] === el) return true; 5047 } 5048 5049 return false; 5050 } 5051 5052 if (selector === document) { 5053 return el === document; 5054 } 5055 5056 if (selector === window) { 5057 return el === window; 5058 } 5059 5060 if (selector.nodeType || selector instanceof Dom7) { 5061 compareWith = selector.nodeType ? [selector] : selector; 5062 5063 for (i = 0; i < compareWith.length; i += 1) { 5064 if (compareWith[i] === el) return true; 5065 } 5066 5067 return false; 5068 } 5069 5070 return false; 5071} 5072 5073function index() { 5074 let child = this[0]; 5075 let i; 5076 5077 if (child) { 5078 i = 0; // eslint-disable-next-line 5079 5080 while ((child = child.previousSibling) !== null) { 5081 if (child.nodeType === 1) i += 1; 5082 } 5083 5084 return i; 5085 } 5086 5087 return undefined; 5088} 5089 5090function eq(index) { 5091 if (typeof index === 'undefined') return this; 5092 const length = this.length; 5093 5094 if (index > length - 1) { 5095 return $([]); 5096 } 5097 5098 if (index < 0) { 5099 const returnIndex = length + index; 5100 if (returnIndex < 0) return $([]); 5101 return $([this[returnIndex]]); 5102 } 5103 5104 return $([this[index]]); 5105} 5106 5107function append(...els) { 5108 let newChild; 5109 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 5110 5111 for (let k = 0; k < els.length; k += 1) { 5112 newChild = els[k]; 5113 5114 for (let i = 0; i < this.length; i += 1) { 5115 if (typeof newChild === 'string') { 5116 const tempDiv = document.createElement('div'); 5117 tempDiv.innerHTML = newChild; 5118 5119 while (tempDiv.firstChild) { 5120 this[i].appendChild(tempDiv.firstChild); 5121 } 5122 } else if (newChild instanceof Dom7) { 5123 for (let j = 0; j < newChild.length; j += 1) { 5124 this[i].appendChild(newChild[j]); 5125 } 5126 } else { 5127 this[i].appendChild(newChild); 5128 } 5129 } 5130 } 5131 5132 return this; 5133} 5134 5135function appendTo(parent) { 5136 $(parent).append(this); 5137 return this; 5138} 5139 5140function prepend(newChild) { 5141 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 5142 let i; 5143 let j; 5144 5145 for (i = 0; i < this.length; i += 1) { 5146 if (typeof newChild === 'string') { 5147 const tempDiv = document.createElement('div'); 5148 tempDiv.innerHTML = newChild; 5149 5150 for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) { 5151 this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]); 5152 } 5153 } else if (newChild instanceof Dom7) { 5154 for (j = 0; j < newChild.length; j += 1) { 5155 this[i].insertBefore(newChild[j], this[i].childNodes[0]); 5156 } 5157 } else { 5158 this[i].insertBefore(newChild, this[i].childNodes[0]); 5159 } 5160 } 5161 5162 return this; 5163} 5164 5165function prependTo(parent) { 5166 $(parent).prepend(this); 5167 return this; 5168} 5169 5170function insertBefore(selector) { 5171 const before = $(selector); 5172 5173 for (let i = 0; i < this.length; i += 1) { 5174 if (before.length === 1) { 5175 before[0].parentNode.insertBefore(this[i], before[0]); 5176 } else if (before.length > 1) { 5177 for (let j = 0; j < before.length; j += 1) { 5178 before[j].parentNode.insertBefore(this[i].cloneNode(true), before[j]); 5179 } 5180 } 5181 } 5182} 5183 5184function insertAfter(selector) { 5185 const after = $(selector); 5186 5187 for (let i = 0; i < this.length; i += 1) { 5188 if (after.length === 1) { 5189 after[0].parentNode.insertBefore(this[i], after[0].nextSibling); 5190 } else if (after.length > 1) { 5191 for (let j = 0; j < after.length; j += 1) { 5192 after[j].parentNode.insertBefore(this[i].cloneNode(true), after[j].nextSibling); 5193 } 5194 } 5195 } 5196} 5197 5198function next(selector) { 5199 if (this.length > 0) { 5200 if (selector) { 5201 if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) { 5202 return $([this[0].nextElementSibling]); 5203 } 5204 5205 return $([]); 5206 } 5207 5208 if (this[0].nextElementSibling) return $([this[0].nextElementSibling]); 5209 return $([]); 5210 } 5211 5212 return $([]); 5213} 5214 5215function nextAll(selector) { 5216 const nextEls = []; 5217 let el = this[0]; 5218 if (!el) return $([]); 5219 5220 while (el.nextElementSibling) { 5221 const next = el.nextElementSibling; // eslint-disable-line 5222 5223 if (selector) { 5224 if ($(next).is(selector)) nextEls.push(next); 5225 } else nextEls.push(next); 5226 5227 el = next; 5228 } 5229 5230 return $(nextEls); 5231} 5232 5233function prev(selector) { 5234 if (this.length > 0) { 5235 const el = this[0]; 5236 5237 if (selector) { 5238 if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) { 5239 return $([el.previousElementSibling]); 5240 } 5241 5242 return $([]); 5243 } 5244 5245 if (el.previousElementSibling) return $([el.previousElementSibling]); 5246 return $([]); 5247 } 5248 5249 return $([]); 5250} 5251 5252function prevAll(selector) { 5253 const prevEls = []; 5254 let el = this[0]; 5255 if (!el) return $([]); 5256 5257 while (el.previousElementSibling) { 5258 const prev = el.previousElementSibling; // eslint-disable-line 5259 5260 if (selector) { 5261 if ($(prev).is(selector)) prevEls.push(prev); 5262 } else prevEls.push(prev); 5263 5264 el = prev; 5265 } 5266 5267 return $(prevEls); 5268} 5269 5270function siblings(selector) { 5271 return this.nextAll(selector).add(this.prevAll(selector)); 5272} 5273 5274function parent(selector) { 5275 const parents = []; // eslint-disable-line 5276 5277 for (let i = 0; i < this.length; i += 1) { 5278 if (this[i].parentNode !== null) { 5279 if (selector) { 5280 if ($(this[i].parentNode).is(selector)) parents.push(this[i].parentNode); 5281 } else { 5282 parents.push(this[i].parentNode); 5283 } 5284 } 5285 } 5286 5287 return $(parents); 5288} 5289 5290function parents(selector) { 5291 const parents = []; // eslint-disable-line 5292 5293 for (let i = 0; i < this.length; i += 1) { 5294 let parent = this[i].parentNode; // eslint-disable-line 5295 5296 while (parent) { 5297 if (selector) { 5298 if ($(parent).is(selector)) parents.push(parent); 5299 } else { 5300 parents.push(parent); 5301 } 5302 5303 parent = parent.parentNode; 5304 } 5305 } 5306 5307 return $(parents); 5308} 5309 5310function closest(selector) { 5311 let closest = this; // eslint-disable-line 5312 5313 if (typeof selector === 'undefined') { 5314 return $([]); 5315 } 5316 5317 if (!closest.is(selector)) { 5318 closest = closest.parents(selector).eq(0); 5319 } 5320 5321 return closest; 5322} 5323 5324function find(selector) { 5325 const foundElements = []; 5326 5327 for (let i = 0; i < this.length; i += 1) { 5328 const found = this[i].querySelectorAll(selector); 5329 5330 for (let j = 0; j < found.length; j += 1) { 5331 foundElements.push(found[j]); 5332 } 5333 } 5334 5335 return $(foundElements); 5336} 5337 5338function children(selector) { 5339 const children = []; // eslint-disable-line 5340 5341 for (let i = 0; i < this.length; i += 1) { 5342 const childNodes = this[i].children; 5343 5344 for (let j = 0; j < childNodes.length; j += 1) { 5345 if (!selector || $(childNodes[j]).is(selector)) { 5346 children.push(childNodes[j]); 5347 } 5348 } 5349 } 5350 5351 return $(children); 5352} 5353 5354function remove() { 5355 for (let i = 0; i < this.length; i += 1) { 5356 if (this[i].parentNode) this[i].parentNode.removeChild(this[i]); 5357 } 5358 5359 return this; 5360} 5361 5362function detach() { 5363 return this.remove(); 5364} 5365 5366function add(...els) { 5367 const dom = this; 5368 let i; 5369 let j; 5370 5371 for (i = 0; i < els.length; i += 1) { 5372 const toAdd = $(els[i]); 5373 5374 for (j = 0; j < toAdd.length; j += 1) { 5375 dom.push(toAdd[j]); 5376 } 5377 } 5378 5379 return dom; 5380} 5381 5382function empty() { 5383 for (let i = 0; i < this.length; i += 1) { 5384 const el = this[i]; 5385 5386 if (el.nodeType === 1) { 5387 for (let j = 0; j < el.childNodes.length; j += 1) { 5388 if (el.childNodes[j].parentNode) { 5389 el.childNodes[j].parentNode.removeChild(el.childNodes[j]); 5390 } 5391 } 5392 5393 el.textContent = ''; 5394 } 5395 } 5396 5397 return this; 5398} 5399 5400// eslint-disable-next-line 5401 5402function scrollTo(...args) { 5403 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 5404 let [left, top, duration, easing, callback] = args; 5405 5406 if (args.length === 4 && typeof easing === 'function') { 5407 callback = easing; 5408 [left, top, duration, callback, easing] = args; 5409 } 5410 5411 if (typeof easing === 'undefined') easing = 'swing'; 5412 return this.each(function animate() { 5413 const el = this; 5414 let currentTop; 5415 let currentLeft; 5416 let maxTop; 5417 let maxLeft; 5418 let newTop; 5419 let newLeft; 5420 let scrollTop; // eslint-disable-line 5421 5422 let scrollLeft; // eslint-disable-line 5423 5424 let animateTop = top > 0 || top === 0; 5425 let animateLeft = left > 0 || left === 0; 5426 5427 if (typeof easing === 'undefined') { 5428 easing = 'swing'; 5429 } 5430 5431 if (animateTop) { 5432 currentTop = el.scrollTop; 5433 5434 if (!duration) { 5435 el.scrollTop = top; 5436 } 5437 } 5438 5439 if (animateLeft) { 5440 currentLeft = el.scrollLeft; 5441 5442 if (!duration) { 5443 el.scrollLeft = left; 5444 } 5445 } 5446 5447 if (!duration) return; 5448 5449 if (animateTop) { 5450 maxTop = el.scrollHeight - el.offsetHeight; 5451 newTop = Math.max(Math.min(top, maxTop), 0); 5452 } 5453 5454 if (animateLeft) { 5455 maxLeft = el.scrollWidth - el.offsetWidth; 5456 newLeft = Math.max(Math.min(left, maxLeft), 0); 5457 } 5458 5459 let startTime = null; 5460 if (animateTop && newTop === currentTop) animateTop = false; 5461 if (animateLeft && newLeft === currentLeft) animateLeft = false; 5462 5463 function render(time = new Date().getTime()) { 5464 if (startTime === null) { 5465 startTime = time; 5466 } 5467 5468 const progress = Math.max(Math.min((time - startTime) / duration, 1), 0); 5469 const easeProgress = easing === 'linear' ? progress : 0.5 - Math.cos(progress * Math.PI) / 2; 5470 let done; 5471 if (animateTop) scrollTop = currentTop + easeProgress * (newTop - currentTop); 5472 if (animateLeft) scrollLeft = currentLeft + easeProgress * (newLeft - currentLeft); 5473 5474 if (animateTop && newTop > currentTop && scrollTop >= newTop) { 5475 el.scrollTop = newTop; 5476 done = true; 5477 } 5478 5479 if (animateTop && newTop < currentTop && scrollTop <= newTop) { 5480 el.scrollTop = newTop; 5481 done = true; 5482 } 5483 5484 if (animateLeft && newLeft > currentLeft && scrollLeft >= newLeft) { 5485 el.scrollLeft = newLeft; 5486 done = true; 5487 } 5488 5489 if (animateLeft && newLeft < currentLeft && scrollLeft <= newLeft) { 5490 el.scrollLeft = newLeft; 5491 done = true; 5492 } 5493 5494 if (done) { 5495 if (callback) callback(); 5496 return; 5497 } 5498 5499 if (animateTop) el.scrollTop = scrollTop; 5500 if (animateLeft) el.scrollLeft = scrollLeft; 5501 window.requestAnimationFrame(render); 5502 } 5503 5504 window.requestAnimationFrame(render); 5505 }); 5506} // scrollTop(top, duration, easing, callback) { 5507 5508 5509function scrollTop(...args) { 5510 let [top, duration, easing, callback] = args; 5511 5512 if (args.length === 3 && typeof easing === 'function') { 5513 [top, duration, callback, easing] = args; 5514 } 5515 5516 const dom = this; 5517 5518 if (typeof top === 'undefined') { 5519 if (dom.length > 0) return dom[0].scrollTop; 5520 return null; 5521 } 5522 5523 return dom.scrollTo(undefined, top, duration, easing, callback); 5524} 5525 5526function scrollLeft(...args) { 5527 let [left, duration, easing, callback] = args; 5528 5529 if (args.length === 3 && typeof easing === 'function') { 5530 [left, duration, callback, easing] = args; 5531 } 5532 5533 const dom = this; 5534 5535 if (typeof left === 'undefined') { 5536 if (dom.length > 0) return dom[0].scrollLeft; 5537 return null; 5538 } 5539 5540 return dom.scrollTo(left, undefined, duration, easing, callback); 5541} 5542 5543// eslint-disable-next-line 5544 5545function animate(initialProps, initialParams) { 5546 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 5547 const els = this; 5548 const a = { 5549 props: Object.assign({}, initialProps), 5550 params: Object.assign({ 5551 duration: 300, 5552 easing: 'swing' // or 'linear' 5553 5554 /* Callbacks 5555 begin(elements) 5556 complete(elements) 5557 progress(elements, complete, remaining, start, tweenValue) 5558 */ 5559 5560 }, initialParams), 5561 elements: els, 5562 animating: false, 5563 que: [], 5564 5565 easingProgress(easing, progress) { 5566 if (easing === 'swing') { 5567 return 0.5 - Math.cos(progress * Math.PI) / 2; 5568 } 5569 5570 if (typeof easing === 'function') { 5571 return easing(progress); 5572 } 5573 5574 return progress; 5575 }, 5576 5577 stop() { 5578 if (a.frameId) { 5579 window.cancelAnimationFrame(a.frameId); 5580 } 5581 5582 a.animating = false; 5583 a.elements.each(el => { 5584 const element = el; 5585 delete element.dom7AnimateInstance; 5586 }); 5587 a.que = []; 5588 }, 5589 5590 done(complete) { 5591 a.animating = false; 5592 a.elements.each(el => { 5593 const element = el; 5594 delete element.dom7AnimateInstance; 5595 }); 5596 if (complete) complete(els); 5597 5598 if (a.que.length > 0) { 5599 const que = a.que.shift(); 5600 a.animate(que[0], que[1]); 5601 } 5602 }, 5603 5604 animate(props, params) { 5605 if (a.animating) { 5606 a.que.push([props, params]); 5607 return a; 5608 } 5609 5610 const elements = []; // Define & Cache Initials & Units 5611 5612 a.elements.each((el, index) => { 5613 let initialFullValue; 5614 let initialValue; 5615 let unit; 5616 let finalValue; 5617 let finalFullValue; 5618 if (!el.dom7AnimateInstance) a.elements[index].dom7AnimateInstance = a; 5619 elements[index] = { 5620 container: el 5621 }; 5622 Object.keys(props).forEach(prop => { 5623 initialFullValue = window.getComputedStyle(el, null).getPropertyValue(prop).replace(',', '.'); 5624 initialValue = parseFloat(initialFullValue); 5625 unit = initialFullValue.replace(initialValue, ''); 5626 finalValue = parseFloat(props[prop]); 5627 finalFullValue = props[prop] + unit; 5628 elements[index][prop] = { 5629 initialFullValue, 5630 initialValue, 5631 unit, 5632 finalValue, 5633 finalFullValue, 5634 currentValue: initialValue 5635 }; 5636 }); 5637 }); 5638 let startTime = null; 5639 let time; 5640 let elementsDone = 0; 5641 let propsDone = 0; 5642 let done; 5643 let began = false; 5644 a.animating = true; 5645 5646 function render() { 5647 time = new Date().getTime(); 5648 let progress; 5649 let easeProgress; // let el; 5650 5651 if (!began) { 5652 began = true; 5653 if (params.begin) params.begin(els); 5654 } 5655 5656 if (startTime === null) { 5657 startTime = time; 5658 } 5659 5660 if (params.progress) { 5661 // eslint-disable-next-line 5662 params.progress(els, Math.max(Math.min((time - startTime) / params.duration, 1), 0), startTime + params.duration - time < 0 ? 0 : startTime + params.duration - time, startTime); 5663 } 5664 5665 elements.forEach(element => { 5666 const el = element; 5667 if (done || el.done) return; 5668 Object.keys(props).forEach(prop => { 5669 if (done || el.done) return; 5670 progress = Math.max(Math.min((time - startTime) / params.duration, 1), 0); 5671 easeProgress = a.easingProgress(params.easing, progress); 5672 const { 5673 initialValue, 5674 finalValue, 5675 unit 5676 } = el[prop]; 5677 el[prop].currentValue = initialValue + easeProgress * (finalValue - initialValue); 5678 const currentValue = el[prop].currentValue; 5679 5680 if (finalValue > initialValue && currentValue >= finalValue || finalValue < initialValue && currentValue <= finalValue) { 5681 el.container.style[prop] = finalValue + unit; 5682 propsDone += 1; 5683 5684 if (propsDone === Object.keys(props).length) { 5685 el.done = true; 5686 elementsDone += 1; 5687 } 5688 5689 if (elementsDone === elements.length) { 5690 done = true; 5691 } 5692 } 5693 5694 if (done) { 5695 a.done(params.complete); 5696 return; 5697 } 5698 5699 el.container.style[prop] = currentValue + unit; 5700 }); 5701 }); 5702 if (done) return; // Then call 5703 5704 a.frameId = window.requestAnimationFrame(render); 5705 } 5706 5707 a.frameId = window.requestAnimationFrame(render); 5708 return a; 5709 } 5710 5711 }; 5712 5713 if (a.elements.length === 0) { 5714 return els; 5715 } 5716 5717 let animateInstance; 5718 5719 for (let i = 0; i < a.elements.length; i += 1) { 5720 if (a.elements[i].dom7AnimateInstance) { 5721 animateInstance = a.elements[i].dom7AnimateInstance; 5722 } else a.elements[i].dom7AnimateInstance = a; 5723 } 5724 5725 if (!animateInstance) { 5726 animateInstance = a; 5727 } 5728 5729 if (initialProps === 'stop') { 5730 animateInstance.stop(); 5731 } else { 5732 animateInstance.animate(a.props, a.params); 5733 } 5734 5735 return els; 5736} 5737 5738function stop() { 5739 const els = this; 5740 5741 for (let i = 0; i < els.length; i += 1) { 5742 if (els[i].dom7AnimateInstance) { 5743 els[i].dom7AnimateInstance.stop(); 5744 } 5745 } 5746} 5747 5748const noTrigger = 'resize scroll'.split(' '); 5749 5750function shortcut(name) { 5751 function eventHandler(...args) { 5752 if (typeof args[0] === 'undefined') { 5753 for (let i = 0; i < this.length; i += 1) { 5754 if (noTrigger.indexOf(name) < 0) { 5755 if (name in this[i]) this[i][name]();else { 5756 $(this[i]).trigger(name); 5757 } 5758 } 5759 } 5760 5761 return this; 5762 } 5763 5764 return this.on(name, ...args); 5765 } 5766 5767 return eventHandler; 5768} 5769 5770const click = shortcut('click'); 5771const blur = shortcut('blur'); 5772const focus = shortcut('focus'); 5773const focusin = shortcut('focusin'); 5774const focusout = shortcut('focusout'); 5775const keyup = shortcut('keyup'); 5776const keydown = shortcut('keydown'); 5777const keypress = shortcut('keypress'); 5778const submit = shortcut('submit'); 5779const change = shortcut('change'); 5780const mousedown = shortcut('mousedown'); 5781const mousemove = shortcut('mousemove'); 5782const mouseup = shortcut('mouseup'); 5783const mouseenter = shortcut('mouseenter'); 5784const mouseleave = shortcut('mouseleave'); 5785const mouseout = shortcut('mouseout'); 5786const mouseover = shortcut('mouseover'); 5787const touchstart = shortcut('touchstart'); 5788const touchend = shortcut('touchend'); 5789const touchmove = shortcut('touchmove'); 5790const resize = shortcut('resize'); 5791const scroll = shortcut('scroll'); 5792 5793/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ($); 5794 5795 5796 5797/***/ }), 5798
vendor: 3,943 bytes, lines 5799-5965
5799/***/ "./node_modules/ssr-window/ssr-window.esm.js": 5800/*!***************************************************!*\ 5801 !*** ./node_modules/ssr-window/ssr-window.esm.js ***! 5802 \***************************************************/ 5803/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 5804 5805"use strict"; 5806__webpack_require__.r(__webpack_exports__); 5807/* harmony export */ __webpack_require__.d(__webpack_exports__, { 5808/* harmony export */ "extend": () => (/* binding */ extend), 5809/* harmony export */ "getDocument": () => (/* binding */ getDocument), 5810/* harmony export */ "getWindow": () => (/* binding */ getWindow), 5811/* harmony export */ "ssrDocument": () => (/* binding */ ssrDocument), 5812/* harmony export */ "ssrWindow": () => (/* binding */ ssrWindow) 5813/* harmony export */ }); 5814/** 5815 * SSR Window 4.0.2 5816 * Better handling for window object in SSR environment 5817 * https://github.com/nolimits4web/ssr-window 5818 * 5819 * Copyright 2021, Vladimir Kharlampidi 5820 * 5821 * Licensed under MIT 5822 * 5823 * Released on: December 13, 2021 5824 */ 5825/* eslint-disable no-param-reassign */ 5826function isObject(obj) { 5827 return (obj !== null && 5828 typeof obj === 'object' && 5829 'constructor' in obj && 5830 obj.constructor === Object); 5831} 5832function extend(target = {}, src = {}) { 5833 Object.keys(src).forEach((key) => { 5834 if (typeof target[key] === 'undefined') 5835 target[key] = src[key]; 5836 else if (isObject(src[key]) && 5837 isObject(target[key]) && 5838 Object.keys(src[key]).length > 0) { 5839 extend(target[key], src[key]); 5840 } 5841 }); 5842} 5843 5844const ssrDocument = { 5845 body: {}, 5846 addEventListener() { }, 5847 removeEventListener() { }, 5848 activeElement: { 5849 blur() { }, 5850 nodeName: '', 5851 }, 5852 querySelector() { 5853 return null; 5854 }, 5855 querySelectorAll() { 5856 return []; 5857 }, 5858 getElementById() { 5859 return null; 5860 }, 5861 createEvent() { 5862 return { 5863 initEvent() { }, 5864 }; 5865 }, 5866 createElement() { 5867 return { 5868 children: [], 5869 childNodes: [], 5870 style: {}, 5871 setAttribute() { }, 5872 getElementsByTagName() { 5873 return []; 5874 }, 5875 }; 5876 }, 5877 createElementNS() { 5878 return {}; 5879 }, 5880 importNode() { 5881 return null; 5882 }, 5883 location: { 5884 hash: '', 5885 host: '', 5886 hostname: '', 5887 href: '', 5888 origin: '', 5889 pathname: '', 5890 protocol: '', 5891 search: '', 5892 }, 5893}; 5894function getDocument() { 5895 const doc = typeof document !== 'undefined' ? document : {}; 5896 extend(doc, ssrDocument); 5897 return doc; 5898} 5899 5900const ssrWindow = { 5901 document: ssrDocument, 5902 navigator: { 5903 userAgent: '', 5904 }, 5905 location: { 5906 hash: '', 5907 host: '', 5908 hostname: '', 5909 href: '', 5910 origin: '', 5911 pathname: '', 5912 protocol: '', 5913 search: '', 5914 }, 5915 history: { 5916 replaceState() { }, 5917 pushState() { }, 5918 go() { }, 5919 back() { }, 5920 }, 5921 CustomEvent: function CustomEvent() { 5922 return this; 5923 }, 5924 addEventListener() { }, 5925 removeEventListener() { }, 5926 getComputedStyle() { 5927 return { 5928 getPropertyValue() { 5929 return ''; 5930 }, 5931 }; 5932 }, 5933 Image() { }, 5934 Date() { }, 5935 screen: {}, 5936 setTimeout() { }, 5937 clearTimeout() { }, 5938 matchMedia() { 5939 return {}; 5940 }, 5941 requestAnimationFrame(callback) { 5942 if (typeof setTimeout === 'undefined') { 5943 callback(); 5944 return null; 5945 } 5946 return setTimeout(callback, 0); 5947 }, 5948 cancelAnimationFrame(id) { 5949 if (typeof setTimeout === 'undefined') { 5950 return; 5951 } 5952 clearTimeout(id); 5953 }, 5954}; 5955function getWindow() { 5956 const win = typeof window !== 'undefined' ? window : {}; 5957 extend(win, ssrWindow); 5958 return win; 5959} 5960 5961 5962 5963 5964/***/ }), 5965
vendor: 1,852 bytes, lines 5966-6020
5966/***/ "./node_modules/swiper/core/breakpoints/getBreakpoint.js": 5967/*!***************************************************************!*\ 5968 !*** ./node_modules/swiper/core/breakpoints/getBreakpoint.js ***! 5969 \***************************************************************/ 5970/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 5971 5972"use strict"; 5973__webpack_require__.r(__webpack_exports__); 5974/* harmony export */ __webpack_require__.d(__webpack_exports__, { 5975/* harmony export */ "default": () => (/* binding */ getBreakpoint) 5976/* harmony export */ }); 5977/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 5978 5979function getBreakpoint(breakpoints, base = 'window', containerEl) { 5980 if (!breakpoints || base === 'container' && !containerEl) return undefined; 5981 let breakpoint = false; 5982 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 5983 const currentHeight = base === 'window' ? window.innerHeight : containerEl.clientHeight; 5984 const points = Object.keys(breakpoints).map(point => { 5985 if (typeof point === 'string' && point.indexOf('@') === 0) { 5986 const minRatio = parseFloat(point.substr(1)); 5987 const value = currentHeight * minRatio; 5988 return { 5989 value, 5990 point 5991 }; 5992 } 5993 5994 return { 5995 value: point, 5996 point 5997 }; 5998 }); 5999 points.sort((a, b) => parseInt(a.value, 10) - parseInt(b.value, 10)); 6000 6001 for (let i = 0; i < points.length; i += 1) { 6002 const { 6003 point, 6004 value 6005 } = points[i]; 6006 6007 if (base === 'window') { 6008 if (window.matchMedia(`(min-width: ${value}px)`).matches) { 6009 breakpoint = point; 6010 } 6011 } else if (value <= containerEl.clientWidth) { 6012 breakpoint = point; 6013 } 6014 } 6015 6016 return breakpoint || 'max'; 6017} 6018 6019/***/ }), 6020
vendor: 1,146 bytes, lines 6021-6042
6021/***/ "./node_modules/swiper/core/breakpoints/index.js": 6022/*!*******************************************************!*\ 6023 !*** ./node_modules/swiper/core/breakpoints/index.js ***! 6024 \*******************************************************/ 6025/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 6026 6027"use strict"; 6028__webpack_require__.r(__webpack_exports__); 6029/* harmony export */ __webpack_require__.d(__webpack_exports__, { 6030/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 6031/* harmony export */ }); 6032/* harmony import */ var _setBreakpoint_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setBreakpoint.js */ "./node_modules/swiper/core/breakpoints/setBreakpoint.js"); 6033/* harmony import */ var _getBreakpoint_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getBreakpoint.js */ "./node_modules/swiper/core/breakpoints/getBreakpoint.js"); 6034 6035 6036/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 6037 setBreakpoint: _setBreakpoint_js__WEBPACK_IMPORTED_MODULE_0__["default"], 6038 getBreakpoint: _getBreakpoint_js__WEBPACK_IMPORTED_MODULE_1__["default"] 6039}); 6040 6041/***/ }), 6042
vendor: 3,316 bytes, lines 6043-6129
6043/***/ "./node_modules/swiper/core/breakpoints/setBreakpoint.js": 6044/*!***************************************************************!*\ 6045 !*** ./node_modules/swiper/core/breakpoints/setBreakpoint.js ***! 6046 \***************************************************************/ 6047/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 6048 6049"use strict"; 6050__webpack_require__.r(__webpack_exports__); 6051/* harmony export */ __webpack_require__.d(__webpack_exports__, { 6052/* harmony export */ "default": () => (/* binding */ setBreakpoint) 6053/* harmony export */ }); 6054/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 6055 6056 6057const isGridEnabled = (swiper, params) => { 6058 return swiper.grid && params.grid && params.grid.rows > 1; 6059}; 6060 6061function setBreakpoint() { 6062 const swiper = this; 6063 const { 6064 activeIndex, 6065 initialized, 6066 loopedSlides = 0, 6067 params, 6068 $el 6069 } = swiper; 6070 const breakpoints = params.breakpoints; 6071 if (!breakpoints || breakpoints && Object.keys(breakpoints).length === 0) return; // Get breakpoint for window width and update parameters 6072 6073 const breakpoint = swiper.getBreakpoint(breakpoints, swiper.params.breakpointsBase, swiper.el); 6074 if (!breakpoint || swiper.currentBreakpoint === breakpoint) return; 6075 const breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined; 6076 const breakpointParams = breakpointOnlyParams || swiper.originalParams; 6077 const wasMultiRow = isGridEnabled(swiper, params); 6078 const isMultiRow = isGridEnabled(swiper, breakpointParams); 6079 const wasEnabled = params.enabled; 6080 6081 if (wasMultiRow && !isMultiRow) { 6082 $el.removeClass(`${params.containerModifierClass}grid ${params.containerModifierClass}grid-column`); 6083 swiper.emitContainerClasses(); 6084 } else if (!wasMultiRow && isMultiRow) { 6085 $el.addClass(`${params.containerModifierClass}grid`); 6086 6087 if (breakpointParams.grid.fill && breakpointParams.grid.fill === 'column' || !breakpointParams.grid.fill && params.grid.fill === 'column') { 6088 $el.addClass(`${params.containerModifierClass}grid-column`); 6089 } 6090 6091 swiper.emitContainerClasses(); 6092 } 6093 6094 const directionChanged = breakpointParams.direction && breakpointParams.direction !== params.direction; 6095 const needsReLoop = params.loop && (breakpointParams.slidesPerView !== params.slidesPerView || directionChanged); 6096 6097 if (directionChanged && initialized) { 6098 swiper.changeDirection(); 6099 } 6100 6101 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.extend)(swiper.params, breakpointParams); 6102 const isEnabled = swiper.params.enabled; 6103 Object.assign(swiper, { 6104 allowTouchMove: swiper.params.allowTouchMove, 6105 allowSlideNext: swiper.params.allowSlideNext, 6106 allowSlidePrev: swiper.params.allowSlidePrev 6107 }); 6108 6109 if (wasEnabled && !isEnabled) { 6110 swiper.disable(); 6111 } else if (!wasEnabled && isEnabled) { 6112 swiper.enable(); 6113 } 6114 6115 swiper.currentBreakpoint = breakpoint; 6116 swiper.emit('_beforeBreakpoint', breakpointParams); 6117 6118 if (needsReLoop && initialized) { 6119 swiper.loopDestroy(); 6120 swiper.loopCreate(); 6121 swiper.updateSlides(); 6122 swiper.slideTo(activeIndex - loopedSlides + swiper.loopedSlides, 0, false); 6123 } 6124 6125 swiper.emit('breakpoint', breakpointParams); 6126} 6127 6128/***/ }), 6129
vendor: 1,521 bytes, lines 6130-6181
6130/***/ "./node_modules/swiper/core/check-overflow/index.js": 6131/*!**********************************************************!*\ 6132 !*** ./node_modules/swiper/core/check-overflow/index.js ***! 6133 \**********************************************************/ 6134/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 6135 6136"use strict"; 6137__webpack_require__.r(__webpack_exports__); 6138/* harmony export */ __webpack_require__.d(__webpack_exports__, { 6139/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 6140/* harmony export */ }); 6141function checkOverflow() { 6142 const swiper = this; 6143 const { 6144 isLocked: wasLocked, 6145 params 6146 } = swiper; 6147 const { 6148 slidesOffsetBefore 6149 } = params; 6150 6151 if (slidesOffsetBefore) { 6152 const lastSlideIndex = swiper.slides.length - 1; 6153 const lastSlideRightEdge = swiper.slidesGrid[lastSlideIndex] + swiper.slidesSizesGrid[lastSlideIndex] + slidesOffsetBefore * 2; 6154 swiper.isLocked = swiper.size > lastSlideRightEdge; 6155 } else { 6156 swiper.isLocked = swiper.snapGrid.length === 1; 6157 } 6158 6159 if (params.allowSlideNext === true) { 6160 swiper.allowSlideNext = !swiper.isLocked; 6161 } 6162 6163 if (params.allowSlidePrev === true) { 6164 swiper.allowSlidePrev = !swiper.isLocked; 6165 } 6166 6167 if (wasLocked && wasLocked !== swiper.isLocked) { 6168 swiper.isEnd = false; 6169 } 6170 6171 if (wasLocked !== swiper.isLocked) { 6172 swiper.emit(swiper.isLocked ? 'lock' : 'unlock'); 6173 } 6174} 6175 6176/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 6177 checkOverflow 6178}); 6179 6180/***/ }), 6181
vendor: 1,845 bytes, lines 6182-6247
6182/***/ "./node_modules/swiper/core/classes/addClasses.js": 6183/*!********************************************************!*\ 6184 !*** ./node_modules/swiper/core/classes/addClasses.js ***! 6185 \********************************************************/ 6186/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 6187 6188"use strict"; 6189__webpack_require__.r(__webpack_exports__); 6190/* harmony export */ __webpack_require__.d(__webpack_exports__, { 6191/* harmony export */ "default": () => (/* binding */ addClasses) 6192/* harmony export */ }); 6193function prepareClasses(entries, prefix) { 6194 const resultClasses = []; 6195 entries.forEach(item => { 6196 if (typeof item === 'object') { 6197 Object.keys(item).forEach(classNames => { 6198 if (item[classNames]) { 6199 resultClasses.push(prefix + classNames); 6200 } 6201 }); 6202 } else if (typeof item === 'string') { 6203 resultClasses.push(prefix + item); 6204 } 6205 }); 6206 return resultClasses; 6207} 6208 6209function addClasses() { 6210 const swiper = this; 6211 const { 6212 classNames, 6213 params, 6214 rtl, 6215 $el, 6216 device, 6217 support 6218 } = swiper; // prettier-ignore 6219 6220 const suffixes = prepareClasses(['initialized', params.direction, { 6221 'pointer-events': !support.touch 6222 }, { 6223 'free-mode': swiper.params.freeMode && params.freeMode.enabled 6224 }, { 6225 'autoheight': params.autoHeight 6226 }, { 6227 'rtl': rtl 6228 }, { 6229 'grid': params.grid && params.grid.rows > 1 6230 }, { 6231 'grid-column': params.grid && params.grid.rows > 1 && params.grid.fill === 'column' 6232 }, { 6233 'android': device.android 6234 }, { 6235 'ios': device.ios 6236 }, { 6237 'css-mode': params.cssMode 6238 }, { 6239 'centered': params.cssMode && params.centeredSlides 6240 }], params.containerModifierClass); 6241 classNames.push(...suffixes); 6242 $el.addClass([...classNames].join(' ')); 6243 swiper.emitContainerClasses(); 6244} 6245 6246/***/ }), 6247
vendor: 1,107 bytes, lines 6248-6269
6248/***/ "./node_modules/swiper/core/classes/index.js": 6249/*!***************************************************!*\ 6250 !*** ./node_modules/swiper/core/classes/index.js ***! 6251 \***************************************************/ 6252/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 6253 6254"use strict"; 6255__webpack_require__.r(__webpack_exports__); 6256/* harmony export */ __webpack_require__.d(__webpack_exports__, { 6257/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 6258/* harmony export */ }); 6259/* harmony import */ var _addClasses_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./addClasses.js */ "./node_modules/swiper/core/classes/addClasses.js"); 6260/* harmony import */ var _removeClasses_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./removeClasses.js */ "./node_modules/swiper/core/classes/removeClasses.js"); 6261 6262 6263/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 6264 addClasses: _addClasses_js__WEBPACK_IMPORTED_MODULE_0__["default"], 6265 removeClasses: _removeClasses_js__WEBPACK_IMPORTED_MODULE_1__["default"] 6266}); 6267 6268/***/ }), 6269
vendor: 753 bytes, lines 6270-6292
6270/***/ "./node_modules/swiper/core/classes/removeClasses.js": 6271/*!***********************************************************!*\ 6272 !*** ./node_modules/swiper/core/classes/removeClasses.js ***! 6273 \***********************************************************/ 6274/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 6275 6276"use strict"; 6277__webpack_require__.r(__webpack_exports__); 6278/* harmony export */ __webpack_require__.d(__webpack_exports__, { 6279/* harmony export */ "default": () => (/* binding */ removeClasses) 6280/* harmony export */ }); 6281function removeClasses() { 6282 const swiper = this; 6283 const { 6284 $el, 6285 classNames 6286 } = swiper; 6287 $el.removeClass(classNames.join(' ')); 6288 swiper.emitContainerClasses(); 6289} 6290 6291/***/ }), 6292
vendor: 21,809 bytes, lines 6293-6938
6293/***/ "./node_modules/swiper/core/core.js": 6294/*!******************************************!*\ 6295 !*** ./node_modules/swiper/core/core.js ***! 6296 \******************************************/ 6297/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 6298 6299"use strict"; 6300__webpack_require__.r(__webpack_exports__); 6301/* harmony export */ __webpack_require__.d(__webpack_exports__, { 6302/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 6303/* harmony export */ }); 6304/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 6305/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 6306/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 6307/* harmony import */ var _shared_get_support_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../shared/get-support.js */ "./node_modules/swiper/shared/get-support.js"); 6308/* harmony import */ var _shared_get_device_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../shared/get-device.js */ "./node_modules/swiper/shared/get-device.js"); 6309/* harmony import */ var _shared_get_browser_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../shared/get-browser.js */ "./node_modules/swiper/shared/get-browser.js"); 6310/* harmony import */ var _modules_resize_resize_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./modules/resize/resize.js */ "./node_modules/swiper/core/modules/resize/resize.js"); 6311/* harmony import */ var _modules_observer_observer_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./modules/observer/observer.js */ "./node_modules/swiper/core/modules/observer/observer.js"); 6312/* harmony import */ var _events_emitter_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./events-emitter.js */ "./node_modules/swiper/core/events-emitter.js"); 6313/* harmony import */ var _update_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./update/index.js */ "./node_modules/swiper/core/update/index.js"); 6314/* harmony import */ var _translate_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./translate/index.js */ "./node_modules/swiper/core/translate/index.js"); 6315/* harmony import */ var _transition_index_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./transition/index.js */ "./node_modules/swiper/core/transition/index.js"); 6316/* harmony import */ var _slide_index_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./slide/index.js */ "./node_modules/swiper/core/slide/index.js"); 6317/* harmony import */ var _loop_index_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./loop/index.js */ "./node_modules/swiper/core/loop/index.js"); 6318/* harmony import */ var _grab_cursor_index_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./grab-cursor/index.js */ "./node_modules/swiper/core/grab-cursor/index.js"); 6319/* harmony import */ var _events_index_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./events/index.js */ "./node_modules/swiper/core/events/index.js"); 6320/* harmony import */ var _breakpoints_index_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./breakpoints/index.js */ "./node_modules/swiper/core/breakpoints/index.js"); 6321/* harmony import */ var _classes_index_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./classes/index.js */ "./node_modules/swiper/core/classes/index.js"); 6322/* harmony import */ var _images_index_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./images/index.js */ "./node_modules/swiper/core/images/index.js"); 6323/* harmony import */ var _check_overflow_index_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./check-overflow/index.js */ "./node_modules/swiper/core/check-overflow/index.js"); 6324/* harmony import */ var _defaults_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./defaults.js */ "./node_modules/swiper/core/defaults.js"); 6325/* harmony import */ var _moduleExtendParams_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./moduleExtendParams.js */ "./node_modules/swiper/core/moduleExtendParams.js"); 6326/* eslint no-param-reassign: "off" */ 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338 6339 6340 6341 6342 6343 6344 6345 6346 6347 6348 6349const prototypes = { 6350 eventsEmitter: _events_emitter_js__WEBPACK_IMPORTED_MODULE_8__["default"], 6351 update: _update_index_js__WEBPACK_IMPORTED_MODULE_9__["default"], 6352 translate: _translate_index_js__WEBPACK_IMPORTED_MODULE_10__["default"], 6353 transition: _transition_index_js__WEBPACK_IMPORTED_MODULE_11__["default"], 6354 slide: _slide_index_js__WEBPACK_IMPORTED_MODULE_12__["default"], 6355 loop: _loop_index_js__WEBPACK_IMPORTED_MODULE_13__["default"], 6356 grabCursor: _grab_cursor_index_js__WEBPACK_IMPORTED_MODULE_14__["default"], 6357 events: _events_index_js__WEBPACK_IMPORTED_MODULE_15__["default"], 6358 breakpoints: _breakpoints_index_js__WEBPACK_IMPORTED_MODULE_16__["default"], 6359 checkOverflow: _check_overflow_index_js__WEBPACK_IMPORTED_MODULE_19__["default"], 6360 classes: _classes_index_js__WEBPACK_IMPORTED_MODULE_17__["default"], 6361 images: _images_index_js__WEBPACK_IMPORTED_MODULE_18__["default"] 6362}; 6363const extendedDefaults = {}; 6364 6365class Swiper { 6366 constructor(...args) { 6367 let el; 6368 let params; 6369 6370 if (args.length === 1 && args[0].constructor && Object.prototype.toString.call(args[0]).slice(8, -1) === 'Object') { 6371 params = args[0]; 6372 } else { 6373 [el, params] = args; 6374 } 6375 6376 if (!params) params = {}; 6377 params = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.extend)({}, params); 6378 if (el && !params.el) params.el = el; 6379 6380 if (params.el && (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(params.el).length > 1) { 6381 const swipers = []; 6382 (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(params.el).each(containerEl => { 6383 const newParams = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.extend)({}, params, { 6384 el: containerEl 6385 }); 6386 swipers.push(new Swiper(newParams)); 6387 }); 6388 return swipers; 6389 } // Swiper Instance 6390 6391 6392 const swiper = this; 6393 swiper.__swiper__ = true; 6394 swiper.support = (0,_shared_get_support_js__WEBPACK_IMPORTED_MODULE_3__.getSupport)(); 6395 swiper.device = (0,_shared_get_device_js__WEBPACK_IMPORTED_MODULE_4__.getDevice)({ 6396 userAgent: params.userAgent 6397 }); 6398 swiper.browser = (0,_shared_get_browser_js__WEBPACK_IMPORTED_MODULE_5__.getBrowser)(); 6399 swiper.eventsListeners = {}; 6400 swiper.eventsAnyListeners = []; 6401 swiper.modules = [...swiper.__modules__]; 6402 6403 if (params.modules && Array.isArray(params.modules)) { 6404 swiper.modules.push(...params.modules); 6405 } 6406 6407 const allModulesParams = {}; 6408 swiper.modules.forEach(mod => { 6409 mod({ 6410 swiper, 6411 extendParams: (0,_moduleExtendParams_js__WEBPACK_IMPORTED_MODULE_21__["default"])(params, allModulesParams), 6412 on: swiper.on.bind(swiper), 6413 once: swiper.once.bind(swiper), 6414 off: swiper.off.bind(swiper), 6415 emit: swiper.emit.bind(swiper) 6416 }); 6417 }); // Extend defaults with modules params 6418 6419 const swiperParams = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.extend)({}, _defaults_js__WEBPACK_IMPORTED_MODULE_20__["default"], allModulesParams); // Extend defaults with passed params 6420 6421 swiper.params = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.extend)({}, swiperParams, extendedDefaults, params); 6422 swiper.originalParams = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.extend)({}, swiper.params); 6423 swiper.passedParams = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.extend)({}, params); // add event listeners 6424 6425 if (swiper.params && swiper.params.on) { 6426 Object.keys(swiper.params.on).forEach(eventName => { 6427 swiper.on(eventName, swiper.params.on[eventName]); 6428 }); 6429 } 6430 6431 if (swiper.params && swiper.params.onAny) { 6432 swiper.onAny(swiper.params.onAny); 6433 } // Save Dom lib 6434 6435 6436 swiper.$ = _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"]; // Extend Swiper 6437 6438 Object.assign(swiper, { 6439 enabled: swiper.params.enabled, 6440 el, 6441 // Classes 6442 classNames: [], 6443 // Slides 6444 slides: (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(), 6445 slidesGrid: [], 6446 snapGrid: [], 6447 slidesSizesGrid: [], 6448 6449 // isDirection 6450 isHorizontal() { 6451 return swiper.params.direction === 'horizontal'; 6452 }, 6453 6454 isVertical() { 6455 return swiper.params.direction === 'vertical'; 6456 }, 6457 6458 // Indexes 6459 activeIndex: 0, 6460 realIndex: 0, 6461 // 6462 isBeginning: true, 6463 isEnd: false, 6464 // Props 6465 translate: 0, 6466 previousTranslate: 0, 6467 progress: 0, 6468 velocity: 0, 6469 animating: false, 6470 // Locks 6471 allowSlideNext: swiper.params.allowSlideNext, 6472 allowSlidePrev: swiper.params.allowSlidePrev, 6473 // Touch Events 6474 touchEvents: function touchEvents() { 6475 const touch = ['touchstart', 'touchmove', 'touchend', 'touchcancel']; 6476 const desktop = ['pointerdown', 'pointermove', 'pointerup']; 6477 swiper.touchEventsTouch = { 6478 start: touch[0], 6479 move: touch[1], 6480 end: touch[2], 6481 cancel: touch[3] 6482 }; 6483 swiper.touchEventsDesktop = { 6484 start: desktop[0], 6485 move: desktop[1], 6486 end: desktop[2] 6487 }; 6488 return swiper.support.touch || !swiper.params.simulateTouch ? swiper.touchEventsTouch : swiper.touchEventsDesktop; 6489 }(), 6490 touchEventsData: { 6491 isTouched: undefined, 6492 isMoved: undefined, 6493 allowTouchCallbacks: undefined, 6494 touchStartTime: undefined, 6495 isScrolling: undefined, 6496 currentTranslate: undefined, 6497 startTranslate: undefined, 6498 allowThresholdMove: undefined, 6499 // Form elements to match 6500 focusableElements: swiper.params.focusableElements, 6501 // Last click time 6502 lastClickTime: (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.now)(), 6503 clickTimeout: undefined, 6504 // Velocities 6505 velocities: [], 6506 allowMomentumBounce: undefined, 6507 isTouchEvent: undefined, 6508 startMoving: undefined 6509 }, 6510 // Clicks 6511 allowClick: true, 6512 // Touches 6513 allowTouchMove: swiper.params.allowTouchMove, 6514 touches: { 6515 startX: 0, 6516 startY: 0, 6517 currentX: 0, 6518 currentY: 0, 6519 diff: 0 6520 }, 6521 // Images 6522 imagesToLoad: [], 6523 imagesLoaded: 0 6524 }); 6525 swiper.emit('_swiper'); // Init 6526 6527 if (swiper.params.init) { 6528 swiper.init(); 6529 } // Return app instance 6530 6531 6532 return swiper; 6533 } 6534 6535 enable() { 6536 const swiper = this; 6537 if (swiper.enabled) return; 6538 swiper.enabled = true; 6539 6540 if (swiper.params.grabCursor) { 6541 swiper.setGrabCursor(); 6542 } 6543 6544 swiper.emit('enable'); 6545 } 6546 6547 disable() { 6548 const swiper = this; 6549 if (!swiper.enabled) return; 6550 swiper.enabled = false; 6551 6552 if (swiper.params.grabCursor) { 6553 swiper.unsetGrabCursor(); 6554 } 6555 6556 swiper.emit('disable'); 6557 } 6558 6559 setProgress(progress, speed) { 6560 const swiper = this; 6561 progress = Math.min(Math.max(progress, 0), 1); 6562 const min = swiper.minTranslate(); 6563 const max = swiper.maxTranslate(); 6564 const current = (max - min) * progress + min; 6565 swiper.translateTo(current, typeof speed === 'undefined' ? 0 : speed); 6566 swiper.updateActiveIndex(); 6567 swiper.updateSlidesClasses(); 6568 } 6569 6570 emitContainerClasses() { 6571 const swiper = this; 6572 if (!swiper.params._emitClasses || !swiper.el) return; 6573 const cls = swiper.el.className.split(' ').filter(className => { 6574 return className.indexOf('swiper') === 0 || className.indexOf(swiper.params.containerModifierClass) === 0; 6575 }); 6576 swiper.emit('_containerClasses', cls.join(' ')); 6577 } 6578 6579 getSlideClasses(slideEl) { 6580 const swiper = this; 6581 return slideEl.className.split(' ').filter(className => { 6582 return className.indexOf('swiper-slide') === 0 || className.indexOf(swiper.params.slideClass) === 0; 6583 }).join(' '); 6584 } 6585 6586 emitSlidesClasses() { 6587 const swiper = this; 6588 if (!swiper.params._emitClasses || !swiper.el) return; 6589 const updates = []; 6590 swiper.slides.each(slideEl => { 6591 const classNames = swiper.getSlideClasses(slideEl); 6592 updates.push({ 6593 slideEl, 6594 classNames 6595 }); 6596 swiper.emit('_slideClass', slideEl, classNames); 6597 }); 6598 swiper.emit('_slideClasses', updates); 6599 } 6600 6601 slidesPerViewDynamic(view = 'current', exact = false) { 6602 const swiper = this; 6603 const { 6604 params, 6605 slides, 6606 slidesGrid, 6607 slidesSizesGrid, 6608 size: swiperSize, 6609 activeIndex 6610 } = swiper; 6611 let spv = 1; 6612 6613 if (params.centeredSlides) { 6614 let slideSize = slides[activeIndex].swiperSlideSize; 6615 let breakLoop; 6616 6617 for (let i = activeIndex + 1; i < slides.length; i += 1) { 6618 if (slides[i] && !breakLoop) { 6619 slideSize += slides[i].swiperSlideSize; 6620 spv += 1; 6621 if (slideSize > swiperSize) breakLoop = true; 6622 } 6623 } 6624 6625 for (let i = activeIndex - 1; i >= 0; i -= 1) { 6626 if (slides[i] && !breakLoop) { 6627 slideSize += slides[i].swiperSlideSize; 6628 spv += 1; 6629 if (slideSize > swiperSize) breakLoop = true; 6630 } 6631 } 6632 } else { 6633 // eslint-disable-next-line 6634 if (view === 'current') { 6635 for (let i = activeIndex + 1; i < slides.length; i += 1) { 6636 const slideInView = exact ? slidesGrid[i] + slidesSizesGrid[i] - slidesGrid[activeIndex] < swiperSize : slidesGrid[i] - slidesGrid[activeIndex] < swiperSize; 6637 6638 if (slideInView) { 6639 spv += 1; 6640 } 6641 } 6642 } else { 6643 // previous 6644 for (let i = activeIndex - 1; i >= 0; i -= 1) { 6645 const slideInView = slidesGrid[activeIndex] - slidesGrid[i] < swiperSize; 6646 6647 if (slideInView) { 6648 spv += 1; 6649 } 6650 } 6651 } 6652 } 6653 6654 return spv; 6655 } 6656 6657 update() { 6658 const swiper = this; 6659 if (!swiper || swiper.destroyed) return; 6660 const { 6661 snapGrid, 6662 params 6663 } = swiper; // Breakpoints 6664 6665 if (params.breakpoints) { 6666 swiper.setBreakpoint(); 6667 } 6668 6669 swiper.updateSize(); 6670 swiper.updateSlides(); 6671 swiper.updateProgress(); 6672 swiper.updateSlidesClasses(); 6673 6674 function setTranslate() { 6675 const translateValue = swiper.rtlTranslate ? swiper.translate * -1 : swiper.translate; 6676 const newTranslate = Math.min(Math.max(translateValue, swiper.maxTranslate()), swiper.minTranslate()); 6677 swiper.setTranslate(newTranslate); 6678 swiper.updateActiveIndex(); 6679 swiper.updateSlidesClasses(); 6680 } 6681 6682 let translated; 6683 6684 if (swiper.params.freeMode && swiper.params.freeMode.enabled) { 6685 setTranslate(); 6686 6687 if (swiper.params.autoHeight) { 6688 swiper.updateAutoHeight(); 6689 } 6690 } else { 6691 if ((swiper.params.slidesPerView === 'auto' || swiper.params.slidesPerView > 1) && swiper.isEnd && !swiper.params.centeredSlides) { 6692 translated = swiper.slideTo(swiper.slides.length - 1, 0, false, true); 6693 } else { 6694 translated = swiper.slideTo(swiper.activeIndex, 0, false, true); 6695 } 6696 6697 if (!translated) { 6698 setTranslate(); 6699 } 6700 } 6701 6702 if (params.watchOverflow && snapGrid !== swiper.snapGrid) { 6703 swiper.checkOverflow(); 6704 } 6705 6706 swiper.emit('update'); 6707 } 6708 6709 changeDirection(newDirection, needUpdate = true) { 6710 const swiper = this; 6711 const currentDirection = swiper.params.direction; 6712 6713 if (!newDirection) { 6714 // eslint-disable-next-line 6715 newDirection = currentDirection === 'horizontal' ? 'vertical' : 'horizontal'; 6716 } 6717 6718 if (newDirection === currentDirection || newDirection !== 'horizontal' && newDirection !== 'vertical') { 6719 return swiper; 6720 } 6721 6722 swiper.$el.removeClass(`${swiper.params.containerModifierClass}${currentDirection}`).addClass(`${swiper.params.containerModifierClass}${newDirection}`); 6723 swiper.emitContainerClasses(); 6724 swiper.params.direction = newDirection; 6725 swiper.slides.each(slideEl => { 6726 if (newDirection === 'vertical') { 6727 slideEl.style.width = ''; 6728 } else { 6729 slideEl.style.height = ''; 6730 } 6731 }); 6732 swiper.emit('changeDirection'); 6733 if (needUpdate) swiper.update(); 6734 return swiper; 6735 } 6736 6737 mount(el) { 6738 const swiper = this; 6739 if (swiper.mounted) return true; // Find el 6740 6741 const $el = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(el || swiper.params.el); 6742 el = $el[0]; 6743 6744 if (!el) { 6745 return false; 6746 } 6747 6748 el.swiper = swiper; 6749 6750 const getWrapperSelector = () => { 6751 return `.${(swiper.params.wrapperClass || '').trim().split(' ').join('.')}`; 6752 }; 6753 6754 const getWrapper = () => { 6755 if (el && el.shadowRoot && el.shadowRoot.querySelector) { 6756 const res = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(el.shadowRoot.querySelector(getWrapperSelector())); // Children needs to return slot items 6757 6758 res.children = options => $el.children(options); 6759 6760 return res; 6761 } 6762 6763 return $el.children(getWrapperSelector()); 6764 }; // Find Wrapper 6765 6766 6767 let $wrapperEl = getWrapper(); 6768 6769 if ($wrapperEl.length === 0 && swiper.params.createElements) { 6770 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 6771 const wrapper = document.createElement('div'); 6772 $wrapperEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(wrapper); 6773 wrapper.className = swiper.params.wrapperClass; 6774 $el.append(wrapper); 6775 $el.children(`.${swiper.params.slideClass}`).each(slideEl => { 6776 $wrapperEl.append(slideEl); 6777 }); 6778 } 6779 6780 Object.assign(swiper, { 6781 $el, 6782 el, 6783 $wrapperEl, 6784 wrapperEl: $wrapperEl[0], 6785 mounted: true, 6786 // RTL 6787 rtl: el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl', 6788 rtlTranslate: swiper.params.direction === 'horizontal' && (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'), 6789 wrongRTL: $wrapperEl.css('display') === '-webkit-box' 6790 }); 6791 return true; 6792 } 6793 6794 init(el) { 6795 const swiper = this; 6796 if (swiper.initialized) return swiper; 6797 const mounted = swiper.mount(el); 6798 if (mounted === false) return swiper; 6799 swiper.emit('beforeInit'); // Set breakpoint 6800 6801 if (swiper.params.breakpoints) { 6802 swiper.setBreakpoint(); 6803 } // Add Classes 6804 6805 6806 swiper.addClasses(); // Create loop 6807 6808 if (swiper.params.loop) { 6809 swiper.loopCreate(); 6810 } // Update size 6811 6812 6813 swiper.updateSize(); // Update slides 6814 6815 swiper.updateSlides(); 6816 6817 if (swiper.params.watchOverflow) { 6818 swiper.checkOverflow(); 6819 } // Set Grab Cursor 6820 6821 6822 if (swiper.params.grabCursor && swiper.enabled) { 6823 swiper.setGrabCursor(); 6824 } 6825 6826 if (swiper.params.preloadImages) { 6827 swiper.preloadImages(); 6828 } // Slide To Initial Slide 6829 6830 6831 if (swiper.params.loop) { 6832 swiper.slideTo(swiper.params.initialSlide + swiper.loopedSlides, 0, swiper.params.runCallbacksOnInit, false, true); 6833 } else { 6834 swiper.slideTo(swiper.params.initialSlide, 0, swiper.params.runCallbacksOnInit, false, true); 6835 } // Attach events 6836 6837 6838 swiper.attachEvents(); // Init Flag 6839 6840 swiper.initialized = true; // Emit 6841 6842 swiper.emit('init'); 6843 swiper.emit('afterInit'); 6844 return swiper; 6845 } 6846 6847 destroy(deleteInstance = true, cleanStyles = true) { 6848 const swiper = this; 6849 const { 6850 params, 6851 $el, 6852 $wrapperEl, 6853 slides 6854 } = swiper; 6855 6856 if (typeof swiper.params === 'undefined' || swiper.destroyed) { 6857 return null; 6858 } 6859 6860 swiper.emit('beforeDestroy'); // Init Flag 6861 6862 swiper.initialized = false; // Detach events 6863 6864 swiper.detachEvents(); // Destroy loop 6865 6866 if (params.loop) { 6867 swiper.loopDestroy(); 6868 } // Cleanup styles 6869 6870 6871 if (cleanStyles) { 6872 swiper.removeClasses(); 6873 $el.removeAttr('style'); 6874 $wrapperEl.removeAttr('style'); 6875 6876 if (slides && slides.length) { 6877 slides.removeClass([params.slideVisibleClass, params.slideActiveClass, params.slideNextClass, params.slidePrevClass].join(' ')).removeAttr('style').removeAttr('data-swiper-slide-index'); 6878 } 6879 } 6880 6881 swiper.emit('destroy'); // Detach emitter events 6882 6883 Object.keys(swiper.eventsListeners).forEach(eventName => { 6884 swiper.off(eventName); 6885 }); 6886 6887 if (deleteInstance !== false) { 6888 swiper.$el[0].swiper = null; 6889 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.deleteProps)(swiper); 6890 } 6891 6892 swiper.destroyed = true; 6893 return null; 6894 } 6895 6896 static extendDefaults(newDefaults) { 6897 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.extend)(extendedDefaults, newDefaults); 6898 } 6899 6900 static get extendedDefaults() { 6901 return extendedDefaults; 6902 } 6903 6904 static get defaults() { 6905 return _defaults_js__WEBPACK_IMPORTED_MODULE_20__["default"]; 6906 } 6907 6908 static installModule(mod) { 6909 if (!Swiper.prototype.__modules__) Swiper.prototype.__modules__ = []; 6910 const modules = Swiper.prototype.__modules__; 6911 6912 if (typeof mod === 'function' && modules.indexOf(mod) < 0) { 6913 modules.push(mod); 6914 } 6915 } 6916 6917 static use(module) { 6918 if (Array.isArray(module)) { 6919 module.forEach(m => Swiper.installModule(m)); 6920 return Swiper; 6921 } 6922 6923 Swiper.installModule(module); 6924 return Swiper; 6925 } 6926 6927} 6928 6929Object.keys(prototypes).forEach(prototypeGroup => { 6930 Object.keys(prototypes[prototypeGroup]).forEach(protoMethod => { 6931 Swiper.prototype[protoMethod] = prototypes[prototypeGroup][protoMethod]; 6932 }); 6933}); 6934Swiper.use([_modules_resize_resize_js__WEBPACK_IMPORTED_MODULE_6__["default"], _modules_observer_observer_js__WEBPACK_IMPORTED_MODULE_7__["default"]]); 6935/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Swiper); 6936 6937/***/ }), 6938
vendor: 3,698 bytes, lines 6939-7074
6939/***/ "./node_modules/swiper/core/defaults.js": 6940/*!**********************************************!*\ 6941 !*** ./node_modules/swiper/core/defaults.js ***! 6942 \**********************************************/ 6943/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 6944 6945"use strict"; 6946__webpack_require__.r(__webpack_exports__); 6947/* harmony export */ __webpack_require__.d(__webpack_exports__, { 6948/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 6949/* harmony export */ }); 6950/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 6951 init: true, 6952 direction: 'horizontal', 6953 touchEventsTarget: 'wrapper', 6954 initialSlide: 0, 6955 speed: 300, 6956 cssMode: false, 6957 updateOnWindowResize: true, 6958 resizeObserver: true, 6959 nested: false, 6960 createElements: false, 6961 enabled: true, 6962 focusableElements: 'input, select, option, textarea, button, video, label', 6963 // Overrides 6964 width: null, 6965 height: null, 6966 // 6967 preventInteractionOnTransition: false, 6968 // ssr 6969 userAgent: null, 6970 url: null, 6971 // To support iOS's swipe-to-go-back gesture (when being used in-app). 6972 edgeSwipeDetection: false, 6973 edgeSwipeThreshold: 20, 6974 // Autoheight 6975 autoHeight: false, 6976 // Set wrapper width 6977 setWrapperSize: false, 6978 // Virtual Translate 6979 virtualTranslate: false, 6980 // Effects 6981 effect: 'slide', 6982 // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip' 6983 // Breakpoints 6984 breakpoints: undefined, 6985 breakpointsBase: 'window', 6986 // Slides grid 6987 spaceBetween: 0, 6988 slidesPerView: 1, 6989 slidesPerGroup: 1, 6990 slidesPerGroupSkip: 0, 6991 slidesPerGroupAuto: false, 6992 centeredSlides: false, 6993 centeredSlidesBounds: false, 6994 slidesOffsetBefore: 0, 6995 // in px 6996 slidesOffsetAfter: 0, 6997 // in px 6998 normalizeSlideIndex: true, 6999 centerInsufficientSlides: false, 7000 // Disable swiper and hide navigation when container not overflow 7001 watchOverflow: true, 7002 // Round length 7003 roundLengths: false, 7004 // Touches 7005 touchRatio: 1, 7006 touchAngle: 45, 7007 simulateTouch: true, 7008 shortSwipes: true, 7009 longSwipes: true, 7010 longSwipesRatio: 0.5, 7011 longSwipesMs: 300, 7012 followFinger: true, 7013 allowTouchMove: true, 7014 threshold: 0, 7015 touchMoveStopPropagation: false, 7016 touchStartPreventDefault: true, 7017 touchStartForcePreventDefault: false, 7018 touchReleaseOnEdges: false, 7019 // Unique Navigation Elements 7020 uniqueNavElements: true, 7021 // Resistance 7022 resistance: true, 7023 resistanceRatio: 0.85, 7024 // Progress 7025 watchSlidesProgress: false, 7026 // Cursor 7027 grabCursor: false, 7028 // Clicks 7029 preventClicks: true, 7030 preventClicksPropagation: true, 7031 slideToClickedSlide: false, 7032 // Images 7033 preloadImages: true, 7034 updateOnImagesReady: true, 7035 // loop 7036 loop: false, 7037 loopAdditionalSlides: 0, 7038 loopedSlides: null, 7039 loopFillGroupWithBlank: false, 7040 loopPreventsSlide: true, 7041 // rewind 7042 rewind: false, 7043 // Swiping/no swiping 7044 allowSlidePrev: true, 7045 allowSlideNext: true, 7046 swipeHandler: null, 7047 // '.swipe-handler', 7048 noSwiping: true, 7049 noSwipingClass: 'swiper-no-swiping', 7050 noSwipingSelector: null, 7051 // Passive Listeners 7052 passiveListeners: true, 7053 // NS 7054 containerModifierClass: 'swiper-', 7055 // NEW 7056 slideClass: 'swiper-slide', 7057 slideBlankClass: 'swiper-slide-invisible-blank', 7058 slideActiveClass: 'swiper-slide-active', 7059 slideDuplicateActiveClass: 'swiper-slide-duplicate-active', 7060 slideVisibleClass: 'swiper-slide-visible', 7061 slideDuplicateClass: 'swiper-slide-duplicate', 7062 slideNextClass: 'swiper-slide-next', 7063 slideDuplicateNextClass: 'swiper-slide-duplicate-next', 7064 slidePrevClass: 'swiper-slide-prev', 7065 slideDuplicatePrevClass: 'swiper-slide-duplicate-prev', 7066 wrapperClass: 'swiper-wrapper', 7067 // Callbacks 7068 runCallbacksOnInit: true, 7069 // Internals 7070 _emitClasses: false 7071}); 7072 7073/***/ }), 7074
vendor: 3,523 bytes, lines 7075-7196
7075/***/ "./node_modules/swiper/core/events-emitter.js": 7076/*!****************************************************!*\ 7077 !*** ./node_modules/swiper/core/events-emitter.js ***! 7078 \****************************************************/ 7079/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 7080 7081"use strict"; 7082__webpack_require__.r(__webpack_exports__); 7083/* harmony export */ __webpack_require__.d(__webpack_exports__, { 7084/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 7085/* harmony export */ }); 7086/* eslint-disable no-underscore-dangle */ 7087/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 7088 on(events, handler, priority) { 7089 const self = this; 7090 if (typeof handler !== 'function') return self; 7091 const method = priority ? 'unshift' : 'push'; 7092 events.split(' ').forEach(event => { 7093 if (!self.eventsListeners[event]) self.eventsListeners[event] = []; 7094 self.eventsListeners[event][method](handler); 7095 }); 7096 return self; 7097 }, 7098 7099 once(events, handler, priority) { 7100 const self = this; 7101 if (typeof handler !== 'function') return self; 7102 7103 function onceHandler(...args) { 7104 self.off(events, onceHandler); 7105 7106 if (onceHandler.__emitterProxy) { 7107 delete onceHandler.__emitterProxy; 7108 } 7109 7110 handler.apply(self, args); 7111 } 7112 7113 onceHandler.__emitterProxy = handler; 7114 return self.on(events, onceHandler, priority); 7115 }, 7116 7117 onAny(handler, priority) { 7118 const self = this; 7119 if (typeof handler !== 'function') return self; 7120 const method = priority ? 'unshift' : 'push'; 7121 7122 if (self.eventsAnyListeners.indexOf(handler) < 0) { 7123 self.eventsAnyListeners[method](handler); 7124 } 7125 7126 return self; 7127 }, 7128 7129 offAny(handler) { 7130 const self = this; 7131 if (!self.eventsAnyListeners) return self; 7132 const index = self.eventsAnyListeners.indexOf(handler); 7133 7134 if (index >= 0) { 7135 self.eventsAnyListeners.splice(index, 1); 7136 } 7137 7138 return self; 7139 }, 7140 7141 off(events, handler) { 7142 const self = this; 7143 if (!self.eventsListeners) return self; 7144 events.split(' ').forEach(event => { 7145 if (typeof handler === 'undefined') { 7146 self.eventsListeners[event] = []; 7147 } else if (self.eventsListeners[event]) { 7148 self.eventsListeners[event].forEach((eventHandler, index) => { 7149 if (eventHandler === handler || eventHandler.__emitterProxy && eventHandler.__emitterProxy === handler) { 7150 self.eventsListeners[event].splice(index, 1); 7151 } 7152 }); 7153 } 7154 }); 7155 return self; 7156 }, 7157 7158 emit(...args) { 7159 const self = this; 7160 if (!self.eventsListeners) return self; 7161 let events; 7162 let data; 7163 let context; 7164 7165 if (typeof args[0] === 'string' || Array.isArray(args[0])) { 7166 events = args[0]; 7167 data = args.slice(1, args.length); 7168 context = self; 7169 } else { 7170 events = args[0].events; 7171 data = args[0].data; 7172 context = args[0].context || self; 7173 } 7174 7175 data.unshift(context); 7176 const eventsArray = Array.isArray(events) ? events : events.split(' '); 7177 eventsArray.forEach(event => { 7178 if (self.eventsAnyListeners && self.eventsAnyListeners.length) { 7179 self.eventsAnyListeners.forEach(eventHandler => { 7180 eventHandler.apply(context, [event, ...data]); 7181 }); 7182 } 7183 7184 if (self.eventsListeners && self.eventsListeners[event]) { 7185 self.eventsListeners[event].forEach(eventHandler => { 7186 eventHandler.apply(context, data); 7187 }); 7188 } 7189 }); 7190 return self; 7191 } 7192 7193}); 7194 7195/***/ }), 7196
vendor: 4,561 bytes, lines 7197-7314
7197/***/ "./node_modules/swiper/core/events/index.js": 7198/*!**************************************************!*\ 7199 !*** ./node_modules/swiper/core/events/index.js ***! 7200 \**************************************************/ 7201/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 7202 7203"use strict"; 7204__webpack_require__.r(__webpack_exports__); 7205/* harmony export */ __webpack_require__.d(__webpack_exports__, { 7206/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 7207/* harmony export */ }); 7208/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 7209/* harmony import */ var _onTouchStart_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./onTouchStart.js */ "./node_modules/swiper/core/events/onTouchStart.js"); 7210/* harmony import */ var _onTouchMove_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./onTouchMove.js */ "./node_modules/swiper/core/events/onTouchMove.js"); 7211/* harmony import */ var _onTouchEnd_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./onTouchEnd.js */ "./node_modules/swiper/core/events/onTouchEnd.js"); 7212/* harmony import */ var _onResize_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./onResize.js */ "./node_modules/swiper/core/events/onResize.js"); 7213/* harmony import */ var _onClick_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./onClick.js */ "./node_modules/swiper/core/events/onClick.js"); 7214/* harmony import */ var _onScroll_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./onScroll.js */ "./node_modules/swiper/core/events/onScroll.js"); 7215 7216 7217 7218 7219 7220 7221 7222let dummyEventAttached = false; 7223 7224function dummyEventListener() {} 7225 7226const events = (swiper, method) => { 7227 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 7228 const { 7229 params, 7230 touchEvents, 7231 el, 7232 wrapperEl, 7233 device, 7234 support 7235 } = swiper; 7236 const capture = !!params.nested; 7237 const domMethod = method === 'on' ? 'addEventListener' : 'removeEventListener'; 7238 const swiperMethod = method; // Touch Events 7239 7240 if (!support.touch) { 7241 el[domMethod](touchEvents.start, swiper.onTouchStart, false); 7242 document[domMethod](touchEvents.move, swiper.onTouchMove, capture); 7243 document[domMethod](touchEvents.end, swiper.onTouchEnd, false); 7244 } else { 7245 const passiveListener = touchEvents.start === 'touchstart' && support.passiveListener && params.passiveListeners ? { 7246 passive: true, 7247 capture: false 7248 } : false; 7249 el[domMethod](touchEvents.start, swiper.onTouchStart, passiveListener); 7250 el[domMethod](touchEvents.move, swiper.onTouchMove, support.passiveListener ? { 7251 passive: false, 7252 capture 7253 } : capture); 7254 el[domMethod](touchEvents.end, swiper.onTouchEnd, passiveListener); 7255 7256 if (touchEvents.cancel) { 7257 el[domMethod](touchEvents.cancel, swiper.onTouchEnd, passiveListener); 7258 } 7259 } // Prevent Links Clicks 7260 7261 7262 if (params.preventClicks || params.preventClicksPropagation) { 7263 el[domMethod]('click', swiper.onClick, true); 7264 } 7265 7266 if (params.cssMode) { 7267 wrapperEl[domMethod]('scroll', swiper.onScroll); 7268 } // Resize handler 7269 7270 7271 if (params.updateOnWindowResize) { 7272 swiper[swiperMethod](device.ios || device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate', _onResize_js__WEBPACK_IMPORTED_MODULE_4__["default"], true); 7273 } else { 7274 swiper[swiperMethod]('observerUpdate', _onResize_js__WEBPACK_IMPORTED_MODULE_4__["default"], true); 7275 } 7276}; 7277 7278function attachEvents() { 7279 const swiper = this; 7280 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 7281 const { 7282 params, 7283 support 7284 } = swiper; 7285 swiper.onTouchStart = _onTouchStart_js__WEBPACK_IMPORTED_MODULE_1__["default"].bind(swiper); 7286 swiper.onTouchMove = _onTouchMove_js__WEBPACK_IMPORTED_MODULE_2__["default"].bind(swiper); 7287 swiper.onTouchEnd = _onTouchEnd_js__WEBPACK_IMPORTED_MODULE_3__["default"].bind(swiper); 7288 7289 if (params.cssMode) { 7290 swiper.onScroll = _onScroll_js__WEBPACK_IMPORTED_MODULE_6__["default"].bind(swiper); 7291 } 7292 7293 swiper.onClick = _onClick_js__WEBPACK_IMPORTED_MODULE_5__["default"].bind(swiper); 7294 7295 if (support.touch && !dummyEventAttached) { 7296 document.addEventListener('touchstart', dummyEventListener); 7297 dummyEventAttached = true; 7298 } 7299 7300 events(swiper, 'on'); 7301} 7302 7303function detachEvents() { 7304 const swiper = this; 7305 events(swiper, 'off'); 7306} 7307 7308/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 7309 attachEvents, 7310 detachEvents 7311}); 7312 7313/***/ }), 7314
vendor: 853 bytes, lines 7315-7341
7315/***/ "./node_modules/swiper/core/events/onClick.js": 7316/*!****************************************************!*\ 7317 !*** ./node_modules/swiper/core/events/onClick.js ***! 7318 \****************************************************/ 7319/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 7320 7321"use strict"; 7322__webpack_require__.r(__webpack_exports__); 7323/* harmony export */ __webpack_require__.d(__webpack_exports__, { 7324/* harmony export */ "default": () => (/* binding */ onClick) 7325/* harmony export */ }); 7326function onClick(e) { 7327 const swiper = this; 7328 if (!swiper.enabled) return; 7329 7330 if (!swiper.allowClick) { 7331 if (swiper.params.preventClicks) e.preventDefault(); 7332 7333 if (swiper.params.preventClicksPropagation && swiper.animating) { 7334 e.stopPropagation(); 7335 e.stopImmediatePropagation(); 7336 } 7337 } 7338} 7339 7340/***/ }), 7341
vendor: 1,627 bytes, lines 7342-7398
7342/***/ "./node_modules/swiper/core/events/onResize.js": 7343/*!*****************************************************!*\ 7344 !*** ./node_modules/swiper/core/events/onResize.js ***! 7345 \*****************************************************/ 7346/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 7347 7348"use strict"; 7349__webpack_require__.r(__webpack_exports__); 7350/* harmony export */ __webpack_require__.d(__webpack_exports__, { 7351/* harmony export */ "default": () => (/* binding */ onResize) 7352/* harmony export */ }); 7353function onResize() { 7354 const swiper = this; 7355 const { 7356 params, 7357 el 7358 } = swiper; 7359 if (el && el.offsetWidth === 0) return; // Breakpoints 7360 7361 if (params.breakpoints) { 7362 swiper.setBreakpoint(); 7363 } // Save locks 7364 7365 7366 const { 7367 allowSlideNext, 7368 allowSlidePrev, 7369 snapGrid 7370 } = swiper; // Disable locks on resize 7371 7372 swiper.allowSlideNext = true; 7373 swiper.allowSlidePrev = true; 7374 swiper.updateSize(); 7375 swiper.updateSlides(); 7376 swiper.updateSlidesClasses(); 7377 7378 if ((params.slidesPerView === 'auto' || params.slidesPerView > 1) && swiper.isEnd && !swiper.isBeginning && !swiper.params.centeredSlides) { 7379 swiper.slideTo(swiper.slides.length - 1, 0, false, true); 7380 } else { 7381 swiper.slideTo(swiper.activeIndex, 0, false, true); 7382 } 7383 7384 if (swiper.autoplay && swiper.autoplay.running && swiper.autoplay.paused) { 7385 swiper.autoplay.run(); 7386 } // Return locks after resize 7387 7388 7389 swiper.allowSlidePrev = allowSlidePrev; 7390 swiper.allowSlideNext = allowSlideNext; 7391 7392 if (swiper.params.watchOverflow && snapGrid !== swiper.snapGrid) { 7393 swiper.checkOverflow(); 7394 } 7395} 7396 7397/***/ }), 7398
vendor: 1,440 bytes, lines 7399-7447
7399/***/ "./node_modules/swiper/core/events/onScroll.js": 7400/*!*****************************************************!*\ 7401 !*** ./node_modules/swiper/core/events/onScroll.js ***! 7402 \*****************************************************/ 7403/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 7404 7405"use strict"; 7406__webpack_require__.r(__webpack_exports__); 7407/* harmony export */ __webpack_require__.d(__webpack_exports__, { 7408/* harmony export */ "default": () => (/* binding */ onScroll) 7409/* harmony export */ }); 7410function onScroll() { 7411 const swiper = this; 7412 const { 7413 wrapperEl, 7414 rtlTranslate, 7415 enabled 7416 } = swiper; 7417 if (!enabled) return; 7418 swiper.previousTranslate = swiper.translate; 7419 7420 if (swiper.isHorizontal()) { 7421 swiper.translate = -wrapperEl.scrollLeft; 7422 } else { 7423 swiper.translate = -wrapperEl.scrollTop; 7424 } // eslint-disable-next-line 7425 7426 7427 if (swiper.translate === -0) swiper.translate = 0; 7428 swiper.updateActiveIndex(); 7429 swiper.updateSlidesClasses(); 7430 let newProgress; 7431 const translatesDiff = swiper.maxTranslate() - swiper.minTranslate(); 7432 7433 if (translatesDiff === 0) { 7434 newProgress = 0; 7435 } else { 7436 newProgress = (swiper.translate - swiper.minTranslate()) / translatesDiff; 7437 } 7438 7439 if (newProgress !== swiper.progress) { 7440 swiper.updateProgress(rtlTranslate ? -swiper.translate : swiper.translate); 7441 } 7442 7443 swiper.emit('setTranslate', swiper.translate, false); 7444} 7445 7446/***/ }), 7447
vendor: 4,848 bytes, lines 7448-7606
7448/***/ "./node_modules/swiper/core/events/onTouchEnd.js": 7449/*!*******************************************************!*\ 7450 !*** ./node_modules/swiper/core/events/onTouchEnd.js ***! 7451 \*******************************************************/ 7452/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 7453 7454"use strict"; 7455__webpack_require__.r(__webpack_exports__); 7456/* harmony export */ __webpack_require__.d(__webpack_exports__, { 7457/* harmony export */ "default": () => (/* binding */ onTouchEnd) 7458/* harmony export */ }); 7459/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 7460 7461function onTouchEnd(event) { 7462 const swiper = this; 7463 const data = swiper.touchEventsData; 7464 const { 7465 params, 7466 touches, 7467 rtlTranslate: rtl, 7468 slidesGrid, 7469 enabled 7470 } = swiper; 7471 if (!enabled) return; 7472 let e = event; 7473 if (e.originalEvent) e = e.originalEvent; 7474 7475 if (data.allowTouchCallbacks) { 7476 swiper.emit('touchEnd', e); 7477 } 7478 7479 data.allowTouchCallbacks = false; 7480 7481 if (!data.isTouched) { 7482 if (data.isMoved && params.grabCursor) { 7483 swiper.setGrabCursor(false); 7484 } 7485 7486 data.isMoved = false; 7487 data.startMoving = false; 7488 return; 7489 } // Return Grab Cursor 7490 7491 7492 if (params.grabCursor && data.isMoved && data.isTouched && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) { 7493 swiper.setGrabCursor(false); 7494 } // Time diff 7495 7496 7497 const touchEndTime = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.now)(); 7498 const timeDiff = touchEndTime - data.touchStartTime; // Tap, doubleTap, Click 7499 7500 if (swiper.allowClick) { 7501 const pathTree = e.path || e.composedPath && e.composedPath(); 7502 swiper.updateClickedSlide(pathTree && pathTree[0] || e.target); 7503 swiper.emit('tap click', e); 7504 7505 if (timeDiff < 300 && touchEndTime - data.lastClickTime < 300) { 7506 swiper.emit('doubleTap doubleClick', e); 7507 } 7508 } 7509 7510 data.lastClickTime = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.now)(); 7511 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.nextTick)(() => { 7512 if (!swiper.destroyed) swiper.allowClick = true; 7513 }); 7514 7515 if (!data.isTouched || !data.isMoved || !swiper.swipeDirection || touches.diff === 0 || data.currentTranslate === data.startTranslate) { 7516 data.isTouched = false; 7517 data.isMoved = false; 7518 data.startMoving = false; 7519 return; 7520 } 7521 7522 data.isTouched = false; 7523 data.isMoved = false; 7524 data.startMoving = false; 7525 let currentPos; 7526 7527 if (params.followFinger) { 7528 currentPos = rtl ? swiper.translate : -swiper.translate; 7529 } else { 7530 currentPos = -data.currentTranslate; 7531 } 7532 7533 if (params.cssMode) { 7534 return; 7535 } 7536 7537 if (swiper.params.freeMode && params.freeMode.enabled) { 7538 swiper.freeMode.onTouchEnd({ 7539 currentPos 7540 }); 7541 return; 7542 } // Find current slide 7543 7544 7545 let stopIndex = 0; 7546 let groupSize = swiper.slidesSizesGrid[0]; 7547 7548 for (let i = 0; i < slidesGrid.length; i += i < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup) { 7549 const increment = i < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup; 7550 7551 if (typeof slidesGrid[i + increment] !== 'undefined') { 7552 if (currentPos >= slidesGrid[i] && currentPos < slidesGrid[i + increment]) { 7553 stopIndex = i; 7554 groupSize = slidesGrid[i + increment] - slidesGrid[i]; 7555 } 7556 } else if (currentPos >= slidesGrid[i]) { 7557 stopIndex = i; 7558 groupSize = slidesGrid[slidesGrid.length - 1] - slidesGrid[slidesGrid.length - 2]; 7559 } 7560 } // Find current slide size 7561 7562 7563 const ratio = (currentPos - slidesGrid[stopIndex]) / groupSize; 7564 const increment = stopIndex < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup; 7565 7566 if (timeDiff > params.longSwipesMs) { 7567 // Long touches 7568 if (!params.longSwipes) { 7569 swiper.slideTo(swiper.activeIndex); 7570 return; 7571 } 7572 7573 if (swiper.swipeDirection === 'next') { 7574 if (ratio >= params.longSwipesRatio) swiper.slideTo(stopIndex + increment);else swiper.slideTo(stopIndex); 7575 } 7576 7577 if (swiper.swipeDirection === 'prev') { 7578 if (ratio > 1 - params.longSwipesRatio) swiper.slideTo(stopIndex + increment);else swiper.slideTo(stopIndex); 7579 } 7580 } else { 7581 // Short swipes 7582 if (!params.shortSwipes) { 7583 swiper.slideTo(swiper.activeIndex); 7584 return; 7585 } 7586 7587 const isNavButtonTarget = swiper.navigation && (e.target === swiper.navigation.nextEl || e.target === swiper.navigation.prevEl); 7588 7589 if (!isNavButtonTarget) { 7590 if (swiper.swipeDirection === 'next') { 7591 swiper.slideTo(stopIndex + increment); 7592 } 7593 7594 if (swiper.swipeDirection === 'prev') { 7595 swiper.slideTo(stopIndex); 7596 } 7597 } else if (e.target === swiper.navigation.nextEl) { 7598 swiper.slideTo(stopIndex + increment); 7599 } else { 7600 swiper.slideTo(stopIndex); 7601 } 7602 } 7603} 7604 7605/***/ }), 7606
vendor: 7,731 bytes, lines 7607-7845
7607/***/ "./node_modules/swiper/core/events/onTouchMove.js": 7608/*!********************************************************!*\ 7609 !*** ./node_modules/swiper/core/events/onTouchMove.js ***! 7610 \********************************************************/ 7611/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 7612 7613"use strict"; 7614__webpack_require__.r(__webpack_exports__); 7615/* harmony export */ __webpack_require__.d(__webpack_exports__, { 7616/* harmony export */ "default": () => (/* binding */ onTouchMove) 7617/* harmony export */ }); 7618/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 7619/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 7620/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 7621 7622 7623 7624function onTouchMove(event) { 7625 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 7626 const swiper = this; 7627 const data = swiper.touchEventsData; 7628 const { 7629 params, 7630 touches, 7631 rtlTranslate: rtl, 7632 enabled 7633 } = swiper; 7634 if (!enabled) return; 7635 let e = event; 7636 if (e.originalEvent) e = e.originalEvent; 7637 7638 if (!data.isTouched) { 7639 if (data.startMoving && data.isScrolling) { 7640 swiper.emit('touchMoveOpposite', e); 7641 } 7642 7643 return; 7644 } 7645 7646 if (data.isTouchEvent && e.type !== 'touchmove') return; 7647 const targetTouch = e.type === 'touchmove' && e.targetTouches && (e.targetTouches[0] || e.changedTouches[0]); 7648 const pageX = e.type === 'touchmove' ? targetTouch.pageX : e.pageX; 7649 const pageY = e.type === 'touchmove' ? targetTouch.pageY : e.pageY; 7650 7651 if (e.preventedByNestedSwiper) { 7652 touches.startX = pageX; 7653 touches.startY = pageY; 7654 return; 7655 } 7656 7657 if (!swiper.allowTouchMove) { 7658 // isMoved = true; 7659 swiper.allowClick = false; 7660 7661 if (data.isTouched) { 7662 Object.assign(touches, { 7663 startX: pageX, 7664 startY: pageY, 7665 currentX: pageX, 7666 currentY: pageY 7667 }); 7668 data.touchStartTime = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.now)(); 7669 } 7670 7671 return; 7672 } 7673 7674 if (data.isTouchEvent && params.touchReleaseOnEdges && !params.loop) { 7675 if (swiper.isVertical()) { 7676 // Vertical 7677 if (pageY < touches.startY && swiper.translate <= swiper.maxTranslate() || pageY > touches.startY && swiper.translate >= swiper.minTranslate()) { 7678 data.isTouched = false; 7679 data.isMoved = false; 7680 return; 7681 } 7682 } else if (pageX < touches.startX && swiper.translate <= swiper.maxTranslate() || pageX > touches.startX && swiper.translate >= swiper.minTranslate()) { 7683 return; 7684 } 7685 } 7686 7687 if (data.isTouchEvent && document.activeElement) { 7688 if (e.target === document.activeElement && (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(e.target).is(data.focusableElements)) { 7689 data.isMoved = true; 7690 swiper.allowClick = false; 7691 return; 7692 } 7693 } 7694 7695 if (data.allowTouchCallbacks) { 7696 swiper.emit('touchMove', e); 7697 } 7698 7699 if (e.targetTouches && e.targetTouches.length > 1) return; 7700 touches.currentX = pageX; 7701 touches.currentY = pageY; 7702 const diffX = touches.currentX - touches.startX; 7703 const diffY = touches.currentY - touches.startY; 7704 if (swiper.params.threshold && Math.sqrt(diffX ** 2 + diffY ** 2) < swiper.params.threshold) return; 7705 7706 if (typeof data.isScrolling === 'undefined') { 7707 let touchAngle; 7708 7709 if (swiper.isHorizontal() && touches.currentY === touches.startY || swiper.isVertical() && touches.currentX === touches.startX) { 7710 data.isScrolling = false; 7711 } else { 7712 // eslint-disable-next-line 7713 if (diffX * diffX + diffY * diffY >= 25) { 7714 touchAngle = Math.atan2(Math.abs(diffY), Math.abs(diffX)) * 180 / Math.PI; 7715 data.isScrolling = swiper.isHorizontal() ? touchAngle > params.touchAngle : 90 - touchAngle > params.touchAngle; 7716 } 7717 } 7718 } 7719 7720 if (data.isScrolling) { 7721 swiper.emit('touchMoveOpposite', e); 7722 } 7723 7724 if (typeof data.startMoving === 'undefined') { 7725 if (touches.currentX !== touches.startX || touches.currentY !== touches.startY) { 7726 data.startMoving = true; 7727 } 7728 } 7729 7730 if (data.isScrolling) { 7731 data.isTouched = false; 7732 return; 7733 } 7734 7735 if (!data.startMoving) { 7736 return; 7737 } 7738 7739 swiper.allowClick = false; 7740 7741 if (!params.cssMode && e.cancelable) { 7742 e.preventDefault(); 7743 } 7744 7745 if (params.touchMoveStopPropagation && !params.nested) { 7746 e.stopPropagation(); 7747 } 7748 7749 if (!data.isMoved) { 7750 if (params.loop && !params.cssMode) { 7751 swiper.loopFix(); 7752 } 7753 7754 data.startTranslate = swiper.getTranslate(); 7755 swiper.setTransition(0); 7756 7757 if (swiper.animating) { 7758 swiper.$wrapperEl.trigger('webkitTransitionEnd transitionend'); 7759 } 7760 7761 data.allowMomentumBounce = false; // Grab Cursor 7762 7763 if (params.grabCursor && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) { 7764 swiper.setGrabCursor(true); 7765 } 7766 7767 swiper.emit('sliderFirstMove', e); 7768 } 7769 7770 swiper.emit('sliderMove', e); 7771 data.isMoved = true; 7772 let diff = swiper.isHorizontal() ? diffX : diffY; 7773 touches.diff = diff; 7774 diff *= params.touchRatio; 7775 if (rtl) diff = -diff; 7776 swiper.swipeDirection = diff > 0 ? 'prev' : 'next'; 7777 data.currentTranslate = diff + data.startTranslate; 7778 let disableParentSwiper = true; 7779 let resistanceRatio = params.resistanceRatio; 7780 7781 if (params.touchReleaseOnEdges) { 7782 resistanceRatio = 0; 7783 } 7784 7785 if (diff > 0 && data.currentTranslate > swiper.minTranslate()) { 7786 disableParentSwiper = false; 7787 if (params.resistance) data.currentTranslate = swiper.minTranslate() - 1 + (-swiper.minTranslate() + data.startTranslate + diff) ** resistanceRatio; 7788 } else if (diff < 0 && data.currentTranslate < swiper.maxTranslate()) { 7789 disableParentSwiper = false; 7790 if (params.resistance) data.currentTranslate = swiper.maxTranslate() + 1 - (swiper.maxTranslate() - data.startTranslate - diff) ** resistanceRatio; 7791 } 7792 7793 if (disableParentSwiper) { 7794 e.preventedByNestedSwiper = true; 7795 } // Directions locks 7796 7797 7798 if (!swiper.allowSlideNext && swiper.swipeDirection === 'next' && data.currentTranslate < data.startTranslate) { 7799 data.currentTranslate = data.startTranslate; 7800 } 7801 7802 if (!swiper.allowSlidePrev && swiper.swipeDirection === 'prev' && data.currentTranslate > data.startTranslate) { 7803 data.currentTranslate = data.startTranslate; 7804 } 7805 7806 if (!swiper.allowSlidePrev && !swiper.allowSlideNext) { 7807 data.currentTranslate = data.startTranslate; 7808 } // Threshold 7809 7810 7811 if (params.threshold > 0) { 7812 if (Math.abs(diff) > params.threshold || data.allowThresholdMove) { 7813 if (!data.allowThresholdMove) { 7814 data.allowThresholdMove = true; 7815 touches.startX = touches.currentX; 7816 touches.startY = touches.currentY; 7817 data.currentTranslate = data.startTranslate; 7818 touches.diff = swiper.isHorizontal() ? touches.currentX - touches.startX : touches.currentY - touches.startY; 7819 return; 7820 } 7821 } else { 7822 data.currentTranslate = data.startTranslate; 7823 return; 7824 } 7825 } 7826 7827 if (!params.followFinger || params.cssMode) return; // Update active index in free mode 7828 7829 if (params.freeMode && params.freeMode.enabled && swiper.freeMode || params.watchSlidesProgress) { 7830 swiper.updateActiveIndex(); 7831 swiper.updateSlidesClasses(); 7832 } 7833 7834 if (swiper.params.freeMode && params.freeMode.enabled && swiper.freeMode) { 7835 swiper.freeMode.onTouchMove(); 7836 } // Update progress 7837 7838 7839 swiper.updateProgress(data.currentTranslate); // Update translate 7840 7841 swiper.setTranslate(data.currentTranslate); 7842} 7843 7844/***/ }), 7845
vendor: 5,322 bytes, lines 7846-7976
7846/***/ "./node_modules/swiper/core/events/onTouchStart.js": 7847/*!*********************************************************!*\ 7848 !*** ./node_modules/swiper/core/events/onTouchStart.js ***! 7849 \*********************************************************/ 7850/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 7851 7852"use strict"; 7853__webpack_require__.r(__webpack_exports__); 7854/* harmony export */ __webpack_require__.d(__webpack_exports__, { 7855/* harmony export */ "default": () => (/* binding */ onTouchStart) 7856/* harmony export */ }); 7857/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 7858/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 7859/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 7860 7861 7862 // Modified from https://stackoverflow.com/questions/54520554/custom-element-getrootnode-closest-function-crossing-multiple-parent-shadowd 7863 7864function closestElement(selector, base = this) { 7865 function __closestFrom(el) { 7866 if (!el || el === (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)() || el === (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)()) return null; 7867 if (el.assignedSlot) el = el.assignedSlot; 7868 const found = el.closest(selector); 7869 return found || __closestFrom(el.getRootNode().host); 7870 } 7871 7872 return __closestFrom(base); 7873} 7874 7875function onTouchStart(event) { 7876 const swiper = this; 7877 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 7878 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 7879 const data = swiper.touchEventsData; 7880 const { 7881 params, 7882 touches, 7883 enabled 7884 } = swiper; 7885 if (!enabled) return; 7886 7887 if (swiper.animating && params.preventInteractionOnTransition) { 7888 return; 7889 } 7890 7891 if (!swiper.animating && params.cssMode && params.loop) { 7892 swiper.loopFix(); 7893 } 7894 7895 let e = event; 7896 if (e.originalEvent) e = e.originalEvent; 7897 let $targetEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(e.target); 7898 7899 if (params.touchEventsTarget === 'wrapper') { 7900 if (!$targetEl.closest(swiper.wrapperEl).length) return; 7901 } 7902 7903 data.isTouchEvent = e.type === 'touchstart'; 7904 if (!data.isTouchEvent && 'which' in e && e.which === 3) return; 7905 if (!data.isTouchEvent && 'button' in e && e.button > 0) return; 7906 if (data.isTouched && data.isMoved) return; // change target el for shadow root component 7907 7908 const swipingClassHasValue = !!params.noSwipingClass && params.noSwipingClass !== ''; 7909 7910 if (swipingClassHasValue && e.target && e.target.shadowRoot && event.path && event.path[0]) { 7911 $targetEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(event.path[0]); 7912 } 7913 7914 const noSwipingSelector = params.noSwipingSelector ? params.noSwipingSelector : `.${params.noSwipingClass}`; 7915 const isTargetShadow = !!(e.target && e.target.shadowRoot); // use closestElement for shadow root element to get the actual closest for nested shadow root element 7916 7917 if (params.noSwiping && (isTargetShadow ? closestElement(noSwipingSelector, e.target) : $targetEl.closest(noSwipingSelector)[0])) { 7918 swiper.allowClick = true; 7919 return; 7920 } 7921 7922 if (params.swipeHandler) { 7923 if (!$targetEl.closest(params.swipeHandler)[0]) return; 7924 } 7925 7926 touches.currentX = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX; 7927 touches.currentY = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY; 7928 const startX = touches.currentX; 7929 const startY = touches.currentY; // Do NOT start if iOS edge swipe is detected. Otherwise iOS app cannot swipe-to-go-back anymore 7930 7931 const edgeSwipeDetection = params.edgeSwipeDetection || params.iOSEdgeSwipeDetection; 7932 const edgeSwipeThreshold = params.edgeSwipeThreshold || params.iOSEdgeSwipeThreshold; 7933 7934 if (edgeSwipeDetection && (startX <= edgeSwipeThreshold || startX >= window.innerWidth - edgeSwipeThreshold)) { 7935 if (edgeSwipeDetection === 'prevent') { 7936 event.preventDefault(); 7937 } else { 7938 return; 7939 } 7940 } 7941 7942 Object.assign(data, { 7943 isTouched: true, 7944 isMoved: false, 7945 allowTouchCallbacks: true, 7946 isScrolling: undefined, 7947 startMoving: undefined 7948 }); 7949 touches.startX = startX; 7950 touches.startY = startY; 7951 data.touchStartTime = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.now)(); 7952 swiper.allowClick = true; 7953 swiper.updateSize(); 7954 swiper.swipeDirection = undefined; 7955 if (params.threshold > 0) data.allowThresholdMove = false; 7956 7957 if (e.type !== 'touchstart') { 7958 let preventDefault = true; 7959 if ($targetEl.is(data.focusableElements)) preventDefault = false; 7960 7961 if (document.activeElement && (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(document.activeElement).is(data.focusableElements) && document.activeElement !== $targetEl[0]) { 7962 document.activeElement.blur(); 7963 } 7964 7965 const shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault; 7966 7967 if ((params.touchStartForcePreventDefault || shouldPreventDefault) && !$targetEl[0].isContentEditable) { 7968 e.preventDefault(); 7969 } 7970 } 7971 7972 swiper.emit('touchStart', e); 7973} 7974 7975/***/ }), 7976
vendor: 1,156 bytes, lines 7977-7998
7977/***/ "./node_modules/swiper/core/grab-cursor/index.js": 7978/*!*******************************************************!*\ 7979 !*** ./node_modules/swiper/core/grab-cursor/index.js ***! 7980 \*******************************************************/ 7981/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 7982 7983"use strict"; 7984__webpack_require__.r(__webpack_exports__); 7985/* harmony export */ __webpack_require__.d(__webpack_exports__, { 7986/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 7987/* harmony export */ }); 7988/* harmony import */ var _setGrabCursor_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setGrabCursor.js */ "./node_modules/swiper/core/grab-cursor/setGrabCursor.js"); 7989/* harmony import */ var _unsetGrabCursor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./unsetGrabCursor.js */ "./node_modules/swiper/core/grab-cursor/unsetGrabCursor.js"); 7990 7991 7992/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 7993 setGrabCursor: _setGrabCursor_js__WEBPACK_IMPORTED_MODULE_0__["default"], 7994 unsetGrabCursor: _unsetGrabCursor_js__WEBPACK_IMPORTED_MODULE_1__["default"] 7995}); 7996 7997/***/ }), 7998
vendor: 1,092 bytes, lines 7999-8021
7999/***/ "./node_modules/swiper/core/grab-cursor/setGrabCursor.js": 8000/*!***************************************************************!*\ 8001 !*** ./node_modules/swiper/core/grab-cursor/setGrabCursor.js ***! 8002 \***************************************************************/ 8003/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8004 8005"use strict"; 8006__webpack_require__.r(__webpack_exports__); 8007/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8008/* harmony export */ "default": () => (/* binding */ setGrabCursor) 8009/* harmony export */ }); 8010function setGrabCursor(moving) { 8011 const swiper = this; 8012 if (swiper.support.touch || !swiper.params.simulateTouch || swiper.params.watchOverflow && swiper.isLocked || swiper.params.cssMode) return; 8013 const el = swiper.params.touchEventsTarget === 'container' ? swiper.el : swiper.wrapperEl; 8014 el.style.cursor = 'move'; 8015 el.style.cursor = moving ? '-webkit-grabbing' : '-webkit-grab'; 8016 el.style.cursor = moving ? '-moz-grabbin' : '-moz-grab'; 8017 el.style.cursor = moving ? 'grabbing' : 'grab'; 8018} 8019 8020/***/ }), 8021
vendor: 880 bytes, lines 8022-8044
8022/***/ "./node_modules/swiper/core/grab-cursor/unsetGrabCursor.js": 8023/*!*****************************************************************!*\ 8024 !*** ./node_modules/swiper/core/grab-cursor/unsetGrabCursor.js ***! 8025 \*****************************************************************/ 8026/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8027 8028"use strict"; 8029__webpack_require__.r(__webpack_exports__); 8030/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8031/* harmony export */ "default": () => (/* binding */ unsetGrabCursor) 8032/* harmony export */ }); 8033function unsetGrabCursor() { 8034 const swiper = this; 8035 8036 if (swiper.support.touch || swiper.params.watchOverflow && swiper.isLocked || swiper.params.cssMode) { 8037 return; 8038 } 8039 8040 swiper[swiper.params.touchEventsTarget === 'container' ? 'el' : 'wrapperEl'].style.cursor = ''; 8041} 8042 8043/***/ }), 8044
vendor: 1,096 bytes, lines 8045-8066
8045/***/ "./node_modules/swiper/core/images/index.js": 8046/*!**************************************************!*\ 8047 !*** ./node_modules/swiper/core/images/index.js ***! 8048 \**************************************************/ 8049/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8050 8051"use strict"; 8052__webpack_require__.r(__webpack_exports__); 8053/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8054/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 8055/* harmony export */ }); 8056/* harmony import */ var _loadImage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./loadImage.js */ "./node_modules/swiper/core/images/loadImage.js"); 8057/* harmony import */ var _preloadImages_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./preloadImages.js */ "./node_modules/swiper/core/images/preloadImages.js"); 8058 8059 8060/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 8061 loadImage: _loadImage_js__WEBPACK_IMPORTED_MODULE_0__["default"], 8062 preloadImages: _preloadImages_js__WEBPACK_IMPORTED_MODULE_1__["default"] 8063}); 8064 8065/***/ }), 8066
vendor: 1,644 bytes, lines 8067-8119
8067/***/ "./node_modules/swiper/core/images/loadImage.js": 8068/*!******************************************************!*\ 8069 !*** ./node_modules/swiper/core/images/loadImage.js ***! 8070 \******************************************************/ 8071/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8072 8073"use strict"; 8074__webpack_require__.r(__webpack_exports__); 8075/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8076/* harmony export */ "default": () => (/* binding */ loadImage) 8077/* harmony export */ }); 8078/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 8079/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 8080 8081 8082function loadImage(imageEl, src, srcset, sizes, checkForComplete, callback) { 8083 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 8084 let image; 8085 8086 function onReady() { 8087 if (callback) callback(); 8088 } 8089 8090 const isPicture = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imageEl).parent('picture')[0]; 8091 8092 if (!isPicture && (!imageEl.complete || !checkForComplete)) { 8093 if (src) { 8094 image = new window.Image(); 8095 image.onload = onReady; 8096 image.onerror = onReady; 8097 8098 if (sizes) { 8099 image.sizes = sizes; 8100 } 8101 8102 if (srcset) { 8103 image.srcset = srcset; 8104 } 8105 8106 if (src) { 8107 image.src = src; 8108 } 8109 } else { 8110 onReady(); 8111 } 8112 } else { 8113 // image already loaded... 8114 onReady(); 8115 } 8116} 8117 8118/***/ }), 8119
vendor: 1,338 bytes, lines 8120-8152
8120/***/ "./node_modules/swiper/core/images/preloadImages.js": 8121/*!**********************************************************!*\ 8122 !*** ./node_modules/swiper/core/images/preloadImages.js ***! 8123 \**********************************************************/ 8124/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8125 8126"use strict"; 8127__webpack_require__.r(__webpack_exports__); 8128/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8129/* harmony export */ "default": () => (/* binding */ preloadImages) 8130/* harmony export */ }); 8131function preloadImages() { 8132 const swiper = this; 8133 swiper.imagesToLoad = swiper.$el.find('img'); 8134 8135 function onReady() { 8136 if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper.destroyed) return; 8137 if (swiper.imagesLoaded !== undefined) swiper.imagesLoaded += 1; 8138 8139 if (swiper.imagesLoaded === swiper.imagesToLoad.length) { 8140 if (swiper.params.updateOnImagesReady) swiper.update(); 8141 swiper.emit('imagesReady'); 8142 } 8143 } 8144 8145 for (let i = 0; i < swiper.imagesToLoad.length; i += 1) { 8146 const imageEl = swiper.imagesToLoad[i]; 8147 swiper.loadImage(imageEl, imageEl.currentSrc || imageEl.getAttribute('src'), imageEl.srcset || imageEl.getAttribute('srcset'), imageEl.sizes || imageEl.getAttribute('sizes'), true, onReady); 8148 } 8149} 8150 8151/***/ }), 8152
vendor: 1,299 bytes, lines 8153-8177
8153/***/ "./node_modules/swiper/core/loop/index.js": 8154/*!************************************************!*\ 8155 !*** ./node_modules/swiper/core/loop/index.js ***! 8156 \************************************************/ 8157/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8158 8159"use strict"; 8160__webpack_require__.r(__webpack_exports__); 8161/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8162/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 8163/* harmony export */ }); 8164/* harmony import */ var _loopCreate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./loopCreate.js */ "./node_modules/swiper/core/loop/loopCreate.js"); 8165/* harmony import */ var _loopFix_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./loopFix.js */ "./node_modules/swiper/core/loop/loopFix.js"); 8166/* harmony import */ var _loopDestroy_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./loopDestroy.js */ "./node_modules/swiper/core/loop/loopDestroy.js"); 8167 8168 8169 8170/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 8171 loopCreate: _loopCreate_js__WEBPACK_IMPORTED_MODULE_0__["default"], 8172 loopFix: _loopFix_js__WEBPACK_IMPORTED_MODULE_1__["default"], 8173 loopDestroy: _loopDestroy_js__WEBPACK_IMPORTED_MODULE_2__["default"] 8174}); 8175 8176/***/ }), 8177
vendor: 3,099 bytes, lines 8178-8252
8178/***/ "./node_modules/swiper/core/loop/loopCreate.js": 8179/*!*****************************************************!*\ 8180 !*** ./node_modules/swiper/core/loop/loopCreate.js ***! 8181 \*****************************************************/ 8182/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8183 8184"use strict"; 8185__webpack_require__.r(__webpack_exports__); 8186/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8187/* harmony export */ "default": () => (/* binding */ loopCreate) 8188/* harmony export */ }); 8189/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 8190/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 8191 8192 8193function loopCreate() { 8194 const swiper = this; 8195 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 8196 const { 8197 params, 8198 $wrapperEl 8199 } = swiper; // Remove duplicated slides 8200 8201 const $selector = $wrapperEl.children().length > 0 ? (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])($wrapperEl.children()[0].parentNode) : $wrapperEl; 8202 $selector.children(`.${params.slideClass}.${params.slideDuplicateClass}`).remove(); 8203 let slides = $selector.children(`.${params.slideClass}`); 8204 8205 if (params.loopFillGroupWithBlank) { 8206 const blankSlidesNum = params.slidesPerGroup - slides.length % params.slidesPerGroup; 8207 8208 if (blankSlidesNum !== params.slidesPerGroup) { 8209 for (let i = 0; i < blankSlidesNum; i += 1) { 8210 const blankNode = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(document.createElement('div')).addClass(`${params.slideClass} ${params.slideBlankClass}`); 8211 $selector.append(blankNode); 8212 } 8213 8214 slides = $selector.children(`.${params.slideClass}`); 8215 } 8216 } 8217 8218 if (params.slidesPerView === 'auto' && !params.loopedSlides) params.loopedSlides = slides.length; 8219 swiper.loopedSlides = Math.ceil(parseFloat(params.loopedSlides || params.slidesPerView, 10)); 8220 swiper.loopedSlides += params.loopAdditionalSlides; 8221 8222 if (swiper.loopedSlides > slides.length) { 8223 swiper.loopedSlides = slides.length; 8224 } 8225 8226 const prependSlides = []; 8227 const appendSlides = []; 8228 slides.each((el, index) => { 8229 const slide = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(el); 8230 8231 if (index < swiper.loopedSlides) { 8232 appendSlides.push(el); 8233 } 8234 8235 if (index < slides.length && index >= slides.length - swiper.loopedSlides) { 8236 prependSlides.push(el); 8237 } 8238 8239 slide.attr('data-swiper-slide-index', index); 8240 }); 8241 8242 for (let i = 0; i < appendSlides.length; i += 1) { 8243 $selector.append((0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(appendSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass)); 8244 } 8245 8246 for (let i = prependSlides.length - 1; i >= 0; i -= 1) { 8247 $selector.prepend((0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(prependSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass)); 8248 } 8249} 8250 8251/***/ }), 8252
vendor: 853 bytes, lines 8253-8276
8253/***/ "./node_modules/swiper/core/loop/loopDestroy.js": 8254/*!******************************************************!*\ 8255 !*** ./node_modules/swiper/core/loop/loopDestroy.js ***! 8256 \******************************************************/ 8257/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8258 8259"use strict"; 8260__webpack_require__.r(__webpack_exports__); 8261/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8262/* harmony export */ "default": () => (/* binding */ loopDestroy) 8263/* harmony export */ }); 8264function loopDestroy() { 8265 const swiper = this; 8266 const { 8267 $wrapperEl, 8268 params, 8269 slides 8270 } = swiper; 8271 $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass},.${params.slideClass}.${params.slideBlankClass}`).remove(); 8272 slides.removeAttr('data-swiper-slide-index'); 8273} 8274 8275/***/ }), 8276
vendor: 1,791 bytes, lines 8277-8331
8277/***/ "./node_modules/swiper/core/loop/loopFix.js": 8278/*!**************************************************!*\ 8279 !*** ./node_modules/swiper/core/loop/loopFix.js ***! 8280 \**************************************************/ 8281/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8282 8283"use strict"; 8284__webpack_require__.r(__webpack_exports__); 8285/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8286/* harmony export */ "default": () => (/* binding */ loopFix) 8287/* harmony export */ }); 8288function loopFix() { 8289 const swiper = this; 8290 swiper.emit('beforeLoopFix'); 8291 const { 8292 activeIndex, 8293 slides, 8294 loopedSlides, 8295 allowSlidePrev, 8296 allowSlideNext, 8297 snapGrid, 8298 rtlTranslate: rtl 8299 } = swiper; 8300 let newIndex; 8301 swiper.allowSlidePrev = true; 8302 swiper.allowSlideNext = true; 8303 const snapTranslate = -snapGrid[activeIndex]; 8304 const diff = snapTranslate - swiper.getTranslate(); // Fix For Negative Oversliding 8305 8306 if (activeIndex < loopedSlides) { 8307 newIndex = slides.length - loopedSlides * 3 + activeIndex; 8308 newIndex += loopedSlides; 8309 const slideChanged = swiper.slideTo(newIndex, 0, false, true); 8310 8311 if (slideChanged && diff !== 0) { 8312 swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff); 8313 } 8314 } else if (activeIndex >= slides.length - loopedSlides) { 8315 // Fix For Positive Oversliding 8316 newIndex = -slides.length + activeIndex + loopedSlides; 8317 newIndex += loopedSlides; 8318 const slideChanged = swiper.slideTo(newIndex, 0, false, true); 8319 8320 if (slideChanged && diff !== 0) { 8321 swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff); 8322 } 8323 } 8324 8325 swiper.allowSlidePrev = allowSlidePrev; 8326 swiper.allowSlideNext = allowSlideNext; 8327 swiper.emit('loopFix'); 8328} 8329 8330/***/ }), 8331
vendor: 1,921 bytes, lines 8332-8384
8332/***/ "./node_modules/swiper/core/moduleExtendParams.js": 8333/*!********************************************************!*\ 8334 !*** ./node_modules/swiper/core/moduleExtendParams.js ***! 8335 \********************************************************/ 8336/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8337 8338"use strict"; 8339__webpack_require__.r(__webpack_exports__); 8340/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8341/* harmony export */ "default": () => (/* binding */ moduleExtendParams) 8342/* harmony export */ }); 8343/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 8344 8345function moduleExtendParams(params, allModulesParams) { 8346 return function extendParams(obj = {}) { 8347 const moduleParamName = Object.keys(obj)[0]; 8348 const moduleParams = obj[moduleParamName]; 8349 8350 if (typeof moduleParams !== 'object' || moduleParams === null) { 8351 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.extend)(allModulesParams, obj); 8352 return; 8353 } 8354 8355 if (['navigation', 'pagination', 'scrollbar'].indexOf(moduleParamName) >= 0 && params[moduleParamName] === true) { 8356 params[moduleParamName] = { 8357 auto: true 8358 }; 8359 } 8360 8361 if (!(moduleParamName in params && 'enabled' in moduleParams)) { 8362 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.extend)(allModulesParams, obj); 8363 return; 8364 } 8365 8366 if (params[moduleParamName] === true) { 8367 params[moduleParamName] = { 8368 enabled: true 8369 }; 8370 } 8371 8372 if (typeof params[moduleParamName] === 'object' && !('enabled' in params[moduleParamName])) { 8373 params[moduleParamName].enabled = true; 8374 } 8375 8376 if (!params[moduleParamName]) params[moduleParamName] = { 8377 enabled: false 8378 }; 8379 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.extend)(allModulesParams, obj); 8380 }; 8381} 8382 8383/***/ }), 8384
vendor: 2,772 bytes, lines 8385-8474
8385/***/ "./node_modules/swiper/core/modules/observer/observer.js": 8386/*!***************************************************************!*\ 8387 !*** ./node_modules/swiper/core/modules/observer/observer.js ***! 8388 \***************************************************************/ 8389/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8390 8391"use strict"; 8392__webpack_require__.r(__webpack_exports__); 8393/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8394/* harmony export */ "default": () => (/* binding */ Observer) 8395/* harmony export */ }); 8396/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 8397 8398function Observer({ 8399 swiper, 8400 extendParams, 8401 on, 8402 emit 8403}) { 8404 const observers = []; 8405 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 8406 8407 const attach = (target, options = {}) => { 8408 const ObserverFunc = window.MutationObserver || window.WebkitMutationObserver; 8409 const observer = new ObserverFunc(mutations => { 8410 // The observerUpdate event should only be triggered 8411 // once despite the number of mutations. Additional 8412 // triggers are redundant and are very costly 8413 if (mutations.length === 1) { 8414 emit('observerUpdate', mutations[0]); 8415 return; 8416 } 8417 8418 const observerUpdate = function observerUpdate() { 8419 emit('observerUpdate', mutations[0]); 8420 }; 8421 8422 if (window.requestAnimationFrame) { 8423 window.requestAnimationFrame(observerUpdate); 8424 } else { 8425 window.setTimeout(observerUpdate, 0); 8426 } 8427 }); 8428 observer.observe(target, { 8429 attributes: typeof options.attributes === 'undefined' ? true : options.attributes, 8430 childList: typeof options.childList === 'undefined' ? true : options.childList, 8431 characterData: typeof options.characterData === 'undefined' ? true : options.characterData 8432 }); 8433 observers.push(observer); 8434 }; 8435 8436 const init = () => { 8437 if (!swiper.params.observer) return; 8438 8439 if (swiper.params.observeParents) { 8440 const containerParents = swiper.$el.parents(); 8441 8442 for (let i = 0; i < containerParents.length; i += 1) { 8443 attach(containerParents[i]); 8444 } 8445 } // Observe container 8446 8447 8448 attach(swiper.$el[0], { 8449 childList: swiper.params.observeSlideChildren 8450 }); // Observe wrapper 8451 8452 attach(swiper.$wrapperEl[0], { 8453 attributes: false 8454 }); 8455 }; 8456 8457 const destroy = () => { 8458 observers.forEach(observer => { 8459 observer.disconnect(); 8460 }); 8461 observers.splice(0, observers.length); 8462 }; 8463 8464 extendParams({ 8465 observer: false, 8466 observeParents: false, 8467 observeSlideChildren: false 8468 }); 8469 on('init', init); 8470 on('destroy', destroy); 8471} 8472 8473/***/ }), 8474
vendor: 2,583 bytes, lines 8475-8557
8475/***/ "./node_modules/swiper/core/modules/resize/resize.js": 8476/*!***********************************************************!*\ 8477 !*** ./node_modules/swiper/core/modules/resize/resize.js ***! 8478 \***********************************************************/ 8479/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8480 8481"use strict"; 8482__webpack_require__.r(__webpack_exports__); 8483/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8484/* harmony export */ "default": () => (/* binding */ Resize) 8485/* harmony export */ }); 8486/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 8487 8488function Resize({ 8489 swiper, 8490 on, 8491 emit 8492}) { 8493 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 8494 let observer = null; 8495 8496 const resizeHandler = () => { 8497 if (!swiper || swiper.destroyed || !swiper.initialized) return; 8498 emit('beforeResize'); 8499 emit('resize'); 8500 }; 8501 8502 const createObserver = () => { 8503 if (!swiper || swiper.destroyed || !swiper.initialized) return; 8504 observer = new ResizeObserver(entries => { 8505 const { 8506 width, 8507 height 8508 } = swiper; 8509 let newWidth = width; 8510 let newHeight = height; 8511 entries.forEach(({ 8512 contentBoxSize, 8513 contentRect, 8514 target 8515 }) => { 8516 if (target && target !== swiper.el) return; 8517 newWidth = contentRect ? contentRect.width : (contentBoxSize[0] || contentBoxSize).inlineSize; 8518 newHeight = contentRect ? contentRect.height : (contentBoxSize[0] || contentBoxSize).blockSize; 8519 }); 8520 8521 if (newWidth !== width || newHeight !== height) { 8522 resizeHandler(); 8523 } 8524 }); 8525 observer.observe(swiper.el); 8526 }; 8527 8528 const removeObserver = () => { 8529 if (observer && observer.unobserve && swiper.el) { 8530 observer.unobserve(swiper.el); 8531 observer = null; 8532 } 8533 }; 8534 8535 const orientationChangeHandler = () => { 8536 if (!swiper || swiper.destroyed || !swiper.initialized) return; 8537 emit('orientationchange'); 8538 }; 8539 8540 on('init', () => { 8541 if (swiper.params.resizeObserver && typeof window.ResizeObserver !== 'undefined') { 8542 createObserver(); 8543 return; 8544 } 8545 8546 window.addEventListener('resize', resizeHandler); 8547 window.addEventListener('orientationchange', orientationChangeHandler); 8548 }); 8549 on('destroy', () => { 8550 removeObserver(); 8551 window.removeEventListener('resize', resizeHandler); 8552 window.removeEventListener('orientationchange', orientationChangeHandler); 8553 }); 8554} 8555 8556/***/ }), 8557
vendor: 2,305 bytes, lines 8558-8594
8558/***/ "./node_modules/swiper/core/slide/index.js": 8559/*!*************************************************!*\ 8560 !*** ./node_modules/swiper/core/slide/index.js ***! 8561 \*************************************************/ 8562/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8563 8564"use strict"; 8565__webpack_require__.r(__webpack_exports__); 8566/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8567/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 8568/* harmony export */ }); 8569/* harmony import */ var _slideTo_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./slideTo.js */ "./node_modules/swiper/core/slide/slideTo.js"); 8570/* harmony import */ var _slideToLoop_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./slideToLoop.js */ "./node_modules/swiper/core/slide/slideToLoop.js"); 8571/* harmony import */ var _slideNext_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./slideNext.js */ "./node_modules/swiper/core/slide/slideNext.js"); 8572/* harmony import */ var _slidePrev_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./slidePrev.js */ "./node_modules/swiper/core/slide/slidePrev.js"); 8573/* harmony import */ var _slideReset_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./slideReset.js */ "./node_modules/swiper/core/slide/slideReset.js"); 8574/* harmony import */ var _slideToClosest_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./slideToClosest.js */ "./node_modules/swiper/core/slide/slideToClosest.js"); 8575/* harmony import */ var _slideToClickedSlide_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./slideToClickedSlide.js */ "./node_modules/swiper/core/slide/slideToClickedSlide.js"); 8576 8577 8578 8579 8580 8581 8582 8583/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 8584 slideTo: _slideTo_js__WEBPACK_IMPORTED_MODULE_0__["default"], 8585 slideToLoop: _slideToLoop_js__WEBPACK_IMPORTED_MODULE_1__["default"], 8586 slideNext: _slideNext_js__WEBPACK_IMPORTED_MODULE_2__["default"], 8587 slidePrev: _slidePrev_js__WEBPACK_IMPORTED_MODULE_3__["default"], 8588 slideReset: _slideReset_js__WEBPACK_IMPORTED_MODULE_4__["default"], 8589 slideToClosest: _slideToClosest_js__WEBPACK_IMPORTED_MODULE_5__["default"], 8590 slideToClickedSlide: _slideToClickedSlide_js__WEBPACK_IMPORTED_MODULE_6__["default"] 8591}); 8592 8593/***/ }), 8594
vendor: 1,478 bytes, lines 8595-8638
8595/***/ "./node_modules/swiper/core/slide/slideNext.js": 8596/*!*****************************************************!*\ 8597 !*** ./node_modules/swiper/core/slide/slideNext.js ***! 8598 \*****************************************************/ 8599/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8600 8601"use strict"; 8602__webpack_require__.r(__webpack_exports__); 8603/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8604/* harmony export */ "default": () => (/* binding */ slideNext) 8605/* harmony export */ }); 8606/* eslint no-unused-vars: "off" */ 8607function slideNext(speed = this.params.speed, runCallbacks = true, internal) { 8608 const swiper = this; 8609 const { 8610 animating, 8611 enabled, 8612 params 8613 } = swiper; 8614 if (!enabled) return swiper; 8615 let perGroup = params.slidesPerGroup; 8616 8617 if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) { 8618 perGroup = Math.max(swiper.slidesPerViewDynamic('current', true), 1); 8619 } 8620 8621 const increment = swiper.activeIndex < params.slidesPerGroupSkip ? 1 : perGroup; 8622 8623 if (params.loop) { 8624 if (animating && params.loopPreventsSlide) return false; 8625 swiper.loopFix(); // eslint-disable-next-line 8626 8627 swiper._clientLeft = swiper.$wrapperEl[0].clientLeft; 8628 } 8629 8630 if (params.rewind && swiper.isEnd) { 8631 return swiper.slideTo(0, speed, runCallbacks, internal); 8632 } 8633 8634 return swiper.slideTo(swiper.activeIndex + increment, speed, runCallbacks, internal); 8635} 8636 8637/***/ }), 8638
vendor: 2,410 bytes, lines 8639-8715
8639/***/ "./node_modules/swiper/core/slide/slidePrev.js": 8640/*!*****************************************************!*\ 8641 !*** ./node_modules/swiper/core/slide/slidePrev.js ***! 8642 \*****************************************************/ 8643/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8644 8645"use strict"; 8646__webpack_require__.r(__webpack_exports__); 8647/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8648/* harmony export */ "default": () => (/* binding */ slidePrev) 8649/* harmony export */ }); 8650/* eslint no-unused-vars: "off" */ 8651function slidePrev(speed = this.params.speed, runCallbacks = true, internal) { 8652 const swiper = this; 8653 const { 8654 params, 8655 animating, 8656 snapGrid, 8657 slidesGrid, 8658 rtlTranslate, 8659 enabled 8660 } = swiper; 8661 if (!enabled) return swiper; 8662 8663 if (params.loop) { 8664 if (animating && params.loopPreventsSlide) return false; 8665 swiper.loopFix(); // eslint-disable-next-line 8666 8667 swiper._clientLeft = swiper.$wrapperEl[0].clientLeft; 8668 } 8669 8670 const translate = rtlTranslate ? swiper.translate : -swiper.translate; 8671 8672 function normalize(val) { 8673 if (val < 0) return -Math.floor(Math.abs(val)); 8674 return Math.floor(val); 8675 } 8676 8677 const normalizedTranslate = normalize(translate); 8678 const normalizedSnapGrid = snapGrid.map(val => normalize(val)); 8679 let prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1]; 8680 8681 if (typeof prevSnap === 'undefined' && params.cssMode) { 8682 let prevSnapIndex; 8683 snapGrid.forEach((snap, snapIndex) => { 8684 if (normalizedTranslate >= snap) { 8685 // prevSnap = snap; 8686 prevSnapIndex = snapIndex; 8687 } 8688 }); 8689 8690 if (typeof prevSnapIndex !== 'undefined') { 8691 prevSnap = snapGrid[prevSnapIndex > 0 ? prevSnapIndex - 1 : prevSnapIndex]; 8692 } 8693 } 8694 8695 let prevIndex = 0; 8696 8697 if (typeof prevSnap !== 'undefined') { 8698 prevIndex = slidesGrid.indexOf(prevSnap); 8699 if (prevIndex < 0) prevIndex = swiper.activeIndex - 1; 8700 8701 if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) { 8702 prevIndex = prevIndex - swiper.slidesPerViewDynamic('previous', true) + 1; 8703 prevIndex = Math.max(prevIndex, 0); 8704 } 8705 } 8706 8707 if (params.rewind && swiper.isBeginning) { 8708 return swiper.slideTo(swiper.slides.length - 1, speed, runCallbacks, internal); 8709 } 8710 8711 return swiper.slideTo(prevIndex, speed, runCallbacks, internal); 8712} 8713 8714/***/ }), 8715
vendor: 772 bytes, lines 8716-8734
8716/***/ "./node_modules/swiper/core/slide/slideReset.js": 8717/*!******************************************************!*\ 8718 !*** ./node_modules/swiper/core/slide/slideReset.js ***! 8719 \******************************************************/ 8720/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8721 8722"use strict"; 8723__webpack_require__.r(__webpack_exports__); 8724/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8725/* harmony export */ "default": () => (/* binding */ slideReset) 8726/* harmony export */ }); 8727/* eslint no-unused-vars: "off" */ 8728function slideReset(speed = this.params.speed, runCallbacks = true, internal) { 8729 const swiper = this; 8730 return swiper.slideTo(swiper.activeIndex, speed, runCallbacks, internal); 8731} 8732 8733/***/ }), 8734
vendor: 6,514 bytes, lines 8735-8930
8735/***/ "./node_modules/swiper/core/slide/slideTo.js": 8736/*!***************************************************!*\ 8737 !*** ./node_modules/swiper/core/slide/slideTo.js ***! 8738 \***************************************************/ 8739/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8740 8741"use strict"; 8742__webpack_require__.r(__webpack_exports__); 8743/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8744/* harmony export */ "default": () => (/* binding */ slideTo) 8745/* harmony export */ }); 8746/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 8747 8748function slideTo(index = 0, speed = this.params.speed, runCallbacks = true, internal, initial) { 8749 if (typeof index !== 'number' && typeof index !== 'string') { 8750 throw new Error(`The 'index' argument cannot have type other than 'number' or 'string'. [${typeof index}] given.`); 8751 } 8752 8753 if (typeof index === 'string') { 8754 /** 8755 * The `index` argument converted from `string` to `number`. 8756 * @type {number} 8757 */ 8758 const indexAsNumber = parseInt(index, 10); 8759 /** 8760 * Determines whether the `index` argument is a valid `number` 8761 * after being converted from the `string` type. 8762 * @type {boolean} 8763 */ 8764 8765 const isValidNumber = isFinite(indexAsNumber); 8766 8767 if (!isValidNumber) { 8768 throw new Error(`The passed-in 'index' (string) couldn't be converted to 'number'. [${index}] given.`); 8769 } // Knowing that the converted `index` is a valid number, 8770 // we can update the original argument's value. 8771 8772 8773 index = indexAsNumber; 8774 } 8775 8776 const swiper = this; 8777 let slideIndex = index; 8778 if (slideIndex < 0) slideIndex = 0; 8779 const { 8780 params, 8781 snapGrid, 8782 slidesGrid, 8783 previousIndex, 8784 activeIndex, 8785 rtlTranslate: rtl, 8786 wrapperEl, 8787 enabled 8788 } = swiper; 8789 8790 if (swiper.animating && params.preventInteractionOnTransition || !enabled && !internal && !initial) { 8791 return false; 8792 } 8793 8794 const skip = Math.min(swiper.params.slidesPerGroupSkip, slideIndex); 8795 let snapIndex = skip + Math.floor((slideIndex - skip) / swiper.params.slidesPerGroup); 8796 if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1; 8797 8798 if ((activeIndex || params.initialSlide || 0) === (previousIndex || 0) && runCallbacks) { 8799 swiper.emit('beforeSlideChangeStart'); 8800 } 8801 8802 const translate = -snapGrid[snapIndex]; // Update progress 8803 8804 swiper.updateProgress(translate); // Normalize slideIndex 8805 8806 if (params.normalizeSlideIndex) { 8807 for (let i = 0; i < slidesGrid.length; i += 1) { 8808 const normalizedTranslate = -Math.floor(translate * 100); 8809 const normalizedGrid = Math.floor(slidesGrid[i] * 100); 8810 const normalizedGridNext = Math.floor(slidesGrid[i + 1] * 100); 8811 8812 if (typeof slidesGrid[i + 1] !== 'undefined') { 8813 if (normalizedTranslate >= normalizedGrid && normalizedTranslate < normalizedGridNext - (normalizedGridNext - normalizedGrid) / 2) { 8814 slideIndex = i; 8815 } else if (normalizedTranslate >= normalizedGrid && normalizedTranslate < normalizedGridNext) { 8816 slideIndex = i + 1; 8817 } 8818 } else if (normalizedTranslate >= normalizedGrid) { 8819 slideIndex = i; 8820 } 8821 } 8822 } // Directions locks 8823 8824 8825 if (swiper.initialized && slideIndex !== activeIndex) { 8826 if (!swiper.allowSlideNext && translate < swiper.translate && translate < swiper.minTranslate()) { 8827 return false; 8828 } 8829 8830 if (!swiper.allowSlidePrev && translate > swiper.translate && translate > swiper.maxTranslate()) { 8831 if ((activeIndex || 0) !== slideIndex) return false; 8832 } 8833 } 8834 8835 let direction; 8836 if (slideIndex > activeIndex) direction = 'next';else if (slideIndex < activeIndex) direction = 'prev';else direction = 'reset'; // Update Index 8837 8838 if (rtl && -translate === swiper.translate || !rtl && translate === swiper.translate) { 8839 swiper.updateActiveIndex(slideIndex); // Update Height 8840 8841 if (params.autoHeight) { 8842 swiper.updateAutoHeight(); 8843 } 8844 8845 swiper.updateSlidesClasses(); 8846 8847 if (params.effect !== 'slide') { 8848 swiper.setTranslate(translate); 8849 } 8850 8851 if (direction !== 'reset') { 8852 swiper.transitionStart(runCallbacks, direction); 8853 swiper.transitionEnd(runCallbacks, direction); 8854 } 8855 8856 return false; 8857 } 8858 8859 if (params.cssMode) { 8860 const isH = swiper.isHorizontal(); 8861 const t = rtl ? translate : -translate; 8862 8863 if (speed === 0) { 8864 const isVirtual = swiper.virtual && swiper.params.virtual.enabled; 8865 8866 if (isVirtual) { 8867 swiper.wrapperEl.style.scrollSnapType = 'none'; 8868 swiper._immediateVirtual = true; 8869 } 8870 8871 wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = t; 8872 8873 if (isVirtual) { 8874 requestAnimationFrame(() => { 8875 swiper.wrapperEl.style.scrollSnapType = ''; 8876 swiper._swiperImmediateVirtual = false; 8877 }); 8878 } 8879 } else { 8880 if (!swiper.support.smoothScroll) { 8881 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.animateCSSModeScroll)({ 8882 swiper, 8883 targetPosition: t, 8884 side: isH ? 'left' : 'top' 8885 }); 8886 return true; 8887 } 8888 8889 wrapperEl.scrollTo({ 8890 [isH ? 'left' : 'top']: t, 8891 behavior: 'smooth' 8892 }); 8893 } 8894 8895 return true; 8896 } 8897 8898 swiper.setTransition(speed); 8899 swiper.setTranslate(translate); 8900 swiper.updateActiveIndex(slideIndex); 8901 swiper.updateSlidesClasses(); 8902 swiper.emit('beforeTransitionStart', speed, internal); 8903 swiper.transitionStart(runCallbacks, direction); 8904 8905 if (speed === 0) { 8906 swiper.transitionEnd(runCallbacks, direction); 8907 } else if (!swiper.animating) { 8908 swiper.animating = true; 8909 8910 if (!swiper.onSlideToWrapperTransitionEnd) { 8911 swiper.onSlideToWrapperTransitionEnd = function transitionEnd(e) { 8912 if (!swiper || swiper.destroyed) return; 8913 if (e.target !== this) return; 8914 swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd); 8915 swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd); 8916 swiper.onSlideToWrapperTransitionEnd = null; 8917 delete swiper.onSlideToWrapperTransitionEnd; 8918 swiper.transitionEnd(runCallbacks, direction); 8919 }; 8920 } 8921 8922 swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd); 8923 swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd); 8924 } 8925 8926 return true; 8927} 8928 8929/***/ }), 8930
vendor: 2,436 bytes, lines 8931-8985
8931/***/ "./node_modules/swiper/core/slide/slideToClickedSlide.js": 8932/*!***************************************************************!*\ 8933 !*** ./node_modules/swiper/core/slide/slideToClickedSlide.js ***! 8934 \***************************************************************/ 8935/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8936 8937"use strict"; 8938__webpack_require__.r(__webpack_exports__); 8939/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8940/* harmony export */ "default": () => (/* binding */ slideToClickedSlide) 8941/* harmony export */ }); 8942/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 8943/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 8944 8945 8946function slideToClickedSlide() { 8947 const swiper = this; 8948 const { 8949 params, 8950 $wrapperEl 8951 } = swiper; 8952 const slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView; 8953 let slideToIndex = swiper.clickedIndex; 8954 let realIndex; 8955 8956 if (params.loop) { 8957 if (swiper.animating) return; 8958 realIndex = parseInt((0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(swiper.clickedSlide).attr('data-swiper-slide-index'), 10); 8959 8960 if (params.centeredSlides) { 8961 if (slideToIndex < swiper.loopedSlides - slidesPerView / 2 || slideToIndex > swiper.slides.length - swiper.loopedSlides + slidesPerView / 2) { 8962 swiper.loopFix(); 8963 slideToIndex = $wrapperEl.children(`.${params.slideClass}[data-swiper-slide-index="${realIndex}"]:not(.${params.slideDuplicateClass})`).eq(0).index(); 8964 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_1__.nextTick)(() => { 8965 swiper.slideTo(slideToIndex); 8966 }); 8967 } else { 8968 swiper.slideTo(slideToIndex); 8969 } 8970 } else if (slideToIndex > swiper.slides.length - slidesPerView) { 8971 swiper.loopFix(); 8972 slideToIndex = $wrapperEl.children(`.${params.slideClass}[data-swiper-slide-index="${realIndex}"]:not(.${params.slideDuplicateClass})`).eq(0).index(); 8973 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_1__.nextTick)(() => { 8974 swiper.slideTo(slideToIndex); 8975 }); 8976 } else { 8977 swiper.slideTo(slideToIndex); 8978 } 8979 } else { 8980 swiper.slideTo(slideToIndex); 8981 } 8982} 8983 8984/***/ }), 8985
vendor: 1,955 bytes, lines 8986-9031
8986/***/ "./node_modules/swiper/core/slide/slideToClosest.js": 8987/*!**********************************************************!*\ 8988 !*** ./node_modules/swiper/core/slide/slideToClosest.js ***! 8989 \**********************************************************/ 8990/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 8991 8992"use strict"; 8993__webpack_require__.r(__webpack_exports__); 8994/* harmony export */ __webpack_require__.d(__webpack_exports__, { 8995/* harmony export */ "default": () => (/* binding */ slideToClosest) 8996/* harmony export */ }); 8997/* eslint no-unused-vars: "off" */ 8998function slideToClosest(speed = this.params.speed, runCallbacks = true, internal, threshold = 0.5) { 8999 const swiper = this; 9000 let index = swiper.activeIndex; 9001 const skip = Math.min(swiper.params.slidesPerGroupSkip, index); 9002 const snapIndex = skip + Math.floor((index - skip) / swiper.params.slidesPerGroup); 9003 const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate; 9004 9005 if (translate >= swiper.snapGrid[snapIndex]) { 9006 // The current translate is on or after the current snap index, so the choice 9007 // is between the current index and the one after it. 9008 const currentSnap = swiper.snapGrid[snapIndex]; 9009 const nextSnap = swiper.snapGrid[snapIndex + 1]; 9010 9011 if (translate - currentSnap > (nextSnap - currentSnap) * threshold) { 9012 index += swiper.params.slidesPerGroup; 9013 } 9014 } else { 9015 // The current translate is before the current snap index, so the choice 9016 // is between the current index and the one before it. 9017 const prevSnap = swiper.snapGrid[snapIndex - 1]; 9018 const currentSnap = swiper.snapGrid[snapIndex]; 9019 9020 if (translate - prevSnap <= (currentSnap - prevSnap) * threshold) { 9021 index -= swiper.params.slidesPerGroup; 9022 } 9023 } 9024 9025 index = Math.max(index, 0); 9026 index = Math.min(index, swiper.slidesGrid.length - 1); 9027 return swiper.slideTo(index, speed, runCallbacks, internal); 9028} 9029 9030/***/ }), 9031
vendor: 839 bytes, lines 9032-9055
9032/***/ "./node_modules/swiper/core/slide/slideToLoop.js": 9033/*!*******************************************************!*\ 9034 !*** ./node_modules/swiper/core/slide/slideToLoop.js ***! 9035 \*******************************************************/ 9036/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9037 9038"use strict"; 9039__webpack_require__.r(__webpack_exports__); 9040/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9041/* harmony export */ "default": () => (/* binding */ slideToLoop) 9042/* harmony export */ }); 9043function slideToLoop(index = 0, speed = this.params.speed, runCallbacks = true, internal) { 9044 const swiper = this; 9045 let newIndex = index; 9046 9047 if (swiper.params.loop) { 9048 newIndex += swiper.loopedSlides; 9049 } 9050 9051 return swiper.slideTo(newIndex, speed, runCallbacks, internal); 9052} 9053 9054/***/ }), 9055
vendor: 1,406 bytes, lines 9056-9080
9056/***/ "./node_modules/swiper/core/transition/index.js": 9057/*!******************************************************!*\ 9058 !*** ./node_modules/swiper/core/transition/index.js ***! 9059 \******************************************************/ 9060/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9061 9062"use strict"; 9063__webpack_require__.r(__webpack_exports__); 9064/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9065/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 9066/* harmony export */ }); 9067/* harmony import */ var _setTransition_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setTransition.js */ "./node_modules/swiper/core/transition/setTransition.js"); 9068/* harmony import */ var _transitionStart_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./transitionStart.js */ "./node_modules/swiper/core/transition/transitionStart.js"); 9069/* harmony import */ var _transitionEnd_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./transitionEnd.js */ "./node_modules/swiper/core/transition/transitionEnd.js"); 9070 9071 9072 9073/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 9074 setTransition: _setTransition_js__WEBPACK_IMPORTED_MODULE_0__["default"], 9075 transitionStart: _transitionStart_js__WEBPACK_IMPORTED_MODULE_1__["default"], 9076 transitionEnd: _transitionEnd_js__WEBPACK_IMPORTED_MODULE_2__["default"] 9077}); 9078 9079/***/ }), 9080
vendor: 803 bytes, lines 9081-9103
9081/***/ "./node_modules/swiper/core/transition/setTransition.js": 9082/*!**************************************************************!*\ 9083 !*** ./node_modules/swiper/core/transition/setTransition.js ***! 9084 \**************************************************************/ 9085/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9086 9087"use strict"; 9088__webpack_require__.r(__webpack_exports__); 9089/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9090/* harmony export */ "default": () => (/* binding */ setTransition) 9091/* harmony export */ }); 9092function setTransition(duration, byController) { 9093 const swiper = this; 9094 9095 if (!swiper.params.cssMode) { 9096 swiper.$wrapperEl.transition(duration); 9097 } 9098 9099 swiper.emit('setTransition', duration, byController); 9100} 9101 9102/***/ }), 9103
vendor: 1,285 bytes, lines 9104-9150
9104/***/ "./node_modules/swiper/core/transition/transitionEmit.js": 9105/*!***************************************************************!*\ 9106 !*** ./node_modules/swiper/core/transition/transitionEmit.js ***! 9107 \***************************************************************/ 9108/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9109 9110"use strict"; 9111__webpack_require__.r(__webpack_exports__); 9112/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9113/* harmony export */ "default": () => (/* binding */ transitionEmit) 9114/* harmony export */ }); 9115function transitionEmit({ 9116 swiper, 9117 runCallbacks, 9118 direction, 9119 step 9120}) { 9121 const { 9122 activeIndex, 9123 previousIndex 9124 } = swiper; 9125 let dir = direction; 9126 9127 if (!dir) { 9128 if (activeIndex > previousIndex) dir = 'next';else if (activeIndex < previousIndex) dir = 'prev';else dir = 'reset'; 9129 } 9130 9131 swiper.emit(`transition${step}`); 9132 9133 if (runCallbacks && activeIndex !== previousIndex) { 9134 if (dir === 'reset') { 9135 swiper.emit(`slideResetTransition${step}`); 9136 return; 9137 } 9138 9139 swiper.emit(`slideChangeTransition${step}`); 9140 9141 if (dir === 'next') { 9142 swiper.emit(`slideNextTransition${step}`); 9143 } else { 9144 swiper.emit(`slidePrevTransition${step}`); 9145 } 9146 } 9147} 9148 9149/***/ }), 9150
vendor: 1,110 bytes, lines 9151-9181
9151/***/ "./node_modules/swiper/core/transition/transitionEnd.js": 9152/*!**************************************************************!*\ 9153 !*** ./node_modules/swiper/core/transition/transitionEnd.js ***! 9154 \**************************************************************/ 9155/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9156 9157"use strict"; 9158__webpack_require__.r(__webpack_exports__); 9159/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9160/* harmony export */ "default": () => (/* binding */ transitionEnd) 9161/* harmony export */ }); 9162/* harmony import */ var _transitionEmit_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./transitionEmit.js */ "./node_modules/swiper/core/transition/transitionEmit.js"); 9163 9164function transitionEnd(runCallbacks = true, direction) { 9165 const swiper = this; 9166 const { 9167 params 9168 } = swiper; 9169 swiper.animating = false; 9170 if (params.cssMode) return; 9171 swiper.setTransition(0); 9172 (0,_transitionEmit_js__WEBPACK_IMPORTED_MODULE_0__["default"])({ 9173 swiper, 9174 runCallbacks, 9175 direction, 9176 step: 'End' 9177 }); 9178} 9179 9180/***/ }), 9181
vendor: 1,133 bytes, lines 9182-9215
9182/***/ "./node_modules/swiper/core/transition/transitionStart.js": 9183/*!****************************************************************!*\ 9184 !*** ./node_modules/swiper/core/transition/transitionStart.js ***! 9185 \****************************************************************/ 9186/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9187 9188"use strict"; 9189__webpack_require__.r(__webpack_exports__); 9190/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9191/* harmony export */ "default": () => (/* binding */ transitionStart) 9192/* harmony export */ }); 9193/* harmony import */ var _transitionEmit_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./transitionEmit.js */ "./node_modules/swiper/core/transition/transitionEmit.js"); 9194 9195function transitionStart(runCallbacks = true, direction) { 9196 const swiper = this; 9197 const { 9198 params 9199 } = swiper; 9200 if (params.cssMode) return; 9201 9202 if (params.autoHeight) { 9203 swiper.updateAutoHeight(); 9204 } 9205 9206 (0,_transitionEmit_js__WEBPACK_IMPORTED_MODULE_0__["default"])({ 9207 swiper, 9208 runCallbacks, 9209 direction, 9210 step: 'Start' 9211 }); 9212} 9213 9214/***/ }), 9215
vendor: 1,259 bytes, lines 9216-9252
9216/***/ "./node_modules/swiper/core/translate/getTranslate.js": 9217/*!************************************************************!*\ 9218 !*** ./node_modules/swiper/core/translate/getTranslate.js ***! 9219 \************************************************************/ 9220/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9221 9222"use strict"; 9223__webpack_require__.r(__webpack_exports__); 9224/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9225/* harmony export */ "default": () => (/* binding */ getSwiperTranslate) 9226/* harmony export */ }); 9227/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 9228 9229function getSwiperTranslate(axis = this.isHorizontal() ? 'x' : 'y') { 9230 const swiper = this; 9231 const { 9232 params, 9233 rtlTranslate: rtl, 9234 translate, 9235 $wrapperEl 9236 } = swiper; 9237 9238 if (params.virtualTranslate) { 9239 return rtl ? -translate : translate; 9240 } 9241 9242 if (params.cssMode) { 9243 return translate; 9244 } 9245 9246 let currentTranslate = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.getTranslate)($wrapperEl[0], axis); 9247 if (rtl) currentTranslate = -currentTranslate; 9248 return currentTranslate || 0; 9249} 9250 9251/***/ }), 9252
vendor: 1,869 bytes, lines 9253-9283
9253/***/ "./node_modules/swiper/core/translate/index.js": 9254/*!*****************************************************!*\ 9255 !*** ./node_modules/swiper/core/translate/index.js ***! 9256 \*****************************************************/ 9257/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9258 9259"use strict"; 9260__webpack_require__.r(__webpack_exports__); 9261/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9262/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 9263/* harmony export */ }); 9264/* harmony import */ var _getTranslate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getTranslate.js */ "./node_modules/swiper/core/translate/getTranslate.js"); 9265/* harmony import */ var _setTranslate_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./setTranslate.js */ "./node_modules/swiper/core/translate/setTranslate.js"); 9266/* harmony import */ var _minTranslate_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./minTranslate.js */ "./node_modules/swiper/core/translate/minTranslate.js"); 9267/* harmony import */ var _maxTranslate_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./maxTranslate.js */ "./node_modules/swiper/core/translate/maxTranslate.js"); 9268/* harmony import */ var _translateTo_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./translateTo.js */ "./node_modules/swiper/core/translate/translateTo.js"); 9269 9270 9271 9272 9273 9274/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 9275 getTranslate: _getTranslate_js__WEBPACK_IMPORTED_MODULE_0__["default"], 9276 setTranslate: _setTranslate_js__WEBPACK_IMPORTED_MODULE_1__["default"], 9277 minTranslate: _minTranslate_js__WEBPACK_IMPORTED_MODULE_2__["default"], 9278 maxTranslate: _maxTranslate_js__WEBPACK_IMPORTED_MODULE_3__["default"], 9279 translateTo: _translateTo_js__WEBPACK_IMPORTED_MODULE_4__["default"] 9280}); 9281 9282/***/ }), 9283
vendor: 661 bytes, lines 9284-9300
9284/***/ "./node_modules/swiper/core/translate/maxTranslate.js": 9285/*!************************************************************!*\ 9286 !*** ./node_modules/swiper/core/translate/maxTranslate.js ***! 9287 \************************************************************/ 9288/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9289 9290"use strict"; 9291__webpack_require__.r(__webpack_exports__); 9292/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9293/* harmony export */ "default": () => (/* binding */ maxTranslate) 9294/* harmony export */ }); 9295function maxTranslate() { 9296 return -this.snapGrid[this.snapGrid.length - 1]; 9297} 9298 9299/***/ }), 9300
vendor: 638 bytes, lines 9301-9317
9301/***/ "./node_modules/swiper/core/translate/minTranslate.js": 9302/*!************************************************************!*\ 9303 !*** ./node_modules/swiper/core/translate/minTranslate.js ***! 9304 \************************************************************/ 9305/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9306 9307"use strict"; 9308__webpack_require__.r(__webpack_exports__); 9309/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9310/* harmony export */ "default": () => (/* binding */ minTranslate) 9311/* harmony export */ }); 9312function minTranslate() { 9313 return -this.snapGrid[0]; 9314} 9315 9316/***/ }), 9317
vendor: 1,731 bytes, lines 9318-9379
9318/***/ "./node_modules/swiper/core/translate/setTranslate.js": 9319/*!************************************************************!*\ 9320 !*** ./node_modules/swiper/core/translate/setTranslate.js ***! 9321 \************************************************************/ 9322/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9323 9324"use strict"; 9325__webpack_require__.r(__webpack_exports__); 9326/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9327/* harmony export */ "default": () => (/* binding */ setTranslate) 9328/* harmony export */ }); 9329function setTranslate(translate, byController) { 9330 const swiper = this; 9331 const { 9332 rtlTranslate: rtl, 9333 params, 9334 $wrapperEl, 9335 wrapperEl, 9336 progress 9337 } = swiper; 9338 let x = 0; 9339 let y = 0; 9340 const z = 0; 9341 9342 if (swiper.isHorizontal()) { 9343 x = rtl ? -translate : translate; 9344 } else { 9345 y = translate; 9346 } 9347 9348 if (params.roundLengths) { 9349 x = Math.floor(x); 9350 y = Math.floor(y); 9351 } 9352 9353 if (params.cssMode) { 9354 wrapperEl[swiper.isHorizontal() ? 'scrollLeft' : 'scrollTop'] = swiper.isHorizontal() ? -x : -y; 9355 } else if (!params.virtualTranslate) { 9356 $wrapperEl.transform(`translate3d(${x}px, ${y}px, ${z}px)`); 9357 } 9358 9359 swiper.previousTranslate = swiper.translate; 9360 swiper.translate = swiper.isHorizontal() ? x : y; // Check if we need to update progress 9361 9362 let newProgress; 9363 const translatesDiff = swiper.maxTranslate() - swiper.minTranslate(); 9364 9365 if (translatesDiff === 0) { 9366 newProgress = 0; 9367 } else { 9368 newProgress = (translate - swiper.minTranslate()) / translatesDiff; 9369 } 9370 9371 if (newProgress !== progress) { 9372 swiper.updateProgress(translate); 9373 } 9374 9375 swiper.emit('setTranslate', swiper.translate, byController); 9376} 9377 9378/***/ }), 9379
vendor: 3,369 bytes, lines 9380-9479
9380/***/ "./node_modules/swiper/core/translate/translateTo.js": 9381/*!***********************************************************!*\ 9382 !*** ./node_modules/swiper/core/translate/translateTo.js ***! 9383 \***********************************************************/ 9384/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9385 9386"use strict"; 9387__webpack_require__.r(__webpack_exports__); 9388/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9389/* harmony export */ "default": () => (/* binding */ translateTo) 9390/* harmony export */ }); 9391/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 9392 9393function translateTo(translate = 0, speed = this.params.speed, runCallbacks = true, translateBounds = true, internal) { 9394 const swiper = this; 9395 const { 9396 params, 9397 wrapperEl 9398 } = swiper; 9399 9400 if (swiper.animating && params.preventInteractionOnTransition) { 9401 return false; 9402 } 9403 9404 const minTranslate = swiper.minTranslate(); 9405 const maxTranslate = swiper.maxTranslate(); 9406 let newTranslate; 9407 if (translateBounds && translate > minTranslate) newTranslate = minTranslate;else if (translateBounds && translate < maxTranslate) newTranslate = maxTranslate;else newTranslate = translate; // Update progress 9408 9409 swiper.updateProgress(newTranslate); 9410 9411 if (params.cssMode) { 9412 const isH = swiper.isHorizontal(); 9413 9414 if (speed === 0) { 9415 wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate; 9416 } else { 9417 if (!swiper.support.smoothScroll) { 9418 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.animateCSSModeScroll)({ 9419 swiper, 9420 targetPosition: -newTranslate, 9421 side: isH ? 'left' : 'top' 9422 }); 9423 return true; 9424 } 9425 9426 wrapperEl.scrollTo({ 9427 [isH ? 'left' : 'top']: -newTranslate, 9428 behavior: 'smooth' 9429 }); 9430 } 9431 9432 return true; 9433 } 9434 9435 if (speed === 0) { 9436 swiper.setTransition(0); 9437 swiper.setTranslate(newTranslate); 9438 9439 if (runCallbacks) { 9440 swiper.emit('beforeTransitionStart', speed, internal); 9441 swiper.emit('transitionEnd'); 9442 } 9443 } else { 9444 swiper.setTransition(speed); 9445 swiper.setTranslate(newTranslate); 9446 9447 if (runCallbacks) { 9448 swiper.emit('beforeTransitionStart', speed, internal); 9449 swiper.emit('transitionStart'); 9450 } 9451 9452 if (!swiper.animating) { 9453 swiper.animating = true; 9454 9455 if (!swiper.onTranslateToWrapperTransitionEnd) { 9456 swiper.onTranslateToWrapperTransitionEnd = function transitionEnd(e) { 9457 if (!swiper || swiper.destroyed) return; 9458 if (e.target !== this) return; 9459 swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd); 9460 swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd); 9461 swiper.onTranslateToWrapperTransitionEnd = null; 9462 delete swiper.onTranslateToWrapperTransitionEnd; 9463 9464 if (runCallbacks) { 9465 swiper.emit('transitionEnd'); 9466 } 9467 }; 9468 } 9469 9470 swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd); 9471 swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd); 9472 } 9473 } 9474 9475 return true; 9476} 9477 9478/***/ }), 9479
vendor: 3,015 bytes, lines 9480-9522
9480/***/ "./node_modules/swiper/core/update/index.js": 9481/*!**************************************************!*\ 9482 !*** ./node_modules/swiper/core/update/index.js ***! 9483 \**************************************************/ 9484/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9485 9486"use strict"; 9487__webpack_require__.r(__webpack_exports__); 9488/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9489/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 9490/* harmony export */ }); 9491/* harmony import */ var _updateSize_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./updateSize.js */ "./node_modules/swiper/core/update/updateSize.js"); 9492/* harmony import */ var _updateSlides_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./updateSlides.js */ "./node_modules/swiper/core/update/updateSlides.js"); 9493/* harmony import */ var _updateAutoHeight_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./updateAutoHeight.js */ "./node_modules/swiper/core/update/updateAutoHeight.js"); 9494/* harmony import */ var _updateSlidesOffset_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./updateSlidesOffset.js */ "./node_modules/swiper/core/update/updateSlidesOffset.js"); 9495/* harmony import */ var _updateSlidesProgress_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./updateSlidesProgress.js */ "./node_modules/swiper/core/update/updateSlidesProgress.js"); 9496/* harmony import */ var _updateProgress_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./updateProgress.js */ "./node_modules/swiper/core/update/updateProgress.js"); 9497/* harmony import */ var _updateSlidesClasses_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./updateSlidesClasses.js */ "./node_modules/swiper/core/update/updateSlidesClasses.js"); 9498/* harmony import */ var _updateActiveIndex_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./updateActiveIndex.js */ "./node_modules/swiper/core/update/updateActiveIndex.js"); 9499/* harmony import */ var _updateClickedSlide_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./updateClickedSlide.js */ "./node_modules/swiper/core/update/updateClickedSlide.js"); 9500 9501 9502 9503 9504 9505 9506 9507 9508 9509/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 9510 updateSize: _updateSize_js__WEBPACK_IMPORTED_MODULE_0__["default"], 9511 updateSlides: _updateSlides_js__WEBPACK_IMPORTED_MODULE_1__["default"], 9512 updateAutoHeight: _updateAutoHeight_js__WEBPACK_IMPORTED_MODULE_2__["default"], 9513 updateSlidesOffset: _updateSlidesOffset_js__WEBPACK_IMPORTED_MODULE_3__["default"], 9514 updateSlidesProgress: _updateSlidesProgress_js__WEBPACK_IMPORTED_MODULE_4__["default"], 9515 updateProgress: _updateProgress_js__WEBPACK_IMPORTED_MODULE_5__["default"], 9516 updateSlidesClasses: _updateSlidesClasses_js__WEBPACK_IMPORTED_MODULE_6__["default"], 9517 updateActiveIndex: _updateActiveIndex_js__WEBPACK_IMPORTED_MODULE_7__["default"], 9518 updateClickedSlide: _updateClickedSlide_js__WEBPACK_IMPORTED_MODULE_8__["default"] 9519}); 9520 9521/***/ }), 9522
vendor: 2,607 bytes, lines 9523-9606
9523/***/ "./node_modules/swiper/core/update/updateActiveIndex.js": 9524/*!**************************************************************!*\ 9525 !*** ./node_modules/swiper/core/update/updateActiveIndex.js ***! 9526 \**************************************************************/ 9527/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9528 9529"use strict"; 9530__webpack_require__.r(__webpack_exports__); 9531/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9532/* harmony export */ "default": () => (/* binding */ updateActiveIndex) 9533/* harmony export */ }); 9534function updateActiveIndex(newActiveIndex) { 9535 const swiper = this; 9536 const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate; 9537 const { 9538 slidesGrid, 9539 snapGrid, 9540 params, 9541 activeIndex: previousIndex, 9542 realIndex: previousRealIndex, 9543 snapIndex: previousSnapIndex 9544 } = swiper; 9545 let activeIndex = newActiveIndex; 9546 let snapIndex; 9547 9548 if (typeof activeIndex === 'undefined') { 9549 for (let i = 0; i < slidesGrid.length; i += 1) { 9550 if (typeof slidesGrid[i + 1] !== 'undefined') { 9551 if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1] - (slidesGrid[i + 1] - slidesGrid[i]) / 2) { 9552 activeIndex = i; 9553 } else if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1]) { 9554 activeIndex = i + 1; 9555 } 9556 } else if (translate >= slidesGrid[i]) { 9557 activeIndex = i; 9558 } 9559 } // Normalize slideIndex 9560 9561 9562 if (params.normalizeSlideIndex) { 9563 if (activeIndex < 0 || typeof activeIndex === 'undefined') activeIndex = 0; 9564 } 9565 } 9566 9567 if (snapGrid.indexOf(translate) >= 0) { 9568 snapIndex = snapGrid.indexOf(translate); 9569 } else { 9570 const skip = Math.min(params.slidesPerGroupSkip, activeIndex); 9571 snapIndex = skip + Math.floor((activeIndex - skip) / params.slidesPerGroup); 9572 } 9573 9574 if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1; 9575 9576 if (activeIndex === previousIndex) { 9577 if (snapIndex !== previousSnapIndex) { 9578 swiper.snapIndex = snapIndex; 9579 swiper.emit('snapIndexChange'); 9580 } 9581 9582 return; 9583 } // Get real index 9584 9585 9586 const realIndex = parseInt(swiper.slides.eq(activeIndex).attr('data-swiper-slide-index') || activeIndex, 10); 9587 Object.assign(swiper, { 9588 snapIndex, 9589 realIndex, 9590 previousIndex, 9591 activeIndex 9592 }); 9593 swiper.emit('activeIndexChange'); 9594 swiper.emit('snapIndexChange'); 9595 9596 if (previousRealIndex !== realIndex) { 9597 swiper.emit('realIndexChange'); 9598 } 9599 9600 if (swiper.initialized || swiper.params.runCallbacksOnInit) { 9601 swiper.emit('slideChange'); 9602 } 9603} 9604 9605/***/ }), 9606
vendor: 2,101 bytes, lines 9607-9669
9607/***/ "./node_modules/swiper/core/update/updateAutoHeight.js": 9608/*!*************************************************************!*\ 9609 !*** ./node_modules/swiper/core/update/updateAutoHeight.js ***! 9610 \*************************************************************/ 9611/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9612 9613"use strict"; 9614__webpack_require__.r(__webpack_exports__); 9615/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9616/* harmony export */ "default": () => (/* binding */ updateAutoHeight) 9617/* harmony export */ }); 9618function updateAutoHeight(speed) { 9619 const swiper = this; 9620 const activeSlides = []; 9621 const isVirtual = swiper.virtual && swiper.params.virtual.enabled; 9622 let newHeight = 0; 9623 let i; 9624 9625 if (typeof speed === 'number') { 9626 swiper.setTransition(speed); 9627 } else if (speed === true) { 9628 swiper.setTransition(swiper.params.speed); 9629 } 9630 9631 const getSlideByIndex = index => { 9632 if (isVirtual) { 9633 return swiper.slides.filter(el => parseInt(el.getAttribute('data-swiper-slide-index'), 10) === index)[0]; 9634 } 9635 9636 return swiper.slides.eq(index)[0]; 9637 }; // Find slides currently in view 9638 9639 9640 if (swiper.params.slidesPerView !== 'auto' && swiper.params.slidesPerView > 1) { 9641 if (swiper.params.centeredSlides) { 9642 swiper.visibleSlides.each(slide => { 9643 activeSlides.push(slide); 9644 }); 9645 } else { 9646 for (i = 0; i < Math.ceil(swiper.params.slidesPerView); i += 1) { 9647 const index = swiper.activeIndex + i; 9648 if (index > swiper.slides.length && !isVirtual) break; 9649 activeSlides.push(getSlideByIndex(index)); 9650 } 9651 } 9652 } else { 9653 activeSlides.push(getSlideByIndex(swiper.activeIndex)); 9654 } // Find new height from highest slide in view 9655 9656 9657 for (i = 0; i < activeSlides.length; i += 1) { 9658 if (typeof activeSlides[i] !== 'undefined') { 9659 const height = activeSlides[i].offsetHeight; 9660 newHeight = height > newHeight ? height : newHeight; 9661 } 9662 } // Update Height 9663 9664 9665 if (newHeight || newHeight === 0) swiper.$wrapperEl.css('height', `${newHeight}px`); 9666} 9667 9668/***/ }), 9669
vendor: 1,786 bytes, lines 9670-9720
9670/***/ "./node_modules/swiper/core/update/updateClickedSlide.js": 9671/*!***************************************************************!*\ 9672 !*** ./node_modules/swiper/core/update/updateClickedSlide.js ***! 9673 \***************************************************************/ 9674/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9675 9676"use strict"; 9677__webpack_require__.r(__webpack_exports__); 9678/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9679/* harmony export */ "default": () => (/* binding */ updateClickedSlide) 9680/* harmony export */ }); 9681/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 9682 9683function updateClickedSlide(e) { 9684 const swiper = this; 9685 const params = swiper.params; 9686 const slide = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(e).closest(`.${params.slideClass}`)[0]; 9687 let slideFound = false; 9688 let slideIndex; 9689 9690 if (slide) { 9691 for (let i = 0; i < swiper.slides.length; i += 1) { 9692 if (swiper.slides[i] === slide) { 9693 slideFound = true; 9694 slideIndex = i; 9695 break; 9696 } 9697 } 9698 } 9699 9700 if (slide && slideFound) { 9701 swiper.clickedSlide = slide; 9702 9703 if (swiper.virtual && swiper.params.virtual.enabled) { 9704 swiper.clickedIndex = parseInt((0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(slide).attr('data-swiper-slide-index'), 10); 9705 } else { 9706 swiper.clickedIndex = slideIndex; 9707 } 9708 } else { 9709 swiper.clickedSlide = undefined; 9710 swiper.clickedIndex = undefined; 9711 return; 9712 } 9713 9714 if (params.slideToClickedSlide && swiper.clickedIndex !== undefined && swiper.clickedIndex !== swiper.activeIndex) { 9715 swiper.slideToClickedSlide(); 9716 } 9717} 9718 9719/***/ }), 9720
vendor: 1,792 bytes, lines 9721-9784
9721/***/ "./node_modules/swiper/core/update/updateProgress.js": 9722/*!***********************************************************!*\ 9723 !*** ./node_modules/swiper/core/update/updateProgress.js ***! 9724 \***********************************************************/ 9725/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9726 9727"use strict"; 9728__webpack_require__.r(__webpack_exports__); 9729/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9730/* harmony export */ "default": () => (/* binding */ updateProgress) 9731/* harmony export */ }); 9732function updateProgress(translate) { 9733 const swiper = this; 9734 9735 if (typeof translate === 'undefined') { 9736 const multiplier = swiper.rtlTranslate ? -1 : 1; // eslint-disable-next-line 9737 9738 translate = swiper && swiper.translate && swiper.translate * multiplier || 0; 9739 } 9740 9741 const params = swiper.params; 9742 const translatesDiff = swiper.maxTranslate() - swiper.minTranslate(); 9743 let { 9744 progress, 9745 isBeginning, 9746 isEnd 9747 } = swiper; 9748 const wasBeginning = isBeginning; 9749 const wasEnd = isEnd; 9750 9751 if (translatesDiff === 0) { 9752 progress = 0; 9753 isBeginning = true; 9754 isEnd = true; 9755 } else { 9756 progress = (translate - swiper.minTranslate()) / translatesDiff; 9757 isBeginning = progress <= 0; 9758 isEnd = progress >= 1; 9759 } 9760 9761 Object.assign(swiper, { 9762 progress, 9763 isBeginning, 9764 isEnd 9765 }); 9766 if (params.watchSlidesProgress || params.centeredSlides && params.autoHeight) swiper.updateSlidesProgress(translate); 9767 9768 if (isBeginning && !wasBeginning) { 9769 swiper.emit('reachBeginning toEdge'); 9770 } 9771 9772 if (isEnd && !wasEnd) { 9773 swiper.emit('reachEnd toEdge'); 9774 } 9775 9776 if (wasBeginning && !isBeginning || wasEnd && !isEnd) { 9777 swiper.emit('fromEdge'); 9778 } 9779 9780 swiper.emit('progress', progress); 9781} 9782 9783/***/ }), 9784
vendor: 1,523 bytes, lines 9785-9831
9785/***/ "./node_modules/swiper/core/update/updateSize.js": 9786/*!*******************************************************!*\ 9787 !*** ./node_modules/swiper/core/update/updateSize.js ***! 9788 \*******************************************************/ 9789/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9790 9791"use strict"; 9792__webpack_require__.r(__webpack_exports__); 9793/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9794/* harmony export */ "default": () => (/* binding */ updateSize) 9795/* harmony export */ }); 9796function updateSize() { 9797 const swiper = this; 9798 let width; 9799 let height; 9800 const $el = swiper.$el; 9801 9802 if (typeof swiper.params.width !== 'undefined' && swiper.params.width !== null) { 9803 width = swiper.params.width; 9804 } else { 9805 width = $el[0].clientWidth; 9806 } 9807 9808 if (typeof swiper.params.height !== 'undefined' && swiper.params.height !== null) { 9809 height = swiper.params.height; 9810 } else { 9811 height = $el[0].clientHeight; 9812 } 9813 9814 if (width === 0 && swiper.isHorizontal() || height === 0 && swiper.isVertical()) { 9815 return; 9816 } // Subtract paddings 9817 9818 9819 width = width - parseInt($el.css('padding-left') || 0, 10) - parseInt($el.css('padding-right') || 0, 10); 9820 height = height - parseInt($el.css('padding-top') || 0, 10) - parseInt($el.css('padding-bottom') || 0, 10); 9821 if (Number.isNaN(width)) width = 0; 9822 if (Number.isNaN(height)) height = 0; 9823 Object.assign(swiper, { 9824 width, 9825 height, 9826 size: swiper.isHorizontal() ? width : height 9827 }); 9828} 9829 9830/***/ }), 9831
vendor: 10,870 bytes, lines 9832-10155
9832/***/ "./node_modules/swiper/core/update/updateSlides.js": 9833/*!*********************************************************!*\ 9834 !*** ./node_modules/swiper/core/update/updateSlides.js ***! 9835 \*********************************************************/ 9836/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 9837 9838"use strict"; 9839__webpack_require__.r(__webpack_exports__); 9840/* harmony export */ __webpack_require__.d(__webpack_exports__, { 9841/* harmony export */ "default": () => (/* binding */ updateSlides) 9842/* harmony export */ }); 9843/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 9844 9845function updateSlides() { 9846 const swiper = this; 9847 9848 function getDirectionLabel(property) { 9849 if (swiper.isHorizontal()) { 9850 return property; 9851 } // prettier-ignore 9852 9853 9854 return { 9855 'width': 'height', 9856 'margin-top': 'margin-left', 9857 'margin-bottom ': 'margin-right', 9858 'margin-left': 'margin-top', 9859 'margin-right': 'margin-bottom', 9860 'padding-left': 'padding-top', 9861 'padding-right': 'padding-bottom', 9862 'marginRight': 'marginBottom' 9863 }[property]; 9864 } 9865 9866 function getDirectionPropertyValue(node, label) { 9867 return parseFloat(node.getPropertyValue(getDirectionLabel(label)) || 0); 9868 } 9869 9870 const params = swiper.params; 9871 const { 9872 $wrapperEl, 9873 size: swiperSize, 9874 rtlTranslate: rtl, 9875 wrongRTL 9876 } = swiper; 9877 const isVirtual = swiper.virtual && params.virtual.enabled; 9878 const previousSlidesLength = isVirtual ? swiper.virtual.slides.length : swiper.slides.length; 9879 const slides = $wrapperEl.children(`.${swiper.params.slideClass}`); 9880 const slidesLength = isVirtual ? swiper.virtual.slides.length : slides.length; 9881 let snapGrid = []; 9882 const slidesGrid = []; 9883 const slidesSizesGrid = []; 9884 let offsetBefore = params.slidesOffsetBefore; 9885 9886 if (typeof offsetBefore === 'function') { 9887 offsetBefore = params.slidesOffsetBefore.call(swiper); 9888 } 9889 9890 let offsetAfter = params.slidesOffsetAfter; 9891 9892 if (typeof offsetAfter === 'function') { 9893 offsetAfter = params.slidesOffsetAfter.call(swiper); 9894 } 9895 9896 const previousSnapGridLength = swiper.snapGrid.length; 9897 const previousSlidesGridLength = swiper.slidesGrid.length; 9898 let spaceBetween = params.spaceBetween; 9899 let slidePosition = -offsetBefore; 9900 let prevSlideSize = 0; 9901 let index = 0; 9902 9903 if (typeof swiperSize === 'undefined') { 9904 return; 9905 } 9906 9907 if (typeof spaceBetween === 'string' && spaceBetween.indexOf('%') >= 0) { 9908 spaceBetween = parseFloat(spaceBetween.replace('%', '')) / 100 * swiperSize; 9909 } 9910 9911 swiper.virtualSize = -spaceBetween; // reset margins 9912 9913 if (rtl) slides.css({ 9914 marginLeft: '', 9915 marginBottom: '', 9916 marginTop: '' 9917 });else slides.css({ 9918 marginRight: '', 9919 marginBottom: '', 9920 marginTop: '' 9921 }); // reset cssMode offsets 9922 9923 if (params.centeredSlides && params.cssMode) { 9924 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.setCSSProperty)(swiper.wrapperEl, '--swiper-centered-offset-before', ''); 9925 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.setCSSProperty)(swiper.wrapperEl, '--swiper-centered-offset-after', ''); 9926 } 9927 9928 const gridEnabled = params.grid && params.grid.rows > 1 && swiper.grid; 9929 9930 if (gridEnabled) { 9931 swiper.grid.initSlides(slidesLength); 9932 } // Calc slides 9933 9934 9935 let slideSize; 9936 const shouldResetSlideSize = params.slidesPerView === 'auto' && params.breakpoints && Object.keys(params.breakpoints).filter(key => { 9937 return typeof params.breakpoints[key].slidesPerView !== 'undefined'; 9938 }).length > 0; 9939 9940 for (let i = 0; i < slidesLength; i += 1) { 9941 slideSize = 0; 9942 const slide = slides.eq(i); 9943 9944 if (gridEnabled) { 9945 swiper.grid.updateSlide(i, slide, slidesLength, getDirectionLabel); 9946 } 9947 9948 if (slide.css('display') === 'none') continue; // eslint-disable-line 9949 9950 if (params.slidesPerView === 'auto') { 9951 if (shouldResetSlideSize) { 9952 slides[i].style[getDirectionLabel('width')] = ``; 9953 } 9954 9955 const slideStyles = getComputedStyle(slide[0]); 9956 const currentTransform = slide[0].style.transform; 9957 const currentWebKitTransform = slide[0].style.webkitTransform; 9958 9959 if (currentTransform) { 9960 slide[0].style.transform = 'none'; 9961 } 9962 9963 if (currentWebKitTransform) { 9964 slide[0].style.webkitTransform = 'none'; 9965 } 9966 9967 if (params.roundLengths) { 9968 slideSize = swiper.isHorizontal() ? slide.outerWidth(true) : slide.outerHeight(true); 9969 } else { 9970 // eslint-disable-next-line 9971 const width = getDirectionPropertyValue(slideStyles, 'width'); 9972 const paddingLeft = getDirectionPropertyValue(slideStyles, 'padding-left'); 9973 const paddingRight = getDirectionPropertyValue(slideStyles, 'padding-right'); 9974 const marginLeft = getDirectionPropertyValue(slideStyles, 'margin-left'); 9975 const marginRight = getDirectionPropertyValue(slideStyles, 'margin-right'); 9976 const boxSizing = slideStyles.getPropertyValue('box-sizing'); 9977 9978 if (boxSizing && boxSizing === 'border-box') { 9979 slideSize = width + marginLeft + marginRight; 9980 } else { 9981 const { 9982 clientWidth, 9983 offsetWidth 9984 } = slide[0]; 9985 slideSize = width + paddingLeft + paddingRight + marginLeft + marginRight + (offsetWidth - clientWidth); 9986 } 9987 } 9988 9989 if (currentTransform) { 9990 slide[0].style.transform = currentTransform; 9991 } 9992 9993 if (currentWebKitTransform) { 9994 slide[0].style.webkitTransform = currentWebKitTransform; 9995 } 9996 9997 if (params.roundLengths) slideSize = Math.floor(slideSize); 9998 } else { 9999 slideSize = (swiperSize - (params.slidesPerView - 1) * spaceBetween) / params.slidesPerView; 10000 if (params.roundLengths) slideSize = Math.floor(slideSize); 10001 10002 if (slides[i]) { 10003 slides[i].style[getDirectionLabel('width')] = `${slideSize}px`; 10004 } 10005 } 10006 10007 if (slides[i]) { 10008 slides[i].swiperSlideSize = slideSize; 10009 } 10010 10011 slidesSizesGrid.push(slideSize); 10012 10013 if (params.centeredSlides) { 10014 slidePosition = slidePosition + slideSize / 2 + prevSlideSize / 2 + spaceBetween; 10015 if (prevSlideSize === 0 && i !== 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween; 10016 if (i === 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween; 10017 if (Math.abs(slidePosition) < 1 / 1000) slidePosition = 0; 10018 if (params.roundLengths) slidePosition = Math.floor(slidePosition); 10019 if (index % params.slidesPerGroup === 0) snapGrid.push(slidePosition); 10020 slidesGrid.push(slidePosition); 10021 } else { 10022 if (params.roundLengths) slidePosition = Math.floor(slidePosition); 10023 if ((index - Math.min(swiper.params.slidesPerGroupSkip, index)) % swiper.params.slidesPerGroup === 0) snapGrid.push(slidePosition); 10024 slidesGrid.push(slidePosition); 10025 slidePosition = slidePosition + slideSize + spaceBetween; 10026 } 10027 10028 swiper.virtualSize += slideSize + spaceBetween; 10029 prevSlideSize = slideSize; 10030 index += 1; 10031 } 10032 10033 swiper.virtualSize = Math.max(swiper.virtualSize, swiperSize) + offsetAfter; 10034 10035 if (rtl && wrongRTL && (params.effect === 'slide' || params.effect === 'coverflow')) { 10036 $wrapperEl.css({ 10037 width: `${swiper.virtualSize + params.spaceBetween}px` 10038 }); 10039 } 10040 10041 if (params.setWrapperSize) { 10042 $wrapperEl.css({ 10043 [getDirectionLabel('width')]: `${swiper.virtualSize + params.spaceBetween}px` 10044 }); 10045 } 10046 10047 if (gridEnabled) { 10048 swiper.grid.updateWrapperSize(slideSize, snapGrid, getDirectionLabel); 10049 } // Remove last grid elements depending on width 10050 10051 10052 if (!params.centeredSlides) { 10053 const newSlidesGrid = []; 10054 10055 for (let i = 0; i < snapGrid.length; i += 1) { 10056 let slidesGridItem = snapGrid[i]; 10057 if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem); 10058 10059 if (snapGrid[i] <= swiper.virtualSize - swiperSize) { 10060 newSlidesGrid.push(slidesGridItem); 10061 } 10062 } 10063 10064 snapGrid = newSlidesGrid; 10065 10066 if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) { 10067 snapGrid.push(swiper.virtualSize - swiperSize); 10068 } 10069 } 10070 10071 if (snapGrid.length === 0) snapGrid = [0]; 10072 10073 if (params.spaceBetween !== 0) { 10074 const key = swiper.isHorizontal() && rtl ? 'marginLeft' : getDirectionLabel('marginRight'); 10075 slides.filter((_, slideIndex) => { 10076 if (!params.cssMode) return true; 10077 10078 if (slideIndex === slides.length - 1) { 10079 return false; 10080 } 10081 10082 return true; 10083 }).css({ 10084 [key]: `${spaceBetween}px` 10085 }); 10086 } 10087 10088 if (params.centeredSlides && params.centeredSlidesBounds) { 10089 let allSlidesSize = 0; 10090 slidesSizesGrid.forEach(slideSizeValue => { 10091 allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0); 10092 }); 10093 allSlidesSize -= params.spaceBetween; 10094 const maxSnap = allSlidesSize - swiperSize; 10095 snapGrid = snapGrid.map(snap => { 10096 if (snap < 0) return -offsetBefore; 10097 if (snap > maxSnap) return maxSnap + offsetAfter; 10098 return snap; 10099 }); 10100 } 10101 10102 if (params.centerInsufficientSlides) { 10103 let allSlidesSize = 0; 10104 slidesSizesGrid.forEach(slideSizeValue => { 10105 allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0); 10106 }); 10107 allSlidesSize -= params.spaceBetween; 10108 10109 if (allSlidesSize < swiperSize) { 10110 const allSlidesOffset = (swiperSize - allSlidesSize) / 2; 10111 snapGrid.forEach((snap, snapIndex) => { 10112 snapGrid[snapIndex] = snap - allSlidesOffset; 10113 }); 10114 slidesGrid.forEach((snap, snapIndex) => { 10115 slidesGrid[snapIndex] = snap + allSlidesOffset; 10116 }); 10117 } 10118 } 10119 10120 Object.assign(swiper, { 10121 slides, 10122 snapGrid, 10123 slidesGrid, 10124 slidesSizesGrid 10125 }); 10126 10127 if (params.centeredSlides && params.cssMode && !params.centeredSlidesBounds) { 10128 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.setCSSProperty)(swiper.wrapperEl, '--swiper-centered-offset-before', `${-snapGrid[0]}px`); 10129 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.setCSSProperty)(swiper.wrapperEl, '--swiper-centered-offset-after', `${swiper.size / 2 - slidesSizesGrid[slidesSizesGrid.length - 1] / 2}px`); 10130 const addToSnapGrid = -swiper.snapGrid[0]; 10131 const addToSlidesGrid = -swiper.slidesGrid[0]; 10132 swiper.snapGrid = swiper.snapGrid.map(v => v + addToSnapGrid); 10133 swiper.slidesGrid = swiper.slidesGrid.map(v => v + addToSlidesGrid); 10134 } 10135 10136 if (slidesLength !== previousSlidesLength) { 10137 swiper.emit('slidesLengthChange'); 10138 } 10139 10140 if (snapGrid.length !== previousSnapGridLength) { 10141 if (swiper.params.watchOverflow) swiper.checkOverflow(); 10142 swiper.emit('snapGridLengthChange'); 10143 } 10144 10145 if (slidesGrid.length !== previousSlidesGridLength) { 10146 swiper.emit('slidesGridLengthChange'); 10147 } 10148 10149 if (params.watchSlidesProgress) { 10150 swiper.updateSlidesOffset(); 10151 } 10152} 10153 10154/***/ }), 10155
vendor: 3,316 bytes, lines 10156-10233
10156/***/ "./node_modules/swiper/core/update/updateSlidesClasses.js": 10157/*!****************************************************************!*\ 10158 !*** ./node_modules/swiper/core/update/updateSlidesClasses.js ***! 10159 \****************************************************************/ 10160/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 10161 10162"use strict"; 10163__webpack_require__.r(__webpack_exports__); 10164/* harmony export */ __webpack_require__.d(__webpack_exports__, { 10165/* harmony export */ "default": () => (/* binding */ updateSlidesClasses) 10166/* harmony export */ }); 10167function updateSlidesClasses() { 10168 const swiper = this; 10169 const { 10170 slides, 10171 params, 10172 $wrapperEl, 10173 activeIndex, 10174 realIndex 10175 } = swiper; 10176 const isVirtual = swiper.virtual && params.virtual.enabled; 10177 slides.removeClass(`${params.slideActiveClass} ${params.slideNextClass} ${params.slidePrevClass} ${params.slideDuplicateActiveClass} ${params.slideDuplicateNextClass} ${params.slideDuplicatePrevClass}`); 10178 let activeSlide; 10179 10180 if (isVirtual) { 10181 activeSlide = swiper.$wrapperEl.find(`.${params.slideClass}[data-swiper-slide-index="${activeIndex}"]`); 10182 } else { 10183 activeSlide = slides.eq(activeIndex); 10184 } // Active classes 10185 10186 10187 activeSlide.addClass(params.slideActiveClass); 10188 10189 if (params.loop) { 10190 // Duplicate to all looped slides 10191 if (activeSlide.hasClass(params.slideDuplicateClass)) { 10192 $wrapperEl.children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index="${realIndex}"]`).addClass(params.slideDuplicateActiveClass); 10193 } else { 10194 $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index="${realIndex}"]`).addClass(params.slideDuplicateActiveClass); 10195 } 10196 } // Next Slide 10197 10198 10199 let nextSlide = activeSlide.nextAll(`.${params.slideClass}`).eq(0).addClass(params.slideNextClass); 10200 10201 if (params.loop && nextSlide.length === 0) { 10202 nextSlide = slides.eq(0); 10203 nextSlide.addClass(params.slideNextClass); 10204 } // Prev Slide 10205 10206 10207 let prevSlide = activeSlide.prevAll(`.${params.slideClass}`).eq(0).addClass(params.slidePrevClass); 10208 10209 if (params.loop && prevSlide.length === 0) { 10210 prevSlide = slides.eq(-1); 10211 prevSlide.addClass(params.slidePrevClass); 10212 } 10213 10214 if (params.loop) { 10215 // Duplicate to all looped slides 10216 if (nextSlide.hasClass(params.slideDuplicateClass)) { 10217 $wrapperEl.children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index="${nextSlide.attr('data-swiper-slide-index')}"]`).addClass(params.slideDuplicateNextClass); 10218 } else { 10219 $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index="${nextSlide.attr('data-swiper-slide-index')}"]`).addClass(params.slideDuplicateNextClass); 10220 } 10221 10222 if (prevSlide.hasClass(params.slideDuplicateClass)) { 10223 $wrapperEl.children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index="${prevSlide.attr('data-swiper-slide-index')}"]`).addClass(params.slideDuplicatePrevClass); 10224 } else { 10225 $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index="${prevSlide.attr('data-swiper-slide-index')}"]`).addClass(params.slideDuplicatePrevClass); 10226 } 10227 } 10228 10229 swiper.emitSlidesClasses(); 10230} 10231 10232/***/ }), 10233
vendor: 843 bytes, lines 10234-10255
10234/***/ "./node_modules/swiper/core/update/updateSlidesOffset.js": 10235/*!***************************************************************!*\ 10236 !*** ./node_modules/swiper/core/update/updateSlidesOffset.js ***! 10237 \***************************************************************/ 10238/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 10239 10240"use strict"; 10241__webpack_require__.r(__webpack_exports__); 10242/* harmony export */ __webpack_require__.d(__webpack_exports__, { 10243/* harmony export */ "default": () => (/* binding */ updateSlidesOffset) 10244/* harmony export */ }); 10245function updateSlidesOffset() { 10246 const swiper = this; 10247 const slides = swiper.slides; 10248 10249 for (let i = 0; i < slides.length; i += 1) { 10250 slides[i].swiperSlideOffset = swiper.isHorizontal() ? slides[i].offsetLeft : slides[i].offsetTop; 10251 } 10252} 10253 10254/***/ }), 10255
vendor: 2,575 bytes, lines 10256-10314
10256/***/ "./node_modules/swiper/core/update/updateSlidesProgress.js": 10257/*!*****************************************************************!*\ 10258 !*** ./node_modules/swiper/core/update/updateSlidesProgress.js ***! 10259 \*****************************************************************/ 10260/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 10261 10262"use strict"; 10263__webpack_require__.r(__webpack_exports__); 10264/* harmony export */ __webpack_require__.d(__webpack_exports__, { 10265/* harmony export */ "default": () => (/* binding */ updateSlidesProgress) 10266/* harmony export */ }); 10267/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 10268 10269function updateSlidesProgress(translate = this && this.translate || 0) { 10270 const swiper = this; 10271 const params = swiper.params; 10272 const { 10273 slides, 10274 rtlTranslate: rtl, 10275 snapGrid 10276 } = swiper; 10277 if (slides.length === 0) return; 10278 if (typeof slides[0].swiperSlideOffset === 'undefined') swiper.updateSlidesOffset(); 10279 let offsetCenter = -translate; 10280 if (rtl) offsetCenter = translate; // Visible Slides 10281 10282 slides.removeClass(params.slideVisibleClass); 10283 swiper.visibleSlidesIndexes = []; 10284 swiper.visibleSlides = []; 10285 10286 for (let i = 0; i < slides.length; i += 1) { 10287 const slide = slides[i]; 10288 let slideOffset = slide.swiperSlideOffset; 10289 10290 if (params.cssMode && params.centeredSlides) { 10291 slideOffset -= slides[0].swiperSlideOffset; 10292 } 10293 10294 const slideProgress = (offsetCenter + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) / (slide.swiperSlideSize + params.spaceBetween); 10295 const originalSlideProgress = (offsetCenter - snapGrid[0] + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) / (slide.swiperSlideSize + params.spaceBetween); 10296 const slideBefore = -(offsetCenter - slideOffset); 10297 const slideAfter = slideBefore + swiper.slidesSizesGrid[i]; 10298 const isVisible = slideBefore >= 0 && slideBefore < swiper.size - 1 || slideAfter > 1 && slideAfter <= swiper.size || slideBefore <= 0 && slideAfter >= swiper.size; 10299 10300 if (isVisible) { 10301 swiper.visibleSlides.push(slide); 10302 swiper.visibleSlidesIndexes.push(i); 10303 slides.eq(i).addClass(params.slideVisibleClass); 10304 } 10305 10306 slide.progress = rtl ? -slideProgress : slideProgress; 10307 slide.originalProgress = rtl ? -originalSlideProgress : originalSlideProgress; 10308 } 10309 10310 swiper.visibleSlides = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(swiper.visibleSlides); 10311} 10312 10313/***/ }), 10314
vendor: 9,405 bytes, lines 10315-10624
10315/***/ "./node_modules/swiper/modules/a11y/a11y.js": 10316/*!**************************************************!*\ 10317 !*** ./node_modules/swiper/modules/a11y/a11y.js ***! 10318 \**************************************************/ 10319/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 10320 10321"use strict"; 10322__webpack_require__.r(__webpack_exports__); 10323/* harmony export */ __webpack_require__.d(__webpack_exports__, { 10324/* harmony export */ "default": () => (/* binding */ A11y) 10325/* harmony export */ }); 10326/* harmony import */ var _shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/classes-to-selector.js */ "./node_modules/swiper/shared/classes-to-selector.js"); 10327/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 10328 10329 10330function A11y({ 10331 swiper, 10332 extendParams, 10333 on 10334}) { 10335 extendParams({ 10336 a11y: { 10337 enabled: true, 10338 notificationClass: 'swiper-notification', 10339 prevSlideMessage: 'Previous slide', 10340 nextSlideMessage: 'Next slide', 10341 firstSlideMessage: 'This is the first slide', 10342 lastSlideMessage: 'This is the last slide', 10343 paginationBulletMessage: 'Go to slide {{index}}', 10344 slideLabelMessage: '{{index}} / {{slidesLength}}', 10345 containerMessage: null, 10346 containerRoleDescriptionMessage: null, 10347 itemRoleDescriptionMessage: null, 10348 slideRole: 'group' 10349 } 10350 }); 10351 let liveRegion = null; 10352 10353 function notify(message) { 10354 const notification = liveRegion; 10355 if (notification.length === 0) return; 10356 notification.html(''); 10357 notification.html(message); 10358 } 10359 10360 function getRandomNumber(size = 16) { 10361 const randomChar = () => Math.round(16 * Math.random()).toString(16); 10362 10363 return 'x'.repeat(size).replace(/x/g, randomChar); 10364 } 10365 10366 function makeElFocusable($el) { 10367 $el.attr('tabIndex', '0'); 10368 } 10369 10370 function makeElNotFocusable($el) { 10371 $el.attr('tabIndex', '-1'); 10372 } 10373 10374 function addElRole($el, role) { 10375 $el.attr('role', role); 10376 } 10377 10378 function addElRoleDescription($el, description) { 10379 $el.attr('aria-roledescription', description); 10380 } 10381 10382 function addElControls($el, controls) { 10383 $el.attr('aria-controls', controls); 10384 } 10385 10386 function addElLabel($el, label) { 10387 $el.attr('aria-label', label); 10388 } 10389 10390 function addElId($el, id) { 10391 $el.attr('id', id); 10392 } 10393 10394 function addElLive($el, live) { 10395 $el.attr('aria-live', live); 10396 } 10397 10398 function disableEl($el) { 10399 $el.attr('aria-disabled', true); 10400 } 10401 10402 function enableEl($el) { 10403 $el.attr('aria-disabled', false); 10404 } 10405 10406 function onEnterOrSpaceKey(e) { 10407 if (e.keyCode !== 13 && e.keyCode !== 32) return; 10408 const params = swiper.params.a11y; 10409 const $targetEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(e.target); 10410 10411 if (swiper.navigation && swiper.navigation.$nextEl && $targetEl.is(swiper.navigation.$nextEl)) { 10412 if (!(swiper.isEnd && !swiper.params.loop)) { 10413 swiper.slideNext(); 10414 } 10415 10416 if (swiper.isEnd) { 10417 notify(params.lastSlideMessage); 10418 } else { 10419 notify(params.nextSlideMessage); 10420 } 10421 } 10422 10423 if (swiper.navigation && swiper.navigation.$prevEl && $targetEl.is(swiper.navigation.$prevEl)) { 10424 if (!(swiper.isBeginning && !swiper.params.loop)) { 10425 swiper.slidePrev(); 10426 } 10427 10428 if (swiper.isBeginning) { 10429 notify(params.firstSlideMessage); 10430 } else { 10431 notify(params.prevSlideMessage); 10432 } 10433 } 10434 10435 if (swiper.pagination && $targetEl.is((0,_shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_0__["default"])(swiper.params.pagination.bulletClass))) { 10436 $targetEl[0].click(); 10437 } 10438 } 10439 10440 function updateNavigation() { 10441 if (swiper.params.loop || swiper.params.rewind || !swiper.navigation) return; 10442 const { 10443 $nextEl, 10444 $prevEl 10445 } = swiper.navigation; 10446 10447 if ($prevEl && $prevEl.length > 0) { 10448 if (swiper.isBeginning) { 10449 disableEl($prevEl); 10450 makeElNotFocusable($prevEl); 10451 } else { 10452 enableEl($prevEl); 10453 makeElFocusable($prevEl); 10454 } 10455 } 10456 10457 if ($nextEl && $nextEl.length > 0) { 10458 if (swiper.isEnd) { 10459 disableEl($nextEl); 10460 makeElNotFocusable($nextEl); 10461 } else { 10462 enableEl($nextEl); 10463 makeElFocusable($nextEl); 10464 } 10465 } 10466 } 10467 10468 function hasPagination() { 10469 return swiper.pagination && swiper.pagination.bullets && swiper.pagination.bullets.length; 10470 } 10471 10472 function hasClickablePagination() { 10473 return hasPagination() && swiper.params.pagination.clickable; 10474 } 10475 10476 function updatePagination() { 10477 const params = swiper.params.a11y; 10478 if (!hasPagination()) return; 10479 swiper.pagination.bullets.each(bulletEl => { 10480 const $bulletEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(bulletEl); 10481 10482 if (swiper.params.pagination.clickable) { 10483 makeElFocusable($bulletEl); 10484 10485 if (!swiper.params.pagination.renderBullet) { 10486 addElRole($bulletEl, 'button'); 10487 addElLabel($bulletEl, params.paginationBulletMessage.replace(/\{\{index\}\}/, $bulletEl.index() + 1)); 10488 } 10489 } 10490 10491 if ($bulletEl.is(`.${swiper.params.pagination.bulletActiveClass}`)) { 10492 $bulletEl.attr('aria-current', 'true'); 10493 } else { 10494 $bulletEl.removeAttr('aria-current'); 10495 } 10496 }); 10497 } 10498 10499 const initNavEl = ($el, wrapperId, message) => { 10500 makeElFocusable($el); 10501 10502 if ($el[0].tagName !== 'BUTTON') { 10503 addElRole($el, 'button'); 10504 $el.on('keydown', onEnterOrSpaceKey); 10505 } 10506 10507 addElLabel($el, message); 10508 addElControls($el, wrapperId); 10509 }; 10510 10511 function init() { 10512 const params = swiper.params.a11y; 10513 swiper.$el.append(liveRegion); // Container 10514 10515 const $containerEl = swiper.$el; 10516 10517 if (params.containerRoleDescriptionMessage) { 10518 addElRoleDescription($containerEl, params.containerRoleDescriptionMessage); 10519 } 10520 10521 if (params.containerMessage) { 10522 addElLabel($containerEl, params.containerMessage); 10523 } // Wrapper 10524 10525 10526 const $wrapperEl = swiper.$wrapperEl; 10527 const wrapperId = $wrapperEl.attr('id') || `swiper-wrapper-${getRandomNumber(16)}`; 10528 const live = swiper.params.autoplay && swiper.params.autoplay.enabled ? 'off' : 'polite'; 10529 addElId($wrapperEl, wrapperId); 10530 addElLive($wrapperEl, live); // Slide 10531 10532 if (params.itemRoleDescriptionMessage) { 10533 addElRoleDescription((0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(swiper.slides), params.itemRoleDescriptionMessage); 10534 } 10535 10536 addElRole((0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(swiper.slides), params.slideRole); 10537 const slidesLength = swiper.params.loop ? swiper.slides.filter(el => !el.classList.contains(swiper.params.slideDuplicateClass)).length : swiper.slides.length; 10538 swiper.slides.each((slideEl, index) => { 10539 const $slideEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(slideEl); 10540 const slideIndex = swiper.params.loop ? parseInt($slideEl.attr('data-swiper-slide-index'), 10) : index; 10541 const ariaLabelMessage = params.slideLabelMessage.replace(/\{\{index\}\}/, slideIndex + 1).replace(/\{\{slidesLength\}\}/, slidesLength); 10542 addElLabel($slideEl, ariaLabelMessage); 10543 }); // Navigation 10544 10545 let $nextEl; 10546 let $prevEl; 10547 10548 if (swiper.navigation && swiper.navigation.$nextEl) { 10549 $nextEl = swiper.navigation.$nextEl; 10550 } 10551 10552 if (swiper.navigation && swiper.navigation.$prevEl) { 10553 $prevEl = swiper.navigation.$prevEl; 10554 } 10555 10556 if ($nextEl && $nextEl.length) { 10557 initNavEl($nextEl, wrapperId, params.nextSlideMessage); 10558 } 10559 10560 if ($prevEl && $prevEl.length) { 10561 initNavEl($prevEl, wrapperId, params.prevSlideMessage); 10562 } // Pagination 10563 10564 10565 if (hasClickablePagination()) { 10566 swiper.pagination.$el.on('keydown', (0,_shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_0__["default"])(swiper.params.pagination.bulletClass), onEnterOrSpaceKey); 10567 } 10568 } 10569 10570 function destroy() { 10571 if (liveRegion && liveRegion.length > 0) liveRegion.remove(); 10572 let $nextEl; 10573 let $prevEl; 10574 10575 if (swiper.navigation && swiper.navigation.$nextEl) { 10576 $nextEl = swiper.navigation.$nextEl; 10577 } 10578 10579 if (swiper.navigation && swiper.navigation.$prevEl) { 10580 $prevEl = swiper.navigation.$prevEl; 10581 } 10582 10583 if ($nextEl) { 10584 $nextEl.off('keydown', onEnterOrSpaceKey); 10585 } 10586 10587 if ($prevEl) { 10588 $prevEl.off('keydown', onEnterOrSpaceKey); 10589 } // Pagination 10590 10591 10592 if (hasClickablePagination()) { 10593 swiper.pagination.$el.off('keydown', (0,_shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_0__["default"])(swiper.params.pagination.bulletClass), onEnterOrSpaceKey); 10594 } 10595 } 10596 10597 on('beforeInit', () => { 10598 liveRegion = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(`<span class="${swiper.params.a11y.notificationClass}" aria-live="assertive" aria-atomic="true"></span>`); 10599 }); 10600 on('afterInit', () => { 10601 if (!swiper.params.a11y.enabled) return; 10602 init(); 10603 updateNavigation(); 10604 }); 10605 on('toEdge', () => { 10606 if (!swiper.params.a11y.enabled) return; 10607 updateNavigation(); 10608 }); 10609 on('fromEdge', () => { 10610 if (!swiper.params.a11y.enabled) return; 10611 updateNavigation(); 10612 }); 10613 on('paginationUpdate', () => { 10614 if (!swiper.params.a11y.enabled) return; 10615 updatePagination(); 10616 }); 10617 on('destroy', () => { 10618 if (!swiper.params.a11y.enabled) return; 10619 destroy(); 10620 }); 10621} 10622 10623/***/ }), 10624
vendor: 6,774 bytes, lines 10625-10862
10625/***/ "./node_modules/swiper/modules/autoplay/autoplay.js": 10626/*!**********************************************************!*\ 10627 !*** ./node_modules/swiper/modules/autoplay/autoplay.js ***! 10628 \**********************************************************/ 10629/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 10630 10631"use strict"; 10632__webpack_require__.r(__webpack_exports__); 10633/* harmony export */ __webpack_require__.d(__webpack_exports__, { 10634/* harmony export */ "default": () => (/* binding */ Autoplay) 10635/* harmony export */ }); 10636/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 10637/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 10638/* eslint no-underscore-dangle: "off" */ 10639 10640/* eslint no-use-before-define: "off" */ 10641 10642 10643function Autoplay({ 10644 swiper, 10645 extendParams, 10646 on, 10647 emit 10648}) { 10649 let timeout; 10650 swiper.autoplay = { 10651 running: false, 10652 paused: false 10653 }; 10654 extendParams({ 10655 autoplay: { 10656 enabled: false, 10657 delay: 3000, 10658 waitForTransition: true, 10659 disableOnInteraction: true, 10660 stopOnLastSlide: false, 10661 reverseDirection: false, 10662 pauseOnMouseEnter: false 10663 } 10664 }); 10665 10666 function run() { 10667 const $activeSlideEl = swiper.slides.eq(swiper.activeIndex); 10668 let delay = swiper.params.autoplay.delay; 10669 10670 if ($activeSlideEl.attr('data-swiper-autoplay')) { 10671 delay = $activeSlideEl.attr('data-swiper-autoplay') || swiper.params.autoplay.delay; 10672 } 10673 10674 clearTimeout(timeout); 10675 timeout = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_1__.nextTick)(() => { 10676 let autoplayResult; 10677 10678 if (swiper.params.autoplay.reverseDirection) { 10679 if (swiper.params.loop) { 10680 swiper.loopFix(); 10681 autoplayResult = swiper.slidePrev(swiper.params.speed, true, true); 10682 emit('autoplay'); 10683 } else if (!swiper.isBeginning) { 10684 autoplayResult = swiper.slidePrev(swiper.params.speed, true, true); 10685 emit('autoplay'); 10686 } else if (!swiper.params.autoplay.stopOnLastSlide) { 10687 autoplayResult = swiper.slideTo(swiper.slides.length - 1, swiper.params.speed, true, true); 10688 emit('autoplay'); 10689 } else { 10690 stop(); 10691 } 10692 } else if (swiper.params.loop) { 10693 swiper.loopFix(); 10694 autoplayResult = swiper.slideNext(swiper.params.speed, true, true); 10695 emit('autoplay'); 10696 } else if (!swiper.isEnd) { 10697 autoplayResult = swiper.slideNext(swiper.params.speed, true, true); 10698 emit('autoplay'); 10699 } else if (!swiper.params.autoplay.stopOnLastSlide) { 10700 autoplayResult = swiper.slideTo(0, swiper.params.speed, true, true); 10701 emit('autoplay'); 10702 } else { 10703 stop(); 10704 } 10705 10706 if (swiper.params.cssMode && swiper.autoplay.running) run();else if (autoplayResult === false) { 10707 run(); 10708 } 10709 }, delay); 10710 } 10711 10712 function start() { 10713 if (typeof timeout !== 'undefined') return false; 10714 if (swiper.autoplay.running) return false; 10715 swiper.autoplay.running = true; 10716 emit('autoplayStart'); 10717 run(); 10718 return true; 10719 } 10720 10721 function stop() { 10722 if (!swiper.autoplay.running) return false; 10723 if (typeof timeout === 'undefined') return false; 10724 10725 if (timeout) { 10726 clearTimeout(timeout); 10727 timeout = undefined; 10728 } 10729 10730 swiper.autoplay.running = false; 10731 emit('autoplayStop'); 10732 return true; 10733 } 10734 10735 function pause(speed) { 10736 if (!swiper.autoplay.running) return; 10737 if (swiper.autoplay.paused) return; 10738 if (timeout) clearTimeout(timeout); 10739 swiper.autoplay.paused = true; 10740 10741 if (speed === 0 || !swiper.params.autoplay.waitForTransition) { 10742 swiper.autoplay.paused = false; 10743 run(); 10744 } else { 10745 ['transitionend', 'webkitTransitionEnd'].forEach(event => { 10746 swiper.$wrapperEl[0].addEventListener(event, onTransitionEnd); 10747 }); 10748 } 10749 } 10750 10751 function onVisibilityChange() { 10752 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 10753 10754 if (document.visibilityState === 'hidden' && swiper.autoplay.running) { 10755 pause(); 10756 } 10757 10758 if (document.visibilityState === 'visible' && swiper.autoplay.paused) { 10759 run(); 10760 swiper.autoplay.paused = false; 10761 } 10762 } 10763 10764 function onTransitionEnd(e) { 10765 if (!swiper || swiper.destroyed || !swiper.$wrapperEl) return; 10766 if (e.target !== swiper.$wrapperEl[0]) return; 10767 ['transitionend', 'webkitTransitionEnd'].forEach(event => { 10768 swiper.$wrapperEl[0].removeEventListener(event, onTransitionEnd); 10769 }); 10770 swiper.autoplay.paused = false; 10771 10772 if (!swiper.autoplay.running) { 10773 stop(); 10774 } else { 10775 run(); 10776 } 10777 } 10778 10779 function onMouseEnter() { 10780 if (swiper.params.autoplay.disableOnInteraction) { 10781 stop(); 10782 } else { 10783 pause(); 10784 } 10785 10786 ['transitionend', 'webkitTransitionEnd'].forEach(event => { 10787 swiper.$wrapperEl[0].removeEventListener(event, onTransitionEnd); 10788 }); 10789 } 10790 10791 function onMouseLeave() { 10792 if (swiper.params.autoplay.disableOnInteraction) { 10793 return; 10794 } 10795 10796 swiper.autoplay.paused = false; 10797 run(); 10798 } 10799 10800 function attachMouseEvents() { 10801 if (swiper.params.autoplay.pauseOnMouseEnter) { 10802 swiper.$el.on('mouseenter', onMouseEnter); 10803 swiper.$el.on('mouseleave', onMouseLeave); 10804 } 10805 } 10806 10807 function detachMouseEvents() { 10808 swiper.$el.off('mouseenter', onMouseEnter); 10809 swiper.$el.off('mouseleave', onMouseLeave); 10810 } 10811 10812 on('init', () => { 10813 if (swiper.params.autoplay.enabled) { 10814 start(); 10815 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 10816 document.addEventListener('visibilitychange', onVisibilityChange); 10817 attachMouseEvents(); 10818 } 10819 }); 10820 on('beforeTransitionStart', (_s, speed, internal) => { 10821 if (swiper.autoplay.running) { 10822 if (internal || !swiper.params.autoplay.disableOnInteraction) { 10823 swiper.autoplay.pause(speed); 10824 } else { 10825 stop(); 10826 } 10827 } 10828 }); 10829 on('sliderFirstMove', () => { 10830 if (swiper.autoplay.running) { 10831 if (swiper.params.autoplay.disableOnInteraction) { 10832 stop(); 10833 } else { 10834 pause(); 10835 } 10836 } 10837 }); 10838 on('touchEnd', () => { 10839 if (swiper.params.cssMode && swiper.autoplay.paused && !swiper.params.autoplay.disableOnInteraction) { 10840 run(); 10841 } 10842 }); 10843 on('destroy', () => { 10844 detachMouseEvents(); 10845 10846 if (swiper.autoplay.running) { 10847 stop(); 10848 } 10849 10850 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 10851 document.removeEventListener('visibilitychange', onVisibilityChange); 10852 }); 10853 Object.assign(swiper.autoplay, { 10854 pause, 10855 run, 10856 start, 10857 stop 10858 }); 10859} 10860 10861/***/ }), 10862
vendor: 6,402 bytes, lines 10863-11068
10863/***/ "./node_modules/swiper/modules/controller/controller.js": 10864/*!**************************************************************!*\ 10865 !*** ./node_modules/swiper/modules/controller/controller.js ***! 10866 \**************************************************************/ 10867/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 10868 10869"use strict"; 10870__webpack_require__.r(__webpack_exports__); 10871/* harmony export */ __webpack_require__.d(__webpack_exports__, { 10872/* harmony export */ "default": () => (/* binding */ Controller) 10873/* harmony export */ }); 10874/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 10875/* eslint no-bitwise: ["error", { "allow": [">>"] }] */ 10876 10877function Controller({ 10878 swiper, 10879 extendParams, 10880 on 10881}) { 10882 extendParams({ 10883 controller: { 10884 control: undefined, 10885 inverse: false, 10886 by: 'slide' // or 'container' 10887 10888 } 10889 }); 10890 swiper.controller = { 10891 control: undefined 10892 }; 10893 10894 function LinearSpline(x, y) { 10895 const binarySearch = function search() { 10896 let maxIndex; 10897 let minIndex; 10898 let guess; 10899 return (array, val) => { 10900 minIndex = -1; 10901 maxIndex = array.length; 10902 10903 while (maxIndex - minIndex > 1) { 10904 guess = maxIndex + minIndex >> 1; 10905 10906 if (array[guess] <= val) { 10907 minIndex = guess; 10908 } else { 10909 maxIndex = guess; 10910 } 10911 } 10912 10913 return maxIndex; 10914 }; 10915 }(); 10916 10917 this.x = x; 10918 this.y = y; 10919 this.lastIndex = x.length - 1; // Given an x value (x2), return the expected y2 value: 10920 // (x1,y1) is the known point before given value, 10921 // (x3,y3) is the known point after given value. 10922 10923 let i1; 10924 let i3; 10925 10926 this.interpolate = function interpolate(x2) { 10927 if (!x2) return 0; // Get the indexes of x1 and x3 (the array indexes before and after given x2): 10928 10929 i3 = binarySearch(this.x, x2); 10930 i1 = i3 - 1; // We have our indexes i1 & i3, so we can calculate already: 10931 // y2 := ((x2âx1) à (y3ây1)) ÷ (x3âx1) + y1 10932 10933 return (x2 - this.x[i1]) * (this.y[i3] - this.y[i1]) / (this.x[i3] - this.x[i1]) + this.y[i1]; 10934 }; 10935 10936 return this; 10937 } // xxx: for now i will just save one spline function to to 10938 10939 10940 function getInterpolateFunction(c) { 10941 if (!swiper.controller.spline) { 10942 swiper.controller.spline = swiper.params.loop ? new LinearSpline(swiper.slidesGrid, c.slidesGrid) : new LinearSpline(swiper.snapGrid, c.snapGrid); 10943 } 10944 } 10945 10946 function setTranslate(_t, byController) { 10947 const controlled = swiper.controller.control; 10948 let multiplier; 10949 let controlledTranslate; 10950 const Swiper = swiper.constructor; 10951 10952 function setControlledTranslate(c) { 10953 // this will create an Interpolate function based on the snapGrids 10954 // x is the Grid of the scrolled scroller and y will be the controlled scroller 10955 // it makes sense to create this only once and recall it for the interpolation 10956 // the function does a lot of value caching for performance 10957 const translate = swiper.rtlTranslate ? -swiper.translate : swiper.translate; 10958 10959 if (swiper.params.controller.by === 'slide') { 10960 getInterpolateFunction(c); // i am not sure why the values have to be multiplicated this way, tried to invert the snapGrid 10961 // but it did not work out 10962 10963 controlledTranslate = -swiper.controller.spline.interpolate(-translate); 10964 } 10965 10966 if (!controlledTranslate || swiper.params.controller.by === 'container') { 10967 multiplier = (c.maxTranslate() - c.minTranslate()) / (swiper.maxTranslate() - swiper.minTranslate()); 10968 controlledTranslate = (translate - swiper.minTranslate()) * multiplier + c.minTranslate(); 10969 } 10970 10971 if (swiper.params.controller.inverse) { 10972 controlledTranslate = c.maxTranslate() - controlledTranslate; 10973 } 10974 10975 c.updateProgress(controlledTranslate); 10976 c.setTranslate(controlledTranslate, swiper); 10977 c.updateActiveIndex(); 10978 c.updateSlidesClasses(); 10979 } 10980 10981 if (Array.isArray(controlled)) { 10982 for (let i = 0; i < controlled.length; i += 1) { 10983 if (controlled[i] !== byController && controlled[i] instanceof Swiper) { 10984 setControlledTranslate(controlled[i]); 10985 } 10986 } 10987 } else if (controlled instanceof Swiper && byController !== controlled) { 10988 setControlledTranslate(controlled); 10989 } 10990 } 10991 10992 function setTransition(duration, byController) { 10993 const Swiper = swiper.constructor; 10994 const controlled = swiper.controller.control; 10995 let i; 10996 10997 function setControlledTransition(c) { 10998 c.setTransition(duration, swiper); 10999 11000 if (duration !== 0) { 11001 c.transitionStart(); 11002 11003 if (c.params.autoHeight) { 11004 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.nextTick)(() => { 11005 c.updateAutoHeight(); 11006 }); 11007 } 11008 11009 c.$wrapperEl.transitionEnd(() => { 11010 if (!controlled) return; 11011 11012 if (c.params.loop && swiper.params.controller.by === 'slide') { 11013 c.loopFix(); 11014 } 11015 11016 c.transitionEnd(); 11017 }); 11018 } 11019 } 11020 11021 if (Array.isArray(controlled)) { 11022 for (i = 0; i < controlled.length; i += 1) { 11023 if (controlled[i] !== byController && controlled[i] instanceof Swiper) { 11024 setControlledTransition(controlled[i]); 11025 } 11026 } 11027 } else if (controlled instanceof Swiper && byController !== controlled) { 11028 setControlledTransition(controlled); 11029 } 11030 } 11031 11032 function removeSpline() { 11033 if (!swiper.controller.control) return; 11034 11035 if (swiper.controller.spline) { 11036 swiper.controller.spline = undefined; 11037 delete swiper.controller.spline; 11038 } 11039 } 11040 11041 on('beforeInit', () => { 11042 swiper.controller.control = swiper.params.controller.control; 11043 }); 11044 on('update', () => { 11045 removeSpline(); 11046 }); 11047 on('resize', () => { 11048 removeSpline(); 11049 }); 11050 on('observerUpdate', () => { 11051 removeSpline(); 11052 }); 11053 on('setTranslate', (_s, translate, byController) => { 11054 if (!swiper.controller.control) return; 11055 swiper.controller.setTranslate(translate, byController); 11056 }); 11057 on('setTransition', (_s, duration, byController) => { 11058 if (!swiper.controller.control) return; 11059 swiper.controller.setTransition(duration, byController); 11060 }); 11061 Object.assign(swiper.controller, { 11062 setTranslate, 11063 setTransition 11064 }); 11065} 11066 11067/***/ }), 11068
vendor: 5,318 bytes, lines 11069-11211
11069/***/ "./node_modules/swiper/modules/effect-cards/effect-cards.js": 11070/*!******************************************************************!*\ 11071 !*** ./node_modules/swiper/modules/effect-cards/effect-cards.js ***! 11072 \******************************************************************/ 11073/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 11074 11075"use strict"; 11076__webpack_require__.r(__webpack_exports__); 11077/* harmony export */ __webpack_require__.d(__webpack_exports__, { 11078/* harmony export */ "default": () => (/* binding */ EffectCards) 11079/* harmony export */ }); 11080/* harmony import */ var _shared_create_shadow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/create-shadow.js */ "./node_modules/swiper/shared/create-shadow.js"); 11081/* harmony import */ var _shared_effect_init_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/effect-init.js */ "./node_modules/swiper/shared/effect-init.js"); 11082/* harmony import */ var _shared_effect_target_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/effect-target.js */ "./node_modules/swiper/shared/effect-target.js"); 11083/* harmony import */ var _shared_effect_virtual_transition_end_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../shared/effect-virtual-transition-end.js */ "./node_modules/swiper/shared/effect-virtual-transition-end.js"); 11084 11085 11086 11087 11088function EffectCards({ 11089 swiper, 11090 extendParams, 11091 on 11092}) { 11093 extendParams({ 11094 cardsEffect: { 11095 slideShadows: true, 11096 transformEl: null 11097 } 11098 }); 11099 11100 const setTranslate = () => { 11101 const { 11102 slides, 11103 activeIndex 11104 } = swiper; 11105 const params = swiper.params.cardsEffect; 11106 const { 11107 startTranslate, 11108 isTouched 11109 } = swiper.touchEventsData; 11110 const currentTranslate = swiper.translate; 11111 11112 for (let i = 0; i < slides.length; i += 1) { 11113 const $slideEl = slides.eq(i); 11114 const slideProgress = $slideEl[0].progress; 11115 const progress = Math.min(Math.max(slideProgress, -4), 4); 11116 let offset = $slideEl[0].swiperSlideOffset; 11117 11118 if (swiper.params.centeredSlides && !swiper.params.cssMode) { 11119 swiper.$wrapperEl.transform(`translateX(${swiper.minTranslate()}px)`); 11120 } 11121 11122 if (swiper.params.centeredSlides && swiper.params.cssMode) { 11123 offset -= slides[0].swiperSlideOffset; 11124 } 11125 11126 let tX = swiper.params.cssMode ? -offset - swiper.translate : -offset; 11127 let tY = 0; 11128 const tZ = -100 * Math.abs(progress); 11129 let scale = 1; 11130 let rotate = -2 * progress; 11131 let tXAdd = 8 - Math.abs(progress) * 0.75; 11132 const isSwipeToNext = (i === activeIndex || i === activeIndex - 1) && progress > 0 && progress < 1 && (isTouched || swiper.params.cssMode) && currentTranslate < startTranslate; 11133 const isSwipeToPrev = (i === activeIndex || i === activeIndex + 1) && progress < 0 && progress > -1 && (isTouched || swiper.params.cssMode) && currentTranslate > startTranslate; 11134 11135 if (isSwipeToNext || isSwipeToPrev) { 11136 const subProgress = (1 - Math.abs((Math.abs(progress) - 0.5) / 0.5)) ** 0.5; 11137 rotate += -28 * progress * subProgress; 11138 scale += -0.5 * subProgress; 11139 tXAdd += 96 * subProgress; 11140 tY = `${-25 * subProgress * Math.abs(progress)}%`; 11141 } 11142 11143 if (progress < 0) { 11144 // next 11145 tX = `calc(${tX}px + (${tXAdd * Math.abs(progress)}%))`; 11146 } else if (progress > 0) { 11147 // prev 11148 tX = `calc(${tX}px + (-${tXAdd * Math.abs(progress)}%))`; 11149 } else { 11150 tX = `${tX}px`; 11151 } 11152 11153 if (!swiper.isHorizontal()) { 11154 const prevY = tY; 11155 tY = tX; 11156 tX = prevY; 11157 } 11158 11159 const scaleString = progress < 0 ? `${1 + (1 - scale) * progress}` : `${1 - (1 - scale) * progress}`; 11160 const transform = ` 11161 translate3d(${tX}, ${tY}, ${tZ}px) 11162 rotateZ(${rotate}deg) 11163 scale(${scaleString}) 11164 `; 11165 11166 if (params.slideShadows) { 11167 // Set shadows 11168 let $shadowEl = $slideEl.find('.swiper-slide-shadow'); 11169 11170 if ($shadowEl.length === 0) { 11171 $shadowEl = (0,_shared_create_shadow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params, $slideEl); 11172 } 11173 11174 if ($shadowEl.length) $shadowEl[0].style.opacity = Math.min(Math.max((Math.abs(progress) - 0.5) / 0.5, 0), 1); 11175 } 11176 11177 $slideEl[0].style.zIndex = -Math.abs(Math.round(slideProgress)) + slides.length; 11178 const $targetEl = (0,_shared_effect_target_js__WEBPACK_IMPORTED_MODULE_2__["default"])(params, $slideEl); 11179 $targetEl.transform(transform); 11180 } 11181 }; 11182 11183 const setTransition = duration => { 11184 const { 11185 transformEl 11186 } = swiper.params.cardsEffect; 11187 const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides; 11188 $transitionElements.transition(duration).find('.swiper-slide-shadow').transition(duration); 11189 (0,_shared_effect_virtual_transition_end_js__WEBPACK_IMPORTED_MODULE_3__["default"])({ 11190 swiper, 11191 duration, 11192 transformEl 11193 }); 11194 }; 11195 11196 (0,_shared_effect_init_js__WEBPACK_IMPORTED_MODULE_1__["default"])({ 11197 effect: 'cards', 11198 swiper, 11199 on, 11200 setTranslate, 11201 setTransition, 11202 perspective: () => true, 11203 overwriteParams: () => ({ 11204 watchSlidesProgress: true, 11205 virtualTranslate: !swiper.params.cssMode 11206 }) 11207 }); 11208} 11209 11210/***/ }), 11211
vendor: 5,330 bytes, lines 11212-11331
11212/***/ "./node_modules/swiper/modules/effect-coverflow/effect-coverflow.js": 11213/*!**************************************************************************!*\ 11214 !*** ./node_modules/swiper/modules/effect-coverflow/effect-coverflow.js ***! 11215 \**************************************************************************/ 11216/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 11217 11218"use strict"; 11219__webpack_require__.r(__webpack_exports__); 11220/* harmony export */ __webpack_require__.d(__webpack_exports__, { 11221/* harmony export */ "default": () => (/* binding */ EffectCoverflow) 11222/* harmony export */ }); 11223/* harmony import */ var _shared_create_shadow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/create-shadow.js */ "./node_modules/swiper/shared/create-shadow.js"); 11224/* harmony import */ var _shared_effect_init_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/effect-init.js */ "./node_modules/swiper/shared/effect-init.js"); 11225/* harmony import */ var _shared_effect_target_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/effect-target.js */ "./node_modules/swiper/shared/effect-target.js"); 11226 11227 11228 11229function EffectCoverflow({ 11230 swiper, 11231 extendParams, 11232 on 11233}) { 11234 extendParams({ 11235 coverflowEffect: { 11236 rotate: 50, 11237 stretch: 0, 11238 depth: 100, 11239 scale: 1, 11240 modifier: 1, 11241 slideShadows: true, 11242 transformEl: null 11243 } 11244 }); 11245 11246 const setTranslate = () => { 11247 const { 11248 width: swiperWidth, 11249 height: swiperHeight, 11250 slides, 11251 slidesSizesGrid 11252 } = swiper; 11253 const params = swiper.params.coverflowEffect; 11254 const isHorizontal = swiper.isHorizontal(); 11255 const transform = swiper.translate; 11256 const center = isHorizontal ? -transform + swiperWidth / 2 : -transform + swiperHeight / 2; 11257 const rotate = isHorizontal ? params.rotate : -params.rotate; 11258 const translate = params.depth; // Each slide offset from center 11259 11260 for (let i = 0, length = slides.length; i < length; i += 1) { 11261 const $slideEl = slides.eq(i); 11262 const slideSize = slidesSizesGrid[i]; 11263 const slideOffset = $slideEl[0].swiperSlideOffset; 11264 const offsetMultiplier = (center - slideOffset - slideSize / 2) / slideSize * params.modifier; 11265 let rotateY = isHorizontal ? rotate * offsetMultiplier : 0; 11266 let rotateX = isHorizontal ? 0 : rotate * offsetMultiplier; // var rotateZ = 0 11267 11268 let translateZ = -translate * Math.abs(offsetMultiplier); 11269 let stretch = params.stretch; // Allow percentage to make a relative stretch for responsive sliders 11270 11271 if (typeof stretch === 'string' && stretch.indexOf('%') !== -1) { 11272 stretch = parseFloat(params.stretch) / 100 * slideSize; 11273 } 11274 11275 let translateY = isHorizontal ? 0 : stretch * offsetMultiplier; 11276 let translateX = isHorizontal ? stretch * offsetMultiplier : 0; 11277 let scale = 1 - (1 - params.scale) * Math.abs(offsetMultiplier); // Fix for ultra small values 11278 11279 if (Math.abs(translateX) < 0.001) translateX = 0; 11280 if (Math.abs(translateY) < 0.001) translateY = 0; 11281 if (Math.abs(translateZ) < 0.001) translateZ = 0; 11282 if (Math.abs(rotateY) < 0.001) rotateY = 0; 11283 if (Math.abs(rotateX) < 0.001) rotateX = 0; 11284 if (Math.abs(scale) < 0.001) scale = 0; 11285 const slideTransform = `translate3d(${translateX}px,${translateY}px,${translateZ}px) rotateX(${rotateX}deg) rotateY(${rotateY}deg) scale(${scale})`; 11286 const $targetEl = (0,_shared_effect_target_js__WEBPACK_IMPORTED_MODULE_2__["default"])(params, $slideEl); 11287 $targetEl.transform(slideTransform); 11288 $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1; 11289 11290 if (params.slideShadows) { 11291 // Set shadows 11292 let $shadowBeforeEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top'); 11293 let $shadowAfterEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom'); 11294 11295 if ($shadowBeforeEl.length === 0) { 11296 $shadowBeforeEl = (0,_shared_create_shadow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params, $slideEl, isHorizontal ? 'left' : 'top'); 11297 } 11298 11299 if ($shadowAfterEl.length === 0) { 11300 $shadowAfterEl = (0,_shared_create_shadow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params, $slideEl, isHorizontal ? 'right' : 'bottom'); 11301 } 11302 11303 if ($shadowBeforeEl.length) $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0; 11304 if ($shadowAfterEl.length) $shadowAfterEl[0].style.opacity = -offsetMultiplier > 0 ? -offsetMultiplier : 0; 11305 } 11306 } 11307 }; 11308 11309 const setTransition = duration => { 11310 const { 11311 transformEl 11312 } = swiper.params.coverflowEffect; 11313 const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides; 11314 $transitionElements.transition(duration).find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left').transition(duration); 11315 }; 11316 11317 (0,_shared_effect_init_js__WEBPACK_IMPORTED_MODULE_1__["default"])({ 11318 effect: 'coverflow', 11319 swiper, 11320 on, 11321 setTranslate, 11322 setTransition, 11323 perspective: () => true, 11324 overwriteParams: () => ({ 11325 watchSlidesProgress: true 11326 }) 11327 }); 11328} 11329 11330/***/ }), 11331
vendor: 6,169 bytes, lines 11332-11503
11332/***/ "./node_modules/swiper/modules/effect-creative/effect-creative.js": 11333/*!************************************************************************!*\ 11334 !*** ./node_modules/swiper/modules/effect-creative/effect-creative.js ***! 11335 \************************************************************************/ 11336/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 11337 11338"use strict"; 11339__webpack_require__.r(__webpack_exports__); 11340/* harmony export */ __webpack_require__.d(__webpack_exports__, { 11341/* harmony export */ "default": () => (/* binding */ EffectCreative) 11342/* harmony export */ }); 11343/* harmony import */ var _shared_create_shadow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/create-shadow.js */ "./node_modules/swiper/shared/create-shadow.js"); 11344/* harmony import */ var _shared_effect_init_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/effect-init.js */ "./node_modules/swiper/shared/effect-init.js"); 11345/* harmony import */ var _shared_effect_target_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/effect-target.js */ "./node_modules/swiper/shared/effect-target.js"); 11346/* harmony import */ var _shared_effect_virtual_transition_end_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../shared/effect-virtual-transition-end.js */ "./node_modules/swiper/shared/effect-virtual-transition-end.js"); 11347 11348 11349 11350 11351function EffectCreative({ 11352 swiper, 11353 extendParams, 11354 on 11355}) { 11356 extendParams({ 11357 creativeEffect: { 11358 transformEl: null, 11359 limitProgress: 1, 11360 shadowPerProgress: false, 11361 progressMultiplier: 1, 11362 perspective: true, 11363 prev: { 11364 translate: [0, 0, 0], 11365 rotate: [0, 0, 0], 11366 opacity: 1, 11367 scale: 1 11368 }, 11369 next: { 11370 translate: [0, 0, 0], 11371 rotate: [0, 0, 0], 11372 opacity: 1, 11373 scale: 1 11374 } 11375 } 11376 }); 11377 11378 const getTranslateValue = value => { 11379 if (typeof value === 'string') return value; 11380 return `${value}px`; 11381 }; 11382 11383 const setTranslate = () => { 11384 const { 11385 slides, 11386 $wrapperEl, 11387 slidesSizesGrid 11388 } = swiper; 11389 const params = swiper.params.creativeEffect; 11390 const { 11391 progressMultiplier: multiplier 11392 } = params; 11393 const isCenteredSlides = swiper.params.centeredSlides; 11394 11395 if (isCenteredSlides) { 11396 const margin = slidesSizesGrid[0] / 2 - swiper.params.slidesOffsetBefore || 0; 11397 $wrapperEl.transform(`translateX(calc(50% - ${margin}px))`); 11398 } 11399 11400 for (let i = 0; i < slides.length; i += 1) { 11401 const $slideEl = slides.eq(i); 11402 const slideProgress = $slideEl[0].progress; 11403 const progress = Math.min(Math.max($slideEl[0].progress, -params.limitProgress), params.limitProgress); 11404 let originalProgress = progress; 11405 11406 if (!isCenteredSlides) { 11407 originalProgress = Math.min(Math.max($slideEl[0].originalProgress, -params.limitProgress), params.limitProgress); 11408 } 11409 11410 const offset = $slideEl[0].swiperSlideOffset; 11411 const t = [swiper.params.cssMode ? -offset - swiper.translate : -offset, 0, 0]; 11412 const r = [0, 0, 0]; 11413 let custom = false; 11414 11415 if (!swiper.isHorizontal()) { 11416 t[1] = t[0]; 11417 t[0] = 0; 11418 } 11419 11420 let data = { 11421 translate: [0, 0, 0], 11422 rotate: [0, 0, 0], 11423 scale: 1, 11424 opacity: 1 11425 }; 11426 11427 if (progress < 0) { 11428 data = params.next; 11429 custom = true; 11430 } else if (progress > 0) { 11431 data = params.prev; 11432 custom = true; 11433 } // set translate 11434 11435 11436 t.forEach((value, index) => { 11437 t[index] = `calc(${value}px + (${getTranslateValue(data.translate[index])} * ${Math.abs(progress * multiplier)}))`; 11438 }); // set rotates 11439 11440 r.forEach((value, index) => { 11441 r[index] = data.rotate[index] * Math.abs(progress * multiplier); 11442 }); 11443 $slideEl[0].style.zIndex = -Math.abs(Math.round(slideProgress)) + slides.length; 11444 const translateString = t.join(', '); 11445 const rotateString = `rotateX(${r[0]}deg) rotateY(${r[1]}deg) rotateZ(${r[2]}deg)`; 11446 const scaleString = originalProgress < 0 ? `scale(${1 + (1 - data.scale) * originalProgress * multiplier})` : `scale(${1 - (1 - data.scale) * originalProgress * multiplier})`; 11447 const opacityString = originalProgress < 0 ? 1 + (1 - data.opacity) * originalProgress * multiplier : 1 - (1 - data.opacity) * originalProgress * multiplier; 11448 const transform = `translate3d(${translateString}) ${rotateString} ${scaleString}`; // Set shadows 11449 11450 if (custom && data.shadow || !custom) { 11451 let $shadowEl = $slideEl.children('.swiper-slide-shadow'); 11452 11453 if ($shadowEl.length === 0 && data.shadow) { 11454 $shadowEl = (0,_shared_create_shadow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params, $slideEl); 11455 } 11456 11457 if ($shadowEl.length) { 11458 const shadowOpacity = params.shadowPerProgress ? progress * (1 / params.limitProgress) : progress; 11459 $shadowEl[0].style.opacity = Math.min(Math.max(Math.abs(shadowOpacity), 0), 1); 11460 } 11461 } 11462 11463 const $targetEl = (0,_shared_effect_target_js__WEBPACK_IMPORTED_MODULE_2__["default"])(params, $slideEl); 11464 $targetEl.transform(transform).css({ 11465 opacity: opacityString 11466 }); 11467 11468 if (data.origin) { 11469 $targetEl.css('transform-origin', data.origin); 11470 } 11471 } 11472 }; 11473 11474 const setTransition = duration => { 11475 const { 11476 transformEl 11477 } = swiper.params.creativeEffect; 11478 const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides; 11479 $transitionElements.transition(duration).find('.swiper-slide-shadow').transition(duration); 11480 (0,_shared_effect_virtual_transition_end_js__WEBPACK_IMPORTED_MODULE_3__["default"])({ 11481 swiper, 11482 duration, 11483 transformEl, 11484 allSlides: true 11485 }); 11486 }; 11487 11488 (0,_shared_effect_init_js__WEBPACK_IMPORTED_MODULE_1__["default"])({ 11489 effect: 'creative', 11490 swiper, 11491 on, 11492 setTranslate, 11493 setTransition, 11494 perspective: () => swiper.params.creativeEffect.perspective, 11495 overwriteParams: () => ({ 11496 watchSlidesProgress: true, 11497 virtualTranslate: !swiper.params.cssMode 11498 }) 11499 }); 11500} 11501 11502/***/ }), 11503
vendor: 6,822 bytes, lines 11504-11699
11504/***/ "./node_modules/swiper/modules/effect-cube/effect-cube.js": 11505/*!****************************************************************!*\ 11506 !*** ./node_modules/swiper/modules/effect-cube/effect-cube.js ***! 11507 \****************************************************************/ 11508/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 11509 11510"use strict"; 11511__webpack_require__.r(__webpack_exports__); 11512/* harmony export */ __webpack_require__.d(__webpack_exports__, { 11513/* harmony export */ "default": () => (/* binding */ EffectCube) 11514/* harmony export */ }); 11515/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 11516/* harmony import */ var _shared_effect_init_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/effect-init.js */ "./node_modules/swiper/shared/effect-init.js"); 11517 11518 11519function EffectCube({ 11520 swiper, 11521 extendParams, 11522 on 11523}) { 11524 extendParams({ 11525 cubeEffect: { 11526 slideShadows: true, 11527 shadow: true, 11528 shadowOffset: 20, 11529 shadowScale: 0.94 11530 } 11531 }); 11532 11533 const setTranslate = () => { 11534 const { 11535 $el, 11536 $wrapperEl, 11537 slides, 11538 width: swiperWidth, 11539 height: swiperHeight, 11540 rtlTranslate: rtl, 11541 size: swiperSize, 11542 browser 11543 } = swiper; 11544 const params = swiper.params.cubeEffect; 11545 const isHorizontal = swiper.isHorizontal(); 11546 const isVirtual = swiper.virtual && swiper.params.virtual.enabled; 11547 let wrapperRotate = 0; 11548 let $cubeShadowEl; 11549 11550 if (params.shadow) { 11551 if (isHorizontal) { 11552 $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow'); 11553 11554 if ($cubeShadowEl.length === 0) { 11555 $cubeShadowEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])('<div class="swiper-cube-shadow"></div>'); 11556 $wrapperEl.append($cubeShadowEl); 11557 } 11558 11559 $cubeShadowEl.css({ 11560 height: `${swiperWidth}px` 11561 }); 11562 } else { 11563 $cubeShadowEl = $el.find('.swiper-cube-shadow'); 11564 11565 if ($cubeShadowEl.length === 0) { 11566 $cubeShadowEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])('<div class="swiper-cube-shadow"></div>'); 11567 $el.append($cubeShadowEl); 11568 } 11569 } 11570 } 11571 11572 for (let i = 0; i < slides.length; i += 1) { 11573 const $slideEl = slides.eq(i); 11574 let slideIndex = i; 11575 11576 if (isVirtual) { 11577 slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10); 11578 } 11579 11580 let slideAngle = slideIndex * 90; 11581 let round = Math.floor(slideAngle / 360); 11582 11583 if (rtl) { 11584 slideAngle = -slideAngle; 11585 round = Math.floor(-slideAngle / 360); 11586 } 11587 11588 const progress = Math.max(Math.min($slideEl[0].progress, 1), -1); 11589 let tx = 0; 11590 let ty = 0; 11591 let tz = 0; 11592 11593 if (slideIndex % 4 === 0) { 11594 tx = -round * 4 * swiperSize; 11595 tz = 0; 11596 } else if ((slideIndex - 1) % 4 === 0) { 11597 tx = 0; 11598 tz = -round * 4 * swiperSize; 11599 } else if ((slideIndex - 2) % 4 === 0) { 11600 tx = swiperSize + round * 4 * swiperSize; 11601 tz = swiperSize; 11602 } else if ((slideIndex - 3) % 4 === 0) { 11603 tx = -swiperSize; 11604 tz = 3 * swiperSize + swiperSize * 4 * round; 11605 } 11606 11607 if (rtl) { 11608 tx = -tx; 11609 } 11610 11611 if (!isHorizontal) { 11612 ty = tx; 11613 tx = 0; 11614 } 11615 11616 const transform = `rotateX(${isHorizontal ? 0 : -slideAngle}deg) rotateY(${isHorizontal ? slideAngle : 0}deg) translate3d(${tx}px, ${ty}px, ${tz}px)`; 11617 11618 if (progress <= 1 && progress > -1) { 11619 wrapperRotate = slideIndex * 90 + progress * 90; 11620 if (rtl) wrapperRotate = -slideIndex * 90 - progress * 90; 11621 } 11622 11623 $slideEl.transform(transform); 11624 11625 if (params.slideShadows) { 11626 // Set shadows 11627 let shadowBefore = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top'); 11628 let shadowAfter = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom'); 11629 11630 if (shadowBefore.length === 0) { 11631 shadowBefore = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(`<div class="swiper-slide-shadow-${isHorizontal ? 'left' : 'top'}"></div>`); 11632 $slideEl.append(shadowBefore); 11633 } 11634 11635 if (shadowAfter.length === 0) { 11636 shadowAfter = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(`<div class="swiper-slide-shadow-${isHorizontal ? 'right' : 'bottom'}"></div>`); 11637 $slideEl.append(shadowAfter); 11638 } 11639 11640 if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0); 11641 if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0); 11642 } 11643 } 11644 11645 $wrapperEl.css({ 11646 '-webkit-transform-origin': `50% 50% -${swiperSize / 2}px`, 11647 'transform-origin': `50% 50% -${swiperSize / 2}px` 11648 }); 11649 11650 if (params.shadow) { 11651 if (isHorizontal) { 11652 $cubeShadowEl.transform(`translate3d(0px, ${swiperWidth / 2 + params.shadowOffset}px, ${-swiperWidth / 2}px) rotateX(90deg) rotateZ(0deg) scale(${params.shadowScale})`); 11653 } else { 11654 const shadowAngle = Math.abs(wrapperRotate) - Math.floor(Math.abs(wrapperRotate) / 90) * 90; 11655 const multiplier = 1.5 - (Math.sin(shadowAngle * 2 * Math.PI / 360) / 2 + Math.cos(shadowAngle * 2 * Math.PI / 360) / 2); 11656 const scale1 = params.shadowScale; 11657 const scale2 = params.shadowScale / multiplier; 11658 const offset = params.shadowOffset; 11659 $cubeShadowEl.transform(`scale3d(${scale1}, 1, ${scale2}) translate3d(0px, ${swiperHeight / 2 + offset}px, ${-swiperHeight / 2 / scale2}px) rotateX(-90deg)`); 11660 } 11661 } 11662 11663 const zFactor = browser.isSafari || browser.isWebView ? -swiperSize / 2 : 0; 11664 $wrapperEl.transform(`translate3d(0px,0,${zFactor}px) rotateX(${swiper.isHorizontal() ? 0 : wrapperRotate}deg) rotateY(${swiper.isHorizontal() ? -wrapperRotate : 0}deg)`); 11665 }; 11666 11667 const setTransition = duration => { 11668 const { 11669 $el, 11670 slides 11671 } = swiper; 11672 slides.transition(duration).find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left').transition(duration); 11673 11674 if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) { 11675 $el.find('.swiper-cube-shadow').transition(duration); 11676 } 11677 }; 11678 11679 (0,_shared_effect_init_js__WEBPACK_IMPORTED_MODULE_1__["default"])({ 11680 effect: 'cube', 11681 swiper, 11682 on, 11683 setTranslate, 11684 setTransition, 11685 perspective: () => true, 11686 overwriteParams: () => ({ 11687 slidesPerView: 1, 11688 slidesPerGroup: 1, 11689 watchSlidesProgress: true, 11690 resistanceRatio: 0, 11691 spaceBetween: 0, 11692 centeredSlides: false, 11693 virtualTranslate: true 11694 }) 11695 }); 11696} 11697 11698/***/ }), 11699
vendor: 2,975 bytes, lines 11700-11786
11700/***/ "./node_modules/swiper/modules/effect-fade/effect-fade.js": 11701/*!****************************************************************!*\ 11702 !*** ./node_modules/swiper/modules/effect-fade/effect-fade.js ***! 11703 \****************************************************************/ 11704/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 11705 11706"use strict"; 11707__webpack_require__.r(__webpack_exports__); 11708/* harmony export */ __webpack_require__.d(__webpack_exports__, { 11709/* harmony export */ "default": () => (/* binding */ EffectFade) 11710/* harmony export */ }); 11711/* harmony import */ var _shared_effect_init_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/effect-init.js */ "./node_modules/swiper/shared/effect-init.js"); 11712/* harmony import */ var _shared_effect_target_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/effect-target.js */ "./node_modules/swiper/shared/effect-target.js"); 11713/* harmony import */ var _shared_effect_virtual_transition_end_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/effect-virtual-transition-end.js */ "./node_modules/swiper/shared/effect-virtual-transition-end.js"); 11714 11715 11716 11717function EffectFade({ 11718 swiper, 11719 extendParams, 11720 on 11721}) { 11722 extendParams({ 11723 fadeEffect: { 11724 crossFade: false, 11725 transformEl: null 11726 } 11727 }); 11728 11729 const setTranslate = () => { 11730 const { 11731 slides 11732 } = swiper; 11733 const params = swiper.params.fadeEffect; 11734 11735 for (let i = 0; i < slides.length; i += 1) { 11736 const $slideEl = swiper.slides.eq(i); 11737 const offset = $slideEl[0].swiperSlideOffset; 11738 let tx = -offset; 11739 if (!swiper.params.virtualTranslate) tx -= swiper.translate; 11740 let ty = 0; 11741 11742 if (!swiper.isHorizontal()) { 11743 ty = tx; 11744 tx = 0; 11745 } 11746 11747 const slideOpacity = swiper.params.fadeEffect.crossFade ? Math.max(1 - Math.abs($slideEl[0].progress), 0) : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0); 11748 const $targetEl = (0,_shared_effect_target_js__WEBPACK_IMPORTED_MODULE_1__["default"])(params, $slideEl); 11749 $targetEl.css({ 11750 opacity: slideOpacity 11751 }).transform(`translate3d(${tx}px, ${ty}px, 0px)`); 11752 } 11753 }; 11754 11755 const setTransition = duration => { 11756 const { 11757 transformEl 11758 } = swiper.params.fadeEffect; 11759 const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides; 11760 $transitionElements.transition(duration); 11761 (0,_shared_effect_virtual_transition_end_js__WEBPACK_IMPORTED_MODULE_2__["default"])({ 11762 swiper, 11763 duration, 11764 transformEl, 11765 allSlides: true 11766 }); 11767 }; 11768 11769 (0,_shared_effect_init_js__WEBPACK_IMPORTED_MODULE_0__["default"])({ 11770 effect: 'fade', 11771 swiper, 11772 on, 11773 setTranslate, 11774 setTransition, 11775 overwriteParams: () => ({ 11776 slidesPerView: 1, 11777 slidesPerGroup: 1, 11778 watchSlidesProgress: true, 11779 spaceBetween: 0, 11780 virtualTranslate: !swiper.params.cssMode 11781 }) 11782 }); 11783} 11784 11785/***/ }), 11786
vendor: 4,590 bytes, lines 11787-11906
11787/***/ "./node_modules/swiper/modules/effect-flip/effect-flip.js": 11788/*!****************************************************************!*\ 11789 !*** ./node_modules/swiper/modules/effect-flip/effect-flip.js ***! 11790 \****************************************************************/ 11791/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 11792 11793"use strict"; 11794__webpack_require__.r(__webpack_exports__); 11795/* harmony export */ __webpack_require__.d(__webpack_exports__, { 11796/* harmony export */ "default": () => (/* binding */ EffectFlip) 11797/* harmony export */ }); 11798/* harmony import */ var _shared_create_shadow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/create-shadow.js */ "./node_modules/swiper/shared/create-shadow.js"); 11799/* harmony import */ var _shared_effect_init_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/effect-init.js */ "./node_modules/swiper/shared/effect-init.js"); 11800/* harmony import */ var _shared_effect_target_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/effect-target.js */ "./node_modules/swiper/shared/effect-target.js"); 11801/* harmony import */ var _shared_effect_virtual_transition_end_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../shared/effect-virtual-transition-end.js */ "./node_modules/swiper/shared/effect-virtual-transition-end.js"); 11802 11803 11804 11805 11806function EffectFlip({ 11807 swiper, 11808 extendParams, 11809 on 11810}) { 11811 extendParams({ 11812 flipEffect: { 11813 slideShadows: true, 11814 limitRotation: true, 11815 transformEl: null 11816 } 11817 }); 11818 11819 const setTranslate = () => { 11820 const { 11821 slides, 11822 rtlTranslate: rtl 11823 } = swiper; 11824 const params = swiper.params.flipEffect; 11825 11826 for (let i = 0; i < slides.length; i += 1) { 11827 const $slideEl = slides.eq(i); 11828 let progress = $slideEl[0].progress; 11829 11830 if (swiper.params.flipEffect.limitRotation) { 11831 progress = Math.max(Math.min($slideEl[0].progress, 1), -1); 11832 } 11833 11834 const offset = $slideEl[0].swiperSlideOffset; 11835 const rotate = -180 * progress; 11836 let rotateY = rotate; 11837 let rotateX = 0; 11838 let tx = swiper.params.cssMode ? -offset - swiper.translate : -offset; 11839 let ty = 0; 11840 11841 if (!swiper.isHorizontal()) { 11842 ty = tx; 11843 tx = 0; 11844 rotateX = -rotateY; 11845 rotateY = 0; 11846 } else if (rtl) { 11847 rotateY = -rotateY; 11848 } 11849 11850 $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length; 11851 11852 if (params.slideShadows) { 11853 // Set shadows 11854 let shadowBefore = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top'); 11855 let shadowAfter = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom'); 11856 11857 if (shadowBefore.length === 0) { 11858 shadowBefore = (0,_shared_create_shadow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params, $slideEl, swiper.isHorizontal() ? 'left' : 'top'); 11859 } 11860 11861 if (shadowAfter.length === 0) { 11862 shadowAfter = (0,_shared_create_shadow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params, $slideEl, swiper.isHorizontal() ? 'right' : 'bottom'); 11863 } 11864 11865 if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0); 11866 if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0); 11867 } 11868 11869 const transform = `translate3d(${tx}px, ${ty}px, 0px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`; 11870 const $targetEl = (0,_shared_effect_target_js__WEBPACK_IMPORTED_MODULE_2__["default"])(params, $slideEl); 11871 $targetEl.transform(transform); 11872 } 11873 }; 11874 11875 const setTransition = duration => { 11876 const { 11877 transformEl 11878 } = swiper.params.flipEffect; 11879 const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides; 11880 $transitionElements.transition(duration).find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left').transition(duration); 11881 (0,_shared_effect_virtual_transition_end_js__WEBPACK_IMPORTED_MODULE_3__["default"])({ 11882 swiper, 11883 duration, 11884 transformEl 11885 }); 11886 }; 11887 11888 (0,_shared_effect_init_js__WEBPACK_IMPORTED_MODULE_1__["default"])({ 11889 effect: 'flip', 11890 swiper, 11891 on, 11892 setTranslate, 11893 setTransition, 11894 perspective: () => true, 11895 overwriteParams: () => ({ 11896 slidesPerView: 1, 11897 slidesPerGroup: 1, 11898 watchSlidesProgress: true, 11899 spaceBetween: 0, 11900 virtualTranslate: !swiper.params.cssMode 11901 }) 11902 }); 11903} 11904 11905/***/ }), 11906
vendor: 8,637 bytes, lines 11907-12166
11907/***/ "./node_modules/swiper/modules/free-mode/free-mode.js": 11908/*!************************************************************!*\ 11909 !*** ./node_modules/swiper/modules/free-mode/free-mode.js ***! 11910 \************************************************************/ 11911/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 11912 11913"use strict"; 11914__webpack_require__.r(__webpack_exports__); 11915/* harmony export */ __webpack_require__.d(__webpack_exports__, { 11916/* harmony export */ "default": () => (/* binding */ freeMode) 11917/* harmony export */ }); 11918/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 11919 11920function freeMode({ 11921 swiper, 11922 extendParams, 11923 emit, 11924 once 11925}) { 11926 extendParams({ 11927 freeMode: { 11928 enabled: false, 11929 momentum: true, 11930 momentumRatio: 1, 11931 momentumBounce: true, 11932 momentumBounceRatio: 1, 11933 momentumVelocityRatio: 1, 11934 sticky: false, 11935 minimumVelocity: 0.02 11936 } 11937 }); 11938 11939 function onTouchMove() { 11940 const { 11941 touchEventsData: data, 11942 touches 11943 } = swiper; // Velocity 11944 11945 if (data.velocities.length === 0) { 11946 data.velocities.push({ 11947 position: touches[swiper.isHorizontal() ? 'startX' : 'startY'], 11948 time: data.touchStartTime 11949 }); 11950 } 11951 11952 data.velocities.push({ 11953 position: touches[swiper.isHorizontal() ? 'currentX' : 'currentY'], 11954 time: (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.now)() 11955 }); 11956 } 11957 11958 function onTouchEnd({ 11959 currentPos 11960 }) { 11961 const { 11962 params, 11963 $wrapperEl, 11964 rtlTranslate: rtl, 11965 snapGrid, 11966 touchEventsData: data 11967 } = swiper; // Time diff 11968 11969 const touchEndTime = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.now)(); 11970 const timeDiff = touchEndTime - data.touchStartTime; 11971 11972 if (currentPos < -swiper.minTranslate()) { 11973 swiper.slideTo(swiper.activeIndex); 11974 return; 11975 } 11976 11977 if (currentPos > -swiper.maxTranslate()) { 11978 if (swiper.slides.length < snapGrid.length) { 11979 swiper.slideTo(snapGrid.length - 1); 11980 } else { 11981 swiper.slideTo(swiper.slides.length - 1); 11982 } 11983 11984 return; 11985 } 11986 11987 if (params.freeMode.momentum) { 11988 if (data.velocities.length > 1) { 11989 const lastMoveEvent = data.velocities.pop(); 11990 const velocityEvent = data.velocities.pop(); 11991 const distance = lastMoveEvent.position - velocityEvent.position; 11992 const time = lastMoveEvent.time - velocityEvent.time; 11993 swiper.velocity = distance / time; 11994 swiper.velocity /= 2; 11995 11996 if (Math.abs(swiper.velocity) < params.freeMode.minimumVelocity) { 11997 swiper.velocity = 0; 11998 } // this implies that the user stopped moving a finger then released. 11999 // There would be no events with distance zero, so the last event is stale. 12000 12001 12002 if (time > 150 || (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.now)() - lastMoveEvent.time > 300) { 12003 swiper.velocity = 0; 12004 } 12005 } else { 12006 swiper.velocity = 0; 12007 } 12008 12009 swiper.velocity *= params.freeMode.momentumVelocityRatio; 12010 data.velocities.length = 0; 12011 let momentumDuration = 1000 * params.freeMode.momentumRatio; 12012 const momentumDistance = swiper.velocity * momentumDuration; 12013 let newPosition = swiper.translate + momentumDistance; 12014 if (rtl) newPosition = -newPosition; 12015 let doBounce = false; 12016 let afterBouncePosition; 12017 const bounceAmount = Math.abs(swiper.velocity) * 20 * params.freeMode.momentumBounceRatio; 12018 let needsLoopFix; 12019 12020 if (newPosition < swiper.maxTranslate()) { 12021 if (params.freeMode.momentumBounce) { 12022 if (newPosition + swiper.maxTranslate() < -bounceAmount) { 12023 newPosition = swiper.maxTranslate() - bounceAmount; 12024 } 12025 12026 afterBouncePosition = swiper.maxTranslate(); 12027 doBounce = true; 12028 data.allowMomentumBounce = true; 12029 } else { 12030 newPosition = swiper.maxTranslate(); 12031 } 12032 12033 if (params.loop && params.centeredSlides) needsLoopFix = true; 12034 } else if (newPosition > swiper.minTranslate()) { 12035 if (params.freeMode.momentumBounce) { 12036 if (newPosition - swiper.minTranslate() > bounceAmount) { 12037 newPosition = swiper.minTranslate() + bounceAmount; 12038 } 12039 12040 afterBouncePosition = swiper.minTranslate(); 12041 doBounce = true; 12042 data.allowMomentumBounce = true; 12043 } else { 12044 newPosition = swiper.minTranslate(); 12045 } 12046 12047 if (params.loop && params.centeredSlides) needsLoopFix = true; 12048 } else if (params.freeMode.sticky) { 12049 let nextSlide; 12050 12051 for (let j = 0; j < snapGrid.length; j += 1) { 12052 if (snapGrid[j] > -newPosition) { 12053 nextSlide = j; 12054 break; 12055 } 12056 } 12057 12058 if (Math.abs(snapGrid[nextSlide] - newPosition) < Math.abs(snapGrid[nextSlide - 1] - newPosition) || swiper.swipeDirection === 'next') { 12059 newPosition = snapGrid[nextSlide]; 12060 } else { 12061 newPosition = snapGrid[nextSlide - 1]; 12062 } 12063 12064 newPosition = -newPosition; 12065 } 12066 12067 if (needsLoopFix) { 12068 once('transitionEnd', () => { 12069 swiper.loopFix(); 12070 }); 12071 } // Fix duration 12072 12073 12074 if (swiper.velocity !== 0) { 12075 if (rtl) { 12076 momentumDuration = Math.abs((-newPosition - swiper.translate) / swiper.velocity); 12077 } else { 12078 momentumDuration = Math.abs((newPosition - swiper.translate) / swiper.velocity); 12079 } 12080 12081 if (params.freeMode.sticky) { 12082 // If freeMode.sticky is active and the user ends a swipe with a slow-velocity 12083 // event, then durations can be 20+ seconds to slide one (or zero!) slides. 12084 // It's easy to see this when simulating touch with mouse events. To fix this, 12085 // limit single-slide swipes to the default slide duration. This also has the 12086 // nice side effect of matching slide speed if the user stopped moving before 12087 // lifting finger or mouse vs. moving slowly before lifting the finger/mouse. 12088 // For faster swipes, also apply limits (albeit higher ones). 12089 const moveDistance = Math.abs((rtl ? -newPosition : newPosition) - swiper.translate); 12090 const currentSlideSize = swiper.slidesSizesGrid[swiper.activeIndex]; 12091 12092 if (moveDistance < currentSlideSize) { 12093 momentumDuration = params.speed; 12094 } else if (moveDistance < 2 * currentSlideSize) { 12095 momentumDuration = params.speed * 1.5; 12096 } else { 12097 momentumDuration = params.speed * 2.5; 12098 } 12099 } 12100 } else if (params.freeMode.sticky) { 12101 swiper.slideToClosest(); 12102 return; 12103 } 12104 12105 if (params.freeMode.momentumBounce && doBounce) { 12106 swiper.updateProgress(afterBouncePosition); 12107 swiper.setTransition(momentumDuration); 12108 swiper.setTranslate(newPosition); 12109 swiper.transitionStart(true, swiper.swipeDirection); 12110 swiper.animating = true; 12111 $wrapperEl.transitionEnd(() => { 12112 if (!swiper || swiper.destroyed || !data.allowMomentumBounce) return; 12113 emit('momentumBounce'); 12114 swiper.setTransition(params.speed); 12115 setTimeout(() => { 12116 swiper.setTranslate(afterBouncePosition); 12117 $wrapperEl.transitionEnd(() => { 12118 if (!swiper || swiper.destroyed) return; 12119 swiper.transitionEnd(); 12120 }); 12121 }, 0); 12122 }); 12123 } else if (swiper.velocity) { 12124 emit('_freeModeNoMomentumRelease'); 12125 swiper.updateProgress(newPosition); 12126 swiper.setTransition(momentumDuration); 12127 swiper.setTranslate(newPosition); 12128 swiper.transitionStart(true, swiper.swipeDirection); 12129 12130 if (!swiper.animating) { 12131 swiper.animating = true; 12132 $wrapperEl.transitionEnd(() => { 12133 if (!swiper || swiper.destroyed) return; 12134 swiper.transitionEnd(); 12135 }); 12136 } 12137 } else { 12138 swiper.updateProgress(newPosition); 12139 } 12140 12141 swiper.updateActiveIndex(); 12142 swiper.updateSlidesClasses(); 12143 } else if (params.freeMode.sticky) { 12144 swiper.slideToClosest(); 12145 return; 12146 } else if (params.freeMode) { 12147 emit('_freeModeNoMomentumRelease'); 12148 } 12149 12150 if (!params.freeMode.momentum || timeDiff >= params.longSwipesMs) { 12151 swiper.updateProgress(); 12152 swiper.updateActiveIndex(); 12153 swiper.updateSlidesClasses(); 12154 } 12155 } 12156 12157 Object.assign(swiper, { 12158 freeMode: { 12159 onTouchMove, 12160 onTouchEnd 12161 } 12162 }); 12163} 12164 12165/***/ }), 12166
vendor: 3,812 bytes, lines 12167-12296
12167/***/ "./node_modules/swiper/modules/grid/grid.js": 12168/*!**************************************************!*\ 12169 !*** ./node_modules/swiper/modules/grid/grid.js ***! 12170 \**************************************************/ 12171/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 12172 12173"use strict"; 12174__webpack_require__.r(__webpack_exports__); 12175/* harmony export */ __webpack_require__.d(__webpack_exports__, { 12176/* harmony export */ "default": () => (/* binding */ Grid) 12177/* harmony export */ }); 12178function Grid({ 12179 swiper, 12180 extendParams 12181}) { 12182 extendParams({ 12183 grid: { 12184 rows: 1, 12185 fill: 'column' 12186 } 12187 }); 12188 let slidesNumberEvenToRows; 12189 let slidesPerRow; 12190 let numFullColumns; 12191 12192 const initSlides = slidesLength => { 12193 const { 12194 slidesPerView 12195 } = swiper.params; 12196 const { 12197 rows, 12198 fill 12199 } = swiper.params.grid; 12200 slidesPerRow = slidesNumberEvenToRows / rows; 12201 numFullColumns = Math.floor(slidesLength / rows); 12202 12203 if (Math.floor(slidesLength / rows) === slidesLength / rows) { 12204 slidesNumberEvenToRows = slidesLength; 12205 } else { 12206 slidesNumberEvenToRows = Math.ceil(slidesLength / rows) * rows; 12207 } 12208 12209 if (slidesPerView !== 'auto' && fill === 'row') { 12210 slidesNumberEvenToRows = Math.max(slidesNumberEvenToRows, slidesPerView * rows); 12211 } 12212 }; 12213 12214 const updateSlide = (i, slide, slidesLength, getDirectionLabel) => { 12215 const { 12216 slidesPerGroup, 12217 spaceBetween 12218 } = swiper.params; 12219 const { 12220 rows, 12221 fill 12222 } = swiper.params.grid; // Set slides order 12223 12224 let newSlideOrderIndex; 12225 let column; 12226 let row; 12227 12228 if (fill === 'row' && slidesPerGroup > 1) { 12229 const groupIndex = Math.floor(i / (slidesPerGroup * rows)); 12230 const slideIndexInGroup = i - rows * slidesPerGroup * groupIndex; 12231 const columnsInGroup = groupIndex === 0 ? slidesPerGroup : Math.min(Math.ceil((slidesLength - groupIndex * rows * slidesPerGroup) / rows), slidesPerGroup); 12232 row = Math.floor(slideIndexInGroup / columnsInGroup); 12233 column = slideIndexInGroup - row * columnsInGroup + groupIndex * slidesPerGroup; 12234 newSlideOrderIndex = column + row * slidesNumberEvenToRows / rows; 12235 slide.css({ 12236 '-webkit-order': newSlideOrderIndex, 12237 order: newSlideOrderIndex 12238 }); 12239 } else if (fill === 'column') { 12240 column = Math.floor(i / rows); 12241 row = i - column * rows; 12242 12243 if (column > numFullColumns || column === numFullColumns && row === rows - 1) { 12244 row += 1; 12245 12246 if (row >= rows) { 12247 row = 0; 12248 column += 1; 12249 } 12250 } 12251 } else { 12252 row = Math.floor(i / slidesPerRow); 12253 column = i - row * slidesPerRow; 12254 } 12255 12256 slide.css(getDirectionLabel('margin-top'), row !== 0 ? spaceBetween && `${spaceBetween}px` : ''); 12257 }; 12258 12259 const updateWrapperSize = (slideSize, snapGrid, getDirectionLabel) => { 12260 const { 12261 spaceBetween, 12262 centeredSlides, 12263 roundLengths 12264 } = swiper.params; 12265 const { 12266 rows 12267 } = swiper.params.grid; 12268 swiper.virtualSize = (slideSize + spaceBetween) * slidesNumberEvenToRows; 12269 swiper.virtualSize = Math.ceil(swiper.virtualSize / rows) - spaceBetween; 12270 swiper.$wrapperEl.css({ 12271 [getDirectionLabel('width')]: `${swiper.virtualSize + spaceBetween}px` 12272 }); 12273 12274 if (centeredSlides) { 12275 snapGrid.splice(0, snapGrid.length); 12276 const newSlidesGrid = []; 12277 12278 for (let i = 0; i < snapGrid.length; i += 1) { 12279 let slidesGridItem = snapGrid[i]; 12280 if (roundLengths) slidesGridItem = Math.floor(slidesGridItem); 12281 if (snapGrid[i] < swiper.virtualSize + snapGrid[0]) newSlidesGrid.push(slidesGridItem); 12282 } 12283 12284 snapGrid.push(...newSlidesGrid); 12285 } 12286 }; 12287 12288 swiper.grid = { 12289 initSlides, 12290 updateSlide, 12291 updateWrapperSize 12292 }; 12293} 12294 12295/***/ }), 12296
vendor: 3,796 bytes, lines 12297-12408
12297/***/ "./node_modules/swiper/modules/hash-navigation/hash-navigation.js": 12298/*!************************************************************************!*\ 12299 !*** ./node_modules/swiper/modules/hash-navigation/hash-navigation.js ***! 12300 \************************************************************************/ 12301/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 12302 12303"use strict"; 12304__webpack_require__.r(__webpack_exports__); 12305/* harmony export */ __webpack_require__.d(__webpack_exports__, { 12306/* harmony export */ "default": () => (/* binding */ HashNavigation) 12307/* harmony export */ }); 12308/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 12309/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 12310 12311 12312function HashNavigation({ 12313 swiper, 12314 extendParams, 12315 emit, 12316 on 12317}) { 12318 let initialized = false; 12319 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 12320 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 12321 extendParams({ 12322 hashNavigation: { 12323 enabled: false, 12324 replaceState: false, 12325 watchState: false 12326 } 12327 }); 12328 12329 const onHashChange = () => { 12330 emit('hashChange'); 12331 const newHash = document.location.hash.replace('#', ''); 12332 const activeSlideHash = swiper.slides.eq(swiper.activeIndex).attr('data-hash'); 12333 12334 if (newHash !== activeSlideHash) { 12335 const newIndex = swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-hash="${newHash}"]`).index(); 12336 if (typeof newIndex === 'undefined') return; 12337 swiper.slideTo(newIndex); 12338 } 12339 }; 12340 12341 const setHash = () => { 12342 if (!initialized || !swiper.params.hashNavigation.enabled) return; 12343 12344 if (swiper.params.hashNavigation.replaceState && window.history && window.history.replaceState) { 12345 window.history.replaceState(null, null, `#${swiper.slides.eq(swiper.activeIndex).attr('data-hash')}` || ''); 12346 emit('hashSet'); 12347 } else { 12348 const slide = swiper.slides.eq(swiper.activeIndex); 12349 const hash = slide.attr('data-hash') || slide.attr('data-history'); 12350 document.location.hash = hash || ''; 12351 emit('hashSet'); 12352 } 12353 }; 12354 12355 const init = () => { 12356 if (!swiper.params.hashNavigation.enabled || swiper.params.history && swiper.params.history.enabled) return; 12357 initialized = true; 12358 const hash = document.location.hash.replace('#', ''); 12359 12360 if (hash) { 12361 const speed = 0; 12362 12363 for (let i = 0, length = swiper.slides.length; i < length; i += 1) { 12364 const slide = swiper.slides.eq(i); 12365 const slideHash = slide.attr('data-hash') || slide.attr('data-history'); 12366 12367 if (slideHash === hash && !slide.hasClass(swiper.params.slideDuplicateClass)) { 12368 const index = slide.index(); 12369 swiper.slideTo(index, speed, swiper.params.runCallbacksOnInit, true); 12370 } 12371 } 12372 } 12373 12374 if (swiper.params.hashNavigation.watchState) { 12375 (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(window).on('hashchange', onHashChange); 12376 } 12377 }; 12378 12379 const destroy = () => { 12380 if (swiper.params.hashNavigation.watchState) { 12381 (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(window).off('hashchange', onHashChange); 12382 } 12383 }; 12384 12385 on('init', () => { 12386 if (swiper.params.hashNavigation.enabled) { 12387 init(); 12388 } 12389 }); 12390 on('destroy', () => { 12391 if (swiper.params.hashNavigation.enabled) { 12392 destroy(); 12393 } 12394 }); 12395 on('transitionEnd _freeModeNoMomentumRelease', () => { 12396 if (initialized) { 12397 setHash(); 12398 } 12399 }); 12400 on('slideChange', () => { 12401 if (initialized && swiper.params.cssMode) { 12402 setHash(); 12403 } 12404 }); 12405} 12406 12407/***/ }), 12408
vendor: 4,714 bytes, lines 12409-12573
12409/***/ "./node_modules/swiper/modules/history/history.js": 12410/*!********************************************************!*\ 12411 !*** ./node_modules/swiper/modules/history/history.js ***! 12412 \********************************************************/ 12413/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 12414 12415"use strict"; 12416__webpack_require__.r(__webpack_exports__); 12417/* harmony export */ __webpack_require__.d(__webpack_exports__, { 12418/* harmony export */ "default": () => (/* binding */ History) 12419/* harmony export */ }); 12420/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 12421 12422function History({ 12423 swiper, 12424 extendParams, 12425 on 12426}) { 12427 extendParams({ 12428 history: { 12429 enabled: false, 12430 root: '', 12431 replaceState: false, 12432 key: 'slides' 12433 } 12434 }); 12435 let initialized = false; 12436 let paths = {}; 12437 12438 const slugify = text => { 12439 return text.toString().replace(/\s+/g, '-').replace(/[^\w-]+/g, '').replace(/--+/g, '-').replace(/^-+/, '').replace(/-+$/, ''); 12440 }; 12441 12442 const getPathValues = urlOverride => { 12443 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 12444 let location; 12445 12446 if (urlOverride) { 12447 location = new URL(urlOverride); 12448 } else { 12449 location = window.location; 12450 } 12451 12452 const pathArray = location.pathname.slice(1).split('/').filter(part => part !== ''); 12453 const total = pathArray.length; 12454 const key = pathArray[total - 2]; 12455 const value = pathArray[total - 1]; 12456 return { 12457 key, 12458 value 12459 }; 12460 }; 12461 12462 const setHistory = (key, index) => { 12463 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 12464 if (!initialized || !swiper.params.history.enabled) return; 12465 let location; 12466 12467 if (swiper.params.url) { 12468 location = new URL(swiper.params.url); 12469 } else { 12470 location = window.location; 12471 } 12472 12473 const slide = swiper.slides.eq(index); 12474 let value = slugify(slide.attr('data-history')); 12475 12476 if (swiper.params.history.root.length > 0) { 12477 let root = swiper.params.history.root; 12478 if (root[root.length - 1] === '/') root = root.slice(0, root.length - 1); 12479 value = `${root}/${key}/${value}`; 12480 } else if (!location.pathname.includes(key)) { 12481 value = `${key}/${value}`; 12482 } 12483 12484 const currentState = window.history.state; 12485 12486 if (currentState && currentState.value === value) { 12487 return; 12488 } 12489 12490 if (swiper.params.history.replaceState) { 12491 window.history.replaceState({ 12492 value 12493 }, null, value); 12494 } else { 12495 window.history.pushState({ 12496 value 12497 }, null, value); 12498 } 12499 }; 12500 12501 const scrollToSlide = (speed, value, runCallbacks) => { 12502 if (value) { 12503 for (let i = 0, length = swiper.slides.length; i < length; i += 1) { 12504 const slide = swiper.slides.eq(i); 12505 const slideHistory = slugify(slide.attr('data-history')); 12506 12507 if (slideHistory === value && !slide.hasClass(swiper.params.slideDuplicateClass)) { 12508 const index = slide.index(); 12509 swiper.slideTo(index, speed, runCallbacks); 12510 } 12511 } 12512 } else { 12513 swiper.slideTo(0, speed, runCallbacks); 12514 } 12515 }; 12516 12517 const setHistoryPopState = () => { 12518 paths = getPathValues(swiper.params.url); 12519 scrollToSlide(swiper.params.speed, swiper.paths.value, false); 12520 }; 12521 12522 const init = () => { 12523 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 12524 if (!swiper.params.history) return; 12525 12526 if (!window.history || !window.history.pushState) { 12527 swiper.params.history.enabled = false; 12528 swiper.params.hashNavigation.enabled = true; 12529 return; 12530 } 12531 12532 initialized = true; 12533 paths = getPathValues(swiper.params.url); 12534 if (!paths.key && !paths.value) return; 12535 scrollToSlide(0, paths.value, swiper.params.runCallbacksOnInit); 12536 12537 if (!swiper.params.history.replaceState) { 12538 window.addEventListener('popstate', setHistoryPopState); 12539 } 12540 }; 12541 12542 const destroy = () => { 12543 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 12544 12545 if (!swiper.params.history.replaceState) { 12546 window.removeEventListener('popstate', setHistoryPopState); 12547 } 12548 }; 12549 12550 on('init', () => { 12551 if (swiper.params.history.enabled) { 12552 init(); 12553 } 12554 }); 12555 on('destroy', () => { 12556 if (swiper.params.history.enabled) { 12557 destroy(); 12558 } 12559 }); 12560 on('transitionEnd _freeModeNoMomentumRelease', () => { 12561 if (initialized) { 12562 setHistory(swiper.params.history.key, swiper.activeIndex); 12563 } 12564 }); 12565 on('slideChange', () => { 12566 if (initialized && swiper.params.cssMode) { 12567 setHistory(swiper.params.history.key, swiper.activeIndex); 12568 } 12569 }); 12570} 12571 12572/***/ }), 12573
vendor: 5,194 bytes, lines 12574-12720
12574/***/ "./node_modules/swiper/modules/keyboard/keyboard.js": 12575/*!**********************************************************!*\ 12576 !*** ./node_modules/swiper/modules/keyboard/keyboard.js ***! 12577 \**********************************************************/ 12578/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 12579 12580"use strict"; 12581__webpack_require__.r(__webpack_exports__); 12582/* harmony export */ __webpack_require__.d(__webpack_exports__, { 12583/* harmony export */ "default": () => (/* binding */ Keyboard) 12584/* harmony export */ }); 12585/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 12586/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 12587/* eslint-disable consistent-return */ 12588 12589 12590function Keyboard({ 12591 swiper, 12592 extendParams, 12593 on, 12594 emit 12595}) { 12596 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 12597 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 12598 swiper.keyboard = { 12599 enabled: false 12600 }; 12601 extendParams({ 12602 keyboard: { 12603 enabled: false, 12604 onlyInViewport: true, 12605 pageUpDown: true 12606 } 12607 }); 12608 12609 function handle(event) { 12610 if (!swiper.enabled) return; 12611 const { 12612 rtlTranslate: rtl 12613 } = swiper; 12614 let e = event; 12615 if (e.originalEvent) e = e.originalEvent; // jquery fix 12616 12617 const kc = e.keyCode || e.charCode; 12618 const pageUpDown = swiper.params.keyboard.pageUpDown; 12619 const isPageUp = pageUpDown && kc === 33; 12620 const isPageDown = pageUpDown && kc === 34; 12621 const isArrowLeft = kc === 37; 12622 const isArrowRight = kc === 39; 12623 const isArrowUp = kc === 38; 12624 const isArrowDown = kc === 40; // Directions locks 12625 12626 if (!swiper.allowSlideNext && (swiper.isHorizontal() && isArrowRight || swiper.isVertical() && isArrowDown || isPageDown)) { 12627 return false; 12628 } 12629 12630 if (!swiper.allowSlidePrev && (swiper.isHorizontal() && isArrowLeft || swiper.isVertical() && isArrowUp || isPageUp)) { 12631 return false; 12632 } 12633 12634 if (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey) { 12635 return undefined; 12636 } 12637 12638 if (document.activeElement && document.activeElement.nodeName && (document.activeElement.nodeName.toLowerCase() === 'input' || document.activeElement.nodeName.toLowerCase() === 'textarea')) { 12639 return undefined; 12640 } 12641 12642 if (swiper.params.keyboard.onlyInViewport && (isPageUp || isPageDown || isArrowLeft || isArrowRight || isArrowUp || isArrowDown)) { 12643 let inView = false; // Check that swiper should be inside of visible area of window 12644 12645 if (swiper.$el.parents(`.${swiper.params.slideClass}`).length > 0 && swiper.$el.parents(`.${swiper.params.slideActiveClass}`).length === 0) { 12646 return undefined; 12647 } 12648 12649 const $el = swiper.$el; 12650 const swiperWidth = $el[0].clientWidth; 12651 const swiperHeight = $el[0].clientHeight; 12652 const windowWidth = window.innerWidth; 12653 const windowHeight = window.innerHeight; 12654 const swiperOffset = swiper.$el.offset(); 12655 if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft; 12656 const swiperCoord = [[swiperOffset.left, swiperOffset.top], [swiperOffset.left + swiperWidth, swiperOffset.top], [swiperOffset.left, swiperOffset.top + swiperHeight], [swiperOffset.left + swiperWidth, swiperOffset.top + swiperHeight]]; 12657 12658 for (let i = 0; i < swiperCoord.length; i += 1) { 12659 const point = swiperCoord[i]; 12660 12661 if (point[0] >= 0 && point[0] <= windowWidth && point[1] >= 0 && point[1] <= windowHeight) { 12662 if (point[0] === 0 && point[1] === 0) continue; // eslint-disable-line 12663 12664 inView = true; 12665 } 12666 } 12667 12668 if (!inView) return undefined; 12669 } 12670 12671 if (swiper.isHorizontal()) { 12672 if (isPageUp || isPageDown || isArrowLeft || isArrowRight) { 12673 if (e.preventDefault) e.preventDefault();else e.returnValue = false; 12674 } 12675 12676 if ((isPageDown || isArrowRight) && !rtl || (isPageUp || isArrowLeft) && rtl) swiper.slideNext(); 12677 if ((isPageUp || isArrowLeft) && !rtl || (isPageDown || isArrowRight) && rtl) swiper.slidePrev(); 12678 } else { 12679 if (isPageUp || isPageDown || isArrowUp || isArrowDown) { 12680 if (e.preventDefault) e.preventDefault();else e.returnValue = false; 12681 } 12682 12683 if (isPageDown || isArrowDown) swiper.slideNext(); 12684 if (isPageUp || isArrowUp) swiper.slidePrev(); 12685 } 12686 12687 emit('keyPress', kc); 12688 return undefined; 12689 } 12690 12691 function enable() { 12692 if (swiper.keyboard.enabled) return; 12693 (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(document).on('keydown', handle); 12694 swiper.keyboard.enabled = true; 12695 } 12696 12697 function disable() { 12698 if (!swiper.keyboard.enabled) return; 12699 (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(document).off('keydown', handle); 12700 swiper.keyboard.enabled = false; 12701 } 12702 12703 on('init', () => { 12704 if (swiper.params.keyboard.enabled) { 12705 enable(); 12706 } 12707 }); 12708 on('destroy', () => { 12709 if (swiper.keyboard.enabled) { 12710 disable(); 12711 } 12712 }); 12713 Object.assign(swiper.keyboard, { 12714 enable, 12715 disable 12716 }); 12717} 12718 12719/***/ }), 12720
vendor: 10,784 bytes, lines 12721-13019
12721/***/ "./node_modules/swiper/modules/lazy/lazy.js": 12722/*!**************************************************!*\ 12723 !*** ./node_modules/swiper/modules/lazy/lazy.js ***! 12724 \**************************************************/ 12725/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 12726 12727"use strict"; 12728__webpack_require__.r(__webpack_exports__); 12729/* harmony export */ __webpack_require__.d(__webpack_exports__, { 12730/* harmony export */ "default": () => (/* binding */ Lazy) 12731/* harmony export */ }); 12732/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 12733/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 12734 12735 12736function Lazy({ 12737 swiper, 12738 extendParams, 12739 on, 12740 emit 12741}) { 12742 extendParams({ 12743 lazy: { 12744 checkInView: false, 12745 enabled: false, 12746 loadPrevNext: false, 12747 loadPrevNextAmount: 1, 12748 loadOnTransitionStart: false, 12749 scrollingElement: '', 12750 elementClass: 'swiper-lazy', 12751 loadingClass: 'swiper-lazy-loading', 12752 loadedClass: 'swiper-lazy-loaded', 12753 preloaderClass: 'swiper-lazy-preloader' 12754 } 12755 }); 12756 swiper.lazy = {}; 12757 let scrollHandlerAttached = false; 12758 let initialImageLoaded = false; 12759 12760 function loadInSlide(index, loadInDuplicate = true) { 12761 const params = swiper.params.lazy; 12762 if (typeof index === 'undefined') return; 12763 if (swiper.slides.length === 0) return; 12764 const isVirtual = swiper.virtual && swiper.params.virtual.enabled; 12765 const $slideEl = isVirtual ? swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-swiper-slide-index="${index}"]`) : swiper.slides.eq(index); 12766 const $images = $slideEl.find(`.${params.elementClass}:not(.${params.loadedClass}):not(.${params.loadingClass})`); 12767 12768 if ($slideEl.hasClass(params.elementClass) && !$slideEl.hasClass(params.loadedClass) && !$slideEl.hasClass(params.loadingClass)) { 12769 $images.push($slideEl[0]); 12770 } 12771 12772 if ($images.length === 0) return; 12773 $images.each(imageEl => { 12774 const $imageEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(imageEl); 12775 $imageEl.addClass(params.loadingClass); 12776 const background = $imageEl.attr('data-background'); 12777 const src = $imageEl.attr('data-src'); 12778 const srcset = $imageEl.attr('data-srcset'); 12779 const sizes = $imageEl.attr('data-sizes'); 12780 const $pictureEl = $imageEl.parent('picture'); 12781 swiper.loadImage($imageEl[0], src || background, srcset, sizes, false, () => { 12782 if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper && !swiper.params || swiper.destroyed) return; 12783 12784 if (background) { 12785 $imageEl.css('background-image', `url("${background}")`); 12786 $imageEl.removeAttr('data-background'); 12787 } else { 12788 if (srcset) { 12789 $imageEl.attr('srcset', srcset); 12790 $imageEl.removeAttr('data-srcset'); 12791 } 12792 12793 if (sizes) { 12794 $imageEl.attr('sizes', sizes); 12795 $imageEl.removeAttr('data-sizes'); 12796 } 12797 12798 if ($pictureEl.length) { 12799 $pictureEl.children('source').each(sourceEl => { 12800 const $source = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(sourceEl); 12801 12802 if ($source.attr('data-srcset')) { 12803 $source.attr('srcset', $source.attr('data-srcset')); 12804 $source.removeAttr('data-srcset'); 12805 } 12806 }); 12807 } 12808 12809 if (src) { 12810 $imageEl.attr('src', src); 12811 $imageEl.removeAttr('data-src'); 12812 } 12813 } 12814 12815 $imageEl.addClass(params.loadedClass).removeClass(params.loadingClass); 12816 $slideEl.find(`.${params.preloaderClass}`).remove(); 12817 12818 if (swiper.params.loop && loadInDuplicate) { 12819 const slideOriginalIndex = $slideEl.attr('data-swiper-slide-index'); 12820 12821 if ($slideEl.hasClass(swiper.params.slideDuplicateClass)) { 12822 const originalSlide = swiper.$wrapperEl.children(`[data-swiper-slide-index="${slideOriginalIndex}"]:not(.${swiper.params.slideDuplicateClass})`); 12823 loadInSlide(originalSlide.index(), false); 12824 } else { 12825 const duplicatedSlide = swiper.$wrapperEl.children(`.${swiper.params.slideDuplicateClass}[data-swiper-slide-index="${slideOriginalIndex}"]`); 12826 loadInSlide(duplicatedSlide.index(), false); 12827 } 12828 } 12829 12830 emit('lazyImageReady', $slideEl[0], $imageEl[0]); 12831 12832 if (swiper.params.autoHeight) { 12833 swiper.updateAutoHeight(); 12834 } 12835 }); 12836 emit('lazyImageLoad', $slideEl[0], $imageEl[0]); 12837 }); 12838 } 12839 12840 function load() { 12841 const { 12842 $wrapperEl, 12843 params: swiperParams, 12844 slides, 12845 activeIndex 12846 } = swiper; 12847 const isVirtual = swiper.virtual && swiperParams.virtual.enabled; 12848 const params = swiperParams.lazy; 12849 let slidesPerView = swiperParams.slidesPerView; 12850 12851 if (slidesPerView === 'auto') { 12852 slidesPerView = 0; 12853 } 12854 12855 function slideExist(index) { 12856 if (isVirtual) { 12857 if ($wrapperEl.children(`.${swiperParams.slideClass}[data-swiper-slide-index="${index}"]`).length) { 12858 return true; 12859 } 12860 } else if (slides[index]) return true; 12861 12862 return false; 12863 } 12864 12865 function slideIndex(slideEl) { 12866 if (isVirtual) { 12867 return (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(slideEl).attr('data-swiper-slide-index'); 12868 } 12869 12870 return (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(slideEl).index(); 12871 } 12872 12873 if (!initialImageLoaded) initialImageLoaded = true; 12874 12875 if (swiper.params.watchSlidesProgress) { 12876 $wrapperEl.children(`.${swiperParams.slideVisibleClass}`).each(slideEl => { 12877 const index = isVirtual ? (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(slideEl).attr('data-swiper-slide-index') : (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(slideEl).index(); 12878 loadInSlide(index); 12879 }); 12880 } else if (slidesPerView > 1) { 12881 for (let i = activeIndex; i < activeIndex + slidesPerView; i += 1) { 12882 if (slideExist(i)) loadInSlide(i); 12883 } 12884 } else { 12885 loadInSlide(activeIndex); 12886 } 12887 12888 if (params.loadPrevNext) { 12889 if (slidesPerView > 1 || params.loadPrevNextAmount && params.loadPrevNextAmount > 1) { 12890 const amount = params.loadPrevNextAmount; 12891 const spv = slidesPerView; 12892 const maxIndex = Math.min(activeIndex + spv + Math.max(amount, spv), slides.length); 12893 const minIndex = Math.max(activeIndex - Math.max(spv, amount), 0); // Next Slides 12894 12895 for (let i = activeIndex + slidesPerView; i < maxIndex; i += 1) { 12896 if (slideExist(i)) loadInSlide(i); 12897 } // Prev Slides 12898 12899 12900 for (let i = minIndex; i < activeIndex; i += 1) { 12901 if (slideExist(i)) loadInSlide(i); 12902 } 12903 } else { 12904 const nextSlide = $wrapperEl.children(`.${swiperParams.slideNextClass}`); 12905 if (nextSlide.length > 0) loadInSlide(slideIndex(nextSlide)); 12906 const prevSlide = $wrapperEl.children(`.${swiperParams.slidePrevClass}`); 12907 if (prevSlide.length > 0) loadInSlide(slideIndex(prevSlide)); 12908 } 12909 } 12910 } 12911 12912 function checkInViewOnLoad() { 12913 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 12914 if (!swiper || swiper.destroyed) return; 12915 const $scrollElement = swiper.params.lazy.scrollingElement ? (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(swiper.params.lazy.scrollingElement) : (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(window); 12916 const isWindow = $scrollElement[0] === window; 12917 const scrollElementWidth = isWindow ? window.innerWidth : $scrollElement[0].offsetWidth; 12918 const scrollElementHeight = isWindow ? window.innerHeight : $scrollElement[0].offsetHeight; 12919 const swiperOffset = swiper.$el.offset(); 12920 const { 12921 rtlTranslate: rtl 12922 } = swiper; 12923 let inView = false; 12924 if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft; 12925 const swiperCoord = [[swiperOffset.left, swiperOffset.top], [swiperOffset.left + swiper.width, swiperOffset.top], [swiperOffset.left, swiperOffset.top + swiper.height], [swiperOffset.left + swiper.width, swiperOffset.top + swiper.height]]; 12926 12927 for (let i = 0; i < swiperCoord.length; i += 1) { 12928 const point = swiperCoord[i]; 12929 12930 if (point[0] >= 0 && point[0] <= scrollElementWidth && point[1] >= 0 && point[1] <= scrollElementHeight) { 12931 if (point[0] === 0 && point[1] === 0) continue; // eslint-disable-line 12932 12933 inView = true; 12934 } 12935 } 12936 12937 const passiveListener = swiper.touchEvents.start === 'touchstart' && swiper.support.passiveListener && swiper.params.passiveListeners ? { 12938 passive: true, 12939 capture: false 12940 } : false; 12941 12942 if (inView) { 12943 load(); 12944 $scrollElement.off('scroll', checkInViewOnLoad, passiveListener); 12945 } else if (!scrollHandlerAttached) { 12946 scrollHandlerAttached = true; 12947 $scrollElement.on('scroll', checkInViewOnLoad, passiveListener); 12948 } 12949 } 12950 12951 on('beforeInit', () => { 12952 if (swiper.params.lazy.enabled && swiper.params.preloadImages) { 12953 swiper.params.preloadImages = false; 12954 } 12955 }); 12956 on('init', () => { 12957 if (swiper.params.lazy.enabled) { 12958 if (swiper.params.lazy.checkInView) { 12959 checkInViewOnLoad(); 12960 } else { 12961 load(); 12962 } 12963 } 12964 }); 12965 on('scroll', () => { 12966 if (swiper.params.freeMode && swiper.params.freeMode.enabled && !swiper.params.freeMode.sticky) { 12967 load(); 12968 } 12969 }); 12970 on('scrollbarDragMove resize _freeModeNoMomentumRelease', () => { 12971 if (swiper.params.lazy.enabled) { 12972 if (swiper.params.lazy.checkInView) { 12973 checkInViewOnLoad(); 12974 } else { 12975 load(); 12976 } 12977 } 12978 }); 12979 on('transitionStart', () => { 12980 if (swiper.params.lazy.enabled) { 12981 if (swiper.params.lazy.loadOnTransitionStart || !swiper.params.lazy.loadOnTransitionStart && !initialImageLoaded) { 12982 if (swiper.params.lazy.checkInView) { 12983 checkInViewOnLoad(); 12984 } else { 12985 load(); 12986 } 12987 } 12988 } 12989 }); 12990 on('transitionEnd', () => { 12991 if (swiper.params.lazy.enabled && !swiper.params.lazy.loadOnTransitionStart) { 12992 if (swiper.params.lazy.checkInView) { 12993 checkInViewOnLoad(); 12994 } else { 12995 load(); 12996 } 12997 } 12998 }); 12999 on('slideChange', () => { 13000 const { 13001 lazy, 13002 cssMode, 13003 watchSlidesProgress, 13004 touchReleaseOnEdges, 13005 resistanceRatio 13006 } = swiper.params; 13007 13008 if (lazy.enabled && (cssMode || watchSlidesProgress && (touchReleaseOnEdges || resistanceRatio === 0))) { 13009 load(); 13010 } 13011 }); 13012 Object.assign(swiper.lazy, { 13013 load, 13014 loadInSlide 13015 }); 13016} 13017 13018/***/ }), 13019
vendor: 2,177 bytes, lines 13020-13054
13020/***/ "./node_modules/swiper/modules/manipulation/manipulation.js": 13021/*!******************************************************************!*\ 13022 !*** ./node_modules/swiper/modules/manipulation/manipulation.js ***! 13023 \******************************************************************/ 13024/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 13025 13026"use strict"; 13027__webpack_require__.r(__webpack_exports__); 13028/* harmony export */ __webpack_require__.d(__webpack_exports__, { 13029/* harmony export */ "default": () => (/* binding */ Manipulation) 13030/* harmony export */ }); 13031/* harmony import */ var _methods_appendSlide_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./methods/appendSlide.js */ "./node_modules/swiper/modules/manipulation/methods/appendSlide.js"); 13032/* harmony import */ var _methods_prependSlide_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./methods/prependSlide.js */ "./node_modules/swiper/modules/manipulation/methods/prependSlide.js"); 13033/* harmony import */ var _methods_addSlide_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./methods/addSlide.js */ "./node_modules/swiper/modules/manipulation/methods/addSlide.js"); 13034/* harmony import */ var _methods_removeSlide_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./methods/removeSlide.js */ "./node_modules/swiper/modules/manipulation/methods/removeSlide.js"); 13035/* harmony import */ var _methods_removeAllSlides_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./methods/removeAllSlides.js */ "./node_modules/swiper/modules/manipulation/methods/removeAllSlides.js"); 13036 13037 13038 13039 13040 13041function Manipulation({ 13042 swiper 13043}) { 13044 Object.assign(swiper, { 13045 appendSlide: _methods_appendSlide_js__WEBPACK_IMPORTED_MODULE_0__["default"].bind(swiper), 13046 prependSlide: _methods_prependSlide_js__WEBPACK_IMPORTED_MODULE_1__["default"].bind(swiper), 13047 addSlide: _methods_addSlide_js__WEBPACK_IMPORTED_MODULE_2__["default"].bind(swiper), 13048 removeSlide: _methods_removeSlide_js__WEBPACK_IMPORTED_MODULE_3__["default"].bind(swiper), 13049 removeAllSlides: _methods_removeAllSlides_js__WEBPACK_IMPORTED_MODULE_4__["default"].bind(swiper) 13050 }); 13051} 13052 13053/***/ }), 13054
vendor: 2,102 bytes, lines 13055-13132
13055/***/ "./node_modules/swiper/modules/manipulation/methods/addSlide.js": 13056/*!**********************************************************************!*\ 13057 !*** ./node_modules/swiper/modules/manipulation/methods/addSlide.js ***! 13058 \**********************************************************************/ 13059/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 13060 13061"use strict"; 13062__webpack_require__.r(__webpack_exports__); 13063/* harmony export */ __webpack_require__.d(__webpack_exports__, { 13064/* harmony export */ "default": () => (/* binding */ addSlide) 13065/* harmony export */ }); 13066function addSlide(index, slides) { 13067 const swiper = this; 13068 const { 13069 $wrapperEl, 13070 params, 13071 activeIndex 13072 } = swiper; 13073 let activeIndexBuffer = activeIndex; 13074 13075 if (params.loop) { 13076 activeIndexBuffer -= swiper.loopedSlides; 13077 swiper.loopDestroy(); 13078 swiper.slides = $wrapperEl.children(`.${params.slideClass}`); 13079 } 13080 13081 const baseLength = swiper.slides.length; 13082 13083 if (index <= 0) { 13084 swiper.prependSlide(slides); 13085 return; 13086 } 13087 13088 if (index >= baseLength) { 13089 swiper.appendSlide(slides); 13090 return; 13091 } 13092 13093 let newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + 1 : activeIndexBuffer; 13094 const slidesBuffer = []; 13095 13096 for (let i = baseLength - 1; i >= index; i -= 1) { 13097 const currentSlide = swiper.slides.eq(i); 13098 currentSlide.remove(); 13099 slidesBuffer.unshift(currentSlide); 13100 } 13101 13102 if (typeof slides === 'object' && 'length' in slides) { 13103 for (let i = 0; i < slides.length; i += 1) { 13104 if (slides[i]) $wrapperEl.append(slides[i]); 13105 } 13106 13107 newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + slides.length : activeIndexBuffer; 13108 } else { 13109 $wrapperEl.append(slides); 13110 } 13111 13112 for (let i = 0; i < slidesBuffer.length; i += 1) { 13113 $wrapperEl.append(slidesBuffer[i]); 13114 } 13115 13116 if (params.loop) { 13117 swiper.loopCreate(); 13118 } 13119 13120 if (!params.observer) { 13121 swiper.update(); 13122 } 13123 13124 if (params.loop) { 13125 swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false); 13126 } else { 13127 swiper.slideTo(newActiveIndex, 0, false); 13128 } 13129} 13130 13131/***/ }), 13132
vendor: 1,106 bytes, lines 13133-13173
13133/***/ "./node_modules/swiper/modules/manipulation/methods/appendSlide.js": 13134/*!*************************************************************************!*\ 13135 !*** ./node_modules/swiper/modules/manipulation/methods/appendSlide.js ***! 13136 \*************************************************************************/ 13137/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 13138 13139"use strict"; 13140__webpack_require__.r(__webpack_exports__); 13141/* harmony export */ __webpack_require__.d(__webpack_exports__, { 13142/* harmony export */ "default": () => (/* binding */ appendSlide) 13143/* harmony export */ }); 13144function appendSlide(slides) { 13145 const swiper = this; 13146 const { 13147 $wrapperEl, 13148 params 13149 } = swiper; 13150 13151 if (params.loop) { 13152 swiper.loopDestroy(); 13153 } 13154 13155 if (typeof slides === 'object' && 'length' in slides) { 13156 for (let i = 0; i < slides.length; i += 1) { 13157 if (slides[i]) $wrapperEl.append(slides[i]); 13158 } 13159 } else { 13160 $wrapperEl.append(slides); 13161 } 13162 13163 if (params.loop) { 13164 swiper.loopCreate(); 13165 } 13166 13167 if (!params.observer) { 13168 swiper.update(); 13169 } 13170} 13171 13172/***/ }), 13173
vendor: 1,268 bytes, lines 13174-13221
13174/***/ "./node_modules/swiper/modules/manipulation/methods/prependSlide.js": 13175/*!**************************************************************************!*\ 13176 !*** ./node_modules/swiper/modules/manipulation/methods/prependSlide.js ***! 13177 \**************************************************************************/ 13178/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 13179 13180"use strict"; 13181__webpack_require__.r(__webpack_exports__); 13182/* harmony export */ __webpack_require__.d(__webpack_exports__, { 13183/* harmony export */ "default": () => (/* binding */ prependSlide) 13184/* harmony export */ }); 13185function prependSlide(slides) { 13186 const swiper = this; 13187 const { 13188 params, 13189 $wrapperEl, 13190 activeIndex 13191 } = swiper; 13192 13193 if (params.loop) { 13194 swiper.loopDestroy(); 13195 } 13196 13197 let newActiveIndex = activeIndex + 1; 13198 13199 if (typeof slides === 'object' && 'length' in slides) { 13200 for (let i = 0; i < slides.length; i += 1) { 13201 if (slides[i]) $wrapperEl.prepend(slides[i]); 13202 } 13203 13204 newActiveIndex = activeIndex + slides.length; 13205 } else { 13206 $wrapperEl.prepend(slides); 13207 } 13208 13209 if (params.loop) { 13210 swiper.loopCreate(); 13211 } 13212 13213 if (!params.observer) { 13214 swiper.update(); 13215 } 13216 13217 swiper.slideTo(newActiveIndex, 0, false); 13218} 13219 13220/***/ }), 13221
vendor: 859 bytes, lines 13222-13245
13222/***/ "./node_modules/swiper/modules/manipulation/methods/removeAllSlides.js": 13223/*!*****************************************************************************!*\ 13224 !*** ./node_modules/swiper/modules/manipulation/methods/removeAllSlides.js ***! 13225 \*****************************************************************************/ 13226/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 13227 13228"use strict"; 13229__webpack_require__.r(__webpack_exports__); 13230/* harmony export */ __webpack_require__.d(__webpack_exports__, { 13231/* harmony export */ "default": () => (/* binding */ removeAllSlides) 13232/* harmony export */ }); 13233function removeAllSlides() { 13234 const swiper = this; 13235 const slidesIndexes = []; 13236 13237 for (let i = 0; i < swiper.slides.length; i += 1) { 13238 slidesIndexes.push(i); 13239 } 13240 13241 swiper.removeSlide(slidesIndexes); 13242} 13243 13244/***/ }), 13245
vendor: 1,897 bytes, lines 13246-13306
13246/***/ "./node_modules/swiper/modules/manipulation/methods/removeSlide.js": 13247/*!*************************************************************************!*\ 13248 !*** ./node_modules/swiper/modules/manipulation/methods/removeSlide.js ***! 13249 \*************************************************************************/ 13250/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 13251 13252"use strict"; 13253__webpack_require__.r(__webpack_exports__); 13254/* harmony export */ __webpack_require__.d(__webpack_exports__, { 13255/* harmony export */ "default": () => (/* binding */ removeSlide) 13256/* harmony export */ }); 13257function removeSlide(slidesIndexes) { 13258 const swiper = this; 13259 const { 13260 params, 13261 $wrapperEl, 13262 activeIndex 13263 } = swiper; 13264 let activeIndexBuffer = activeIndex; 13265 13266 if (params.loop) { 13267 activeIndexBuffer -= swiper.loopedSlides; 13268 swiper.loopDestroy(); 13269 swiper.slides = $wrapperEl.children(`.${params.slideClass}`); 13270 } 13271 13272 let newActiveIndex = activeIndexBuffer; 13273 let indexToRemove; 13274 13275 if (typeof slidesIndexes === 'object' && 'length' in slidesIndexes) { 13276 for (let i = 0; i < slidesIndexes.length; i += 1) { 13277 indexToRemove = slidesIndexes[i]; 13278 if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove(); 13279 if (indexToRemove < newActiveIndex) newActiveIndex -= 1; 13280 } 13281 13282 newActiveIndex = Math.max(newActiveIndex, 0); 13283 } else { 13284 indexToRemove = slidesIndexes; 13285 if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove(); 13286 if (indexToRemove < newActiveIndex) newActiveIndex -= 1; 13287 newActiveIndex = Math.max(newActiveIndex, 0); 13288 } 13289 13290 if (params.loop) { 13291 swiper.loopCreate(); 13292 } 13293 13294 if (!params.observer) { 13295 swiper.update(); 13296 } 13297 13298 if (params.loop) { 13299 swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false); 13300 } else { 13301 swiper.slideTo(newActiveIndex, 0, false); 13302 } 13303} 13304 13305/***/ }), 13306
vendor: 15,582 bytes, lines 13307-13745
13307/***/ "./node_modules/swiper/modules/mousewheel/mousewheel.js": 13308/*!**************************************************************!*\ 13309 !*** ./node_modules/swiper/modules/mousewheel/mousewheel.js ***! 13310 \**************************************************************/ 13311/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 13312 13313"use strict"; 13314__webpack_require__.r(__webpack_exports__); 13315/* harmony export */ __webpack_require__.d(__webpack_exports__, { 13316/* harmony export */ "default": () => (/* binding */ Mousewheel) 13317/* harmony export */ }); 13318/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 13319/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 13320/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 13321/* eslint-disable consistent-return */ 13322 13323 13324 13325function Mousewheel({ 13326 swiper, 13327 extendParams, 13328 on, 13329 emit 13330}) { 13331 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 13332 extendParams({ 13333 mousewheel: { 13334 enabled: false, 13335 releaseOnEdges: false, 13336 invert: false, 13337 forceToAxis: false, 13338 sensitivity: 1, 13339 eventsTarget: 'container', 13340 thresholdDelta: null, 13341 thresholdTime: null 13342 } 13343 }); 13344 swiper.mousewheel = { 13345 enabled: false 13346 }; 13347 let timeout; 13348 let lastScrollTime = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.now)(); 13349 let lastEventBeforeSnap; 13350 const recentWheelEvents = []; 13351 13352 function normalize(e) { 13353 // Reasonable defaults 13354 const PIXEL_STEP = 10; 13355 const LINE_HEIGHT = 40; 13356 const PAGE_HEIGHT = 800; 13357 let sX = 0; 13358 let sY = 0; // spinX, spinY 13359 13360 let pX = 0; 13361 let pY = 0; // pixelX, pixelY 13362 // Legacy 13363 13364 if ('detail' in e) { 13365 sY = e.detail; 13366 } 13367 13368 if ('wheelDelta' in e) { 13369 sY = -e.wheelDelta / 120; 13370 } 13371 13372 if ('wheelDeltaY' in e) { 13373 sY = -e.wheelDeltaY / 120; 13374 } 13375 13376 if ('wheelDeltaX' in e) { 13377 sX = -e.wheelDeltaX / 120; 13378 } // side scrolling on FF with DOMMouseScroll 13379 13380 13381 if ('axis' in e && e.axis === e.HORIZONTAL_AXIS) { 13382 sX = sY; 13383 sY = 0; 13384 } 13385 13386 pX = sX * PIXEL_STEP; 13387 pY = sY * PIXEL_STEP; 13388 13389 if ('deltaY' in e) { 13390 pY = e.deltaY; 13391 } 13392 13393 if ('deltaX' in e) { 13394 pX = e.deltaX; 13395 } 13396 13397 if (e.shiftKey && !pX) { 13398 // if user scrolls with shift he wants horizontal scroll 13399 pX = pY; 13400 pY = 0; 13401 } 13402 13403 if ((pX || pY) && e.deltaMode) { 13404 if (e.deltaMode === 1) { 13405 // delta in LINE units 13406 pX *= LINE_HEIGHT; 13407 pY *= LINE_HEIGHT; 13408 } else { 13409 // delta in PAGE units 13410 pX *= PAGE_HEIGHT; 13411 pY *= PAGE_HEIGHT; 13412 } 13413 } // Fall-back if spin cannot be determined 13414 13415 13416 if (pX && !sX) { 13417 sX = pX < 1 ? -1 : 1; 13418 } 13419 13420 if (pY && !sY) { 13421 sY = pY < 1 ? -1 : 1; 13422 } 13423 13424 return { 13425 spinX: sX, 13426 spinY: sY, 13427 pixelX: pX, 13428 pixelY: pY 13429 }; 13430 } 13431 13432 function handleMouseEnter() { 13433 if (!swiper.enabled) return; 13434 swiper.mouseEntered = true; 13435 } 13436 13437 function handleMouseLeave() { 13438 if (!swiper.enabled) return; 13439 swiper.mouseEntered = false; 13440 } 13441 13442 function animateSlider(newEvent) { 13443 if (swiper.params.mousewheel.thresholdDelta && newEvent.delta < swiper.params.mousewheel.thresholdDelta) { 13444 // Prevent if delta of wheel scroll delta is below configured threshold 13445 return false; 13446 } 13447 13448 if (swiper.params.mousewheel.thresholdTime && (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.now)() - lastScrollTime < swiper.params.mousewheel.thresholdTime) { 13449 // Prevent if time between scrolls is below configured threshold 13450 return false; 13451 } // If the movement is NOT big enough and 13452 // if the last time the user scrolled was too close to the current one (avoid continuously triggering the slider): 13453 // Don't go any further (avoid insignificant scroll movement). 13454 13455 13456 if (newEvent.delta >= 6 && (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.now)() - lastScrollTime < 60) { 13457 // Return false as a default 13458 return true; 13459 } // If user is scrolling towards the end: 13460 // If the slider hasn't hit the latest slide or 13461 // if the slider is a loop and 13462 // if the slider isn't moving right now: 13463 // Go to next slide and 13464 // emit a scroll event. 13465 // Else (the user is scrolling towards the beginning) and 13466 // if the slider hasn't hit the first slide or 13467 // if the slider is a loop and 13468 // if the slider isn't moving right now: 13469 // Go to prev slide and 13470 // emit a scroll event. 13471 13472 13473 if (newEvent.direction < 0) { 13474 if ((!swiper.isEnd || swiper.params.loop) && !swiper.animating) { 13475 swiper.slideNext(); 13476 emit('scroll', newEvent.raw); 13477 } 13478 } else if ((!swiper.isBeginning || swiper.params.loop) && !swiper.animating) { 13479 swiper.slidePrev(); 13480 emit('scroll', newEvent.raw); 13481 } // If you got here is because an animation has been triggered so store the current time 13482 13483 13484 lastScrollTime = new window.Date().getTime(); // Return false as a default 13485 13486 return false; 13487 } 13488 13489 function releaseScroll(newEvent) { 13490 const params = swiper.params.mousewheel; 13491 13492 if (newEvent.direction < 0) { 13493 if (swiper.isEnd && !swiper.params.loop && params.releaseOnEdges) { 13494 // Return true to animate scroll on edges 13495 return true; 13496 } 13497 } else if (swiper.isBeginning && !swiper.params.loop && params.releaseOnEdges) { 13498 // Return true to animate scroll on edges 13499 return true; 13500 } 13501 13502 return false; 13503 } 13504 13505 function handle(event) { 13506 let e = event; 13507 let disableParentSwiper = true; 13508 if (!swiper.enabled) return; 13509 const params = swiper.params.mousewheel; 13510 13511 if (swiper.params.cssMode) { 13512 e.preventDefault(); 13513 } 13514 13515 let target = swiper.$el; 13516 13517 if (swiper.params.mousewheel.eventsTarget !== 'container') { 13518 target = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(swiper.params.mousewheel.eventsTarget); 13519 } 13520 13521 if (!swiper.mouseEntered && !target[0].contains(e.target) && !params.releaseOnEdges) return true; 13522 if (e.originalEvent) e = e.originalEvent; // jquery fix 13523 13524 let delta = 0; 13525 const rtlFactor = swiper.rtlTranslate ? -1 : 1; 13526 const data = normalize(e); 13527 13528 if (params.forceToAxis) { 13529 if (swiper.isHorizontal()) { 13530 if (Math.abs(data.pixelX) > Math.abs(data.pixelY)) delta = -data.pixelX * rtlFactor;else return true; 13531 } else if (Math.abs(data.pixelY) > Math.abs(data.pixelX)) delta = -data.pixelY;else return true; 13532 } else { 13533 delta = Math.abs(data.pixelX) > Math.abs(data.pixelY) ? -data.pixelX * rtlFactor : -data.pixelY; 13534 } 13535 13536 if (delta === 0) return true; 13537 if (params.invert) delta = -delta; // Get the scroll positions 13538 13539 let positions = swiper.getTranslate() + delta * params.sensitivity; 13540 if (positions >= swiper.minTranslate()) positions = swiper.minTranslate(); 13541 if (positions <= swiper.maxTranslate()) positions = swiper.maxTranslate(); // When loop is true: 13542 // the disableParentSwiper will be true. 13543 // When loop is false: 13544 // if the scroll positions is not on edge, 13545 // then the disableParentSwiper will be true. 13546 // if the scroll on edge positions, 13547 // then the disableParentSwiper will be false. 13548 13549 disableParentSwiper = swiper.params.loop ? true : !(positions === swiper.minTranslate() || positions === swiper.maxTranslate()); 13550 if (disableParentSwiper && swiper.params.nested) e.stopPropagation(); 13551 13552 if (!swiper.params.freeMode || !swiper.params.freeMode.enabled) { 13553 // Register the new event in a variable which stores the relevant data 13554 const newEvent = { 13555 time: (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.now)(), 13556 delta: Math.abs(delta), 13557 direction: Math.sign(delta), 13558 raw: event 13559 }; // Keep the most recent events 13560 13561 if (recentWheelEvents.length >= 2) { 13562 recentWheelEvents.shift(); // only store the last N events 13563 } 13564 13565 const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined; 13566 recentWheelEvents.push(newEvent); // If there is at least one previous recorded event: 13567 // If direction has changed or 13568 // if the scroll is quicker than the previous one: 13569 // Animate the slider. 13570 // Else (this is the first time the wheel is moved): 13571 // Animate the slider. 13572 13573 if (prevEvent) { 13574 if (newEvent.direction !== prevEvent.direction || newEvent.delta > prevEvent.delta || newEvent.time > prevEvent.time + 150) { 13575 animateSlider(newEvent); 13576 } 13577 } else { 13578 animateSlider(newEvent); 13579 } // If it's time to release the scroll: 13580 // Return now so you don't hit the preventDefault. 13581 13582 13583 if (releaseScroll(newEvent)) { 13584 return true; 13585 } 13586 } else { 13587 // Freemode or scrollContainer: 13588 // If we recently snapped after a momentum scroll, then ignore wheel events 13589 // to give time for the deceleration to finish. Stop ignoring after 500 msecs 13590 // or if it's a new scroll (larger delta or inverse sign as last event before 13591 // an end-of-momentum snap). 13592 const newEvent = { 13593 time: (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.now)(), 13594 delta: Math.abs(delta), 13595 direction: Math.sign(delta) 13596 }; 13597 const ignoreWheelEvents = lastEventBeforeSnap && newEvent.time < lastEventBeforeSnap.time + 500 && newEvent.delta <= lastEventBeforeSnap.delta && newEvent.direction === lastEventBeforeSnap.direction; 13598 13599 if (!ignoreWheelEvents) { 13600 lastEventBeforeSnap = undefined; 13601 13602 if (swiper.params.loop) { 13603 swiper.loopFix(); 13604 } 13605 13606 let position = swiper.getTranslate() + delta * params.sensitivity; 13607 const wasBeginning = swiper.isBeginning; 13608 const wasEnd = swiper.isEnd; 13609 if (position >= swiper.minTranslate()) position = swiper.minTranslate(); 13610 if (position <= swiper.maxTranslate()) position = swiper.maxTranslate(); 13611 swiper.setTransition(0); 13612 swiper.setTranslate(position); 13613 swiper.updateProgress(); 13614 swiper.updateActiveIndex(); 13615 swiper.updateSlidesClasses(); 13616 13617 if (!wasBeginning && swiper.isBeginning || !wasEnd && swiper.isEnd) { 13618 swiper.updateSlidesClasses(); 13619 } 13620 13621 if (swiper.params.freeMode.sticky) { 13622 // When wheel scrolling starts with sticky (aka snap) enabled, then detect 13623 // the end of a momentum scroll by storing recent (N=15?) wheel events. 13624 // 1. do all N events have decreasing or same (absolute value) delta? 13625 // 2. did all N events arrive in the last M (M=500?) msecs? 13626 // 3. does the earliest event have an (absolute value) delta that's 13627 // at least P (P=1?) larger than the most recent event's delta? 13628 // 4. does the latest event have a delta that's smaller than Q (Q=6?) pixels? 13629 // If 1-4 are "yes" then we're near the end of a momentum scroll deceleration. 13630 // Snap immediately and ignore remaining wheel events in this scroll. 13631 // See comment above for "remaining wheel events in this scroll" determination. 13632 // If 1-4 aren't satisfied, then wait to snap until 500ms after the last event. 13633 clearTimeout(timeout); 13634 timeout = undefined; 13635 13636 if (recentWheelEvents.length >= 15) { 13637 recentWheelEvents.shift(); // only store the last N events 13638 } 13639 13640 const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined; 13641 const firstEvent = recentWheelEvents[0]; 13642 recentWheelEvents.push(newEvent); 13643 13644 if (prevEvent && (newEvent.delta > prevEvent.delta || newEvent.direction !== prevEvent.direction)) { 13645 // Increasing or reverse-sign delta means the user started scrolling again. Clear the wheel event log. 13646 recentWheelEvents.splice(0); 13647 } else if (recentWheelEvents.length >= 15 && newEvent.time - firstEvent.time < 500 && firstEvent.delta - newEvent.delta >= 1 && newEvent.delta <= 6) { 13648 // We're at the end of the deceleration of a momentum scroll, so there's no need 13649 // to wait for more events. Snap ASAP on the next tick. 13650 // Also, because there's some remaining momentum we'll bias the snap in the 13651 // direction of the ongoing scroll because it's better UX for the scroll to snap 13652 // in the same direction as the scroll instead of reversing to snap. Therefore, 13653 // if it's already scrolled more than 20% in the current direction, keep going. 13654 const snapToThreshold = delta > 0 ? 0.8 : 0.2; 13655 lastEventBeforeSnap = newEvent; 13656 recentWheelEvents.splice(0); 13657 timeout = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.nextTick)(() => { 13658 swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold); 13659 }, 0); // no delay; move on next tick 13660 } 13661 13662 if (!timeout) { 13663 // if we get here, then we haven't detected the end of a momentum scroll, so 13664 // we'll consider a scroll "complete" when there haven't been any wheel events 13665 // for 500ms. 13666 timeout = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.nextTick)(() => { 13667 const snapToThreshold = 0.5; 13668 lastEventBeforeSnap = newEvent; 13669 recentWheelEvents.splice(0); 13670 swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold); 13671 }, 500); 13672 } 13673 } // Emit event 13674 13675 13676 if (!ignoreWheelEvents) emit('scroll', e); // Stop autoplay 13677 13678 if (swiper.params.autoplay && swiper.params.autoplayDisableOnInteraction) swiper.autoplay.stop(); // Return page scroll on edge positions 13679 13680 if (position === swiper.minTranslate() || position === swiper.maxTranslate()) return true; 13681 } 13682 } 13683 13684 if (e.preventDefault) e.preventDefault();else e.returnValue = false; 13685 return false; 13686 } 13687 13688 function events(method) { 13689 let target = swiper.$el; 13690 13691 if (swiper.params.mousewheel.eventsTarget !== 'container') { 13692 target = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(swiper.params.mousewheel.eventsTarget); 13693 } 13694 13695 target[method]('mouseenter', handleMouseEnter); 13696 target[method]('mouseleave', handleMouseLeave); 13697 target[method]('wheel', handle); 13698 } 13699 13700 function enable() { 13701 if (swiper.params.cssMode) { 13702 swiper.wrapperEl.removeEventListener('wheel', handle); 13703 return true; 13704 } 13705 13706 if (swiper.mousewheel.enabled) return false; 13707 events('on'); 13708 swiper.mousewheel.enabled = true; 13709 return true; 13710 } 13711 13712 function disable() { 13713 if (swiper.params.cssMode) { 13714 swiper.wrapperEl.addEventListener(event, handle); 13715 return true; 13716 } 13717 13718 if (!swiper.mousewheel.enabled) return false; 13719 events('off'); 13720 swiper.mousewheel.enabled = false; 13721 return true; 13722 } 13723 13724 on('init', () => { 13725 if (!swiper.params.mousewheel.enabled && swiper.params.cssMode) { 13726 disable(); 13727 } 13728 13729 if (swiper.params.mousewheel.enabled) enable(); 13730 }); 13731 on('destroy', () => { 13732 if (swiper.params.cssMode) { 13733 enable(); 13734 } 13735 13736 if (swiper.mousewheel.enabled) disable(); 13737 }); 13738 Object.assign(swiper.mousewheel, { 13739 enable, 13740 disable 13741 }); 13742} 13743 13744/***/ }), 13745
vendor: 5,771 bytes, lines 13746-13946
13746/***/ "./node_modules/swiper/modules/navigation/navigation.js": 13747/*!**************************************************************!*\ 13748 !*** ./node_modules/swiper/modules/navigation/navigation.js ***! 13749 \**************************************************************/ 13750/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 13751 13752"use strict"; 13753__webpack_require__.r(__webpack_exports__); 13754/* harmony export */ __webpack_require__.d(__webpack_exports__, { 13755/* harmony export */ "default": () => (/* binding */ Navigation) 13756/* harmony export */ }); 13757/* harmony import */ var _shared_create_element_if_not_defined_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/create-element-if-not-defined.js */ "./node_modules/swiper/shared/create-element-if-not-defined.js"); 13758/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 13759 13760 13761function Navigation({ 13762 swiper, 13763 extendParams, 13764 on, 13765 emit 13766}) { 13767 extendParams({ 13768 navigation: { 13769 nextEl: null, 13770 prevEl: null, 13771 hideOnClick: false, 13772 disabledClass: 'swiper-button-disabled', 13773 hiddenClass: 'swiper-button-hidden', 13774 lockClass: 'swiper-button-lock' 13775 } 13776 }); 13777 swiper.navigation = { 13778 nextEl: null, 13779 $nextEl: null, 13780 prevEl: null, 13781 $prevEl: null 13782 }; 13783 13784 function getEl(el) { 13785 let $el; 13786 13787 if (el) { 13788 $el = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(el); 13789 13790 if (swiper.params.uniqueNavElements && typeof el === 'string' && $el.length > 1 && swiper.$el.find(el).length === 1) { 13791 $el = swiper.$el.find(el); 13792 } 13793 } 13794 13795 return $el; 13796 } 13797 13798 function toggleEl($el, disabled) { 13799 const params = swiper.params.navigation; 13800 13801 if ($el && $el.length > 0) { 13802 $el[disabled ? 'addClass' : 'removeClass'](params.disabledClass); 13803 if ($el[0] && $el[0].tagName === 'BUTTON') $el[0].disabled = disabled; 13804 13805 if (swiper.params.watchOverflow && swiper.enabled) { 13806 $el[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass); 13807 } 13808 } 13809 } 13810 13811 function update() { 13812 // Update Navigation Buttons 13813 if (swiper.params.loop) return; 13814 const { 13815 $nextEl, 13816 $prevEl 13817 } = swiper.navigation; 13818 toggleEl($prevEl, swiper.isBeginning && !swiper.params.rewind); 13819 toggleEl($nextEl, swiper.isEnd && !swiper.params.rewind); 13820 } 13821 13822 function onPrevClick(e) { 13823 e.preventDefault(); 13824 if (swiper.isBeginning && !swiper.params.loop && !swiper.params.rewind) return; 13825 swiper.slidePrev(); 13826 } 13827 13828 function onNextClick(e) { 13829 e.preventDefault(); 13830 if (swiper.isEnd && !swiper.params.loop && !swiper.params.rewind) return; 13831 swiper.slideNext(); 13832 } 13833 13834 function init() { 13835 const params = swiper.params.navigation; 13836 swiper.params.navigation = (0,_shared_create_element_if_not_defined_js__WEBPACK_IMPORTED_MODULE_0__["default"])(swiper, swiper.originalParams.navigation, swiper.params.navigation, { 13837 nextEl: 'swiper-button-next', 13838 prevEl: 'swiper-button-prev' 13839 }); 13840 if (!(params.nextEl || params.prevEl)) return; 13841 const $nextEl = getEl(params.nextEl); 13842 const $prevEl = getEl(params.prevEl); 13843 13844 if ($nextEl && $nextEl.length > 0) { 13845 $nextEl.on('click', onNextClick); 13846 } 13847 13848 if ($prevEl && $prevEl.length > 0) { 13849 $prevEl.on('click', onPrevClick); 13850 } 13851 13852 Object.assign(swiper.navigation, { 13853 $nextEl, 13854 nextEl: $nextEl && $nextEl[0], 13855 $prevEl, 13856 prevEl: $prevEl && $prevEl[0] 13857 }); 13858 13859 if (!swiper.enabled) { 13860 if ($nextEl) $nextEl.addClass(params.lockClass); 13861 if ($prevEl) $prevEl.addClass(params.lockClass); 13862 } 13863 } 13864 13865 function destroy() { 13866 const { 13867 $nextEl, 13868 $prevEl 13869 } = swiper.navigation; 13870 13871 if ($nextEl && $nextEl.length) { 13872 $nextEl.off('click', onNextClick); 13873 $nextEl.removeClass(swiper.params.navigation.disabledClass); 13874 } 13875 13876 if ($prevEl && $prevEl.length) { 13877 $prevEl.off('click', onPrevClick); 13878 $prevEl.removeClass(swiper.params.navigation.disabledClass); 13879 } 13880 } 13881 13882 on('init', () => { 13883 init(); 13884 update(); 13885 }); 13886 on('toEdge fromEdge lock unlock', () => { 13887 update(); 13888 }); 13889 on('destroy', () => { 13890 destroy(); 13891 }); 13892 on('enable disable', () => { 13893 const { 13894 $nextEl, 13895 $prevEl 13896 } = swiper.navigation; 13897 13898 if ($nextEl) { 13899 $nextEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass); 13900 } 13901 13902 if ($prevEl) { 13903 $prevEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass); 13904 } 13905 }); 13906 on('click', (_s, e) => { 13907 const { 13908 $nextEl, 13909 $prevEl 13910 } = swiper.navigation; 13911 const targetEl = e.target; 13912 13913 if (swiper.params.navigation.hideOnClick && !(0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(targetEl).is($prevEl) && !(0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(targetEl).is($nextEl)) { 13914 if (swiper.pagination && swiper.params.pagination && swiper.params.pagination.clickable && (swiper.pagination.el === targetEl || swiper.pagination.el.contains(targetEl))) return; 13915 let isHidden; 13916 13917 if ($nextEl) { 13918 isHidden = $nextEl.hasClass(swiper.params.navigation.hiddenClass); 13919 } else if ($prevEl) { 13920 isHidden = $prevEl.hasClass(swiper.params.navigation.hiddenClass); 13921 } 13922 13923 if (isHidden === true) { 13924 emit('navigationShow'); 13925 } else { 13926 emit('navigationHide'); 13927 } 13928 13929 if ($nextEl) { 13930 $nextEl.toggleClass(swiper.params.navigation.hiddenClass); 13931 } 13932 13933 if ($prevEl) { 13934 $prevEl.toggleClass(swiper.params.navigation.hiddenClass); 13935 } 13936 } 13937 }); 13938 Object.assign(swiper.navigation, { 13939 update, 13940 init, 13941 destroy 13942 }); 13943} 13944 13945/***/ }), 13946
vendor: 15,369 bytes, lines 13947-14373
13947/***/ "./node_modules/swiper/modules/pagination/pagination.js": 13948/*!**************************************************************!*\ 13949 !*** ./node_modules/swiper/modules/pagination/pagination.js ***! 13950 \**************************************************************/ 13951/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 13952 13953"use strict"; 13954__webpack_require__.r(__webpack_exports__); 13955/* harmony export */ __webpack_require__.d(__webpack_exports__, { 13956/* harmony export */ "default": () => (/* binding */ Pagination) 13957/* harmony export */ }); 13958/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 13959/* harmony import */ var _shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/classes-to-selector.js */ "./node_modules/swiper/shared/classes-to-selector.js"); 13960/* harmony import */ var _shared_create_element_if_not_defined_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/create-element-if-not-defined.js */ "./node_modules/swiper/shared/create-element-if-not-defined.js"); 13961 13962 13963 13964function Pagination({ 13965 swiper, 13966 extendParams, 13967 on, 13968 emit 13969}) { 13970 const pfx = 'swiper-pagination'; 13971 extendParams({ 13972 pagination: { 13973 el: null, 13974 bulletElement: 'span', 13975 clickable: false, 13976 hideOnClick: false, 13977 renderBullet: null, 13978 renderProgressbar: null, 13979 renderFraction: null, 13980 renderCustom: null, 13981 progressbarOpposite: false, 13982 type: 'bullets', 13983 // 'bullets' or 'progressbar' or 'fraction' or 'custom' 13984 dynamicBullets: false, 13985 dynamicMainBullets: 1, 13986 formatFractionCurrent: number => number, 13987 formatFractionTotal: number => number, 13988 bulletClass: `${pfx}-bullet`, 13989 bulletActiveClass: `${pfx}-bullet-active`, 13990 modifierClass: `${pfx}-`, 13991 currentClass: `${pfx}-current`, 13992 totalClass: `${pfx}-total`, 13993 hiddenClass: `${pfx}-hidden`, 13994 progressbarFillClass: `${pfx}-progressbar-fill`, 13995 progressbarOppositeClass: `${pfx}-progressbar-opposite`, 13996 clickableClass: `${pfx}-clickable`, 13997 lockClass: `${pfx}-lock`, 13998 horizontalClass: `${pfx}-horizontal`, 13999 verticalClass: `${pfx}-vertical` 14000 } 14001 }); 14002 swiper.pagination = { 14003 el: null, 14004 $el: null, 14005 bullets: [] 14006 }; 14007 let bulletSize; 14008 let dynamicBulletIndex = 0; 14009 14010 function isPaginationDisabled() { 14011 return !swiper.params.pagination.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0; 14012 } 14013 14014 function setSideBullets($bulletEl, position) { 14015 const { 14016 bulletActiveClass 14017 } = swiper.params.pagination; 14018 $bulletEl[position]().addClass(`${bulletActiveClass}-${position}`)[position]().addClass(`${bulletActiveClass}-${position}-${position}`); 14019 } 14020 14021 function update() { 14022 // Render || Update Pagination bullets/items 14023 const rtl = swiper.rtl; 14024 const params = swiper.params.pagination; 14025 if (isPaginationDisabled()) return; 14026 const slidesLength = swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length; 14027 const $el = swiper.pagination.$el; // Current/Total 14028 14029 let current; 14030 const total = swiper.params.loop ? Math.ceil((slidesLength - swiper.loopedSlides * 2) / swiper.params.slidesPerGroup) : swiper.snapGrid.length; 14031 14032 if (swiper.params.loop) { 14033 current = Math.ceil((swiper.activeIndex - swiper.loopedSlides) / swiper.params.slidesPerGroup); 14034 14035 if (current > slidesLength - 1 - swiper.loopedSlides * 2) { 14036 current -= slidesLength - swiper.loopedSlides * 2; 14037 } 14038 14039 if (current > total - 1) current -= total; 14040 if (current < 0 && swiper.params.paginationType !== 'bullets') current = total + current; 14041 } else if (typeof swiper.snapIndex !== 'undefined') { 14042 current = swiper.snapIndex; 14043 } else { 14044 current = swiper.activeIndex || 0; 14045 } // Types 14046 14047 14048 if (params.type === 'bullets' && swiper.pagination.bullets && swiper.pagination.bullets.length > 0) { 14049 const bullets = swiper.pagination.bullets; 14050 let firstIndex; 14051 let lastIndex; 14052 let midIndex; 14053 14054 if (params.dynamicBullets) { 14055 bulletSize = bullets.eq(0)[swiper.isHorizontal() ? 'outerWidth' : 'outerHeight'](true); 14056 $el.css(swiper.isHorizontal() ? 'width' : 'height', `${bulletSize * (params.dynamicMainBullets + 4)}px`); 14057 14058 if (params.dynamicMainBullets > 1 && swiper.previousIndex !== undefined) { 14059 dynamicBulletIndex += current - (swiper.previousIndex - swiper.loopedSlides || 0); 14060 14061 if (dynamicBulletIndex > params.dynamicMainBullets - 1) { 14062 dynamicBulletIndex = params.dynamicMainBullets - 1; 14063 } else if (dynamicBulletIndex < 0) { 14064 dynamicBulletIndex = 0; 14065 } 14066 } 14067 14068 firstIndex = Math.max(current - dynamicBulletIndex, 0); 14069 lastIndex = firstIndex + (Math.min(bullets.length, params.dynamicMainBullets) - 1); 14070 midIndex = (lastIndex + firstIndex) / 2; 14071 } 14072 14073 bullets.removeClass(['', '-next', '-next-next', '-prev', '-prev-prev', '-main'].map(suffix => `${params.bulletActiveClass}${suffix}`).join(' ')); 14074 14075 if ($el.length > 1) { 14076 bullets.each(bullet => { 14077 const $bullet = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(bullet); 14078 const bulletIndex = $bullet.index(); 14079 14080 if (bulletIndex === current) { 14081 $bullet.addClass(params.bulletActiveClass); 14082 } 14083 14084 if (params.dynamicBullets) { 14085 if (bulletIndex >= firstIndex && bulletIndex <= lastIndex) { 14086 $bullet.addClass(`${params.bulletActiveClass}-main`); 14087 } 14088 14089 if (bulletIndex === firstIndex) { 14090 setSideBullets($bullet, 'prev'); 14091 } 14092 14093 if (bulletIndex === lastIndex) { 14094 setSideBullets($bullet, 'next'); 14095 } 14096 } 14097 }); 14098 } else { 14099 const $bullet = bullets.eq(current); 14100 const bulletIndex = $bullet.index(); 14101 $bullet.addClass(params.bulletActiveClass); 14102 14103 if (params.dynamicBullets) { 14104 const $firstDisplayedBullet = bullets.eq(firstIndex); 14105 const $lastDisplayedBullet = bullets.eq(lastIndex); 14106 14107 for (let i = firstIndex; i <= lastIndex; i += 1) { 14108 bullets.eq(i).addClass(`${params.bulletActiveClass}-main`); 14109 } 14110 14111 if (swiper.params.loop) { 14112 if (bulletIndex >= bullets.length) { 14113 for (let i = params.dynamicMainBullets; i >= 0; i -= 1) { 14114 bullets.eq(bullets.length - i).addClass(`${params.bulletActiveClass}-main`); 14115 } 14116 14117 bullets.eq(bullets.length - params.dynamicMainBullets - 1).addClass(`${params.bulletActiveClass}-prev`); 14118 } else { 14119 setSideBullets($firstDisplayedBullet, 'prev'); 14120 setSideBullets($lastDisplayedBullet, 'next'); 14121 } 14122 } else { 14123 setSideBullets($firstDisplayedBullet, 'prev'); 14124 setSideBullets($lastDisplayedBullet, 'next'); 14125 } 14126 } 14127 } 14128 14129 if (params.dynamicBullets) { 14130 const dynamicBulletsLength = Math.min(bullets.length, params.dynamicMainBullets + 4); 14131 const bulletsOffset = (bulletSize * dynamicBulletsLength - bulletSize) / 2 - midIndex * bulletSize; 14132 const offsetProp = rtl ? 'right' : 'left'; 14133 bullets.css(swiper.isHorizontal() ? offsetProp : 'top', `${bulletsOffset}px`); 14134 } 14135 } 14136 14137 if (params.type === 'fraction') { 14138 $el.find((0,_shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_1__["default"])(params.currentClass)).text(params.formatFractionCurrent(current + 1)); 14139 $el.find((0,_shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_1__["default"])(params.totalClass)).text(params.formatFractionTotal(total)); 14140 } 14141 14142 if (params.type === 'progressbar') { 14143 let progressbarDirection; 14144 14145 if (params.progressbarOpposite) { 14146 progressbarDirection = swiper.isHorizontal() ? 'vertical' : 'horizontal'; 14147 } else { 14148 progressbarDirection = swiper.isHorizontal() ? 'horizontal' : 'vertical'; 14149 } 14150 14151 const scale = (current + 1) / total; 14152 let scaleX = 1; 14153 let scaleY = 1; 14154 14155 if (progressbarDirection === 'horizontal') { 14156 scaleX = scale; 14157 } else { 14158 scaleY = scale; 14159 } 14160 14161 $el.find((0,_shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_1__["default"])(params.progressbarFillClass)).transform(`translate3d(0,0,0) scaleX(${scaleX}) scaleY(${scaleY})`).transition(swiper.params.speed); 14162 } 14163 14164 if (params.type === 'custom' && params.renderCustom) { 14165 $el.html(params.renderCustom(swiper, current + 1, total)); 14166 emit('paginationRender', $el[0]); 14167 } else { 14168 emit('paginationUpdate', $el[0]); 14169 } 14170 14171 if (swiper.params.watchOverflow && swiper.enabled) { 14172 $el[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass); 14173 } 14174 } 14175 14176 function render() { 14177 // Render Container 14178 const params = swiper.params.pagination; 14179 if (isPaginationDisabled()) return; 14180 const slidesLength = swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length; 14181 const $el = swiper.pagination.$el; 14182 let paginationHTML = ''; 14183 14184 if (params.type === 'bullets') { 14185 let numberOfBullets = swiper.params.loop ? Math.ceil((slidesLength - swiper.loopedSlides * 2) / swiper.params.slidesPerGroup) : swiper.snapGrid.length; 14186 14187 if (swiper.params.freeMode && swiper.params.freeMode.enabled && !swiper.params.loop && numberOfBullets > slidesLength) { 14188 numberOfBullets = slidesLength; 14189 } 14190 14191 for (let i = 0; i < numberOfBullets; i += 1) { 14192 if (params.renderBullet) { 14193 paginationHTML += params.renderBullet.call(swiper, i, params.bulletClass); 14194 } else { 14195 paginationHTML += `<${params.bulletElement} class="${params.bulletClass}"></${params.bulletElement}>`; 14196 } 14197 } 14198 14199 $el.html(paginationHTML); 14200 swiper.pagination.bullets = $el.find((0,_shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_1__["default"])(params.bulletClass)); 14201 } 14202 14203 if (params.type === 'fraction') { 14204 if (params.renderFraction) { 14205 paginationHTML = params.renderFraction.call(swiper, params.currentClass, params.totalClass); 14206 } else { 14207 paginationHTML = `<span class="${params.currentClass}"></span>` + ' / ' + `<span class="${params.totalClass}"></span>`; 14208 } 14209 14210 $el.html(paginationHTML); 14211 } 14212 14213 if (params.type === 'progressbar') { 14214 if (params.renderProgressbar) { 14215 paginationHTML = params.renderProgressbar.call(swiper, params.progressbarFillClass); 14216 } else { 14217 paginationHTML = `<span class="${params.progressbarFillClass}"></span>`; 14218 } 14219 14220 $el.html(paginationHTML); 14221 } 14222 14223 if (params.type !== 'custom') { 14224 emit('paginationRender', swiper.pagination.$el[0]); 14225 } 14226 } 14227 14228 function init() { 14229 swiper.params.pagination = (0,_shared_create_element_if_not_defined_js__WEBPACK_IMPORTED_MODULE_2__["default"])(swiper, swiper.originalParams.pagination, swiper.params.pagination, { 14230 el: 'swiper-pagination' 14231 }); 14232 const params = swiper.params.pagination; 14233 if (!params.el) return; 14234 let $el = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params.el); 14235 if ($el.length === 0) return; 14236 14237 if (swiper.params.uniqueNavElements && typeof params.el === 'string' && $el.length > 1) { 14238 $el = swiper.$el.find(params.el); // check if it belongs to another nested Swiper 14239 14240 if ($el.length > 1) { 14241 $el = $el.filter(el => { 14242 if ((0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(el).parents('.swiper')[0] !== swiper.el) return false; 14243 return true; 14244 }); 14245 } 14246 } 14247 14248 if (params.type === 'bullets' && params.clickable) { 14249 $el.addClass(params.clickableClass); 14250 } 14251 14252 $el.addClass(params.modifierClass + params.type); 14253 $el.addClass(params.modifierClass + swiper.params.direction); 14254 14255 if (params.type === 'bullets' && params.dynamicBullets) { 14256 $el.addClass(`${params.modifierClass}${params.type}-dynamic`); 14257 dynamicBulletIndex = 0; 14258 14259 if (params.dynamicMainBullets < 1) { 14260 params.dynamicMainBullets = 1; 14261 } 14262 } 14263 14264 if (params.type === 'progressbar' && params.progressbarOpposite) { 14265 $el.addClass(params.progressbarOppositeClass); 14266 } 14267 14268 if (params.clickable) { 14269 $el.on('click', (0,_shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_1__["default"])(params.bulletClass), function onClick(e) { 14270 e.preventDefault(); 14271 let index = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(this).index() * swiper.params.slidesPerGroup; 14272 if (swiper.params.loop) index += swiper.loopedSlides; 14273 swiper.slideTo(index); 14274 }); 14275 } 14276 14277 Object.assign(swiper.pagination, { 14278 $el, 14279 el: $el[0] 14280 }); 14281 14282 if (!swiper.enabled) { 14283 $el.addClass(params.lockClass); 14284 } 14285 } 14286 14287 function destroy() { 14288 const params = swiper.params.pagination; 14289 if (isPaginationDisabled()) return; 14290 const $el = swiper.pagination.$el; 14291 $el.removeClass(params.hiddenClass); 14292 $el.removeClass(params.modifierClass + params.type); 14293 $el.removeClass(params.modifierClass + swiper.params.direction); 14294 if (swiper.pagination.bullets && swiper.pagination.bullets.removeClass) swiper.pagination.bullets.removeClass(params.bulletActiveClass); 14295 14296 if (params.clickable) { 14297 $el.off('click', (0,_shared_classes_to_selector_js__WEBPACK_IMPORTED_MODULE_1__["default"])(params.bulletClass)); 14298 } 14299 } 14300 14301 on('init', () => { 14302 init(); 14303 render(); 14304 update(); 14305 }); 14306 on('activeIndexChange', () => { 14307 if (swiper.params.loop) { 14308 update(); 14309 } else if (typeof swiper.snapIndex === 'undefined') { 14310 update(); 14311 } 14312 }); 14313 on('snapIndexChange', () => { 14314 if (!swiper.params.loop) { 14315 update(); 14316 } 14317 }); 14318 on('slidesLengthChange', () => { 14319 if (swiper.params.loop) { 14320 render(); 14321 update(); 14322 } 14323 }); 14324 on('snapGridLengthChange', () => { 14325 if (!swiper.params.loop) { 14326 render(); 14327 update(); 14328 } 14329 }); 14330 on('destroy', () => { 14331 destroy(); 14332 }); 14333 on('enable disable', () => { 14334 const { 14335 $el 14336 } = swiper.pagination; 14337 14338 if ($el) { 14339 $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.pagination.lockClass); 14340 } 14341 }); 14342 on('lock unlock', () => { 14343 update(); 14344 }); 14345 on('click', (_s, e) => { 14346 const targetEl = e.target; 14347 const { 14348 $el 14349 } = swiper.pagination; 14350 14351 if (swiper.params.pagination.el && swiper.params.pagination.hideOnClick && $el.length > 0 && !(0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(targetEl).hasClass(swiper.params.pagination.bulletClass)) { 14352 if (swiper.navigation && (swiper.navigation.nextEl && targetEl === swiper.navigation.nextEl || swiper.navigation.prevEl && targetEl === swiper.navigation.prevEl)) return; 14353 const isHidden = $el.hasClass(swiper.params.pagination.hiddenClass); 14354 14355 if (isHidden === true) { 14356 emit('paginationShow'); 14357 } else { 14358 emit('paginationHide'); 14359 } 14360 14361 $el.toggleClass(swiper.params.pagination.hiddenClass); 14362 } 14363 }); 14364 Object.assign(swiper.pagination, { 14365 render, 14366 update, 14367 init, 14368 destroy 14369 }); 14370} 14371 14372/***/ }), 14373
vendor: 4,316 bytes, lines 14374-14502
14374/***/ "./node_modules/swiper/modules/parallax/parallax.js": 14375/*!**********************************************************!*\ 14376 !*** ./node_modules/swiper/modules/parallax/parallax.js ***! 14377 \**********************************************************/ 14378/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 14379 14380"use strict"; 14381__webpack_require__.r(__webpack_exports__); 14382/* harmony export */ __webpack_require__.d(__webpack_exports__, { 14383/* harmony export */ "default": () => (/* binding */ Parallax) 14384/* harmony export */ }); 14385/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 14386 14387function Parallax({ 14388 swiper, 14389 extendParams, 14390 on 14391}) { 14392 extendParams({ 14393 parallax: { 14394 enabled: false 14395 } 14396 }); 14397 14398 const setTransform = (el, progress) => { 14399 const { 14400 rtl 14401 } = swiper; 14402 const $el = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(el); 14403 const rtlFactor = rtl ? -1 : 1; 14404 const p = $el.attr('data-swiper-parallax') || '0'; 14405 let x = $el.attr('data-swiper-parallax-x'); 14406 let y = $el.attr('data-swiper-parallax-y'); 14407 const scale = $el.attr('data-swiper-parallax-scale'); 14408 const opacity = $el.attr('data-swiper-parallax-opacity'); 14409 14410 if (x || y) { 14411 x = x || '0'; 14412 y = y || '0'; 14413 } else if (swiper.isHorizontal()) { 14414 x = p; 14415 y = '0'; 14416 } else { 14417 y = p; 14418 x = '0'; 14419 } 14420 14421 if (x.indexOf('%') >= 0) { 14422 x = `${parseInt(x, 10) * progress * rtlFactor}%`; 14423 } else { 14424 x = `${x * progress * rtlFactor}px`; 14425 } 14426 14427 if (y.indexOf('%') >= 0) { 14428 y = `${parseInt(y, 10) * progress}%`; 14429 } else { 14430 y = `${y * progress}px`; 14431 } 14432 14433 if (typeof opacity !== 'undefined' && opacity !== null) { 14434 const currentOpacity = opacity - (opacity - 1) * (1 - Math.abs(progress)); 14435 $el[0].style.opacity = currentOpacity; 14436 } 14437 14438 if (typeof scale === 'undefined' || scale === null) { 14439 $el.transform(`translate3d(${x}, ${y}, 0px)`); 14440 } else { 14441 const currentScale = scale - (scale - 1) * (1 - Math.abs(progress)); 14442 $el.transform(`translate3d(${x}, ${y}, 0px) scale(${currentScale})`); 14443 } 14444 }; 14445 14446 const setTranslate = () => { 14447 const { 14448 $el, 14449 slides, 14450 progress, 14451 snapGrid 14452 } = swiper; 14453 $el.children('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]').each(el => { 14454 setTransform(el, progress); 14455 }); 14456 slides.each((slideEl, slideIndex) => { 14457 let slideProgress = slideEl.progress; 14458 14459 if (swiper.params.slidesPerGroup > 1 && swiper.params.slidesPerView !== 'auto') { 14460 slideProgress += Math.ceil(slideIndex / 2) - progress * (snapGrid.length - 1); 14461 } 14462 14463 slideProgress = Math.min(Math.max(slideProgress, -1), 1); 14464 (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(slideEl).find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]').each(el => { 14465 setTransform(el, slideProgress); 14466 }); 14467 }); 14468 }; 14469 14470 const setTransition = (duration = swiper.params.speed) => { 14471 const { 14472 $el 14473 } = swiper; 14474 $el.find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]').each(parallaxEl => { 14475 const $parallaxEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(parallaxEl); 14476 let parallaxDuration = parseInt($parallaxEl.attr('data-swiper-parallax-duration'), 10) || duration; 14477 if (duration === 0) parallaxDuration = 0; 14478 $parallaxEl.transition(parallaxDuration); 14479 }); 14480 }; 14481 14482 on('beforeInit', () => { 14483 if (!swiper.params.parallax.enabled) return; 14484 swiper.params.watchSlidesProgress = true; 14485 swiper.originalParams.watchSlidesProgress = true; 14486 }); 14487 on('init', () => { 14488 if (!swiper.params.parallax.enabled) return; 14489 setTranslate(); 14490 }); 14491 on('setTranslate', () => { 14492 if (!swiper.params.parallax.enabled) return; 14493 setTranslate(); 14494 }); 14495 on('setTransition', (_swiper, duration) => { 14496 if (!swiper.params.parallax.enabled) return; 14497 setTransition(duration); 14498 }); 14499} 14500 14501/***/ }), 14502
vendor: 10,560 bytes, lines 14503-14881
14503/***/ "./node_modules/swiper/modules/scrollbar/scrollbar.js": 14504/*!************************************************************!*\ 14505 !*** ./node_modules/swiper/modules/scrollbar/scrollbar.js ***! 14506 \************************************************************/ 14507/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 14508 14509"use strict"; 14510__webpack_require__.r(__webpack_exports__); 14511/* harmony export */ __webpack_require__.d(__webpack_exports__, { 14512/* harmony export */ "default": () => (/* binding */ Scrollbar) 14513/* harmony export */ }); 14514/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 14515/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 14516/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 14517/* harmony import */ var _shared_create_element_if_not_defined_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../shared/create-element-if-not-defined.js */ "./node_modules/swiper/shared/create-element-if-not-defined.js"); 14518 14519 14520 14521 14522function Scrollbar({ 14523 swiper, 14524 extendParams, 14525 on, 14526 emit 14527}) { 14528 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 14529 let isTouched = false; 14530 let timeout = null; 14531 let dragTimeout = null; 14532 let dragStartPos; 14533 let dragSize; 14534 let trackSize; 14535 let divider; 14536 extendParams({ 14537 scrollbar: { 14538 el: null, 14539 dragSize: 'auto', 14540 hide: false, 14541 draggable: false, 14542 snapOnRelease: true, 14543 lockClass: 'swiper-scrollbar-lock', 14544 dragClass: 'swiper-scrollbar-drag' 14545 } 14546 }); 14547 swiper.scrollbar = { 14548 el: null, 14549 dragEl: null, 14550 $el: null, 14551 $dragEl: null 14552 }; 14553 14554 function setTranslate() { 14555 if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return; 14556 const { 14557 scrollbar, 14558 rtlTranslate: rtl, 14559 progress 14560 } = swiper; 14561 const { 14562 $dragEl, 14563 $el 14564 } = scrollbar; 14565 const params = swiper.params.scrollbar; 14566 let newSize = dragSize; 14567 let newPos = (trackSize - dragSize) * progress; 14568 14569 if (rtl) { 14570 newPos = -newPos; 14571 14572 if (newPos > 0) { 14573 newSize = dragSize - newPos; 14574 newPos = 0; 14575 } else if (-newPos + dragSize > trackSize) { 14576 newSize = trackSize + newPos; 14577 } 14578 } else if (newPos < 0) { 14579 newSize = dragSize + newPos; 14580 newPos = 0; 14581 } else if (newPos + dragSize > trackSize) { 14582 newSize = trackSize - newPos; 14583 } 14584 14585 if (swiper.isHorizontal()) { 14586 $dragEl.transform(`translate3d(${newPos}px, 0, 0)`); 14587 $dragEl[0].style.width = `${newSize}px`; 14588 } else { 14589 $dragEl.transform(`translate3d(0px, ${newPos}px, 0)`); 14590 $dragEl[0].style.height = `${newSize}px`; 14591 } 14592 14593 if (params.hide) { 14594 clearTimeout(timeout); 14595 $el[0].style.opacity = 1; 14596 timeout = setTimeout(() => { 14597 $el[0].style.opacity = 0; 14598 $el.transition(400); 14599 }, 1000); 14600 } 14601 } 14602 14603 function setTransition(duration) { 14604 if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return; 14605 swiper.scrollbar.$dragEl.transition(duration); 14606 } 14607 14608 function updateSize() { 14609 if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return; 14610 const { 14611 scrollbar 14612 } = swiper; 14613 const { 14614 $dragEl, 14615 $el 14616 } = scrollbar; 14617 $dragEl[0].style.width = ''; 14618 $dragEl[0].style.height = ''; 14619 trackSize = swiper.isHorizontal() ? $el[0].offsetWidth : $el[0].offsetHeight; 14620 divider = swiper.size / (swiper.virtualSize + swiper.params.slidesOffsetBefore - (swiper.params.centeredSlides ? swiper.snapGrid[0] : 0)); 14621 14622 if (swiper.params.scrollbar.dragSize === 'auto') { 14623 dragSize = trackSize * divider; 14624 } else { 14625 dragSize = parseInt(swiper.params.scrollbar.dragSize, 10); 14626 } 14627 14628 if (swiper.isHorizontal()) { 14629 $dragEl[0].style.width = `${dragSize}px`; 14630 } else { 14631 $dragEl[0].style.height = `${dragSize}px`; 14632 } 14633 14634 if (divider >= 1) { 14635 $el[0].style.display = 'none'; 14636 } else { 14637 $el[0].style.display = ''; 14638 } 14639 14640 if (swiper.params.scrollbar.hide) { 14641 $el[0].style.opacity = 0; 14642 } 14643 14644 if (swiper.params.watchOverflow && swiper.enabled) { 14645 scrollbar.$el[swiper.isLocked ? 'addClass' : 'removeClass'](swiper.params.scrollbar.lockClass); 14646 } 14647 } 14648 14649 function getPointerPosition(e) { 14650 if (swiper.isHorizontal()) { 14651 return e.type === 'touchstart' || e.type === 'touchmove' ? e.targetTouches[0].clientX : e.clientX; 14652 } 14653 14654 return e.type === 'touchstart' || e.type === 'touchmove' ? e.targetTouches[0].clientY : e.clientY; 14655 } 14656 14657 function setDragPosition(e) { 14658 const { 14659 scrollbar, 14660 rtlTranslate: rtl 14661 } = swiper; 14662 const { 14663 $el 14664 } = scrollbar; 14665 let positionRatio; 14666 positionRatio = (getPointerPosition(e) - $el.offset()[swiper.isHorizontal() ? 'left' : 'top'] - (dragStartPos !== null ? dragStartPos : dragSize / 2)) / (trackSize - dragSize); 14667 positionRatio = Math.max(Math.min(positionRatio, 1), 0); 14668 14669 if (rtl) { 14670 positionRatio = 1 - positionRatio; 14671 } 14672 14673 const position = swiper.minTranslate() + (swiper.maxTranslate() - swiper.minTranslate()) * positionRatio; 14674 swiper.updateProgress(position); 14675 swiper.setTranslate(position); 14676 swiper.updateActiveIndex(); 14677 swiper.updateSlidesClasses(); 14678 } 14679 14680 function onDragStart(e) { 14681 const params = swiper.params.scrollbar; 14682 const { 14683 scrollbar, 14684 $wrapperEl 14685 } = swiper; 14686 const { 14687 $el, 14688 $dragEl 14689 } = scrollbar; 14690 isTouched = true; 14691 dragStartPos = e.target === $dragEl[0] || e.target === $dragEl ? getPointerPosition(e) - e.target.getBoundingClientRect()[swiper.isHorizontal() ? 'left' : 'top'] : null; 14692 e.preventDefault(); 14693 e.stopPropagation(); 14694 $wrapperEl.transition(100); 14695 $dragEl.transition(100); 14696 setDragPosition(e); 14697 clearTimeout(dragTimeout); 14698 $el.transition(0); 14699 14700 if (params.hide) { 14701 $el.css('opacity', 1); 14702 } 14703 14704 if (swiper.params.cssMode) { 14705 swiper.$wrapperEl.css('scroll-snap-type', 'none'); 14706 } 14707 14708 emit('scrollbarDragStart', e); 14709 } 14710 14711 function onDragMove(e) { 14712 const { 14713 scrollbar, 14714 $wrapperEl 14715 } = swiper; 14716 const { 14717 $el, 14718 $dragEl 14719 } = scrollbar; 14720 if (!isTouched) return; 14721 if (e.preventDefault) e.preventDefault();else e.returnValue = false; 14722 setDragPosition(e); 14723 $wrapperEl.transition(0); 14724 $el.transition(0); 14725 $dragEl.transition(0); 14726 emit('scrollbarDragMove', e); 14727 } 14728 14729 function onDragEnd(e) { 14730 const params = swiper.params.scrollbar; 14731 const { 14732 scrollbar, 14733 $wrapperEl 14734 } = swiper; 14735 const { 14736 $el 14737 } = scrollbar; 14738 if (!isTouched) return; 14739 isTouched = false; 14740 14741 if (swiper.params.cssMode) { 14742 swiper.$wrapperEl.css('scroll-snap-type', ''); 14743 $wrapperEl.transition(''); 14744 } 14745 14746 if (params.hide) { 14747 clearTimeout(dragTimeout); 14748 dragTimeout = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.nextTick)(() => { 14749 $el.css('opacity', 0); 14750 $el.transition(400); 14751 }, 1000); 14752 } 14753 14754 emit('scrollbarDragEnd', e); 14755 14756 if (params.snapOnRelease) { 14757 swiper.slideToClosest(); 14758 } 14759 } 14760 14761 function events(method) { 14762 const { 14763 scrollbar, 14764 touchEventsTouch, 14765 touchEventsDesktop, 14766 params, 14767 support 14768 } = swiper; 14769 const $el = scrollbar.$el; 14770 const target = $el[0]; 14771 const activeListener = support.passiveListener && params.passiveListeners ? { 14772 passive: false, 14773 capture: false 14774 } : false; 14775 const passiveListener = support.passiveListener && params.passiveListeners ? { 14776 passive: true, 14777 capture: false 14778 } : false; 14779 if (!target) return; 14780 const eventMethod = method === 'on' ? 'addEventListener' : 'removeEventListener'; 14781 14782 if (!support.touch) { 14783 target[eventMethod](touchEventsDesktop.start, onDragStart, activeListener); 14784 document[eventMethod](touchEventsDesktop.move, onDragMove, activeListener); 14785 document[eventMethod](touchEventsDesktop.end, onDragEnd, passiveListener); 14786 } else { 14787 target[eventMethod](touchEventsTouch.start, onDragStart, activeListener); 14788 target[eventMethod](touchEventsTouch.move, onDragMove, activeListener); 14789 target[eventMethod](touchEventsTouch.end, onDragEnd, passiveListener); 14790 } 14791 } 14792 14793 function enableDraggable() { 14794 if (!swiper.params.scrollbar.el) return; 14795 events('on'); 14796 } 14797 14798 function disableDraggable() { 14799 if (!swiper.params.scrollbar.el) return; 14800 events('off'); 14801 } 14802 14803 function init() { 14804 const { 14805 scrollbar, 14806 $el: $swiperEl 14807 } = swiper; 14808 swiper.params.scrollbar = (0,_shared_create_element_if_not_defined_js__WEBPACK_IMPORTED_MODULE_3__["default"])(swiper, swiper.originalParams.scrollbar, swiper.params.scrollbar, { 14809 el: 'swiper-scrollbar' 14810 }); 14811 const params = swiper.params.scrollbar; 14812 if (!params.el) return; 14813 let $el = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(params.el); 14814 14815 if (swiper.params.uniqueNavElements && typeof params.el === 'string' && $el.length > 1 && $swiperEl.find(params.el).length === 1) { 14816 $el = $swiperEl.find(params.el); 14817 } 14818 14819 let $dragEl = $el.find(`.${swiper.params.scrollbar.dragClass}`); 14820 14821 if ($dragEl.length === 0) { 14822 $dragEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(`<div class="${swiper.params.scrollbar.dragClass}"></div>`); 14823 $el.append($dragEl); 14824 } 14825 14826 Object.assign(scrollbar, { 14827 $el, 14828 el: $el[0], 14829 $dragEl, 14830 dragEl: $dragEl[0] 14831 }); 14832 14833 if (params.draggable) { 14834 enableDraggable(); 14835 } 14836 14837 if ($el) { 14838 $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.scrollbar.lockClass); 14839 } 14840 } 14841 14842 function destroy() { 14843 disableDraggable(); 14844 } 14845 14846 on('init', () => { 14847 init(); 14848 updateSize(); 14849 setTranslate(); 14850 }); 14851 on('update resize observerUpdate lock unlock', () => { 14852 updateSize(); 14853 }); 14854 on('setTranslate', () => { 14855 setTranslate(); 14856 }); 14857 on('setTransition', (_s, duration) => { 14858 setTransition(duration); 14859 }); 14860 on('enable disable', () => { 14861 const { 14862 $el 14863 } = swiper.scrollbar; 14864 14865 if ($el) { 14866 $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.scrollbar.lockClass); 14867 } 14868 }); 14869 on('destroy', () => { 14870 destroy(); 14871 }); 14872 Object.assign(swiper.scrollbar, { 14873 updateSize, 14874 setTranslate, 14875 init, 14876 destroy 14877 }); 14878} 14879 14880/***/ }), 14881
vendor: 8,460 bytes, lines 14882-15101
14882/***/ "./node_modules/swiper/modules/thumbs/thumbs.js": 14883/*!******************************************************!*\ 14884 !*** ./node_modules/swiper/modules/thumbs/thumbs.js ***! 14885 \******************************************************/ 14886/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 14887 14888"use strict"; 14889__webpack_require__.r(__webpack_exports__); 14890/* harmony export */ __webpack_require__.d(__webpack_exports__, { 14891/* harmony export */ "default": () => (/* binding */ Thumb) 14892/* harmony export */ }); 14893/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 14894/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 14895 14896 14897function Thumb({ 14898 swiper, 14899 extendParams, 14900 on 14901}) { 14902 extendParams({ 14903 thumbs: { 14904 swiper: null, 14905 multipleActiveThumbs: true, 14906 autoScrollOffset: 0, 14907 slideThumbActiveClass: 'swiper-slide-thumb-active', 14908 thumbsContainerClass: 'swiper-thumbs' 14909 } 14910 }); 14911 let initialized = false; 14912 let swiperCreated = false; 14913 swiper.thumbs = { 14914 swiper: null 14915 }; 14916 14917 function onThumbClick() { 14918 const thumbsSwiper = swiper.thumbs.swiper; 14919 if (!thumbsSwiper) return; 14920 const clickedIndex = thumbsSwiper.clickedIndex; 14921 const clickedSlide = thumbsSwiper.clickedSlide; 14922 if (clickedSlide && (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(clickedSlide).hasClass(swiper.params.thumbs.slideThumbActiveClass)) return; 14923 if (typeof clickedIndex === 'undefined' || clickedIndex === null) return; 14924 let slideToIndex; 14925 14926 if (thumbsSwiper.params.loop) { 14927 slideToIndex = parseInt((0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(thumbsSwiper.clickedSlide).attr('data-swiper-slide-index'), 10); 14928 } else { 14929 slideToIndex = clickedIndex; 14930 } 14931 14932 if (swiper.params.loop) { 14933 let currentIndex = swiper.activeIndex; 14934 14935 if (swiper.slides.eq(currentIndex).hasClass(swiper.params.slideDuplicateClass)) { 14936 swiper.loopFix(); // eslint-disable-next-line 14937 14938 swiper._clientLeft = swiper.$wrapperEl[0].clientLeft; 14939 currentIndex = swiper.activeIndex; 14940 } 14941 14942 const prevIndex = swiper.slides.eq(currentIndex).prevAll(`[data-swiper-slide-index="${slideToIndex}"]`).eq(0).index(); 14943 const nextIndex = swiper.slides.eq(currentIndex).nextAll(`[data-swiper-slide-index="${slideToIndex}"]`).eq(0).index(); 14944 if (typeof prevIndex === 'undefined') slideToIndex = nextIndex;else if (typeof nextIndex === 'undefined') slideToIndex = prevIndex;else if (nextIndex - currentIndex < currentIndex - prevIndex) slideToIndex = nextIndex;else slideToIndex = prevIndex; 14945 } 14946 14947 swiper.slideTo(slideToIndex); 14948 } 14949 14950 function init() { 14951 const { 14952 thumbs: thumbsParams 14953 } = swiper.params; 14954 if (initialized) return false; 14955 initialized = true; 14956 const SwiperClass = swiper.constructor; 14957 14958 if (thumbsParams.swiper instanceof SwiperClass) { 14959 swiper.thumbs.swiper = thumbsParams.swiper; 14960 Object.assign(swiper.thumbs.swiper.originalParams, { 14961 watchSlidesProgress: true, 14962 slideToClickedSlide: false 14963 }); 14964 Object.assign(swiper.thumbs.swiper.params, { 14965 watchSlidesProgress: true, 14966 slideToClickedSlide: false 14967 }); 14968 } else if ((0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_0__.isObject)(thumbsParams.swiper)) { 14969 const thumbsSwiperParams = Object.assign({}, thumbsParams.swiper); 14970 Object.assign(thumbsSwiperParams, { 14971 watchSlidesProgress: true, 14972 slideToClickedSlide: false 14973 }); 14974 swiper.thumbs.swiper = new SwiperClass(thumbsSwiperParams); 14975 swiperCreated = true; 14976 } 14977 14978 swiper.thumbs.swiper.$el.addClass(swiper.params.thumbs.thumbsContainerClass); 14979 swiper.thumbs.swiper.on('tap', onThumbClick); 14980 return true; 14981 } 14982 14983 function update(initial) { 14984 const thumbsSwiper = swiper.thumbs.swiper; 14985 if (!thumbsSwiper) return; 14986 const slidesPerView = thumbsSwiper.params.slidesPerView === 'auto' ? thumbsSwiper.slidesPerViewDynamic() : thumbsSwiper.params.slidesPerView; 14987 const autoScrollOffset = swiper.params.thumbs.autoScrollOffset; 14988 const useOffset = autoScrollOffset && !thumbsSwiper.params.loop; 14989 14990 if (swiper.realIndex !== thumbsSwiper.realIndex || useOffset) { 14991 let currentThumbsIndex = thumbsSwiper.activeIndex; 14992 let newThumbsIndex; 14993 let direction; 14994 14995 if (thumbsSwiper.params.loop) { 14996 if (thumbsSwiper.slides.eq(currentThumbsIndex).hasClass(thumbsSwiper.params.slideDuplicateClass)) { 14997 thumbsSwiper.loopFix(); // eslint-disable-next-line 14998 14999 thumbsSwiper._clientLeft = thumbsSwiper.$wrapperEl[0].clientLeft; 15000 currentThumbsIndex = thumbsSwiper.activeIndex; 15001 } // Find actual thumbs index to slide to 15002 15003 15004 const prevThumbsIndex = thumbsSwiper.slides.eq(currentThumbsIndex).prevAll(`[data-swiper-slide-index="${swiper.realIndex}"]`).eq(0).index(); 15005 const nextThumbsIndex = thumbsSwiper.slides.eq(currentThumbsIndex).nextAll(`[data-swiper-slide-index="${swiper.realIndex}"]`).eq(0).index(); 15006 15007 if (typeof prevThumbsIndex === 'undefined') { 15008 newThumbsIndex = nextThumbsIndex; 15009 } else if (typeof nextThumbsIndex === 'undefined') { 15010 newThumbsIndex = prevThumbsIndex; 15011 } else if (nextThumbsIndex - currentThumbsIndex === currentThumbsIndex - prevThumbsIndex) { 15012 newThumbsIndex = thumbsSwiper.params.slidesPerGroup > 1 ? nextThumbsIndex : currentThumbsIndex; 15013 } else if (nextThumbsIndex - currentThumbsIndex < currentThumbsIndex - prevThumbsIndex) { 15014 newThumbsIndex = nextThumbsIndex; 15015 } else { 15016 newThumbsIndex = prevThumbsIndex; 15017 } 15018 15019 direction = swiper.activeIndex > swiper.previousIndex ? 'next' : 'prev'; 15020 } else { 15021 newThumbsIndex = swiper.realIndex; 15022 direction = newThumbsIndex > swiper.previousIndex ? 'next' : 'prev'; 15023 } 15024 15025 if (useOffset) { 15026 newThumbsIndex += direction === 'next' ? autoScrollOffset : -1 * autoScrollOffset; 15027 } 15028 15029 if (thumbsSwiper.visibleSlidesIndexes && thumbsSwiper.visibleSlidesIndexes.indexOf(newThumbsIndex) < 0) { 15030 if (thumbsSwiper.params.centeredSlides) { 15031 if (newThumbsIndex > currentThumbsIndex) { 15032 newThumbsIndex = newThumbsIndex - Math.floor(slidesPerView / 2) + 1; 15033 } else { 15034 newThumbsIndex = newThumbsIndex + Math.floor(slidesPerView / 2) - 1; 15035 } 15036 } else if (newThumbsIndex > currentThumbsIndex && thumbsSwiper.params.slidesPerGroup === 1) {// newThumbsIndex = newThumbsIndex - slidesPerView + 1; 15037 } 15038 15039 thumbsSwiper.slideTo(newThumbsIndex, initial ? 0 : undefined); 15040 } 15041 } // Activate thumbs 15042 15043 15044 let thumbsToActivate = 1; 15045 const thumbActiveClass = swiper.params.thumbs.slideThumbActiveClass; 15046 15047 if (swiper.params.slidesPerView > 1 && !swiper.params.centeredSlides) { 15048 thumbsToActivate = swiper.params.slidesPerView; 15049 } 15050 15051 if (!swiper.params.thumbs.multipleActiveThumbs) { 15052 thumbsToActivate = 1; 15053 } 15054 15055 thumbsToActivate = Math.floor(thumbsToActivate); 15056 thumbsSwiper.slides.removeClass(thumbActiveClass); 15057 15058 if (thumbsSwiper.params.loop || thumbsSwiper.params.virtual && thumbsSwiper.params.virtual.enabled) { 15059 for (let i = 0; i < thumbsToActivate; i += 1) { 15060 thumbsSwiper.$wrapperEl.children(`[data-swiper-slide-index="${swiper.realIndex + i}"]`).addClass(thumbActiveClass); 15061 } 15062 } else { 15063 for (let i = 0; i < thumbsToActivate; i += 1) { 15064 thumbsSwiper.slides.eq(swiper.realIndex + i).addClass(thumbActiveClass); 15065 } 15066 } 15067 } 15068 15069 on('beforeInit', () => { 15070 const { 15071 thumbs 15072 } = swiper.params; 15073 if (!thumbs || !thumbs.swiper) return; 15074 init(); 15075 update(true); 15076 }); 15077 on('slideChange update resize observerUpdate', () => { 15078 if (!swiper.thumbs.swiper) return; 15079 update(); 15080 }); 15081 on('setTransition', (_s, duration) => { 15082 const thumbsSwiper = swiper.thumbs.swiper; 15083 if (!thumbsSwiper) return; 15084 thumbsSwiper.setTransition(duration); 15085 }); 15086 on('beforeDestroy', () => { 15087 const thumbsSwiper = swiper.thumbs.swiper; 15088 if (!thumbsSwiper) return; 15089 15090 if (swiperCreated && thumbsSwiper) { 15091 thumbsSwiper.destroy(); 15092 } 15093 }); 15094 Object.assign(swiper.thumbs, { 15095 init, 15096 update 15097 }); 15098} 15099 15100/***/ }), 15101
vendor: 8,956 bytes, lines 15102-15408
15102/***/ "./node_modules/swiper/modules/virtual/virtual.js": 15103/*!********************************************************!*\ 15104 !*** ./node_modules/swiper/modules/virtual/virtual.js ***! 15105 \********************************************************/ 15106/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 15107 15108"use strict"; 15109__webpack_require__.r(__webpack_exports__); 15110/* harmony export */ __webpack_require__.d(__webpack_exports__, { 15111/* harmony export */ "default": () => (/* binding */ Virtual) 15112/* harmony export */ }); 15113/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 15114/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 15115 15116 15117function Virtual({ 15118 swiper, 15119 extendParams, 15120 on 15121}) { 15122 extendParams({ 15123 virtual: { 15124 enabled: false, 15125 slides: [], 15126 cache: true, 15127 renderSlide: null, 15128 renderExternal: null, 15129 renderExternalUpdate: true, 15130 addSlidesBefore: 0, 15131 addSlidesAfter: 0 15132 } 15133 }); 15134 let cssModeTimeout; 15135 swiper.virtual = { 15136 cache: {}, 15137 from: undefined, 15138 to: undefined, 15139 slides: [], 15140 offset: 0, 15141 slidesGrid: [] 15142 }; 15143 15144 function renderSlide(slide, index) { 15145 const params = swiper.params.virtual; 15146 15147 if (params.cache && swiper.virtual.cache[index]) { 15148 return swiper.virtual.cache[index]; 15149 } 15150 15151 const $slideEl = params.renderSlide ? (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params.renderSlide.call(swiper, slide, index)) : (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(`<div class="${swiper.params.slideClass}" data-swiper-slide-index="${index}">${slide}</div>`); 15152 if (!$slideEl.attr('data-swiper-slide-index')) $slideEl.attr('data-swiper-slide-index', index); 15153 if (params.cache) swiper.virtual.cache[index] = $slideEl; 15154 return $slideEl; 15155 } 15156 15157 function update(force) { 15158 const { 15159 slidesPerView, 15160 slidesPerGroup, 15161 centeredSlides 15162 } = swiper.params; 15163 const { 15164 addSlidesBefore, 15165 addSlidesAfter 15166 } = swiper.params.virtual; 15167 const { 15168 from: previousFrom, 15169 to: previousTo, 15170 slides, 15171 slidesGrid: previousSlidesGrid, 15172 offset: previousOffset 15173 } = swiper.virtual; 15174 15175 if (!swiper.params.cssMode) { 15176 swiper.updateActiveIndex(); 15177 } 15178 15179 const activeIndex = swiper.activeIndex || 0; 15180 let offsetProp; 15181 if (swiper.rtlTranslate) offsetProp = 'right';else offsetProp = swiper.isHorizontal() ? 'left' : 'top'; 15182 let slidesAfter; 15183 let slidesBefore; 15184 15185 if (centeredSlides) { 15186 slidesAfter = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesAfter; 15187 slidesBefore = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesBefore; 15188 } else { 15189 slidesAfter = slidesPerView + (slidesPerGroup - 1) + addSlidesAfter; 15190 slidesBefore = slidesPerGroup + addSlidesBefore; 15191 } 15192 15193 const from = Math.max((activeIndex || 0) - slidesBefore, 0); 15194 const to = Math.min((activeIndex || 0) + slidesAfter, slides.length - 1); 15195 const offset = (swiper.slidesGrid[from] || 0) - (swiper.slidesGrid[0] || 0); 15196 Object.assign(swiper.virtual, { 15197 from, 15198 to, 15199 offset, 15200 slidesGrid: swiper.slidesGrid 15201 }); 15202 15203 function onRendered() { 15204 swiper.updateSlides(); 15205 swiper.updateProgress(); 15206 swiper.updateSlidesClasses(); 15207 15208 if (swiper.lazy && swiper.params.lazy.enabled) { 15209 swiper.lazy.load(); 15210 } 15211 } 15212 15213 if (previousFrom === from && previousTo === to && !force) { 15214 if (swiper.slidesGrid !== previousSlidesGrid && offset !== previousOffset) { 15215 swiper.slides.css(offsetProp, `${offset}px`); 15216 } 15217 15218 swiper.updateProgress(); 15219 return; 15220 } 15221 15222 if (swiper.params.virtual.renderExternal) { 15223 swiper.params.virtual.renderExternal.call(swiper, { 15224 offset, 15225 from, 15226 to, 15227 slides: function getSlides() { 15228 const slidesToRender = []; 15229 15230 for (let i = from; i <= to; i += 1) { 15231 slidesToRender.push(slides[i]); 15232 } 15233 15234 return slidesToRender; 15235 }() 15236 }); 15237 15238 if (swiper.params.virtual.renderExternalUpdate) { 15239 onRendered(); 15240 } 15241 15242 return; 15243 } 15244 15245 const prependIndexes = []; 15246 const appendIndexes = []; 15247 15248 if (force) { 15249 swiper.$wrapperEl.find(`.${swiper.params.slideClass}`).remove(); 15250 } else { 15251 for (let i = previousFrom; i <= previousTo; i += 1) { 15252 if (i < from || i > to) { 15253 swiper.$wrapperEl.find(`.${swiper.params.slideClass}[data-swiper-slide-index="${i}"]`).remove(); 15254 } 15255 } 15256 } 15257 15258 for (let i = 0; i < slides.length; i += 1) { 15259 if (i >= from && i <= to) { 15260 if (typeof previousTo === 'undefined' || force) { 15261 appendIndexes.push(i); 15262 } else { 15263 if (i > previousTo) appendIndexes.push(i); 15264 if (i < previousFrom) prependIndexes.push(i); 15265 } 15266 } 15267 } 15268 15269 appendIndexes.forEach(index => { 15270 swiper.$wrapperEl.append(renderSlide(slides[index], index)); 15271 }); 15272 prependIndexes.sort((a, b) => b - a).forEach(index => { 15273 swiper.$wrapperEl.prepend(renderSlide(slides[index], index)); 15274 }); 15275 swiper.$wrapperEl.children('.swiper-slide').css(offsetProp, `${offset}px`); 15276 onRendered(); 15277 } 15278 15279 function appendSlide(slides) { 15280 if (typeof slides === 'object' && 'length' in slides) { 15281 for (let i = 0; i < slides.length; i += 1) { 15282 if (slides[i]) swiper.virtual.slides.push(slides[i]); 15283 } 15284 } else { 15285 swiper.virtual.slides.push(slides); 15286 } 15287 15288 update(true); 15289 } 15290 15291 function prependSlide(slides) { 15292 const activeIndex = swiper.activeIndex; 15293 let newActiveIndex = activeIndex + 1; 15294 let numberOfNewSlides = 1; 15295 15296 if (Array.isArray(slides)) { 15297 for (let i = 0; i < slides.length; i += 1) { 15298 if (slides[i]) swiper.virtual.slides.unshift(slides[i]); 15299 } 15300 15301 newActiveIndex = activeIndex + slides.length; 15302 numberOfNewSlides = slides.length; 15303 } else { 15304 swiper.virtual.slides.unshift(slides); 15305 } 15306 15307 if (swiper.params.virtual.cache) { 15308 const cache = swiper.virtual.cache; 15309 const newCache = {}; 15310 Object.keys(cache).forEach(cachedIndex => { 15311 const $cachedEl = cache[cachedIndex]; 15312 const cachedElIndex = $cachedEl.attr('data-swiper-slide-index'); 15313 15314 if (cachedElIndex) { 15315 $cachedEl.attr('data-swiper-slide-index', parseInt(cachedElIndex, 10) + numberOfNewSlides); 15316 } 15317 15318 newCache[parseInt(cachedIndex, 10) + numberOfNewSlides] = $cachedEl; 15319 }); 15320 swiper.virtual.cache = newCache; 15321 } 15322 15323 update(true); 15324 swiper.slideTo(newActiveIndex, 0); 15325 } 15326 15327 function removeSlide(slidesIndexes) { 15328 if (typeof slidesIndexes === 'undefined' || slidesIndexes === null) return; 15329 let activeIndex = swiper.activeIndex; 15330 15331 if (Array.isArray(slidesIndexes)) { 15332 for (let i = slidesIndexes.length - 1; i >= 0; i -= 1) { 15333 swiper.virtual.slides.splice(slidesIndexes[i], 1); 15334 15335 if (swiper.params.virtual.cache) { 15336 delete swiper.virtual.cache[slidesIndexes[i]]; 15337 } 15338 15339 if (slidesIndexes[i] < activeIndex) activeIndex -= 1; 15340 activeIndex = Math.max(activeIndex, 0); 15341 } 15342 } else { 15343 swiper.virtual.slides.splice(slidesIndexes, 1); 15344 15345 if (swiper.params.virtual.cache) { 15346 delete swiper.virtual.cache[slidesIndexes]; 15347 } 15348 15349 if (slidesIndexes < activeIndex) activeIndex -= 1; 15350 activeIndex = Math.max(activeIndex, 0); 15351 } 15352 15353 update(true); 15354 swiper.slideTo(activeIndex, 0); 15355 } 15356 15357 function removeAllSlides() { 15358 swiper.virtual.slides = []; 15359 15360 if (swiper.params.virtual.cache) { 15361 swiper.virtual.cache = {}; 15362 } 15363 15364 update(true); 15365 swiper.slideTo(0, 0); 15366 } 15367 15368 on('beforeInit', () => { 15369 if (!swiper.params.virtual.enabled) return; 15370 swiper.virtual.slides = swiper.params.virtual.slides; 15371 swiper.classNames.push(`${swiper.params.containerModifierClass}virtual`); 15372 swiper.params.watchSlidesProgress = true; 15373 swiper.originalParams.watchSlidesProgress = true; 15374 15375 if (!swiper.params.initialSlide) { 15376 update(); 15377 } 15378 }); 15379 on('setTranslate', () => { 15380 if (!swiper.params.virtual.enabled) return; 15381 15382 if (swiper.params.cssMode && !swiper._immediateVirtual) { 15383 clearTimeout(cssModeTimeout); 15384 cssModeTimeout = setTimeout(() => { 15385 update(); 15386 }, 100); 15387 } else { 15388 update(); 15389 } 15390 }); 15391 on('init update resize', () => { 15392 if (!swiper.params.virtual.enabled) return; 15393 15394 if (swiper.params.cssMode) { 15395 (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_1__.setCSSProperty)(swiper.wrapperEl, '--swiper-virtual-size', `${swiper.virtualSize}px`); 15396 } 15397 }); 15398 Object.assign(swiper.virtual, { 15399 appendSlide, 15400 prependSlide, 15401 removeSlide, 15402 removeAllSlides, 15403 update 15404 }); 15405} 15406 15407/***/ }), 15408
vendor: 21,662 bytes, lines 15409-16037
15409/***/ "./node_modules/swiper/modules/zoom/zoom.js": 15410/*!**************************************************!*\ 15411 !*** ./node_modules/swiper/modules/zoom/zoom.js ***! 15412 \**************************************************/ 15413/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 15414 15415"use strict"; 15416__webpack_require__.r(__webpack_exports__); 15417/* harmony export */ __webpack_require__.d(__webpack_exports__, { 15418/* harmony export */ "default": () => (/* binding */ Zoom) 15419/* harmony export */ }); 15420/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 15421/* harmony import */ var _shared_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shared/dom.js */ "./node_modules/swiper/shared/dom.js"); 15422/* harmony import */ var _shared_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../shared/utils.js */ "./node_modules/swiper/shared/utils.js"); 15423 15424 15425 15426function Zoom({ 15427 swiper, 15428 extendParams, 15429 on, 15430 emit 15431}) { 15432 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 15433 extendParams({ 15434 zoom: { 15435 enabled: false, 15436 maxRatio: 3, 15437 minRatio: 1, 15438 toggle: true, 15439 containerClass: 'swiper-zoom-container', 15440 zoomedSlideClass: 'swiper-slide-zoomed' 15441 } 15442 }); 15443 swiper.zoom = { 15444 enabled: false 15445 }; 15446 let currentScale = 1; 15447 let isScaling = false; 15448 let gesturesEnabled; 15449 let fakeGestureTouched; 15450 let fakeGestureMoved; 15451 const gesture = { 15452 $slideEl: undefined, 15453 slideWidth: undefined, 15454 slideHeight: undefined, 15455 $imageEl: undefined, 15456 $imageWrapEl: undefined, 15457 maxRatio: 3 15458 }; 15459 const image = { 15460 isTouched: undefined, 15461 isMoved: undefined, 15462 currentX: undefined, 15463 currentY: undefined, 15464 minX: undefined, 15465 minY: undefined, 15466 maxX: undefined, 15467 maxY: undefined, 15468 width: undefined, 15469 height: undefined, 15470 startX: undefined, 15471 startY: undefined, 15472 touchesStart: {}, 15473 touchesCurrent: {} 15474 }; 15475 const velocity = { 15476 x: undefined, 15477 y: undefined, 15478 prevPositionX: undefined, 15479 prevPositionY: undefined, 15480 prevTime: undefined 15481 }; 15482 let scale = 1; 15483 Object.defineProperty(swiper.zoom, 'scale', { 15484 get() { 15485 return scale; 15486 }, 15487 15488 set(value) { 15489 if (scale !== value) { 15490 const imageEl = gesture.$imageEl ? gesture.$imageEl[0] : undefined; 15491 const slideEl = gesture.$slideEl ? gesture.$slideEl[0] : undefined; 15492 emit('zoomChange', value, imageEl, slideEl); 15493 } 15494 15495 scale = value; 15496 } 15497 15498 }); 15499 15500 function getDistanceBetweenTouches(e) { 15501 if (e.targetTouches.length < 2) return 1; 15502 const x1 = e.targetTouches[0].pageX; 15503 const y1 = e.targetTouches[0].pageY; 15504 const x2 = e.targetTouches[1].pageX; 15505 const y2 = e.targetTouches[1].pageY; 15506 const distance = Math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2); 15507 return distance; 15508 } // Events 15509 15510 15511 function onGestureStart(e) { 15512 const support = swiper.support; 15513 const params = swiper.params.zoom; 15514 fakeGestureTouched = false; 15515 fakeGestureMoved = false; 15516 15517 if (!support.gestures) { 15518 if (e.type !== 'touchstart' || e.type === 'touchstart' && e.targetTouches.length < 2) { 15519 return; 15520 } 15521 15522 fakeGestureTouched = true; 15523 gesture.scaleStart = getDistanceBetweenTouches(e); 15524 } 15525 15526 if (!gesture.$slideEl || !gesture.$slideEl.length) { 15527 gesture.$slideEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(e.target).closest(`.${swiper.params.slideClass}`); 15528 if (gesture.$slideEl.length === 0) gesture.$slideEl = swiper.slides.eq(swiper.activeIndex); 15529 gesture.$imageEl = gesture.$slideEl.find(`.${params.containerClass}`).eq(0).find('picture, img, svg, canvas, .swiper-zoom-target').eq(0); 15530 gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`); 15531 gesture.maxRatio = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio; 15532 15533 if (gesture.$imageWrapEl.length === 0) { 15534 gesture.$imageEl = undefined; 15535 return; 15536 } 15537 } 15538 15539 if (gesture.$imageEl) { 15540 gesture.$imageEl.transition(0); 15541 } 15542 15543 isScaling = true; 15544 } 15545 15546 function onGestureChange(e) { 15547 const support = swiper.support; 15548 const params = swiper.params.zoom; 15549 const zoom = swiper.zoom; 15550 15551 if (!support.gestures) { 15552 if (e.type !== 'touchmove' || e.type === 'touchmove' && e.targetTouches.length < 2) { 15553 return; 15554 } 15555 15556 fakeGestureMoved = true; 15557 gesture.scaleMove = getDistanceBetweenTouches(e); 15558 } 15559 15560 if (!gesture.$imageEl || gesture.$imageEl.length === 0) { 15561 if (e.type === 'gesturechange') onGestureStart(e); 15562 return; 15563 } 15564 15565 if (support.gestures) { 15566 zoom.scale = e.scale * currentScale; 15567 } else { 15568 zoom.scale = gesture.scaleMove / gesture.scaleStart * currentScale; 15569 } 15570 15571 if (zoom.scale > gesture.maxRatio) { 15572 zoom.scale = gesture.maxRatio - 1 + (zoom.scale - gesture.maxRatio + 1) ** 0.5; 15573 } 15574 15575 if (zoom.scale < params.minRatio) { 15576 zoom.scale = params.minRatio + 1 - (params.minRatio - zoom.scale + 1) ** 0.5; 15577 } 15578 15579 gesture.$imageEl.transform(`translate3d(0,0,0) scale(${zoom.scale})`); 15580 } 15581 15582 function onGestureEnd(e) { 15583 const device = swiper.device; 15584 const support = swiper.support; 15585 const params = swiper.params.zoom; 15586 const zoom = swiper.zoom; 15587 15588 if (!support.gestures) { 15589 if (!fakeGestureTouched || !fakeGestureMoved) { 15590 return; 15591 } 15592 15593 if (e.type !== 'touchend' || e.type === 'touchend' && e.changedTouches.length < 2 && !device.android) { 15594 return; 15595 } 15596 15597 fakeGestureTouched = false; 15598 fakeGestureMoved = false; 15599 } 15600 15601 if (!gesture.$imageEl || gesture.$imageEl.length === 0) return; 15602 zoom.scale = Math.max(Math.min(zoom.scale, gesture.maxRatio), params.minRatio); 15603 gesture.$imageEl.transition(swiper.params.speed).transform(`translate3d(0,0,0) scale(${zoom.scale})`); 15604 currentScale = zoom.scale; 15605 isScaling = false; 15606 if (zoom.scale === 1) gesture.$slideEl = undefined; 15607 } 15608 15609 function onTouchStart(e) { 15610 const device = swiper.device; 15611 if (!gesture.$imageEl || gesture.$imageEl.length === 0) return; 15612 if (image.isTouched) return; 15613 if (device.android && e.cancelable) e.preventDefault(); 15614 image.isTouched = true; 15615 image.touchesStart.x = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX; 15616 image.touchesStart.y = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY; 15617 } 15618 15619 function onTouchMove(e) { 15620 const zoom = swiper.zoom; 15621 if (!gesture.$imageEl || gesture.$imageEl.length === 0) return; 15622 swiper.allowClick = false; 15623 if (!image.isTouched || !gesture.$slideEl) return; 15624 15625 if (!image.isMoved) { 15626 image.width = gesture.$imageEl[0].offsetWidth; 15627 image.height = gesture.$imageEl[0].offsetHeight; 15628 image.startX = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.getTranslate)(gesture.$imageWrapEl[0], 'x') || 0; 15629 image.startY = (0,_shared_utils_js__WEBPACK_IMPORTED_MODULE_2__.getTranslate)(gesture.$imageWrapEl[0], 'y') || 0; 15630 gesture.slideWidth = gesture.$slideEl[0].offsetWidth; 15631 gesture.slideHeight = gesture.$slideEl[0].offsetHeight; 15632 gesture.$imageWrapEl.transition(0); 15633 } // Define if we need image drag 15634 15635 15636 const scaledWidth = image.width * zoom.scale; 15637 const scaledHeight = image.height * zoom.scale; 15638 if (scaledWidth < gesture.slideWidth && scaledHeight < gesture.slideHeight) return; 15639 image.minX = Math.min(gesture.slideWidth / 2 - scaledWidth / 2, 0); 15640 image.maxX = -image.minX; 15641 image.minY = Math.min(gesture.slideHeight / 2 - scaledHeight / 2, 0); 15642 image.maxY = -image.minY; 15643 image.touchesCurrent.x = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX; 15644 image.touchesCurrent.y = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY; 15645 15646 if (!image.isMoved && !isScaling) { 15647 if (swiper.isHorizontal() && (Math.floor(image.minX) === Math.floor(image.startX) && image.touchesCurrent.x < image.touchesStart.x || Math.floor(image.maxX) === Math.floor(image.startX) && image.touchesCurrent.x > image.touchesStart.x)) { 15648 image.isTouched = false; 15649 return; 15650 } 15651 15652 if (!swiper.isHorizontal() && (Math.floor(image.minY) === Math.floor(image.startY) && image.touchesCurrent.y < image.touchesStart.y || Math.floor(image.maxY) === Math.floor(image.startY) && image.touchesCurrent.y > image.touchesStart.y)) { 15653 image.isTouched = false; 15654 return; 15655 } 15656 } 15657 15658 if (e.cancelable) { 15659 e.preventDefault(); 15660 } 15661 15662 e.stopPropagation(); 15663 image.isMoved = true; 15664 image.currentX = image.touchesCurrent.x - image.touchesStart.x + image.startX; 15665 image.currentY = image.touchesCurrent.y - image.touchesStart.y + image.startY; 15666 15667 if (image.currentX < image.minX) { 15668 image.currentX = image.minX + 1 - (image.minX - image.currentX + 1) ** 0.8; 15669 } 15670 15671 if (image.currentX > image.maxX) { 15672 image.currentX = image.maxX - 1 + (image.currentX - image.maxX + 1) ** 0.8; 15673 } 15674 15675 if (image.currentY < image.minY) { 15676 image.currentY = image.minY + 1 - (image.minY - image.currentY + 1) ** 0.8; 15677 } 15678 15679 if (image.currentY > image.maxY) { 15680 image.currentY = image.maxY - 1 + (image.currentY - image.maxY + 1) ** 0.8; 15681 } // Velocity 15682 15683 15684 if (!velocity.prevPositionX) velocity.prevPositionX = image.touchesCurrent.x; 15685 if (!velocity.prevPositionY) velocity.prevPositionY = image.touchesCurrent.y; 15686 if (!velocity.prevTime) velocity.prevTime = Date.now(); 15687 velocity.x = (image.touchesCurrent.x - velocity.prevPositionX) / (Date.now() - velocity.prevTime) / 2; 15688 velocity.y = (image.touchesCurrent.y - velocity.prevPositionY) / (Date.now() - velocity.prevTime) / 2; 15689 if (Math.abs(image.touchesCurrent.x - velocity.prevPositionX) < 2) velocity.x = 0; 15690 if (Math.abs(image.touchesCurrent.y - velocity.prevPositionY) < 2) velocity.y = 0; 15691 velocity.prevPositionX = image.touchesCurrent.x; 15692 velocity.prevPositionY = image.touchesCurrent.y; 15693 velocity.prevTime = Date.now(); 15694 gesture.$imageWrapEl.transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`); 15695 } 15696 15697 function onTouchEnd() { 15698 const zoom = swiper.zoom; 15699 if (!gesture.$imageEl || gesture.$imageEl.length === 0) return; 15700 15701 if (!image.isTouched || !image.isMoved) { 15702 image.isTouched = false; 15703 image.isMoved = false; 15704 return; 15705 } 15706 15707 image.isTouched = false; 15708 image.isMoved = false; 15709 let momentumDurationX = 300; 15710 let momentumDurationY = 300; 15711 const momentumDistanceX = velocity.x * momentumDurationX; 15712 const newPositionX = image.currentX + momentumDistanceX; 15713 const momentumDistanceY = velocity.y * momentumDurationY; 15714 const newPositionY = image.currentY + momentumDistanceY; // Fix duration 15715 15716 if (velocity.x !== 0) momentumDurationX = Math.abs((newPositionX - image.currentX) / velocity.x); 15717 if (velocity.y !== 0) momentumDurationY = Math.abs((newPositionY - image.currentY) / velocity.y); 15718 const momentumDuration = Math.max(momentumDurationX, momentumDurationY); 15719 image.currentX = newPositionX; 15720 image.currentY = newPositionY; // Define if we need image drag 15721 15722 const scaledWidth = image.width * zoom.scale; 15723 const scaledHeight = image.height * zoom.scale; 15724 image.minX = Math.min(gesture.slideWidth / 2 - scaledWidth / 2, 0); 15725 image.maxX = -image.minX; 15726 image.minY = Math.min(gesture.slideHeight / 2 - scaledHeight / 2, 0); 15727 image.maxY = -image.minY; 15728 image.currentX = Math.max(Math.min(image.currentX, image.maxX), image.minX); 15729 image.currentY = Math.max(Math.min(image.currentY, image.maxY), image.minY); 15730 gesture.$imageWrapEl.transition(momentumDuration).transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`); 15731 } 15732 15733 function onTransitionEnd() { 15734 const zoom = swiper.zoom; 15735 15736 if (gesture.$slideEl && swiper.previousIndex !== swiper.activeIndex) { 15737 if (gesture.$imageEl) { 15738 gesture.$imageEl.transform('translate3d(0,0,0) scale(1)'); 15739 } 15740 15741 if (gesture.$imageWrapEl) { 15742 gesture.$imageWrapEl.transform('translate3d(0,0,0)'); 15743 } 15744 15745 zoom.scale = 1; 15746 currentScale = 1; 15747 gesture.$slideEl = undefined; 15748 gesture.$imageEl = undefined; 15749 gesture.$imageWrapEl = undefined; 15750 } 15751 } 15752 15753 function zoomIn(e) { 15754 const zoom = swiper.zoom; 15755 const params = swiper.params.zoom; 15756 15757 if (!gesture.$slideEl) { 15758 if (e && e.target) { 15759 gesture.$slideEl = (0,_shared_dom_js__WEBPACK_IMPORTED_MODULE_1__["default"])(e.target).closest(`.${swiper.params.slideClass}`); 15760 } 15761 15762 if (!gesture.$slideEl) { 15763 if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) { 15764 gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`); 15765 } else { 15766 gesture.$slideEl = swiper.slides.eq(swiper.activeIndex); 15767 } 15768 } 15769 15770 gesture.$imageEl = gesture.$slideEl.find(`.${params.containerClass}`).eq(0).find('picture, img, svg, canvas, .swiper-zoom-target').eq(0); 15771 gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`); 15772 } 15773 15774 if (!gesture.$imageEl || gesture.$imageEl.length === 0 || !gesture.$imageWrapEl || gesture.$imageWrapEl.length === 0) return; 15775 15776 if (swiper.params.cssMode) { 15777 swiper.wrapperEl.style.overflow = 'hidden'; 15778 swiper.wrapperEl.style.touchAction = 'none'; 15779 } 15780 15781 gesture.$slideEl.addClass(`${params.zoomedSlideClass}`); 15782 let touchX; 15783 let touchY; 15784 let offsetX; 15785 let offsetY; 15786 let diffX; 15787 let diffY; 15788 let translateX; 15789 let translateY; 15790 let imageWidth; 15791 let imageHeight; 15792 let scaledWidth; 15793 let scaledHeight; 15794 let translateMinX; 15795 let translateMinY; 15796 let translateMaxX; 15797 let translateMaxY; 15798 let slideWidth; 15799 let slideHeight; 15800 15801 if (typeof image.touchesStart.x === 'undefined' && e) { 15802 touchX = e.type === 'touchend' ? e.changedTouches[0].pageX : e.pageX; 15803 touchY = e.type === 'touchend' ? e.changedTouches[0].pageY : e.pageY; 15804 } else { 15805 touchX = image.touchesStart.x; 15806 touchY = image.touchesStart.y; 15807 } 15808 15809 zoom.scale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio; 15810 currentScale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio; 15811 15812 if (e) { 15813 slideWidth = gesture.$slideEl[0].offsetWidth; 15814 slideHeight = gesture.$slideEl[0].offsetHeight; 15815 offsetX = gesture.$slideEl.offset().left + window.scrollX; 15816 offsetY = gesture.$slideEl.offset().top + window.scrollY; 15817 diffX = offsetX + slideWidth / 2 - touchX; 15818 diffY = offsetY + slideHeight / 2 - touchY; 15819 imageWidth = gesture.$imageEl[0].offsetWidth; 15820 imageHeight = gesture.$imageEl[0].offsetHeight; 15821 scaledWidth = imageWidth * zoom.scale; 15822 scaledHeight = imageHeight * zoom.scale; 15823 translateMinX = Math.min(slideWidth / 2 - scaledWidth / 2, 0); 15824 translateMinY = Math.min(slideHeight / 2 - scaledHeight / 2, 0); 15825 translateMaxX = -translateMinX; 15826 translateMaxY = -translateMinY; 15827 translateX = diffX * zoom.scale; 15828 translateY = diffY * zoom.scale; 15829 15830 if (translateX < translateMinX) { 15831 translateX = translateMinX; 15832 } 15833 15834 if (translateX > translateMaxX) { 15835 translateX = translateMaxX; 15836 } 15837 15838 if (translateY < translateMinY) { 15839 translateY = translateMinY; 15840 } 15841 15842 if (translateY > translateMaxY) { 15843 translateY = translateMaxY; 15844 } 15845 } else { 15846 translateX = 0; 15847 translateY = 0; 15848 } 15849 15850 gesture.$imageWrapEl.transition(300).transform(`translate3d(${translateX}px, ${translateY}px,0)`); 15851 gesture.$imageEl.transition(300).transform(`translate3d(0,0,0) scale(${zoom.scale})`); 15852 } 15853 15854 function zoomOut() { 15855 const zoom = swiper.zoom; 15856 const params = swiper.params.zoom; 15857 15858 if (!gesture.$slideEl) { 15859 if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) { 15860 gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`); 15861 } else { 15862 gesture.$slideEl = swiper.slides.eq(swiper.activeIndex); 15863 } 15864 15865 gesture.$imageEl = gesture.$slideEl.find(`.${params.containerClass}`).eq(0).find('picture, img, svg, canvas, .swiper-zoom-target').eq(0); 15866 gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`); 15867 } 15868 15869 if (!gesture.$imageEl || gesture.$imageEl.length === 0 || !gesture.$imageWrapEl || gesture.$imageWrapEl.length === 0) return; 15870 15871 if (swiper.params.cssMode) { 15872 swiper.wrapperEl.style.overflow = ''; 15873 swiper.wrapperEl.style.touchAction = ''; 15874 } 15875 15876 zoom.scale = 1; 15877 currentScale = 1; 15878 gesture.$imageWrapEl.transition(300).transform('translate3d(0,0,0)'); 15879 gesture.$imageEl.transition(300).transform('translate3d(0,0,0) scale(1)'); 15880 gesture.$slideEl.removeClass(`${params.zoomedSlideClass}`); 15881 gesture.$slideEl = undefined; 15882 } // Toggle Zoom 15883 15884 15885 function zoomToggle(e) { 15886 const zoom = swiper.zoom; 15887 15888 if (zoom.scale && zoom.scale !== 1) { 15889 // Zoom Out 15890 zoomOut(); 15891 } else { 15892 // Zoom In 15893 zoomIn(e); 15894 } 15895 } 15896 15897 function getListeners() { 15898 const support = swiper.support; 15899 const passiveListener = swiper.touchEvents.start === 'touchstart' && support.passiveListener && swiper.params.passiveListeners ? { 15900 passive: true, 15901 capture: false 15902 } : false; 15903 const activeListenerWithCapture = support.passiveListener ? { 15904 passive: false, 15905 capture: true 15906 } : true; 15907 return { 15908 passiveListener, 15909 activeListenerWithCapture 15910 }; 15911 } 15912 15913 function getSlideSelector() { 15914 return `.${swiper.params.slideClass}`; 15915 } 15916 15917 function toggleGestures(method) { 15918 const { 15919 passiveListener 15920 } = getListeners(); 15921 const slideSelector = getSlideSelector(); 15922 swiper.$wrapperEl[method]('gesturestart', slideSelector, onGestureStart, passiveListener); 15923 swiper.$wrapperEl[method]('gesturechange', slideSelector, onGestureChange, passiveListener); 15924 swiper.$wrapperEl[method]('gestureend', slideSelector, onGestureEnd, passiveListener); 15925 } 15926 15927 function enableGestures() { 15928 if (gesturesEnabled) return; 15929 gesturesEnabled = true; 15930 toggleGestures('on'); 15931 } 15932 15933 function disableGestures() { 15934 if (!gesturesEnabled) return; 15935 gesturesEnabled = false; 15936 toggleGestures('off'); 15937 } // Attach/Detach Events 15938 15939 15940 function enable() { 15941 const zoom = swiper.zoom; 15942 if (zoom.enabled) return; 15943 zoom.enabled = true; 15944 const support = swiper.support; 15945 const { 15946 passiveListener, 15947 activeListenerWithCapture 15948 } = getListeners(); 15949 const slideSelector = getSlideSelector(); // Scale image 15950 15951 if (support.gestures) { 15952 swiper.$wrapperEl.on(swiper.touchEvents.start, enableGestures, passiveListener); 15953 swiper.$wrapperEl.on(swiper.touchEvents.end, disableGestures, passiveListener); 15954 } else if (swiper.touchEvents.start === 'touchstart') { 15955 swiper.$wrapperEl.on(swiper.touchEvents.start, slideSelector, onGestureStart, passiveListener); 15956 swiper.$wrapperEl.on(swiper.touchEvents.move, slideSelector, onGestureChange, activeListenerWithCapture); 15957 swiper.$wrapperEl.on(swiper.touchEvents.end, slideSelector, onGestureEnd, passiveListener); 15958 15959 if (swiper.touchEvents.cancel) { 15960 swiper.$wrapperEl.on(swiper.touchEvents.cancel, slideSelector, onGestureEnd, passiveListener); 15961 } 15962 } // Move image 15963 15964 15965 swiper.$wrapperEl.on(swiper.touchEvents.move, `.${swiper.params.zoom.containerClass}`, onTouchMove, activeListenerWithCapture); 15966 } 15967 15968 function disable() { 15969 const zoom = swiper.zoom; 15970 if (!zoom.enabled) return; 15971 const support = swiper.support; 15972 zoom.enabled = false; 15973 const { 15974 passiveListener, 15975 activeListenerWithCapture 15976 } = getListeners(); 15977 const slideSelector = getSlideSelector(); // Scale image 15978 15979 if (support.gestures) { 15980 swiper.$wrapperEl.off(swiper.touchEvents.start, enableGestures, passiveListener); 15981 swiper.$wrapperEl.off(swiper.touchEvents.end, disableGestures, passiveListener); 15982 } else if (swiper.touchEvents.start === 'touchstart') { 15983 swiper.$wrapperEl.off(swiper.touchEvents.start, slideSelector, onGestureStart, passiveListener); 15984 swiper.$wrapperEl.off(swiper.touchEvents.move, slideSelector, onGestureChange, activeListenerWithCapture); 15985 swiper.$wrapperEl.off(swiper.touchEvents.end, slideSelector, onGestureEnd, passiveListener); 15986 15987 if (swiper.touchEvents.cancel) { 15988 swiper.$wrapperEl.off(swiper.touchEvents.cancel, slideSelector, onGestureEnd, passiveListener); 15989 } 15990 } // Move image 15991 15992 15993 swiper.$wrapperEl.off(swiper.touchEvents.move, `.${swiper.params.zoom.containerClass}`, onTouchMove, activeListenerWithCapture); 15994 } 15995 15996 on('init', () => { 15997 if (swiper.params.zoom.enabled) { 15998 enable(); 15999 } 16000 }); 16001 on('destroy', () => { 16002 disable(); 16003 }); 16004 on('touchStart', (_s, e) => { 16005 if (!swiper.zoom.enabled) return; 16006 onTouchStart(e); 16007 }); 16008 on('touchEnd', (_s, e) => { 16009 if (!swiper.zoom.enabled) return; 16010 onTouchEnd(e); 16011 }); 16012 on('doubleTap', (_s, e) => { 16013 if (!swiper.animating && swiper.params.zoom.enabled && swiper.zoom.enabled && swiper.params.zoom.toggle) { 16014 zoomToggle(e); 16015 } 16016 }); 16017 on('transitionEnd', () => { 16018 if (swiper.zoom.enabled && swiper.params.zoom.enabled) { 16019 onTransitionEnd(); 16020 } 16021 }); 16022 on('slideChange', () => { 16023 if (swiper.zoom.enabled && swiper.params.zoom.enabled && swiper.params.cssMode) { 16024 onTransitionEnd(); 16025 } 16026 }); 16027 Object.assign(swiper.zoom, { 16028 enable, 16029 disable, 16030 in: zoomIn, 16031 out: zoomOut, 16032 toggle: zoomToggle 16033 }); 16034} 16035 16036/***/ }), 16037
vendor: 735 bytes, lines 16038-16055
16038/***/ "./node_modules/swiper/shared/classes-to-selector.js": 16039/*!***********************************************************!*\ 16040 !*** ./node_modules/swiper/shared/classes-to-selector.js ***! 16041 \***********************************************************/ 16042/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16043 16044"use strict"; 16045__webpack_require__.r(__webpack_exports__); 16046/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16047/* harmony export */ "default": () => (/* binding */ classesToSelector) 16048/* harmony export */ }); 16049function classesToSelector(classes = '') { 16050 return `.${classes.trim().replace(/([\.:!\/])/g, '\\$1') // eslint-disable-line 16051 .replace(/ /g, '.')}`; 16052} 16053 16054/***/ }), 16055
vendor: 1,429 bytes, lines 16056-16093
16056/***/ "./node_modules/swiper/shared/create-element-if-not-defined.js": 16057/*!*********************************************************************!*\ 16058 !*** ./node_modules/swiper/shared/create-element-if-not-defined.js ***! 16059 \*********************************************************************/ 16060/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16061 16062"use strict"; 16063__webpack_require__.r(__webpack_exports__); 16064/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16065/* harmony export */ "default": () => (/* binding */ createElementIfNotDefined) 16066/* harmony export */ }); 16067/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 16068 16069function createElementIfNotDefined(swiper, originalParams, params, checkProps) { 16070 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 16071 16072 if (swiper.params.createElements) { 16073 Object.keys(checkProps).forEach(key => { 16074 if (!params[key] && params.auto === true) { 16075 let element = swiper.$el.children(`.${checkProps[key]}`)[0]; 16076 16077 if (!element) { 16078 element = document.createElement('div'); 16079 element.className = checkProps[key]; 16080 swiper.$el.append(element); 16081 } 16082 16083 params[key] = element; 16084 originalParams[key] = element; 16085 } 16086 }); 16087 } 16088 16089 return params; 16090} 16091 16092/***/ }), 16093
vendor: 1,203 bytes, lines 16094-16121
16094/***/ "./node_modules/swiper/shared/create-shadow.js": 16095/*!*****************************************************!*\ 16096 !*** ./node_modules/swiper/shared/create-shadow.js ***! 16097 \*****************************************************/ 16098/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16099 16100"use strict"; 16101__webpack_require__.r(__webpack_exports__); 16102/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16103/* harmony export */ "default": () => (/* binding */ createShadow) 16104/* harmony export */ }); 16105/* harmony import */ var _dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./dom.js */ "./node_modules/swiper/shared/dom.js"); 16106 16107function createShadow(params, $slideEl, side) { 16108 const shadowClass = `swiper-slide-shadow${side ? `-${side}` : ''}`; 16109 const $shadowContainer = params.transformEl ? $slideEl.find(params.transformEl) : $slideEl; 16110 let $shadowEl = $shadowContainer.children(`.${shadowClass}`); 16111 16112 if (!$shadowEl.length) { 16113 $shadowEl = (0,_dom_js__WEBPACK_IMPORTED_MODULE_0__["default"])(`<div class="swiper-slide-shadow${side ? `-${side}` : ''}"></div>`); 16114 $shadowContainer.append($shadowEl); 16115 } 16116 16117 return $shadowEl; 16118} 16119 16120/***/ }), 16121
vendor: 2,855 bytes, lines 16122-16182
16122/***/ "./node_modules/swiper/shared/dom.js": 16123/*!*******************************************!*\ 16124 !*** ./node_modules/swiper/shared/dom.js ***! 16125 \*******************************************/ 16126/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16127 16128"use strict"; 16129__webpack_require__.r(__webpack_exports__); 16130/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16131/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 16132/* harmony export */ }); 16133/* harmony import */ var dom7__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! dom7 */ "./node_modules/dom7/dom7.esm.js"); 16134 16135const Methods = { 16136 addClass: dom7__WEBPACK_IMPORTED_MODULE_0__.addClass, 16137 removeClass: dom7__WEBPACK_IMPORTED_MODULE_0__.removeClass, 16138 hasClass: dom7__WEBPACK_IMPORTED_MODULE_0__.hasClass, 16139 toggleClass: dom7__WEBPACK_IMPORTED_MODULE_0__.toggleClass, 16140 attr: dom7__WEBPACK_IMPORTED_MODULE_0__.attr, 16141 removeAttr: dom7__WEBPACK_IMPORTED_MODULE_0__.removeAttr, 16142 transform: dom7__WEBPACK_IMPORTED_MODULE_0__.transform, 16143 transition: dom7__WEBPACK_IMPORTED_MODULE_0__.transition, 16144 on: dom7__WEBPACK_IMPORTED_MODULE_0__.on, 16145 off: dom7__WEBPACK_IMPORTED_MODULE_0__.off, 16146 trigger: dom7__WEBPACK_IMPORTED_MODULE_0__.trigger, 16147 transitionEnd: dom7__WEBPACK_IMPORTED_MODULE_0__.transitionEnd, 16148 outerWidth: dom7__WEBPACK_IMPORTED_MODULE_0__.outerWidth, 16149 outerHeight: dom7__WEBPACK_IMPORTED_MODULE_0__.outerHeight, 16150 styles: dom7__WEBPACK_IMPORTED_MODULE_0__.styles, 16151 offset: dom7__WEBPACK_IMPORTED_MODULE_0__.offset, 16152 css: dom7__WEBPACK_IMPORTED_MODULE_0__.css, 16153 each: dom7__WEBPACK_IMPORTED_MODULE_0__.each, 16154 html: dom7__WEBPACK_IMPORTED_MODULE_0__.html, 16155 text: dom7__WEBPACK_IMPORTED_MODULE_0__.text, 16156 is: dom7__WEBPACK_IMPORTED_MODULE_0__.is, 16157 index: dom7__WEBPACK_IMPORTED_MODULE_0__.index, 16158 eq: dom7__WEBPACK_IMPORTED_MODULE_0__.eq, 16159 append: dom7__WEBPACK_IMPORTED_MODULE_0__.append, 16160 prepend: dom7__WEBPACK_IMPORTED_MODULE_0__.prepend, 16161 next: dom7__WEBPACK_IMPORTED_MODULE_0__.next, 16162 nextAll: dom7__WEBPACK_IMPORTED_MODULE_0__.nextAll, 16163 prev: dom7__WEBPACK_IMPORTED_MODULE_0__.prev, 16164 prevAll: dom7__WEBPACK_IMPORTED_MODULE_0__.prevAll, 16165 parent: dom7__WEBPACK_IMPORTED_MODULE_0__.parent, 16166 parents: dom7__WEBPACK_IMPORTED_MODULE_0__.parents, 16167 closest: dom7__WEBPACK_IMPORTED_MODULE_0__.closest, 16168 find: dom7__WEBPACK_IMPORTED_MODULE_0__.find, 16169 children: dom7__WEBPACK_IMPORTED_MODULE_0__.children, 16170 filter: dom7__WEBPACK_IMPORTED_MODULE_0__.filter, 16171 remove: dom7__WEBPACK_IMPORTED_MODULE_0__.remove 16172}; 16173Object.keys(Methods).forEach(methodName => { 16174 Object.defineProperty(dom7__WEBPACK_IMPORTED_MODULE_0__.$.fn, methodName, { 16175 value: Methods[methodName], 16176 writable: true 16177 }); 16178}); 16179/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (dom7__WEBPACK_IMPORTED_MODULE_0__.$); 16180 16181/***/ }), 16182
vendor: 1,419 bytes, lines 16183-16227
16183/***/ "./node_modules/swiper/shared/effect-init.js": 16184/*!***************************************************!*\ 16185 !*** ./node_modules/swiper/shared/effect-init.js ***! 16186 \***************************************************/ 16187/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16188 16189"use strict"; 16190__webpack_require__.r(__webpack_exports__); 16191/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16192/* harmony export */ "default": () => (/* binding */ effectInit) 16193/* harmony export */ }); 16194function effectInit(params) { 16195 const { 16196 effect, 16197 swiper, 16198 on, 16199 setTranslate, 16200 setTransition, 16201 overwriteParams, 16202 perspective 16203 } = params; 16204 on('beforeInit', () => { 16205 if (swiper.params.effect !== effect) return; 16206 swiper.classNames.push(`${swiper.params.containerModifierClass}${effect}`); 16207 16208 if (perspective && perspective()) { 16209 swiper.classNames.push(`${swiper.params.containerModifierClass}3d`); 16210 } 16211 16212 const overwriteParamsResult = overwriteParams ? overwriteParams() : {}; 16213 Object.assign(swiper.params, overwriteParamsResult); 16214 Object.assign(swiper.originalParams, overwriteParamsResult); 16215 }); 16216 on('setTranslate', () => { 16217 if (swiper.params.effect !== effect) return; 16218 setTranslate(); 16219 }); 16220 on('setTransition', (_s, duration) => { 16221 if (swiper.params.effect !== effect) return; 16222 setTransition(duration); 16223 }); 16224} 16225 16226/***/ }), 16227
vendor: 812 bytes, lines 16228-16251
16228/***/ "./node_modules/swiper/shared/effect-target.js": 16229/*!*****************************************************!*\ 16230 !*** ./node_modules/swiper/shared/effect-target.js ***! 16231 \*****************************************************/ 16232/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16233 16234"use strict"; 16235__webpack_require__.r(__webpack_exports__); 16236/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16237/* harmony export */ "default": () => (/* binding */ effectTarget) 16238/* harmony export */ }); 16239function effectTarget(effectParams, $slideEl) { 16240 if (effectParams.transformEl) { 16241 return $slideEl.find(effectParams.transformEl).css({ 16242 'backface-visibility': 'hidden', 16243 '-webkit-backface-visibility': 'hidden' 16244 }); 16245 } 16246 16247 return $slideEl; 16248} 16249 16250/***/ }), 16251
vendor: 1,529 bytes, lines 16252-16300
16252/***/ "./node_modules/swiper/shared/effect-virtual-transition-end.js": 16253/*!*********************************************************************!*\ 16254 !*** ./node_modules/swiper/shared/effect-virtual-transition-end.js ***! 16255 \*********************************************************************/ 16256/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16257 16258"use strict"; 16259__webpack_require__.r(__webpack_exports__); 16260/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16261/* harmony export */ "default": () => (/* binding */ effectVirtualTransitionEnd) 16262/* harmony export */ }); 16263function effectVirtualTransitionEnd({ 16264 swiper, 16265 duration, 16266 transformEl, 16267 allSlides 16268}) { 16269 const { 16270 slides, 16271 activeIndex, 16272 $wrapperEl 16273 } = swiper; 16274 16275 if (swiper.params.virtualTranslate && duration !== 0) { 16276 let eventTriggered = false; 16277 let $transitionEndTarget; 16278 16279 if (allSlides) { 16280 $transitionEndTarget = transformEl ? slides.find(transformEl) : slides; 16281 } else { 16282 $transitionEndTarget = transformEl ? slides.eq(activeIndex).find(transformEl) : slides.eq(activeIndex); 16283 } 16284 16285 $transitionEndTarget.transitionEnd(() => { 16286 if (eventTriggered) return; 16287 if (!swiper || swiper.destroyed) return; 16288 eventTriggered = true; 16289 swiper.animating = false; 16290 const triggerEvents = ['webkitTransitionEnd', 'transitionend']; 16291 16292 for (let i = 0; i < triggerEvents.length; i += 1) { 16293 $wrapperEl.trigger(triggerEvents[i]); 16294 } 16295 }); 16296 } 16297} 16298 16299/***/ }), 16300
vendor: 1,234 bytes, lines 16301-16341
16301/***/ "./node_modules/swiper/shared/get-browser.js": 16302/*!***************************************************!*\ 16303 !*** ./node_modules/swiper/shared/get-browser.js ***! 16304 \***************************************************/ 16305/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16306 16307"use strict"; 16308__webpack_require__.r(__webpack_exports__); 16309/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16310/* harmony export */ "getBrowser": () => (/* binding */ getBrowser) 16311/* harmony export */ }); 16312/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 16313 16314let browser; 16315 16316function calcBrowser() { 16317 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 16318 16319 function isSafari() { 16320 const ua = window.navigator.userAgent.toLowerCase(); 16321 return ua.indexOf('safari') >= 0 && ua.indexOf('chrome') < 0 && ua.indexOf('android') < 0; 16322 } 16323 16324 return { 16325 isSafari: isSafari(), 16326 isWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(window.navigator.userAgent) 16327 }; 16328} 16329 16330function getBrowser() { 16331 if (!browser) { 16332 browser = calcBrowser(); 16333 } 16334 16335 return browser; 16336} 16337 16338 16339 16340/***/ }), 16341
vendor: 2,407 bytes, lines 16342-16414
16342/***/ "./node_modules/swiper/shared/get-device.js": 16343/*!**************************************************!*\ 16344 !*** ./node_modules/swiper/shared/get-device.js ***! 16345 \**************************************************/ 16346/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16347 16348"use strict"; 16349__webpack_require__.r(__webpack_exports__); 16350/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16351/* harmony export */ "getDevice": () => (/* binding */ getDevice) 16352/* harmony export */ }); 16353/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 16354/* harmony import */ var _get_support_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./get-support.js */ "./node_modules/swiper/shared/get-support.js"); 16355 16356 16357let deviceCached; 16358 16359function calcDevice({ 16360 userAgent 16361} = {}) { 16362 const support = (0,_get_support_js__WEBPACK_IMPORTED_MODULE_1__.getSupport)(); 16363 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 16364 const platform = window.navigator.platform; 16365 const ua = userAgent || window.navigator.userAgent; 16366 const device = { 16367 ios: false, 16368 android: false 16369 }; 16370 const screenWidth = window.screen.width; 16371 const screenHeight = window.screen.height; 16372 const android = ua.match(/(Android);?[\s\/]+([\d.]+)?/); // eslint-disable-line 16373 16374 let ipad = ua.match(/(iPad).*OS\s([\d_]+)/); 16375 const ipod = ua.match(/(iPod)(.*OS\s([\d_]+))?/); 16376 const iphone = !ipad && ua.match(/(iPhone\sOS|iOS)\s([\d_]+)/); 16377 const windows = platform === 'Win32'; 16378 let macos = platform === 'MacIntel'; // iPadOs 13 fix 16379 16380 const iPadScreens = ['1024x1366', '1366x1024', '834x1194', '1194x834', '834x1112', '1112x834', '768x1024', '1024x768', '820x1180', '1180x820', '810x1080', '1080x810']; 16381 16382 if (!ipad && macos && support.touch && iPadScreens.indexOf(`${screenWidth}x${screenHeight}`) >= 0) { 16383 ipad = ua.match(/(Version)\/([\d.]+)/); 16384 if (!ipad) ipad = [0, 1, '13_0_0']; 16385 macos = false; 16386 } // Android 16387 16388 16389 if (android && !windows) { 16390 device.os = 'android'; 16391 device.android = true; 16392 } 16393 16394 if (ipad || iphone || ipod) { 16395 device.os = 'ios'; 16396 device.ios = true; 16397 } // Export object 16398 16399 16400 return device; 16401} 16402 16403function getDevice(overrides = {}) { 16404 if (!deviceCached) { 16405 deviceCached = calcDevice(overrides); 16406 } 16407 16408 return deviceCached; 16409} 16410 16411 16412 16413/***/ }), 16414
vendor: 1,735 bytes, lines 16415-16470
16415/***/ "./node_modules/swiper/shared/get-support.js": 16416/*!***************************************************!*\ 16417 !*** ./node_modules/swiper/shared/get-support.js ***! 16418 \***************************************************/ 16419/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16420 16421"use strict"; 16422__webpack_require__.r(__webpack_exports__); 16423/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16424/* harmony export */ "getSupport": () => (/* binding */ getSupport) 16425/* harmony export */ }); 16426/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 16427 16428let support; 16429 16430function calcSupport() { 16431 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 16432 const document = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getDocument)(); 16433 return { 16434 smoothScroll: document.documentElement && 'scrollBehavior' in document.documentElement.style, 16435 touch: !!('ontouchstart' in window || window.DocumentTouch && document instanceof window.DocumentTouch), 16436 passiveListener: function checkPassiveListener() { 16437 let supportsPassive = false; 16438 16439 try { 16440 const opts = Object.defineProperty({}, 'passive', { 16441 // eslint-disable-next-line 16442 get() { 16443 supportsPassive = true; 16444 } 16445 16446 }); 16447 window.addEventListener('testPassiveListener', null, opts); 16448 } catch (e) {// No support 16449 } 16450 16451 return supportsPassive; 16452 }(), 16453 gestures: function checkGestures() { 16454 return 'ongesturestart' in window; 16455 }() 16456 }; 16457} 16458 16459function getSupport() { 16460 if (!support) { 16461 support = calcSupport(); 16462 } 16463 16464 return support; 16465} 16466 16467 16468 16469/***/ }), 16470
vendor: 6,975 bytes, lines 16471-16690
16471/***/ "./node_modules/swiper/shared/utils.js": 16472/*!*********************************************!*\ 16473 !*** ./node_modules/swiper/shared/utils.js ***! 16474 \*********************************************/ 16475/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16476 16477"use strict"; 16478__webpack_require__.r(__webpack_exports__); 16479/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16480/* harmony export */ "animateCSSModeScroll": () => (/* binding */ animateCSSModeScroll), 16481/* harmony export */ "deleteProps": () => (/* binding */ deleteProps), 16482/* harmony export */ "extend": () => (/* binding */ extend), 16483/* harmony export */ "getComputedStyle": () => (/* binding */ getComputedStyle), 16484/* harmony export */ "getTranslate": () => (/* binding */ getTranslate), 16485/* harmony export */ "isObject": () => (/* binding */ isObject), 16486/* harmony export */ "nextTick": () => (/* binding */ nextTick), 16487/* harmony export */ "now": () => (/* binding */ now), 16488/* harmony export */ "setCSSProperty": () => (/* binding */ setCSSProperty) 16489/* harmony export */ }); 16490/* harmony import */ var ssr_window__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ssr-window */ "./node_modules/ssr-window/ssr-window.esm.js"); 16491 16492 16493function deleteProps(obj) { 16494 const object = obj; 16495 Object.keys(object).forEach(key => { 16496 try { 16497 object[key] = null; 16498 } catch (e) {// no getter for object 16499 } 16500 16501 try { 16502 delete object[key]; 16503 } catch (e) {// something got wrong 16504 } 16505 }); 16506} 16507 16508function nextTick(callback, delay = 0) { 16509 return setTimeout(callback, delay); 16510} 16511 16512function now() { 16513 return Date.now(); 16514} 16515 16516function getComputedStyle(el) { 16517 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 16518 let style; 16519 16520 if (window.getComputedStyle) { 16521 style = window.getComputedStyle(el, null); 16522 } 16523 16524 if (!style && el.currentStyle) { 16525 style = el.currentStyle; 16526 } 16527 16528 if (!style) { 16529 style = el.style; 16530 } 16531 16532 return style; 16533} 16534 16535function getTranslate(el, axis = 'x') { 16536 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 16537 let matrix; 16538 let curTransform; 16539 let transformMatrix; 16540 const curStyle = getComputedStyle(el, null); 16541 16542 if (window.WebKitCSSMatrix) { 16543 curTransform = curStyle.transform || curStyle.webkitTransform; 16544 16545 if (curTransform.split(',').length > 6) { 16546 curTransform = curTransform.split(', ').map(a => a.replace(',', '.')).join(', '); 16547 } // Some old versions of Webkit choke when 'none' is passed; pass 16548 // empty string instead in this case 16549 16550 16551 transformMatrix = new window.WebKitCSSMatrix(curTransform === 'none' ? '' : curTransform); 16552 } else { 16553 transformMatrix = curStyle.MozTransform || curStyle.OTransform || curStyle.MsTransform || curStyle.msTransform || curStyle.transform || curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,'); 16554 matrix = transformMatrix.toString().split(','); 16555 } 16556 16557 if (axis === 'x') { 16558 // Latest Chrome and webkits Fix 16559 if (window.WebKitCSSMatrix) curTransform = transformMatrix.m41; // Crazy IE10 Matrix 16560 else if (matrix.length === 16) curTransform = parseFloat(matrix[12]); // Normal Browsers 16561 else curTransform = parseFloat(matrix[4]); 16562 } 16563 16564 if (axis === 'y') { 16565 // Latest Chrome and webkits Fix 16566 if (window.WebKitCSSMatrix) curTransform = transformMatrix.m42; // Crazy IE10 Matrix 16567 else if (matrix.length === 16) curTransform = parseFloat(matrix[13]); // Normal Browsers 16568 else curTransform = parseFloat(matrix[5]); 16569 } 16570 16571 return curTransform || 0; 16572} 16573 16574function isObject(o) { 16575 return typeof o === 'object' && o !== null && o.constructor && Object.prototype.toString.call(o).slice(8, -1) === 'Object'; 16576} 16577 16578function isNode(node) { 16579 // eslint-disable-next-line 16580 if (typeof window !== 'undefined' && typeof window.HTMLElement !== 'undefined') { 16581 return node instanceof HTMLElement; 16582 } 16583 16584 return node && (node.nodeType === 1 || node.nodeType === 11); 16585} 16586 16587function extend(...args) { 16588 const to = Object(args[0]); 16589 const noExtend = ['__proto__', 'constructor', 'prototype']; 16590 16591 for (let i = 1; i < args.length; i += 1) { 16592 const nextSource = args[i]; 16593 16594 if (nextSource !== undefined && nextSource !== null && !isNode(nextSource)) { 16595 const keysArray = Object.keys(Object(nextSource)).filter(key => noExtend.indexOf(key) < 0); 16596 16597 for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) { 16598 const nextKey = keysArray[nextIndex]; 16599 const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey); 16600 16601 if (desc !== undefined && desc.enumerable) { 16602 if (isObject(to[nextKey]) && isObject(nextSource[nextKey])) { 16603 if (nextSource[nextKey].__swiper__) { 16604 to[nextKey] = nextSource[nextKey]; 16605 } else { 16606 extend(to[nextKey], nextSource[nextKey]); 16607 } 16608 } else if (!isObject(to[nextKey]) && isObject(nextSource[nextKey])) { 16609 to[nextKey] = {}; 16610 16611 if (nextSource[nextKey].__swiper__) { 16612 to[nextKey] = nextSource[nextKey]; 16613 } else { 16614 extend(to[nextKey], nextSource[nextKey]); 16615 } 16616 } else { 16617 to[nextKey] = nextSource[nextKey]; 16618 } 16619 } 16620 } 16621 } 16622 } 16623 16624 return to; 16625} 16626 16627function setCSSProperty(el, varName, varValue) { 16628 el.style.setProperty(varName, varValue); 16629} 16630 16631function animateCSSModeScroll({ 16632 swiper, 16633 targetPosition, 16634 side 16635}) { 16636 const window = (0,ssr_window__WEBPACK_IMPORTED_MODULE_0__.getWindow)(); 16637 const startPosition = -swiper.translate; 16638 let startTime = null; 16639 let time; 16640 const duration = swiper.params.speed; 16641 swiper.wrapperEl.style.scrollSnapType = 'none'; 16642 window.cancelAnimationFrame(swiper.cssModeFrameID); 16643 const dir = targetPosition > startPosition ? 'next' : 'prev'; 16644 16645 const isOutOfBound = (current, target) => { 16646 return dir === 'next' && current >= target || dir === 'prev' && current <= target; 16647 }; 16648 16649 const animate = () => { 16650 time = new Date().getTime(); 16651 16652 if (startTime === null) { 16653 startTime = time; 16654 } 16655 16656 const progress = Math.max(Math.min((time - startTime) / duration, 1), 0); 16657 const easeProgress = 0.5 - Math.cos(progress * Math.PI) / 2; 16658 let currentPosition = startPosition + easeProgress * (targetPosition - startPosition); 16659 16660 if (isOutOfBound(currentPosition, targetPosition)) { 16661 currentPosition = targetPosition; 16662 } 16663 16664 swiper.wrapperEl.scrollTo({ 16665 [side]: currentPosition 16666 }); 16667 16668 if (isOutOfBound(currentPosition, targetPosition)) { 16669 swiper.wrapperEl.style.overflow = 'hidden'; 16670 swiper.wrapperEl.style.scrollSnapType = ''; 16671 setTimeout(() => { 16672 swiper.wrapperEl.style.overflow = ''; 16673 swiper.wrapperEl.scrollTo({ 16674 [side]: currentPosition 16675 }); 16676 }); 16677 window.cancelAnimationFrame(swiper.cssModeFrameID); 16678 return; 16679 } 16680 16681 swiper.cssModeFrameID = window.requestAnimationFrame(animate); 16682 }; 16683 16684 animate(); 16685} 16686 16687 16688 16689/***/ }), 16690
vendor: 9,382 bytes, lines 16691-16790
16691/***/ "./node_modules/swiper/swiper.esm.js": 16692/*!*******************************************!*\ 16693 !*** ./node_modules/swiper/swiper.esm.js ***! 16694 \*******************************************/ 16695/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 16696 16697"use strict"; 16698__webpack_require__.r(__webpack_exports__); 16699/* harmony export */ __webpack_require__.d(__webpack_exports__, { 16700/* harmony export */ "A11y": () => (/* reexport safe */ _modules_a11y_a11y_js__WEBPACK_IMPORTED_MODULE_11__["default"]), 16701/* harmony export */ "Autoplay": () => (/* reexport safe */ _modules_autoplay_autoplay_js__WEBPACK_IMPORTED_MODULE_14__["default"]), 16702/* harmony export */ "Controller": () => (/* reexport safe */ _modules_controller_controller_js__WEBPACK_IMPORTED_MODULE_10__["default"]), 16703/* harmony export */ "EffectCards": () => (/* reexport safe */ _modules_effect_cards_effect_cards_js__WEBPACK_IMPORTED_MODULE_24__["default"]), 16704/* harmony export */ "EffectCoverflow": () => (/* reexport safe */ _modules_effect_coverflow_effect_coverflow_js__WEBPACK_IMPORTED_MODULE_22__["default"]), 16705/* harmony export */ "EffectCreative": () => (/* reexport safe */ _modules_effect_creative_effect_creative_js__WEBPACK_IMPORTED_MODULE_23__["default"]), 16706/* harmony export */ "EffectCube": () => (/* reexport safe */ _modules_effect_cube_effect_cube_js__WEBPACK_IMPORTED_MODULE_20__["default"]), 16707/* harmony export */ "EffectFade": () => (/* reexport safe */ _modules_effect_fade_effect_fade_js__WEBPACK_IMPORTED_MODULE_19__["default"]), 16708/* harmony export */ "EffectFlip": () => (/* reexport safe */ _modules_effect_flip_effect_flip_js__WEBPACK_IMPORTED_MODULE_21__["default"]), 16709/* harmony export */ "FreeMode": () => (/* reexport safe */ _modules_free_mode_free_mode_js__WEBPACK_IMPORTED_MODULE_16__["default"]), 16710/* harmony export */ "Grid": () => (/* reexport safe */ _modules_grid_grid_js__WEBPACK_IMPORTED_MODULE_17__["default"]), 16711/* harmony export */ "HashNavigation": () => (/* reexport safe */ _modules_hash_navigation_hash_navigation_js__WEBPACK_IMPORTED_MODULE_13__["default"]), 16712/* harmony export */ "History": () => (/* reexport safe */ _modules_history_history_js__WEBPACK_IMPORTED_MODULE_12__["default"]), 16713/* harmony export */ "Keyboard": () => (/* reexport safe */ _modules_keyboard_keyboard_js__WEBPACK_IMPORTED_MODULE_2__["default"]), 16714/* harmony export */ "Lazy": () => (/* reexport safe */ _modules_lazy_lazy_js__WEBPACK_IMPORTED_MODULE_9__["default"]), 16715/* harmony export */ "Manipulation": () => (/* reexport safe */ _modules_manipulation_manipulation_js__WEBPACK_IMPORTED_MODULE_18__["default"]), 16716/* harmony export */ "Mousewheel": () => (/* reexport safe */ _modules_mousewheel_mousewheel_js__WEBPACK_IMPORTED_MODULE_3__["default"]), 16717/* harmony export */ "Navigation": () => (/* reexport safe */ _modules_navigation_navigation_js__WEBPACK_IMPORTED_MODULE_4__["default"]), 16718/* harmony export */ "Pagination": () => (/* reexport safe */ _modules_pagination_pagination_js__WEBPACK_IMPORTED_MODULE_5__["default"]), 16719/* harmony export */ "Parallax": () => (/* reexport safe */ _modules_parallax_parallax_js__WEBPACK_IMPORTED_MODULE_7__["default"]), 16720/* harmony export */ "Scrollbar": () => (/* reexport safe */ _modules_scrollbar_scrollbar_js__WEBPACK_IMPORTED_MODULE_6__["default"]), 16721/* harmony export */ "Swiper": () => (/* reexport safe */ _core_core_js__WEBPACK_IMPORTED_MODULE_0__["default"]), 16722/* harmony export */ "Thumbs": () => (/* reexport safe */ _modules_thumbs_thumbs_js__WEBPACK_IMPORTED_MODULE_15__["default"]), 16723/* harmony export */ "Virtual": () => (/* reexport safe */ _modules_virtual_virtual_js__WEBPACK_IMPORTED_MODULE_1__["default"]), 16724/* harmony export */ "Zoom": () => (/* reexport safe */ _modules_zoom_zoom_js__WEBPACK_IMPORTED_MODULE_8__["default"]), 16725/* harmony export */ "default": () => (/* reexport safe */ _core_core_js__WEBPACK_IMPORTED_MODULE_0__["default"]) 16726/* harmony export */ }); 16727/* harmony import */ var _core_core_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/core.js */ "./node_modules/swiper/core/core.js"); 16728/* harmony import */ var _modules_virtual_virtual_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modules/virtual/virtual.js */ "./node_modules/swiper/modules/virtual/virtual.js"); 16729/* harmony import */ var _modules_keyboard_keyboard_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modules/keyboard/keyboard.js */ "./node_modules/swiper/modules/keyboard/keyboard.js"); 16730/* harmony import */ var _modules_mousewheel_mousewheel_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./modules/mousewheel/mousewheel.js */ "./node_modules/swiper/modules/mousewheel/mousewheel.js"); 16731/* harmony import */ var _modules_navigation_navigation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./modules/navigation/navigation.js */ "./node_modules/swiper/modules/navigation/navigation.js"); 16732/* harmony import */ var _modules_pagination_pagination_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./modules/pagination/pagination.js */ "./node_modules/swiper/modules/pagination/pagination.js"); 16733/* harmony import */ var _modules_scrollbar_scrollbar_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./modules/scrollbar/scrollbar.js */ "./node_modules/swiper/modules/scrollbar/scrollbar.js"); 16734/* harmony import */ var _modules_parallax_parallax_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./modules/parallax/parallax.js */ "./node_modules/swiper/modules/parallax/parallax.js"); 16735/* harmony import */ var _modules_zoom_zoom_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./modules/zoom/zoom.js */ "./node_modules/swiper/modules/zoom/zoom.js"); 16736/* harmony import */ var _modules_lazy_lazy_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./modules/lazy/lazy.js */ "./node_modules/swiper/modules/lazy/lazy.js"); 16737/* harmony import */ var _modules_controller_controller_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./modules/controller/controller.js */ "./node_modules/swiper/modules/controller/controller.js"); 16738/* harmony import */ var _modules_a11y_a11y_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./modules/a11y/a11y.js */ "./node_modules/swiper/modules/a11y/a11y.js"); 16739/* harmony import */ var _modules_history_history_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./modules/history/history.js */ "./node_modules/swiper/modules/history/history.js"); 16740/* harmony import */ var _modules_hash_navigation_hash_navigation_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./modules/hash-navigation/hash-navigation.js */ "./node_modules/swiper/modules/hash-navigation/hash-navigation.js"); 16741/* harmony import */ var _modules_autoplay_autoplay_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./modules/autoplay/autoplay.js */ "./node_modules/swiper/modules/autoplay/autoplay.js"); 16742/* harmony import */ var _modules_thumbs_thumbs_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./modules/thumbs/thumbs.js */ "./node_modules/swiper/modules/thumbs/thumbs.js"); 16743/* harmony import */ var _modules_free_mode_free_mode_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./modules/free-mode/free-mode.js */ "./node_modules/swiper/modules/free-mode/free-mode.js"); 16744/* harmony import */ var _modules_grid_grid_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./modules/grid/grid.js */ "./node_modules/swiper/modules/grid/grid.js"); 16745/* harmony import */ var _modules_manipulation_manipulation_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./modules/manipulation/manipulation.js */ "./node_modules/swiper/modules/manipulation/manipulation.js"); 16746/* harmony import */ var _modules_effect_fade_effect_fade_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./modules/effect-fade/effect-fade.js */ "./node_modules/swiper/modules/effect-fade/effect-fade.js"); 16747/* harmony import */ var _modules_effect_cube_effect_cube_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./modules/effect-cube/effect-cube.js */ "./node_modules/swiper/modules/effect-cube/effect-cube.js"); 16748/* harmony import */ var _modules_effect_flip_effect_flip_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./modules/effect-flip/effect-flip.js */ "./node_modules/swiper/modules/effect-flip/effect-flip.js"); 16749/* harmony import */ var _modules_effect_coverflow_effect_coverflow_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./modules/effect-coverflow/effect-coverflow.js */ "./node_modules/swiper/modules/effect-coverflow/effect-coverflow.js"); 16750/* harmony import */ var _modules_effect_creative_effect_creative_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./modules/effect-creative/effect-creative.js */ "./node_modules/swiper/modules/effect-creative/effect-creative.js"); 16751/* harmony import */ var _modules_effect_cards_effect_cards_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./modules/effect-cards/effect-cards.js */ "./node_modules/swiper/modules/effect-cards/effect-cards.js"); 16752/** 16753 * Swiper 7.4.1 16754 * Most modern mobile touch slider and framework with hardware accelerated transitions 16755 * https://swiperjs.com 16756 * 16757 * Copyright 2014-2021 Vladimir Kharlampidi 16758 * 16759 * Released under the MIT License 16760 * 16761 * Released on: December 24, 2021 16762 */ 16763 16764 16765 16766 16767 16768 16769 16770 16771 16772 16773 16774 16775 16776 16777 16778 16779 16780 16781 16782 16783 16784 16785 16786 16787 16788 16789 16790/***/ })
vendor: 3,934 bytes, lines 16790-16892
16790 16791 16792/******/ }); 16793/************************************************************************/ 16794/******/ // The module cache 16795/******/ var __webpack_module_cache__ = {}; 16796/******/ 16797/******/ // The require function 16798/******/ function __webpack_require__(moduleId) { 16799/******/ // Check if module is in cache 16800/******/ var cachedModule = __webpack_module_cache__[moduleId]; 16801/******/ if (cachedModule !== undefined) { 16802/******/ return cachedModule.exports; 16803/******/ } 16804/******/ // Create a new module (and put it into the cache) 16805/******/ var module = __webpack_module_cache__[moduleId] = { 16806/******/ // no module.id needed 16807/******/ // no module.loaded needed 16808/******/ exports: {} 16809/******/ }; 16810/******/ 16811/******/ // Execute the module function 16812/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__); 16813/******/ 16814/******/ // Return the exports of the module 16815/******/ return module.exports; 16816/******/ } 16817/******/ 16818/************************************************************************/ 16819/******/ /* webpack/runtime/compat get default export */ 16820/******/ (() => { 16821/******/ // getDefaultExport function for compatibility with non-harmony modules 16822/******/ __webpack_require__.n = (module) => { 16823/******/ var getter = module && module.__esModule ? 16824/******/ () => (module['default']) : 16825/******/ () => (module); 16826/******/ __webpack_require__.d(getter, { a: getter }); 16827/******/ return getter; 16828/******/ }; 16829/******/ })(); 16830/******/ 16831/******/ /* webpack/runtime/define property getters */ 16832/******/ (() => { 16833/******/ // define getter functions for harmony exports 16834/******/ __webpack_require__.d = (exports, definition) => { 16835/******/ for(var key in definition) { 16836/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { 16837/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); 16838/******/ } 16839/******/ } 16840/******/ }; 16841/******/ })(); 16842/******/ 16843/******/ /* webpack/runtime/global */ 16844/******/ (() => { 16845/******/ __webpack_require__.g = (function() { 16846/******/ if (typeof globalThis === 'object') return globalThis; 16847/******/ try { 16848/******/ return this || new Function('return this')(); 16849/******/ } catch (e) { 16850/******/ if (typeof window === 'object') return window; 16851/******/ } 16852/******/ })(); 16853/******/ })(); 16854/******/ 16855/******/ /* webpack/runtime/hasOwnProperty shorthand */ 16856/******/ (() => { 16857/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) 16858/******/ })(); 16859/******/ 16860/******/ /* webpack/runtime/make namespace object */ 16861/******/ (() => { 16862/******/ // define __esModule on exports 16863/******/ __webpack_require__.r = (exports) => { 16864/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { 16865/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); 16866/******/ } 16867/******/ Object.defineProperty(exports, '__esModule', { value: true }); 16868/******/ }; 16869/******/ })(); 16870/******/ 16871/************************************************************************/ 16872var __webpack_exports__ = {}; 16873// This entry need to be wrapped in an IIFE because it need to be in strict mode. 16874(() => { 16875"use strict"; 16876/*!************************!*\ 16877 !*** ./src/js/main.js ***! 16878 \************************/ 16879__webpack_require__.r(__webpack_exports__); 16880/* harmony import */ var _vendor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_vendor */ "./src/js/_vendor.js"); 16881/* harmony import */ var _vars__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_vars */ "./src/js/_vars.js"); 16882/* harmony import */ var _functions__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_functions */ "./src/js/_functions.js"); 16883/* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./_components */ "./src/js/_components.js"); 16884 16885 16886 16887 16888})(); 16889 16890/******/ })() 16891; 16892
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.