PluginProbe
Elementor Website Builder – more than just a page builder / 3.21.7
Elementor Website Builder – more than just a page builder v3.21.7
4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 4.1.0-beta1 4.1.0-dev1 All 452 releases
elementor / assets / js / frontend-modules.js

frontend-modules.js in Elementor Website Builder – more than just a page builder 3.21.7, at assets/js/frontend-modules.js

4,751 lines 180.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /*! elementor - v3.21.0 - 22-05-2024 */
2 (self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["frontend-modules"],{
3
4 /***/ "../assets/dev/js/editor/utils/is-instanceof.js":
5 /*!******************************************************!*\
6 !*** ../assets/dev/js/editor/utils/is-instanceof.js ***!
7 \******************************************************/
8 /***/ ((__unused_webpack_module, exports) => {
9
10 "use strict";
11
12
13 Object.defineProperty(exports, "__esModule", ({
14 value: true
15 }));
16 exports["default"] = void 0;
17 /**
18 * Some FileAPI objects such as FileList, DataTransferItem and DataTransferItemList has inconsistency with the retrieved
19 * object (from events, etc.) and the actual JavaScript object so a regular instanceof doesn't work. This function can
20 * check whether it's instanceof by using the objects constructor and prototype names.
21 *
22 * @param object
23 * @param constructors
24 * @return {boolean}
25 */
26 var _default = (object, constructors) => {
27 constructors = Array.isArray(constructors) ? constructors : [constructors];
28 for (const constructor of constructors) {
29 if (object.constructor.name === constructor.prototype[Symbol.toStringTag]) {
30 return true;
31 }
32 }
33 return false;
34 };
35 exports["default"] = _default;
36
37 /***/ }),
38
39 /***/ "../assets/dev/js/frontend/document.js":
40 /*!*********************************************!*\
41 !*** ../assets/dev/js/frontend/document.js ***!
42 \*********************************************/
43 /***/ ((__unused_webpack_module, exports) => {
44
45 "use strict";
46
47
48 Object.defineProperty(exports, "__esModule", ({
49 value: true
50 }));
51 exports["default"] = void 0;
52 class _default extends elementorModules.ViewModule {
53 getDefaultSettings() {
54 return {
55 selectors: {
56 elements: '.elementor-element',
57 nestedDocumentElements: '.elementor .elementor-element'
58 },
59 classes: {
60 editMode: 'elementor-edit-mode'
61 }
62 };
63 }
64 getDefaultElements() {
65 const selectors = this.getSettings('selectors');
66 return {
67 $elements: this.$element.find(selectors.elements).not(this.$element.find(selectors.nestedDocumentElements))
68 };
69 }
70 getDocumentSettings(setting) {
71 let elementSettings;
72 if (this.isEdit) {
73 elementSettings = {};
74 const settings = elementor.settings.page.model;
75 jQuery.each(settings.getActiveControls(), controlKey => {
76 elementSettings[controlKey] = settings.attributes[controlKey];
77 });
78 } else {
79 elementSettings = this.$element.data('elementor-settings') || {};
80 }
81 return this.getItems(elementSettings, setting);
82 }
83 runElementsHandlers() {
84 this.elements.$elements.each((index, element) => setTimeout(() => elementorFrontend.elementsHandler.runReadyTrigger(element)));
85 }
86 onInit() {
87 this.$element = this.getSettings('$element');
88 super.onInit();
89 this.isEdit = this.$element.hasClass(this.getSettings('classes.editMode'));
90 if (this.isEdit) {
91 elementor.on('document:loaded', () => {
92 elementor.settings.page.model.on('change', this.onSettingsChange.bind(this));
93 });
94 } else {
95 this.runElementsHandlers();
96 }
97 }
98 onSettingsChange() {}
99 }
100 exports["default"] = _default;
101
102 /***/ }),
103
104 /***/ "../assets/dev/js/frontend/handlers/accessibility/nested-title-keyboard-handler.js":
105 /*!*****************************************************************************************!*\
106 !*** ../assets/dev/js/frontend/handlers/accessibility/nested-title-keyboard-handler.js ***!
107 \*****************************************************************************************/
108 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
109
110 "use strict";
111
112
113 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
114 Object.defineProperty(exports, "__esModule", ({
115 value: true
116 }));
117 exports["default"] = void 0;
118 var _base = _interopRequireDefault(__webpack_require__(/*! ../base */ "../assets/dev/js/frontend/handlers/base.js"));
119 class NestedTitleKeyboardHandler extends _base.default {
120 __construct(settings) {
121 super.__construct(settings);
122 this.directionNext = 'next';
123 this.directionPrevious = 'previous';
124 this.focusableElementSelector = 'audio, button, canvas, details, iframe, input, select, summary, textarea, video, [accesskey], [contenteditable], [href], [tabindex]:not([tabindex="-1"])';
125 }
126 getDefaultSettings() {
127 return {
128 selectors: {
129 itemTitle: '.e-n-tab-title',
130 itemContainer: '.e-n-tabs-content > .e-con'
131 },
132 ariaAttributes: {
133 titleStateAttribute: 'aria-selected',
134 activeTitleSelector: '[aria-selected="true"]'
135 },
136 datasets: {
137 titleIndex: 'data-tab-index'
138 },
139 keyDirection: {
140 ArrowLeft: elementorFrontendConfig.is_rtl ? this.directionNext : this.directionPrevious,
141 ArrowUp: this.directionPrevious,
142 ArrowRight: elementorFrontendConfig.is_rtl ? this.directionPrevious : this.directionNext,
143 ArrowDown: this.directionNext
144 }
145 };
146 }
147 getDefaultElements() {
148 const selectors = this.getSettings('selectors');
149 return {
150 $itemTitles: this.findElement(selectors.itemTitle),
151 $itemContainers: this.findElement(selectors.itemContainer),
152 $focusableContainerElements: this.getFocusableElements(this.findElement(selectors.itemContainer))
153 };
154 }
155 getFocusableElements($elements) {
156 return $elements.find(this.focusableElementSelector).not('[disabled], [inert]');
157 }
158 getKeyDirectionValue(event) {
159 const direction = this.getSettings('keyDirection')[event.key];
160 return this.directionNext === direction ? 1 : -1;
161 }
162
163 /**
164 * @param {HTMLElement} itemTitleElement
165 *
166 * @return {string}
167 */
168 getTitleIndex(itemTitleElement) {
169 const {
170 titleIndex: indexAttribute
171 } = this.getSettings('datasets');
172 return itemTitleElement.getAttribute(indexAttribute);
173 }
174
175 /**
176 * @param {string|number} titleIndex
177 *
178 * @return {string}
179 */
180 getTitleFilterSelector(titleIndex) {
181 const {
182 titleIndex: indexAttribute
183 } = this.getSettings('datasets');
184 return `[${indexAttribute}="${titleIndex}"]`;
185 }
186 getActiveTitleElement() {
187 const activeTitleFilter = this.getSettings('ariaAttributes').activeTitleSelector;
188 return this.elements.$itemTitles.filter(activeTitleFilter);
189 }
190 onInit() {
191 super.onInit(...arguments);
192 }
193 bindEvents() {
194 this.elements.$itemTitles.on(this.getTitleEvents());
195 this.elements.$focusableContainerElements.on(this.getContentElementEvents());
196 }
197 unbindEvents() {
198 this.elements.$itemTitles.off();
199 this.elements.$itemContainers.children().off();
200 }
201 getTitleEvents() {
202 return {
203 keydown: this.handleTitleKeyboardNavigation.bind(this)
204 };
205 }
206 getContentElementEvents() {
207 return {
208 keydown: this.handleContentElementKeyboardNavigation.bind(this)
209 };
210 }
211 isDirectionKey(event) {
212 const directionKeys = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End'];
213 return directionKeys.includes(event.key);
214 }
215 isActivationKey(event) {
216 const activationKeys = ['Enter', ' '];
217 return activationKeys.includes(event.key);
218 }
219 handleTitleKeyboardNavigation(event) {
220 if (this.isDirectionKey(event)) {
221 event.preventDefault();
222 const currentTitleIndex = parseInt(this.getTitleIndex(event.currentTarget)) || 1,
223 numberOfTitles = this.elements.$itemTitles.length,
224 titleIndexUpdated = this.getTitleIndexFocusUpdated(event, currentTitleIndex, numberOfTitles);
225 this.changeTitleFocus(titleIndexUpdated);
226 event.stopPropagation();
227 } else if (this.isActivationKey(event)) {
228 event.preventDefault();
229 if (this.handeTitleLinkEnterOrSpaceEvent(event)) {
230 return;
231 }
232 const titleIndex = this.getTitleIndex(event.currentTarget);
233 elementorFrontend.elements.$window.trigger('elementor/nested-elements/activate-by-keyboard', {
234 widgetId: this.getID(),
235 titleIndex
236 });
237 } else if ('Escape' === event.key) {
238 this.handleTitleEscapeKeyEvents(event);
239 }
240 }
241 handeTitleLinkEnterOrSpaceEvent(event) {
242 const isLinkElement = 'a' === event?.currentTarget?.tagName?.toLowerCase();
243 if (!elementorFrontend.isEditMode() && isLinkElement) {
244 event?.currentTarget?.click();
245 event.stopPropagation();
246 }
247 return isLinkElement;
248 }
249 getTitleIndexFocusUpdated(event, currentTitleIndex, numberOfTitles) {
250 let titleIndexUpdated = 0;
251 switch (event.key) {
252 case 'Home':
253 titleIndexUpdated = 1;
254 break;
255 case 'End':
256 titleIndexUpdated = numberOfTitles;
257 break;
258 default:
259 const directionValue = this.getKeyDirectionValue(event),
260 isEndReached = numberOfTitles < currentTitleIndex + directionValue,
261 isStartReached = 0 === currentTitleIndex + directionValue;
262 if (isEndReached) {
263 titleIndexUpdated = 1;
264 } else if (isStartReached) {
265 titleIndexUpdated = numberOfTitles;
266 } else {
267 titleIndexUpdated = currentTitleIndex + directionValue;
268 }
269 }
270 return titleIndexUpdated;
271 }
272 changeTitleFocus(titleIndexUpdated) {
273 const $newTitle = this.elements.$itemTitles.filter(this.getTitleFilterSelector(titleIndexUpdated));
274 this.setTitleTabindex(titleIndexUpdated);
275 $newTitle.trigger('focus');
276 }
277 setTitleTabindex(titleIndex) {
278 this.elements.$itemTitles.attr('tabindex', '-1');
279 const $newTitle = this.elements.$itemTitles.filter(this.getTitleFilterSelector(titleIndex));
280 $newTitle.attr('tabindex', '0');
281 }
282 handleTitleEscapeKeyEvents() {}
283 handleContentElementKeyboardNavigation(event) {
284 if ('Tab' === event.key && !event.shiftKey) {
285 this.handleContentElementTabEvents(event);
286 } else if ('Escape' === event.key) {
287 event.preventDefault();
288 event.stopPropagation();
289 this.handleContentElementEscapeEvents(event);
290 }
291 }
292 handleContentElementEscapeEvents() {
293 this.getActiveTitleElement().trigger('focus');
294 }
295 handleContentElementTabEvents() {}
296 }
297 exports["default"] = NestedTitleKeyboardHandler;
298
299 /***/ }),
300
301 /***/ "../assets/dev/js/frontend/handlers/base-carousel.js":
302 /*!***********************************************************!*\
303 !*** ../assets/dev/js/frontend/handlers/base-carousel.js ***!
304 \***********************************************************/
305 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
306
307 "use strict";
308
309
310 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
311 Object.defineProperty(exports, "__esModule", ({
312 value: true
313 }));
314 exports["default"] = void 0;
315 var _baseSwiper = _interopRequireDefault(__webpack_require__(/*! ./base-swiper */ "../assets/dev/js/frontend/handlers/base-swiper.js"));
316 class CarouselHandlerBase extends _baseSwiper.default {
317 getDefaultSettings() {
318 return {
319 selectors: {
320 carousel: `.${elementorFrontend.config.swiperClass}`,
321 swiperWrapper: '.swiper-wrapper',
322 slideContent: '.swiper-slide',
323 swiperArrow: '.elementor-swiper-button',
324 paginationWrapper: '.swiper-pagination',
325 paginationBullet: '.swiper-pagination-bullet',
326 paginationBulletWrapper: '.swiper-pagination-bullets'
327 }
328 };
329 }
330 getDefaultElements() {
331 const selectors = this.getSettings('selectors'),
332 elements = {
333 $swiperContainer: this.$element.find(selectors.carousel),
334 $swiperWrapper: this.$element.find(selectors.swiperWrapper),
335 $swiperArrows: this.$element.find(selectors.swiperArrow),
336 $paginationWrapper: this.$element.find(selectors.paginationWrapper),
337 $paginationBullets: this.$element.find(selectors.paginationBullet),
338 $paginationBulletWrapper: this.$element.find(selectors.paginationBulletWrapper)
339 };
340 elements.$slides = elements.$swiperContainer.find(selectors.slideContent);
341 return elements;
342 }
343 getSwiperSettings() {
344 const elementSettings = this.getElementSettings(),
345 slidesToShow = +elementSettings.slides_to_show || 3,
346 isSingleSlide = 1 === slidesToShow,
347 elementorBreakpoints = elementorFrontend.config.responsive.activeBreakpoints,
348 defaultSlidesToShowMap = {
349 mobile: 1,
350 tablet: isSingleSlide ? 1 : 2
351 };
352 const swiperOptions = {
353 slidesPerView: slidesToShow,
354 loop: 'yes' === elementSettings.infinite,
355 speed: elementSettings.speed,
356 handleElementorBreakpoints: true
357 };
358 swiperOptions.breakpoints = {};
359 let lastBreakpointSlidesToShowValue = slidesToShow;
360 Object.keys(elementorBreakpoints).reverse().forEach(breakpointName => {
361 // Tablet has a specific default `slides_to_show`.
362 const defaultSlidesToShow = defaultSlidesToShowMap[breakpointName] ? defaultSlidesToShowMap[breakpointName] : lastBreakpointSlidesToShowValue;
363 swiperOptions.breakpoints[elementorBreakpoints[breakpointName].value] = {
364 slidesPerView: +elementSettings['slides_to_show_' + breakpointName] || defaultSlidesToShow,
365 slidesPerGroup: +elementSettings['slides_to_scroll_' + breakpointName] || 1
366 };
367 if (elementSettings.image_spacing_custom) {
368 swiperOptions.breakpoints[elementorBreakpoints[breakpointName].value].spaceBetween = this.getSpaceBetween(breakpointName);
369 }
370 lastBreakpointSlidesToShowValue = +elementSettings['slides_to_show_' + breakpointName] || defaultSlidesToShow;
371 });
372 if ('yes' === elementSettings.autoplay) {
373 swiperOptions.autoplay = {
374 delay: elementSettings.autoplay_speed,
375 disableOnInteraction: 'yes' === elementSettings.pause_on_interaction
376 };
377 }
378 if (isSingleSlide) {
379 swiperOptions.effect = elementSettings.effect;
380 if ('fade' === elementSettings.effect) {
381 swiperOptions.fadeEffect = {
382 crossFade: true
383 };
384 }
385 } else {
386 swiperOptions.slidesPerGroup = +elementSettings.slides_to_scroll || 1;
387 }
388 if (elementSettings.image_spacing_custom) {
389 swiperOptions.spaceBetween = this.getSpaceBetween();
390 }
391 const showArrows = 'arrows' === elementSettings.navigation || 'both' === elementSettings.navigation,
392 showPagination = 'dots' === elementSettings.navigation || 'both' === elementSettings.navigation || elementSettings.pagination;
393 if (showArrows) {
394 swiperOptions.navigation = {
395 prevEl: '.elementor-swiper-button-prev',
396 nextEl: '.elementor-swiper-button-next'
397 };
398 }
399 if (showPagination) {
400 swiperOptions.pagination = {
401 el: `.elementor-element-${this.getID()} .swiper-pagination`,
402 type: !!elementSettings.pagination ? elementSettings.pagination : 'bullets',
403 clickable: true,
404 renderBullet: (index, classname) => {
405 return `<span class="${classname}" data-bullet-index="${index}" aria-label="${elementorFrontend.config.i18n.a11yCarouselPaginationBulletMessage} ${index + 1}"></span>`;
406 }
407 };
408 }
409 if ('yes' === elementSettings.lazyload) {
410 swiperOptions.lazy = {
411 loadPrevNext: true,
412 loadPrevNextAmount: 1
413 };
414 }
415 swiperOptions.a11y = {
416 enabled: true,
417 prevSlideMessage: elementorFrontend.config.i18n.a11yCarouselPrevSlideMessage,
418 nextSlideMessage: elementorFrontend.config.i18n.a11yCarouselNextSlideMessage,
419 firstSlideMessage: elementorFrontend.config.i18n.a11yCarouselFirstSlideMessage,
420 lastSlideMessage: elementorFrontend.config.i18n.a11yCarouselLastSlideMessage
421 };
422 swiperOptions.on = {
423 slideChangeTransitionEnd: () => {
424 this.a11ySetSlideAriaHidden();
425 },
426 slideChange: () => {
427 this.a11ySetPaginationTabindex();
428 this.handleElementHandlers();
429 },
430 init: () => {
431 this.a11ySetWidgetAriaDetails();
432 this.a11ySetPaginationTabindex();
433 this.a11ySetSlideAriaHidden('initialisation');
434 }
435 };
436 this.applyOffsetSettings(elementSettings, swiperOptions, slidesToShow);
437 return swiperOptions;
438 }
439 getOffsetWidth() {
440 const currentDevice = elementorFrontend.getCurrentDeviceMode();
441 return elementorFrontend.utils.controls.getResponsiveControlValue(this.getElementSettings(), 'offset_width', 'size', currentDevice) || 0;
442 }
443 applyOffsetSettings(elementSettings, swiperOptions, slidesToShow) {
444 const offsetSide = elementSettings.offset_sides,
445 isNestedCarouselInEditMode = elementorFrontend.isEditMode() && 'NestedCarousel' === this.constructor.name;
446 if (isNestedCarouselInEditMode || !offsetSide || 'none' === offsetSide) {
447 return;
448 }
449 switch (offsetSide) {
450 case 'right':
451 this.forceSliderToShowNextSlideWhenOnLast(swiperOptions, slidesToShow);
452 this.addClassToSwiperContainer('offset-right');
453 break;
454 case 'left':
455 this.addClassToSwiperContainer('offset-left');
456 break;
457 case 'both':
458 this.forceSliderToShowNextSlideWhenOnLast(swiperOptions, slidesToShow);
459 this.addClassToSwiperContainer('offset-both');
460 break;
461 }
462 }
463 forceSliderToShowNextSlideWhenOnLast(swiperOptions, slidesToShow) {
464 swiperOptions.slidesPerView = slidesToShow + 0.001;
465 }
466 addClassToSwiperContainer(className) {
467 this.getDefaultElements().$swiperContainer[0].classList.add(className);
468 }
469 async onInit() {
470 super.onInit(...arguments);
471 if (!this.elements.$swiperContainer.length || 2 > this.elements.$slides.length) {
472 return;
473 }
474 const Swiper = elementorFrontend.utils.swiper;
475 this.swiper = await new Swiper(this.elements.$swiperContainer, this.getSwiperSettings());
476
477 // Expose the swiper instance in the frontend
478 this.elements.$swiperContainer.data('swiper', this.swiper);
479 const elementSettings = this.getElementSettings();
480 if ('yes' === elementSettings.pause_on_hover) {
481 this.togglePauseOnHover(true);
482 }
483 }
484 bindEvents() {
485 this.elements.$swiperArrows.on('keydown', this.onDirectionArrowKeydown.bind(this));
486 this.elements.$paginationWrapper.on('keydown', '.swiper-pagination-bullet', this.onDirectionArrowKeydown.bind(this));
487 this.elements.$swiperContainer.on('keydown', '.swiper-slide', this.onDirectionArrowKeydown.bind(this));
488 this.$element.find(':focusable').on('focus', this.onFocusDisableAutoplay.bind(this));
489 elementorFrontend.elements.$window.on('resize', this.getSwiperSettings.bind(this));
490 }
491 unbindEvents() {
492 this.elements.$swiperArrows.off();
493 this.elements.$paginationWrapper.off();
494 this.elements.$swiperContainer.off();
495 this.$element.find(':focusable').off();
496 elementorFrontend.elements.$window.off('resize');
497 }
498 onDirectionArrowKeydown(event) {
499 const isRTL = elementorFrontend.config.is_rtl,
500 inlineDirectionArrows = ['ArrowLeft', 'ArrowRight'],
501 currentKeydown = event.originalEvent.code,
502 isDirectionInlineKeydown = -1 !== inlineDirectionArrows.indexOf(currentKeydown),
503 directionStart = isRTL ? 'ArrowRight' : 'ArrowLeft',
504 directionEnd = isRTL ? 'ArrowLeft' : 'ArrowRight';
505 if (!isDirectionInlineKeydown) {
506 return true;
507 } else if (directionStart === currentKeydown) {
508 this.swiper.slidePrev();
509 } else if (directionEnd === currentKeydown) {
510 this.swiper.slideNext();
511 }
512 }
513 onFocusDisableAutoplay() {
514 this.swiper.autoplay.stop();
515 }
516 updateSwiperOption(propertyName) {
517 const elementSettings = this.getElementSettings(),
518 newSettingValue = elementSettings[propertyName],
519 params = this.swiper.params;
520
521 // Handle special cases where the value to update is not the value that the Swiper library accepts.
522 switch (propertyName) {
523 case 'autoplay_speed':
524 params.autoplay.delay = newSettingValue;
525 break;
526 case 'speed':
527 params.speed = newSettingValue;
528 break;
529 }
530 this.swiper.update();
531 }
532 getChangeableProperties() {
533 return {
534 pause_on_hover: 'pauseOnHover',
535 autoplay_speed: 'delay',
536 speed: 'speed',
537 arrows_position: 'arrows_position' // Not a Swiper setting.
538 };
539 }
540
541 onElementChange(propertyName) {
542 if (0 === propertyName.indexOf('image_spacing_custom')) {
543 this.updateSpaceBetween(propertyName);
544 return;
545 }
546 const changeableProperties = this.getChangeableProperties();
547 if (changeableProperties[propertyName]) {
548 // 'pause_on_hover' is implemented by the handler with event listeners, not the Swiper library.
549 if ('pause_on_hover' === propertyName) {
550 const newSettingValue = this.getElementSettings('pause_on_hover');
551 this.togglePauseOnHover('yes' === newSettingValue);
552 } else {
553 this.updateSwiperOption(propertyName);
554 }
555 }
556 }
557 onEditSettingsChange(propertyName) {
558 if ('activeItemIndex' === propertyName) {
559 this.swiper.slideToLoop(this.getEditSettings('activeItemIndex') - 1);
560 }
561 }
562 getSpaceBetween() {
563 let device = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
564 return elementorFrontend.utils.controls.getResponsiveControlValue(this.getElementSettings(), 'image_spacing_custom', 'size', device) || 0;
565 }
566 updateSpaceBetween(propertyName) {
567 const deviceMatch = propertyName.match('image_spacing_custom_(.*)'),
568 device = deviceMatch ? deviceMatch[1] : 'desktop',
569 newSpaceBetween = this.getSpaceBetween(device);
570 if ('desktop' !== device) {
571 this.swiper.params.breakpoints[elementorFrontend.config.responsive.activeBreakpoints[device].value].spaceBetween = newSpaceBetween;
572 }
573 this.swiper.params.spaceBetween = newSpaceBetween;
574 this.swiper.update();
575 }
576 getPaginationBullets() {
577 let type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'array';
578 const paginationBullets = this.$element.find(this.getSettings('selectors').paginationBullet);
579 return 'array' === type ? Array.from(paginationBullets) : paginationBullets;
580 }
581 a11ySetWidgetAriaDetails() {
582 const $widget = this.$element;
583 $widget.attr('aria-roledescription', 'carousel');
584 $widget.attr('aria-label', elementorFrontend.config.i18n.a11yCarouselWrapperAriaLabel);
585 }
586 a11ySetPaginationTabindex() {
587 const bulletClass = this.swiper?.params.pagination.bulletClass,
588 activeBulletClass = this.swiper?.params.pagination.bulletActiveClass;
589 this.getPaginationBullets().forEach(bullet => {
590 if (!bullet.classList?.contains(activeBulletClass)) {
591 bullet.removeAttribute('tabindex');
592 }
593 });
594 const isDirectionInlineArrowKey = 'ArrowLeft' === event?.code || 'ArrowRight' === event?.code;
595 if (event?.target?.classList?.contains(bulletClass) && isDirectionInlineArrowKey) {
596 this.$element.find(`.${activeBulletClass}`).trigger('focus');
597 }
598 }
599 getSwiperWrapperTranformXValue() {
600 let transformValue = this.elements.$swiperWrapper[0]?.style.transform;
601 transformValue = transformValue.replace('translate3d(', '');
602 transformValue = transformValue.split(',');
603 transformValue = parseInt(transformValue[0].replace('px', ''));
604 return !!transformValue ? transformValue : 0;
605 }
606 a11ySetSlideAriaHidden() {
607 let status = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
608 const currentIndex = 'initialisation' === status ? 0 : this.swiper?.activeIndex;
609 if ('number' !== typeof currentIndex) {
610 return;
611 }
612 const swiperWrapperTransformXValue = this.getSwiperWrapperTranformXValue(),
613 swiperWrapperWidth = this.elements.$swiperWrapper[0].clientWidth,
614 $slides = this.elements.$swiperContainer.find(this.getSettings('selectors').slideContent);
615 $slides.each((index, slide) => {
616 const isSlideInsideWrapper = 0 <= slide.offsetLeft + swiperWrapperTransformXValue && swiperWrapperWidth > slide.offsetLeft + swiperWrapperTransformXValue;
617 if (!isSlideInsideWrapper) {
618 slide.setAttribute('aria-hidden', true);
619 slide.setAttribute('inert', '');
620 } else {
621 slide.removeAttribute('aria-hidden');
622 slide.removeAttribute('inert');
623 }
624 });
625 }
626
627 // Empty method which can be overwritten by child methods.
628 handleElementHandlers() {}
629 }
630 exports["default"] = CarouselHandlerBase;
631
632 /***/ }),
633
634 /***/ "../assets/dev/js/frontend/handlers/base-swiper.js":
635 /*!*********************************************************!*\
636 !*** ../assets/dev/js/frontend/handlers/base-swiper.js ***!
637 \*********************************************************/
638 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
639
640 "use strict";
641
642
643 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
644 Object.defineProperty(exports, "__esModule", ({
645 value: true
646 }));
647 exports["default"] = void 0;
648 var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../assets/dev/js/frontend/handlers/base.js"));
649 class SwiperHandlerBase extends _base.default {
650 getInitialSlide() {
651 const editSettings = this.getEditSettings();
652 return editSettings.activeItemIndex ? editSettings.activeItemIndex - 1 : 0;
653 }
654 getSlidesCount() {
655 return this.elements.$slides.length;
656 }
657
658 // This method live-handles the 'Pause On Hover' control's value being changed in the Editor Panel
659 togglePauseOnHover(toggleOn) {
660 if (toggleOn) {
661 this.elements.$swiperContainer.on({
662 mouseenter: () => {
663 this.swiper.autoplay.stop();
664 },
665 mouseleave: () => {
666 this.swiper.autoplay.start();
667 }
668 });
669 } else {
670 this.elements.$swiperContainer.off('mouseenter mouseleave');
671 }
672 }
673 handleKenBurns() {
674 const settings = this.getSettings();
675 if (this.$activeImageBg) {
676 this.$activeImageBg.removeClass(settings.classes.kenBurnsActive);
677 }
678 this.activeItemIndex = this.swiper ? this.swiper.activeIndex : this.getInitialSlide();
679 if (this.swiper) {
680 this.$activeImageBg = jQuery(this.swiper.slides[this.activeItemIndex]).children('.' + settings.classes.slideBackground);
681 } else {
682 this.$activeImageBg = jQuery(this.elements.$slides[0]).children('.' + settings.classes.slideBackground);
683 }
684 this.$activeImageBg.addClass(settings.classes.kenBurnsActive);
685 }
686 }
687 exports["default"] = SwiperHandlerBase;
688
689 /***/ }),
690
691 /***/ "../assets/dev/js/frontend/handlers/base.js":
692 /*!**************************************************!*\
693 !*** ../assets/dev/js/frontend/handlers/base.js ***!
694 \**************************************************/
695 /***/ ((module) => {
696
697 "use strict";
698
699
700 module.exports = elementorModules.ViewModule.extend({
701 $element: null,
702 editorListeners: null,
703 onElementChange: null,
704 onEditSettingsChange: null,
705 onPageSettingsChange: null,
706 isEdit: null,
707 __construct(settings) {
708 if (!this.isActive(settings)) {
709 return;
710 }
711 this.$element = settings.$element;
712 this.isEdit = this.$element.hasClass('elementor-element-edit-mode');
713 if (this.isEdit) {
714 this.addEditorListeners();
715 }
716 },
717 isActive() {
718 return true;
719 },
720 isElementInTheCurrentDocument() {
721 if (!elementorFrontend.isEditMode()) {
722 return false;
723 }
724 return elementor.documents.currentDocument.id.toString() === this.$element[0].closest('.elementor').dataset.elementorId;
725 },
726 findElement(selector) {
727 var $mainElement = this.$element;
728 return $mainElement.find(selector).filter(function () {
729 // Start `closest` from parent since self can be `.elementor-element`.
730 return jQuery(this).parent().closest('.elementor-element').is($mainElement);
731 });
732 },
733 getUniqueHandlerID(cid, $element) {
734 if (!cid) {
735 cid = this.getModelCID();
736 }
737 if (!$element) {
738 $element = this.$element;
739 }
740 return cid + $element.attr('data-element_type') + this.getConstructorID();
741 },
742 initEditorListeners() {
743 var self = this;
744 self.editorListeners = [{
745 event: 'element:destroy',
746 to: elementor.channels.data,
747 callback(removedModel) {
748 if (removedModel.cid !== self.getModelCID()) {
749 return;
750 }
751 self.onDestroy();
752 }
753 }];
754 if (self.onElementChange) {
755 const elementType = self.getWidgetType() || self.getElementType();
756 let eventName = 'change';
757 if ('global' !== elementType) {
758 eventName += ':' + elementType;
759 }
760 self.editorListeners.push({
761 event: eventName,
762 to: elementor.channels.editor,
763 callback(controlView, elementView) {
764 var elementViewHandlerID = self.getUniqueHandlerID(elementView.model.cid, elementView.$el);
765 if (elementViewHandlerID !== self.getUniqueHandlerID()) {
766 return;
767 }
768 self.onElementChange(controlView.model.get('name'), controlView, elementView);
769 }
770 });
771 }
772 if (self.onEditSettingsChange) {
773 self.editorListeners.push({
774 event: 'change:editSettings',
775 to: elementor.channels.editor,
776 callback(changedModel, view) {
777 if (view.model.cid !== self.getModelCID()) {
778 return;
779 }
780 const propName = Object.keys(changedModel.changed)[0];
781 self.onEditSettingsChange(propName, changedModel.changed[propName]);
782 }
783 });
784 }
785 ['page'].forEach(function (settingsType) {
786 var listenerMethodName = 'on' + settingsType[0].toUpperCase() + settingsType.slice(1) + 'SettingsChange';
787 if (self[listenerMethodName]) {
788 self.editorListeners.push({
789 event: 'change',
790 to: elementor.settings[settingsType].model,
791 callback(model) {
792 self[listenerMethodName](model.changed);
793 }
794 });
795 }
796 });
797 },
798 getEditorListeners() {
799 if (!this.editorListeners) {
800 this.initEditorListeners();
801 }
802 return this.editorListeners;
803 },
804 addEditorListeners() {
805 var uniqueHandlerID = this.getUniqueHandlerID();
806 this.getEditorListeners().forEach(function (listener) {
807 elementorFrontend.addListenerOnce(uniqueHandlerID, listener.event, listener.callback, listener.to);
808 });
809 },
810 removeEditorListeners() {
811 var uniqueHandlerID = this.getUniqueHandlerID();
812 this.getEditorListeners().forEach(function (listener) {
813 elementorFrontend.removeListeners(uniqueHandlerID, listener.event, null, listener.to);
814 });
815 },
816 getElementType() {
817 return this.$element.data('element_type');
818 },
819 getWidgetType() {
820 const widgetType = this.$element.data('widget_type');
821 if (!widgetType) {
822 return;
823 }
824 return widgetType.split('.')[0];
825 },
826 getID() {
827 return this.$element.data('id');
828 },
829 getModelCID() {
830 return this.$element.data('model-cid');
831 },
832 getElementSettings(setting) {
833 let elementSettings = {};
834 const modelCID = this.getModelCID();
835 if (this.isEdit && modelCID) {
836 const settings = elementorFrontend.config.elements.data[modelCID],
837 attributes = settings.attributes;
838 let type = attributes.widgetType || attributes.elType;
839 if (attributes.isInner) {
840 type = 'inner-' + type;
841 }
842 let settingsKeys = elementorFrontend.config.elements.keys[type];
843 if (!settingsKeys) {
844 settingsKeys = elementorFrontend.config.elements.keys[type] = [];
845 jQuery.each(settings.controls, (name, control) => {
846 if (control.frontend_available || control.editor_available) {
847 settingsKeys.push(name);
848 }
849 });
850 }
851 jQuery.each(settings.getActiveControls(), function (controlKey) {
852 if (-1 !== settingsKeys.indexOf(controlKey)) {
853 let value = attributes[controlKey];
854 if (value.toJSON) {
855 value = value.toJSON();
856 }
857 elementSettings[controlKey] = value;
858 }
859 });
860 } else {
861 elementSettings = this.$element.data('settings') || {};
862 }
863 return this.getItems(elementSettings, setting);
864 },
865 getEditSettings(setting) {
866 var attributes = {};
867 if (this.isEdit) {
868 attributes = elementorFrontend.config.elements.editSettings[this.getModelCID()].attributes;
869 }
870 return this.getItems(attributes, setting);
871 },
872 getCurrentDeviceSetting(settingKey) {
873 return elementorFrontend.getCurrentDeviceSetting(this.getElementSettings(), settingKey);
874 },
875 onInit() {
876 if (this.isActive(this.getSettings())) {
877 elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
878 }
879 },
880 onDestroy() {
881 if (this.isEdit) {
882 this.removeEditorListeners();
883 }
884 if (this.unbindEvents) {
885 this.unbindEvents();
886 }
887 }
888 });
889
890 /***/ }),
891
892 /***/ "../assets/dev/js/frontend/handlers/stretched-element.js":
893 /*!***************************************************************!*\
894 !*** ../assets/dev/js/frontend/handlers/stretched-element.js ***!
895 \***************************************************************/
896 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
897
898 "use strict";
899
900
901 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
902 Object.defineProperty(exports, "__esModule", ({
903 value: true
904 }));
905 exports["default"] = void 0;
906 var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../assets/dev/js/frontend/handlers/base.js"));
907 class StretchedElement extends _base.default {
908 getStretchedClass() {
909 return 'e-stretched';
910 }
911 getStretchSettingName() {
912 return 'stretch_element';
913 }
914 getStretchActiveValue() {
915 return 'yes';
916 }
917 bindEvents() {
918 const handlerID = this.getUniqueHandlerID();
919 elementorFrontend.addListenerOnce(handlerID, 'resize', this.stretch);
920 elementorFrontend.addListenerOnce(handlerID, 'sticky:stick', this.stretch, this.$element);
921 elementorFrontend.addListenerOnce(handlerID, 'sticky:unstick', this.stretch, this.$element);
922 if (elementorFrontend.isEditMode()) {
923 this.onKitChangeStretchContainerChange = this.onKitChangeStretchContainerChange.bind(this);
924 elementor.channels.editor.on('kit:change:stretchContainer', this.onKitChangeStretchContainerChange);
925 }
926 }
927 unbindEvents() {
928 elementorFrontend.removeListeners(this.getUniqueHandlerID(), 'resize', this.stretch);
929 if (elementorFrontend.isEditMode()) {
930 elementor.channels.editor.off('kit:change:stretchContainer', this.onKitChangeStretchContainerChange);
931 }
932 }
933 isActive(settings) {
934 return elementorFrontend.isEditMode() || settings.$element.hasClass(this.getStretchedClass());
935 }
936 getStretchElementForConfig() {
937 let childSelector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
938 if (childSelector) {
939 return this.$element.find(childSelector);
940 }
941 return this.$element;
942 }
943 getStretchElementConfig() {
944 return {
945 element: this.getStretchElementForConfig(),
946 selectors: {
947 container: this.getStretchContainer()
948 },
949 considerScrollbar: elementorFrontend.isEditMode() && elementorFrontend.config.is_rtl
950 };
951 }
952 initStretch() {
953 this.stretch = this.stretch.bind(this);
954 this.stretchElement = new elementorModules.frontend.tools.StretchElement(this.getStretchElementConfig());
955 }
956 getStretchContainer() {
957 return elementorFrontend.getKitSettings('stretched_section_container') || window;
958 }
959 isStretchSettingEnabled() {
960 return this.getElementSettings(this.getStretchSettingName()) === this.getStretchActiveValue();
961 }
962 stretch() {
963 if (!this.isStretchSettingEnabled()) {
964 return;
965 }
966 this.stretchElement.stretch();
967 }
968 onInit() {
969 if (!this.isActive(this.getSettings())) {
970 return;
971 }
972 this.initStretch();
973 super.onInit(...arguments);
974 this.stretch();
975 }
976 onElementChange(propertyName) {
977 const stretchSettingName = this.getStretchSettingName();
978 if (stretchSettingName === propertyName) {
979 if (this.isStretchSettingEnabled()) {
980 this.stretch();
981 } else {
982 this.stretchElement.reset();
983 }
984 }
985 }
986 onKitChangeStretchContainerChange() {
987 this.stretchElement.setSettings('selectors.container', this.getStretchContainer());
988 this.stretch();
989 }
990 }
991 exports["default"] = StretchedElement;
992
993 /***/ }),
994
995 /***/ "../assets/dev/js/frontend/modules.js":
996 /*!********************************************!*\
997 !*** ../assets/dev/js/frontend/modules.js ***!
998 \********************************************/
999 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
1000
1001 "use strict";
1002
1003
1004 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1005 var _modules = _interopRequireDefault(__webpack_require__(/*! ../modules/modules */ "../assets/dev/js/modules/modules.js"));
1006 var _document = _interopRequireDefault(__webpack_require__(/*! ./document */ "../assets/dev/js/frontend/document.js"));
1007 var _stretchElement = _interopRequireDefault(__webpack_require__(/*! ./tools/stretch-element */ "../assets/dev/js/frontend/tools/stretch-element.js"));
1008 var _stretchedElement = _interopRequireDefault(__webpack_require__(/*! ./handlers/stretched-element */ "../assets/dev/js/frontend/handlers/stretched-element.js"));
1009 var _base = _interopRequireDefault(__webpack_require__(/*! ./handlers/base */ "../assets/dev/js/frontend/handlers/base.js"));
1010 var _baseSwiper = _interopRequireDefault(__webpack_require__(/*! ./handlers/base-swiper */ "../assets/dev/js/frontend/handlers/base-swiper.js"));
1011 var _baseCarousel = _interopRequireDefault(__webpack_require__(/*! ./handlers/base-carousel */ "../assets/dev/js/frontend/handlers/base-carousel.js"));
1012 var _nestedTabs = _interopRequireDefault(__webpack_require__(/*! elementor/modules/nested-tabs/assets/js/frontend/handlers/nested-tabs */ "../modules/nested-tabs/assets/js/frontend/handlers/nested-tabs.js"));
1013 var _nestedAccordion = _interopRequireDefault(__webpack_require__(/*! elementor/modules/nested-accordion/assets/js/frontend/handlers/nested-accordion */ "../modules/nested-accordion/assets/js/frontend/handlers/nested-accordion.js"));
1014 var _nestedTitleKeyboardHandler = _interopRequireDefault(__webpack_require__(/*! ./handlers/accessibility/nested-title-keyboard-handler */ "../assets/dev/js/frontend/handlers/accessibility/nested-title-keyboard-handler.js"));
1015 _modules.default.frontend = {
1016 Document: _document.default,
1017 tools: {
1018 StretchElement: _stretchElement.default
1019 },
1020 handlers: {
1021 Base: _base.default,
1022 StretchedElement: _stretchedElement.default,
1023 SwiperBase: _baseSwiper.default,
1024 CarouselBase: _baseCarousel.default,
1025 NestedTabs: _nestedTabs.default,
1026 NestedAccordion: _nestedAccordion.default,
1027 NestedTitleKeyboardHandler: _nestedTitleKeyboardHandler.default
1028 }
1029 };
1030
1031 /***/ }),
1032
1033 /***/ "../assets/dev/js/frontend/tools/stretch-element.js":
1034 /*!**********************************************************!*\
1035 !*** ../assets/dev/js/frontend/tools/stretch-element.js ***!
1036 \**********************************************************/
1037 /***/ ((module) => {
1038
1039 "use strict";
1040
1041
1042 module.exports = elementorModules.ViewModule.extend({
1043 getDefaultSettings() {
1044 return {
1045 element: null,
1046 direction: elementorFrontend.config.is_rtl ? 'right' : 'left',
1047 selectors: {
1048 container: window
1049 },
1050 considerScrollbar: false,
1051 cssOutput: 'inline'
1052 };
1053 },
1054 getDefaultElements() {
1055 return {
1056 $element: jQuery(this.getSettings('element'))
1057 };
1058 },
1059 stretch() {
1060 const settings = this.getSettings();
1061 let $container;
1062 try {
1063 $container = jQuery(settings.selectors.container);
1064 // eslint-disable-next-line no-empty
1065 } catch (e) {}
1066 if (!$container || !$container.length) {
1067 $container = jQuery(this.getDefaultSettings().selectors.container);
1068 }
1069 this.reset();
1070 var $element = this.elements.$element,
1071 containerWidth = $container.innerWidth(),
1072 elementOffset = $element.offset().left,
1073 isFixed = 'fixed' === $element.css('position'),
1074 correctOffset = isFixed ? 0 : elementOffset,
1075 isContainerFullScreen = window === $container[0];
1076 if (!isContainerFullScreen) {
1077 var containerOffset = $container.offset().left;
1078 if (isFixed) {
1079 correctOffset = containerOffset;
1080 }
1081 if (elementOffset > containerOffset) {
1082 correctOffset = elementOffset - containerOffset;
1083 }
1084 }
1085 if (settings.considerScrollbar && isContainerFullScreen) {
1086 const scrollbarWidth = window.innerWidth - containerWidth;
1087 correctOffset -= scrollbarWidth;
1088 }
1089 if (!isFixed) {
1090 if (elementorFrontend.config.is_rtl) {
1091 correctOffset = containerWidth - ($element.outerWidth() + correctOffset);
1092 }
1093 correctOffset = -correctOffset;
1094 }
1095
1096 // Consider margin
1097 if (settings.margin) {
1098 correctOffset += settings.margin;
1099 }
1100 var css = {};
1101 let width = containerWidth;
1102 if (settings.margin) {
1103 width -= settings.margin * 2;
1104 }
1105 css.width = width + 'px';
1106 css[settings.direction] = correctOffset + 'px';
1107 if ('variables' === settings.cssOutput) {
1108 this.applyCssVariables($element, css);
1109 return;
1110 }
1111 $element.css(css);
1112 },
1113 reset() {
1114 const css = {},
1115 settings = this.getSettings(),
1116 $element = this.elements.$element;
1117 if ('variables' === settings.cssOutput) {
1118 this.resetCssVariables($element);
1119 return;
1120 }
1121 css.width = '';
1122 css[settings.direction] = '';
1123 $element.css(css);
1124 },
1125 applyCssVariables($element, css) {
1126 $element.css('--stretch-width', css.width);
1127 if (!!css.left) {
1128 $element.css('--stretch-left', css.left);
1129 } else {
1130 $element.css('--stretch-right', css.right);
1131 }
1132 },
1133 resetCssVariables($element) {
1134 $element.css({
1135 '--stretch-width': '',
1136 '--stretch-left': '',
1137 '--stretch-right': ''
1138 });
1139 }
1140 });
1141
1142 /***/ }),
1143
1144 /***/ "../assets/dev/js/frontend/utils/flex-horizontal-scroll.js":
1145 /*!*****************************************************************!*\
1146 !*** ../assets/dev/js/frontend/utils/flex-horizontal-scroll.js ***!
1147 \*****************************************************************/
1148 /***/ ((__unused_webpack_module, exports) => {
1149
1150 "use strict";
1151
1152
1153 Object.defineProperty(exports, "__esModule", ({
1154 value: true
1155 }));
1156 exports.changeScrollStatus = changeScrollStatus;
1157 exports.setHorizontalScrollAlignment = setHorizontalScrollAlignment;
1158 exports.setHorizontalTitleScrollValues = setHorizontalTitleScrollValues;
1159 function changeScrollStatus(element, event) {
1160 if ('mousedown' === event.type) {
1161 element.classList.add('e-scroll');
1162 element.dataset.pageX = event.pageX;
1163 } else {
1164 element.classList.remove('e-scroll', 'e-scroll-active');
1165 element.dataset.pageX = '';
1166 }
1167 }
1168
1169 // This function was written using this example https://codepen.io/thenutz/pen/VwYeYEE.
1170 function setHorizontalTitleScrollValues(element, horizontalScrollStatus, event) {
1171 const isActiveScroll = element.classList.contains('e-scroll'),
1172 isHorizontalScrollActive = 'enable' === horizontalScrollStatus,
1173 headingContentIsWiderThanWrapper = element.scrollWidth > element.clientWidth;
1174 if (!isActiveScroll || !isHorizontalScrollActive || !headingContentIsWiderThanWrapper) {
1175 return;
1176 }
1177 event.preventDefault();
1178 const previousPositionX = parseFloat(element.dataset.pageX),
1179 mouseMoveX = event.pageX - previousPositionX,
1180 maximumScrollValue = 5,
1181 stepLimit = 20;
1182 let toScrollDistanceX = 0;
1183 if (stepLimit < mouseMoveX) {
1184 toScrollDistanceX = maximumScrollValue;
1185 } else if (stepLimit * -1 > mouseMoveX) {
1186 toScrollDistanceX = -1 * maximumScrollValue;
1187 } else {
1188 toScrollDistanceX = mouseMoveX;
1189 }
1190 element.scrollLeft = element.scrollLeft - toScrollDistanceX;
1191 element.classList.add('e-scroll-active');
1192 }
1193 function setHorizontalScrollAlignment(_ref) {
1194 let {
1195 element,
1196 direction,
1197 justifyCSSVariable,
1198 horizontalScrollStatus
1199 } = _ref;
1200 if (!element) {
1201 return;
1202 }
1203 if (isHorizontalScroll(element, horizontalScrollStatus)) {
1204 initialScrollPosition(element, direction, justifyCSSVariable);
1205 } else {
1206 element.style.setProperty(justifyCSSVariable, '');
1207 }
1208 }
1209 function isHorizontalScroll(element, horizontalScrollStatus) {
1210 return element.clientWidth < getChildrenWidth(element.children) && 'enable' === horizontalScrollStatus;
1211 }
1212 function getChildrenWidth(children) {
1213 let totalWidth = 0;
1214 const parentContainer = children[0].parentNode,
1215 computedStyles = getComputedStyle(parentContainer),
1216 gap = parseFloat(computedStyles.gap) || 0; // Get the gap value or default to 0 if it's not specified
1217
1218 for (let i = 0; i < children.length; i++) {
1219 totalWidth += children[i].offsetWidth + gap;
1220 }
1221 return totalWidth;
1222 }
1223 function initialScrollPosition(element, direction, justifyCSSVariable) {
1224 const isRTL = elementorFrontend.config.is_rtl;
1225 switch (direction) {
1226 case 'end':
1227 element.style.setProperty(justifyCSSVariable, 'start');
1228 element.scrollLeft = isRTL ? -1 * getChildrenWidth(element.children) : getChildrenWidth(element.children);
1229 break;
1230 default:
1231 element.style.setProperty(justifyCSSVariable, 'start');
1232 element.scrollLeft = 0;
1233 }
1234 }
1235
1236 /***/ }),
1237
1238 /***/ "../assets/dev/js/modules/imports/args-object.js":
1239 /*!*******************************************************!*\
1240 !*** ../assets/dev/js/modules/imports/args-object.js ***!
1241 \*******************************************************/
1242 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1243
1244 "use strict";
1245
1246
1247 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1248 Object.defineProperty(exports, "__esModule", ({
1249 value: true
1250 }));
1251 exports["default"] = void 0;
1252 __webpack_require__(/*! core-js/modules/es.error.cause.js */ "../node_modules/core-js/modules/es.error.cause.js");
1253 var _instanceType = _interopRequireDefault(__webpack_require__(/*! ./instance-type */ "../assets/dev/js/modules/imports/instance-type.js"));
1254 var _isInstanceof = _interopRequireDefault(__webpack_require__(/*! ../../editor/utils/is-instanceof */ "../assets/dev/js/editor/utils/is-instanceof.js"));
1255 class ArgsObject extends _instanceType.default {
1256 static getInstanceType() {
1257 return 'ArgsObject';
1258 }
1259
1260 /**
1261 * Function constructor().
1262 *
1263 * Create ArgsObject.
1264 *
1265 * @param {{}} args
1266 */
1267 constructor(args) {
1268 super();
1269 this.args = args;
1270 }
1271
1272 /**
1273 * Function requireArgument().
1274 *
1275 * Validate property in args.
1276 *
1277 * @param {string} property
1278 * @param {{}} args
1279 *
1280 * @throws {Error}
1281 */
1282 requireArgument(property) {
1283 let args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.args;
1284 if (!Object.prototype.hasOwnProperty.call(args, property)) {
1285 throw Error(`${property} is required.`);
1286 }
1287 }
1288
1289 /**
1290 * Function requireArgumentType().
1291 *
1292 * Validate property in args using `type === typeof(args.whatever)`.
1293 *
1294 * @param {string} property
1295 * @param {string} type
1296 * @param {{}} args
1297 *
1298 * @throws {Error}
1299 */
1300 requireArgumentType(property, type) {
1301 let args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
1302 this.requireArgument(property, args);
1303 if (typeof args[property] !== type) {
1304 throw Error(`${property} invalid type: ${type}.`);
1305 }
1306 }
1307
1308 /**
1309 * Function requireArgumentInstance().
1310 *
1311 * Validate property in args using `args.whatever instanceof instance`.
1312 *
1313 * @param {string} property
1314 * @param {*} instance
1315 * @param {{}} args
1316 *
1317 * @throws {Error}
1318 */
1319 requireArgumentInstance(property, instance) {
1320 let args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
1321 this.requireArgument(property, args);
1322 if (!(args[property] instanceof instance) && !(0, _isInstanceof.default)(args[property], instance)) {
1323 throw Error(`${property} invalid instance.`);
1324 }
1325 }
1326
1327 /**
1328 * Function requireArgumentConstructor().
1329 *
1330 * Validate property in args using `type === args.whatever.constructor`.
1331 *
1332 * @param {string} property
1333 * @param {*} type
1334 * @param {{}} args
1335 *
1336 * @throws {Error}
1337 */
1338 requireArgumentConstructor(property, type) {
1339 let args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
1340 this.requireArgument(property, args);
1341
1342 // Note: Converting the constructor to string in order to avoid equation issues
1343 // due to different memory addresses between iframes (window.Object !== window.top.Object).
1344 if (args[property].constructor.toString() !== type.prototype.constructor.toString()) {
1345 throw Error(`${property} invalid constructor type.`);
1346 }
1347 }
1348 }
1349 exports["default"] = ArgsObject;
1350
1351 /***/ }),
1352
1353 /***/ "../assets/dev/js/modules/imports/force-method-implementation.js":
1354 /*!***********************************************************************!*\
1355 !*** ../assets/dev/js/modules/imports/force-method-implementation.js ***!
1356 \***********************************************************************/
1357 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1358
1359 "use strict";
1360
1361
1362 Object.defineProperty(exports, "__esModule", ({
1363 value: true
1364 }));
1365 exports["default"] = exports.ForceMethodImplementation = void 0;
1366 __webpack_require__(/*! core-js/modules/es.error.cause.js */ "../node_modules/core-js/modules/es.error.cause.js");
1367 // TODO: Wrong location used as `elementorModules.ForceMethodImplementation(); should be` `elementorUtils.forceMethodImplementation()`;
1368
1369 class ForceMethodImplementation extends Error {
1370 constructor() {
1371 let info = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1372 let args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1373 super(`${info.isStatic ? 'static ' : ''}${info.fullName}() should be implemented, please provide '${info.functionName || info.fullName}' functionality.`, args);
1374
1375 // Allow to pass custom properties to the error.
1376 if (Object.keys(args).length) {
1377 // eslint-disable-next-line no-console
1378 console.error(args);
1379 }
1380 Error.captureStackTrace(this, ForceMethodImplementation);
1381 }
1382 }
1383 exports.ForceMethodImplementation = ForceMethodImplementation;
1384 var _default = args => {
1385 const stack = Error().stack,
1386 caller = stack.split('\n')[2].trim(),
1387 callerName = caller.startsWith('at new') ? 'constructor' : caller.split(' ')[1],
1388 info = {};
1389 info.functionName = callerName;
1390 info.fullName = callerName;
1391 if (info.functionName.includes('.')) {
1392 const parts = info.functionName.split('.');
1393 info.className = parts[0];
1394 info.functionName = parts[1];
1395 } else {
1396 info.isStatic = true;
1397 }
1398 throw new ForceMethodImplementation(info, args);
1399 };
1400 exports["default"] = _default;
1401
1402 /***/ }),
1403
1404 /***/ "../assets/dev/js/modules/imports/instance-type.js":
1405 /*!*********************************************************!*\
1406 !*** ../assets/dev/js/modules/imports/instance-type.js ***!
1407 \*********************************************************/
1408 /***/ ((__unused_webpack_module, exports) => {
1409
1410 "use strict";
1411
1412
1413 Object.defineProperty(exports, "__esModule", ({
1414 value: true
1415 }));
1416 exports["default"] = void 0;
1417 class InstanceType {
1418 static [Symbol.hasInstance](target) {
1419 /**
1420 * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
1421 * its give's opportunity to mange capabilities of instanceOf operator.
1422 * saving current class each time will give option later to handle instanceOf manually.
1423 */
1424 let result = super[Symbol.hasInstance](target);
1425
1426 // Act normal when validate a class, which does not have instance type.
1427 if (target && !target.constructor.getInstanceType) {
1428 return result;
1429 }
1430 if (target) {
1431 if (!target.instanceTypes) {
1432 target.instanceTypes = [];
1433 }
1434 if (!result) {
1435 if (this.getInstanceType() === target.constructor.getInstanceType()) {
1436 result = true;
1437 }
1438 }
1439 if (result) {
1440 const name = this.getInstanceType === InstanceType.getInstanceType ? 'BaseInstanceType' : this.getInstanceType();
1441 if (-1 === target.instanceTypes.indexOf(name)) {
1442 target.instanceTypes.push(name);
1443 }
1444 }
1445 }
1446 if (!result && target) {
1447 // Check if the given 'target', is instance of known types.
1448 result = target.instanceTypes && Array.isArray(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
1449 }
1450 return result;
1451 }
1452 static getInstanceType() {
1453 elementorModules.ForceMethodImplementation();
1454 }
1455 constructor() {
1456 // Since anonymous classes sometimes do not get validated by babel, do it manually.
1457 let target = new.target;
1458 const prototypes = [];
1459 while (target.__proto__ && target.__proto__.name) {
1460 prototypes.push(target.__proto__);
1461 target = target.__proto__;
1462 }
1463 prototypes.reverse().forEach(proto => this instanceof proto);
1464 }
1465 }
1466 exports["default"] = InstanceType;
1467
1468 /***/ }),
1469
1470 /***/ "../assets/dev/js/modules/imports/module.js":
1471 /*!**************************************************!*\
1472 !*** ../assets/dev/js/modules/imports/module.js ***!
1473 \**************************************************/
1474 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1475
1476 "use strict";
1477
1478
1479 __webpack_require__(/*! core-js/modules/es.error.cause.js */ "../node_modules/core-js/modules/es.error.cause.js");
1480 const Module = function () {
1481 const $ = jQuery,
1482 instanceParams = arguments,
1483 self = this,
1484 events = {};
1485 let settings;
1486 const ensureClosureMethods = function () {
1487 $.each(self, function (methodName) {
1488 const oldMethod = self[methodName];
1489 if ('function' !== typeof oldMethod) {
1490 return;
1491 }
1492 self[methodName] = function () {
1493 return oldMethod.apply(self, arguments);
1494 };
1495 });
1496 };
1497 const initSettings = function () {
1498 settings = self.getDefaultSettings();
1499 const instanceSettings = instanceParams[0];
1500 if (instanceSettings) {
1501 $.extend(true, settings, instanceSettings);
1502 }
1503 };
1504 const init = function () {
1505 self.__construct.apply(self, instanceParams);
1506 ensureClosureMethods();
1507 initSettings();
1508 self.trigger('init');
1509 };
1510 this.getItems = function (items, itemKey) {
1511 if (itemKey) {
1512 const keyStack = itemKey.split('.'),
1513 currentKey = keyStack.splice(0, 1);
1514 if (!keyStack.length) {
1515 return items[currentKey];
1516 }
1517 if (!items[currentKey]) {
1518 return;
1519 }
1520 return this.getItems(items[currentKey], keyStack.join('.'));
1521 }
1522 return items;
1523 };
1524 this.getSettings = function (setting) {
1525 return this.getItems(settings, setting);
1526 };
1527 this.setSettings = function (settingKey, value, settingsContainer) {
1528 if (!settingsContainer) {
1529 settingsContainer = settings;
1530 }
1531 if ('object' === typeof settingKey) {
1532 $.extend(settingsContainer, settingKey);
1533 return self;
1534 }
1535 const keyStack = settingKey.split('.'),
1536 currentKey = keyStack.splice(0, 1);
1537 if (!keyStack.length) {
1538 settingsContainer[currentKey] = value;
1539 return self;
1540 }
1541 if (!settingsContainer[currentKey]) {
1542 settingsContainer[currentKey] = {};
1543 }
1544 return self.setSettings(keyStack.join('.'), value, settingsContainer[currentKey]);
1545 };
1546 this.getErrorMessage = function (type, functionName) {
1547 let message;
1548 switch (type) {
1549 case 'forceMethodImplementation':
1550 message = `The method '${functionName}' must to be implemented in the inheritor child.`;
1551 break;
1552 default:
1553 message = 'An error occurs';
1554 }
1555 return message;
1556 };
1557
1558 // TODO: This function should be deleted ?.
1559 this.forceMethodImplementation = function (functionName) {
1560 throw new Error(this.getErrorMessage('forceMethodImplementation', functionName));
1561 };
1562 this.on = function (eventName, callback) {
1563 if ('object' === typeof eventName) {
1564 $.each(eventName, function (singleEventName) {
1565 self.on(singleEventName, this);
1566 });
1567 return self;
1568 }
1569 const eventNames = eventName.split(' ');
1570 eventNames.forEach(function (singleEventName) {
1571 if (!events[singleEventName]) {
1572 events[singleEventName] = [];
1573 }
1574 events[singleEventName].push(callback);
1575 });
1576 return self;
1577 };
1578 this.off = function (eventName, callback) {
1579 if (!events[eventName]) {
1580 return self;
1581 }
1582 if (!callback) {
1583 delete events[eventName];
1584 return self;
1585 }
1586 const callbackIndex = events[eventName].indexOf(callback);
1587 if (-1 !== callbackIndex) {
1588 delete events[eventName][callbackIndex];
1589
1590 // Reset array index (for next off on same event).
1591 events[eventName] = events[eventName].filter(val => val);
1592 }
1593 return self;
1594 };
1595 this.trigger = function (eventName) {
1596 const methodName = 'on' + eventName[0].toUpperCase() + eventName.slice(1),
1597 params = Array.prototype.slice.call(arguments, 1);
1598 if (self[methodName]) {
1599 self[methodName].apply(self, params);
1600 }
1601 const callbacks = events[eventName];
1602 if (!callbacks) {
1603 return self;
1604 }
1605 $.each(callbacks, function (index, callback) {
1606 callback.apply(self, params);
1607 });
1608 return self;
1609 };
1610 init();
1611 };
1612 Module.prototype.__construct = function () {};
1613 Module.prototype.getDefaultSettings = function () {
1614 return {};
1615 };
1616 Module.prototype.getConstructorID = function () {
1617 return this.constructor.name;
1618 };
1619 Module.extend = function (properties) {
1620 const $ = jQuery,
1621 parent = this;
1622 const child = function () {
1623 return parent.apply(this, arguments);
1624 };
1625 $.extend(child, parent);
1626 child.prototype = Object.create($.extend({}, parent.prototype, properties));
1627 child.prototype.constructor = child;
1628 child.__super__ = parent.prototype;
1629 return child;
1630 };
1631 module.exports = Module;
1632
1633 /***/ }),
1634
1635 /***/ "../assets/dev/js/modules/imports/utils/masonry.js":
1636 /*!*********************************************************!*\
1637 !*** ../assets/dev/js/modules/imports/utils/masonry.js ***!
1638 \*********************************************************/
1639 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1640
1641 "use strict";
1642
1643
1644 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1645 Object.defineProperty(exports, "__esModule", ({
1646 value: true
1647 }));
1648 exports["default"] = void 0;
1649 var _viewModule = _interopRequireDefault(__webpack_require__(/*! ../view-module */ "../assets/dev/js/modules/imports/view-module.js"));
1650 var _default = _viewModule.default.extend({
1651 getDefaultSettings() {
1652 return {
1653 container: null,
1654 items: null,
1655 columnsCount: 3,
1656 verticalSpaceBetween: 30
1657 };
1658 },
1659 getDefaultElements() {
1660 return {
1661 $container: jQuery(this.getSettings('container')),
1662 $items: jQuery(this.getSettings('items'))
1663 };
1664 },
1665 run() {
1666 var heights = [],
1667 distanceFromTop = this.elements.$container.position().top,
1668 settings = this.getSettings(),
1669 columnsCount = settings.columnsCount;
1670 distanceFromTop += parseInt(this.elements.$container.css('margin-top'), 10);
1671 this.elements.$items.each(function (index) {
1672 var row = Math.floor(index / columnsCount),
1673 $item = jQuery(this),
1674 itemHeight = $item[0].getBoundingClientRect().height + settings.verticalSpaceBetween;
1675 if (row) {
1676 var itemPosition = $item.position(),
1677 indexAtRow = index % columnsCount,
1678 pullHeight = itemPosition.top - distanceFromTop - heights[indexAtRow];
1679 pullHeight -= parseInt($item.css('margin-top'), 10);
1680 pullHeight *= -1;
1681 $item.css('margin-top', pullHeight + 'px');
1682 heights[indexAtRow] += itemHeight;
1683 } else {
1684 heights.push(itemHeight);
1685 }
1686 });
1687 }
1688 });
1689 exports["default"] = _default;
1690
1691 /***/ }),
1692
1693 /***/ "../assets/dev/js/modules/imports/utils/scroll.js":
1694 /*!********************************************************!*\
1695 !*** ../assets/dev/js/modules/imports/utils/scroll.js ***!
1696 \********************************************************/
1697 /***/ ((__unused_webpack_module, exports) => {
1698
1699 "use strict";
1700
1701
1702 Object.defineProperty(exports, "__esModule", ({
1703 value: true
1704 }));
1705 exports["default"] = void 0;
1706 // Moved from elementor pro: 'assets/dev/js/frontend/utils'
1707 class Scroll {
1708 /**
1709 * @param {Object} obj
1710 * @param {number} obj.sensitivity - Value between 0-100 - Will determine the intersection trigger points on the element
1711 * @param {Function} obj.callback - Will be triggered on each intersection point between the element and the viewport top/bottom
1712 * @param {string} obj.offset - Offset between the element intersection points and the viewport, written like in CSS: '-50% 0 -25%'
1713 * @param {HTMLElement} obj.root - The element that the events will be relative to, if 'null' will be relative to the viewport
1714 */
1715 static scrollObserver(obj) {
1716 let lastScrollY = 0;
1717
1718 // Generating threshholds points along the animation height
1719 // More threshholds points = more trigger points of the callback
1720 const buildThreshholds = function () {
1721 let sensitivityPercentage = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
1722 const threshholds = [];
1723 if (sensitivityPercentage > 0 && sensitivityPercentage <= 100) {
1724 const increment = 100 / sensitivityPercentage;
1725 for (let i = 0; i <= 100; i += increment) {
1726 threshholds.push(i / 100);
1727 }
1728 } else {
1729 threshholds.push(0);
1730 }
1731 return threshholds;
1732 };
1733 const options = {
1734 root: obj.root || null,
1735 rootMargin: obj.offset || '0px',
1736 threshold: buildThreshholds(obj.sensitivity)
1737 };
1738 function handleIntersect(entries) {
1739 const currentScrollY = entries[0].boundingClientRect.y,
1740 isInViewport = entries[0].isIntersecting,
1741 intersectionScrollDirection = currentScrollY < lastScrollY ? 'down' : 'up',
1742 scrollPercentage = Math.abs(parseFloat((entries[0].intersectionRatio * 100).toFixed(2)));
1743 obj.callback({
1744 sensitivity: obj.sensitivity,
1745 isInViewport,
1746 scrollPercentage,
1747 intersectionScrollDirection
1748 });
1749 lastScrollY = currentScrollY;
1750 }
1751 return new IntersectionObserver(handleIntersect, options);
1752 }
1753
1754 /**
1755 * @param {jQuery.Element} $element
1756 * @param {Object} offsetObj
1757 * @param {number} offsetObj.start - Offset start value in percentages
1758 * @param {number} offsetObj.end - Offset end value in percentages
1759 */
1760 static getElementViewportPercentage($element) {
1761 let offsetObj = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1762 const elementOffset = $element[0].getBoundingClientRect(),
1763 offsetStart = offsetObj.start || 0,
1764 offsetEnd = offsetObj.end || 0,
1765 windowStartOffset = window.innerHeight * offsetStart / 100,
1766 windowEndOffset = window.innerHeight * offsetEnd / 100,
1767 y1 = elementOffset.top - window.innerHeight,
1768 y2 = elementOffset.top + windowStartOffset + $element.height(),
1769 startPosition = 0 - y1 + windowStartOffset,
1770 endPosition = y2 - y1 + windowEndOffset,
1771 percent = Math.max(0, Math.min(startPosition / endPosition, 1));
1772 return parseFloat((percent * 100).toFixed(2));
1773 }
1774
1775 /**
1776 * @param {Object} offsetObj
1777 * @param {number} offsetObj.start - Offset start value in percentages
1778 * @param {number} offsetObj.end - Offset end value in percentages
1779 * @param {number} limitPageHeight - Will limit the page height calculation
1780 */
1781 static getPageScrollPercentage() {
1782 let offsetObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1783 let limitPageHeight = arguments.length > 1 ? arguments[1] : undefined;
1784 const offsetStart = offsetObj.start || 0,
1785 offsetEnd = offsetObj.end || 0,
1786 initialPageHeight = limitPageHeight || document.documentElement.scrollHeight - document.documentElement.clientHeight,
1787 heightOffset = initialPageHeight * offsetStart / 100,
1788 pageRange = initialPageHeight + heightOffset + initialPageHeight * offsetEnd / 100,
1789 scrollPos = document.documentElement.scrollTop + document.body.scrollTop + heightOffset;
1790 return scrollPos / pageRange * 100;
1791 }
1792 }
1793 exports["default"] = Scroll;
1794
1795 /***/ }),
1796
1797 /***/ "../assets/dev/js/modules/imports/view-module.js":
1798 /*!*******************************************************!*\
1799 !*** ../assets/dev/js/modules/imports/view-module.js ***!
1800 \*******************************************************/
1801 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1802
1803 "use strict";
1804
1805
1806 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1807 Object.defineProperty(exports, "__esModule", ({
1808 value: true
1809 }));
1810 exports["default"] = void 0;
1811 var _module = _interopRequireDefault(__webpack_require__(/*! ./module */ "../assets/dev/js/modules/imports/module.js"));
1812 var _default = _module.default.extend({
1813 elements: null,
1814 getDefaultElements() {
1815 return {};
1816 },
1817 bindEvents() {},
1818 onInit() {
1819 this.initElements();
1820 this.bindEvents();
1821 },
1822 initElements() {
1823 this.elements = this.getDefaultElements();
1824 }
1825 });
1826 exports["default"] = _default;
1827
1828 /***/ }),
1829
1830 /***/ "../assets/dev/js/modules/modules.js":
1831 /*!*******************************************!*\
1832 !*** ../assets/dev/js/modules/modules.js ***!
1833 \*******************************************/
1834 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1835
1836 "use strict";
1837
1838
1839 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1840 Object.defineProperty(exports, "__esModule", ({
1841 value: true
1842 }));
1843 exports["default"] = void 0;
1844 var _module = _interopRequireDefault(__webpack_require__(/*! ./imports/module */ "../assets/dev/js/modules/imports/module.js"));
1845 var _viewModule = _interopRequireDefault(__webpack_require__(/*! ./imports/view-module */ "../assets/dev/js/modules/imports/view-module.js"));
1846 var _argsObject = _interopRequireDefault(__webpack_require__(/*! ./imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));
1847 var _masonry = _interopRequireDefault(__webpack_require__(/*! ./imports/utils/masonry */ "../assets/dev/js/modules/imports/utils/masonry.js"));
1848 var _scroll = _interopRequireDefault(__webpack_require__(/*! ./imports/utils/scroll */ "../assets/dev/js/modules/imports/utils/scroll.js"));
1849 var _forceMethodImplementation = _interopRequireDefault(__webpack_require__(/*! ./imports/force-method-implementation */ "../assets/dev/js/modules/imports/force-method-implementation.js"));
1850 var _default = window.elementorModules = {
1851 Module: _module.default,
1852 ViewModule: _viewModule.default,
1853 ArgsObject: _argsObject.default,
1854 ForceMethodImplementation: _forceMethodImplementation.default,
1855 utils: {
1856 Masonry: _masonry.default,
1857 Scroll: _scroll.default
1858 }
1859 };
1860 exports["default"] = _default;
1861
1862 /***/ }),
1863
1864 /***/ "../modules/nested-accordion/assets/js/frontend/handlers/nested-accordion-title-keyboard-handler.js":
1865 /*!**********************************************************************************************************!*\
1866 !*** ../modules/nested-accordion/assets/js/frontend/handlers/nested-accordion-title-keyboard-handler.js ***!
1867 \**********************************************************************************************************/
1868 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1869
1870 "use strict";
1871
1872
1873 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1874 Object.defineProperty(exports, "__esModule", ({
1875 value: true
1876 }));
1877 exports["default"] = void 0;
1878 var _nestedTitleKeyboardHandler = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/frontend/handlers/accessibility/nested-title-keyboard-handler */ "../assets/dev/js/frontend/handlers/accessibility/nested-title-keyboard-handler.js"));
1879 class NestedAccordionTitleKeyboardHandler extends _nestedTitleKeyboardHandler.default {
1880 __construct() {
1881 super.__construct(...arguments);
1882 const config = arguments.length <= 0 ? undefined : arguments[0];
1883 this.toggleTitle = config.toggleTitle;
1884 }
1885 getDefaultSettings() {
1886 const parentSettings = super.getDefaultSettings();
1887 return {
1888 ...parentSettings,
1889 selectors: {
1890 itemTitle: '.e-n-accordion-item-title',
1891 itemContainer: '.e-n-accordion-item > .e-con'
1892 },
1893 ariaAttributes: {
1894 titleStateAttribute: 'aria-expanded',
1895 activeTitleSelector: '[aria-expanded="true"]'
1896 },
1897 datasets: {
1898 titleIndex: 'data-accordion-index'
1899 }
1900 };
1901 }
1902 handeTitleLinkEnterOrSpaceEvent(event) {
1903 this.toggleTitle(event);
1904 }
1905 handleContentElementEscapeEvents(event) {
1906 this.getActiveTitleElement().trigger('focus');
1907 this.toggleTitle(event);
1908 }
1909 handleTitleEscapeKeyEvents(event) {
1910 const detailsNode = event?.currentTarget?.parentElement,
1911 isOpen = detailsNode?.open;
1912 if (isOpen) {
1913 this.toggleTitle(event);
1914 }
1915 }
1916 }
1917 exports["default"] = NestedAccordionTitleKeyboardHandler;
1918
1919 /***/ }),
1920
1921 /***/ "../modules/nested-accordion/assets/js/frontend/handlers/nested-accordion.js":
1922 /*!***********************************************************************************!*\
1923 !*** ../modules/nested-accordion/assets/js/frontend/handlers/nested-accordion.js ***!
1924 \***********************************************************************************/
1925 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1926
1927 "use strict";
1928
1929
1930 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1931 Object.defineProperty(exports, "__esModule", ({
1932 value: true
1933 }));
1934 exports["default"] = void 0;
1935 var _base = _interopRequireDefault(__webpack_require__(/*! elementor-frontend/handlers/base */ "../assets/dev/js/frontend/handlers/base.js"));
1936 var _nestedAccordionTitleKeyboardHandler = _interopRequireDefault(__webpack_require__(/*! ./nested-accordion-title-keyboard-handler */ "../modules/nested-accordion/assets/js/frontend/handlers/nested-accordion-title-keyboard-handler.js"));
1937 class NestedAccordion extends _base.default {
1938 constructor() {
1939 super(...arguments);
1940 this.animations = new Map();
1941 }
1942 getDefaultSettings() {
1943 return {
1944 selectors: {
1945 accordion: '.e-n-accordion',
1946 accordionContentContainers: '.e-n-accordion > .e-con',
1947 accordionItems: '.e-n-accordion-item',
1948 accordionItemTitles: '.e-n-accordion-item-title',
1949 accordionItemTitlesText: '.e-n-accordion-item-title-text',
1950 accordionContent: '.e-n-accordion-item > .e-con',
1951 directAccordionItems: ':scope > .e-n-accordion-item',
1952 directAccordionItemTitles: ':scope > .e-n-accordion-item > .e-n-accordion-item-title'
1953 },
1954 default_state: 'expanded',
1955 attributes: {
1956 index: 'data-accordion-index',
1957 ariaLabelledBy: 'aria-labelledby'
1958 }
1959 };
1960 }
1961 getDefaultElements() {
1962 const selectors = this.getSettings('selectors');
1963 return {
1964 $accordion: this.findElement(selectors.accordion),
1965 $contentContainers: this.findElement(selectors.accordionContentContainers),
1966 $accordionItems: this.findElement(selectors.accordionItems),
1967 $accordionTitles: this.findElement(selectors.accordionItemTitles),
1968 $accordionContent: this.findElement(selectors.accordionContent)
1969 };
1970 }
1971 onInit() {
1972 super.onInit(...arguments);
1973 if (elementorFrontend.isEditMode()) {
1974 this.interlaceContainers();
1975 }
1976 this.injectKeyboardHandler();
1977 }
1978 injectKeyboardHandler() {
1979 if ('nested-accordion.default' === this.getSettings('elementName')) {
1980 new _nestedAccordionTitleKeyboardHandler.default({
1981 $element: this.$element,
1982 toggleTitle: this.clickListener.bind(this)
1983 });
1984 }
1985 }
1986 interlaceContainers() {
1987 const {
1988 $contentContainers,
1989 $accordionItems
1990 } = this.getDefaultElements();
1991 $contentContainers.each((index, element) => {
1992 $accordionItems[index].appendChild(element);
1993 });
1994 }
1995 linkContainer(event) {
1996 const {
1997 container,
1998 index,
1999 targetContainer,
2000 action: {
2001 type
2002 }
2003 } = event.detail,
2004 view = container.view.$el,
2005 id = container.model.get('id'),
2006 currentId = this.$element.data('id');
2007 if (id === currentId) {
2008 const {
2009 $accordionItems
2010 } = this.getDefaultElements();
2011 let accordionItem, contentContainer;
2012 switch (type) {
2013 case 'move':
2014 [accordionItem, contentContainer] = this.move(view, index, targetContainer, $accordionItems);
2015 break;
2016 case 'duplicate':
2017 [accordionItem, contentContainer] = this.duplicate(view, index, targetContainer, $accordionItems);
2018 break;
2019 default:
2020 break;
2021 }
2022 if (undefined !== accordionItem) {
2023 accordionItem.appendChild(contentContainer);
2024 }
2025 this.updateIndexValues();
2026 this.updateListeners(view);
2027 elementor.$preview[0].contentWindow.dispatchEvent(new CustomEvent('elementor/elements/link-data-bindings'));
2028 }
2029 }
2030 move(view, index, targetContainer, accordionItems) {
2031 return [accordionItems[index], targetContainer.view.$el[0]];
2032 }
2033 duplicate(view, index, targetContainer, accordionItems) {
2034 return [accordionItems[index + 1], targetContainer.view.$el[0]];
2035 }
2036 updateIndexValues() {
2037 const {
2038 $accordionContent,
2039 $accordionItems
2040 } = this.getDefaultElements(),
2041 settings = this.getSettings(),
2042 itemIdBase = $accordionItems[0].getAttribute('id').slice(0, -1);
2043 $accordionItems.each((index, element) => {
2044 element.setAttribute('id', `${itemIdBase}${index}`);
2045 element.querySelector(settings.selectors.accordionItemTitles).setAttribute(settings.attributes.index, index + 1);
2046 element.querySelector(settings.selectors.accordionItemTitles).setAttribute('aria-controls', `${itemIdBase}${index}`);
2047 element.querySelector(settings.selectors.accordionItemTitlesText).setAttribute('data-binding-index', index + 1);
2048 $accordionContent[index].setAttribute(settings.attributes.ariaLabelledBy, `${itemIdBase}${index}`);
2049 });
2050 }
2051 updateListeners(view) {
2052 this.elements.$accordionTitles = view.find(this.getSettings('selectors.accordionItemTitles'));
2053 this.elements.$accordionItems = view.find(this.getSettings('selectors.accordionItems'));
2054 this.elements.$accordionTitles.on('click', this.clickListener.bind(this));
2055 }
2056 bindEvents() {
2057 this.elements.$accordionTitles.on('click', this.clickListener.bind(this));
2058 elementorFrontend.elements.$window.on('elementor/nested-container/atomic-repeater', this.linkContainer.bind(this));
2059 }
2060 unbindEvents() {
2061 this.elements.$accordionTitles.off();
2062 }
2063 clickListener(event) {
2064 event.preventDefault();
2065 this.elements = this.getDefaultElements();
2066 const settings = this.getSettings(),
2067 accordionItem = event?.currentTarget?.closest(settings.selectors.accordionItems),
2068 accordion = event?.currentTarget?.closest(settings.selectors.accordion),
2069 itemSummary = accordionItem.querySelector(settings.selectors.accordionItemTitles),
2070 accordionContent = accordionItem.querySelector(settings.selectors.accordionContent),
2071 {
2072 max_items_expended: maxItemsExpended
2073 } = this.getElementSettings(),
2074 directAccordionItems = accordion.querySelectorAll(settings.selectors.directAccordionItems),
2075 directAccordionItemTitles = accordion.querySelectorAll(settings.selectors.directAccordionItemTitles);
2076 if ('one' === maxItemsExpended) {
2077 this.closeAllItems(directAccordionItems, directAccordionItemTitles);
2078 }
2079 if (!accordionItem.open) {
2080 this.prepareOpenAnimation(accordionItem, itemSummary, accordionContent);
2081 } else {
2082 this.closeAccordionItem(accordionItem, itemSummary);
2083 }
2084 }
2085 animateItem(accordionItem, startHeight, endHeight, isOpen) {
2086 accordionItem.style.overflow = 'hidden';
2087 let animation = this.animations.get(accordionItem);
2088 if (animation) {
2089 animation.cancel();
2090 }
2091 animation = accordionItem.animate({
2092 height: [startHeight, endHeight]
2093 }, {
2094 duration: this.getAnimationDuration()
2095 });
2096 animation.onfinish = () => this.onAnimationFinish(accordionItem, isOpen);
2097 this.animations.set(accordionItem, animation);
2098 accordionItem.querySelector('summary')?.setAttribute('aria-expanded', isOpen);
2099 }
2100 closeAccordionItem(accordionItem, accordionItemTitle) {
2101 const startHeight = `${accordionItem.offsetHeight}px`,
2102 endHeight = `${accordionItemTitle.offsetHeight}px`;
2103 this.animateItem(accordionItem, startHeight, endHeight, false);
2104 }
2105 prepareOpenAnimation(accordionItem, accordionItemTitle, accordionItemContent) {
2106 accordionItem.style.overflow = 'hidden';
2107 accordionItem.style.height = `${accordionItem.offsetHeight}px`;
2108 accordionItem.open = true;
2109 window.requestAnimationFrame(() => this.openAccordionItem(accordionItem, accordionItemTitle, accordionItemContent));
2110 }
2111 openAccordionItem(accordionItem, accordionItemTitle, accordionItemContent) {
2112 const startHeight = `${accordionItem.offsetHeight}px`,
2113 endHeight = `${accordionItemTitle.offsetHeight + accordionItemContent.offsetHeight}px`;
2114 this.animateItem(accordionItem, startHeight, endHeight, true);
2115 }
2116 onAnimationFinish(accordionItem, isOpen) {
2117 accordionItem.open = isOpen;
2118 this.animations.set(accordionItem, null);
2119 accordionItem.style.height = accordionItem.style.overflow = '';
2120 }
2121 closeAllItems(items, titles) {
2122 titles.forEach((title, index) => {
2123 this.closeAccordionItem(items[index], title);
2124 });
2125 }
2126 getAnimationDuration() {
2127 const {
2128 size,
2129 unit
2130 } = this.getElementSettings('n_accordion_animation_duration');
2131 return size * ('ms' === unit ? 1 : 1000);
2132 }
2133 }
2134 exports["default"] = NestedAccordion;
2135
2136 /***/ }),
2137
2138 /***/ "../modules/nested-tabs/assets/js/frontend/handlers/nested-tabs.js":
2139 /*!*************************************************************************!*\
2140 !*** ../modules/nested-tabs/assets/js/frontend/handlers/nested-tabs.js ***!
2141 \*************************************************************************/
2142 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2143
2144 "use strict";
2145
2146
2147 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2148 Object.defineProperty(exports, "__esModule", ({
2149 value: true
2150 }));
2151 exports["default"] = void 0;
2152 var _base = _interopRequireDefault(__webpack_require__(/*! elementor-frontend/handlers/base */ "../assets/dev/js/frontend/handlers/base.js"));
2153 var _flexHorizontalScroll = __webpack_require__(/*! elementor-frontend-utils/flex-horizontal-scroll */ "../assets/dev/js/frontend/utils/flex-horizontal-scroll.js");
2154 class NestedTabs extends _base.default {
2155 constructor() {
2156 super(...arguments);
2157 this.resizeListenerNestedTabs = null;
2158 }
2159
2160 /**
2161 * @param {string|number} tabIndex
2162 *
2163 * @return {string}
2164 */
2165 getTabTitleFilterSelector(tabIndex) {
2166 return `[data-tab-index="${tabIndex}"]`;
2167 }
2168
2169 /**
2170 * @param {string|number} tabIndex
2171 *
2172 * @return {string}
2173 */
2174 getTabContentFilterSelector(tabIndex) {
2175 return `*:nth-child(${tabIndex})`;
2176 }
2177
2178 /**
2179 * @param {HTMLElement} tabTitleElement
2180 *
2181 * @return {string}
2182 */
2183 getTabIndex(tabTitleElement) {
2184 return tabTitleElement.getAttribute('data-tab-index');
2185 }
2186 getDefaultSettings() {
2187 return {
2188 selectors: {
2189 widgetContainer: '.e-n-tabs',
2190 tabTitle: '.e-n-tab-title',
2191 tabTitleText: '.e-n-tab-title-text',
2192 tabContent: '.e-n-tabs-content > .e-con',
2193 headingContainer: '.e-n-tabs-heading',
2194 activeTabContentContainers: '.e-con.e-active'
2195 },
2196 classes: {
2197 active: 'e-active'
2198 },
2199 ariaAttributes: {
2200 titleStateAttribute: 'aria-selected',
2201 activeTitleSelector: '[aria-selected="true"]'
2202 },
2203 showTabFn: 'show',
2204 hideTabFn: 'hide',
2205 toggleSelf: false,
2206 hidePrevious: true,
2207 autoExpand: true
2208 };
2209 }
2210 getDefaultElements() {
2211 const selectors = this.getSettings('selectors');
2212 return {
2213 $wdigetContainer: this.findElement(selectors.widgetContainer),
2214 $tabTitles: this.findElement(selectors.tabTitle),
2215 $tabContents: this.findElement(selectors.tabContent),
2216 $headingContainer: this.findElement(selectors.headingContainer)
2217 };
2218 }
2219 getKeyboardNavigationSettings() {
2220 return this.getSettings();
2221 }
2222 activateDefaultTab() {
2223 const settings = this.getSettings();
2224 const defaultActiveTab = this.getEditSettings('activeItemIndex') || 1,
2225 originalToggleMethods = {
2226 showTabFn: settings.showTabFn,
2227 hideTabFn: settings.hideTabFn
2228 };
2229
2230 // Toggle tabs without animation to avoid jumping
2231 this.setSettings({
2232 showTabFn: 'show',
2233 hideTabFn: 'hide'
2234 });
2235 this.changeActiveTab(defaultActiveTab);
2236
2237 // Return back original toggle effects
2238 this.setSettings(originalToggleMethods);
2239 this.elements.$wdigetContainer.addClass('e-activated');
2240 }
2241 deactivateActiveTab(newTabIndex) {
2242 const settings = this.getSettings(),
2243 activeClass = settings.classes.active,
2244 activeTitleFilter = settings.ariaAttributes.activeTitleSelector,
2245 activeContentFilter = '.' + activeClass,
2246 $activeTitle = this.elements.$tabTitles.filter(activeTitleFilter),
2247 $activeContent = this.elements.$tabContents.filter(activeContentFilter);
2248 this.setTabDeactivationAttributes($activeTitle, newTabIndex);
2249 $activeContent.removeClass(activeClass);
2250 $activeContent[settings.hideTabFn](0, () => this.onHideTabContent($activeContent));
2251 return $activeContent;
2252 }
2253 getTitleActivationAttributes() {
2254 const titleStateAttribute = this.getSettings('ariaAttributes').titleStateAttribute;
2255 return {
2256 tabindex: '0',
2257 [titleStateAttribute]: 'true'
2258 };
2259 }
2260 setTabDeactivationAttributes($activeTitle) {
2261 const titleStateAttribute = this.getSettings('ariaAttributes').titleStateAttribute;
2262 $activeTitle.attr({
2263 tabindex: '-1',
2264 [titleStateAttribute]: 'false'
2265 });
2266 }
2267 onHideTabContent() {}
2268 activateTab(tabIndex) {
2269 const settings = this.getSettings(),
2270 activeClass = settings.classes.active,
2271 animationDuration = 'show' === settings.showTabFn ? 0 : 400;
2272 let $requestedTitle = this.elements.$tabTitles.filter(this.getTabTitleFilterSelector(tabIndex)),
2273 $requestedContent = this.elements.$tabContents.filter(this.getTabContentFilterSelector(tabIndex));
2274
2275 // Check if the tabIndex exists.
2276 if (!$requestedTitle.length) {
2277 // Activate the previous tab and ensure that the tab index is not less than 1.
2278 const previousTabIndex = Math.max(tabIndex - 1, 1);
2279 $requestedTitle = this.elements.$tabTitles.filter(this.getTabTitleFilterSelector(previousTabIndex));
2280 $requestedContent = this.elements.$tabContents.filter(this.getTabContentFilterSelector(previousTabIndex));
2281 }
2282 $requestedTitle.attr(this.getTitleActivationAttributes());
2283 $requestedContent.addClass(activeClass);
2284 $requestedContent[settings.showTabFn](animationDuration, () => this.onShowTabContent($requestedContent));
2285 }
2286 onShowTabContent($requestedContent) {
2287 elementorFrontend.elements.$window.trigger('elementor-pro/motion-fx/recalc');
2288 elementorFrontend.elements.$window.trigger('elementor/nested-tabs/activate', $requestedContent);
2289 elementorFrontend.elements.$window.trigger('elementor/bg-video/recalc');
2290 }
2291 isActiveTab(tabIndex) {
2292 return 'true' === this.elements.$tabTitles.filter('[data-tab-index="' + tabIndex + '"]').attr(this.getSettings('ariaAttributes').titleStateAttribute);
2293 }
2294 onTabClick(event) {
2295 event.preventDefault();
2296 this.changeActiveTab(event.currentTarget?.getAttribute('data-tab-index'), true);
2297 }
2298 getTabEvents() {
2299 return {
2300 click: this.onTabClick.bind(this)
2301 };
2302 }
2303 getHeadingEvents() {
2304 const navigationWrapper = this.elements.$headingContainer[0];
2305 return {
2306 mousedown: _flexHorizontalScroll.changeScrollStatus.bind(this, navigationWrapper),
2307 mouseup: _flexHorizontalScroll.changeScrollStatus.bind(this, navigationWrapper),
2308 mouseleave: _flexHorizontalScroll.changeScrollStatus.bind(this, navigationWrapper),
2309 mousemove: _flexHorizontalScroll.setHorizontalTitleScrollValues.bind(this, navigationWrapper, this.getHorizontalScrollSetting())
2310 };
2311 }
2312 bindEvents() {
2313 this.elements.$tabTitles.on(this.getTabEvents());
2314 this.elements.$headingContainer.on(this.getHeadingEvents());
2315 const settingsObject = {
2316 element: this.elements.$headingContainer[0],
2317 direction: this.getTabsDirection(),
2318 justifyCSSVariable: '--n-tabs-heading-justify-content',
2319 horizontalScrollStatus: this.getHorizontalScrollSetting()
2320 };
2321 this.resizeListenerNestedTabs = _flexHorizontalScroll.setHorizontalScrollAlignment.bind(this, settingsObject);
2322 elementorFrontend.elements.$window.on('resize', this.resizeListenerNestedTabs);
2323 elementorFrontend.elements.$window.on('resize', this.setTouchMode.bind(this));
2324 elementorFrontend.elements.$window.on('elementor/nested-tabs/activate', this.reInitSwipers);
2325 elementorFrontend.elements.$window.on('elementor/nested-elements/activate-by-keyboard', this.changeActiveTabByKeyboard.bind(this));
2326 elementorFrontend.elements.$window.on('elementor/nested-container/atomic-repeater', this.linkContainer.bind(this));
2327 }
2328 unbindEvents() {
2329 this.elements.$tabTitles.off();
2330 this.elements.$headingContainer.off();
2331 this.elements.$tabContents.children().off();
2332 elementorFrontend.elements.$window.off('resize');
2333 elementorFrontend.elements.$window.off('elementor/nested-tabs/activate');
2334 }
2335
2336 /**
2337 * Fixes issues where Swipers that have been initialized while a tab is not visible are not properly rendered
2338 * and when switching to the tab the swiper will not respect any of the chosen `autoplay` related settings.
2339 *
2340 * This is triggered when switching to a nested tab, looks for Swipers in the tab content and reinitializes them.
2341 *
2342 * @param {Object} event - Incoming event.
2343 * @param {Object} content - Active nested tab dom element.
2344 */
2345 reInitSwipers(event, content) {
2346 const swiperElements = content.querySelectorAll(`.${elementorFrontend.config.swiperClass}`);
2347 for (const element of swiperElements) {
2348 if (!element.swiper) {
2349 return;
2350 }
2351 element.swiper.initialized = false;
2352 element.swiper.init();
2353 }
2354 }
2355 onInit() {
2356 super.onInit(...arguments);
2357 if (this.getSettings('autoExpand')) {
2358 this.activateDefaultTab();
2359 }
2360 const settingsObject = {
2361 element: this.elements.$headingContainer[0],
2362 direction: this.getTabsDirection(),
2363 justifyCSSVariable: '--n-tabs-heading-justify-content',
2364 horizontalScrollStatus: this.getHorizontalScrollSetting()
2365 };
2366 (0, _flexHorizontalScroll.setHorizontalScrollAlignment)(settingsObject);
2367 this.setTouchMode();
2368 if ('nested-tabs.default' === this.getSettings('elementName')) {
2369 new elementorModules.frontend.handlers.NestedTitleKeyboardHandler(this.getKeyboardNavigationSettings());
2370 }
2371 }
2372 onEditSettingsChange(propertyName, value) {
2373 if ('activeItemIndex' === propertyName) {
2374 this.changeActiveTab(value, false);
2375 }
2376 }
2377 onElementChange(propertyName) {
2378 if (this.checkSliderPropsToWatch(propertyName)) {
2379 const settingsObject = {
2380 element: this.elements.$headingContainer[0],
2381 direction: this.getTabsDirection(),
2382 justifyCSSVariable: '--n-tabs-heading-justify-content',
2383 horizontalScrollStatus: this.getHorizontalScrollSetting()
2384 };
2385 (0, _flexHorizontalScroll.setHorizontalScrollAlignment)(settingsObject);
2386 }
2387 }
2388 checkSliderPropsToWatch(propertyName) {
2389 return 0 === propertyName.indexOf('horizontal_scroll') || 'breakpoint_selector' === propertyName || 0 === propertyName.indexOf('tabs_justify_horizontal') || 0 === propertyName.indexOf('tabs_title_space_between');
2390 }
2391
2392 /**
2393 * @param {string} tabIndex
2394 * @param {boolean} fromUser - Whether the call is caused by the user or internal.
2395 */
2396 changeActiveTab(tabIndex) {
2397 let fromUser = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
2398 // `document/repeater/select` is used only in the editor, only when the element
2399 // is in the currently-edited document, and only when its not internal call,
2400 if (fromUser && this.isEdit && this.isElementInTheCurrentDocument()) {
2401 return window.top.$e.run('document/repeater/select', {
2402 container: elementor.getContainer(this.$element.attr('data-id')),
2403 index: parseInt(tabIndex)
2404 });
2405 }
2406 const isActiveTab = this.isActiveTab(tabIndex),
2407 settings = this.getSettings();
2408 if ((settings.toggleSelf || !isActiveTab) && settings.hidePrevious) {
2409 this.deactivateActiveTab(tabIndex);
2410 }
2411 if (!settings.hidePrevious && isActiveTab) {
2412 this.deactivateActiveTab(tabIndex);
2413 }
2414 if (!isActiveTab) {
2415 if (this.isAccordionVersion()) {
2416 this.activateMobileTab(tabIndex);
2417 return;
2418 }
2419 this.activateTab(tabIndex);
2420 }
2421 }
2422 changeActiveTabByKeyboard(event, settings) {
2423 if (settings.widgetId.toString() !== this.getID().toString()) {
2424 return;
2425 }
2426 this.changeActiveTab(settings.titleIndex, true);
2427 }
2428 activateMobileTab(tabIndex) {
2429 // Timeout time added to ensure that opening of the active tab starts after closing the other tab on Apple devices.
2430 setTimeout(() => {
2431 this.activateTab(tabIndex);
2432 this.forceActiveTabToBeInViewport(tabIndex);
2433 }, 10);
2434 }
2435 forceActiveTabToBeInViewport(tabIndex) {
2436 if (!elementorFrontend.isEditMode()) {
2437 return;
2438 }
2439 const $activeTabTitle = this.elements.$tabTitles.filter(this.getTabTitleFilterSelector(tabIndex));
2440 if (!elementor.helpers.isInViewport($activeTabTitle[0])) {
2441 $activeTabTitle[0].scrollIntoView({
2442 block: 'center'
2443 });
2444 }
2445 }
2446 getActiveClass() {
2447 const settings = this.getSettings();
2448 return settings.classes.active;
2449 }
2450 getTabsDirection() {
2451 const currentDevice = elementorFrontend.getCurrentDeviceMode();
2452 return elementorFrontend.utils.controls.getResponsiveControlValue(this.getElementSettings(), 'tabs_justify_horizontal', '', currentDevice);
2453 }
2454 getHorizontalScrollSetting() {
2455 const currentDevice = elementorFrontend.getCurrentDeviceMode();
2456 return elementorFrontend.utils.controls.getResponsiveControlValue(this.getElementSettings(), 'horizontal_scroll', '', currentDevice);
2457 }
2458 isAccordionVersion() {
2459 return 'contents' === this.elements.$headingContainer.css('display');
2460 }
2461 setTouchMode() {
2462 const widgetSelector = this.getSettings('selectors').widgetContainer;
2463 if (elementorFrontend.isEditMode() || 'resize' === event?.type) {
2464 const responsiveDevices = ['mobile', 'mobile_extra', 'tablet', 'tablet_extra'],
2465 currentDevice = elementorFrontend.getCurrentDeviceMode();
2466 if (-1 !== responsiveDevices.indexOf(currentDevice)) {
2467 this.$element.find(widgetSelector).attr('data-touch-mode', 'true');
2468 return;
2469 }
2470 } else if ('ontouchstart' in window) {
2471 this.$element.find(widgetSelector).attr('data-touch-mode', 'true');
2472 return;
2473 }
2474 this.$element.find(widgetSelector).attr('data-touch-mode', 'false');
2475 }
2476 linkContainer(event) {
2477 const {
2478 container
2479 } = event.detail,
2480 id = container.model.get('id'),
2481 currentId = this.$element.data('id');
2482 if (id === currentId) {
2483 this.updateIndexValues();
2484 this.updateListeners();
2485 elementor.$preview[0].contentWindow.dispatchEvent(new CustomEvent('elementor/elements/link-data-bindings'));
2486 }
2487 }
2488 updateListeners() {
2489 elementorFrontend.elementsHandler.runReadyTrigger(this.$element[0]);
2490 }
2491 updateIndexValues() {
2492 const {
2493 $tabContents,
2494 $tabTitles
2495 } = this.getDefaultElements(),
2496 settings = this.getSettings(),
2497 itemIdBase = $tabTitles[0].getAttribute('id').slice(0, -1),
2498 containerIdBase = $tabContents[0].getAttribute('id').slice(0, -1);
2499 $tabTitles.each((index, element) => {
2500 const newIndex = index + 1,
2501 updatedTabID = itemIdBase + newIndex,
2502 updatedContainerID = containerIdBase + newIndex;
2503 element.setAttribute('id', updatedTabID);
2504 element.setAttribute('style', `--n-tabs-title-order: ${newIndex}`);
2505 element.setAttribute('data-tab-index', newIndex);
2506 element.querySelector(settings.selectors.tabTitleText).setAttribute('data-binding-index', newIndex);
2507 element.querySelector(settings.selectors.tabTitleText).setAttribute('aria-controls', updatedTabID);
2508 $tabContents[index].setAttribute('aria-labelledby', updatedTabID);
2509 $tabContents[index].setAttribute('data-tab-index', updatedTabID);
2510 $tabContents[index].setAttribute('id', updatedContainerID);
2511 $tabContents[index].setAttribute('style', `--n-tabs-title-order: ${newIndex}`);
2512 });
2513 }
2514 }
2515 exports["default"] = NestedTabs;
2516
2517 /***/ }),
2518
2519 /***/ "../node_modules/core-js/internals/a-callable.js":
2520 /*!*******************************************************!*\
2521 !*** ../node_modules/core-js/internals/a-callable.js ***!
2522 \*******************************************************/
2523 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2524
2525 "use strict";
2526
2527 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
2528 var tryToString = __webpack_require__(/*! ../internals/try-to-string */ "../node_modules/core-js/internals/try-to-string.js");
2529
2530 var $TypeError = TypeError;
2531
2532 // `Assert: IsCallable(argument) is true`
2533 module.exports = function (argument) {
2534 if (isCallable(argument)) return argument;
2535 throw $TypeError(tryToString(argument) + ' is not a function');
2536 };
2537
2538
2539 /***/ }),
2540
2541 /***/ "../node_modules/core-js/internals/a-possible-prototype.js":
2542 /*!*****************************************************************!*\
2543 !*** ../node_modules/core-js/internals/a-possible-prototype.js ***!
2544 \*****************************************************************/
2545 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2546
2547 "use strict";
2548
2549 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
2550
2551 var $String = String;
2552 var $TypeError = TypeError;
2553
2554 module.exports = function (argument) {
2555 if (typeof argument == 'object' || isCallable(argument)) return argument;
2556 throw $TypeError("Can't set " + $String(argument) + ' as a prototype');
2557 };
2558
2559
2560 /***/ }),
2561
2562 /***/ "../node_modules/core-js/internals/an-object.js":
2563 /*!******************************************************!*\
2564 !*** ../node_modules/core-js/internals/an-object.js ***!
2565 \******************************************************/
2566 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2567
2568 "use strict";
2569
2570 var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
2571
2572 var $String = String;
2573 var $TypeError = TypeError;
2574
2575 // `Assert: Type(argument) is Object`
2576 module.exports = function (argument) {
2577 if (isObject(argument)) return argument;
2578 throw $TypeError($String(argument) + ' is not an object');
2579 };
2580
2581
2582 /***/ }),
2583
2584 /***/ "../node_modules/core-js/internals/array-includes.js":
2585 /*!***********************************************************!*\
2586 !*** ../node_modules/core-js/internals/array-includes.js ***!
2587 \***********************************************************/
2588 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2589
2590 "use strict";
2591
2592 var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../node_modules/core-js/internals/to-indexed-object.js");
2593 var toAbsoluteIndex = __webpack_require__(/*! ../internals/to-absolute-index */ "../node_modules/core-js/internals/to-absolute-index.js");
2594 var lengthOfArrayLike = __webpack_require__(/*! ../internals/length-of-array-like */ "../node_modules/core-js/internals/length-of-array-like.js");
2595
2596 // `Array.prototype.{ indexOf, includes }` methods implementation
2597 var createMethod = function (IS_INCLUDES) {
2598 return function ($this, el, fromIndex) {
2599 var O = toIndexedObject($this);
2600 var length = lengthOfArrayLike(O);
2601 var index = toAbsoluteIndex(fromIndex, length);
2602 var value;
2603 // Array#includes uses SameValueZero equality algorithm
2604 // eslint-disable-next-line no-self-compare -- NaN check
2605 if (IS_INCLUDES && el != el) while (length > index) {
2606 value = O[index++];
2607 // eslint-disable-next-line no-self-compare -- NaN check
2608 if (value != value) return true;
2609 // Array#indexOf ignores holes, Array#includes - not
2610 } else for (;length > index; index++) {
2611 if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
2612 } return !IS_INCLUDES && -1;
2613 };
2614 };
2615
2616 module.exports = {
2617 // `Array.prototype.includes` method
2618 // https://tc39.es/ecma262/#sec-array.prototype.includes
2619 includes: createMethod(true),
2620 // `Array.prototype.indexOf` method
2621 // https://tc39.es/ecma262/#sec-array.prototype.indexof
2622 indexOf: createMethod(false)
2623 };
2624
2625
2626 /***/ }),
2627
2628 /***/ "../node_modules/core-js/internals/classof-raw.js":
2629 /*!********************************************************!*\
2630 !*** ../node_modules/core-js/internals/classof-raw.js ***!
2631 \********************************************************/
2632 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2633
2634 "use strict";
2635
2636 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
2637
2638 var toString = uncurryThis({}.toString);
2639 var stringSlice = uncurryThis(''.slice);
2640
2641 module.exports = function (it) {
2642 return stringSlice(toString(it), 8, -1);
2643 };
2644
2645
2646 /***/ }),
2647
2648 /***/ "../node_modules/core-js/internals/classof.js":
2649 /*!****************************************************!*\
2650 !*** ../node_modules/core-js/internals/classof.js ***!
2651 \****************************************************/
2652 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2653
2654 "use strict";
2655
2656 var TO_STRING_TAG_SUPPORT = __webpack_require__(/*! ../internals/to-string-tag-support */ "../node_modules/core-js/internals/to-string-tag-support.js");
2657 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
2658 var classofRaw = __webpack_require__(/*! ../internals/classof-raw */ "../node_modules/core-js/internals/classof-raw.js");
2659 var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js");
2660
2661 var TO_STRING_TAG = wellKnownSymbol('toStringTag');
2662 var $Object = Object;
2663
2664 // ES3 wrong here
2665 var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
2666
2667 // fallback for IE11 Script Access Denied error
2668 var tryGet = function (it, key) {
2669 try {
2670 return it[key];
2671 } catch (error) { /* empty */ }
2672 };
2673
2674 // getting tag from ES6+ `Object.prototype.toString`
2675 module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
2676 var O, tag, result;
2677 return it === undefined ? 'Undefined' : it === null ? 'Null'
2678 // @@toStringTag case
2679 : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag
2680 // builtinTag case
2681 : CORRECT_ARGUMENTS ? classofRaw(O)
2682 // ES3 arguments fallback
2683 : (result = classofRaw(O)) == 'Object' && isCallable(O.callee) ? 'Arguments' : result;
2684 };
2685
2686
2687 /***/ }),
2688
2689 /***/ "../node_modules/core-js/internals/copy-constructor-properties.js":
2690 /*!************************************************************************!*\
2691 !*** ../node_modules/core-js/internals/copy-constructor-properties.js ***!
2692 \************************************************************************/
2693 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2694
2695 "use strict";
2696
2697 var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
2698 var ownKeys = __webpack_require__(/*! ../internals/own-keys */ "../node_modules/core-js/internals/own-keys.js");
2699 var getOwnPropertyDescriptorModule = __webpack_require__(/*! ../internals/object-get-own-property-descriptor */ "../node_modules/core-js/internals/object-get-own-property-descriptor.js");
2700 var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js");
2701
2702 module.exports = function (target, source, exceptions) {
2703 var keys = ownKeys(source);
2704 var defineProperty = definePropertyModule.f;
2705 var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
2706 for (var i = 0; i < keys.length; i++) {
2707 var key = keys[i];
2708 if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {
2709 defineProperty(target, key, getOwnPropertyDescriptor(source, key));
2710 }
2711 }
2712 };
2713
2714
2715 /***/ }),
2716
2717 /***/ "../node_modules/core-js/internals/create-non-enumerable-property.js":
2718 /*!***************************************************************************!*\
2719 !*** ../node_modules/core-js/internals/create-non-enumerable-property.js ***!
2720 \***************************************************************************/
2721 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2722
2723 "use strict";
2724
2725 var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
2726 var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js");
2727 var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../node_modules/core-js/internals/create-property-descriptor.js");
2728
2729 module.exports = DESCRIPTORS ? function (object, key, value) {
2730 return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
2731 } : function (object, key, value) {
2732 object[key] = value;
2733 return object;
2734 };
2735
2736
2737 /***/ }),
2738
2739 /***/ "../node_modules/core-js/internals/create-property-descriptor.js":
2740 /*!***********************************************************************!*\
2741 !*** ../node_modules/core-js/internals/create-property-descriptor.js ***!
2742 \***********************************************************************/
2743 /***/ ((module) => {
2744
2745 "use strict";
2746
2747 module.exports = function (bitmap, value) {
2748 return {
2749 enumerable: !(bitmap & 1),
2750 configurable: !(bitmap & 2),
2751 writable: !(bitmap & 4),
2752 value: value
2753 };
2754 };
2755
2756
2757 /***/ }),
2758
2759 /***/ "../node_modules/core-js/internals/define-built-in.js":
2760 /*!************************************************************!*\
2761 !*** ../node_modules/core-js/internals/define-built-in.js ***!
2762 \************************************************************/
2763 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2764
2765 "use strict";
2766
2767 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
2768 var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js");
2769 var makeBuiltIn = __webpack_require__(/*! ../internals/make-built-in */ "../node_modules/core-js/internals/make-built-in.js");
2770 var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ "../node_modules/core-js/internals/define-global-property.js");
2771
2772 module.exports = function (O, key, value, options) {
2773 if (!options) options = {};
2774 var simple = options.enumerable;
2775 var name = options.name !== undefined ? options.name : key;
2776 if (isCallable(value)) makeBuiltIn(value, name, options);
2777 if (options.global) {
2778 if (simple) O[key] = value;
2779 else defineGlobalProperty(key, value);
2780 } else {
2781 try {
2782 if (!options.unsafe) delete O[key];
2783 else if (O[key]) simple = true;
2784 } catch (error) { /* empty */ }
2785 if (simple) O[key] = value;
2786 else definePropertyModule.f(O, key, {
2787 value: value,
2788 enumerable: false,
2789 configurable: !options.nonConfigurable,
2790 writable: !options.nonWritable
2791 });
2792 } return O;
2793 };
2794
2795
2796 /***/ }),
2797
2798 /***/ "../node_modules/core-js/internals/define-global-property.js":
2799 /*!*******************************************************************!*\
2800 !*** ../node_modules/core-js/internals/define-global-property.js ***!
2801 \*******************************************************************/
2802 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2803
2804 "use strict";
2805
2806 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
2807
2808 // eslint-disable-next-line es/no-object-defineproperty -- safe
2809 var defineProperty = Object.defineProperty;
2810
2811 module.exports = function (key, value) {
2812 try {
2813 defineProperty(global, key, { value: value, configurable: true, writable: true });
2814 } catch (error) {
2815 global[key] = value;
2816 } return value;
2817 };
2818
2819
2820 /***/ }),
2821
2822 /***/ "../node_modules/core-js/internals/descriptors.js":
2823 /*!********************************************************!*\
2824 !*** ../node_modules/core-js/internals/descriptors.js ***!
2825 \********************************************************/
2826 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2827
2828 "use strict";
2829
2830 var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
2831
2832 // Detect IE8's incomplete defineProperty implementation
2833 module.exports = !fails(function () {
2834 // eslint-disable-next-line es/no-object-defineproperty -- required for testing
2835 return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
2836 });
2837
2838
2839 /***/ }),
2840
2841 /***/ "../node_modules/core-js/internals/document-all.js":
2842 /*!*********************************************************!*\
2843 !*** ../node_modules/core-js/internals/document-all.js ***!
2844 \*********************************************************/
2845 /***/ ((module) => {
2846
2847 "use strict";
2848
2849 var documentAll = typeof document == 'object' && document.all;
2850
2851 // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot
2852 // eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing
2853 var IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;
2854
2855 module.exports = {
2856 all: documentAll,
2857 IS_HTMLDDA: IS_HTMLDDA
2858 };
2859
2860
2861 /***/ }),
2862
2863 /***/ "../node_modules/core-js/internals/document-create-element.js":
2864 /*!********************************************************************!*\
2865 !*** ../node_modules/core-js/internals/document-create-element.js ***!
2866 \********************************************************************/
2867 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2868
2869 "use strict";
2870
2871 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
2872 var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
2873
2874 var document = global.document;
2875 // typeof document.createElement is 'object' in old IE
2876 var EXISTS = isObject(document) && isObject(document.createElement);
2877
2878 module.exports = function (it) {
2879 return EXISTS ? document.createElement(it) : {};
2880 };
2881
2882
2883 /***/ }),
2884
2885 /***/ "../node_modules/core-js/internals/engine-user-agent.js":
2886 /*!**************************************************************!*\
2887 !*** ../node_modules/core-js/internals/engine-user-agent.js ***!
2888 \**************************************************************/
2889 /***/ ((module) => {
2890
2891 "use strict";
2892
2893 module.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';
2894
2895
2896 /***/ }),
2897
2898 /***/ "../node_modules/core-js/internals/engine-v8-version.js":
2899 /*!**************************************************************!*\
2900 !*** ../node_modules/core-js/internals/engine-v8-version.js ***!
2901 \**************************************************************/
2902 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2903
2904 "use strict";
2905
2906 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
2907 var userAgent = __webpack_require__(/*! ../internals/engine-user-agent */ "../node_modules/core-js/internals/engine-user-agent.js");
2908
2909 var process = global.process;
2910 var Deno = global.Deno;
2911 var versions = process && process.versions || Deno && Deno.version;
2912 var v8 = versions && versions.v8;
2913 var match, version;
2914
2915 if (v8) {
2916 match = v8.split('.');
2917 // in old Chrome, versions of V8 isn't V8 = Chrome / 10
2918 // but their correct versions are not interesting for us
2919 version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);
2920 }
2921
2922 // BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`
2923 // so check `userAgent` even if `.v8` exists, but 0
2924 if (!version && userAgent) {
2925 match = userAgent.match(/Edge\/(\d+)/);
2926 if (!match || match[1] >= 74) {
2927 match = userAgent.match(/Chrome\/(\d+)/);
2928 if (match) version = +match[1];
2929 }
2930 }
2931
2932 module.exports = version;
2933
2934
2935 /***/ }),
2936
2937 /***/ "../node_modules/core-js/internals/enum-bug-keys.js":
2938 /*!**********************************************************!*\
2939 !*** ../node_modules/core-js/internals/enum-bug-keys.js ***!
2940 \**********************************************************/
2941 /***/ ((module) => {
2942
2943 "use strict";
2944
2945 // IE8- don't enum bug keys
2946 module.exports = [
2947 'constructor',
2948 'hasOwnProperty',
2949 'isPrototypeOf',
2950 'propertyIsEnumerable',
2951 'toLocaleString',
2952 'toString',
2953 'valueOf'
2954 ];
2955
2956
2957 /***/ }),
2958
2959 /***/ "../node_modules/core-js/internals/error-stack-clear.js":
2960 /*!**************************************************************!*\
2961 !*** ../node_modules/core-js/internals/error-stack-clear.js ***!
2962 \**************************************************************/
2963 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2964
2965 "use strict";
2966
2967 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
2968
2969 var $Error = Error;
2970 var replace = uncurryThis(''.replace);
2971
2972 var TEST = (function (arg) { return String($Error(arg).stack); })('zxcasd');
2973 // eslint-disable-next-line redos/no-vulnerable -- safe
2974 var V8_OR_CHAKRA_STACK_ENTRY = /\n\s*at [^:]*:[^\n]*/;
2975 var IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);
2976
2977 module.exports = function (stack, dropEntries) {
2978 if (IS_V8_OR_CHAKRA_STACK && typeof stack == 'string' && !$Error.prepareStackTrace) {
2979 while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, '');
2980 } return stack;
2981 };
2982
2983
2984 /***/ }),
2985
2986 /***/ "../node_modules/core-js/internals/error-stack-install.js":
2987 /*!****************************************************************!*\
2988 !*** ../node_modules/core-js/internals/error-stack-install.js ***!
2989 \****************************************************************/
2990 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2991
2992 "use strict";
2993
2994 var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ "../node_modules/core-js/internals/create-non-enumerable-property.js");
2995 var clearErrorStack = __webpack_require__(/*! ../internals/error-stack-clear */ "../node_modules/core-js/internals/error-stack-clear.js");
2996 var ERROR_STACK_INSTALLABLE = __webpack_require__(/*! ../internals/error-stack-installable */ "../node_modules/core-js/internals/error-stack-installable.js");
2997
2998 // non-standard V8
2999 var captureStackTrace = Error.captureStackTrace;
3000
3001 module.exports = function (error, C, stack, dropEntries) {
3002 if (ERROR_STACK_INSTALLABLE) {
3003 if (captureStackTrace) captureStackTrace(error, C);
3004 else createNonEnumerableProperty(error, 'stack', clearErrorStack(stack, dropEntries));
3005 }
3006 };
3007
3008
3009 /***/ }),
3010
3011 /***/ "../node_modules/core-js/internals/error-stack-installable.js":
3012 /*!********************************************************************!*\
3013 !*** ../node_modules/core-js/internals/error-stack-installable.js ***!
3014 \********************************************************************/
3015 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3016
3017 "use strict";
3018
3019 var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
3020 var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../node_modules/core-js/internals/create-property-descriptor.js");
3021
3022 module.exports = !fails(function () {
3023 var error = Error('a');
3024 if (!('stack' in error)) return true;
3025 // eslint-disable-next-line es/no-object-defineproperty -- safe
3026 Object.defineProperty(error, 'stack', createPropertyDescriptor(1, 7));
3027 return error.stack !== 7;
3028 });
3029
3030
3031 /***/ }),
3032
3033 /***/ "../node_modules/core-js/internals/export.js":
3034 /*!***************************************************!*\
3035 !*** ../node_modules/core-js/internals/export.js ***!
3036 \***************************************************/
3037 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3038
3039 "use strict";
3040
3041 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
3042 var getOwnPropertyDescriptor = (__webpack_require__(/*! ../internals/object-get-own-property-descriptor */ "../node_modules/core-js/internals/object-get-own-property-descriptor.js").f);
3043 var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ "../node_modules/core-js/internals/create-non-enumerable-property.js");
3044 var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ "../node_modules/core-js/internals/define-built-in.js");
3045 var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ "../node_modules/core-js/internals/define-global-property.js");
3046 var copyConstructorProperties = __webpack_require__(/*! ../internals/copy-constructor-properties */ "../node_modules/core-js/internals/copy-constructor-properties.js");
3047 var isForced = __webpack_require__(/*! ../internals/is-forced */ "../node_modules/core-js/internals/is-forced.js");
3048
3049 /*
3050 options.target - name of the target object
3051 options.global - target is the global object
3052 options.stat - export as static methods of target
3053 options.proto - export as prototype methods of target
3054 options.real - real prototype method for the `pure` version
3055 options.forced - export even if the native feature is available
3056 options.bind - bind methods to the target, required for the `pure` version
3057 options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
3058 options.unsafe - use the simple assignment of property instead of delete + defineProperty
3059 options.sham - add a flag to not completely full polyfills
3060 options.enumerable - export as enumerable property
3061 options.dontCallGetSet - prevent calling a getter on target
3062 options.name - the .name of the function if it does not match the key
3063 */
3064 module.exports = function (options, source) {
3065 var TARGET = options.target;
3066 var GLOBAL = options.global;
3067 var STATIC = options.stat;
3068 var FORCED, target, key, targetProperty, sourceProperty, descriptor;
3069 if (GLOBAL) {
3070 target = global;
3071 } else if (STATIC) {
3072 target = global[TARGET] || defineGlobalProperty(TARGET, {});
3073 } else {
3074 target = (global[TARGET] || {}).prototype;
3075 }
3076 if (target) for (key in source) {
3077 sourceProperty = source[key];
3078 if (options.dontCallGetSet) {
3079 descriptor = getOwnPropertyDescriptor(target, key);
3080 targetProperty = descriptor && descriptor.value;
3081 } else targetProperty = target[key];
3082 FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
3083 // contained in target
3084 if (!FORCED && targetProperty !== undefined) {
3085 if (typeof sourceProperty == typeof targetProperty) continue;
3086 copyConstructorProperties(sourceProperty, targetProperty);
3087 }
3088 // add a flag to not completely full polyfills
3089 if (options.sham || (targetProperty && targetProperty.sham)) {
3090 createNonEnumerableProperty(sourceProperty, 'sham', true);
3091 }
3092 defineBuiltIn(target, key, sourceProperty, options);
3093 }
3094 };
3095
3096
3097 /***/ }),
3098
3099 /***/ "../node_modules/core-js/internals/fails.js":
3100 /*!**************************************************!*\
3101 !*** ../node_modules/core-js/internals/fails.js ***!
3102 \**************************************************/
3103 /***/ ((module) => {
3104
3105 "use strict";
3106
3107 module.exports = function (exec) {
3108 try {
3109 return !!exec();
3110 } catch (error) {
3111 return true;
3112 }
3113 };
3114
3115
3116 /***/ }),
3117
3118 /***/ "../node_modules/core-js/internals/function-apply.js":
3119 /*!***********************************************************!*\
3120 !*** ../node_modules/core-js/internals/function-apply.js ***!
3121 \***********************************************************/
3122 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3123
3124 "use strict";
3125
3126 var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ "../node_modules/core-js/internals/function-bind-native.js");
3127
3128 var FunctionPrototype = Function.prototype;
3129 var apply = FunctionPrototype.apply;
3130 var call = FunctionPrototype.call;
3131
3132 // eslint-disable-next-line es/no-reflect -- safe
3133 module.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {
3134 return call.apply(apply, arguments);
3135 });
3136
3137
3138 /***/ }),
3139
3140 /***/ "../node_modules/core-js/internals/function-bind-native.js":
3141 /*!*****************************************************************!*\
3142 !*** ../node_modules/core-js/internals/function-bind-native.js ***!
3143 \*****************************************************************/
3144 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3145
3146 "use strict";
3147
3148 var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
3149
3150 module.exports = !fails(function () {
3151 // eslint-disable-next-line es/no-function-prototype-bind -- safe
3152 var test = (function () { /* empty */ }).bind();
3153 // eslint-disable-next-line no-prototype-builtins -- safe
3154 return typeof test != 'function' || test.hasOwnProperty('prototype');
3155 });
3156
3157
3158 /***/ }),
3159
3160 /***/ "../node_modules/core-js/internals/function-call.js":
3161 /*!**********************************************************!*\
3162 !*** ../node_modules/core-js/internals/function-call.js ***!
3163 \**********************************************************/
3164 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3165
3166 "use strict";
3167
3168 var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ "../node_modules/core-js/internals/function-bind-native.js");
3169
3170 var call = Function.prototype.call;
3171
3172 module.exports = NATIVE_BIND ? call.bind(call) : function () {
3173 return call.apply(call, arguments);
3174 };
3175
3176
3177 /***/ }),
3178
3179 /***/ "../node_modules/core-js/internals/function-name.js":
3180 /*!**********************************************************!*\
3181 !*** ../node_modules/core-js/internals/function-name.js ***!
3182 \**********************************************************/
3183 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3184
3185 "use strict";
3186
3187 var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
3188 var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
3189
3190 var FunctionPrototype = Function.prototype;
3191 // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
3192 var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;
3193
3194 var EXISTS = hasOwn(FunctionPrototype, 'name');
3195 // additional protection from minified / mangled / dropped function names
3196 var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';
3197 var CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));
3198
3199 module.exports = {
3200 EXISTS: EXISTS,
3201 PROPER: PROPER,
3202 CONFIGURABLE: CONFIGURABLE
3203 };
3204
3205
3206 /***/ }),
3207
3208 /***/ "../node_modules/core-js/internals/function-uncurry-this-accessor.js":
3209 /*!***************************************************************************!*\
3210 !*** ../node_modules/core-js/internals/function-uncurry-this-accessor.js ***!
3211 \***************************************************************************/
3212 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3213
3214 "use strict";
3215
3216 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
3217 var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js");
3218
3219 module.exports = function (object, key, method) {
3220 try {
3221 // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
3222 return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));
3223 } catch (error) { /* empty */ }
3224 };
3225
3226
3227 /***/ }),
3228
3229 /***/ "../node_modules/core-js/internals/function-uncurry-this.js":
3230 /*!******************************************************************!*\
3231 !*** ../node_modules/core-js/internals/function-uncurry-this.js ***!
3232 \******************************************************************/
3233 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3234
3235 "use strict";
3236
3237 var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ "../node_modules/core-js/internals/function-bind-native.js");
3238
3239 var FunctionPrototype = Function.prototype;
3240 var call = FunctionPrototype.call;
3241 var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);
3242
3243 module.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {
3244 return function () {
3245 return call.apply(fn, arguments);
3246 };
3247 };
3248
3249
3250 /***/ }),
3251
3252 /***/ "../node_modules/core-js/internals/get-built-in.js":
3253 /*!*********************************************************!*\
3254 !*** ../node_modules/core-js/internals/get-built-in.js ***!
3255 \*********************************************************/
3256 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3257
3258 "use strict";
3259
3260 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
3261 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
3262
3263 var aFunction = function (argument) {
3264 return isCallable(argument) ? argument : undefined;
3265 };
3266
3267 module.exports = function (namespace, method) {
3268 return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];
3269 };
3270
3271
3272 /***/ }),
3273
3274 /***/ "../node_modules/core-js/internals/get-method.js":
3275 /*!*******************************************************!*\
3276 !*** ../node_modules/core-js/internals/get-method.js ***!
3277 \*******************************************************/
3278 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3279
3280 "use strict";
3281
3282 var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js");
3283 var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ "../node_modules/core-js/internals/is-null-or-undefined.js");
3284
3285 // `GetMethod` abstract operation
3286 // https://tc39.es/ecma262/#sec-getmethod
3287 module.exports = function (V, P) {
3288 var func = V[P];
3289 return isNullOrUndefined(func) ? undefined : aCallable(func);
3290 };
3291
3292
3293 /***/ }),
3294
3295 /***/ "../node_modules/core-js/internals/global.js":
3296 /*!***************************************************!*\
3297 !*** ../node_modules/core-js/internals/global.js ***!
3298 \***************************************************/
3299 /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
3300
3301 "use strict";
3302
3303 var check = function (it) {
3304 return it && it.Math == Math && it;
3305 };
3306
3307 // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
3308 module.exports =
3309 // eslint-disable-next-line es/no-global-this -- safe
3310 check(typeof globalThis == 'object' && globalThis) ||
3311 check(typeof window == 'object' && window) ||
3312 // eslint-disable-next-line no-restricted-globals -- safe
3313 check(typeof self == 'object' && self) ||
3314 check(typeof __webpack_require__.g == 'object' && __webpack_require__.g) ||
3315 // eslint-disable-next-line no-new-func -- fallback
3316 (function () { return this; })() || this || Function('return this')();
3317
3318
3319 /***/ }),
3320
3321 /***/ "../node_modules/core-js/internals/has-own-property.js":
3322 /*!*************************************************************!*\
3323 !*** ../node_modules/core-js/internals/has-own-property.js ***!
3324 \*************************************************************/
3325 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3326
3327 "use strict";
3328
3329 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
3330 var toObject = __webpack_require__(/*! ../internals/to-object */ "../node_modules/core-js/internals/to-object.js");
3331
3332 var hasOwnProperty = uncurryThis({}.hasOwnProperty);
3333
3334 // `HasOwnProperty` abstract operation
3335 // https://tc39.es/ecma262/#sec-hasownproperty
3336 // eslint-disable-next-line es/no-object-hasown -- safe
3337 module.exports = Object.hasOwn || function hasOwn(it, key) {
3338 return hasOwnProperty(toObject(it), key);
3339 };
3340
3341
3342 /***/ }),
3343
3344 /***/ "../node_modules/core-js/internals/hidden-keys.js":
3345 /*!********************************************************!*\
3346 !*** ../node_modules/core-js/internals/hidden-keys.js ***!
3347 \********************************************************/
3348 /***/ ((module) => {
3349
3350 "use strict";
3351
3352 module.exports = {};
3353
3354
3355 /***/ }),
3356
3357 /***/ "../node_modules/core-js/internals/ie8-dom-define.js":
3358 /*!***********************************************************!*\
3359 !*** ../node_modules/core-js/internals/ie8-dom-define.js ***!
3360 \***********************************************************/
3361 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3362
3363 "use strict";
3364
3365 var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
3366 var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
3367 var createElement = __webpack_require__(/*! ../internals/document-create-element */ "../node_modules/core-js/internals/document-create-element.js");
3368
3369 // Thanks to IE8 for its funny defineProperty
3370 module.exports = !DESCRIPTORS && !fails(function () {
3371 // eslint-disable-next-line es/no-object-defineproperty -- required for testing
3372 return Object.defineProperty(createElement('div'), 'a', {
3373 get: function () { return 7; }
3374 }).a != 7;
3375 });
3376
3377
3378 /***/ }),
3379
3380 /***/ "../node_modules/core-js/internals/indexed-object.js":
3381 /*!***********************************************************!*\
3382 !*** ../node_modules/core-js/internals/indexed-object.js ***!
3383 \***********************************************************/
3384 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3385
3386 "use strict";
3387
3388 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
3389 var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
3390 var classof = __webpack_require__(/*! ../internals/classof-raw */ "../node_modules/core-js/internals/classof-raw.js");
3391
3392 var $Object = Object;
3393 var split = uncurryThis(''.split);
3394
3395 // fallback for non-array-like ES3 and non-enumerable old V8 strings
3396 module.exports = fails(function () {
3397 // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
3398 // eslint-disable-next-line no-prototype-builtins -- safe
3399 return !$Object('z').propertyIsEnumerable(0);
3400 }) ? function (it) {
3401 return classof(it) == 'String' ? split(it, '') : $Object(it);
3402 } : $Object;
3403
3404
3405 /***/ }),
3406
3407 /***/ "../node_modules/core-js/internals/inherit-if-required.js":
3408 /*!****************************************************************!*\
3409 !*** ../node_modules/core-js/internals/inherit-if-required.js ***!
3410 \****************************************************************/
3411 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3412
3413 "use strict";
3414
3415 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
3416 var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
3417 var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ "../node_modules/core-js/internals/object-set-prototype-of.js");
3418
3419 // makes subclassing work correct for wrapped built-ins
3420 module.exports = function ($this, dummy, Wrapper) {
3421 var NewTarget, NewTargetPrototype;
3422 if (
3423 // it can work only with native `setPrototypeOf`
3424 setPrototypeOf &&
3425 // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
3426 isCallable(NewTarget = dummy.constructor) &&
3427 NewTarget !== Wrapper &&
3428 isObject(NewTargetPrototype = NewTarget.prototype) &&
3429 NewTargetPrototype !== Wrapper.prototype
3430 ) setPrototypeOf($this, NewTargetPrototype);
3431 return $this;
3432 };
3433
3434
3435 /***/ }),
3436
3437 /***/ "../node_modules/core-js/internals/inspect-source.js":
3438 /*!***********************************************************!*\
3439 !*** ../node_modules/core-js/internals/inspect-source.js ***!
3440 \***********************************************************/
3441 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3442
3443 "use strict";
3444
3445 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
3446 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
3447 var store = __webpack_require__(/*! ../internals/shared-store */ "../node_modules/core-js/internals/shared-store.js");
3448
3449 var functionToString = uncurryThis(Function.toString);
3450
3451 // this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
3452 if (!isCallable(store.inspectSource)) {
3453 store.inspectSource = function (it) {
3454 return functionToString(it);
3455 };
3456 }
3457
3458 module.exports = store.inspectSource;
3459
3460
3461 /***/ }),
3462
3463 /***/ "../node_modules/core-js/internals/install-error-cause.js":
3464 /*!****************************************************************!*\
3465 !*** ../node_modules/core-js/internals/install-error-cause.js ***!
3466 \****************************************************************/
3467 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3468
3469 "use strict";
3470
3471 var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
3472 var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ "../node_modules/core-js/internals/create-non-enumerable-property.js");
3473
3474 // `InstallErrorCause` abstract operation
3475 // https://tc39.es/proposal-error-cause/#sec-errorobjects-install-error-cause
3476 module.exports = function (O, options) {
3477 if (isObject(options) && 'cause' in options) {
3478 createNonEnumerableProperty(O, 'cause', options.cause);
3479 }
3480 };
3481
3482
3483 /***/ }),
3484
3485 /***/ "../node_modules/core-js/internals/internal-state.js":
3486 /*!***********************************************************!*\
3487 !*** ../node_modules/core-js/internals/internal-state.js ***!
3488 \***********************************************************/
3489 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3490
3491 "use strict";
3492
3493 var NATIVE_WEAK_MAP = __webpack_require__(/*! ../internals/weak-map-basic-detection */ "../node_modules/core-js/internals/weak-map-basic-detection.js");
3494 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
3495 var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
3496 var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ "../node_modules/core-js/internals/create-non-enumerable-property.js");
3497 var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
3498 var shared = __webpack_require__(/*! ../internals/shared-store */ "../node_modules/core-js/internals/shared-store.js");
3499 var sharedKey = __webpack_require__(/*! ../internals/shared-key */ "../node_modules/core-js/internals/shared-key.js");
3500 var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ "../node_modules/core-js/internals/hidden-keys.js");
3501
3502 var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
3503 var TypeError = global.TypeError;
3504 var WeakMap = global.WeakMap;
3505 var set, get, has;
3506
3507 var enforce = function (it) {
3508 return has(it) ? get(it) : set(it, {});
3509 };
3510
3511 var getterFor = function (TYPE) {
3512 return function (it) {
3513 var state;
3514 if (!isObject(it) || (state = get(it)).type !== TYPE) {
3515 throw TypeError('Incompatible receiver, ' + TYPE + ' required');
3516 } return state;
3517 };
3518 };
3519
3520 if (NATIVE_WEAK_MAP || shared.state) {
3521 var store = shared.state || (shared.state = new WeakMap());
3522 /* eslint-disable no-self-assign -- prototype methods protection */
3523 store.get = store.get;
3524 store.has = store.has;
3525 store.set = store.set;
3526 /* eslint-enable no-self-assign -- prototype methods protection */
3527 set = function (it, metadata) {
3528 if (store.has(it)) throw TypeError(OBJECT_ALREADY_INITIALIZED);
3529 metadata.facade = it;
3530 store.set(it, metadata);
3531 return metadata;
3532 };
3533 get = function (it) {
3534 return store.get(it) || {};
3535 };
3536 has = function (it) {
3537 return store.has(it);
3538 };
3539 } else {
3540 var STATE = sharedKey('state');
3541 hiddenKeys[STATE] = true;
3542 set = function (it, metadata) {
3543 if (hasOwn(it, STATE)) throw TypeError(OBJECT_ALREADY_INITIALIZED);
3544 metadata.facade = it;
3545 createNonEnumerableProperty(it, STATE, metadata);
3546 return metadata;
3547 };
3548 get = function (it) {
3549 return hasOwn(it, STATE) ? it[STATE] : {};
3550 };
3551 has = function (it) {
3552 return hasOwn(it, STATE);
3553 };
3554 }
3555
3556 module.exports = {
3557 set: set,
3558 get: get,
3559 has: has,
3560 enforce: enforce,
3561 getterFor: getterFor
3562 };
3563
3564
3565 /***/ }),
3566
3567 /***/ "../node_modules/core-js/internals/is-callable.js":
3568 /*!********************************************************!*\
3569 !*** ../node_modules/core-js/internals/is-callable.js ***!
3570 \********************************************************/
3571 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3572
3573 "use strict";
3574
3575 var $documentAll = __webpack_require__(/*! ../internals/document-all */ "../node_modules/core-js/internals/document-all.js");
3576
3577 var documentAll = $documentAll.all;
3578
3579 // `IsCallable` abstract operation
3580 // https://tc39.es/ecma262/#sec-iscallable
3581 module.exports = $documentAll.IS_HTMLDDA ? function (argument) {
3582 return typeof argument == 'function' || argument === documentAll;
3583 } : function (argument) {
3584 return typeof argument == 'function';
3585 };
3586
3587
3588 /***/ }),
3589
3590 /***/ "../node_modules/core-js/internals/is-forced.js":
3591 /*!******************************************************!*\
3592 !*** ../node_modules/core-js/internals/is-forced.js ***!
3593 \******************************************************/
3594 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3595
3596 "use strict";
3597
3598 var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
3599 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
3600
3601 var replacement = /#|\.prototype\./;
3602
3603 var isForced = function (feature, detection) {
3604 var value = data[normalize(feature)];
3605 return value == POLYFILL ? true
3606 : value == NATIVE ? false
3607 : isCallable(detection) ? fails(detection)
3608 : !!detection;
3609 };
3610
3611 var normalize = isForced.normalize = function (string) {
3612 return String(string).replace(replacement, '.').toLowerCase();
3613 };
3614
3615 var data = isForced.data = {};
3616 var NATIVE = isForced.NATIVE = 'N';
3617 var POLYFILL = isForced.POLYFILL = 'P';
3618
3619 module.exports = isForced;
3620
3621
3622 /***/ }),
3623
3624 /***/ "../node_modules/core-js/internals/is-null-or-undefined.js":
3625 /*!*****************************************************************!*\
3626 !*** ../node_modules/core-js/internals/is-null-or-undefined.js ***!
3627 \*****************************************************************/
3628 /***/ ((module) => {
3629
3630 "use strict";
3631
3632 // we can't use just `it == null` since of `document.all` special case
3633 // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec
3634 module.exports = function (it) {
3635 return it === null || it === undefined;
3636 };
3637
3638
3639 /***/ }),
3640
3641 /***/ "../node_modules/core-js/internals/is-object.js":
3642 /*!******************************************************!*\
3643 !*** ../node_modules/core-js/internals/is-object.js ***!
3644 \******************************************************/
3645 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3646
3647 "use strict";
3648
3649 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
3650 var $documentAll = __webpack_require__(/*! ../internals/document-all */ "../node_modules/core-js/internals/document-all.js");
3651
3652 var documentAll = $documentAll.all;
3653
3654 module.exports = $documentAll.IS_HTMLDDA ? function (it) {
3655 return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;
3656 } : function (it) {
3657 return typeof it == 'object' ? it !== null : isCallable(it);
3658 };
3659
3660
3661 /***/ }),
3662
3663 /***/ "../node_modules/core-js/internals/is-pure.js":
3664 /*!****************************************************!*\
3665 !*** ../node_modules/core-js/internals/is-pure.js ***!
3666 \****************************************************/
3667 /***/ ((module) => {
3668
3669 "use strict";
3670
3671 module.exports = false;
3672
3673
3674 /***/ }),
3675
3676 /***/ "../node_modules/core-js/internals/is-symbol.js":
3677 /*!******************************************************!*\
3678 !*** ../node_modules/core-js/internals/is-symbol.js ***!
3679 \******************************************************/
3680 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3681
3682 "use strict";
3683
3684 var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ "../node_modules/core-js/internals/get-built-in.js");
3685 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
3686 var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ "../node_modules/core-js/internals/object-is-prototype-of.js");
3687 var USE_SYMBOL_AS_UID = __webpack_require__(/*! ../internals/use-symbol-as-uid */ "../node_modules/core-js/internals/use-symbol-as-uid.js");
3688
3689 var $Object = Object;
3690
3691 module.exports = USE_SYMBOL_AS_UID ? function (it) {
3692 return typeof it == 'symbol';
3693 } : function (it) {
3694 var $Symbol = getBuiltIn('Symbol');
3695 return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));
3696 };
3697
3698
3699 /***/ }),
3700
3701 /***/ "../node_modules/core-js/internals/length-of-array-like.js":
3702 /*!*****************************************************************!*\
3703 !*** ../node_modules/core-js/internals/length-of-array-like.js ***!
3704 \*****************************************************************/
3705 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3706
3707 "use strict";
3708
3709 var toLength = __webpack_require__(/*! ../internals/to-length */ "../node_modules/core-js/internals/to-length.js");
3710
3711 // `LengthOfArrayLike` abstract operation
3712 // https://tc39.es/ecma262/#sec-lengthofarraylike
3713 module.exports = function (obj) {
3714 return toLength(obj.length);
3715 };
3716
3717
3718 /***/ }),
3719
3720 /***/ "../node_modules/core-js/internals/make-built-in.js":
3721 /*!**********************************************************!*\
3722 !*** ../node_modules/core-js/internals/make-built-in.js ***!
3723 \**********************************************************/
3724 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3725
3726 "use strict";
3727
3728 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
3729 var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
3730 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
3731 var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
3732 var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
3733 var CONFIGURABLE_FUNCTION_NAME = (__webpack_require__(/*! ../internals/function-name */ "../node_modules/core-js/internals/function-name.js").CONFIGURABLE);
3734 var inspectSource = __webpack_require__(/*! ../internals/inspect-source */ "../node_modules/core-js/internals/inspect-source.js");
3735 var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ "../node_modules/core-js/internals/internal-state.js");
3736
3737 var enforceInternalState = InternalStateModule.enforce;
3738 var getInternalState = InternalStateModule.get;
3739 var $String = String;
3740 // eslint-disable-next-line es/no-object-defineproperty -- safe
3741 var defineProperty = Object.defineProperty;
3742 var stringSlice = uncurryThis(''.slice);
3743 var replace = uncurryThis(''.replace);
3744 var join = uncurryThis([].join);
3745
3746 var CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {
3747 return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;
3748 });
3749
3750 var TEMPLATE = String(String).split('String');
3751
3752 var makeBuiltIn = module.exports = function (value, name, options) {
3753 if (stringSlice($String(name), 0, 7) === 'Symbol(') {
3754 name = '[' + replace($String(name), /^Symbol\(([^)]*)\)/, '$1') + ']';
3755 }
3756 if (options && options.getter) name = 'get ' + name;
3757 if (options && options.setter) name = 'set ' + name;
3758 if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {
3759 if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });
3760 else value.name = name;
3761 }
3762 if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {
3763 defineProperty(value, 'length', { value: options.arity });
3764 }
3765 try {
3766 if (options && hasOwn(options, 'constructor') && options.constructor) {
3767 if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });
3768 // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable
3769 } else if (value.prototype) value.prototype = undefined;
3770 } catch (error) { /* empty */ }
3771 var state = enforceInternalState(value);
3772 if (!hasOwn(state, 'source')) {
3773 state.source = join(TEMPLATE, typeof name == 'string' ? name : '');
3774 } return value;
3775 };
3776
3777 // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
3778 // eslint-disable-next-line no-extend-native -- required
3779 Function.prototype.toString = makeBuiltIn(function toString() {
3780 return isCallable(this) && getInternalState(this).source || inspectSource(this);
3781 }, 'toString');
3782
3783
3784 /***/ }),
3785
3786 /***/ "../node_modules/core-js/internals/math-trunc.js":
3787 /*!*******************************************************!*\
3788 !*** ../node_modules/core-js/internals/math-trunc.js ***!
3789 \*******************************************************/
3790 /***/ ((module) => {
3791
3792 "use strict";
3793
3794 var ceil = Math.ceil;
3795 var floor = Math.floor;
3796
3797 // `Math.trunc` method
3798 // https://tc39.es/ecma262/#sec-math.trunc
3799 // eslint-disable-next-line es/no-math-trunc -- safe
3800 module.exports = Math.trunc || function trunc(x) {
3801 var n = +x;
3802 return (n > 0 ? floor : ceil)(n);
3803 };
3804
3805
3806 /***/ }),
3807
3808 /***/ "../node_modules/core-js/internals/normalize-string-argument.js":
3809 /*!**********************************************************************!*\
3810 !*** ../node_modules/core-js/internals/normalize-string-argument.js ***!
3811 \**********************************************************************/
3812 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3813
3814 "use strict";
3815
3816 var toString = __webpack_require__(/*! ../internals/to-string */ "../node_modules/core-js/internals/to-string.js");
3817
3818 module.exports = function (argument, $default) {
3819 return argument === undefined ? arguments.length < 2 ? '' : $default : toString(argument);
3820 };
3821
3822
3823 /***/ }),
3824
3825 /***/ "../node_modules/core-js/internals/object-define-property.js":
3826 /*!*******************************************************************!*\
3827 !*** ../node_modules/core-js/internals/object-define-property.js ***!
3828 \*******************************************************************/
3829 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3830
3831 "use strict";
3832
3833 var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
3834 var IE8_DOM_DEFINE = __webpack_require__(/*! ../internals/ie8-dom-define */ "../node_modules/core-js/internals/ie8-dom-define.js");
3835 var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(/*! ../internals/v8-prototype-define-bug */ "../node_modules/core-js/internals/v8-prototype-define-bug.js");
3836 var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js");
3837 var toPropertyKey = __webpack_require__(/*! ../internals/to-property-key */ "../node_modules/core-js/internals/to-property-key.js");
3838
3839 var $TypeError = TypeError;
3840 // eslint-disable-next-line es/no-object-defineproperty -- safe
3841 var $defineProperty = Object.defineProperty;
3842 // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
3843 var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
3844 var ENUMERABLE = 'enumerable';
3845 var CONFIGURABLE = 'configurable';
3846 var WRITABLE = 'writable';
3847
3848 // `Object.defineProperty` method
3849 // https://tc39.es/ecma262/#sec-object.defineproperty
3850 exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {
3851 anObject(O);
3852 P = toPropertyKey(P);
3853 anObject(Attributes);
3854 if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {
3855 var current = $getOwnPropertyDescriptor(O, P);
3856 if (current && current[WRITABLE]) {
3857 O[P] = Attributes.value;
3858 Attributes = {
3859 configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],
3860 enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],
3861 writable: false
3862 };
3863 }
3864 } return $defineProperty(O, P, Attributes);
3865 } : $defineProperty : function defineProperty(O, P, Attributes) {
3866 anObject(O);
3867 P = toPropertyKey(P);
3868 anObject(Attributes);
3869 if (IE8_DOM_DEFINE) try {
3870 return $defineProperty(O, P, Attributes);
3871 } catch (error) { /* empty */ }
3872 if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported');
3873 if ('value' in Attributes) O[P] = Attributes.value;
3874 return O;
3875 };
3876
3877
3878 /***/ }),
3879
3880 /***/ "../node_modules/core-js/internals/object-get-own-property-descriptor.js":
3881 /*!*******************************************************************************!*\
3882 !*** ../node_modules/core-js/internals/object-get-own-property-descriptor.js ***!
3883 \*******************************************************************************/
3884 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3885
3886 "use strict";
3887
3888 var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
3889 var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js");
3890 var propertyIsEnumerableModule = __webpack_require__(/*! ../internals/object-property-is-enumerable */ "../node_modules/core-js/internals/object-property-is-enumerable.js");
3891 var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../node_modules/core-js/internals/create-property-descriptor.js");
3892 var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../node_modules/core-js/internals/to-indexed-object.js");
3893 var toPropertyKey = __webpack_require__(/*! ../internals/to-property-key */ "../node_modules/core-js/internals/to-property-key.js");
3894 var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
3895 var IE8_DOM_DEFINE = __webpack_require__(/*! ../internals/ie8-dom-define */ "../node_modules/core-js/internals/ie8-dom-define.js");
3896
3897 // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
3898 var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
3899
3900 // `Object.getOwnPropertyDescriptor` method
3901 // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
3902 exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
3903 O = toIndexedObject(O);
3904 P = toPropertyKey(P);
3905 if (IE8_DOM_DEFINE) try {
3906 return $getOwnPropertyDescriptor(O, P);
3907 } catch (error) { /* empty */ }
3908 if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);
3909 };
3910
3911
3912 /***/ }),
3913
3914 /***/ "../node_modules/core-js/internals/object-get-own-property-names.js":
3915 /*!**************************************************************************!*\
3916 !*** ../node_modules/core-js/internals/object-get-own-property-names.js ***!
3917 \**************************************************************************/
3918 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3919
3920 "use strict";
3921
3922 var internalObjectKeys = __webpack_require__(/*! ../internals/object-keys-internal */ "../node_modules/core-js/internals/object-keys-internal.js");
3923 var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ "../node_modules/core-js/internals/enum-bug-keys.js");
3924
3925 var hiddenKeys = enumBugKeys.concat('length', 'prototype');
3926
3927 // `Object.getOwnPropertyNames` method
3928 // https://tc39.es/ecma262/#sec-object.getownpropertynames
3929 // eslint-disable-next-line es/no-object-getownpropertynames -- safe
3930 exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
3931 return internalObjectKeys(O, hiddenKeys);
3932 };
3933
3934
3935 /***/ }),
3936
3937 /***/ "../node_modules/core-js/internals/object-get-own-property-symbols.js":
3938 /*!****************************************************************************!*\
3939 !*** ../node_modules/core-js/internals/object-get-own-property-symbols.js ***!
3940 \****************************************************************************/
3941 /***/ ((__unused_webpack_module, exports) => {
3942
3943 "use strict";
3944
3945 // eslint-disable-next-line es/no-object-getownpropertysymbols -- safe
3946 exports.f = Object.getOwnPropertySymbols;
3947
3948
3949 /***/ }),
3950
3951 /***/ "../node_modules/core-js/internals/object-is-prototype-of.js":
3952 /*!*******************************************************************!*\
3953 !*** ../node_modules/core-js/internals/object-is-prototype-of.js ***!
3954 \*******************************************************************/
3955 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3956
3957 "use strict";
3958
3959 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
3960
3961 module.exports = uncurryThis({}.isPrototypeOf);
3962
3963
3964 /***/ }),
3965
3966 /***/ "../node_modules/core-js/internals/object-keys-internal.js":
3967 /*!*****************************************************************!*\
3968 !*** ../node_modules/core-js/internals/object-keys-internal.js ***!
3969 \*****************************************************************/
3970 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3971
3972 "use strict";
3973
3974 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
3975 var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
3976 var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ "../node_modules/core-js/internals/to-indexed-object.js");
3977 var indexOf = (__webpack_require__(/*! ../internals/array-includes */ "../node_modules/core-js/internals/array-includes.js").indexOf);
3978 var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ "../node_modules/core-js/internals/hidden-keys.js");
3979
3980 var push = uncurryThis([].push);
3981
3982 module.exports = function (object, names) {
3983 var O = toIndexedObject(object);
3984 var i = 0;
3985 var result = [];
3986 var key;
3987 for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);
3988 // Don't enum bug & hidden keys
3989 while (names.length > i) if (hasOwn(O, key = names[i++])) {
3990 ~indexOf(result, key) || push(result, key);
3991 }
3992 return result;
3993 };
3994
3995
3996 /***/ }),
3997
3998 /***/ "../node_modules/core-js/internals/object-property-is-enumerable.js":
3999 /*!**************************************************************************!*\
4000 !*** ../node_modules/core-js/internals/object-property-is-enumerable.js ***!
4001 \**************************************************************************/
4002 /***/ ((__unused_webpack_module, exports) => {
4003
4004 "use strict";
4005
4006 var $propertyIsEnumerable = {}.propertyIsEnumerable;
4007 // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
4008 var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
4009
4010 // Nashorn ~ JDK8 bug
4011 var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);
4012
4013 // `Object.prototype.propertyIsEnumerable` method implementation
4014 // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
4015 exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
4016 var descriptor = getOwnPropertyDescriptor(this, V);
4017 return !!descriptor && descriptor.enumerable;
4018 } : $propertyIsEnumerable;
4019
4020
4021 /***/ }),
4022
4023 /***/ "../node_modules/core-js/internals/object-set-prototype-of.js":
4024 /*!********************************************************************!*\
4025 !*** ../node_modules/core-js/internals/object-set-prototype-of.js ***!
4026 \********************************************************************/
4027 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4028
4029 "use strict";
4030
4031 /* eslint-disable no-proto -- safe */
4032 var uncurryThisAccessor = __webpack_require__(/*! ../internals/function-uncurry-this-accessor */ "../node_modules/core-js/internals/function-uncurry-this-accessor.js");
4033 var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js");
4034 var aPossiblePrototype = __webpack_require__(/*! ../internals/a-possible-prototype */ "../node_modules/core-js/internals/a-possible-prototype.js");
4035
4036 // `Object.setPrototypeOf` method
4037 // https://tc39.es/ecma262/#sec-object.setprototypeof
4038 // Works with __proto__ only. Old v8 can't work with null proto objects.
4039 // eslint-disable-next-line es/no-object-setprototypeof -- safe
4040 module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
4041 var CORRECT_SETTER = false;
4042 var test = {};
4043 var setter;
4044 try {
4045 setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');
4046 setter(test, []);
4047 CORRECT_SETTER = test instanceof Array;
4048 } catch (error) { /* empty */ }
4049 return function setPrototypeOf(O, proto) {
4050 anObject(O);
4051 aPossiblePrototype(proto);
4052 if (CORRECT_SETTER) setter(O, proto);
4053 else O.__proto__ = proto;
4054 return O;
4055 };
4056 }() : undefined);
4057
4058
4059 /***/ }),
4060
4061 /***/ "../node_modules/core-js/internals/ordinary-to-primitive.js":
4062 /*!******************************************************************!*\
4063 !*** ../node_modules/core-js/internals/ordinary-to-primitive.js ***!
4064 \******************************************************************/
4065 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4066
4067 "use strict";
4068
4069 var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js");
4070 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
4071 var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
4072
4073 var $TypeError = TypeError;
4074
4075 // `OrdinaryToPrimitive` abstract operation
4076 // https://tc39.es/ecma262/#sec-ordinarytoprimitive
4077 module.exports = function (input, pref) {
4078 var fn, val;
4079 if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
4080 if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;
4081 if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
4082 throw $TypeError("Can't convert object to primitive value");
4083 };
4084
4085
4086 /***/ }),
4087
4088 /***/ "../node_modules/core-js/internals/own-keys.js":
4089 /*!*****************************************************!*\
4090 !*** ../node_modules/core-js/internals/own-keys.js ***!
4091 \*****************************************************/
4092 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4093
4094 "use strict";
4095
4096 var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ "../node_modules/core-js/internals/get-built-in.js");
4097 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
4098 var getOwnPropertyNamesModule = __webpack_require__(/*! ../internals/object-get-own-property-names */ "../node_modules/core-js/internals/object-get-own-property-names.js");
4099 var getOwnPropertySymbolsModule = __webpack_require__(/*! ../internals/object-get-own-property-symbols */ "../node_modules/core-js/internals/object-get-own-property-symbols.js");
4100 var anObject = __webpack_require__(/*! ../internals/an-object */ "../node_modules/core-js/internals/an-object.js");
4101
4102 var concat = uncurryThis([].concat);
4103
4104 // all object keys, includes non-enumerable and symbols
4105 module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
4106 var keys = getOwnPropertyNamesModule.f(anObject(it));
4107 var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
4108 return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;
4109 };
4110
4111
4112 /***/ }),
4113
4114 /***/ "../node_modules/core-js/internals/proxy-accessor.js":
4115 /*!***********************************************************!*\
4116 !*** ../node_modules/core-js/internals/proxy-accessor.js ***!
4117 \***********************************************************/
4118 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4119
4120 "use strict";
4121
4122 var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js").f);
4123
4124 module.exports = function (Target, Source, key) {
4125 key in Target || defineProperty(Target, key, {
4126 configurable: true,
4127 get: function () { return Source[key]; },
4128 set: function (it) { Source[key] = it; }
4129 });
4130 };
4131
4132
4133 /***/ }),
4134
4135 /***/ "../node_modules/core-js/internals/require-object-coercible.js":
4136 /*!*********************************************************************!*\
4137 !*** ../node_modules/core-js/internals/require-object-coercible.js ***!
4138 \*********************************************************************/
4139 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4140
4141 "use strict";
4142
4143 var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ "../node_modules/core-js/internals/is-null-or-undefined.js");
4144
4145 var $TypeError = TypeError;
4146
4147 // `RequireObjectCoercible` abstract operation
4148 // https://tc39.es/ecma262/#sec-requireobjectcoercible
4149 module.exports = function (it) {
4150 if (isNullOrUndefined(it)) throw $TypeError("Can't call method on " + it);
4151 return it;
4152 };
4153
4154
4155 /***/ }),
4156
4157 /***/ "../node_modules/core-js/internals/shared-key.js":
4158 /*!*******************************************************!*\
4159 !*** ../node_modules/core-js/internals/shared-key.js ***!
4160 \*******************************************************/
4161 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4162
4163 "use strict";
4164
4165 var shared = __webpack_require__(/*! ../internals/shared */ "../node_modules/core-js/internals/shared.js");
4166 var uid = __webpack_require__(/*! ../internals/uid */ "../node_modules/core-js/internals/uid.js");
4167
4168 var keys = shared('keys');
4169
4170 module.exports = function (key) {
4171 return keys[key] || (keys[key] = uid(key));
4172 };
4173
4174
4175 /***/ }),
4176
4177 /***/ "../node_modules/core-js/internals/shared-store.js":
4178 /*!*********************************************************!*\
4179 !*** ../node_modules/core-js/internals/shared-store.js ***!
4180 \*********************************************************/
4181 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4182
4183 "use strict";
4184
4185 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
4186 var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ "../node_modules/core-js/internals/define-global-property.js");
4187
4188 var SHARED = '__core-js_shared__';
4189 var store = global[SHARED] || defineGlobalProperty(SHARED, {});
4190
4191 module.exports = store;
4192
4193
4194 /***/ }),
4195
4196 /***/ "../node_modules/core-js/internals/shared.js":
4197 /*!***************************************************!*\
4198 !*** ../node_modules/core-js/internals/shared.js ***!
4199 \***************************************************/
4200 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4201
4202 "use strict";
4203
4204 var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../node_modules/core-js/internals/is-pure.js");
4205 var store = __webpack_require__(/*! ../internals/shared-store */ "../node_modules/core-js/internals/shared-store.js");
4206
4207 (module.exports = function (key, value) {
4208 return store[key] || (store[key] = value !== undefined ? value : {});
4209 })('versions', []).push({
4210 version: '3.32.0',
4211 mode: IS_PURE ? 'pure' : 'global',
4212 copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',
4213 license: 'https://github.com/zloirock/core-js/blob/v3.32.0/LICENSE',
4214 source: 'https://github.com/zloirock/core-js'
4215 });
4216
4217
4218 /***/ }),
4219
4220 /***/ "../node_modules/core-js/internals/symbol-constructor-detection.js":
4221 /*!*************************************************************************!*\
4222 !*** ../node_modules/core-js/internals/symbol-constructor-detection.js ***!
4223 \*************************************************************************/
4224 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4225
4226 "use strict";
4227
4228 /* eslint-disable es/no-symbol -- required for testing */
4229 var V8_VERSION = __webpack_require__(/*! ../internals/engine-v8-version */ "../node_modules/core-js/internals/engine-v8-version.js");
4230 var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
4231 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
4232
4233 var $String = global.String;
4234
4235 // eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
4236 module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
4237 var symbol = Symbol();
4238 // Chrome 38 Symbol has incorrect toString conversion
4239 // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
4240 // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,
4241 // of course, fail.
4242 return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||
4243 // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
4244 !Symbol.sham && V8_VERSION && V8_VERSION < 41;
4245 });
4246
4247
4248 /***/ }),
4249
4250 /***/ "../node_modules/core-js/internals/to-absolute-index.js":
4251 /*!**************************************************************!*\
4252 !*** ../node_modules/core-js/internals/to-absolute-index.js ***!
4253 \**************************************************************/
4254 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4255
4256 "use strict";
4257
4258 var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ "../node_modules/core-js/internals/to-integer-or-infinity.js");
4259
4260 var max = Math.max;
4261 var min = Math.min;
4262
4263 // Helper for a popular repeating case of the spec:
4264 // Let integer be ? ToInteger(index).
4265 // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
4266 module.exports = function (index, length) {
4267 var integer = toIntegerOrInfinity(index);
4268 return integer < 0 ? max(integer + length, 0) : min(integer, length);
4269 };
4270
4271
4272 /***/ }),
4273
4274 /***/ "../node_modules/core-js/internals/to-indexed-object.js":
4275 /*!**************************************************************!*\
4276 !*** ../node_modules/core-js/internals/to-indexed-object.js ***!
4277 \**************************************************************/
4278 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4279
4280 "use strict";
4281
4282 // toObject with fallback for non-array-like ES3 strings
4283 var IndexedObject = __webpack_require__(/*! ../internals/indexed-object */ "../node_modules/core-js/internals/indexed-object.js");
4284 var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../node_modules/core-js/internals/require-object-coercible.js");
4285
4286 module.exports = function (it) {
4287 return IndexedObject(requireObjectCoercible(it));
4288 };
4289
4290
4291 /***/ }),
4292
4293 /***/ "../node_modules/core-js/internals/to-integer-or-infinity.js":
4294 /*!*******************************************************************!*\
4295 !*** ../node_modules/core-js/internals/to-integer-or-infinity.js ***!
4296 \*******************************************************************/
4297 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4298
4299 "use strict";
4300
4301 var trunc = __webpack_require__(/*! ../internals/math-trunc */ "../node_modules/core-js/internals/math-trunc.js");
4302
4303 // `ToIntegerOrInfinity` abstract operation
4304 // https://tc39.es/ecma262/#sec-tointegerorinfinity
4305 module.exports = function (argument) {
4306 var number = +argument;
4307 // eslint-disable-next-line no-self-compare -- NaN check
4308 return number !== number || number === 0 ? 0 : trunc(number);
4309 };
4310
4311
4312 /***/ }),
4313
4314 /***/ "../node_modules/core-js/internals/to-length.js":
4315 /*!******************************************************!*\
4316 !*** ../node_modules/core-js/internals/to-length.js ***!
4317 \******************************************************/
4318 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4319
4320 "use strict";
4321
4322 var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ "../node_modules/core-js/internals/to-integer-or-infinity.js");
4323
4324 var min = Math.min;
4325
4326 // `ToLength` abstract operation
4327 // https://tc39.es/ecma262/#sec-tolength
4328 module.exports = function (argument) {
4329 return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
4330 };
4331
4332
4333 /***/ }),
4334
4335 /***/ "../node_modules/core-js/internals/to-object.js":
4336 /*!******************************************************!*\
4337 !*** ../node_modules/core-js/internals/to-object.js ***!
4338 \******************************************************/
4339 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4340
4341 "use strict";
4342
4343 var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../node_modules/core-js/internals/require-object-coercible.js");
4344
4345 var $Object = Object;
4346
4347 // `ToObject` abstract operation
4348 // https://tc39.es/ecma262/#sec-toobject
4349 module.exports = function (argument) {
4350 return $Object(requireObjectCoercible(argument));
4351 };
4352
4353
4354 /***/ }),
4355
4356 /***/ "../node_modules/core-js/internals/to-primitive.js":
4357 /*!*********************************************************!*\
4358 !*** ../node_modules/core-js/internals/to-primitive.js ***!
4359 \*********************************************************/
4360 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4361
4362 "use strict";
4363
4364 var call = __webpack_require__(/*! ../internals/function-call */ "../node_modules/core-js/internals/function-call.js");
4365 var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
4366 var isSymbol = __webpack_require__(/*! ../internals/is-symbol */ "../node_modules/core-js/internals/is-symbol.js");
4367 var getMethod = __webpack_require__(/*! ../internals/get-method */ "../node_modules/core-js/internals/get-method.js");
4368 var ordinaryToPrimitive = __webpack_require__(/*! ../internals/ordinary-to-primitive */ "../node_modules/core-js/internals/ordinary-to-primitive.js");
4369 var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js");
4370
4371 var $TypeError = TypeError;
4372 var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
4373
4374 // `ToPrimitive` abstract operation
4375 // https://tc39.es/ecma262/#sec-toprimitive
4376 module.exports = function (input, pref) {
4377 if (!isObject(input) || isSymbol(input)) return input;
4378 var exoticToPrim = getMethod(input, TO_PRIMITIVE);
4379 var result;
4380 if (exoticToPrim) {
4381 if (pref === undefined) pref = 'default';
4382 result = call(exoticToPrim, input, pref);
4383 if (!isObject(result) || isSymbol(result)) return result;
4384 throw $TypeError("Can't convert object to primitive value");
4385 }
4386 if (pref === undefined) pref = 'number';
4387 return ordinaryToPrimitive(input, pref);
4388 };
4389
4390
4391 /***/ }),
4392
4393 /***/ "../node_modules/core-js/internals/to-property-key.js":
4394 /*!************************************************************!*\
4395 !*** ../node_modules/core-js/internals/to-property-key.js ***!
4396 \************************************************************/
4397 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4398
4399 "use strict";
4400
4401 var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ "../node_modules/core-js/internals/to-primitive.js");
4402 var isSymbol = __webpack_require__(/*! ../internals/is-symbol */ "../node_modules/core-js/internals/is-symbol.js");
4403
4404 // `ToPropertyKey` abstract operation
4405 // https://tc39.es/ecma262/#sec-topropertykey
4406 module.exports = function (argument) {
4407 var key = toPrimitive(argument, 'string');
4408 return isSymbol(key) ? key : key + '';
4409 };
4410
4411
4412 /***/ }),
4413
4414 /***/ "../node_modules/core-js/internals/to-string-tag-support.js":
4415 /*!******************************************************************!*\
4416 !*** ../node_modules/core-js/internals/to-string-tag-support.js ***!
4417 \******************************************************************/
4418 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4419
4420 "use strict";
4421
4422 var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ "../node_modules/core-js/internals/well-known-symbol.js");
4423
4424 var TO_STRING_TAG = wellKnownSymbol('toStringTag');
4425 var test = {};
4426
4427 test[TO_STRING_TAG] = 'z';
4428
4429 module.exports = String(test) === '[object z]';
4430
4431
4432 /***/ }),
4433
4434 /***/ "../node_modules/core-js/internals/to-string.js":
4435 /*!******************************************************!*\
4436 !*** ../node_modules/core-js/internals/to-string.js ***!
4437 \******************************************************/
4438 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4439
4440 "use strict";
4441
4442 var classof = __webpack_require__(/*! ../internals/classof */ "../node_modules/core-js/internals/classof.js");
4443
4444 var $String = String;
4445
4446 module.exports = function (argument) {
4447 if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');
4448 return $String(argument);
4449 };
4450
4451
4452 /***/ }),
4453
4454 /***/ "../node_modules/core-js/internals/try-to-string.js":
4455 /*!**********************************************************!*\
4456 !*** ../node_modules/core-js/internals/try-to-string.js ***!
4457 \**********************************************************/
4458 /***/ ((module) => {
4459
4460 "use strict";
4461
4462 var $String = String;
4463
4464 module.exports = function (argument) {
4465 try {
4466 return $String(argument);
4467 } catch (error) {
4468 return 'Object';
4469 }
4470 };
4471
4472
4473 /***/ }),
4474
4475 /***/ "../node_modules/core-js/internals/uid.js":
4476 /*!************************************************!*\
4477 !*** ../node_modules/core-js/internals/uid.js ***!
4478 \************************************************/
4479 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4480
4481 "use strict";
4482
4483 var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
4484
4485 var id = 0;
4486 var postfix = Math.random();
4487 var toString = uncurryThis(1.0.toString);
4488
4489 module.exports = function (key) {
4490 return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);
4491 };
4492
4493
4494 /***/ }),
4495
4496 /***/ "../node_modules/core-js/internals/use-symbol-as-uid.js":
4497 /*!**************************************************************!*\
4498 !*** ../node_modules/core-js/internals/use-symbol-as-uid.js ***!
4499 \**************************************************************/
4500 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4501
4502 "use strict";
4503
4504 /* eslint-disable es/no-symbol -- required for testing */
4505 var NATIVE_SYMBOL = __webpack_require__(/*! ../internals/symbol-constructor-detection */ "../node_modules/core-js/internals/symbol-constructor-detection.js");
4506
4507 module.exports = NATIVE_SYMBOL
4508 && !Symbol.sham
4509 && typeof Symbol.iterator == 'symbol';
4510
4511
4512 /***/ }),
4513
4514 /***/ "../node_modules/core-js/internals/v8-prototype-define-bug.js":
4515 /*!********************************************************************!*\
4516 !*** ../node_modules/core-js/internals/v8-prototype-define-bug.js ***!
4517 \********************************************************************/
4518 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4519
4520 "use strict";
4521
4522 var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
4523 var fails = __webpack_require__(/*! ../internals/fails */ "../node_modules/core-js/internals/fails.js");
4524
4525 // V8 ~ Chrome 36-
4526 // https://bugs.chromium.org/p/v8/issues/detail?id=3334
4527 module.exports = DESCRIPTORS && fails(function () {
4528 // eslint-disable-next-line es/no-object-defineproperty -- required for testing
4529 return Object.defineProperty(function () { /* empty */ }, 'prototype', {
4530 value: 42,
4531 writable: false
4532 }).prototype != 42;
4533 });
4534
4535
4536 /***/ }),
4537
4538 /***/ "../node_modules/core-js/internals/weak-map-basic-detection.js":
4539 /*!*********************************************************************!*\
4540 !*** ../node_modules/core-js/internals/weak-map-basic-detection.js ***!
4541 \*********************************************************************/
4542 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4543
4544 "use strict";
4545
4546 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
4547 var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
4548
4549 var WeakMap = global.WeakMap;
4550
4551 module.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));
4552
4553
4554 /***/ }),
4555
4556 /***/ "../node_modules/core-js/internals/well-known-symbol.js":
4557 /*!**************************************************************!*\
4558 !*** ../node_modules/core-js/internals/well-known-symbol.js ***!
4559 \**************************************************************/
4560 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4561
4562 "use strict";
4563
4564 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
4565 var shared = __webpack_require__(/*! ../internals/shared */ "../node_modules/core-js/internals/shared.js");
4566 var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
4567 var uid = __webpack_require__(/*! ../internals/uid */ "../node_modules/core-js/internals/uid.js");
4568 var NATIVE_SYMBOL = __webpack_require__(/*! ../internals/symbol-constructor-detection */ "../node_modules/core-js/internals/symbol-constructor-detection.js");
4569 var USE_SYMBOL_AS_UID = __webpack_require__(/*! ../internals/use-symbol-as-uid */ "../node_modules/core-js/internals/use-symbol-as-uid.js");
4570
4571 var Symbol = global.Symbol;
4572 var WellKnownSymbolsStore = shared('wks');
4573 var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;
4574
4575 module.exports = function (name) {
4576 if (!hasOwn(WellKnownSymbolsStore, name)) {
4577 WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)
4578 ? Symbol[name]
4579 : createWellKnownSymbol('Symbol.' + name);
4580 } return WellKnownSymbolsStore[name];
4581 };
4582
4583
4584 /***/ }),
4585
4586 /***/ "../node_modules/core-js/internals/wrap-error-constructor-with-cause.js":
4587 /*!******************************************************************************!*\
4588 !*** ../node_modules/core-js/internals/wrap-error-constructor-with-cause.js ***!
4589 \******************************************************************************/
4590 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4591
4592 "use strict";
4593
4594 var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ "../node_modules/core-js/internals/get-built-in.js");
4595 var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
4596 var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ "../node_modules/core-js/internals/create-non-enumerable-property.js");
4597 var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ "../node_modules/core-js/internals/object-is-prototype-of.js");
4598 var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ "../node_modules/core-js/internals/object-set-prototype-of.js");
4599 var copyConstructorProperties = __webpack_require__(/*! ../internals/copy-constructor-properties */ "../node_modules/core-js/internals/copy-constructor-properties.js");
4600 var proxyAccessor = __webpack_require__(/*! ../internals/proxy-accessor */ "../node_modules/core-js/internals/proxy-accessor.js");
4601 var inheritIfRequired = __webpack_require__(/*! ../internals/inherit-if-required */ "../node_modules/core-js/internals/inherit-if-required.js");
4602 var normalizeStringArgument = __webpack_require__(/*! ../internals/normalize-string-argument */ "../node_modules/core-js/internals/normalize-string-argument.js");
4603 var installErrorCause = __webpack_require__(/*! ../internals/install-error-cause */ "../node_modules/core-js/internals/install-error-cause.js");
4604 var installErrorStack = __webpack_require__(/*! ../internals/error-stack-install */ "../node_modules/core-js/internals/error-stack-install.js");
4605 var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
4606 var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../node_modules/core-js/internals/is-pure.js");
4607
4608 module.exports = function (FULL_NAME, wrapper, FORCED, IS_AGGREGATE_ERROR) {
4609 var STACK_TRACE_LIMIT = 'stackTraceLimit';
4610 var OPTIONS_POSITION = IS_AGGREGATE_ERROR ? 2 : 1;
4611 var path = FULL_NAME.split('.');
4612 var ERROR_NAME = path[path.length - 1];
4613 var OriginalError = getBuiltIn.apply(null, path);
4614
4615 if (!OriginalError) return;
4616
4617 var OriginalErrorPrototype = OriginalError.prototype;
4618
4619 // V8 9.3- bug https://bugs.chromium.org/p/v8/issues/detail?id=12006
4620 if (!IS_PURE && hasOwn(OriginalErrorPrototype, 'cause')) delete OriginalErrorPrototype.cause;
4621
4622 if (!FORCED) return OriginalError;
4623
4624 var BaseError = getBuiltIn('Error');
4625
4626 var WrappedError = wrapper(function (a, b) {
4627 var message = normalizeStringArgument(IS_AGGREGATE_ERROR ? b : a, undefined);
4628 var result = IS_AGGREGATE_ERROR ? new OriginalError(a) : new OriginalError();
4629 if (message !== undefined) createNonEnumerableProperty(result, 'message', message);
4630 installErrorStack(result, WrappedError, result.stack, 2);
4631 if (this && isPrototypeOf(OriginalErrorPrototype, this)) inheritIfRequired(result, this, WrappedError);
4632 if (arguments.length > OPTIONS_POSITION) installErrorCause(result, arguments[OPTIONS_POSITION]);
4633 return result;
4634 });
4635
4636 WrappedError.prototype = OriginalErrorPrototype;
4637
4638 if (ERROR_NAME !== 'Error') {
4639 if (setPrototypeOf) setPrototypeOf(WrappedError, BaseError);
4640 else copyConstructorProperties(WrappedError, BaseError, { name: true });
4641 } else if (DESCRIPTORS && STACK_TRACE_LIMIT in OriginalError) {
4642 proxyAccessor(WrappedError, OriginalError, STACK_TRACE_LIMIT);
4643 proxyAccessor(WrappedError, OriginalError, 'prepareStackTrace');
4644 }
4645
4646 copyConstructorProperties(WrappedError, OriginalError);
4647
4648 if (!IS_PURE) try {
4649 // Safari 13- bug: WebAssembly errors does not have a proper `.name`
4650 if (OriginalErrorPrototype.name !== ERROR_NAME) {
4651 createNonEnumerableProperty(OriginalErrorPrototype, 'name', ERROR_NAME);
4652 }
4653 OriginalErrorPrototype.constructor = WrappedError;
4654 } catch (error) { /* empty */ }
4655
4656 return WrappedError;
4657 };
4658
4659
4660 /***/ }),
4661
4662 /***/ "../node_modules/core-js/modules/es.error.cause.js":
4663 /*!*********************************************************!*\
4664 !*** ../node_modules/core-js/modules/es.error.cause.js ***!
4665 \*********************************************************/
4666 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
4667
4668 "use strict";
4669
4670 /* eslint-disable no-unused-vars -- required for functions `.length` */
4671 var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js");
4672 var global = __webpack_require__(/*! ../internals/global */ "../node_modules/core-js/internals/global.js");
4673 var apply = __webpack_require__(/*! ../internals/function-apply */ "../node_modules/core-js/internals/function-apply.js");
4674 var wrapErrorConstructorWithCause = __webpack_require__(/*! ../internals/wrap-error-constructor-with-cause */ "../node_modules/core-js/internals/wrap-error-constructor-with-cause.js");
4675
4676 var WEB_ASSEMBLY = 'WebAssembly';
4677 var WebAssembly = global[WEB_ASSEMBLY];
4678
4679 var FORCED = Error('e', { cause: 7 }).cause !== 7;
4680
4681 var exportGlobalErrorCauseWrapper = function (ERROR_NAME, wrapper) {
4682 var O = {};
4683 O[ERROR_NAME] = wrapErrorConstructorWithCause(ERROR_NAME, wrapper, FORCED);
4684 $({ global: true, constructor: true, arity: 1, forced: FORCED }, O);
4685 };
4686
4687 var exportWebAssemblyErrorCauseWrapper = function (ERROR_NAME, wrapper) {
4688 if (WebAssembly && WebAssembly[ERROR_NAME]) {
4689 var O = {};
4690 O[ERROR_NAME] = wrapErrorConstructorWithCause(WEB_ASSEMBLY + '.' + ERROR_NAME, wrapper, FORCED);
4691 $({ target: WEB_ASSEMBLY, stat: true, constructor: true, arity: 1, forced: FORCED }, O);
4692 }
4693 };
4694
4695 // https://tc39.es/ecma262/#sec-nativeerror
4696 exportGlobalErrorCauseWrapper('Error', function (init) {
4697 return function Error(message) { return apply(init, this, arguments); };
4698 });
4699 exportGlobalErrorCauseWrapper('EvalError', function (init) {
4700 return function EvalError(message) { return apply(init, this, arguments); };
4701 });
4702 exportGlobalErrorCauseWrapper('RangeError', function (init) {
4703 return function RangeError(message) { return apply(init, this, arguments); };
4704 });
4705 exportGlobalErrorCauseWrapper('ReferenceError', function (init) {
4706 return function ReferenceError(message) { return apply(init, this, arguments); };
4707 });
4708 exportGlobalErrorCauseWrapper('SyntaxError', function (init) {
4709 return function SyntaxError(message) { return apply(init, this, arguments); };
4710 });
4711 exportGlobalErrorCauseWrapper('TypeError', function (init) {
4712 return function TypeError(message) { return apply(init, this, arguments); };
4713 });
4714 exportGlobalErrorCauseWrapper('URIError', function (init) {
4715 return function URIError(message) { return apply(init, this, arguments); };
4716 });
4717 exportWebAssemblyErrorCauseWrapper('CompileError', function (init) {
4718 return function CompileError(message) { return apply(init, this, arguments); };
4719 });
4720 exportWebAssemblyErrorCauseWrapper('LinkError', function (init) {
4721 return function LinkError(message) { return apply(init, this, arguments); };
4722 });
4723 exportWebAssemblyErrorCauseWrapper('RuntimeError', function (init) {
4724 return function RuntimeError(message) { return apply(init, this, arguments); };
4725 });
4726
4727
4728 /***/ }),
4729
4730 /***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
4731 /*!***********************************************************************!*\
4732 !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
4733 \***********************************************************************/
4734 /***/ ((module) => {
4735
4736 function _interopRequireDefault(obj) {
4737 return obj && obj.__esModule ? obj : {
4738 "default": obj
4739 };
4740 }
4741 module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
4742
4743 /***/ })
4744
4745 },
4746 /******/ __webpack_require__ => { // webpackRuntimeModules
4747 /******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
4748 /******/ var __webpack_exports__ = (__webpack_exec__("../assets/dev/js/frontend/modules.js"));
4749 /******/ }
4750 ]);
4751 //# sourceMappingURL=frontend-modules.js.map