PluginProbe
Elementor Website Builder – more than just a page builder / 4.3.0-beta3
Elementor Website Builder – more than just a page builder v4.3.0-beta3
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
← All changes | assets/js/frontend.js +3885 -2294 4.2.04.3.0-beta3 View file →
@@ -1,2452 +1,4043 @@
1 1 "use strict";
2 -(self["webpackChunkelementorFrontend"] = self["webpackChunkelementorFrontend"] || []).push([["frontend"],{
3 2
4 -/***/ "../assets/dev/js/frontend/documents-manager.js":
5 -/*!******************************************************!*\
6 - !*** ../assets/dev/js/frontend/documents-manager.js ***!
7 - \******************************************************/
8 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3 +(function() {
9 4
5 +//#region \0rolldown/runtime.js
6 + var __defProp = Object.defineProperty;
7 + var __name = (target, value) => __defProp(target, "name", {
8 + value,
9 + configurable: true
10 + });
11 + var __esmMin = (fn, res, err) => () => {
12 + if (err) throw err[0];
13 + try {
14 + return fn && (res = fn(fn = 0)), res;
15 + } catch (e) {
16 + throw err = [e], e;
17 + }
18 + };
19 + var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
10 20
21 +//#endregion
11 22
12 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
13 -Object.defineProperty(exports, "__esModule", ({
14 - value: true
15 -}));
16 -exports["default"] = void 0;
17 -var _document = _interopRequireDefault(__webpack_require__(/*! ./document */ "../assets/dev/js/frontend/document.js"));
18 -class _default extends elementorModules.ViewModule {
19 - constructor(...args) {
20 - super(...args);
21 - this.documents = {};
22 - this.initDocumentClasses();
23 - this.attachDocumentsClasses();
24 - }
25 - getDefaultSettings() {
26 - return {
27 - selectors: {
28 - document: '.elementor'
29 - }
30 - };
31 - }
32 - getDefaultElements() {
33 - const selectors = this.getSettings('selectors');
34 - return {
35 - $documents: jQuery(selectors.document)
36 - };
37 - }
38 - initDocumentClasses() {
39 - this.documentClasses = {
40 - base: _document.default
41 - };
42 - elementorFrontend.hooks.doAction('elementor/frontend/documents-manager/init-classes', this);
43 - }
44 - addDocumentClass(documentType, documentClass) {
45 - this.documentClasses[documentType] = documentClass;
46 - }
47 - attachDocumentsClasses() {
48 - this.elements.$documents.each((index, document) => this.attachDocumentClass(jQuery(document)));
49 - }
50 - attachDocumentClass($document) {
51 - const documentData = $document.data(),
52 - documentID = documentData.elementorId,
53 - documentType = documentData.elementorType,
54 - DocumentClass = this.documentClasses[documentType] || this.documentClasses.base;
55 - this.documents[documentID] = new DocumentClass({
56 - $element: $document,
57 - id: documentID
58 - });
59 - }
60 -}
61 -exports["default"] = _default;
23 +//#region node_modules/@babel/runtime/helpers/interopRequireDefault.js
24 + var require_interopRequireDefault = /* @__PURE__ */ __commonJSMin(((exports, module) => {
25 + function _interopRequireDefault(e) {
26 + return e && e.__esModule ? e : { "default": e };
27 + }
28 + module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
29 + }));
62 30
63 -/***/ }),
31 +//#endregion
32 +//#region node_modules/core-js/internals/global-this.js
33 + var require_global_this = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34 + var check = function(it) {
35 + return it && it.Math === Math && it;
36 + };
37 + module.exports = check(typeof globalThis == "object" && globalThis) || check(typeof window == "object" && window) || check(typeof self == "object" && self) || check(typeof global == "object" && global) || check(typeof exports == "object" && exports) || (function() {
38 + return this;
39 + })() || Function("return this")();
40 + }));
64 41
65 -/***/ "../assets/dev/js/frontend/elements-handlers-manager.js":
66 -/*!**************************************************************!*\
67 - !*** ../assets/dev/js/frontend/elements-handlers-manager.js ***!
68 - \**************************************************************/
69 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
42 +//#endregion
43 +//#region node_modules/core-js/internals/fails.js
44 + var require_fails = /* @__PURE__ */ __commonJSMin(((exports, module) => {
45 + module.exports = function(exec) {
46 + try {
47 + return !!exec();
48 + } catch (error) {
49 + return true;
50 + }
51 + };
52 + }));
70 53
54 +//#endregion
55 +//#region node_modules/core-js/internals/descriptors.js
56 + var require_descriptors = /* @__PURE__ */ __commonJSMin(((exports, module) => {
57 + var fails = require_fails();
58 + module.exports = !fails(function() {
59 + return Object.defineProperty({}, 1, { get: function() {
60 + return 7;
61 + } })[1] !== 7;
62 + });
63 + }));
71 64
65 +//#endregion
66 +//#region node_modules/core-js/internals/function-bind-native.js
67 + var require_function_bind_native = /* @__PURE__ */ __commonJSMin(((exports, module) => {
68 + var fails = require_fails();
69 + module.exports = !fails(function() {
70 + var test = (function() {}).bind();
71 + return typeof test != "function" || test.hasOwnProperty("prototype");
72 + });
73 + }));
72 74
73 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
74 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
75 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
76 -var _global = _interopRequireDefault(__webpack_require__(/*! ./handlers/global */ "../assets/dev/js/frontend/handlers/global.js"));
77 -var _container = _interopRequireDefault(__webpack_require__(/*! ./handlers/container/container */ "../assets/dev/js/frontend/handlers/container/container.js"));
78 -var _section = _interopRequireDefault(__webpack_require__(/*! ./handlers/section/section */ "../assets/dev/js/frontend/handlers/section/section.js"));
79 -var _column = _interopRequireDefault(__webpack_require__(/*! ./handlers/column */ "../assets/dev/js/frontend/handlers/column.js"));
80 -/* global elementorFrontendConfig */
75 +//#endregion
76 +//#region node_modules/core-js/internals/function-call.js
77 + var require_function_call = /* @__PURE__ */ __commonJSMin(((exports, module) => {
78 + var NATIVE_BIND = require_function_bind_native();
79 + var call = Function.prototype.call;
80 + module.exports = NATIVE_BIND ? call.bind(call) : function() {
81 + return call.apply(call, arguments);
82 + };
83 + }));
81 84
82 -module.exports = function ($) {
83 - const handlersInstances = {};
84 - this.elementsHandlers = {
85 - 'accordion.default': () => __webpack_require__.e(/*! import() | accordion */ "accordion").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/accordion */ "../assets/dev/js/frontend/handlers/accordion.js")),
86 - 'alert.default': () => __webpack_require__.e(/*! import() | alert */ "alert").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/alert */ "../assets/dev/js/frontend/handlers/alert.js")),
87 - 'counter.default': () => __webpack_require__.e(/*! import() | counter */ "counter").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/counter */ "../assets/dev/js/frontend/handlers/counter.js")),
88 - 'progress.default': () => __webpack_require__.e(/*! import() | progress */ "progress").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/progress */ "../assets/dev/js/frontend/handlers/progress.js")),
89 - 'tabs.default': () => __webpack_require__.e(/*! import() | tabs */ "tabs").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/tabs */ "../assets/dev/js/frontend/handlers/tabs.js")),
90 - 'toggle.default': () => __webpack_require__.e(/*! import() | toggle */ "toggle").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/toggle */ "../assets/dev/js/frontend/handlers/toggle.js")),
91 - 'video.default': () => __webpack_require__.e(/*! import() | video */ "video").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/video */ "../assets/dev/js/frontend/handlers/video.js")),
92 - 'image-carousel.default': () => __webpack_require__.e(/*! import() | image-carousel */ "image-carousel").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/image-carousel */ "../assets/dev/js/frontend/handlers/image-carousel.js")),
93 - 'text-editor.default': () => __webpack_require__.e(/*! import() | text-editor */ "text-editor").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/text-editor */ "../assets/dev/js/frontend/handlers/text-editor.js")),
94 - 'wp-widget-media_audio.default': () => __webpack_require__.e(/*! import() | wp-audio */ "wp-audio").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/wp-audio */ "../assets/dev/js/frontend/handlers/wp-audio.js")),
95 - container: _container.default,
96 - section: _section.default,
97 - column: _column.default
98 - };
99 - if (elementorFrontendConfig.experimentalFeatures['nested-elements']) {
100 - this.elementsHandlers['nested-tabs.default'] = () => __webpack_require__.e(/*! import() | nested-tabs */ "nested-tabs").then(__webpack_require__.bind(__webpack_require__, /*! elementor/modules/nested-tabs/assets/js/frontend/handlers/nested-tabs */ "../modules/nested-tabs/assets/js/frontend/handlers/nested-tabs.js"));
101 - }
102 - if (elementorFrontendConfig.experimentalFeatures['nested-elements']) {
103 - this.elementsHandlers['nested-accordion.default'] = () => __webpack_require__.e(/*! import() | nested-accordion */ "nested-accordion").then(__webpack_require__.bind(__webpack_require__, /*! elementor/modules/nested-accordion/assets/js/frontend/handlers/nested-accordion */ "../modules/nested-accordion/assets/js/frontend/handlers/nested-accordion.js"));
104 - }
105 - if (elementorFrontendConfig.experimentalFeatures.container) {
106 - this.elementsHandlers['contact-buttons.default'] = () => __webpack_require__.e(/*! import() | contact-buttons */ "contact-buttons").then(__webpack_require__.bind(__webpack_require__, /*! elementor/modules/floating-buttons/assets/js/floating-buttons/frontend/handlers/contact-buttons */ "../modules/floating-buttons/assets/js/floating-buttons/frontend/handlers/contact-buttons.js"));
107 - this.elementsHandlers['floating-bars-var-1.default'] = () => __webpack_require__.e(/*! import() | floating-bars */ "floating-bars").then(__webpack_require__.bind(__webpack_require__, /*! elementor/modules/floating-buttons/assets/js/floating-bars/frontend/handlers/floating-bars */ "../modules/floating-buttons/assets/js/floating-bars/frontend/handlers/floating-bars.js"));
108 - }
109 - const addGlobalHandlers = () => elementorFrontend.hooks.addAction('frontend/element_ready/global', _global.default);
110 - const addElementsHandlers = () => {
111 - $.each(this.elementsHandlers, (elementName, Handlers) => {
112 - const elementData = elementName.split('.');
113 - elementName = elementData[0];
114 - const skin = elementData[1] || null;
115 - this.attachHandler(elementName, Handlers, skin);
116 - });
117 - };
118 - const isClassHandler = Handler => Handler.prototype?.getUniqueHandlerID;
119 - const addHandlerWithHook = (elementBaseName, Handler, skin = 'default') => {
120 - skin = skin ? '.' + skin : '';
121 - const elementName = elementBaseName + skin;
122 - elementorFrontend.hooks.addAction(`frontend/element_ready/${elementName}`, $element => {
123 - if (isClassHandler(Handler)) {
124 - this.addHandler(Handler, {
125 - $element,
126 - elementName
127 - }, true);
128 - } else {
129 - const handlerValue = Handler();
130 - if (!handlerValue) {
131 - return;
132 - }
133 - if (handlerValue instanceof Promise) {
134 - handlerValue.then(({
135 - default: dynamicHandler
136 - }) => {
137 - this.addHandler(dynamicHandler, {
138 - $element,
139 - elementName
140 - }, true);
141 - });
142 - } else {
143 - this.addHandler(handlerValue, {
144 - $element,
145 - elementName
146 - }, true);
147 - }
148 - }
149 - });
150 - };
151 - this.addHandler = function (HandlerClass, options) {
152 - const elementID = options.$element.data('model-cid');
153 - let handlerID;
85 +//#endregion
86 +//#region node_modules/core-js/internals/object-property-is-enumerable.js
87 + var require_object_property_is_enumerable = /* @__PURE__ */ __commonJSMin(((exports) => {
88 + var $propertyIsEnumerable = {}.propertyIsEnumerable;
89 + var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
90 + var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);
91 + exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
92 + var descriptor = getOwnPropertyDescriptor(this, V);
93 + return !!descriptor && descriptor.enumerable;
94 + } : $propertyIsEnumerable;
95 + }));
154 96
155 - // If element is in edit mode
156 - if (elementID) {
157 - handlerID = HandlerClass.prototype.getConstructorID();
158 - if (!handlersInstances[elementID]) {
159 - handlersInstances[elementID] = {};
160 - }
161 - const oldHandler = handlersInstances[elementID][handlerID];
162 - if (oldHandler) {
163 - oldHandler.onDestroy();
164 - }
165 - }
166 - const newHandler = new HandlerClass(options);
167 - elementorFrontend.hooks.doAction(`frontend/element_handler_ready/${options.elementName}`, options.$element, $);
168 - if (elementID) {
169 - handlersInstances[elementID][handlerID] = newHandler;
170 - }
171 - };
172 - this.attachHandler = (elementName, Handlers, skin) => {
173 - if (!Array.isArray(Handlers)) {
174 - Handlers = [Handlers];
175 - }
176 - Handlers.forEach(Handler => addHandlerWithHook(elementName, Handler, skin));
177 - };
178 - this.getHandler = function (handlerName) {
179 - const elementHandler = this.elementsHandlers[handlerName];
180 - if (isClassHandler(elementHandler)) {
181 - return elementHandler;
182 - }
183 - return new Promise(res => {
184 - elementHandler().then(({
185 - default: dynamicHandler
186 - }) => {
187 - res(dynamicHandler);
188 - });
189 - });
190 - };
97 +//#endregion
98 +//#region node_modules/core-js/internals/create-property-descriptor.js
99 + var require_create_property_descriptor = /* @__PURE__ */ __commonJSMin(((exports, module) => {
100 + module.exports = function(bitmap, value) {
101 + return {
102 + enumerable: !(bitmap & 1),
103 + configurable: !(bitmap & 2),
104 + writable: !(bitmap & 4),
105 + value
106 + };
107 + };
108 + }));
191 109
192 - /**
193 - * @param {string} handlerName
194 - * @deprecated since 3.1.0, use `elementorFrontend.elementsHandler.getHandler` instead.
195 - */
196 - this.getHandlers = function (handlerName) {
197 - elementorDevTools.deprecation.deprecated('getHandlers', '3.1.0', 'elementorFrontend.elementsHandler.getHandler');
198 - if (handlerName) {
199 - return this.getHandler(handlerName);
200 - }
201 - return this.elementsHandlers;
202 - };
203 - this.runReadyTrigger = function (scope) {
204 - const isDelayChildHandlers = !!scope.closest('[data-delay-child-handlers="true"]') && 0 !== scope.closest('[data-delay-child-handlers="true"]').length;
205 - if (elementorFrontend.config.is_static || isDelayChildHandlers) {
206 - return;
207 - }
110 +//#endregion
111 +//#region node_modules/core-js/internals/function-uncurry-this.js
112 + var require_function_uncurry_this = /* @__PURE__ */ __commonJSMin(((exports, module) => {
113 + var NATIVE_BIND = require_function_bind_native();
114 + var FunctionPrototype = Function.prototype;
115 + var call = FunctionPrototype.call;
116 + var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);
117 + module.exports = NATIVE_BIND ? uncurryThisWithBind : function(fn) {
118 + return function() {
119 + return call.apply(fn, arguments);
120 + };
121 + };
122 + }));
208 123
209 - // Initializing the `$scope` as frontend jQuery instance
210 - const $scope = jQuery(scope),
211 - elementType = $scope.attr('data-element_type');
212 - if (!elementType) {
213 - return;
214 - }
215 - elementorFrontend.hooks.doAction('frontend/element_ready/global', $scope, $);
216 - elementorFrontend.hooks.doAction(`frontend/element_ready/${elementType}`, $scope, $);
217 - if ('widget' === elementType) {
218 - const widgetType = $scope.attr('data-widget_type');
219 - elementorFrontend.hooks.doAction(`frontend/element_ready/${widgetType}`, $scope, $);
220 - }
221 - };
222 - this.init = () => {
223 - addGlobalHandlers();
224 - addElementsHandlers();
225 - };
226 -};
124 +//#endregion
125 +//#region node_modules/core-js/internals/classof-raw.js
126 + var require_classof_raw = /* @__PURE__ */ __commonJSMin(((exports, module) => {
127 + var uncurryThis = require_function_uncurry_this();
128 + var toString = uncurryThis({}.toString);
129 + var stringSlice = uncurryThis("".slice);
130 + module.exports = function(it) {
131 + return stringSlice(toString(it), 8, -1);
132 + };
133 + }));
227 134
228 -/***/ }),
135 +//#endregion
136 +//#region node_modules/core-js/internals/indexed-object.js
137 + var require_indexed_object = /* @__PURE__ */ __commonJSMin(((exports, module) => {
138 + var uncurryThis = require_function_uncurry_this();
139 + var fails = require_fails();
140 + var classof = require_classof_raw();
141 + var $Object = Object;
142 + var split = uncurryThis("".split);
143 + module.exports = fails(function() {
144 + return !$Object("z").propertyIsEnumerable(0);
145 + }) ? function(it) {
146 + return classof(it) === "String" ? split(it, "") : $Object(it);
147 + } : $Object;
148 + }));
229 149
230 -/***/ "../assets/dev/js/frontend/frontend.js":
231 -/*!*********************************************!*\
232 - !*** ../assets/dev/js/frontend/frontend.js ***!
233 - \*********************************************/
234 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
150 +//#endregion
151 +//#region node_modules/core-js/internals/is-null-or-undefined.js
152 + var require_is_null_or_undefined = /* @__PURE__ */ __commonJSMin(((exports, module) => {
153 + module.exports = function(it) {
154 + return it === null || it === void 0;
155 + };
156 + }));
235 157
158 +//#endregion
159 +//#region node_modules/core-js/internals/require-object-coercible.js
160 + var require_require_object_coercible = /* @__PURE__ */ __commonJSMin(((exports, module) => {
161 + var isNullOrUndefined = require_is_null_or_undefined();
162 + var $TypeError = TypeError;
163 + module.exports = function(it) {
164 + if (isNullOrUndefined(it)) throw new $TypeError("Can't call method on " + it);
165 + return it;
166 + };
167 + }));
236 168
169 +//#endregion
170 +//#region node_modules/core-js/internals/to-indexed-object.js
171 + var require_to_indexed_object = /* @__PURE__ */ __commonJSMin(((exports, module) => {
172 + var IndexedObject = require_indexed_object();
173 + var requireObjectCoercible = require_require_object_coercible();
174 + module.exports = function(it) {
175 + return IndexedObject(requireObjectCoercible(it));
176 + };
177 + }));
237 178
238 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
239 -Object.defineProperty(exports, "__esModule", ({
240 - value: true
241 -}));
242 -exports["default"] = void 0;
243 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
244 -__webpack_require__(/*! core-js/modules/esnext.iterator.find.js */ "../node_modules/core-js/modules/esnext.iterator.find.js");
245 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
246 -__webpack_require__(/*! ../public-path */ "../assets/dev/js/public-path.js");
247 -var _documentsManager = _interopRequireDefault(__webpack_require__(/*! ./documents-manager */ "../assets/dev/js/frontend/documents-manager.js"));
248 -var _storage = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/storage */ "../core/common/assets/js/utils/storage.js"));
249 -var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));
250 -var _youtubeLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/video-api/youtube-loader */ "../assets/dev/js/frontend/utils/video-api/youtube-loader.js"));
251 -var _vimeoLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/video-api/vimeo-loader */ "../assets/dev/js/frontend/utils/video-api/vimeo-loader.js"));
252 -var _baseLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/video-api/base-loader */ "../assets/dev/js/frontend/utils/video-api/base-loader.js"));
253 -var _urlActions = _interopRequireDefault(__webpack_require__(/*! ./utils/url-actions */ "../assets/dev/js/frontend/utils/url-actions.js"));
254 -var _swiper = _interopRequireDefault(__webpack_require__(/*! ./utils/swiper */ "../assets/dev/js/frontend/utils/swiper.js"));
255 -var _lightboxManager = _interopRequireDefault(__webpack_require__(/*! ./utils/lightbox/lightbox-manager */ "../assets/dev/js/frontend/utils/lightbox/lightbox-manager.js"));
256 -var _assetsLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/assets-loader */ "../assets/dev/js/frontend/utils/assets-loader.js"));
257 -var _breakpoints = _interopRequireDefault(__webpack_require__(/*! elementor-utils/breakpoints */ "../assets/dev/js/utils/breakpoints.js"));
258 -var _events = _interopRequireDefault(__webpack_require__(/*! elementor-utils/events */ "../assets/dev/js/utils/events.js"));
259 -var _frontend = _interopRequireDefault(__webpack_require__(/*! elementor/modules/shapes/assets/js/frontend/frontend */ "../modules/shapes/assets/js/frontend/frontend.js"));
260 -var _controls = _interopRequireDefault(__webpack_require__(/*! ./utils/controls */ "../assets/dev/js/frontend/utils/controls.js"));
261 -var _anchorScrollMargin = _interopRequireDefault(__webpack_require__(/*! ./utils/anchor-scroll-margin */ "../assets/dev/js/frontend/utils/anchor-scroll-margin.js"));
262 -var _utils = __webpack_require__(/*! elementor-frontend/utils/utils */ "../assets/dev/js/frontend/utils/utils.js");
263 -/* global elementorFrontendConfig */
179 +//#endregion
180 +//#region node_modules/core-js/internals/is-callable.js
181 + var require_is_callable = /* @__PURE__ */ __commonJSMin(((exports, module) => {
182 + var documentAll = typeof document == "object" && document.all;
183 + module.exports = typeof documentAll == "undefined" && documentAll !== void 0 ? function(argument) {
184 + return typeof argument == "function" || argument === documentAll;
185 + } : function(argument) {
186 + return typeof argument == "function";
187 + };
188 + }));
264 189
265 -const EventManager = __webpack_require__(/*! elementor-utils/hooks */ "../assets/dev/js/utils/hooks.js"),
266 - ElementsHandler = __webpack_require__(/*! elementor-frontend/elements-handlers-manager */ "../assets/dev/js/frontend/elements-handlers-manager.js");
267 -class Frontend extends elementorModules.ViewModule {
268 - constructor(...args) {
269 - super(...args);
270 - this.config = elementorFrontendConfig;
271 - this.config.legacyMode = {
272 - /**
273 - * @deprecated since 3.1.0
274 - */
275 - get elementWrappers() {
276 - if (elementorFrontend.isEditMode()) {
277 - window.top.elementorDevTools.deprecation.deprecated('elementorFrontend.config.legacyMode.elementWrappers', '3.1.0');
278 - }
279 - return false;
280 - }
281 - };
282 - this.populateActiveBreakpointsConfig();
283 - }
190 +//#endregion
191 +//#region node_modules/core-js/internals/is-object.js
192 + var require_is_object = /* @__PURE__ */ __commonJSMin(((exports, module) => {
193 + var isCallable = require_is_callable();
194 + module.exports = function(it) {
195 + return typeof it == "object" ? it !== null : isCallable(it);
196 + };
197 + }));
284 198
285 - /**
286 - * @deprecated since 2.5.0, use `elementorModules.frontend.handlers.Base` instead.
287 - */
288 - get Module() {
289 - if (this.isEditMode()) {
290 - parent.elementorDevTools.deprecation.deprecated('elementorFrontend.Module', '2.5.0', 'elementorModules.frontend.handlers.Base');
291 - }
292 - return elementorModules.frontend.handlers.Base;
293 - }
294 - getDefaultSettings() {
295 - return {
296 - selectors: {
297 - elementor: '.elementor',
298 - adminBar: '#wpadminbar'
299 - }
300 - };
301 - }
302 - getDefaultElements() {
303 - const defaultElements = {
304 - window,
305 - $window: jQuery(window),
306 - $document: jQuery(document),
307 - $head: jQuery(document.head),
308 - $body: jQuery(document.body),
309 - $deviceMode: jQuery('<span>', {
310 - id: 'elementor-device-mode',
311 - class: 'elementor-screen-only'
312 - })
313 - };
314 - defaultElements.$body.append(defaultElements.$deviceMode);
315 - return defaultElements;
316 - }
317 - bindEvents() {
318 - this.elements.$window.on('resize', () => this.setDeviceModeData());
319 - }
199 +//#endregion
200 +//#region node_modules/core-js/internals/get-built-in.js
201 + var require_get_built_in = /* @__PURE__ */ __commonJSMin(((exports, module) => {
202 + var globalThis = require_global_this();
203 + var isCallable = require_is_callable();
204 + var aFunction = function(argument) {
205 + return isCallable(argument) ? argument : void 0;
206 + };
207 + module.exports = function(namespace, method) {
208 + return arguments.length < 2 ? aFunction(globalThis[namespace]) : globalThis[namespace] && globalThis[namespace][method];
209 + };
210 + }));
320 211
321 - /**
322 - * @param {string} elementName
323 - * @deprecated since 2.4.0, use `this.elements` instead.
324 - */
325 - getElements(elementName) {
326 - return this.getItems(this.elements, elementName);
327 - }
212 +//#endregion
213 +//#region node_modules/core-js/internals/object-is-prototype-of.js
214 + var require_object_is_prototype_of = /* @__PURE__ */ __commonJSMin(((exports, module) => {
215 + var uncurryThis = require_function_uncurry_this();
216 + module.exports = uncurryThis({}.isPrototypeOf);
217 + }));
328 218
329 - /**
330 - * @param {string} settingName
331 - * @deprecated since 2.4.0, this method was never in use.
332 - */
333 - getPageSettings(settingName) {
334 - const settingsObject = this.isEditMode() ? elementor.settings.page.model.attributes : this.config.settings.page;
335 - return this.getItems(settingsObject, settingName);
336 - }
219 +//#endregion
220 +//#region node_modules/core-js/internals/environment-user-agent.js
221 + var require_environment_user_agent = /* @__PURE__ */ __commonJSMin(((exports, module) => {
222 + var navigator = require_global_this().navigator;
223 + var userAgent = navigator && navigator.userAgent;
224 + module.exports = userAgent ? String(userAgent) : "";
225 + }));
337 226
338 - /**
339 - * @param {string} settingName
340 - * @deprecated since 3.0.0, use `getKitSettings()` instead and remove the `elementor_` prefix.
341 - */
342 - getGeneralSettings(settingName) {
343 - if (this.isEditMode()) {
344 - parent.elementorDevTools.deprecation.deprecated('getGeneralSettings()', '3.0.0', 'getKitSettings() and remove the `elementor_` prefix');
345 - }
346 - return this.getKitSettings(`elementor_${settingName}`);
347 - }
348 - getKitSettings(settingName) {
349 - // TODO: use Data API.
350 - return this.getItems(this.config.kit, settingName);
351 - }
352 - getCurrentDeviceMode() {
353 - return getComputedStyle(this.elements.$deviceMode[0], ':after').content.replace(/"/g, '');
354 - }
355 - getDeviceSetting(deviceMode, settings, settingKey) {
356 - // Add specific handling for widescreen since it is larger than desktop.
357 - if ('widescreen' === deviceMode) {
358 - return this.getWidescreenSetting(settings, settingKey);
359 - }
360 - const devices = elementorFrontend.breakpoints.getActiveBreakpointsList({
361 - largeToSmall: true,
362 - withDesktop: true
363 - });
364 - let deviceIndex = devices.indexOf(deviceMode);
365 - while (deviceIndex > 0) {
366 - const currentDevice = devices[deviceIndex],
367 - fullSettingKey = settingKey + '_' + currentDevice,
368 - deviceValue = settings[fullSettingKey];
227 +//#endregion
228 +//#region node_modules/core-js/internals/environment-v8-version.js
229 + var require_environment_v8_version = /* @__PURE__ */ __commonJSMin(((exports, module) => {
230 + var globalThis = require_global_this();
231 + var userAgent = require_environment_user_agent();
232 + var process = globalThis.process;
233 + var Deno = globalThis.Deno;
234 + var versions = process && process.versions || Deno && Deno.version;
235 + var v8 = versions && versions.v8;
236 + var match;
237 + var version;
238 + if (v8) {
239 + match = v8.split(".");
240 + version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);
241 + }
242 + if (!version && userAgent) {
243 + match = userAgent.match(/Edge\/(\d+)/);
244 + if (!match || match[1] >= 74) {
245 + match = userAgent.match(/Chrome\/(\d+)/);
246 + if (match) version = +match[1];
247 + }
248 + }
249 + module.exports = version;
250 + }));
369 251
370 - // Accept 0 as value.
371 - if (deviceValue || 0 === deviceValue) {
372 - return deviceValue;
373 - }
374 - deviceIndex--;
375 - }
376 - return settings[settingKey];
377 - }
378 - getWidescreenSetting(settings, settingKey) {
379 - const deviceMode = 'widescreen',
380 - widescreenSettingKey = settingKey + '_' + deviceMode;
381 - let settingToReturn;
252 +//#endregion
253 +//#region node_modules/core-js/internals/symbol-constructor-detection.js
254 + var require_symbol_constructor_detection = /* @__PURE__ */ __commonJSMin(((exports, module) => {
255 + var V8_VERSION = require_environment_v8_version();
256 + var fails = require_fails();
257 + var $String = require_global_this().String;
258 + module.exports = !!Object.getOwnPropertySymbols && !fails(function() {
259 + var symbol = Symbol("symbol detection");
260 + return !$String(symbol) || !(Object(symbol) instanceof Symbol) || !Symbol.sham && V8_VERSION && V8_VERSION < 41;
261 + });
262 + }));
382 263
383 - // If the device mode is 'widescreen', and the setting exists - return it.
384 - if (settings[widescreenSettingKey]) {
385 - settingToReturn = settings[widescreenSettingKey];
386 - } else {
387 - // Otherwise, return the desktop setting
388 - settingToReturn = settings[settingKey];
389 - }
390 - return settingToReturn;
391 - }
392 - getCurrentDeviceSetting(settings, settingKey) {
393 - return this.getDeviceSetting(elementorFrontend.getCurrentDeviceMode(), settings, settingKey);
394 - }
395 - isEditMode() {
396 - return this.config.environmentMode.edit;
397 - }
398 - isWPPreviewMode() {
399 - return this.config.environmentMode.wpPreview;
400 - }
401 - initDialogsManager() {
402 - let dialogsManager;
403 - this.getDialogsManager = () => {
404 - if (!dialogsManager) {
405 - dialogsManager = new DialogsManager.Instance();
406 - }
407 - return dialogsManager;
408 - };
409 - }
410 - initOnReadyComponents() {
411 - this.utils = {
412 - youtube: new _youtubeLoader.default(),
413 - vimeo: new _vimeoLoader.default(),
414 - baseVideoLoader: new _baseLoader.default(),
415 - get lightbox() {
416 - return _lightboxManager.default.getLightbox();
417 - },
418 - urlActions: new _urlActions.default(),
419 - swiper: _swiper.default,
420 - environment: _environment.default,
421 - assetsLoader: new _assetsLoader.default(),
422 - escapeHTML: _utils.escapeHTML,
423 - events: _events.default,
424 - controls: new _controls.default(),
425 - anchor_scroll_margin: new _anchorScrollMargin.default()
426 - };
264 +//#endregion
265 +//#region node_modules/core-js/internals/use-symbol-as-uid.js
266 + var require_use_symbol_as_uid = /* @__PURE__ */ __commonJSMin(((exports, module) => {
267 + var NATIVE_SYMBOL = require_symbol_constructor_detection();
268 + module.exports = NATIVE_SYMBOL && !Symbol.sham && typeof Symbol.iterator == "symbol";
269 + }));
427 270
428 - // TODO: BC since 2.4.0
429 - this.modules = {
430 - StretchElement: elementorModules.frontend.tools.StretchElement,
431 - Masonry: elementorModules.utils.Masonry
432 - };
433 - this.elementsHandler.init();
434 - if (this.isEditMode()) {
435 - elementor.once('document:loaded', () => this.onDocumentLoaded());
436 - } else {
437 - this.onDocumentLoaded();
438 - }
439 - }
440 - initOnReadyElements() {
441 - this.elements.$wpAdminBar = this.elements.$document.find(this.getSettings('selectors.adminBar'));
442 - }
443 - addUserAgentClasses() {
444 - for (const [key, value] of Object.entries(_environment.default)) {
445 - if (value) {
446 - this.elements.$body.addClass('e--ua-' + key);
447 - }
448 - }
449 - }
450 - setDeviceModeData() {
451 - this.elements.$body.attr('data-elementor-device-mode', this.getCurrentDeviceMode());
452 - }
453 - addListenerOnce(listenerID, event, callback, to) {
454 - if (!to) {
455 - to = this.elements.$window;
456 - }
457 - if (!this.isEditMode()) {
458 - to.on(event, callback);
459 - return;
460 - }
461 - this.removeListeners(listenerID, event, to);
462 - if (to instanceof jQuery) {
463 - const eventNS = event + '.' + listenerID;
464 - to.on(eventNS, callback);
465 - } else {
466 - to.on(event, callback, listenerID);
467 - }
468 - }
469 - removeListeners(listenerID, event, callback, from) {
470 - if (!from) {
471 - from = this.elements.$window;
472 - }
473 - if (from instanceof jQuery) {
474 - const eventNS = event + '.' + listenerID;
475 - from.off(eventNS, callback);
476 - } else {
477 - from.off(event, callback, listenerID);
478 - }
479 - }
271 +//#endregion
272 +//#region node_modules/core-js/internals/is-symbol.js
273 + var require_is_symbol = /* @__PURE__ */ __commonJSMin(((exports, module) => {
274 + var getBuiltIn = require_get_built_in();
275 + var isCallable = require_is_callable();
276 + var isPrototypeOf = require_object_is_prototype_of();
277 + var USE_SYMBOL_AS_UID = require_use_symbol_as_uid();
278 + var $Object = Object;
279 + module.exports = USE_SYMBOL_AS_UID ? function(it) {
280 + return typeof it == "symbol";
281 + } : function(it) {
282 + var $Symbol = getBuiltIn("Symbol");
283 + return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));
284 + };
285 + }));
480 286
481 - // Based on underscore function
482 - debounce(func, wait) {
483 - let timeout;
484 - return function () {
485 - const context = this,
486 - args = arguments;
487 - const later = () => {
488 - timeout = null;
489 - func.apply(context, args);
490 - };
491 - const callNow = !timeout;
492 - clearTimeout(timeout);
493 - timeout = setTimeout(later, wait);
494 - if (callNow) {
495 - func.apply(context, args);
496 - }
497 - };
498 - }
499 - muteMigrationTraces() {
500 - jQuery.migrateMute = true;
501 - jQuery.migrateTrace = false;
502 - }
287 +//#endregion
288 +//#region node_modules/core-js/internals/try-to-string.js
289 + var require_try_to_string = /* @__PURE__ */ __commonJSMin(((exports, module) => {
290 + var $String = String;
291 + module.exports = function(argument) {
292 + try {
293 + return $String(argument);
294 + } catch (error) {
295 + return "Object";
296 + }
297 + };
298 + }));
503 299
504 - /**
505 - * Initialize the modules' widgets handlers.
506 - */
507 - initModules() {
508 - const handlers = {
509 - shapes: _frontend.default
510 - };
300 +//#endregion
301 +//#region node_modules/core-js/internals/a-callable.js
302 + var require_a_callable = /* @__PURE__ */ __commonJSMin(((exports, module) => {
303 + var isCallable = require_is_callable();
304 + var tryToString = require_try_to_string();
305 + var $TypeError = TypeError;
306 + module.exports = function(argument) {
307 + if (isCallable(argument)) return argument;
308 + throw new $TypeError(tryToString(argument) + " is not a function");
309 + };
310 + }));
511 311
512 - // TODO: BC - Deprecated since 3.5.0
513 - elementorFrontend.trigger('elementor/modules/init:before');
312 +//#endregion
313 +//#region node_modules/core-js/internals/get-method.js
314 + var require_get_method = /* @__PURE__ */ __commonJSMin(((exports, module) => {
315 + var aCallable = require_a_callable();
316 + var isNullOrUndefined = require_is_null_or_undefined();
317 + module.exports = function(V, P) {
318 + var func = V[P];
319 + return isNullOrUndefined(func) ? void 0 : aCallable(func);
320 + };
321 + }));
514 322
515 - // TODO: Use this instead.
516 - elementorFrontend.trigger('elementor/modules/init/before');
517 - Object.entries(handlers).forEach(([moduleName, ModuleClass]) => {
518 - this.modulesHandlers[moduleName] = new ModuleClass();
519 - });
520 - }
521 - populateActiveBreakpointsConfig() {
522 - this.config.responsive.activeBreakpoints = {};
523 - Object.entries(this.config.responsive.breakpoints).forEach(([breakpointKey, breakpointData]) => {
524 - if (breakpointData.is_enabled) {
525 - this.config.responsive.activeBreakpoints[breakpointKey] = breakpointData;
526 - }
527 - });
528 - }
529 - init() {
530 - this.hooks = new EventManager();
531 - this.breakpoints = new _breakpoints.default(this.config.responsive);
532 - this.storage = new _storage.default();
533 - this.elementsHandler = new ElementsHandler(jQuery);
534 - this.modulesHandlers = {};
535 - this.addUserAgentClasses();
536 - this.setDeviceModeData();
537 - this.initDialogsManager();
538 - if (this.isEditMode()) {
539 - this.muteMigrationTraces();
540 - }
323 +//#endregion
324 +//#region node_modules/core-js/internals/ordinary-to-primitive.js
325 + var require_ordinary_to_primitive = /* @__PURE__ */ __commonJSMin(((exports, module) => {
326 + var call = require_function_call();
327 + var isCallable = require_is_callable();
328 + var isObject = require_is_object();
329 + var $TypeError = TypeError;
330 + module.exports = function(input, pref) {
331 + var fn;
332 + var val;
333 + if (pref === "string" && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
334 + if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;
335 + if (pref !== "string" && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
336 + throw new $TypeError("Can't convert object to primitive value");
337 + };
338 + }));
541 339
542 - // Keep this line before `initOnReadyComponents` call
543 - _events.default.dispatch(this.elements.$window, 'elementor/frontend/init');
544 - this.initModules();
545 - this.initOnReadyElements();
546 - this.initOnReadyComponents();
547 - }
548 - onDocumentLoaded() {
549 - this.documentsManager = new _documentsManager.default();
550 - this.trigger('components:init');
551 - new _lightboxManager.default();
552 - }
553 -}
554 -exports["default"] = Frontend;
555 -window.elementorFrontend = new Frontend();
556 -if (!elementorFrontend.isEditMode()) {
557 - jQuery(() => elementorFrontend.init());
558 -}
340 +//#endregion
341 +//#region node_modules/core-js/internals/is-pure.js
342 + var require_is_pure = /* @__PURE__ */ __commonJSMin(((exports, module) => {
343 + module.exports = false;
344 + }));
559 345
560 -/***/ }),
346 +//#endregion
347 +//#region node_modules/core-js/internals/define-global-property.js
348 + var require_define_global_property = /* @__PURE__ */ __commonJSMin(((exports, module) => {
349 + var globalThis = require_global_this();
350 + var defineProperty = Object.defineProperty;
351 + module.exports = function(key, value) {
352 + try {
353 + defineProperty(globalThis, key, {
354 + value,
355 + configurable: true,
356 + writable: true
357 + });
358 + } catch (error) {
359 + globalThis[key] = value;
360 + }
361 + return value;
362 + };
363 + }));
561 364
562 -/***/ "../assets/dev/js/frontend/handlers/column.js":
563 -/*!****************************************************!*\
564 - !*** ../assets/dev/js/frontend/handlers/column.js ***!
565 - \****************************************************/
566 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
365 +//#endregion
366 +//#region node_modules/core-js/internals/shared-store.js
367 + var require_shared_store = /* @__PURE__ */ __commonJSMin(((exports, module) => {
368 + var IS_PURE = require_is_pure();
369 + var globalThis = require_global_this();
370 + var defineGlobalProperty = require_define_global_property();
371 + var SHARED = "__core-js_shared__";
372 + var store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});
373 + (store.versions || (store.versions = [])).push({
374 + version: "3.46.0",
375 + mode: IS_PURE ? "pure" : "global",
376 + copyright: "© 2014-2025 Denis Pushkarev (zloirock.ru), 2025 CoreJS Company (core-js.io)",
377 + license: "https://github.com/zloirock/core-js/blob/v3.46.0/LICENSE",
378 + source: "https://github.com/zloirock/core-js"
379 + });
380 + }));
567 381
382 +//#endregion
383 +//#region node_modules/core-js/internals/shared.js
384 + var require_shared = /* @__PURE__ */ __commonJSMin(((exports, module) => {
385 + var store = require_shared_store();
386 + module.exports = function(key, value) {
387 + return store[key] || (store[key] = value || {});
388 + };
389 + }));
568 390
391 +//#endregion
392 +//#region node_modules/core-js/internals/to-object.js
393 + var require_to_object = /* @__PURE__ */ __commonJSMin(((exports, module) => {
394 + var requireObjectCoercible = require_require_object_coercible();
395 + var $Object = Object;
396 + module.exports = function(argument) {
397 + return $Object(requireObjectCoercible(argument));
398 + };
399 + }));
569 400
570 -Object.defineProperty(exports, "__esModule", ({
571 - value: true
572 -}));
573 -exports["default"] = void 0;
574 -var _default = exports["default"] = [() => __webpack_require__.e(/*! import() | shared-frontend-handlers */ "shared-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ./background-slideshow */ "../assets/dev/js/frontend/handlers/background-slideshow.js"))];
401 +//#endregion
402 +//#region node_modules/core-js/internals/has-own-property.js
403 + var require_has_own_property = /* @__PURE__ */ __commonJSMin(((exports, module) => {
404 + var uncurryThis = require_function_uncurry_this();
405 + var toObject = require_to_object();
406 + var hasOwnProperty = uncurryThis({}.hasOwnProperty);
407 + module.exports = Object.hasOwn || function hasOwn(it, key) {
408 + return hasOwnProperty(toObject(it), key);
409 + };
410 + }));
575 411
576 -/***/ }),
412 +//#endregion
413 +//#region node_modules/core-js/internals/uid.js
414 + var require_uid = /* @__PURE__ */ __commonJSMin(((exports, module) => {
415 + var uncurryThis = require_function_uncurry_this();
416 + var id = 0;
417 + var postfix = Math.random();
418 + var toString = uncurryThis(1.1.toString);
419 + module.exports = function(key) {
420 + return "Symbol(" + (key === void 0 ? "" : key) + ")_" + toString(++id + postfix, 36);
421 + };
422 + }));
577 423
578 -/***/ "../assets/dev/js/frontend/handlers/container/container.js":
579 -/*!*****************************************************************!*\
580 - !*** ../assets/dev/js/frontend/handlers/container/container.js ***!
581 - \*****************************************************************/
582 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
424 +//#endregion
425 +//#region node_modules/core-js/internals/well-known-symbol.js
426 + var require_well_known_symbol = /* @__PURE__ */ __commonJSMin(((exports, module) => {
427 + var globalThis = require_global_this();
428 + var shared = require_shared();
429 + var hasOwn = require_has_own_property();
430 + var uid = require_uid();
431 + var NATIVE_SYMBOL = require_symbol_constructor_detection();
432 + var USE_SYMBOL_AS_UID = require_use_symbol_as_uid();
433 + var Symbol = globalThis.Symbol;
434 + var WellKnownSymbolsStore = shared("wks");
435 + var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol["for"] || Symbol : Symbol && Symbol.withoutSetter || uid;
436 + module.exports = function(name) {
437 + if (!hasOwn(WellKnownSymbolsStore, name)) WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name) ? Symbol[name] : createWellKnownSymbol("Symbol." + name);
438 + return WellKnownSymbolsStore[name];
439 + };
440 + }));
583 441
442 +//#endregion
443 +//#region node_modules/core-js/internals/to-primitive.js
444 + var require_to_primitive = /* @__PURE__ */ __commonJSMin(((exports, module) => {
445 + var call = require_function_call();
446 + var isObject = require_is_object();
447 + var isSymbol = require_is_symbol();
448 + var getMethod = require_get_method();
449 + var ordinaryToPrimitive = require_ordinary_to_primitive();
450 + var wellKnownSymbol = require_well_known_symbol();
451 + var $TypeError = TypeError;
452 + var TO_PRIMITIVE = wellKnownSymbol("toPrimitive");
453 + module.exports = function(input, pref) {
454 + if (!isObject(input) || isSymbol(input)) return input;
455 + var exoticToPrim = getMethod(input, TO_PRIMITIVE);
456 + var result;
457 + if (exoticToPrim) {
458 + if (pref === void 0) pref = "default";
459 + result = call(exoticToPrim, input, pref);
460 + if (!isObject(result) || isSymbol(result)) return result;
461 + throw new $TypeError("Can't convert object to primitive value");
462 + }
463 + if (pref === void 0) pref = "number";
464 + return ordinaryToPrimitive(input, pref);
465 + };
466 + }));
584 467
468 +//#endregion
469 +//#region node_modules/core-js/internals/to-property-key.js
470 + var require_to_property_key = /* @__PURE__ */ __commonJSMin(((exports, module) => {
471 + var toPrimitive = require_to_primitive();
472 + var isSymbol = require_is_symbol();
473 + module.exports = function(argument) {
474 + var key = toPrimitive(argument, "string");
475 + return isSymbol(key) ? key : key + "";
476 + };
477 + }));
585 478
586 -Object.defineProperty(exports, "__esModule", ({
587 - value: true
588 -}));
589 -exports["default"] = void 0;
590 -var _createEditorHandler = __webpack_require__(/*! ../create-editor-handler */ "../assets/dev/js/frontend/handlers/create-editor-handler.js");
591 -var _default = exports["default"] = [() => __webpack_require__.e(/*! import() | shared-frontend-handlers */ "shared-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../background-slideshow */ "../assets/dev/js/frontend/handlers/background-slideshow.js")), () => __webpack_require__.e(/*! import() | shared-frontend-handlers */ "shared-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../background-video */ "../assets/dev/js/frontend/handlers/background-video.js")), (0, _createEditorHandler.createEditorHandler)(() => __webpack_require__.e(/*! import() | shared-editor-handlers */ "shared-editor-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../handles-position */ "../assets/dev/js/frontend/handlers/handles-position.js"))), (0, _createEditorHandler.createEditorHandler)(() => __webpack_require__.e(/*! import() | container-editor-handlers */ "container-editor-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ./shapes */ "../assets/dev/js/frontend/handlers/container/shapes.js"))), (0, _createEditorHandler.createEditorHandler)(() => __webpack_require__.e(/*! import() | container-editor-handlers */ "container-editor-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ./grid-container */ "../assets/dev/js/frontend/handlers/container/grid-container.js")))];
479 +//#endregion
480 +//#region node_modules/core-js/internals/document-create-element.js
481 + var require_document_create_element = /* @__PURE__ */ __commonJSMin(((exports, module) => {
482 + var globalThis = require_global_this();
483 + var isObject = require_is_object();
484 + var document = globalThis.document;
485 + var EXISTS = isObject(document) && isObject(document.createElement);
486 + module.exports = function(it) {
487 + return EXISTS ? document.createElement(it) : {};
488 + };
489 + }));
592 490
593 -/***/ }),
491 +//#endregion
492 +//#region node_modules/core-js/internals/ie8-dom-define.js
493 + var require_ie8_dom_define = /* @__PURE__ */ __commonJSMin(((exports, module) => {
494 + var DESCRIPTORS = require_descriptors();
495 + var fails = require_fails();
496 + var createElement = require_document_create_element();
497 + module.exports = !DESCRIPTORS && !fails(function() {
498 + return Object.defineProperty(createElement("div"), "a", { get: function() {
499 + return 7;
500 + } }).a !== 7;
501 + });
502 + }));
594 503
595 -/***/ "../assets/dev/js/frontend/handlers/create-editor-handler.js":
596 -/*!*******************************************************************!*\
597 - !*** ../assets/dev/js/frontend/handlers/create-editor-handler.js ***!
598 - \*******************************************************************/
599 -/***/ ((__unused_webpack_module, exports) => {
504 +//#endregion
505 +//#region node_modules/core-js/internals/object-get-own-property-descriptor.js
506 + var require_object_get_own_property_descriptor = /* @__PURE__ */ __commonJSMin(((exports) => {
507 + var DESCRIPTORS = require_descriptors();
508 + var call = require_function_call();
509 + var propertyIsEnumerableModule = require_object_property_is_enumerable();
510 + var createPropertyDescriptor = require_create_property_descriptor();
511 + var toIndexedObject = require_to_indexed_object();
512 + var toPropertyKey = require_to_property_key();
513 + var hasOwn = require_has_own_property();
514 + var IE8_DOM_DEFINE = require_ie8_dom_define();
515 + var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
516 + exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
517 + O = toIndexedObject(O);
518 + P = toPropertyKey(P);
519 + if (IE8_DOM_DEFINE) try {
520 + return $getOwnPropertyDescriptor(O, P);
521 + } catch (error) {}
522 + if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);
523 + };
524 + }));
600 525
526 +//#endregion
527 +//#region node_modules/core-js/internals/v8-prototype-define-bug.js
528 + var require_v8_prototype_define_bug = /* @__PURE__ */ __commonJSMin(((exports, module) => {
529 + var DESCRIPTORS = require_descriptors();
530 + var fails = require_fails();
531 + module.exports = DESCRIPTORS && fails(function() {
532 + return Object.defineProperty(function() {}, "prototype", {
533 + value: 42,
534 + writable: false
535 + }).prototype !== 42;
536 + });
537 + }));
601 538
539 +//#endregion
540 +//#region node_modules/core-js/internals/an-object.js
541 + var require_an_object = /* @__PURE__ */ __commonJSMin(((exports, module) => {
542 + var isObject = require_is_object();
543 + var $String = String;
544 + var $TypeError = TypeError;
545 + module.exports = function(argument) {
546 + if (isObject(argument)) return argument;
547 + throw new $TypeError($String(argument) + " is not an object");
548 + };
549 + }));
602 550
603 -Object.defineProperty(exports, "__esModule", ({
604 - value: true
605 -}));
606 -exports.createEditorHandler = createEditorHandler;
607 -function createEditorHandler(importer) {
608 - return () => {
609 - return new Promise(resolve => {
610 - if (elementorFrontend.isEditMode()) {
611 - importer().then(resolve);
612 - }
613 - });
614 - };
615 -}
551 +//#endregion
552 +//#region node_modules/core-js/internals/object-define-property.js
553 + var require_object_define_property = /* @__PURE__ */ __commonJSMin(((exports) => {
554 + var DESCRIPTORS = require_descriptors();
555 + var IE8_DOM_DEFINE = require_ie8_dom_define();
556 + var V8_PROTOTYPE_DEFINE_BUG = require_v8_prototype_define_bug();
557 + var anObject = require_an_object();
558 + var toPropertyKey = require_to_property_key();
559 + var $TypeError = TypeError;
560 + var $defineProperty = Object.defineProperty;
561 + var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
562 + var ENUMERABLE = "enumerable";
563 + var CONFIGURABLE = "configurable";
564 + var WRITABLE = "writable";
565 + exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {
566 + anObject(O);
567 + P = toPropertyKey(P);
568 + anObject(Attributes);
569 + if (typeof O === "function" && P === "prototype" && "value" in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {
570 + var current = $getOwnPropertyDescriptor(O, P);
571 + if (current && current[WRITABLE]) {
572 + O[P] = Attributes.value;
573 + Attributes = {
574 + configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],
575 + enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],
576 + writable: false
577 + };
578 + }
579 + }
580 + return $defineProperty(O, P, Attributes);
581 + } : $defineProperty : function defineProperty(O, P, Attributes) {
582 + anObject(O);
583 + P = toPropertyKey(P);
584 + anObject(Attributes);
585 + if (IE8_DOM_DEFINE) try {
586 + return $defineProperty(O, P, Attributes);
587 + } catch (error) {}
588 + if ("get" in Attributes || "set" in Attributes) throw new $TypeError("Accessors not supported");
589 + if ("value" in Attributes) O[P] = Attributes.value;
590 + return O;
591 + };
592 + }));
616 593
617 -/***/ }),
594 +//#endregion
595 +//#region node_modules/core-js/internals/create-non-enumerable-property.js
596 + var require_create_non_enumerable_property = /* @__PURE__ */ __commonJSMin(((exports, module) => {
597 + var DESCRIPTORS = require_descriptors();
598 + var definePropertyModule = require_object_define_property();
599 + var createPropertyDescriptor = require_create_property_descriptor();
600 + module.exports = DESCRIPTORS ? function(object, key, value) {
601 + return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
602 + } : function(object, key, value) {
603 + object[key] = value;
604 + return object;
605 + };
606 + }));
618 607
619 -/***/ "../assets/dev/js/frontend/handlers/global.js":
620 -/*!****************************************************!*\
621 - !*** ../assets/dev/js/frontend/handlers/global.js ***!
622 - \****************************************************/
623 -/***/ ((__unused_webpack_module, exports) => {
608 +//#endregion
609 +//#region node_modules/core-js/internals/function-name.js
610 + var require_function_name = /* @__PURE__ */ __commonJSMin(((exports, module) => {
611 + var DESCRIPTORS = require_descriptors();
612 + var hasOwn = require_has_own_property();
613 + var FunctionPrototype = Function.prototype;
614 + var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;
615 + var EXISTS = hasOwn(FunctionPrototype, "name");
616 + var PROPER = EXISTS && (function something() {}).name === "something";
617 + var CONFIGURABLE = EXISTS && (!DESCRIPTORS || DESCRIPTORS && getDescriptor(FunctionPrototype, "name").configurable);
618 + module.exports = {
619 + EXISTS,
620 + PROPER,
621 + CONFIGURABLE
622 + };
623 + }));
624 624
625 +//#endregion
626 +//#region node_modules/core-js/internals/inspect-source.js
627 + var require_inspect_source = /* @__PURE__ */ __commonJSMin(((exports, module) => {
628 + var uncurryThis = require_function_uncurry_this();
629 + var isCallable = require_is_callable();
630 + var store = require_shared_store();
631 + var functionToString = uncurryThis(Function.toString);
632 + if (!isCallable(store.inspectSource)) store.inspectSource = function(it) {
633 + return functionToString(it);
634 + };
635 + module.exports = store.inspectSource;
636 + }));
625 637
638 +//#endregion
639 +//#region node_modules/core-js/internals/weak-map-basic-detection.js
640 + var require_weak_map_basic_detection = /* @__PURE__ */ __commonJSMin(((exports, module) => {
641 + var globalThis = require_global_this();
642 + var isCallable = require_is_callable();
643 + var WeakMap = globalThis.WeakMap;
644 + module.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));
645 + }));
626 646
627 -Object.defineProperty(exports, "__esModule", ({
628 - value: true
629 -}));
630 -exports["default"] = void 0;
631 -class GlobalHandler extends elementorModules.frontend.handlers.Base {
632 - getWidgetType() {
633 - return 'global';
634 - }
635 - animate() {
636 - const $element = this.$element,
637 - animation = this.getAnimation();
638 - if ('none' === animation) {
639 - $element.removeClass('elementor-invisible');
640 - return;
641 - }
642 - const elementSettings = this.getElementSettings(),
643 - animationDelay = elementSettings._animation_delay || elementSettings.animation_delay || 0;
644 - $element.removeClass(animation);
645 - if (this.currentAnimation) {
646 - $element.removeClass(this.currentAnimation);
647 - }
648 - this.currentAnimation = animation;
649 - setTimeout(() => {
650 - $element.removeClass('elementor-invisible').addClass('animated ' + animation);
651 - }, animationDelay);
652 - }
653 - getAnimation() {
654 - return this.getCurrentDeviceSetting('animation') || this.getCurrentDeviceSetting('_animation');
655 - }
656 - onInit(...args) {
657 - super.onInit(...args);
658 - if (this.getAnimation()) {
659 - const observer = elementorModules.utils.Scroll.scrollObserver({
660 - callback: event => {
661 - if (event.isInViewport) {
662 - this.animate();
663 - observer.unobserve(this.$element[0]);
664 - }
665 - }
666 - });
667 - observer.observe(this.$element[0]);
668 - }
669 - }
670 - onElementChange(propertyName) {
671 - if (/^_?animation/.test(propertyName)) {
672 - this.animate();
673 - }
674 - }
675 -}
676 -var _default = $scope => {
677 - elementorFrontend.elementsHandler.addHandler(GlobalHandler, {
678 - $element: $scope
679 - });
680 -};
681 -exports["default"] = _default;
647 +//#endregion
648 +//#region node_modules/core-js/internals/shared-key.js
649 + var require_shared_key = /* @__PURE__ */ __commonJSMin(((exports, module) => {
650 + var shared = require_shared();
651 + var uid = require_uid();
652 + var keys = shared("keys");
653 + module.exports = function(key) {
654 + return keys[key] || (keys[key] = uid(key));
655 + };
656 + }));
682 657
683 -/***/ }),
658 +//#endregion
659 +//#region node_modules/core-js/internals/hidden-keys.js
660 + var require_hidden_keys = /* @__PURE__ */ __commonJSMin(((exports, module) => {
661 + module.exports = {};
662 + }));
684 663
685 -/***/ "../assets/dev/js/frontend/handlers/section/section.js":
686 -/*!*************************************************************!*\
687 - !*** ../assets/dev/js/frontend/handlers/section/section.js ***!
688 - \*************************************************************/
689 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
664 +//#endregion
665 +//#region node_modules/core-js/internals/internal-state.js
666 + var require_internal_state = /* @__PURE__ */ __commonJSMin(((exports, module) => {
667 + var NATIVE_WEAK_MAP = require_weak_map_basic_detection();
668 + var globalThis = require_global_this();
669 + var isObject = require_is_object();
670 + var createNonEnumerableProperty = require_create_non_enumerable_property();
671 + var hasOwn = require_has_own_property();
672 + var shared = require_shared_store();
673 + var sharedKey = require_shared_key();
674 + var hiddenKeys = require_hidden_keys();
675 + var OBJECT_ALREADY_INITIALIZED = "Object already initialized";
676 + var TypeError = globalThis.TypeError;
677 + var WeakMap = globalThis.WeakMap;
678 + var set;
679 + var get;
680 + var has;
681 + var enforce = function(it) {
682 + return has(it) ? get(it) : set(it, {});
683 + };
684 + var getterFor = function(TYPE) {
685 + return function(it) {
686 + var state;
687 + if (!isObject(it) || (state = get(it)).type !== TYPE) throw new TypeError("Incompatible receiver, " + TYPE + " required");
688 + return state;
689 + };
690 + };
691 + if (NATIVE_WEAK_MAP || shared.state) {
692 + var store = shared.state || (shared.state = new WeakMap());
693 + store.get = store.get;
694 + store.has = store.has;
695 + store.set = store.set;
696 + set = function(it, metadata) {
697 + if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
698 + metadata.facade = it;
699 + store.set(it, metadata);
700 + return metadata;
701 + };
702 + get = function(it) {
703 + return store.get(it) || {};
704 + };
705 + has = function(it) {
706 + return store.has(it);
707 + };
708 + } else {
709 + var STATE = sharedKey("state");
710 + hiddenKeys[STATE] = true;
711 + set = function(it, metadata) {
712 + if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
713 + metadata.facade = it;
714 + createNonEnumerableProperty(it, STATE, metadata);
715 + return metadata;
716 + };
717 + get = function(it) {
718 + return hasOwn(it, STATE) ? it[STATE] : {};
719 + };
720 + has = function(it) {
721 + return hasOwn(it, STATE);
722 + };
723 + }
724 + module.exports = {
725 + set,
726 + get,
727 + has,
728 + enforce,
729 + getterFor
730 + };
731 + }));
690 732
733 +//#endregion
734 +//#region node_modules/core-js/internals/make-built-in.js
735 + var require_make_built_in = /* @__PURE__ */ __commonJSMin(((exports, module) => {
736 + var uncurryThis = require_function_uncurry_this();
737 + var fails = require_fails();
738 + var isCallable = require_is_callable();
739 + var hasOwn = require_has_own_property();
740 + var DESCRIPTORS = require_descriptors();
741 + var CONFIGURABLE_FUNCTION_NAME = require_function_name().CONFIGURABLE;
742 + var inspectSource = require_inspect_source();
743 + var InternalStateModule = require_internal_state();
744 + var enforceInternalState = InternalStateModule.enforce;
745 + var getInternalState = InternalStateModule.get;
746 + var $String = String;
747 + var defineProperty = Object.defineProperty;
748 + var stringSlice = uncurryThis("".slice);
749 + var replace = uncurryThis("".replace);
750 + var join = uncurryThis([].join);
751 + var CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function() {
752 + return defineProperty(function() {}, "length", { value: 8 }).length !== 8;
753 + });
754 + var TEMPLATE = String(String).split("String");
755 + var makeBuiltIn = module.exports = function(value, name, options) {
756 + if (stringSlice($String(name), 0, 7) === "Symbol(") name = "[" + replace($String(name), /^Symbol\(([^)]*)\).*$/, "$1") + "]";
757 + if (options && options.getter) name = "get " + name;
758 + if (options && options.setter) name = "set " + name;
759 + if (!hasOwn(value, "name") || CONFIGURABLE_FUNCTION_NAME && value.name !== name) if (DESCRIPTORS) defineProperty(value, "name", {
760 + value: name,
761 + configurable: true
762 + });
763 + else value.name = name;
764 + if (CONFIGURABLE_LENGTH && options && hasOwn(options, "arity") && value.length !== options.arity) defineProperty(value, "length", { value: options.arity });
765 + try {
766 + if (options && hasOwn(options, "constructor") && options.constructor) {
767 + if (DESCRIPTORS) defineProperty(value, "prototype", { writable: false });
768 + } else if (value.prototype) value.prototype = void 0;
769 + } catch (error) {}
770 + var state = enforceInternalState(value);
771 + if (!hasOwn(state, "source")) state.source = join(TEMPLATE, typeof name == "string" ? name : "");
772 + return value;
773 + };
774 + Function.prototype.toString = makeBuiltIn(function toString() {
775 + return isCallable(this) && getInternalState(this).source || inspectSource(this);
776 + }, "toString");
777 + }));
691 778
779 +//#endregion
780 +//#region node_modules/core-js/internals/define-built-in.js
781 + var require_define_built_in = /* @__PURE__ */ __commonJSMin(((exports, module) => {
782 + var isCallable = require_is_callable();
783 + var definePropertyModule = require_object_define_property();
784 + var makeBuiltIn = require_make_built_in();
785 + var defineGlobalProperty = require_define_global_property();
786 + module.exports = function(O, key, value, options) {
787 + if (!options) options = {};
788 + var simple = options.enumerable;
789 + var name = options.name !== void 0 ? options.name : key;
790 + if (isCallable(value)) makeBuiltIn(value, name, options);
791 + if (options.global) if (simple) O[key] = value;
792 + else defineGlobalProperty(key, value);
793 + else {
794 + try {
795 + if (!options.unsafe) delete O[key];
796 + else if (O[key]) simple = true;
797 + } catch (error) {}
798 + if (simple) O[key] = value;
799 + else definePropertyModule.f(O, key, {
800 + value,
801 + enumerable: false,
802 + configurable: !options.nonConfigurable,
803 + writable: !options.nonWritable
804 + });
805 + }
806 + return O;
807 + };
808 + }));
692 809
693 -Object.defineProperty(exports, "__esModule", ({
694 - value: true
695 -}));
696 -exports["default"] = void 0;
697 -var _createEditorHandler = __webpack_require__(/*! ../create-editor-handler */ "../assets/dev/js/frontend/handlers/create-editor-handler.js");
698 -var _default = exports["default"] = [() => __webpack_require__.e(/*! import() | section-frontend-handlers */ "section-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ./stretched-section */ "../assets/dev/js/frontend/handlers/section/stretched-section.js")),
699 -// Must run before BackgroundSlideshow to init the slideshow only after the stretch.
700 -() => __webpack_require__.e(/*! import() | shared-frontend-handlers */ "shared-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../background-slideshow */ "../assets/dev/js/frontend/handlers/background-slideshow.js")), () => __webpack_require__.e(/*! import() | shared-frontend-handlers */ "shared-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../background-video */ "../assets/dev/js/frontend/handlers/background-video.js")), (0, _createEditorHandler.createEditorHandler)(() => __webpack_require__.e(/*! import() | shared-editor-handlers */ "shared-editor-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../handles-position */ "../assets/dev/js/frontend/handlers/handles-position.js"))), (0, _createEditorHandler.createEditorHandler)(() => __webpack_require__.e(/*! import() | section-editor-handlers */ "section-editor-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ./shapes */ "../assets/dev/js/frontend/handlers/section/shapes.js")))];
810 +//#endregion
811 +//#region node_modules/core-js/internals/math-trunc.js
812 + var require_math_trunc = /* @__PURE__ */ __commonJSMin(((exports, module) => {
813 + var ceil = Math.ceil;
814 + var floor = Math.floor;
815 + module.exports = Math.trunc || function trunc(x) {
816 + var n = +x;
817 + return (n > 0 ? floor : ceil)(n);
818 + };
819 + }));
701 820
702 -/***/ }),
821 +//#endregion
822 +//#region node_modules/core-js/internals/to-integer-or-infinity.js
823 + var require_to_integer_or_infinity = /* @__PURE__ */ __commonJSMin(((exports, module) => {
824 + var trunc = require_math_trunc();
825 + module.exports = function(argument) {
826 + var number = +argument;
827 + return number !== number || number === 0 ? 0 : trunc(number);
828 + };
829 + }));
703 830
704 -/***/ "../assets/dev/js/frontend/utils/anchor-scroll-margin.js":
705 -/*!***************************************************************!*\
706 - !*** ../assets/dev/js/frontend/utils/anchor-scroll-margin.js ***!
707 - \***************************************************************/
708 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
831 +//#endregion
832 +//#region node_modules/core-js/internals/to-absolute-index.js
833 + var require_to_absolute_index = /* @__PURE__ */ __commonJSMin(((exports, module) => {
834 + var toIntegerOrInfinity = require_to_integer_or_infinity();
835 + var max = Math.max;
836 + var min = Math.min;
837 + module.exports = function(index, length) {
838 + var integer = toIntegerOrInfinity(index);
839 + return integer < 0 ? max(integer + length, 0) : min(integer, length);
840 + };
841 + }));
709 842
843 +//#endregion
844 +//#region node_modules/core-js/internals/to-length.js
845 + var require_to_length = /* @__PURE__ */ __commonJSMin(((exports, module) => {
846 + var toIntegerOrInfinity = require_to_integer_or_infinity();
847 + var min = Math.min;
848 + module.exports = function(argument) {
849 + var len = toIntegerOrInfinity(argument);
850 + return len > 0 ? min(len, 9007199254740991) : 0;
851 + };
852 + }));
710 853
854 +//#endregion
855 +//#region node_modules/core-js/internals/length-of-array-like.js
856 + var require_length_of_array_like = /* @__PURE__ */ __commonJSMin(((exports, module) => {
857 + var toLength = require_to_length();
858 + module.exports = function(obj) {
859 + return toLength(obj.length);
860 + };
861 + }));
711 862
712 -Object.defineProperty(exports, "__esModule", ({
713 - value: true
714 -}));
715 -exports["default"] = void 0;
716 -__webpack_require__(/*! core-js/modules/es.array.push.js */ "../node_modules/core-js/modules/es.array.push.js");
717 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
718 -__webpack_require__(/*! core-js/modules/esnext.iterator.filter.js */ "../node_modules/core-js/modules/esnext.iterator.filter.js");
719 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
720 -class _default extends elementorModules.ViewModule {
721 - getDefaultSettings() {
722 - return {
723 - selectors: {
724 - links: '.elementor-element a[href*="#"]',
725 - stickyElements: '.elementor-element.elementor-sticky'
726 - }
727 - };
728 - }
729 - onInit() {
730 - this.observeStickyElements(() => {
731 - this.initializeStickyAndAnchorTracking();
732 - });
733 - }
734 - observeStickyElements(callback) {
735 - const observer = new MutationObserver(mutationsList => {
736 - for (const mutation of mutationsList) {
737 - if ('childList' === mutation.type || 'attributes' === mutation.type && mutation.target.classList.contains('elementor-sticky')) {
738 - callback();
739 - }
740 - }
741 - });
742 - observer.observe(document.body, {
743 - childList: true,
744 - subtree: true,
745 - attributes: true,
746 - attributeFilter: ['class', 'style']
747 - });
748 - }
749 - initializeStickyAndAnchorTracking() {
750 - const anchorLinks = this.getAllAnchorLinks();
751 - const stickyElements = this.getAllStickyElements();
752 - const trackedElements = [];
753 - if (!stickyElements.length > 0 && !anchorLinks.length > 0) {
754 - return;
755 - }
756 - this.trackStickyElements(stickyElements, trackedElements);
757 - this.trackAnchorLinks(anchorLinks, trackedElements);
758 - this.organizeStickyAndAnchors(trackedElements);
759 - }
760 - trackAnchorLinks(anchorLinks, trackedElements) {
761 - anchorLinks.forEach(element => {
762 - const target = this.getAnchorTarget(element);
763 - const scrollPosition = this.getScrollPosition(target);
764 - trackedElements.push({
765 - element: target,
766 - type: 'anchor',
767 - scrollPosition
768 - });
769 - });
770 - }
771 - trackStickyElements(stickyElements, trackedElements) {
772 - stickyElements.forEach(element => {
773 - const settings = this.getElementSettings(element);
774 - if (!settings || !settings.sticky_anchor_link_offset) {
775 - return;
776 - }
777 - const {
778 - sticky_anchor_link_offset: scrollMarginTop
779 - } = settings;
780 - if (0 === scrollMarginTop) {
781 - return;
782 - }
783 - const scrollPosition = this.getScrollPosition(element);
784 - trackedElements.push({
785 - scrollMarginTop,
786 - type: 'sticky',
787 - scrollPosition
788 - });
789 - });
790 - }
791 - organizeStickyAndAnchors(elements) {
792 - const stickyList = this.filterAndSortElementsByType(elements, 'sticky');
793 - const anchorList = this.filterAndSortElementsByType(elements, 'anchor');
794 - stickyList.forEach((sticky, index) => {
795 - this.defineCurrentStickyRange(sticky, index, stickyList, anchorList);
796 - });
797 - }
798 - defineCurrentStickyRange(sticky, index, stickyList, anchorList) {
799 - const nextStickyScrollPosition = index + 1 < stickyList.length ? stickyList[index + 1].scrollPosition : Infinity;
800 - sticky.anchor = anchorList.filter(anchor => {
801 - const withinRange = anchor.scrollPosition > sticky.scrollPosition && anchor.scrollPosition < nextStickyScrollPosition;
802 - if (withinRange) {
803 - anchor.element.style.scrollMarginTop = `${sticky.scrollMarginTop}px`;
804 - }
805 - return withinRange;
806 - });
807 - }
808 - getScrollPosition(element) {
809 - let offsetTop = 0;
810 - while (element) {
811 - offsetTop += element.offsetTop;
812 - element = element.offsetParent;
813 - }
814 - return offsetTop;
815 - }
816 - getAllStickyElements() {
817 - const allStickyElements = document.querySelectorAll(this.getSettings('selectors.stickyElements'));
818 - return Array.from(allStickyElements).filter((anchor, index, self) => index === self.findIndex(t => t.getAttribute('data-id') === anchor.getAttribute('data-id')));
819 - }
820 - getAllAnchorLinks() {
821 - const allAnchors = document.querySelectorAll(this.getSettings('selectors.links'));
822 - return Array.from(allAnchors).filter((anchor, index, self) => index === self.findIndex(t => t.getAttribute('href') === anchor.getAttribute('href')));
823 - }
824 - filterAndSortElementsByType(elements, type) {
825 - return elements.filter(item => type === item.type).sort((a, b) => a.scrollPosition - b.scrollPosition);
826 - }
827 - isValidSelector(hash) {
828 - const validSelectorPattern = /^#[A-Za-z_][\w-]*$/;
829 - return validSelectorPattern.test(hash);
830 - }
831 - getAnchorTarget(element) {
832 - const hash = element?.hash;
833 - if (!this.isValidSelector(hash)) {
834 - return null;
835 - }
836 - return document.querySelector(hash);
837 - }
838 - getElementSettings(element) {
839 - return JSON.parse(element.getAttribute('data-settings'));
840 - }
841 -}
842 -exports["default"] = _default;
863 +//#endregion
864 +//#region node_modules/core-js/internals/array-includes.js
865 + var require_array_includes = /* @__PURE__ */ __commonJSMin(((exports, module) => {
866 + var toIndexedObject = require_to_indexed_object();
867 + var toAbsoluteIndex = require_to_absolute_index();
868 + var lengthOfArrayLike = require_length_of_array_like();
869 + var createMethod = function(IS_INCLUDES) {
870 + return function($this, el, fromIndex) {
871 + var O = toIndexedObject($this);
872 + var length = lengthOfArrayLike(O);
873 + if (length === 0) return !IS_INCLUDES && -1;
874 + var index = toAbsoluteIndex(fromIndex, length);
875 + var value;
876 + if (IS_INCLUDES && el !== el) while (length > index) {
877 + value = O[index++];
878 + if (value !== value) return true;
879 + }
880 + else for (; length > index; index++) if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
881 + return !IS_INCLUDES && -1;
882 + };
883 + };
884 + module.exports = {
885 + includes: createMethod(true),
886 + indexOf: createMethod(false)
887 + };
888 + }));
843 889
844 -/***/ }),
890 +//#endregion
891 +//#region node_modules/core-js/internals/object-keys-internal.js
892 + var require_object_keys_internal = /* @__PURE__ */ __commonJSMin(((exports, module) => {
893 + var uncurryThis = require_function_uncurry_this();
894 + var hasOwn = require_has_own_property();
895 + var toIndexedObject = require_to_indexed_object();
896 + var indexOf = require_array_includes().indexOf;
897 + var hiddenKeys = require_hidden_keys();
898 + var push = uncurryThis([].push);
899 + module.exports = function(object, names) {
900 + var O = toIndexedObject(object);
901 + var i = 0;
902 + var result = [];
903 + var key;
904 + for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);
905 + while (names.length > i) if (hasOwn(O, key = names[i++])) ~indexOf(result, key) || push(result, key);
906 + return result;
907 + };
908 + }));
845 909
846 -/***/ "../assets/dev/js/frontend/utils/assets-loader.js":
847 -/*!********************************************************!*\
848 - !*** ../assets/dev/js/frontend/utils/assets-loader.js ***!
849 - \********************************************************/
850 -/***/ ((__unused_webpack_module, exports) => {
910 +//#endregion
911 +//#region node_modules/core-js/internals/enum-bug-keys.js
912 + var require_enum_bug_keys = /* @__PURE__ */ __commonJSMin(((exports, module) => {
913 + module.exports = [
914 + "constructor",
915 + "hasOwnProperty",
916 + "isPrototypeOf",
917 + "propertyIsEnumerable",
918 + "toLocaleString",
919 + "toString",
920 + "valueOf"
921 + ];
922 + }));
851 923
924 +//#endregion
925 +//#region node_modules/core-js/internals/object-get-own-property-names.js
926 + var require_object_get_own_property_names = /* @__PURE__ */ __commonJSMin(((exports) => {
927 + var internalObjectKeys = require_object_keys_internal();
928 + var hiddenKeys = require_enum_bug_keys().concat("length", "prototype");
929 + exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
930 + return internalObjectKeys(O, hiddenKeys);
931 + };
932 + }));
852 933
934 +//#endregion
935 +//#region node_modules/core-js/internals/object-get-own-property-symbols.js
936 + var require_object_get_own_property_symbols = /* @__PURE__ */ __commonJSMin(((exports) => {
937 + exports.f = Object.getOwnPropertySymbols;
938 + }));
853 939
854 -Object.defineProperty(exports, "__esModule", ({
855 - value: true
856 -}));
857 -exports["default"] = void 0;
858 -class AssetsLoader {
859 - getScriptElement(src) {
860 - const scriptElement = document.createElement('script');
861 - scriptElement.src = src;
862 - return scriptElement;
863 - }
864 - getStyleElement(src) {
865 - const styleElement = document.createElement('link');
866 - styleElement.rel = 'stylesheet';
867 - styleElement.href = src;
868 - return styleElement;
869 - }
870 - load(type, key) {
871 - const assetData = AssetsLoader.assets[type][key];
872 - if (!assetData.loader) {
873 - assetData.loader = this.isAssetLoaded(assetData, type) ? Promise.resolve(true) : this.loadAsset(assetData, type);
874 - }
875 - return assetData.loader;
876 - }
877 - isAssetLoaded(assetData, assetType) {
878 - const filePath = 'script' === assetType ? `script[src="${assetData.src}"]` : `link[href="${assetData.src}"]`;
879 - return !!document.querySelectorAll(filePath)?.length;
880 - }
881 - loadAsset(assetData, assetType) {
882 - return new Promise(resolve => {
883 - const element = 'style' === assetType ? this.getStyleElement(assetData.src) : this.getScriptElement(assetData.src);
884 - element.onload = () => resolve(true);
885 - this.appendAsset(assetData, element);
886 - });
887 - }
888 - appendAsset(assetData, element) {
889 - const beforeElement = document.querySelector(assetData.before);
890 - if (!!beforeElement) {
891 - beforeElement.insertAdjacentElement('beforebegin', element);
892 - return;
893 - }
894 - const parent = 'head' === assetData.parent ? assetData.parent : 'body';
895 - document[parent].appendChild(element);
896 - }
897 -}
898 -exports["default"] = AssetsLoader;
899 -const assetsUrl = elementorFrontendConfig.urls.assets;
900 -const fileSuffix = elementorFrontendConfig.environmentMode.isScriptDebug ? '' : '.min';
901 -const pluginVersion = elementorFrontendConfig.version;
902 -AssetsLoader.assets = {
903 - script: {
904 - dialog: {
905 - src: `${assetsUrl}lib/dialog/dialog${fileSuffix}.js?ver=4.9.3`
906 - },
907 - 'share-link': {
908 - src: `${assetsUrl}lib/share-link/share-link${fileSuffix}.js?ver=${pluginVersion}`
909 - },
910 - // TODO: Remove 'swiper' in v3.29.0 [ED-16272].
911 - swiper: {
912 - src: `${assetsUrl}lib/swiper/v8/swiper${fileSuffix}.js?ver=8.4.5`
913 - }
914 - },
915 - style: {
916 - swiper: {
917 - src: `${assetsUrl}lib/swiper/v8/css/swiper${fileSuffix}.css?ver=8.4.5`,
918 - parent: 'head'
919 - },
920 - 'e-lightbox': {
921 - src: elementorFrontendConfig?.responsive?.hasCustomBreakpoints ? `${elementorFrontendConfig.urls.uploadUrl}/elementor/css/custom-lightbox.min.css?ver=${pluginVersion}` : `${assetsUrl}css/conditionals/lightbox${fileSuffix}.css?ver=${pluginVersion}`
922 - },
923 - dialog: {
924 - src: `${assetsUrl}css/conditionals/dialog${fileSuffix}.css?ver=${pluginVersion}`,
925 - parent: 'head',
926 - before: '#elementor-frontend-css'
927 - }
928 - }
929 -};
940 +//#endregion
941 +//#region node_modules/core-js/internals/own-keys.js
942 + var require_own_keys = /* @__PURE__ */ __commonJSMin(((exports, module) => {
943 + var getBuiltIn = require_get_built_in();
944 + var uncurryThis = require_function_uncurry_this();
945 + var getOwnPropertyNamesModule = require_object_get_own_property_names();
946 + var getOwnPropertySymbolsModule = require_object_get_own_property_symbols();
947 + var anObject = require_an_object();
948 + var concat = uncurryThis([].concat);
949 + module.exports = getBuiltIn("Reflect", "ownKeys") || function ownKeys(it) {
950 + var keys = getOwnPropertyNamesModule.f(anObject(it));
951 + var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
952 + return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;
953 + };
954 + }));
930 955
931 -/***/ }),
956 +//#endregion
957 +//#region node_modules/core-js/internals/copy-constructor-properties.js
958 + var require_copy_constructor_properties = /* @__PURE__ */ __commonJSMin(((exports, module) => {
959 + var hasOwn = require_has_own_property();
960 + var ownKeys = require_own_keys();
961 + var getOwnPropertyDescriptorModule = require_object_get_own_property_descriptor();
962 + var definePropertyModule = require_object_define_property();
963 + module.exports = function(target, source, exceptions) {
964 + var keys = ownKeys(source);
965 + var defineProperty = definePropertyModule.f;
966 + var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
967 + for (var i = 0; i < keys.length; i++) {
968 + var key = keys[i];
969 + if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
970 + }
971 + };
972 + }));
932 973
933 -/***/ "../assets/dev/js/frontend/utils/controls.js":
934 -/*!***************************************************!*\
935 - !*** ../assets/dev/js/frontend/utils/controls.js ***!
936 - \***************************************************/
937 -/***/ ((__unused_webpack_module, exports) => {
974 +//#endregion
975 +//#region node_modules/core-js/internals/is-forced.js
976 + var require_is_forced = /* @__PURE__ */ __commonJSMin(((exports, module) => {
977 + var fails = require_fails();
978 + var isCallable = require_is_callable();
979 + var replacement = /#|\.prototype\./;
980 + var isForced = function(feature, detection) {
981 + var value = data[normalize(feature)];
982 + return value === POLYFILL ? true : value === NATIVE ? false : isCallable(detection) ? fails(detection) : !!detection;
983 + };
984 + var normalize = isForced.normalize = function(string) {
985 + return String(string).replace(replacement, ".").toLowerCase();
986 + };
987 + var data = isForced.data = {};
988 + var NATIVE = isForced.NATIVE = "N";
989 + var POLYFILL = isForced.POLYFILL = "P";
990 + module.exports = isForced;
991 + }));
938 992
993 +//#endregion
994 +//#region node_modules/core-js/internals/export.js
995 + var require_export = /* @__PURE__ */ __commonJSMin(((exports, module) => {
996 + var globalThis = require_global_this();
997 + var getOwnPropertyDescriptor = require_object_get_own_property_descriptor().f;
998 + var createNonEnumerableProperty = require_create_non_enumerable_property();
999 + var defineBuiltIn = require_define_built_in();
1000 + var defineGlobalProperty = require_define_global_property();
1001 + var copyConstructorProperties = require_copy_constructor_properties();
1002 + var isForced = require_is_forced();
1003 + module.exports = function(options, source) {
1004 + var TARGET = options.target;
1005 + var GLOBAL = options.global;
1006 + var STATIC = options.stat;
1007 + var FORCED;
1008 + var target;
1009 + var key;
1010 + var targetProperty;
1011 + var sourceProperty;
1012 + var descriptor;
1013 + if (GLOBAL) target = globalThis;
1014 + else if (STATIC) target = globalThis[TARGET] || defineGlobalProperty(TARGET, {});
1015 + else target = globalThis[TARGET] && globalThis[TARGET].prototype;
1016 + if (target) for (key in source) {
1017 + sourceProperty = source[key];
1018 + if (options.dontCallGetSet) {
1019 + descriptor = getOwnPropertyDescriptor(target, key);
1020 + targetProperty = descriptor && descriptor.value;
1021 + } else targetProperty = target[key];
1022 + FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? "." : "#") + key, options.forced);
1023 + if (!FORCED && targetProperty !== void 0) {
1024 + if (typeof sourceProperty == typeof targetProperty) continue;
1025 + copyConstructorProperties(sourceProperty, targetProperty);
1026 + }
1027 + if (options.sham || targetProperty && targetProperty.sham) createNonEnumerableProperty(sourceProperty, "sham", true);
1028 + defineBuiltIn(target, key, sourceProperty, options);
1029 + }
1030 + };
1031 + }));
939 1032
1033 +//#endregion
1034 +//#region node_modules/core-js/internals/an-instance.js
1035 + var require_an_instance = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1036 + var isPrototypeOf = require_object_is_prototype_of();
1037 + var $TypeError = TypeError;
1038 + module.exports = function(it, Prototype) {
1039 + if (isPrototypeOf(Prototype, it)) return it;
1040 + throw new $TypeError("Incorrect invocation");
1041 + };
1042 + }));
940 1043
941 -Object.defineProperty(exports, "__esModule", ({
942 - value: true
943 -}));
944 -exports["default"] = void 0;
945 -class Controls {
946 - /**
947 - * Get Control Value
948 - *
949 - * Retrieves a control value.
950 - * This function has been copied from `elementor/assets/dev/js/editor/utils/conditions.js`.
951 - *
952 - * @since 3.11.0
953 - *
954 - * @param {{}} controlSettings A settings object (e.g. element settings - keys and values)
955 - * @param {string} controlKey The control key name
956 - * @param {string} controlSubKey A specific property of the control object.
957 - * @return {*} Control Value
958 - */
959 - getControlValue(controlSettings, controlKey, controlSubKey) {
960 - let value;
961 - if ('object' === typeof controlSettings[controlKey] && controlSubKey) {
962 - value = controlSettings[controlKey][controlSubKey];
963 - } else {
964 - value = controlSettings[controlKey];
965 - }
966 - return value;
967 - }
1044 +//#endregion
1045 +//#region node_modules/core-js/internals/correct-prototype-getter.js
1046 + var require_correct_prototype_getter = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1047 + var fails = require_fails();
1048 + module.exports = !fails(function() {
1049 + function F() {}
1050 + F.prototype.constructor = null;
1051 + return Object.getPrototypeOf(new F()) !== F.prototype;
1052 + });
1053 + }));
968 1054
969 - /**
970 - * Get the value of a responsive control.
971 - *
972 - * Retrieves the value of a responsive control for the current device or for this first parent device which has a control value.
973 - *
974 - * @since 3.11.0
975 - *
976 - * @param {{}} controlSettings A settings object (e.g. element settings - keys and values)
977 - * @param {string} controlKey The control key name
978 - * @param {string} controlSubKey A specific property of the control object.
979 - * @param {string} device If we want to get a value for a specific device mode.
980 - * @return {*} Control Value
981 - */
982 - getResponsiveControlValue(controlSettings, controlKey, controlSubKey = '', device = null) {
983 - const currentDeviceMode = device || elementorFrontend.getCurrentDeviceMode(),
984 - controlValueDesktop = this.getControlValue(controlSettings, controlKey, controlSubKey);
1055 +//#endregion
1056 +//#region node_modules/core-js/internals/object-get-prototype-of.js
1057 + var require_object_get_prototype_of = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1058 + var hasOwn = require_has_own_property();
1059 + var isCallable = require_is_callable();
1060 + var toObject = require_to_object();
1061 + var sharedKey = require_shared_key();
1062 + var CORRECT_PROTOTYPE_GETTER = require_correct_prototype_getter();
1063 + var IE_PROTO = sharedKey("IE_PROTO");
1064 + var $Object = Object;
1065 + var ObjectPrototype = $Object.prototype;
1066 + module.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function(O) {
1067 + var object = toObject(O);
1068 + if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];
1069 + var constructor = object.constructor;
1070 + if (isCallable(constructor) && object instanceof constructor) return constructor.prototype;
1071 + return object instanceof $Object ? ObjectPrototype : null;
1072 + };
1073 + }));
985 1074
986 - // Set the control value for the current device mode.
987 - // First check the widescreen device mode.
988 - if ('widescreen' === currentDeviceMode) {
989 - const controlValueWidescreen = this.getControlValue(controlSettings, `${controlKey}_widescreen`, controlSubKey);
990 - return !!controlValueWidescreen || 0 === controlValueWidescreen ? controlValueWidescreen : controlValueDesktop;
991 - }
1075 +//#endregion
1076 +//#region node_modules/core-js/internals/define-built-in-accessor.js
1077 + var require_define_built_in_accessor = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1078 + var makeBuiltIn = require_make_built_in();
1079 + var defineProperty = require_object_define_property();
1080 + module.exports = function(target, name, descriptor) {
1081 + if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });
1082 + if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });
1083 + return defineProperty.f(target, name, descriptor);
1084 + };
1085 + }));
992 1086
993 - // Loop through all responsive and desktop device modes.
994 - const activeBreakpoints = elementorFrontend.breakpoints.getActiveBreakpointsList({
995 - withDesktop: true
996 - });
997 - let parentDeviceMode = currentDeviceMode,
998 - deviceIndex = activeBreakpoints.indexOf(currentDeviceMode),
999 - controlValue = '';
1000 - while (deviceIndex <= activeBreakpoints.length) {
1001 - if ('desktop' === parentDeviceMode) {
1002 - controlValue = controlValueDesktop;
1003 - break;
1004 - }
1005 - const responsiveControlKey = `${controlKey}_${parentDeviceMode}`,
1006 - responsiveControlValue = this.getControlValue(controlSettings, responsiveControlKey, controlSubKey);
1007 - if (!!responsiveControlValue || 0 === responsiveControlValue) {
1008 - controlValue = responsiveControlValue;
1009 - break;
1010 - }
1087 +//#endregion
1088 +//#region node_modules/core-js/internals/create-property.js
1089 + var require_create_property = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1090 + var DESCRIPTORS = require_descriptors();
1091 + var definePropertyModule = require_object_define_property();
1092 + var createPropertyDescriptor = require_create_property_descriptor();
1093 + module.exports = function(object, key, value) {
1094 + if (DESCRIPTORS) definePropertyModule.f(object, key, createPropertyDescriptor(0, value));
1095 + else object[key] = value;
1096 + };
1097 + }));
1011 1098
1012 - // If no control value has been set for the current device mode, then check the parent device mode.
1013 - deviceIndex++;
1014 - parentDeviceMode = activeBreakpoints[deviceIndex];
1015 - }
1016 - return controlValue;
1017 - }
1018 -}
1019 -exports["default"] = Controls;
1099 +//#endregion
1100 +//#region node_modules/core-js/internals/object-keys.js
1101 + var require_object_keys = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1102 + var internalObjectKeys = require_object_keys_internal();
1103 + var enumBugKeys = require_enum_bug_keys();
1104 + module.exports = Object.keys || function keys(O) {
1105 + return internalObjectKeys(O, enumBugKeys);
1106 + };
1107 + }));
1020 1108
1021 -/***/ }),
1109 +//#endregion
1110 +//#region node_modules/core-js/internals/object-define-properties.js
1111 + var require_object_define_properties = /* @__PURE__ */ __commonJSMin(((exports) => {
1112 + var DESCRIPTORS = require_descriptors();
1113 + var V8_PROTOTYPE_DEFINE_BUG = require_v8_prototype_define_bug();
1114 + var definePropertyModule = require_object_define_property();
1115 + var anObject = require_an_object();
1116 + var toIndexedObject = require_to_indexed_object();
1117 + var objectKeys = require_object_keys();
1118 + exports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {
1119 + anObject(O);
1120 + var props = toIndexedObject(Properties);
1121 + var keys = objectKeys(Properties);
1122 + var length = keys.length;
1123 + var index = 0;
1124 + var key;
1125 + while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);
1126 + return O;
1127 + };
1128 + }));
1022 1129
1023 -/***/ "../assets/dev/js/frontend/utils/lightbox/lightbox-manager.js":
1024 -/*!********************************************************************!*\
1025 - !*** ../assets/dev/js/frontend/utils/lightbox/lightbox-manager.js ***!
1026 - \********************************************************************/
1027 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1130 +//#endregion
1131 +//#region node_modules/core-js/internals/html.js
1132 + var require_html = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1133 + var getBuiltIn = require_get_built_in();
1134 + module.exports = getBuiltIn("document", "documentElement");
1135 + }));
1028 1136
1137 +//#endregion
1138 +//#region node_modules/core-js/internals/object-create.js
1139 + var require_object_create = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1140 + var anObject = require_an_object();
1141 + var definePropertiesModule = require_object_define_properties();
1142 + var enumBugKeys = require_enum_bug_keys();
1143 + var hiddenKeys = require_hidden_keys();
1144 + var html = require_html();
1145 + var documentCreateElement = require_document_create_element();
1146 + var sharedKey = require_shared_key();
1147 + var GT = ">";
1148 + var LT = "<";
1149 + var PROTOTYPE = "prototype";
1150 + var SCRIPT = "script";
1151 + var IE_PROTO = sharedKey("IE_PROTO");
1152 + var EmptyConstructor = function() {};
1153 + var scriptTag = function(content) {
1154 + return LT + SCRIPT + GT + content + LT + "/" + SCRIPT + GT;
1155 + };
1156 + var NullProtoObjectViaActiveX = function(activeXDocument) {
1157 + activeXDocument.write(scriptTag(""));
1158 + activeXDocument.close();
1159 + var temp = activeXDocument.parentWindow.Object;
1160 + activeXDocument = null;
1161 + return temp;
1162 + };
1163 + var NullProtoObjectViaIFrame = function() {
1164 + var iframe = documentCreateElement("iframe");
1165 + var JS = "java" + SCRIPT + ":";
1166 + var iframeDocument;
1167 + iframe.style.display = "none";
1168 + html.appendChild(iframe);
1169 + iframe.src = String(JS);
1170 + iframeDocument = iframe.contentWindow.document;
1171 + iframeDocument.open();
1172 + iframeDocument.write(scriptTag("document.F=Object"));
1173 + iframeDocument.close();
1174 + return iframeDocument.F;
1175 + };
1176 + var activeXDocument;
1177 + var NullProtoObject = function() {
1178 + try {
1179 + activeXDocument = new ActiveXObject("htmlfile");
1180 + } catch (error) {}
1181 + NullProtoObject = typeof document != "undefined" ? document.domain && activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame() : NullProtoObjectViaActiveX(activeXDocument);
1182 + var length = enumBugKeys.length;
1183 + while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
1184 + return NullProtoObject();
1185 + };
1186 + hiddenKeys[IE_PROTO] = true;
1187 + module.exports = Object.create || function create(O, Properties) {
1188 + var result;
1189 + if (O !== null) {
1190 + EmptyConstructor[PROTOTYPE] = anObject(O);
1191 + result = new EmptyConstructor();
1192 + EmptyConstructor[PROTOTYPE] = null;
1193 + result[IE_PROTO] = O;
1194 + } else result = NullProtoObject();
1195 + return Properties === void 0 ? result : definePropertiesModule.f(result, Properties);
1196 + };
1197 + }));
1029 1198
1199 +//#endregion
1200 +//#region node_modules/core-js/internals/iterators-core.js
1201 + var require_iterators_core = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1202 + var fails = require_fails();
1203 + var isCallable = require_is_callable();
1204 + var isObject = require_is_object();
1205 + var create = require_object_create();
1206 + var getPrototypeOf = require_object_get_prototype_of();
1207 + var defineBuiltIn = require_define_built_in();
1208 + var wellKnownSymbol = require_well_known_symbol();
1209 + var IS_PURE = require_is_pure();
1210 + var ITERATOR = wellKnownSymbol("iterator");
1211 + var BUGGY_SAFARI_ITERATORS = false;
1212 + var IteratorPrototype;
1213 + var PrototypeOfArrayIteratorPrototype;
1214 + var arrayIterator;
1215 + if ([].keys) {
1216 + arrayIterator = [].keys();
1217 + if (!("next" in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
1218 + else {
1219 + PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
1220 + if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
1221 + }
1222 + }
1223 + if (!isObject(IteratorPrototype) || fails(function() {
1224 + var test = {};
1225 + return IteratorPrototype[ITERATOR].call(test) !== test;
1226 + })) IteratorPrototype = {};
1227 + else if (IS_PURE) IteratorPrototype = create(IteratorPrototype);
1228 + if (!isCallable(IteratorPrototype[ITERATOR])) defineBuiltIn(IteratorPrototype, ITERATOR, function() {
1229 + return this;
1230 + });
1231 + module.exports = {
1232 + IteratorPrototype,
1233 + BUGGY_SAFARI_ITERATORS
1234 + };
1235 + }));
1030 1236
1031 -Object.defineProperty(exports, "__esModule", ({
1032 - value: true
1033 -}));
1034 -exports["default"] = void 0;
1035 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
1036 -__webpack_require__(/*! core-js/modules/esnext.iterator.find.js */ "../node_modules/core-js/modules/esnext.iterator.find.js");
1037 -class LightboxManager extends elementorModules.ViewModule {
1038 - static getLightbox() {
1039 - const lightboxPromise = new Promise(resolveLightbox => {
1040 - Promise.all(/*! import() | lightbox */[__webpack_require__.e("vendors-node_modules_dompurify_dist_purify_cjs_js"), __webpack_require__.e("lightbox")]).then(__webpack_require__.t.bind(__webpack_require__, /*! elementor-frontend/utils/lightbox/lightbox */ "../assets/dev/js/frontend/utils/lightbox/lightbox.js", 23)).then(({
1041 - default: LightboxModule
1042 - }) => resolveLightbox(new LightboxModule()));
1043 - }),
1044 - dialogScriptPromise = elementorFrontend.utils.assetsLoader.load('script', 'dialog'),
1045 - dialogStylePromise = elementorFrontend.utils.assetsLoader.load('style', 'dialog'),
1046 - shareLinkPromise = elementorFrontend.utils.assetsLoader.load('script', 'share-link'),
1047 - swiperStylePromise = elementorFrontend.utils.assetsLoader.load('style', 'swiper'),
1048 - lightboxStylePromise = elementorFrontend.utils.assetsLoader.load('style', 'e-lightbox');
1049 - return Promise.all([lightboxPromise, dialogScriptPromise, dialogStylePromise, shareLinkPromise, swiperStylePromise, lightboxStylePromise]).then(() => lightboxPromise);
1050 - }
1051 - getDefaultSettings() {
1052 - return {
1053 - selectors: {
1054 - links: 'a, [data-elementor-lightbox]',
1055 - slideshow: '[data-elementor-lightbox-slideshow]'
1056 - }
1057 - };
1058 - }
1059 - getDefaultElements() {
1060 - return {
1061 - $links: jQuery(this.getSettings('selectors.links')),
1062 - $slideshow: jQuery(this.getSettings('selectors.slideshow'))
1063 - };
1064 - }
1065 - isLightboxLink(element) {
1066 - // Check for lowercase `a` to make sure it works also for links inside SVGs.
1067 - if ('a' === element.tagName.toLowerCase() && (element.hasAttribute('download') || !/^[^?]+\.(png|jpe?g|gif|svg|webp|avif)(\?.*)?$/i.test(element.href)) && !element.dataset.elementorLightboxVideo) {
1068 - return false;
1069 - }
1070 - const generalOpenInLightbox = elementorFrontend.getKitSettings('global_image_lightbox'),
1071 - currentLinkOpenInLightbox = element.dataset.elementorOpenLightbox;
1072 - return 'yes' === currentLinkOpenInLightbox || generalOpenInLightbox && 'no' !== currentLinkOpenInLightbox;
1073 - }
1074 - isLightboxSlideshow() {
1075 - return 0 !== this.elements.$slideshow.length;
1076 - }
1077 - async onLinkClick(event) {
1078 - const element = event.currentTarget,
1079 - $target = jQuery(event.target),
1080 - editMode = elementorFrontend.isEditMode(),
1081 - isColorPickingMode = editMode && elementor.$previewContents.find('body').hasClass('elementor-editor__ui-state__color-picker'),
1082 - isClickInsideElementor = !!$target.closest('.elementor-edit-area').length;
1083 - if (!this.isLightboxLink(element)) {
1084 - if (editMode && isClickInsideElementor) {
1085 - event.preventDefault();
1086 - }
1087 - return;
1088 - }
1089 - event.preventDefault();
1090 - if (editMode && !elementor.getPreferences('lightbox_in_editor')) {
1091 - return;
1092 - }
1237 +//#endregion
1238 +//#region node_modules/core-js/modules/es.iterator.constructor.js
1239 + var require_es_iterator_constructor = /* @__PURE__ */ __commonJSMin((() => {
1240 + var $ = require_export();
1241 + var globalThis = require_global_this();
1242 + var anInstance = require_an_instance();
1243 + var anObject = require_an_object();
1244 + var isCallable = require_is_callable();
1245 + var getPrototypeOf = require_object_get_prototype_of();
1246 + var defineBuiltInAccessor = require_define_built_in_accessor();
1247 + var createProperty = require_create_property();
1248 + var fails = require_fails();
1249 + var hasOwn = require_has_own_property();
1250 + var wellKnownSymbol = require_well_known_symbol();
1251 + var IteratorPrototype = require_iterators_core().IteratorPrototype;
1252 + var DESCRIPTORS = require_descriptors();
1253 + var IS_PURE = require_is_pure();
1254 + var CONSTRUCTOR = "constructor";
1255 + var ITERATOR = "Iterator";
1256 + var TO_STRING_TAG = wellKnownSymbol("toStringTag");
1257 + var $TypeError = TypeError;
1258 + var NativeIterator = globalThis[ITERATOR];
1259 + var FORCED = IS_PURE || !isCallable(NativeIterator) || NativeIterator.prototype !== IteratorPrototype || !fails(function() {
1260 + NativeIterator({});
1261 + });
1262 + var IteratorConstructor = function Iterator() {
1263 + anInstance(this, IteratorPrototype);
1264 + if (getPrototypeOf(this) === IteratorPrototype) throw new $TypeError("Abstract class Iterator not directly constructable");
1265 + };
1266 + var defineIteratorPrototypeAccessor = function(key, value) {
1267 + if (DESCRIPTORS) defineBuiltInAccessor(IteratorPrototype, key, {
1268 + configurable: true,
1269 + get: function() {
1270 + return value;
1271 + },
1272 + set: function(replacement) {
1273 + anObject(this);
1274 + if (this === IteratorPrototype) throw new $TypeError("You can't redefine this property");
1275 + if (hasOwn(this, key)) this[key] = replacement;
1276 + else createProperty(this, key, replacement);
1277 + }
1278 + });
1279 + else IteratorPrototype[key] = value;
1280 + };
1281 + if (!hasOwn(IteratorPrototype, TO_STRING_TAG)) defineIteratorPrototypeAccessor(TO_STRING_TAG, ITERATOR);
1282 + if (FORCED || !hasOwn(IteratorPrototype, CONSTRUCTOR) || IteratorPrototype[CONSTRUCTOR] === Object) defineIteratorPrototypeAccessor(CONSTRUCTOR, IteratorConstructor);
1283 + IteratorConstructor.prototype = IteratorPrototype;
1284 + $({
1285 + global: true,
1286 + constructor: true,
1287 + forced: FORCED
1288 + }, { Iterator: IteratorConstructor });
1289 + }));
1093 1290
1094 - // Disable lightbox on color picking mode.
1095 - if (isColorPickingMode) {
1096 - return;
1097 - }
1098 - const lightbox = await LightboxManager.getLightbox();
1099 - lightbox.createLightbox(element);
1100 - }
1101 - bindEvents() {
1102 - elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), event => this.onLinkClick(event));
1103 - }
1104 - onInit(...args) {
1105 - super.onInit(...args);
1106 - if (elementorFrontend.isEditMode()) {
1107 - return;
1108 - }
1109 - this.maybeActivateLightboxOnLink();
1110 - }
1111 - maybeActivateLightboxOnLink() {
1112 - // Detecting lightbox links on init will reduce the time of waiting to the lightbox to be display on slow connections.
1113 - this.elements.$links.each((index, element) => {
1114 - if (this.isLightboxLink(element)) {
1115 - LightboxManager.getLightbox();
1291 +//#endregion
1292 +//#region node_modules/core-js/modules/esnext.iterator.constructor.js
1293 + var require_esnext_iterator_constructor = /* @__PURE__ */ __commonJSMin((() => {
1294 + require_es_iterator_constructor();
1295 + }));
1116 1296
1117 - // Breaking the iteration when the library loading has already been triggered.
1118 - return false;
1119 - }
1120 - });
1121 - }
1122 -}
1123 -exports["default"] = LightboxManager;
1297 +//#endregion
1298 +//#region node_modules/core-js/internals/function-uncurry-this-clause.js
1299 + var require_function_uncurry_this_clause = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1300 + var classofRaw = require_classof_raw();
1301 + var uncurryThis = require_function_uncurry_this();
1302 + module.exports = function(fn) {
1303 + if (classofRaw(fn) === "Function") return uncurryThis(fn);
1304 + };
1305 + }));
1124 1306
1125 -/***/ }),
1307 +//#endregion
1308 +//#region node_modules/core-js/internals/function-bind-context.js
1309 + var require_function_bind_context = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1310 + var uncurryThis = require_function_uncurry_this_clause();
1311 + var aCallable = require_a_callable();
1312 + var NATIVE_BIND = require_function_bind_native();
1313 + var bind = uncurryThis(uncurryThis.bind);
1314 + module.exports = function(fn, that) {
1315 + aCallable(fn);
1316 + return that === void 0 ? fn : NATIVE_BIND ? bind(fn, that) : function() {
1317 + return fn.apply(that, arguments);
1318 + };
1319 + };
1320 + }));
1126 1321
1127 -/***/ "../assets/dev/js/frontend/utils/swiper.js":
1128 -/*!*************************************************!*\
1129 - !*** ../assets/dev/js/frontend/utils/swiper.js ***!
1130 - \*************************************************/
1131 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1322 +//#endregion
1323 +//#region node_modules/core-js/internals/iterators.js
1324 + var require_iterators = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1325 + module.exports = {};
1326 + }));
1132 1327
1328 +//#endregion
1329 +//#region node_modules/core-js/internals/is-array-iterator-method.js
1330 + var require_is_array_iterator_method = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1331 + var wellKnownSymbol = require_well_known_symbol();
1332 + var Iterators = require_iterators();
1333 + var ITERATOR = wellKnownSymbol("iterator");
1334 + var ArrayPrototype = Array.prototype;
1335 + module.exports = function(it) {
1336 + return it !== void 0 && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);
1337 + };
1338 + }));
1133 1339
1340 +//#endregion
1341 +//#region node_modules/core-js/internals/to-string-tag-support.js
1342 + var require_to_string_tag_support = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1343 + var TO_STRING_TAG = require_well_known_symbol()("toStringTag");
1344 + var test = {};
1345 + test[TO_STRING_TAG] = "z";
1346 + module.exports = String(test) === "[object z]";
1347 + }));
1134 1348
1135 -Object.defineProperty(exports, "__esModule", ({
1136 - value: true
1137 -}));
1138 -exports["default"] = void 0;
1139 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
1140 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
1141 -class SwiperHandler {
1142 - constructor(container, config) {
1143 - this.config = config;
1144 - if (this.config.breakpoints) {
1145 - // The config is passed as a param to allow adjustConfig to be called outside of this wrapper
1146 - this.config = this.adjustConfig(config);
1147 - }
1148 - if (container instanceof jQuery) {
1149 - container = container[0];
1150 - }
1349 +//#endregion
1350 +//#region node_modules/core-js/internals/classof.js
1351 + var require_classof = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1352 + var TO_STRING_TAG_SUPPORT = require_to_string_tag_support();
1353 + var isCallable = require_is_callable();
1354 + var classofRaw = require_classof_raw();
1355 + var TO_STRING_TAG = require_well_known_symbol()("toStringTag");
1356 + var $Object = Object;
1357 + var CORRECT_ARGUMENTS = classofRaw(function() {
1358 + return arguments;
1359 + }()) === "Arguments";
1360 + var tryGet = function(it, key) {
1361 + try {
1362 + return it[key];
1363 + } catch (error) {}
1364 + };
1365 + module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function(it) {
1366 + var O;
1367 + var tag;
1368 + var result;
1369 + return it === void 0 ? "Undefined" : it === null ? "Null" : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == "string" ? tag : CORRECT_ARGUMENTS ? classofRaw(O) : (result = classofRaw(O)) === "Object" && isCallable(O.callee) ? "Arguments" : result;
1370 + };
1371 + }));
1151 1372
1152 - // The Swiper will overlap the column width when applying custom margin values on the column.
1153 - container.closest('.elementor-widget-wrap')?.classList.add('e-swiper-container');
1154 - container.closest('.elementor-widget')?.classList.add('e-widget-swiper');
1155 - return new Promise(resolve => {
1156 - // TODO: Remove in v3.29.0 [ED-16272].
1157 - if ('undefined' === typeof Swiper) {
1158 - elementorFrontend.utils.assetsLoader.load('script', 'swiper').then(() => resolve(this.createSwiperInstance(container, this.config)));
1159 - return;
1160 - }
1161 - if ('function' === typeof Swiper && 'undefined' === typeof window.Swiper) {
1162 - window.Swiper = Swiper;
1163 - }
1164 - resolve(this.createSwiperInstance(container, this.config));
1165 - });
1166 - }
1167 - createSwiperInstance(container, config) {
1168 - const SwiperSource = window.Swiper;
1169 - SwiperSource.prototype.adjustConfig = this.adjustConfig;
1170 - config = this.applyMotionPreferences(config);
1171 - return new SwiperSource(container, config);
1172 - }
1373 +//#endregion
1374 +//#region node_modules/core-js/internals/get-iterator-method.js
1375 + var require_get_iterator_method = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1376 + var classof = require_classof();
1377 + var getMethod = require_get_method();
1378 + var isNullOrUndefined = require_is_null_or_undefined();
1379 + var Iterators = require_iterators();
1380 + var ITERATOR = require_well_known_symbol()("iterator");
1381 + module.exports = function(it) {
1382 + if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR) || getMethod(it, "@@iterator") || Iterators[classof(it)];
1383 + };
1384 + }));
1173 1385
1174 - // Backwards compatibility for Elementor Pro <2.9.0 (old Swiper version - <5.0.0)
1175 - // In Swiper 5.0.0 and up, breakpoints changed from acting as max-width to acting as min-width
1176 - adjustConfig(config) {
1177 - // Only reverse the breakpoints if the handle param has been defined
1178 - if (!config.handleElementorBreakpoints) {
1179 - return config;
1180 - }
1181 - const elementorBreakpoints = elementorFrontend.config.responsive.activeBreakpoints,
1182 - elementorBreakpointValues = elementorFrontend.breakpoints.getBreakpointValues();
1183 - Object.keys(config.breakpoints).forEach(configBPKey => {
1184 - const configBPKeyInt = parseInt(configBPKey);
1185 - let breakpointToUpdate;
1386 +//#endregion
1387 +//#region node_modules/core-js/internals/get-iterator.js
1388 + var require_get_iterator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1389 + var call = require_function_call();
1390 + var aCallable = require_a_callable();
1391 + var anObject = require_an_object();
1392 + var tryToString = require_try_to_string();
1393 + var getIteratorMethod = require_get_iterator_method();
1394 + var $TypeError = TypeError;
1395 + module.exports = function(argument, usingIterator) {
1396 + var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;
1397 + if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));
1398 + throw new $TypeError(tryToString(argument) + " is not iterable");
1399 + };
1400 + }));
1186 1401
1187 - // The `configBPKeyInt + 1` is a BC Fix for Elementor Pro Carousels from 2.8.0-2.8.3 used with Elementor >= 2.9.0
1188 - if (configBPKeyInt === elementorBreakpoints.mobile.value || configBPKeyInt + 1 === elementorBreakpoints.mobile.value) {
1189 - // This handles the mobile breakpoint. Elementor's default sm breakpoint is never actually used,
1190 - // so the mobile breakpoint (md) needs to be handled separately and set to the 0 breakpoint (xs)
1191 - breakpointToUpdate = 0;
1192 - } else if (elementorBreakpoints.widescreen && (configBPKeyInt === elementorBreakpoints.widescreen.value || configBPKeyInt + 1 === elementorBreakpoints.widescreen.value)) {
1193 - // Widescreen is a min-width breakpoint. Since in Swiper >5.0 the breakpoint system is min-width based,
1194 - // the value we pass to the Swiper instance in this case is the breakpoint from the user, unchanged.
1195 - breakpointToUpdate = configBPKeyInt;
1196 - } else {
1197 - // Find the index of the current config breakpoint in the Elementor Breakpoints array
1198 - const currentBPIndexInElementorBPs = elementorBreakpointValues.findIndex(elementorBP => {
1199 - // BC Fix for Elementor Pro Carousels from 2.8.0-2.8.3 used with Elementor >= 2.9.0
1200 - return configBPKeyInt === elementorBP || configBPKeyInt + 1 === elementorBP;
1201 - });
1402 +//#endregion
1403 +//#region node_modules/core-js/internals/iterator-close.js
1404 + var require_iterator_close = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1405 + var call = require_function_call();
1406 + var anObject = require_an_object();
1407 + var getMethod = require_get_method();
1408 + module.exports = function(iterator, kind, value) {
1409 + var innerResult;
1410 + var innerError;
1411 + anObject(iterator);
1412 + try {
1413 + innerResult = getMethod(iterator, "return");
1414 + if (!innerResult) {
1415 + if (kind === "throw") throw value;
1416 + return value;
1417 + }
1418 + innerResult = call(innerResult, iterator);
1419 + } catch (error) {
1420 + innerError = true;
1421 + innerResult = error;
1422 + }
1423 + if (kind === "throw") throw value;
1424 + if (innerError) throw innerResult;
1425 + anObject(innerResult);
1426 + return value;
1427 + };
1428 + }));
1202 1429
1203 - // For all other Swiper config breakpoints, move them one breakpoint down on the breakpoint list,
1204 - // according to the array of Elementor's global breakpoints
1205 - breakpointToUpdate = elementorBreakpointValues[currentBPIndexInElementorBPs - 1];
1206 - }
1207 - config.breakpoints[breakpointToUpdate] = config.breakpoints[configBPKey];
1430 +//#endregion
1431 +//#region node_modules/core-js/internals/iterate.js
1432 + var require_iterate = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1433 + var bind = require_function_bind_context();
1434 + var call = require_function_call();
1435 + var anObject = require_an_object();
1436 + var tryToString = require_try_to_string();
1437 + var isArrayIteratorMethod = require_is_array_iterator_method();
1438 + var lengthOfArrayLike = require_length_of_array_like();
1439 + var isPrototypeOf = require_object_is_prototype_of();
1440 + var getIterator = require_get_iterator();
1441 + var getIteratorMethod = require_get_iterator_method();
1442 + var iteratorClose = require_iterator_close();
1443 + var $TypeError = TypeError;
1444 + var Result = function(stopped, result) {
1445 + this.stopped = stopped;
1446 + this.result = result;
1447 + };
1448 + var ResultPrototype = Result.prototype;
1449 + module.exports = function(iterable, unboundFunction, options) {
1450 + var that = options && options.that;
1451 + var AS_ENTRIES = !!(options && options.AS_ENTRIES);
1452 + var IS_RECORD = !!(options && options.IS_RECORD);
1453 + var IS_ITERATOR = !!(options && options.IS_ITERATOR);
1454 + var INTERRUPTED = !!(options && options.INTERRUPTED);
1455 + var fn = bind(unboundFunction, that);
1456 + var iterator;
1457 + var iterFn;
1458 + var index;
1459 + var length;
1460 + var result;
1461 + var next;
1462 + var step;
1463 + var stop = function(condition) {
1464 + if (iterator) iteratorClose(iterator, "normal");
1465 + return new Result(true, condition);
1466 + };
1467 + var callFn = function(value) {
1468 + if (AS_ENTRIES) {
1469 + anObject(value);
1470 + return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);
1471 + }
1472 + return INTERRUPTED ? fn(value, stop) : fn(value);
1473 + };
1474 + if (IS_RECORD) iterator = iterable.iterator;
1475 + else if (IS_ITERATOR) iterator = iterable;
1476 + else {
1477 + iterFn = getIteratorMethod(iterable);
1478 + if (!iterFn) throw new $TypeError(tryToString(iterable) + " is not iterable");
1479 + if (isArrayIteratorMethod(iterFn)) {
1480 + for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {
1481 + result = callFn(iterable[index]);
1482 + if (result && isPrototypeOf(ResultPrototype, result)) return result;
1483 + }
1484 + return new Result(false);
1485 + }
1486 + iterator = getIterator(iterable, iterFn);
1487 + }
1488 + next = IS_RECORD ? iterable.next : iterator.next;
1489 + while (!(step = call(next, iterator)).done) {
1490 + try {
1491 + result = callFn(step.value);
1492 + } catch (error) {
1493 + iteratorClose(iterator, "throw", error);
1494 + }
1495 + if (typeof result == "object" && result && isPrototypeOf(ResultPrototype, result)) return result;
1496 + }
1497 + return new Result(false);
1498 + };
1499 + }));
1208 1500
1209 - // Then reset the settings in the original breakpoint key to the default values
1210 - config.breakpoints[configBPKey] = {
1211 - slidesPerView: config.slidesPerView,
1212 - slidesPerGroup: config.slidesPerGroup ? config.slidesPerGroup : 1
1213 - };
1214 - });
1215 - return config;
1216 - }
1217 - applyMotionPreferences(config) {
1218 - const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
1219 - if (!prefersReducedMotion) {
1220 - return config;
1221 - }
1222 - return Object.assign({}, config, {
1223 - speed: 0,
1224 - autoplay: false
1225 - });
1226 - }
1227 -}
1228 -exports["default"] = SwiperHandler;
1501 +//#endregion
1502 +//#region node_modules/core-js/internals/get-iterator-direct.js
1503 + var require_get_iterator_direct = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1504 + module.exports = function(obj) {
1505 + return {
1506 + iterator: obj,
1507 + next: obj.next,
1508 + done: false
1509 + };
1510 + };
1511 + }));
1229 1512
1230 -/***/ }),
1513 +//#endregion
1514 +//#region node_modules/core-js/internals/iterator-helper-without-closing-on-early-error.js
1515 + var require_iterator_helper_without_closing_on_early_error = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1516 + var globalThis = require_global_this();
1517 + module.exports = function(METHOD_NAME, ExpectedError) {
1518 + var Iterator = globalThis.Iterator;
1519 + var IteratorPrototype = Iterator && Iterator.prototype;
1520 + var method = IteratorPrototype && IteratorPrototype[METHOD_NAME];
1521 + var CLOSED = false;
1522 + if (method) try {
1523 + method.call({
1524 + next: function() {
1525 + return { done: true };
1526 + },
1527 + "return": function() {
1528 + CLOSED = true;
1529 + }
1530 + }, -1);
1531 + } catch (error) {
1532 + if (!(error instanceof ExpectedError)) CLOSED = false;
1533 + }
1534 + if (!CLOSED) return method;
1535 + };
1536 + }));
1231 1537
1232 -/***/ "../assets/dev/js/frontend/utils/url-actions.js":
1233 -/*!******************************************************!*\
1234 - !*** ../assets/dev/js/frontend/utils/url-actions.js ***!
1235 - \******************************************************/
1236 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1538 +//#endregion
1539 +//#region node_modules/core-js/modules/es.iterator.find.js
1540 + var require_es_iterator_find = /* @__PURE__ */ __commonJSMin((() => {
1541 + var $ = require_export();
1542 + var call = require_function_call();
1543 + var iterate = require_iterate();
1544 + var aCallable = require_a_callable();
1545 + var anObject = require_an_object();
1546 + var getIteratorDirect = require_get_iterator_direct();
1547 + var iteratorClose = require_iterator_close();
1548 + var findWithoutClosingOnEarlyError = require_iterator_helper_without_closing_on_early_error()("find", TypeError);
1549 + $({
1550 + target: "Iterator",
1551 + proto: true,
1552 + real: true,
1553 + forced: findWithoutClosingOnEarlyError
1554 + }, { find: function find(predicate) {
1555 + anObject(this);
1556 + try {
1557 + aCallable(predicate);
1558 + } catch (error) {
1559 + iteratorClose(this, "throw", error);
1560 + }
1561 + if (findWithoutClosingOnEarlyError) return call(findWithoutClosingOnEarlyError, this, predicate);
1562 + var record = getIteratorDirect(this);
1563 + var counter = 0;
1564 + return iterate(record, function(value, stop) {
1565 + if (predicate(value, counter++)) return stop(value);
1566 + }, {
1567 + IS_RECORD: true,
1568 + INTERRUPTED: true
1569 + }).result;
1570 + } });
1571 + }));
1237 1572
1573 +//#endregion
1574 +//#region node_modules/core-js/modules/esnext.iterator.find.js
1575 + var require_esnext_iterator_find = /* @__PURE__ */ __commonJSMin((() => {
1576 + require_es_iterator_find();
1577 + }));
1238 1578
1579 +//#endregion
1580 +//#region node_modules/core-js/modules/es.iterator.for-each.js
1581 + var require_es_iterator_for_each = /* @__PURE__ */ __commonJSMin((() => {
1582 + var $ = require_export();
1583 + var call = require_function_call();
1584 + var iterate = require_iterate();
1585 + var aCallable = require_a_callable();
1586 + var anObject = require_an_object();
1587 + var getIteratorDirect = require_get_iterator_direct();
1588 + var iteratorClose = require_iterator_close();
1589 + var forEachWithoutClosingOnEarlyError = require_iterator_helper_without_closing_on_early_error()("forEach", TypeError);
1590 + $({
1591 + target: "Iterator",
1592 + proto: true,
1593 + real: true,
1594 + forced: forEachWithoutClosingOnEarlyError
1595 + }, { forEach: function forEach(fn) {
1596 + anObject(this);
1597 + try {
1598 + aCallable(fn);
1599 + } catch (error) {
1600 + iteratorClose(this, "throw", error);
1601 + }
1602 + if (forEachWithoutClosingOnEarlyError) return call(forEachWithoutClosingOnEarlyError, this, fn);
1603 + var record = getIteratorDirect(this);
1604 + var counter = 0;
1605 + iterate(record, function(value) {
1606 + fn(value, counter++);
1607 + }, { IS_RECORD: true });
1608 + } });
1609 + }));
1239 1610
1240 -Object.defineProperty(exports, "__esModule", ({
1241 - value: true
1242 -}));
1243 -exports["default"] = void 0;
1244 -__webpack_require__(/*! core-js/modules/web.dom-exception.stack.js */ "../node_modules/core-js/modules/web.dom-exception.stack.js");
1245 -class _default extends elementorModules.ViewModule {
1246 - getDefaultSettings() {
1247 - return {
1248 - selectors: {
1249 - links: 'a[href^="%23elementor-action"], a[href^="#elementor-action"]'
1250 - }
1251 - };
1252 - }
1253 - bindEvents() {
1254 - elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), this.runLinkAction.bind(this));
1255 - }
1256 - initActions() {
1257 - this.actions = {
1258 - lightbox: async settings => {
1259 - const lightbox = await elementorFrontend.utils.lightbox;
1260 - if (settings.slideshow) {
1261 - // Handle slideshow display
1262 - lightbox.openSlideshow(settings.slideshow, settings.url);
1263 - } else {
1264 - // If the settings has an ID - the lightbox target content is an image - the ID is an attachment ID.
1265 - if (settings.id) {
1266 - settings.type = 'image';
1267 - }
1268 - lightbox.showModal(settings);
1269 - }
1270 - }
1271 - };
1272 - }
1273 - addAction(name, callback) {
1274 - this.actions[name] = callback;
1275 - }
1276 - runAction(url, ...restArgs) {
1277 - url = decodeURI(url);
1278 - url = decodeURIComponent(url);
1279 - const actionMatch = url.match(/action=(.+?)&/);
1280 - if (!actionMatch) {
1281 - return;
1282 - }
1283 - const action = this.actions[actionMatch[1]];
1284 - if (!action) {
1285 - return;
1286 - }
1287 - let settings = {};
1288 - const settingsMatch = url.match(/settings=(.+)/);
1289 - if (settingsMatch) {
1290 - settings = JSON.parse(atob(settingsMatch[1]));
1291 - }
1292 - settings.previousEvent = event;
1293 - action(settings, ...restArgs);
1294 - }
1295 - runLinkAction(event) {
1296 - event.preventDefault();
1297 - this.runAction(jQuery(event.currentTarget).attr('href'), event);
1298 - }
1299 - runHashAction() {
1300 - if (!location.hash) {
1301 - return;
1302 - }
1611 +//#endregion
1612 +//#region node_modules/core-js/modules/esnext.iterator.for-each.js
1613 + var require_esnext_iterator_for_each = /* @__PURE__ */ __commonJSMin((() => {
1614 + require_es_iterator_for_each();
1615 + }));
1303 1616
1304 - // Only if an element with this action hash exists on the page do we allow running the action.
1305 - const elementWithHash = document.querySelector(`[data-e-action-hash="${location.hash}"], a[href*="${location.hash}"]`);
1306 - if (elementWithHash) {
1307 - this.runAction(elementWithHash.getAttribute('data-e-action-hash'));
1308 - }
1309 - }
1310 - createActionHash(action, settings) {
1311 - // We need to encode the hash tag (#) here, in order to support share links for a variety of providers
1312 - return encodeURIComponent(`#elementor-action:action=${action}&settings=${btoa(JSON.stringify(settings))}`);
1313 - }
1314 - onInit() {
1315 - super.onInit();
1316 - this.initActions();
1317 - elementorFrontend.on('components:init', this.runHashAction.bind(this));
1318 - }
1319 -}
1320 -exports["default"] = _default;
1617 +//#endregion
1618 +//#region assets/dev/js/public-path.js
1619 + var require_public_path = /* @__PURE__ */ __commonJSMin(((exports) => {
1620 + Object.defineProperty(exports, "__esModule", { value: true });
1621 + }));
1321 1622
1322 -/***/ }),
1623 +//#endregion
1624 +//#region assets/dev/js/frontend/utils/chunk-loader.js
1625 + var require_chunk_loader = /* @__PURE__ */ __commonJSMin(((exports) => {
1626 + Object.defineProperty(exports, "__esModule", { value: true });
1627 + exports.loadChunk = loadChunk;
1628 + /**
1629 + * On-demand loader for frontend code chunks.
1630 + *
1631 + * Rolldown's IIFE output cannot code split, so every dynamic `import()` would otherwise be inlined
1632 + * into the entry. That regressed `frontend.min.js` from 10.4 KiB gzip to 53.7 KiB, most of it
1633 + * unused on any given page. The build rewrites those imports at build time to `loadChunk(name)`
1634 + * so the entry stays small and each handler ships as its own bundle fetched only when a widget
1635 + * needs it.
1636 + *
1637 + * A chunk bundle is an IIFE that assigns its default export to `window.__elementorChunks[name]`.
1638 + * The `__ELEMENTOR_CHUNK_SUFFIX__` constant is replaced at build time with `.min` for the
1639 + * production build and the empty string otherwise, so a dev frontend loads dev chunks and a prod
1640 + * frontend loads minified ones.
1641 + */
1642 + function chunkUrl(name) {
1643 + var _config$urls;
1644 + const config = window.elementorFrontendConfig || {};
1645 + const assetsUrl = ((_config$urls = config.urls) === null || _config$urls === void 0 ? void 0 : _config$urls.assets) || "";
1646 + const version = config.version ? "?ver=" + encodeURIComponent(config.version) : "";
1647 + return assetsUrl + "js/chunks/" + name + ".js" + version;
1648 + }
1649 + var registry = window.__elementorChunks = window.__elementorChunks || {};
1650 + var inflight = /* @__PURE__ */ new Map();
1651 + function appendChunkScript(name) {
1652 + return new Promise((resolve, reject) => {
1653 + const script = document.createElement("script");
1654 + script.src = chunkUrl(name);
1655 + script.async = true;
1656 + script.onload = () => {
1657 + if (registry[name]) resolve(registry[name]);
1658 + else reject(/* @__PURE__ */ new Error(`[elementor] chunk "${name}" loaded but did not register`));
1659 + };
1660 + script.onerror = () => reject(/* @__PURE__ */ new Error(`[elementor] failed to load chunk "${name}" from ${script.src}`));
1661 + document.head.appendChild(script);
1662 + });
1663 + }
1664 + /**
1665 + * Returns a promise for the module namespace of a chunk, appending its script tag on first
1666 + * request. The build rewrites `import( './handlers/video' )` in frontend sources to
1667 + * `loadChunk( 'video' )`, so call sites see the same then-able interface they wrote against.
1668 + *
1669 + * @param {string} name
1670 + */
1671 + function loadChunk(name) {
1672 + if (registry[name]) return Promise.resolve(registry[name]);
1673 + if (!inflight.has(name)) inflight.set(name, appendChunkScript(name));
1674 + return inflight.get(name);
1675 + }
1676 + window.__elementorLoadChunk = loadChunk;
1677 + }));
1323 1678
1324 -/***/ "../assets/dev/js/frontend/utils/utils.js":
1325 -/*!************************************************!*\
1326 - !*** ../assets/dev/js/frontend/utils/utils.js ***!
1327 - \************************************************/
1328 -/***/ ((__unused_webpack_module, exports) => {
1679 +//#endregion
1680 +//#region assets/dev/js/frontend/document.js
1681 + var require_document = /* @__PURE__ */ __commonJSMin(((exports) => {
1682 + Object.defineProperty(exports, "__esModule", { value: true });
1683 + exports.default = void 0;
1684 + require_esnext_iterator_constructor();
1685 + require_esnext_iterator_find();
1686 + var _default = class extends elementorModules.ViewModule {
1687 + getDefaultSettings() {
1688 + return {
1689 + selectors: {
1690 + elements: ".elementor-element",
1691 + nestedDocumentElements: ".elementor .elementor-element"
1692 + },
1693 + classes: { editMode: "elementor-edit-mode" }
1694 + };
1695 + }
1696 + getDefaultElements() {
1697 + const selectors = this.getSettings("selectors");
1698 + return { $elements: this.$element.find(selectors.elements).not(this.$element.find(selectors.nestedDocumentElements)) };
1699 + }
1700 + getDocumentSettings(setting) {
1701 + let elementSettings;
1702 + if (this.isEdit) {
1703 + elementSettings = {};
1704 + const settings = elementor.settings.page.model;
1705 + jQuery.each(settings.getActiveControls(), (controlKey) => {
1706 + elementSettings[controlKey] = settings.attributes[controlKey];
1707 + });
1708 + } else elementSettings = this.$element.data("elementor-settings") || {};
1709 + return this.getItems(elementSettings, setting);
1710 + }
1711 + runElementsHandlers() {
1712 + this.elements.$elements.each((index, element) => setTimeout(() => elementorFrontend.elementsHandler.runReadyTrigger(element)));
1713 + }
1714 + onInit() {
1715 + this.$element = this.getSettings("$element");
1716 + super.onInit();
1717 + this.isEdit = this.$element.hasClass(this.getSettings("classes.editMode"));
1718 + if (this.isEdit) elementor.on("document:loaded", () => {
1719 + elementor.settings.page.model.on("change", this.onSettingsChange.bind(this));
1720 + });
1721 + else this.runElementsHandlers();
1722 + }
1723 + onSettingsChange() {}
1724 + };
1725 + exports.default = _default;
1726 + }));
1329 1727
1728 +//#endregion
1729 +//#region assets/dev/js/frontend/documents-manager.js
1730 + var require_documents_manager = /* @__PURE__ */ __commonJSMin(((exports) => {
1731 + var _interopRequireDefault = require_interopRequireDefault();
1732 + Object.defineProperty(exports, "__esModule", { value: true });
1733 + exports.default = void 0;
1734 + var _document = _interopRequireDefault(require_document());
1735 + var _default = class extends elementorModules.ViewModule {
1736 + constructor(...args) {
1737 + super(...args);
1738 + this.documents = {};
1739 + this.initDocumentClasses();
1740 + this.attachDocumentsClasses();
1741 + }
1742 + getDefaultSettings() {
1743 + return { selectors: { document: ".elementor" } };
1744 + }
1745 + getDefaultElements() {
1746 + const selectors = this.getSettings("selectors");
1747 + return { $documents: jQuery(selectors.document) };
1748 + }
1749 + initDocumentClasses() {
1750 + this.documentClasses = { base: _document.default };
1751 + elementorFrontend.hooks.doAction("elementor/frontend/documents-manager/init-classes", this);
1752 + }
1753 + addDocumentClass(documentType, documentClass) {
1754 + this.documentClasses[documentType] = documentClass;
1755 + }
1756 + attachDocumentsClasses() {
1757 + this.elements.$documents.each((index, document) => this.attachDocumentClass(jQuery(document)));
1758 + }
1759 + attachDocumentClass($document) {
1760 + const documentData = $document.data();
1761 + const documentID = documentData.elementorId;
1762 + const documentType = documentData.elementorType;
1763 + const DocumentClass = this.documentClasses[documentType] || this.documentClasses.base;
1764 + this.documents[documentID] = new DocumentClass({
1765 + $element: $document,
1766 + id: documentID
1767 + });
1768 + }
1769 + };
1770 + exports.default = _default;
1771 + }));
1330 1772
1773 +//#endregion
1774 +//#region core/common/assets/js/utils/storage.js
1775 + var require_storage = /* @__PURE__ */ __commonJSMin(((exports) => {
1776 + Object.defineProperty(exports, "__esModule", { value: true });
1777 + exports.default = void 0;
1778 + require_esnext_iterator_constructor();
1779 + require_esnext_iterator_for_each();
1780 + var _default = class extends elementorModules.Module {
1781 + get(key, options) {
1782 + options = options || {};
1783 + let storage;
1784 + try {
1785 + storage = options.session ? sessionStorage : localStorage;
1786 + } catch (e) {
1787 + return key ? void 0 : {};
1788 + }
1789 + let elementorStorage = storage.getItem("elementor");
1790 + if (elementorStorage) elementorStorage = JSON.parse(elementorStorage);
1791 + else elementorStorage = {};
1792 + if (!elementorStorage.__expiration) elementorStorage.__expiration = {};
1793 + const expiration = elementorStorage.__expiration;
1794 + let expirationToCheck = [];
1795 + if (key) {
1796 + if (expiration[key]) expirationToCheck = [key];
1797 + } else expirationToCheck = Object.keys(expiration);
1798 + let entryExpired = false;
1799 + expirationToCheck.forEach((expirationKey) => {
1800 + if (new Date(expiration[expirationKey]) < /* @__PURE__ */ new Date()) {
1801 + delete elementorStorage[expirationKey];
1802 + delete expiration[expirationKey];
1803 + entryExpired = true;
1804 + }
1805 + });
1806 + if (entryExpired) this.save(elementorStorage, options.session);
1807 + if (key) return elementorStorage[key];
1808 + return elementorStorage;
1809 + }
1810 + set(key, value, options) {
1811 + options = options || {};
1812 + const elementorStorage = this.get(null, options);
1813 + elementorStorage[key] = value;
1814 + if (options.lifetimeInSeconds) {
1815 + const date = /* @__PURE__ */ new Date();
1816 + date.setTime(date.getTime() + options.lifetimeInSeconds * 1e3);
1817 + elementorStorage.__expiration[key] = date.getTime();
1818 + }
1819 + this.save(elementorStorage, options.session);
1820 + }
1821 + save(object, session) {
1822 + let storage;
1823 + try {
1824 + storage = session ? sessionStorage : localStorage;
1825 + } catch (e) {
1826 + return;
1827 + }
1828 + storage.setItem("elementor", JSON.stringify(object));
1829 + }
1830 + };
1831 + exports.default = _default;
1832 + }));
1331 1833
1332 -Object.defineProperty(exports, "__esModule", ({
1333 - value: true
1334 -}));
1335 -exports.isScrollSnapActive = exports.escapeHTML = void 0;
1336 -// Escape HTML special chars to prevent XSS.
1337 -const escapeHTML = str => {
1338 - const specialChars = {
1339 - '&': '&amp;',
1340 - '<': '&lt;',
1341 - '>': '&gt;',
1342 - "'": '&#39;',
1343 - '"': '&quot;'
1344 - };
1345 - return str.replace(/[&<>'"]/g, tag => specialChars[tag] || tag);
1346 -};
1834 +//#endregion
1835 +//#region core/common/assets/js/utils/environment.js
1836 + var require_environment = /* @__PURE__ */ __commonJSMin(((exports) => {
1837 + Object.defineProperty(exports, "__esModule", { value: true });
1838 + exports.default = void 0;
1839 + var matchUserAgent = (UserAgentStr) => {
1840 + return userAgent.indexOf(UserAgentStr) >= 0;
1841 + };
1842 + var userAgent = navigator.userAgent;
1843 + var isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(" OPR/");
1844 + var isFirefox = matchUserAgent("Firefox");
1845 + var isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || ((p) => {
1846 + return "[object SafariRemoteNotification]" === p.toString();
1847 + })(!window.safari || typeof safari !== "undefined" && safari.pushNotification);
1848 + var isIE = /Trident|MSIE/.test(userAgent) && !!document.documentMode;
1849 + var isEdge = !isIE && !!window.StyleMedia || matchUserAgent("Edg");
1850 + var isChrome = !!window.chrome && matchUserAgent("Chrome") && !(isEdge || isOpera);
1851 + var isBlink = matchUserAgent("Chrome") && !!window.CSS;
1852 + var isAppleWebkit = matchUserAgent("AppleWebKit") && !isBlink;
1853 + var environment = {
1854 + isTouchDevice: "ontouchstart" in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0,
1855 + appleWebkit: isAppleWebkit,
1856 + blink: isBlink,
1857 + chrome: isChrome,
1858 + edge: isEdge,
1859 + firefox: isFirefox,
1860 + ie: isIE,
1861 + mac: matchUserAgent("Macintosh"),
1862 + opera: isOpera,
1863 + safari: isSafari,
1864 + webkit: matchUserAgent("AppleWebKit")
1865 + };
1866 + exports.default = environment;
1867 + }));
1347 1868
1348 -// Check if Scroll-Snap is active.
1349 -exports.escapeHTML = escapeHTML;
1350 -const isScrollSnapActive = () => {
1351 - const scrollSnapStatus = elementorFrontend.isEditMode() ? elementor.settings.page.model.attributes?.scroll_snap : elementorFrontend.config.settings.page?.scroll_snap;
1352 - return 'yes' === scrollSnapStatus ? true : false;
1353 -};
1354 -exports.isScrollSnapActive = isScrollSnapActive;
1869 +//#endregion
1870 +//#region assets/dev/js/frontend/utils/video-api/base-loader.js
1871 + var require_base_loader = /* @__PURE__ */ __commonJSMin(((exports) => {
1872 + Object.defineProperty(exports, "__esModule", { value: true });
1873 + exports.default = void 0;
1874 + var BaseLoader = class extends elementorModules.ViewModule {
1875 + getDefaultSettings() {
1876 + return {
1877 + isInserted: false,
1878 + selectors: { firstScript: "script:first" }
1879 + };
1880 + }
1881 + getDefaultElements() {
1882 + return { $firstScript: jQuery(this.getSettings("selectors.firstScript")) };
1883 + }
1884 + insertAPI() {
1885 + this.elements.$firstScript.before(jQuery("<script>", { src: this.getApiURL() }));
1886 + this.setSettings("isInserted", true);
1887 + }
1888 + getVideoIDFromURL(url) {
1889 + const videoIDParts = url.match(this.getURLRegex());
1890 + return videoIDParts && videoIDParts[1];
1891 + }
1892 + onApiReady(callback) {
1893 + if (!this.getSettings("isInserted")) this.insertAPI();
1894 + if (this.isApiLoaded()) callback(this.getApiObject());
1895 + else setTimeout(() => {
1896 + this.onApiReady(callback);
1897 + }, 350);
1898 + }
1899 + getAutoplayURL(videoURL) {
1900 + return videoURL.replace("&autoplay=0", "") + "&autoplay=1";
1901 + }
1902 + };
1903 + exports.default = BaseLoader;
1904 + }));
1355 1905
1356 -/***/ }),
1906 +//#endregion
1907 +//#region assets/dev/js/frontend/utils/video-api/youtube-loader.js
1908 + var require_youtube_loader = /* @__PURE__ */ __commonJSMin(((exports) => {
1909 + var _interopRequireDefault = require_interopRequireDefault();
1910 + Object.defineProperty(exports, "__esModule", { value: true });
1911 + exports.default = void 0;
1912 + var _baseLoader = _interopRequireDefault(require_base_loader());
1913 + var YoutubeLoader = class extends _baseLoader.default {
1914 + getApiURL() {
1915 + return "https://www.youtube.com/iframe_api";
1916 + }
1917 + getURLRegex() {
1918 + return /^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user|shorts)\/))([^?&"'>]+)/;
1919 + }
1920 + isApiLoaded() {
1921 + return window.YT && YT.loaded;
1922 + }
1923 + getApiObject() {
1924 + return YT;
1925 + }
1926 + };
1927 + exports.default = YoutubeLoader;
1928 + }));
1357 1929
1358 -/***/ "../assets/dev/js/frontend/utils/video-api/base-loader.js":
1359 -/*!****************************************************************!*\
1360 - !*** ../assets/dev/js/frontend/utils/video-api/base-loader.js ***!
1361 - \****************************************************************/
1362 -/***/ ((__unused_webpack_module, exports) => {
1930 +//#endregion
1931 +//#region assets/dev/js/frontend/utils/video-api/vimeo-loader.js
1932 + var require_vimeo_loader = /* @__PURE__ */ __commonJSMin(((exports) => {
1933 + var _interopRequireDefault = require_interopRequireDefault();
1934 + Object.defineProperty(exports, "__esModule", { value: true });
1935 + exports.default = void 0;
1936 + var _baseLoader = _interopRequireDefault(require_base_loader());
1937 + var VimeoLoader = class extends _baseLoader.default {
1938 + getApiURL() {
1939 + return "https://player.vimeo.com/api/player.js";
1940 + }
1941 + getURLRegex() {
1942 + return /^(?:https?:\/\/)?(?:www|player\.)?(?:vimeo\.com\/)?(?:video\/|external\/)?(\d+)([^.?&#"'>]?)/;
1943 + }
1944 + isApiLoaded() {
1945 + return window.Vimeo;
1946 + }
1947 + getApiObject() {
1948 + return Vimeo;
1949 + }
1950 + getAutoplayURL(videoURL) {
1951 + const timeMatch = videoURL.match(/#t=[^&]*/);
1952 + return videoURL.replace(timeMatch[0], "") + timeMatch;
1953 + }
1954 + };
1955 + exports.default = VimeoLoader;
1956 + }));
1363 1957
1958 +//#endregion
1959 +//#region \0@oxc-project+runtime@0.140.0/helpers/esm/asyncToGenerator.js
1960 + function asyncGeneratorStep(n, t, e, r, o, a, c) {
1961 + try {
1962 + var i = n[a](c);
1963 + var u = i.value;
1964 + } catch (n) {
1965 + e(n);
1966 + return;
1967 + }
1968 + i.done ? t(u) : Promise.resolve(u).then(r, o);
1969 + }
1970 + function _asyncToGenerator(n) {
1971 + return function() {
1972 + var t = this;
1973 + var e = arguments;
1974 + return new Promise(function(r, o) {
1975 + var a = n.apply(t, e);
1976 + function _next(n) {
1977 + asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
1978 + }
1979 + function _throw(n) {
1980 + asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
1981 + }
1982 + _next(void 0);
1983 + });
1984 + };
1985 + }
1986 + var init_asyncToGenerator = __esmMin((() => {}));
1364 1987
1988 +//#endregion
1989 +//#region node_modules/core-js/internals/function-uncurry-this-accessor.js
1990 + var require_function_uncurry_this_accessor = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1991 + var uncurryThis = require_function_uncurry_this();
1992 + var aCallable = require_a_callable();
1993 + module.exports = function(object, key, method) {
1994 + try {
1995 + return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));
1996 + } catch (error) {}
1997 + };
1998 + }));
1365 1999
1366 -Object.defineProperty(exports, "__esModule", ({
1367 - value: true
1368 -}));
1369 -exports["default"] = void 0;
1370 -class BaseLoader extends elementorModules.ViewModule {
1371 - getDefaultSettings() {
1372 - return {
1373 - isInserted: false,
1374 - selectors: {
1375 - firstScript: 'script:first'
1376 - }
1377 - };
1378 - }
1379 - getDefaultElements() {
1380 - return {
1381 - $firstScript: jQuery(this.getSettings('selectors.firstScript'))
1382 - };
1383 - }
1384 - insertAPI() {
1385 - this.elements.$firstScript.before(jQuery('<script>', {
1386 - src: this.getApiURL()
1387 - }));
1388 - this.setSettings('isInserted', true);
1389 - }
1390 - getVideoIDFromURL(url) {
1391 - const videoIDParts = url.match(this.getURLRegex());
1392 - return videoIDParts && videoIDParts[1];
1393 - }
1394 - onApiReady(callback) {
1395 - if (!this.getSettings('isInserted')) {
1396 - this.insertAPI();
1397 - }
1398 - if (this.isApiLoaded()) {
1399 - callback(this.getApiObject());
1400 - } else {
1401 - // If not ready check again by timeout..
1402 - setTimeout(() => {
1403 - this.onApiReady(callback);
1404 - }, 350);
1405 - }
1406 - }
1407 - getAutoplayURL(videoURL) {
1408 - return videoURL.replace('&autoplay=0', '') + '&autoplay=1';
1409 - }
1410 -}
1411 -exports["default"] = BaseLoader;
2000 +//#endregion
2001 +//#region node_modules/core-js/internals/is-possible-prototype.js
2002 + var require_is_possible_prototype = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2003 + var isObject = require_is_object();
2004 + module.exports = function(argument) {
2005 + return isObject(argument) || argument === null;
2006 + };
2007 + }));
1412 2008
1413 -/***/ }),
2009 +//#endregion
2010 +//#region node_modules/core-js/internals/a-possible-prototype.js
2011 + var require_a_possible_prototype = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2012 + var isPossiblePrototype = require_is_possible_prototype();
2013 + var $String = String;
2014 + var $TypeError = TypeError;
2015 + module.exports = function(argument) {
2016 + if (isPossiblePrototype(argument)) return argument;
2017 + throw new $TypeError("Can't set " + $String(argument) + " as a prototype");
2018 + };
2019 + }));
1414 2020
1415 -/***/ "../assets/dev/js/frontend/utils/video-api/vimeo-loader.js":
1416 -/*!*****************************************************************!*\
1417 - !*** ../assets/dev/js/frontend/utils/video-api/vimeo-loader.js ***!
1418 - \*****************************************************************/
1419 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2021 +//#endregion
2022 +//#region node_modules/core-js/internals/object-set-prototype-of.js
2023 + var require_object_set_prototype_of = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2024 + var uncurryThisAccessor = require_function_uncurry_this_accessor();
2025 + var isObject = require_is_object();
2026 + var requireObjectCoercible = require_require_object_coercible();
2027 + var aPossiblePrototype = require_a_possible_prototype();
2028 + module.exports = Object.setPrototypeOf || ("__proto__" in {} ? function() {
2029 + var CORRECT_SETTER = false;
2030 + var test = {};
2031 + var setter;
2032 + try {
2033 + setter = uncurryThisAccessor(Object.prototype, "__proto__", "set");
2034 + setter(test, []);
2035 + CORRECT_SETTER = test instanceof Array;
2036 + } catch (error) {}
2037 + return function setPrototypeOf(O, proto) {
2038 + requireObjectCoercible(O);
2039 + aPossiblePrototype(proto);
2040 + if (!isObject(O)) return O;
2041 + if (CORRECT_SETTER) setter(O, proto);
2042 + else O.__proto__ = proto;
2043 + return O;
2044 + };
2045 + }() : void 0);
2046 + }));
1420 2047
2048 +//#endregion
2049 +//#region node_modules/core-js/internals/inherit-if-required.js
2050 + var require_inherit_if_required = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2051 + var isCallable = require_is_callable();
2052 + var isObject = require_is_object();
2053 + var setPrototypeOf = require_object_set_prototype_of();
2054 + module.exports = function($this, dummy, Wrapper) {
2055 + var NewTarget;
2056 + var NewTargetPrototype;
2057 + if (setPrototypeOf && isCallable(NewTarget = dummy.constructor) && NewTarget !== Wrapper && isObject(NewTargetPrototype = NewTarget.prototype) && NewTargetPrototype !== Wrapper.prototype) setPrototypeOf($this, NewTargetPrototype);
2058 + return $this;
2059 + };
2060 + }));
1421 2061
2062 +//#endregion
2063 +//#region node_modules/core-js/internals/to-string.js
2064 + var require_to_string = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2065 + var classof = require_classof();
2066 + var $String = String;
2067 + module.exports = function(argument) {
2068 + if (classof(argument) === "Symbol") throw new TypeError("Cannot convert a Symbol value to a string");
2069 + return $String(argument);
2070 + };
2071 + }));
1422 2072
1423 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1424 -Object.defineProperty(exports, "__esModule", ({
1425 - value: true
1426 -}));
1427 -exports["default"] = void 0;
1428 -var _baseLoader = _interopRequireDefault(__webpack_require__(/*! ./base-loader */ "../assets/dev/js/frontend/utils/video-api/base-loader.js"));
1429 -class VimeoLoader extends _baseLoader.default {
1430 - getApiURL() {
1431 - return 'https://player.vimeo.com/api/player.js';
1432 - }
1433 - getURLRegex() {
1434 - return /^(?:https?:\/\/)?(?:www|player\.)?(?:vimeo\.com\/)?(?:video\/|external\/)?(\d+)([^.?&#"'>]?)/;
1435 - }
1436 - isApiLoaded() {
1437 - return window.Vimeo;
1438 - }
1439 - getApiObject() {
1440 - return Vimeo;
1441 - }
1442 - getAutoplayURL(videoURL) {
1443 - // Vimeo requires the '#t=' param to be last in the URL.
1444 - const timeMatch = videoURL.match(/#t=[^&]*/);
1445 - return videoURL.replace(timeMatch[0], '') + timeMatch;
1446 - }
1447 -}
1448 -exports["default"] = VimeoLoader;
2073 +//#endregion
2074 +//#region node_modules/core-js/internals/normalize-string-argument.js
2075 + var require_normalize_string_argument = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2076 + var toString = require_to_string();
2077 + module.exports = function(argument, $default) {
2078 + return argument === void 0 ? arguments.length < 2 ? "" : $default : toString(argument);
2079 + };
2080 + }));
1449 2081
1450 -/***/ }),
2082 +//#endregion
2083 +//#region node_modules/core-js/internals/dom-exception-constants.js
2084 + var require_dom_exception_constants = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2085 + module.exports = {
2086 + IndexSizeError: {
2087 + s: "INDEX_SIZE_ERR",
2088 + c: 1,
2089 + m: 1
2090 + },
2091 + DOMStringSizeError: {
2092 + s: "DOMSTRING_SIZE_ERR",
2093 + c: 2,
2094 + m: 0
2095 + },
2096 + HierarchyRequestError: {
2097 + s: "HIERARCHY_REQUEST_ERR",
2098 + c: 3,
2099 + m: 1
2100 + },
2101 + WrongDocumentError: {
2102 + s: "WRONG_DOCUMENT_ERR",
2103 + c: 4,
2104 + m: 1
2105 + },
2106 + InvalidCharacterError: {
2107 + s: "INVALID_CHARACTER_ERR",
2108 + c: 5,
2109 + m: 1
2110 + },
2111 + NoDataAllowedError: {
2112 + s: "NO_DATA_ALLOWED_ERR",
2113 + c: 6,
2114 + m: 0
2115 + },
2116 + NoModificationAllowedError: {
2117 + s: "NO_MODIFICATION_ALLOWED_ERR",
2118 + c: 7,
2119 + m: 1
2120 + },
2121 + NotFoundError: {
2122 + s: "NOT_FOUND_ERR",
2123 + c: 8,
2124 + m: 1
2125 + },
2126 + NotSupportedError: {
2127 + s: "NOT_SUPPORTED_ERR",
2128 + c: 9,
2129 + m: 1
2130 + },
2131 + InUseAttributeError: {
2132 + s: "INUSE_ATTRIBUTE_ERR",
2133 + c: 10,
2134 + m: 1
2135 + },
2136 + InvalidStateError: {
2137 + s: "INVALID_STATE_ERR",
2138 + c: 11,
2139 + m: 1
2140 + },
2141 + SyntaxError: {
2142 + s: "SYNTAX_ERR",
2143 + c: 12,
2144 + m: 1
2145 + },
2146 + InvalidModificationError: {
2147 + s: "INVALID_MODIFICATION_ERR",
2148 + c: 13,
2149 + m: 1
2150 + },
2151 + NamespaceError: {
2152 + s: "NAMESPACE_ERR",
2153 + c: 14,
2154 + m: 1
2155 + },
2156 + InvalidAccessError: {
2157 + s: "INVALID_ACCESS_ERR",
2158 + c: 15,
2159 + m: 1
2160 + },
2161 + ValidationError: {
2162 + s: "VALIDATION_ERR",
2163 + c: 16,
2164 + m: 0
2165 + },
2166 + TypeMismatchError: {
2167 + s: "TYPE_MISMATCH_ERR",
2168 + c: 17,
2169 + m: 1
2170 + },
2171 + SecurityError: {
2172 + s: "SECURITY_ERR",
2173 + c: 18,
2174 + m: 1
2175 + },
2176 + NetworkError: {
2177 + s: "NETWORK_ERR",
2178 + c: 19,
2179 + m: 1
2180 + },
2181 + AbortError: {
2182 + s: "ABORT_ERR",
2183 + c: 20,
2184 + m: 1
2185 + },
2186 + URLMismatchError: {
2187 + s: "URL_MISMATCH_ERR",
2188 + c: 21,
2189 + m: 1
2190 + },
2191 + QuotaExceededError: {
2192 + s: "QUOTA_EXCEEDED_ERR",
2193 + c: 22,
2194 + m: 1
2195 + },
2196 + TimeoutError: {
2197 + s: "TIMEOUT_ERR",
2198 + c: 23,
2199 + m: 1
2200 + },
2201 + InvalidNodeTypeError: {
2202 + s: "INVALID_NODE_TYPE_ERR",
2203 + c: 24,
2204 + m: 1
2205 + },
2206 + DataCloneError: {
2207 + s: "DATA_CLONE_ERR",
2208 + c: 25,
2209 + m: 1
2210 + }
2211 + };
2212 + }));
1451 2213
1452 -/***/ "../assets/dev/js/frontend/utils/video-api/youtube-loader.js":
1453 -/*!*******************************************************************!*\
1454 - !*** ../assets/dev/js/frontend/utils/video-api/youtube-loader.js ***!
1455 - \*******************************************************************/
1456 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2214 +//#endregion
2215 +//#region node_modules/core-js/internals/error-stack-clear.js
2216 + var require_error_stack_clear = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2217 + var uncurryThis = require_function_uncurry_this();
2218 + var $Error = Error;
2219 + var replace = uncurryThis("".replace);
2220 + var TEST = (function(arg) {
2221 + return String(new $Error(arg).stack);
2222 + })("zxcasd");
2223 + var V8_OR_CHAKRA_STACK_ENTRY = /\n\s*at [^:]*:[^\n]*/;
2224 + var IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);
2225 + module.exports = function(stack, dropEntries) {
2226 + if (IS_V8_OR_CHAKRA_STACK && typeof stack == "string" && !$Error.prepareStackTrace) while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, "");
2227 + return stack;
2228 + };
2229 + }));
1457 2230
2231 +//#endregion
2232 +//#region node_modules/core-js/modules/web.dom-exception.stack.js
2233 + var require_web_dom_exception_stack = /* @__PURE__ */ __commonJSMin((() => {
2234 + var $ = require_export();
2235 + var globalThis = require_global_this();
2236 + var getBuiltIn = require_get_built_in();
2237 + var createPropertyDescriptor = require_create_property_descriptor();
2238 + var defineProperty = require_object_define_property().f;
2239 + var hasOwn = require_has_own_property();
2240 + var anInstance = require_an_instance();
2241 + var inheritIfRequired = require_inherit_if_required();
2242 + var normalizeStringArgument = require_normalize_string_argument();
2243 + var DOMExceptionConstants = require_dom_exception_constants();
2244 + var clearErrorStack = require_error_stack_clear();
2245 + var DESCRIPTORS = require_descriptors();
2246 + var IS_PURE = require_is_pure();
2247 + var DOM_EXCEPTION = "DOMException";
2248 + var Error = getBuiltIn("Error");
2249 + var NativeDOMException = getBuiltIn(DOM_EXCEPTION);
2250 + var $DOMException = function DOMException() {
2251 + anInstance(this, DOMExceptionPrototype);
2252 + var argumentsLength = arguments.length;
2253 + var message = normalizeStringArgument(argumentsLength < 1 ? void 0 : arguments[0]);
2254 + var that = new NativeDOMException(message, normalizeStringArgument(argumentsLength < 2 ? void 0 : arguments[1], "Error"));
2255 + var error = new Error(message);
2256 + error.name = DOM_EXCEPTION;
2257 + defineProperty(that, "stack", createPropertyDescriptor(1, clearErrorStack(error.stack, 1)));
2258 + inheritIfRequired(that, this, $DOMException);
2259 + return that;
2260 + };
2261 + var DOMExceptionPrototype = $DOMException.prototype = NativeDOMException.prototype;
2262 + var ERROR_HAS_STACK = "stack" in new Error(DOM_EXCEPTION);
2263 + var DOM_EXCEPTION_HAS_STACK = "stack" in new NativeDOMException(1, 2);
2264 + var descriptor = NativeDOMException && DESCRIPTORS && Object.getOwnPropertyDescriptor(globalThis, DOM_EXCEPTION);
2265 + var BUGGY_DESCRIPTOR = !!descriptor && !(descriptor.writable && descriptor.configurable);
2266 + var FORCED_CONSTRUCTOR = ERROR_HAS_STACK && !BUGGY_DESCRIPTOR && !DOM_EXCEPTION_HAS_STACK;
2267 + $({
2268 + global: true,
2269 + constructor: true,
2270 + forced: IS_PURE || FORCED_CONSTRUCTOR
2271 + }, { DOMException: FORCED_CONSTRUCTOR ? $DOMException : NativeDOMException });
2272 + var PolyfilledDOMException = getBuiltIn(DOM_EXCEPTION);
2273 + var PolyfilledDOMExceptionPrototype = PolyfilledDOMException.prototype;
2274 + if (PolyfilledDOMExceptionPrototype.constructor !== PolyfilledDOMException) {
2275 + if (!IS_PURE) defineProperty(PolyfilledDOMExceptionPrototype, "constructor", createPropertyDescriptor(1, PolyfilledDOMException));
2276 + for (var key in DOMExceptionConstants) if (hasOwn(DOMExceptionConstants, key)) {
2277 + var constant = DOMExceptionConstants[key];
2278 + var constantName = constant.s;
2279 + if (!hasOwn(PolyfilledDOMException, constantName)) defineProperty(PolyfilledDOMException, constantName, createPropertyDescriptor(6, constant.c));
2280 + }
2281 + }
2282 + }));
1458 2283
2284 +//#endregion
2285 +//#region assets/dev/js/frontend/utils/url-actions.js
2286 + var require_url_actions = /* @__PURE__ */ __commonJSMin(((exports) => {
2287 + init_asyncToGenerator();
2288 + Object.defineProperty(exports, "__esModule", { value: true });
2289 + exports.default = void 0;
2290 + require_web_dom_exception_stack();
2291 + var _default = class extends elementorModules.ViewModule {
2292 + getDefaultSettings() {
2293 + return { selectors: { links: "a[href^=\"%23elementor-action\"], a[href^=\"#elementor-action\"]" } };
2294 + }
2295 + bindEvents() {
2296 + elementorFrontend.elements.$document.on("click", this.getSettings("selectors.links"), this.runLinkAction.bind(this));
2297 + }
2298 + initActions() {
2299 + this.actions = { lightbox: function() {
2300 + var _ref = _asyncToGenerator(function* (settings) {
2301 + const lightbox = yield elementorFrontend.utils.lightbox;
2302 + if (settings.slideshow) lightbox.openSlideshow(settings.slideshow, settings.url);
2303 + else {
2304 + if (settings.id) settings.type = "image";
2305 + lightbox.showModal(settings);
2306 + }
2307 + });
2308 + return function lightbox(_x) {
2309 + return _ref.apply(this, arguments);
2310 + };
2311 + }() };
2312 + }
2313 + addAction(name, callback) {
2314 + this.actions[name] = callback;
2315 + }
2316 + runAction(url, ...restArgs) {
2317 + url = decodeURI(url);
2318 + url = decodeURIComponent(url);
2319 + const actionMatch = url.match(/action=(.+?)&/);
2320 + if (!actionMatch) return;
2321 + const action = this.actions[actionMatch[1]];
2322 + if (!action) return;
2323 + let settings = {};
2324 + const settingsMatch = url.match(/settings=(.+)/);
2325 + if (settingsMatch) settings = JSON.parse(atob(settingsMatch[1]));
2326 + settings.previousEvent = event;
2327 + action(settings, ...restArgs);
2328 + }
2329 + runLinkAction(event) {
2330 + event.preventDefault();
2331 + this.runAction(jQuery(event.currentTarget).attr("href"), event);
2332 + }
2333 + runHashAction() {
2334 + if (!location.hash) return;
2335 + const elementWithHash = document.querySelector(`[data-e-action-hash="${location.hash}"], a[href*="${location.hash}"]`);
2336 + if (elementWithHash) this.runAction(elementWithHash.getAttribute("data-e-action-hash"));
2337 + }
2338 + createActionHash(action, settings) {
2339 + return encodeURIComponent(`#elementor-action:action=${action}&settings=${btoa(JSON.stringify(settings))}`);
2340 + }
2341 + onInit() {
2342 + super.onInit();
2343 + this.initActions();
2344 + elementorFrontend.on("components:init", this.runHashAction.bind(this));
2345 + }
2346 + };
2347 + exports.default = _default;
2348 + }));
1459 2349
1460 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1461 -Object.defineProperty(exports, "__esModule", ({
1462 - value: true
1463 -}));
1464 -exports["default"] = void 0;
1465 -var _baseLoader = _interopRequireDefault(__webpack_require__(/*! ./base-loader */ "../assets/dev/js/frontend/utils/video-api/base-loader.js"));
1466 -class YoutubeLoader extends _baseLoader.default {
1467 - getApiURL() {
1468 - return 'https://www.youtube.com/iframe_api';
1469 - }
1470 - getURLRegex() {
1471 - return /^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user|shorts)\/))([^?&"'>]+)/;
1472 - }
1473 - isApiLoaded() {
1474 - return window.YT && YT.loaded;
1475 - }
1476 - getApiObject() {
1477 - return YT;
1478 - }
1479 -}
1480 -exports["default"] = YoutubeLoader;
2350 +//#endregion
2351 +//#region assets/dev/js/frontend/utils/swiper.js
2352 + var require_swiper = /* @__PURE__ */ __commonJSMin(((exports) => {
2353 + Object.defineProperty(exports, "__esModule", { value: true });
2354 + exports.default = void 0;
2355 + require_esnext_iterator_constructor();
2356 + require_esnext_iterator_for_each();
2357 + var SwiperHandler = class {
2358 + constructor(container, config) {
2359 + var _container$closest;
2360 + var _container$closest2;
2361 + this.config = config;
2362 + if (this.config.breakpoints) this.config = this.adjustConfig(config);
2363 + if (container instanceof jQuery) container = container[0];
2364 + (_container$closest = container.closest(".elementor-widget-wrap")) === null || _container$closest === void 0 || _container$closest.classList.add("e-swiper-container");
2365 + (_container$closest2 = container.closest(".elementor-widget")) === null || _container$closest2 === void 0 || _container$closest2.classList.add("e-widget-swiper");
2366 + return new Promise((resolve) => {
2367 + if ("undefined" === typeof Swiper) {
2368 + elementorFrontend.utils.assetsLoader.load("script", "swiper").then(() => resolve(this.createSwiperInstance(container, this.config)));
2369 + return;
2370 + }
2371 + if ("function" === typeof Swiper && "undefined" === typeof window.Swiper) window.Swiper = Swiper;
2372 + resolve(this.createSwiperInstance(container, this.config));
2373 + });
2374 + }
2375 + createSwiperInstance(container, config) {
2376 + const SwiperSource = window.Swiper;
2377 + SwiperSource.prototype.adjustConfig = this.adjustConfig;
2378 + config = this.applyMotionPreferences(config);
2379 + return new SwiperSource(container, config);
2380 + }
2381 + adjustConfig(config) {
2382 + if (!config.handleElementorBreakpoints) return config;
2383 + const elementorBreakpoints = elementorFrontend.config.responsive.activeBreakpoints;
2384 + const elementorBreakpointValues = elementorFrontend.breakpoints.getBreakpointValues();
2385 + Object.keys(config.breakpoints).forEach((configBPKey) => {
2386 + const configBPKeyInt = parseInt(configBPKey);
2387 + let breakpointToUpdate;
2388 + if (configBPKeyInt === elementorBreakpoints.mobile.value || configBPKeyInt + 1 === elementorBreakpoints.mobile.value) breakpointToUpdate = 0;
2389 + else if (elementorBreakpoints.widescreen && (configBPKeyInt === elementorBreakpoints.widescreen.value || configBPKeyInt + 1 === elementorBreakpoints.widescreen.value)) breakpointToUpdate = configBPKeyInt;
2390 + else {
2391 + const currentBPIndexInElementorBPs = elementorBreakpointValues.findIndex((elementorBP) => {
2392 + return configBPKeyInt === elementorBP || configBPKeyInt + 1 === elementorBP;
2393 + });
2394 + breakpointToUpdate = elementorBreakpointValues[currentBPIndexInElementorBPs - 1];
2395 + }
2396 + config.breakpoints[breakpointToUpdate] = config.breakpoints[configBPKey];
2397 + config.breakpoints[configBPKey] = {
2398 + slidesPerView: config.slidesPerView,
2399 + slidesPerGroup: config.slidesPerGroup ? config.slidesPerGroup : 1
2400 + };
2401 + });
2402 + return config;
2403 + }
2404 + applyMotionPreferences(config) {
2405 + if (!window.matchMedia("(prefers-reduced-motion: reduce)").matches) return config;
2406 + return Object.assign({}, config, {
2407 + speed: 0,
2408 + autoplay: false
2409 + });
2410 + }
2411 + };
2412 + exports.default = SwiperHandler;
2413 + }));
1481 2414
1482 -/***/ }),
2415 +//#endregion
2416 +//#region assets/dev/js/frontend/utils/lightbox/lightbox-manager.js
2417 + var require_lightbox_manager = /* @__PURE__ */ __commonJSMin(((exports) => {
2418 + init_asyncToGenerator();
2419 + Object.defineProperty(exports, "__esModule", { value: true });
2420 + exports.default = void 0;
2421 + require_esnext_iterator_constructor();
2422 + require_esnext_iterator_find();
2423 + var LightboxManager = class LightboxManager extends elementorModules.ViewModule {
2424 + static getLightbox() {
2425 + const lightboxPromise = new Promise((resolveLightbox) => {
2426 + __elementorLoadChunk("lightbox-lightbox").then(({ default: LightboxModule }) => resolveLightbox(new LightboxModule()));
2427 + });
2428 + const dialogScriptPromise = elementorFrontend.utils.assetsLoader.load("script", "dialog");
2429 + const dialogStylePromise = elementorFrontend.utils.assetsLoader.load("style", "dialog");
2430 + const shareLinkPromise = elementorFrontend.utils.assetsLoader.load("script", "share-link");
2431 + const swiperStylePromise = elementorFrontend.utils.assetsLoader.load("style", "swiper");
2432 + const lightboxStylePromise = elementorFrontend.utils.assetsLoader.load("style", "e-lightbox");
2433 + return Promise.all([
2434 + lightboxPromise,
2435 + dialogScriptPromise,
2436 + dialogStylePromise,
2437 + shareLinkPromise,
2438 + swiperStylePromise,
2439 + lightboxStylePromise
2440 + ]).then(() => lightboxPromise);
2441 + }
2442 + getDefaultSettings() {
2443 + return { selectors: {
2444 + links: "a, [data-elementor-lightbox]",
2445 + slideshow: "[data-elementor-lightbox-slideshow]"
2446 + } };
2447 + }
2448 + getDefaultElements() {
2449 + return {
2450 + $links: jQuery(this.getSettings("selectors.links")),
2451 + $slideshow: jQuery(this.getSettings("selectors.slideshow"))
2452 + };
2453 + }
2454 + isLightboxLink(element) {
2455 + if ("a" === element.tagName.toLowerCase() && (element.hasAttribute("download") || !/^[^?]+\.(png|jpe?g|gif|svg|webp|avif)(\?.*)?$/i.test(element.href)) && !element.dataset.elementorLightboxVideo) return false;
2456 + const generalOpenInLightbox = elementorFrontend.getKitSettings("global_image_lightbox");
2457 + const currentLinkOpenInLightbox = element.dataset.elementorOpenLightbox;
2458 + return "yes" === currentLinkOpenInLightbox || generalOpenInLightbox && "no" !== currentLinkOpenInLightbox;
2459 + }
2460 + isLightboxSlideshow() {
2461 + return 0 !== this.elements.$slideshow.length;
2462 + }
2463 + onLinkClick(event) {
2464 + var _this = this;
2465 + return _asyncToGenerator(function* () {
2466 + const element = event.currentTarget;
2467 + const $target = jQuery(event.target);
2468 + const editMode = elementorFrontend.isEditMode();
2469 + const isColorPickingMode = editMode && elementor.$previewContents.find("body").hasClass("elementor-editor__ui-state__color-picker");
2470 + const isClickInsideElementor = !!$target.closest(".elementor-edit-area").length;
2471 + if (!_this.isLightboxLink(element)) {
2472 + if (editMode && isClickInsideElementor) event.preventDefault();
2473 + return;
2474 + }
2475 + event.preventDefault();
2476 + if (editMode && !elementor.getPreferences("lightbox_in_editor")) return;
2477 + if (isColorPickingMode) return;
2478 + (yield LightboxManager.getLightbox()).createLightbox(element);
2479 + })();
2480 + }
2481 + bindEvents() {
2482 + elementorFrontend.elements.$document.on("click", this.getSettings("selectors.links"), (event) => this.onLinkClick(event));
2483 + }
2484 + onInit(...args) {
2485 + super.onInit(...args);
2486 + if (elementorFrontend.isEditMode()) return;
2487 + this.maybeActivateLightboxOnLink();
2488 + }
2489 + maybeActivateLightboxOnLink() {
2490 + this.elements.$links.each((index, element) => {
2491 + if (this.isLightboxLink(element)) {
2492 + LightboxManager.getLightbox();
2493 + return false;
2494 + }
2495 + });
2496 + }
2497 + };
2498 + exports.default = LightboxManager;
2499 + }));
1483 2500
1484 -/***/ "../assets/dev/js/public-path.js":
1485 -/*!***************************************!*\
1486 - !*** ../assets/dev/js/public-path.js ***!
1487 - \***************************************/
1488 -/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
2501 +//#endregion
2502 +//#region assets/dev/js/frontend/utils/assets-loader.js
2503 + var require_assets_loader = /* @__PURE__ */ __commonJSMin(((exports) => {
2504 + var _elementorFrontendCon;
2505 + Object.defineProperty(exports, "__esModule", { value: true });
2506 + exports.default = void 0;
2507 + var AssetsLoader = class AssetsLoader {
2508 + getScriptElement(src) {
2509 + const scriptElement = document.createElement("script");
2510 + scriptElement.src = src;
2511 + return scriptElement;
2512 + }
2513 + getStyleElement(src) {
2514 + const styleElement = document.createElement("link");
2515 + styleElement.rel = "stylesheet";
2516 + styleElement.href = src;
2517 + return styleElement;
2518 + }
2519 + load(type, key) {
2520 + const assetData = AssetsLoader.assets[type][key];
2521 + if (!assetData.loader) assetData.loader = this.isAssetLoaded(assetData, type) ? Promise.resolve(true) : this.loadAsset(assetData, type);
2522 + return assetData.loader;
2523 + }
2524 + isAssetLoaded(assetData, assetType) {
2525 + var _document$querySelect;
2526 + const filePath = "script" === assetType ? `script[src="${assetData.src}"]` : `link[href="${assetData.src}"]`;
2527 + return !!((_document$querySelect = document.querySelectorAll(filePath)) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.length);
2528 + }
2529 + loadAsset(assetData, assetType) {
2530 + return new Promise((resolve) => {
2531 + const element = "style" === assetType ? this.getStyleElement(assetData.src) : this.getScriptElement(assetData.src);
2532 + element.onload = () => resolve(true);
2533 + this.appendAsset(assetData, element);
2534 + });
2535 + }
2536 + appendAsset(assetData, element) {
2537 + const beforeElement = document.querySelector(assetData.before);
2538 + if (!!beforeElement) {
2539 + beforeElement.insertAdjacentElement("beforebegin", element);
2540 + return;
2541 + }
2542 + const parent = "head" === assetData.parent ? assetData.parent : "body";
2543 + document[parent].appendChild(element);
2544 + }
2545 + };
2546 + exports.default = AssetsLoader;
2547 + var assetsUrl = elementorFrontendConfig.urls.assets;
2548 + var fileSuffix = elementorFrontendConfig.environmentMode.isScriptDebug ? "" : ".min";
2549 + var pluginVersion = elementorFrontendConfig.version;
2550 + AssetsLoader.assets = {
2551 + script: {
2552 + dialog: { src: `${assetsUrl}lib/dialog/dialog${fileSuffix}.js?ver=4.9.3` },
2553 + "share-link": { src: `${assetsUrl}lib/share-link/share-link${fileSuffix}.js?ver=${pluginVersion}` },
2554 + swiper: { src: `${assetsUrl}lib/swiper/v8/swiper${fileSuffix}.js?ver=8.4.5` }
2555 + },
2556 + style: {
2557 + swiper: {
2558 + src: `${assetsUrl}lib/swiper/v8/css/swiper${fileSuffix}.css?ver=8.4.5`,
2559 + parent: "head"
2560 + },
2561 + "e-lightbox": { src: ((_elementorFrontendCon = elementorFrontendConfig) === null || _elementorFrontendCon === void 0 || (_elementorFrontendCon = _elementorFrontendCon.responsive) === null || _elementorFrontendCon === void 0 ? void 0 : _elementorFrontendCon.hasCustomBreakpoints) ? `${elementorFrontendConfig.urls.uploadUrl}/elementor/css/custom-lightbox.min.css?ver=${pluginVersion}` : `${assetsUrl}css/conditionals/lightbox${fileSuffix}.css?ver=${pluginVersion}` },
2562 + dialog: {
2563 + src: `${assetsUrl}css/conditionals/dialog${fileSuffix}.css?ver=${pluginVersion}`,
2564 + parent: "head",
2565 + before: "#elementor-frontend-css"
2566 + }
2567 + }
2568 + };
2569 + }));
1489 2570
2571 +//#endregion
2572 +//#region \0@oxc-project+runtime@0.140.0/helpers/esm/typeof.js
2573 + function _typeof(o) {
2574 + "@babel/helpers - typeof";
2575 + return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
2576 + return typeof o;
2577 + } : function(o) {
2578 + return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
2579 + }, _typeof(o);
2580 + }
2581 + var init_typeof = __esmMin((() => {}));
1490 2582
2583 +//#endregion
2584 +//#region \0@oxc-project+runtime@0.140.0/helpers/esm/toPrimitive.js
2585 + function toPrimitive(t, r) {
2586 + if ("object" != _typeof(t) || !t) return t;
2587 + var e = t[Symbol.toPrimitive];
2588 + if (void 0 !== e) {
2589 + var i = e.call(t, r || "default");
2590 + if ("object" != _typeof(i)) return i;
2591 + throw new TypeError("@@toPrimitive must return a primitive value.");
2592 + }
2593 + return ("string" === r ? String : Number)(t);
2594 + }
2595 + var init_toPrimitive = __esmMin((() => {
2596 + init_typeof();
2597 + }));
1491 2598
1492 -/* eslint-disable camelcase */
1493 -__webpack_require__.p = elementorFrontendConfig.urls.assets + 'js/';
2599 +//#endregion
2600 +//#region \0@oxc-project+runtime@0.140.0/helpers/esm/toPropertyKey.js
2601 + function toPropertyKey(t) {
2602 + var i = toPrimitive(t, "string");
2603 + return "symbol" == _typeof(i) ? i : i + "";
2604 + }
2605 + var init_toPropertyKey = __esmMin((() => {
2606 + init_typeof();
2607 + init_toPrimitive();
2608 + }));
1494 2609
1495 -/***/ }),
2610 +//#endregion
2611 +//#region \0@oxc-project+runtime@0.140.0/helpers/esm/defineProperty.js
2612 + function _defineProperty(e, r, t) {
2613 + return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
2614 + value: t,
2615 + enumerable: !0,
2616 + configurable: !0,
2617 + writable: !0
2618 + }) : e[r] = t, e;
2619 + }
2620 + var init_defineProperty = __esmMin((() => {
2621 + init_toPropertyKey();
2622 + }));
1496 2623
1497 -/***/ "../assets/dev/js/utils/breakpoints.js":
1498 -/*!*********************************************!*\
1499 - !*** ../assets/dev/js/utils/breakpoints.js ***!
1500 - \*********************************************/
1501 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2624 +//#endregion
2625 +//#region \0@oxc-project+runtime@0.140.0/helpers/esm/objectSpread2.js
2626 + function ownKeys(e, r) {
2627 + var t = Object.keys(e);
2628 + if (Object.getOwnPropertySymbols) {
2629 + var o = Object.getOwnPropertySymbols(e);
2630 + r && (o = o.filter(function(r) {
2631 + return Object.getOwnPropertyDescriptor(e, r).enumerable;
2632 + })), t.push.apply(t, o);
2633 + }
2634 + return t;
2635 + }
2636 + function _objectSpread2(e) {
2637 + for (var r = 1; r < arguments.length; r++) {
2638 + var t = null != arguments[r] ? arguments[r] : {};
2639 + r % 2 ? ownKeys(Object(t), !0).forEach(function(r) {
2640 + _defineProperty(e, r, t[r]);
2641 + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r) {
2642 + Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
2643 + });
2644 + }
2645 + return e;
2646 + }
2647 + var init_objectSpread2 = __esmMin((() => {
2648 + init_defineProperty();
2649 + }));
1502 2650
2651 +//#endregion
2652 +//#region node_modules/core-js/internals/is-array.js
2653 + var require_is_array = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2654 + var classof = require_classof_raw();
2655 + module.exports = Array.isArray || function isArray(argument) {
2656 + return classof(argument) === "Array";
2657 + };
2658 + }));
1503 2659
2660 +//#endregion
2661 +//#region node_modules/core-js/internals/array-set-length.js
2662 + var require_array_set_length = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2663 + var DESCRIPTORS = require_descriptors();
2664 + var isArray = require_is_array();
2665 + var $TypeError = TypeError;
2666 + var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
2667 + var SILENT_ON_NON_WRITABLE_LENGTH_SET = DESCRIPTORS && !function() {
2668 + if (this !== void 0) return true;
2669 + try {
2670 + Object.defineProperty([], "length", { writable: false }).length = 1;
2671 + } catch (error) {
2672 + return error instanceof TypeError;
2673 + }
2674 + }();
2675 + module.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function(O, length) {
2676 + if (isArray(O) && !getOwnPropertyDescriptor(O, "length").writable) throw new $TypeError("Cannot set read only .length");
2677 + return O.length = length;
2678 + } : function(O, length) {
2679 + return O.length = length;
2680 + };
2681 + }));
1504 2682
1505 -Object.defineProperty(exports, "__esModule", ({
1506 - value: true
1507 -}));
1508 -exports["default"] = void 0;
1509 -__webpack_require__(/*! core-js/modules/es.array.push.js */ "../node_modules/core-js/modules/es.array.push.js");
1510 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
1511 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
1512 -__webpack_require__(/*! core-js/modules/esnext.iterator.map.js */ "../node_modules/core-js/modules/esnext.iterator.map.js");
1513 -/**
1514 - * Breakpoints
1515 - *
1516 - * This utility class contains helper functions relating to Elementor's breakpoints system.
1517 - *
1518 - * @since 3.4.0
1519 - */
1520 -class Breakpoints extends elementorModules.Module {
1521 - constructor(responsiveConfig) {
1522 - super();
2683 +//#endregion
2684 +//#region node_modules/core-js/internals/does-not-exceed-safe-integer.js
2685 + var require_does_not_exceed_safe_integer = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2686 + var $TypeError = TypeError;
2687 + var MAX_SAFE_INTEGER = 9007199254740991;
2688 + module.exports = function(it) {
2689 + if (it > MAX_SAFE_INTEGER) throw $TypeError("Maximum allowed index exceeded");
2690 + return it;
2691 + };
2692 + }));
1523 2693
1524 - // The passed config is either `elementor.config.responsive` or `elementorFrontend.config.responsive`
1525 - this.responsiveConfig = responsiveConfig;
1526 - }
2694 +//#endregion
2695 +//#region node_modules/core-js/modules/es.array.push.js
2696 + var require_es_array_push = /* @__PURE__ */ __commonJSMin((() => {
2697 + var $ = require_export();
2698 + var toObject = require_to_object();
2699 + var lengthOfArrayLike = require_length_of_array_like();
2700 + var setArrayLength = require_array_set_length();
2701 + var doesNotExceedSafeInteger = require_does_not_exceed_safe_integer();
2702 + var INCORRECT_TO_LENGTH = require_fails()(function() {
2703 + return [].push.call({ length: 4294967296 }, 1) !== 4294967297;
2704 + });
2705 + var properErrorOnNonWritableLength = function() {
2706 + try {
2707 + Object.defineProperty([], "length", { writable: false }).push();
2708 + } catch (error) {
2709 + return error instanceof TypeError;
2710 + }
2711 + };
2712 + $({
2713 + target: "Array",
2714 + proto: true,
2715 + arity: 1,
2716 + forced: INCORRECT_TO_LENGTH || !properErrorOnNonWritableLength()
2717 + }, { push: function push(item) {
2718 + var O = toObject(this);
2719 + var len = lengthOfArrayLike(O);
2720 + var argCount = arguments.length;
2721 + doesNotExceedSafeInteger(len + argCount);
2722 + for (var i = 0; i < argCount; i++) {
2723 + O[len] = arguments[i];
2724 + len++;
2725 + }
2726 + setArrayLength(O, len);
2727 + return len;
2728 + } });
2729 + }));
1527 2730
1528 - /**
1529 - * Get Active Breakpoints List
1530 - *
1531 - * Returns a flat array containing the active breakpoints/devices. By default, it returns the li
1532 - * the list ordered from smallest to largest breakpoint. If `true` is passed as a parameter, it reverses the order.
1533 - *
1534 - * @since 3.4.0
1535 - *
1536 - * @param {Object} args
1537 - */
1538 - getActiveBreakpointsList(args = {}) {
1539 - const defaultArgs = {
1540 - largeToSmall: false,
1541 - withDesktop: false
1542 - };
1543 - args = {
1544 - ...defaultArgs,
1545 - ...args
1546 - };
1547 - const breakpointKeys = Object.keys(this.responsiveConfig.activeBreakpoints);
1548 - if (args.withDesktop) {
1549 - // If there is an active 'widescreen' breakpoint, insert the artificial 'desktop' device below it.
1550 - const widescreenIndex = breakpointKeys.indexOf('widescreen'),
1551 - indexToInsertDesktopDevice = -1 === widescreenIndex ? breakpointKeys.length : breakpointKeys.length - 1;
1552 - breakpointKeys.splice(indexToInsertDesktopDevice, 0, 'desktop');
1553 - }
1554 - if (args.largeToSmall) {
1555 - breakpointKeys.reverse();
1556 - }
1557 - return breakpointKeys;
1558 - }
2731 +//#endregion
2732 +//#region node_modules/core-js/internals/define-built-ins.js
2733 + var require_define_built_ins = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2734 + var defineBuiltIn = require_define_built_in();
2735 + module.exports = function(target, src, options) {
2736 + for (var key in src) defineBuiltIn(target, key, src[key], options);
2737 + return target;
2738 + };
2739 + }));
1559 2740
1560 - /**
1561 - * Get Active Breakpoint Values
1562 - *
1563 - * Returns a flat array containing the list of active breakpoint values, from smallest to largest.
1564 - *
1565 - * @since 3.4.0
1566 - */
1567 - getBreakpointValues() {
1568 - const {
1569 - activeBreakpoints
1570 - } = this.responsiveConfig,
1571 - breakpointValues = [];
1572 - Object.values(activeBreakpoints).forEach(breakpointConfig => {
1573 - breakpointValues.push(breakpointConfig.value);
1574 - });
1575 - return breakpointValues;
1576 - }
2741 +//#endregion
2742 +//#region node_modules/core-js/internals/create-iter-result-object.js
2743 + var require_create_iter_result_object = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2744 + module.exports = function(value, done) {
2745 + return {
2746 + value,
2747 + done
2748 + };
2749 + };
2750 + }));
1577 2751
1578 - /**
1579 - * Get Desktop Previous Device Key
1580 - *
1581 - * Returns the key of the device directly under desktop (can be 'tablet', 'tablet_extra', 'laptop').
1582 - *
1583 - * @since 3.4.0
1584 - *
1585 - * @return {string} device key
1586 - */
1587 - getDesktopPreviousDeviceKey() {
1588 - let desktopPreviousDevice = '';
1589 - const {
1590 - activeBreakpoints
1591 - } = this.responsiveConfig,
1592 - breakpointKeys = Object.keys(activeBreakpoints),
1593 - numOfDevices = breakpointKeys.length;
1594 - if ('min' === activeBreakpoints[breakpointKeys[numOfDevices - 1]].direction) {
1595 - // If the widescreen breakpoint is active, the device that's previous to desktop is the last one before
1596 - // widescreen.
1597 - desktopPreviousDevice = breakpointKeys[numOfDevices - 2];
1598 - } else {
1599 - // If the widescreen breakpoint isn't active, we just take the last device returned by the config.
1600 - desktopPreviousDevice = breakpointKeys[numOfDevices - 1];
1601 - }
1602 - return desktopPreviousDevice;
1603 - }
2752 +//#endregion
2753 +//#region node_modules/core-js/internals/iterator-close-all.js
2754 + var require_iterator_close_all = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2755 + var iteratorClose = require_iterator_close();
2756 + module.exports = function(iters, kind, value) {
2757 + for (var i = iters.length - 1; i >= 0; i--) {
2758 + if (iters[i] === void 0) continue;
2759 + try {
2760 + value = iteratorClose(iters[i].iterator, kind, value);
2761 + } catch (error) {
2762 + kind = "throw";
2763 + value = error;
2764 + }
2765 + }
2766 + if (kind === "throw") throw value;
2767 + return value;
2768 + };
2769 + }));
1604 2770
1605 - /**
1606 - * Get Device Minimum Breakpoint
1607 - *
1608 - * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
1609 - * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
1610 - * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
1611 - *
1612 - * @since 3.4.0
1613 - *
1614 - * @return {number|*} minimum breakpoint
1615 - */
1616 - getDesktopMinPoint() {
1617 - const {
1618 - activeBreakpoints
1619 - } = this.responsiveConfig,
1620 - desktopPreviousDevice = this.getDesktopPreviousDeviceKey();
1621 - return activeBreakpoints[desktopPreviousDevice].value + 1;
1622 - }
2771 +//#endregion
2772 +//#region node_modules/core-js/internals/iterator-create-proxy.js
2773 + var require_iterator_create_proxy = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2774 + var call = require_function_call();
2775 + var create = require_object_create();
2776 + var createNonEnumerableProperty = require_create_non_enumerable_property();
2777 + var defineBuiltIns = require_define_built_ins();
2778 + var wellKnownSymbol = require_well_known_symbol();
2779 + var InternalStateModule = require_internal_state();
2780 + var getMethod = require_get_method();
2781 + var IteratorPrototype = require_iterators_core().IteratorPrototype;
2782 + var createIterResultObject = require_create_iter_result_object();
2783 + var iteratorClose = require_iterator_close();
2784 + var iteratorCloseAll = require_iterator_close_all();
2785 + var TO_STRING_TAG = wellKnownSymbol("toStringTag");
2786 + var ITERATOR_HELPER = "IteratorHelper";
2787 + var WRAP_FOR_VALID_ITERATOR = "WrapForValidIterator";
2788 + var NORMAL = "normal";
2789 + var THROW = "throw";
2790 + var setInternalState = InternalStateModule.set;
2791 + var createIteratorProxyPrototype = function(IS_ITERATOR) {
2792 + var getInternalState = InternalStateModule.getterFor(IS_ITERATOR ? WRAP_FOR_VALID_ITERATOR : ITERATOR_HELPER);
2793 + return defineBuiltIns(create(IteratorPrototype), {
2794 + next: function next() {
2795 + var state = getInternalState(this);
2796 + if (IS_ITERATOR) return state.nextHandler();
2797 + if (state.done) return createIterResultObject(void 0, true);
2798 + try {
2799 + var result = state.nextHandler();
2800 + return state.returnHandlerResult ? result : createIterResultObject(result, state.done);
2801 + } catch (error) {
2802 + state.done = true;
2803 + throw error;
2804 + }
2805 + },
2806 + "return": function() {
2807 + var state = getInternalState(this);
2808 + var iterator = state.iterator;
2809 + state.done = true;
2810 + if (IS_ITERATOR) {
2811 + var returnMethod = getMethod(iterator, "return");
2812 + return returnMethod ? call(returnMethod, iterator) : createIterResultObject(void 0, true);
2813 + }
2814 + if (state.inner) try {
2815 + iteratorClose(state.inner.iterator, NORMAL);
2816 + } catch (error) {
2817 + return iteratorClose(iterator, THROW, error);
2818 + }
2819 + if (state.openIters) try {
2820 + iteratorCloseAll(state.openIters, NORMAL);
2821 + } catch (error) {
2822 + return iteratorClose(iterator, THROW, error);
2823 + }
2824 + if (iterator) iteratorClose(iterator, NORMAL);
2825 + return createIterResultObject(void 0, true);
2826 + }
2827 + });
2828 + };
2829 + var WrapForValidIteratorPrototype = createIteratorProxyPrototype(true);
2830 + var IteratorHelperPrototype = createIteratorProxyPrototype(false);
2831 + createNonEnumerableProperty(IteratorHelperPrototype, TO_STRING_TAG, "Iterator Helper");
2832 + module.exports = function(nextHandler, IS_ITERATOR, RETURN_HANDLER_RESULT) {
2833 + var IteratorProxy = function Iterator(record, state) {
2834 + if (state) {
2835 + state.iterator = record.iterator;
2836 + state.next = record.next;
2837 + } else state = record;
2838 + state.type = IS_ITERATOR ? WRAP_FOR_VALID_ITERATOR : ITERATOR_HELPER;
2839 + state.returnHandlerResult = !!RETURN_HANDLER_RESULT;
2840 + state.nextHandler = nextHandler;
2841 + state.counter = 0;
2842 + state.done = false;
2843 + setInternalState(this, state);
2844 + };
2845 + IteratorProxy.prototype = IS_ITERATOR ? WrapForValidIteratorPrototype : IteratorHelperPrototype;
2846 + return IteratorProxy;
2847 + };
2848 + }));
1623 2849
1624 - /**
1625 - * Get Device Minimum Breakpoint
1626 - *
1627 - * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
1628 - * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
1629 - * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
1630 - *
1631 - * @since 3.4.0
1632 - *
1633 - * @param {string} device
1634 - * @return {number|*} minimum breakpoint
1635 - */
1636 - getDeviceMinBreakpoint(device) {
1637 - if ('desktop' === device) {
1638 - return this.getDesktopMinPoint();
1639 - }
1640 - const {
1641 - activeBreakpoints
1642 - } = this.responsiveConfig,
1643 - breakpointNames = Object.keys(activeBreakpoints);
1644 - let minBreakpoint;
1645 - if (breakpointNames[0] === device) {
1646 - // For the lowest breakpoint, the min point is always 320.
1647 - minBreakpoint = 320;
1648 - } else if ('widescreen' === device) {
1649 - // Widescreen only has a minimum point. In this case, the breakpoint
1650 - // value in the Breakpoints config is itself the device min point.
1651 - if (activeBreakpoints[device]) {
1652 - minBreakpoint = activeBreakpoints[device].value;
1653 - } else {
1654 - // If the widescreen breakpoint does not exist in the active breakpoints config (for example, in the
1655 - // case this method runs as the breakpoint is being added), get the value from the full config.
1656 - minBreakpoint = this.responsiveConfig.breakpoints.widescreen;
1657 - }
1658 - } else {
1659 - const deviceNameIndex = breakpointNames.indexOf(device),
1660 - previousIndex = deviceNameIndex - 1;
1661 - minBreakpoint = activeBreakpoints[breakpointNames[previousIndex]].value + 1;
1662 - }
1663 - return minBreakpoint;
1664 - }
2850 +//#endregion
2851 +//#region node_modules/core-js/internals/call-with-safe-iteration-closing.js
2852 + var require_call_with_safe_iteration_closing = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2853 + var anObject = require_an_object();
2854 + var iteratorClose = require_iterator_close();
2855 + module.exports = function(iterator, fn, value, ENTRIES) {
2856 + try {
2857 + return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);
2858 + } catch (error) {
2859 + iteratorClose(iterator, "throw", error);
2860 + }
2861 + };
2862 + }));
1665 2863
1666 - /**
1667 - * Get Active Match Regex
1668 - *
1669 - * Returns a regular expression containing all active breakpoints prefixed with an underscore.
1670 - *
1671 - * @return {RegExp} Active Match Regex
1672 - */
1673 - getActiveMatchRegex() {
1674 - return new RegExp(this.getActiveBreakpointsList().map(device => '_' + device).join('|') + '$');
1675 - }
1676 -}
1677 -exports["default"] = Breakpoints;
2864 +//#endregion
2865 +//#region node_modules/core-js/internals/iterator-helper-throws-on-invalid-iterator.js
2866 + var require_iterator_helper_throws_on_invalid_iterator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
2867 + module.exports = function(methodName, argument) {
2868 + var method = typeof Iterator == "function" && Iterator.prototype[methodName];
2869 + if (method) try {
2870 + method.call({ next: null }, argument).next();
2871 + } catch (error) {
2872 + return true;
2873 + }
2874 + };
2875 + }));
1678 2876
1679 -/***/ }),
2877 +//#endregion
2878 +//#region node_modules/core-js/modules/es.iterator.map.js
2879 + var require_es_iterator_map = /* @__PURE__ */ __commonJSMin((() => {
2880 + var $ = require_export();
2881 + var call = require_function_call();
2882 + var aCallable = require_a_callable();
2883 + var anObject = require_an_object();
2884 + var getIteratorDirect = require_get_iterator_direct();
2885 + var createIteratorProxy = require_iterator_create_proxy();
2886 + var callWithSafeIterationClosing = require_call_with_safe_iteration_closing();
2887 + var iteratorClose = require_iterator_close();
2888 + var iteratorHelperThrowsOnInvalidIterator = require_iterator_helper_throws_on_invalid_iterator();
2889 + var iteratorHelperWithoutClosingOnEarlyError = require_iterator_helper_without_closing_on_early_error();
2890 + var IS_PURE = require_is_pure();
2891 + var MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR = !IS_PURE && !iteratorHelperThrowsOnInvalidIterator("map", function() {});
2892 + var mapWithoutClosingOnEarlyError = !IS_PURE && !MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR && iteratorHelperWithoutClosingOnEarlyError("map", TypeError);
2893 + var FORCED = IS_PURE || MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR || mapWithoutClosingOnEarlyError;
2894 + var IteratorProxy = createIteratorProxy(function() {
2895 + var iterator = this.iterator;
2896 + var result = anObject(call(this.next, iterator));
2897 + if (!(this.done = !!result.done)) return callWithSafeIterationClosing(iterator, this.mapper, [result.value, this.counter++], true);
2898 + });
2899 + $({
2900 + target: "Iterator",
2901 + proto: true,
2902 + real: true,
2903 + forced: FORCED
2904 + }, { map: function map(mapper) {
2905 + anObject(this);
2906 + try {
2907 + aCallable(mapper);
2908 + } catch (error) {
2909 + iteratorClose(this, "throw", error);
2910 + }
2911 + if (mapWithoutClosingOnEarlyError) return call(mapWithoutClosingOnEarlyError, this, mapper);
2912 + return new IteratorProxy(getIteratorDirect(this), { mapper });
2913 + } });
2914 + }));
1680 2915
1681 -/***/ "../assets/dev/js/utils/events.js":
1682 -/*!****************************************!*\
1683 - !*** ../assets/dev/js/utils/events.js ***!
1684 - \****************************************/
1685 -/***/ ((__unused_webpack_module, exports) => {
2916 +//#endregion
2917 +//#region node_modules/core-js/modules/esnext.iterator.map.js
2918 + var require_esnext_iterator_map = /* @__PURE__ */ __commonJSMin((() => {
2919 + require_es_iterator_map();
2920 + }));
1686 2921
2922 +//#endregion
2923 +//#region assets/dev/js/utils/breakpoints.js
2924 + var require_breakpoints = /* @__PURE__ */ __commonJSMin(((exports) => {
2925 + init_objectSpread2();
2926 + Object.defineProperty(exports, "__esModule", { value: true });
2927 + exports.default = void 0;
2928 + require_es_array_push();
2929 + require_esnext_iterator_constructor();
2930 + require_esnext_iterator_for_each();
2931 + require_esnext_iterator_map();
2932 + /**
2933 + * Breakpoints
2934 + *
2935 + * This utility class contains helper functions relating to Elementor's breakpoints system.
2936 + *
2937 + * @since 3.4.0
2938 + */
2939 + var Breakpoints = class extends elementorModules.Module {
2940 + constructor(responsiveConfig) {
2941 + super();
2942 + this.responsiveConfig = responsiveConfig;
2943 + }
2944 + /**
2945 + * Get Active Breakpoints List
2946 + *
2947 + * Returns a flat array containing the active breakpoints/devices. By default, it returns the li
2948 + * the list ordered from smallest to largest breakpoint. If `true` is passed as a parameter, it reverses the order.
2949 + *
2950 + * @since 3.4.0
2951 + *
2952 + * @param {Object} args
2953 + */
2954 + getActiveBreakpointsList(args = {}) {
2955 + args = _objectSpread2(_objectSpread2({}, {
2956 + largeToSmall: false,
2957 + withDesktop: false
2958 + }), args);
2959 + const breakpointKeys = Object.keys(this.responsiveConfig.activeBreakpoints);
2960 + if (args.withDesktop) {
2961 + const indexToInsertDesktopDevice = -1 === breakpointKeys.indexOf("widescreen") ? breakpointKeys.length : breakpointKeys.length - 1;
2962 + breakpointKeys.splice(indexToInsertDesktopDevice, 0, "desktop");
2963 + }
2964 + if (args.largeToSmall) breakpointKeys.reverse();
2965 + return breakpointKeys;
2966 + }
2967 + /**
2968 + * Get Active Breakpoint Values
2969 + *
2970 + * Returns a flat array containing the list of active breakpoint values, from smallest to largest.
2971 + *
2972 + * @since 3.4.0
2973 + */
2974 + getBreakpointValues() {
2975 + const { activeBreakpoints } = this.responsiveConfig, breakpointValues = [];
2976 + Object.values(activeBreakpoints).forEach((breakpointConfig) => {
2977 + breakpointValues.push(breakpointConfig.value);
2978 + });
2979 + return breakpointValues;
2980 + }
2981 + /**
2982 + * Get Desktop Previous Device Key
2983 + *
2984 + * Returns the key of the device directly under desktop (can be 'tablet', 'tablet_extra', 'laptop').
2985 + *
2986 + * @since 3.4.0
2987 + *
2988 + * @return {string} device key
2989 + */
2990 + getDesktopPreviousDeviceKey() {
2991 + let desktopPreviousDevice = "";
2992 + const { activeBreakpoints } = this.responsiveConfig, breakpointKeys = Object.keys(activeBreakpoints), numOfDevices = breakpointKeys.length;
2993 + if ("min" === activeBreakpoints[breakpointKeys[numOfDevices - 1]].direction) desktopPreviousDevice = breakpointKeys[numOfDevices - 2];
2994 + else desktopPreviousDevice = breakpointKeys[numOfDevices - 1];
2995 + return desktopPreviousDevice;
2996 + }
2997 + /**
2998 + * Get Device Minimum Breakpoint
2999 + *
3000 + * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
3001 + * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
3002 + * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
3003 + *
3004 + * @since 3.4.0
3005 + *
3006 + * @return {number|*} minimum breakpoint
3007 + */
3008 + getDesktopMinPoint() {
3009 + const { activeBreakpoints } = this.responsiveConfig;
3010 + return activeBreakpoints[this.getDesktopPreviousDeviceKey()].value + 1;
3011 + }
3012 + /**
3013 + * Get Device Minimum Breakpoint
3014 + *
3015 + * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
3016 + * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
3017 + * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
3018 + *
3019 + * @since 3.4.0
3020 + *
3021 + * @param {string} device
3022 + * @return {number|*} minimum breakpoint
3023 + */
3024 + getDeviceMinBreakpoint(device) {
3025 + if ("desktop" === device) return this.getDesktopMinPoint();
3026 + const { activeBreakpoints } = this.responsiveConfig, breakpointNames = Object.keys(activeBreakpoints);
3027 + let minBreakpoint;
3028 + if (breakpointNames[0] === device) minBreakpoint = 320;
3029 + else if ("widescreen" === device) if (activeBreakpoints[device]) minBreakpoint = activeBreakpoints[device].value;
3030 + else minBreakpoint = this.responsiveConfig.breakpoints.widescreen;
3031 + else minBreakpoint = activeBreakpoints[breakpointNames[breakpointNames.indexOf(device) - 1]].value + 1;
3032 + return minBreakpoint;
3033 + }
3034 + /**
3035 + * Get Active Match Regex
3036 + *
3037 + * Returns a regular expression containing all active breakpoints prefixed with an underscore.
3038 + *
3039 + * @return {RegExp} Active Match Regex
3040 + */
3041 + getActiveMatchRegex() {
3042 + return new RegExp(this.getActiveBreakpointsList().map((device) => "_" + device).join("|") + "$");
3043 + }
3044 + };
3045 + exports.default = Breakpoints;
3046 + }));
1687 3047
3048 +//#endregion
3049 +//#region assets/dev/js/utils/events.js
3050 + var require_events = /* @__PURE__ */ __commonJSMin(((exports) => {
3051 + Object.defineProperty(exports, "__esModule", { value: true });
3052 + exports.default = exports.Events = void 0;
3053 + var Events = class {
3054 + /**
3055 + * Dispatch an Elementor event.
3056 + *
3057 + * Will dispatch both native event & jQuery event (as BC).
3058 + * By default, `bcEvent` is `null`.
3059 + *
3060 + * @param {Object} context - The context that will dispatch the event.
3061 + * @param {string} event - Event to dispatch.
3062 + * @param {*} data - Data to pass to the event, default to `null`.
3063 + * @param {string|null} bcEvent - BC event to dispatch, default to `null`.
3064 + *
3065 + * @return {void}
3066 + */
3067 + static dispatch(context, event, data = null, bcEvent = null) {
3068 + context = context instanceof jQuery ? context[0] : context;
3069 + if (bcEvent) context.dispatchEvent(new CustomEvent(bcEvent, { detail: data }));
3070 + context.dispatchEvent(new CustomEvent(event, { detail: data }));
3071 + }
3072 + };
3073 + exports.Events = Events;
3074 + exports.default = Events;
3075 + }));
1688 3076
1689 -Object.defineProperty(exports, "__esModule", ({
1690 - value: true
1691 -}));
1692 -exports["default"] = exports.Events = void 0;
1693 -class Events {
1694 - /**
1695 - * Dispatch an Elementor event.
1696 - *
1697 - * Will dispatch both native event & jQuery event (as BC).
1698 - * By default, `bcEvent` is `null`.
1699 - *
1700 - * @param {Object} context - The context that will dispatch the event.
1701 - * @param {string} event - Event to dispatch.
1702 - * @param {*} data - Data to pass to the event, default to `null`.
1703 - * @param {string|null} bcEvent - BC event to dispatch, default to `null`.
1704 - *
1705 - * @return {void}
1706 - */
1707 - static dispatch(context, event, data = null, bcEvent = null) {
1708 - // Make sure to use the native context if it's a jQuery instance.
1709 - context = context instanceof jQuery ? context[0] : context;
3077 +//#endregion
3078 +//#region modules/shapes/assets/js/frontend/frontend.js
3079 + var require_frontend$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
3080 + Object.defineProperty(exports, "__esModule", { value: true });
3081 + exports.default = void 0;
3082 + var _default = class extends elementorModules.Module {
3083 + constructor() {
3084 + super();
3085 + elementorFrontend.elementsHandler.attachHandler("text-path", () => __elementorLoadChunk("text-path"));
3086 + }
3087 + };
3088 + exports.default = _default;
3089 + }));
1710 3090
1711 - // Dispatch the BC event only if exists.
1712 - if (bcEvent) {
1713 - context.dispatchEvent(new CustomEvent(bcEvent, {
1714 - detail: data
1715 - }));
1716 - }
3091 +//#endregion
3092 +//#region assets/dev/js/frontend/utils/controls.js
3093 + var require_controls = /* @__PURE__ */ __commonJSMin(((exports) => {
3094 + Object.defineProperty(exports, "__esModule", { value: true });
3095 + exports.default = void 0;
3096 + var Controls = class {
3097 + /**
3098 + * Get Control Value
3099 + *
3100 + * Retrieves a control value.
3101 + * This function has been copied from `elementor/assets/dev/js/editor/utils/conditions.js`.
3102 + *
3103 + * @since 3.11.0
3104 + *
3105 + * @param {{}} controlSettings A settings object (e.g. element settings - keys and values)
3106 + * @param {string} controlKey The control key name
3107 + * @param {string} controlSubKey A specific property of the control object.
3108 + * @return {*} Control Value
3109 + */
3110 + getControlValue(controlSettings, controlKey, controlSubKey) {
3111 + let value;
3112 + if ("object" === typeof controlSettings[controlKey] && controlSubKey) value = controlSettings[controlKey][controlSubKey];
3113 + else value = controlSettings[controlKey];
3114 + return value;
3115 + }
3116 + /**
3117 + * Get the value of a responsive control.
3118 + *
3119 + * Retrieves the value of a responsive control for the current device or for this first parent device which has a control value.
3120 + *
3121 + * @since 3.11.0
3122 + *
3123 + * @param {{}} controlSettings A settings object (e.g. element settings - keys and values)
3124 + * @param {string} controlKey The control key name
3125 + * @param {string} controlSubKey A specific property of the control object.
3126 + * @param {string} device If we want to get a value for a specific device mode.
3127 + * @return {*} Control Value
3128 + */
3129 + getResponsiveControlValue(controlSettings, controlKey, controlSubKey = "", device = null) {
3130 + const currentDeviceMode = device || elementorFrontend.getCurrentDeviceMode();
3131 + const controlValueDesktop = this.getControlValue(controlSettings, controlKey, controlSubKey);
3132 + if ("widescreen" === currentDeviceMode) {
3133 + const controlValueWidescreen = this.getControlValue(controlSettings, `${controlKey}_widescreen`, controlSubKey);
3134 + return !!controlValueWidescreen || 0 === controlValueWidescreen ? controlValueWidescreen : controlValueDesktop;
3135 + }
3136 + const activeBreakpoints = elementorFrontend.breakpoints.getActiveBreakpointsList({ withDesktop: true });
3137 + let parentDeviceMode = currentDeviceMode;
3138 + let deviceIndex = activeBreakpoints.indexOf(currentDeviceMode);
3139 + let controlValue = "";
3140 + while (deviceIndex <= activeBreakpoints.length) {
3141 + if ("desktop" === parentDeviceMode) {
3142 + controlValue = controlValueDesktop;
3143 + break;
3144 + }
3145 + const responsiveControlKey = `${controlKey}_${parentDeviceMode}`;
3146 + const responsiveControlValue = this.getControlValue(controlSettings, responsiveControlKey, controlSubKey);
3147 + if (!!responsiveControlValue || 0 === responsiveControlValue) {
3148 + controlValue = responsiveControlValue;
3149 + break;
3150 + }
3151 + deviceIndex++;
3152 + parentDeviceMode = activeBreakpoints[deviceIndex];
3153 + }
3154 + return controlValue;
3155 + }
3156 + };
3157 + exports.default = Controls;
3158 + }));
1717 3159
1718 - // jQuery's `.on()` listens also to native custom events, so there is no need
1719 - // to dispatch also a jQuery event.
1720 - context.dispatchEvent(new CustomEvent(event, {
1721 - detail: data
1722 - }));
1723 - }
1724 -}
1725 -exports.Events = Events;
1726 -var _default = exports["default"] = Events;
3160 +//#endregion
3161 +//#region node_modules/core-js/modules/es.iterator.filter.js
3162 + var require_es_iterator_filter = /* @__PURE__ */ __commonJSMin((() => {
3163 + var $ = require_export();
3164 + var call = require_function_call();
3165 + var aCallable = require_a_callable();
3166 + var anObject = require_an_object();
3167 + var getIteratorDirect = require_get_iterator_direct();
3168 + var createIteratorProxy = require_iterator_create_proxy();
3169 + var callWithSafeIterationClosing = require_call_with_safe_iteration_closing();
3170 + var IS_PURE = require_is_pure();
3171 + var iteratorClose = require_iterator_close();
3172 + var iteratorHelperThrowsOnInvalidIterator = require_iterator_helper_throws_on_invalid_iterator();
3173 + var iteratorHelperWithoutClosingOnEarlyError = require_iterator_helper_without_closing_on_early_error();
3174 + var FILTER_WITHOUT_THROWING_ON_INVALID_ITERATOR = !IS_PURE && !iteratorHelperThrowsOnInvalidIterator("filter", function() {});
3175 + var filterWithoutClosingOnEarlyError = !IS_PURE && !FILTER_WITHOUT_THROWING_ON_INVALID_ITERATOR && iteratorHelperWithoutClosingOnEarlyError("filter", TypeError);
3176 + var FORCED = IS_PURE || FILTER_WITHOUT_THROWING_ON_INVALID_ITERATOR || filterWithoutClosingOnEarlyError;
3177 + var IteratorProxy = createIteratorProxy(function() {
3178 + var iterator = this.iterator;
3179 + var predicate = this.predicate;
3180 + var next = this.next;
3181 + var result;
3182 + var done;
3183 + var value;
3184 + while (true) {
3185 + result = anObject(call(next, iterator));
3186 + done = this.done = !!result.done;
3187 + if (done) return;
3188 + value = result.value;
3189 + if (callWithSafeIterationClosing(iterator, predicate, [value, this.counter++], true)) return value;
3190 + }
3191 + });
3192 + $({
3193 + target: "Iterator",
3194 + proto: true,
3195 + real: true,
3196 + forced: FORCED
3197 + }, { filter: function filter(predicate) {
3198 + anObject(this);
3199 + try {
3200 + aCallable(predicate);
3201 + } catch (error) {
3202 + iteratorClose(this, "throw", error);
3203 + }
3204 + if (filterWithoutClosingOnEarlyError) return call(filterWithoutClosingOnEarlyError, this, predicate);
3205 + return new IteratorProxy(getIteratorDirect(this), { predicate });
3206 + } });
3207 + }));
1727 3208
1728 -/***/ }),
3209 +//#endregion
3210 +//#region node_modules/core-js/modules/esnext.iterator.filter.js
3211 + var require_esnext_iterator_filter = /* @__PURE__ */ __commonJSMin((() => {
3212 + require_es_iterator_filter();
3213 + }));
1729 3214
1730 -/***/ "../assets/dev/js/utils/hooks.js":
1731 -/*!***************************************!*\
1732 - !*** ../assets/dev/js/utils/hooks.js ***!
1733 - \***************************************/
1734 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3215 +//#endregion
3216 +//#region assets/dev/js/frontend/utils/anchor-scroll-margin.js
3217 + var require_anchor_scroll_margin = /* @__PURE__ */ __commonJSMin(((exports) => {
3218 + Object.defineProperty(exports, "__esModule", { value: true });
3219 + exports.default = void 0;
3220 + require_es_array_push();
3221 + require_esnext_iterator_constructor();
3222 + require_esnext_iterator_filter();
3223 + require_esnext_iterator_for_each();
3224 + var _default = class extends elementorModules.ViewModule {
3225 + getDefaultSettings() {
3226 + return { selectors: {
3227 + links: ".elementor-element a[href*=\"#\"]",
3228 + stickyElements: ".elementor-element.elementor-sticky"
3229 + } };
3230 + }
3231 + onInit() {
3232 + this.observeStickyElements(() => {
3233 + this.initializeStickyAndAnchorTracking();
3234 + });
3235 + }
3236 + observeStickyElements(callback) {
3237 + new MutationObserver((mutationsList) => {
3238 + for (const mutation of mutationsList) if ("childList" === mutation.type || "attributes" === mutation.type && mutation.target.classList.contains("elementor-sticky")) callback();
3239 + }).observe(document.body, {
3240 + childList: true,
3241 + subtree: true,
3242 + attributes: true,
3243 + attributeFilter: ["class", "style"]
3244 + });
3245 + }
3246 + initializeStickyAndAnchorTracking() {
3247 + const anchorLinks = this.getAllAnchorLinks();
3248 + const stickyElements = this.getAllStickyElements();
3249 + const trackedElements = [];
3250 + if (!stickyElements.length > 0 && !anchorLinks.length > 0) return;
3251 + this.trackStickyElements(stickyElements, trackedElements);
3252 + this.trackAnchorLinks(anchorLinks, trackedElements);
3253 + this.organizeStickyAndAnchors(trackedElements);
3254 + }
3255 + trackAnchorLinks(anchorLinks, trackedElements) {
3256 + anchorLinks.forEach((element) => {
3257 + const target = this.getAnchorTarget(element);
3258 + const scrollPosition = this.getScrollPosition(target);
3259 + trackedElements.push({
3260 + element: target,
3261 + type: "anchor",
3262 + scrollPosition
3263 + });
3264 + });
3265 + }
3266 + trackStickyElements(stickyElements, trackedElements) {
3267 + stickyElements.forEach((element) => {
3268 + const settings = this.getElementSettings(element);
3269 + if (!settings || !settings.sticky_anchor_link_offset) return;
3270 + const { sticky_anchor_link_offset: scrollMarginTop } = settings;
3271 + if (0 === scrollMarginTop) return;
3272 + const scrollPosition = this.getScrollPosition(element);
3273 + trackedElements.push({
3274 + scrollMarginTop,
3275 + type: "sticky",
3276 + scrollPosition
3277 + });
3278 + });
3279 + }
3280 + organizeStickyAndAnchors(elements) {
3281 + const stickyList = this.filterAndSortElementsByType(elements, "sticky");
3282 + const anchorList = this.filterAndSortElementsByType(elements, "anchor");
3283 + stickyList.forEach((sticky, index) => {
3284 + this.defineCurrentStickyRange(sticky, index, stickyList, anchorList);
3285 + });
3286 + }
3287 + defineCurrentStickyRange(sticky, index, stickyList, anchorList) {
3288 + const nextStickyScrollPosition = index + 1 < stickyList.length ? stickyList[index + 1].scrollPosition : Infinity;
3289 + sticky.anchor = anchorList.filter((anchor) => {
3290 + const withinRange = anchor.scrollPosition > sticky.scrollPosition && anchor.scrollPosition < nextStickyScrollPosition;
3291 + if (withinRange) anchor.element.style.scrollMarginTop = `${sticky.scrollMarginTop}px`;
3292 + return withinRange;
3293 + });
3294 + }
3295 + getScrollPosition(element) {
3296 + let offsetTop = 0;
3297 + while (element) {
3298 + offsetTop += element.offsetTop;
3299 + element = element.offsetParent;
3300 + }
3301 + return offsetTop;
3302 + }
3303 + getAllStickyElements() {
3304 + const allStickyElements = document.querySelectorAll(this.getSettings("selectors.stickyElements"));
3305 + return Array.from(allStickyElements).filter((anchor, index, self) => index === self.findIndex((t) => t.getAttribute("data-id") === anchor.getAttribute("data-id")));
3306 + }
3307 + getAllAnchorLinks() {
3308 + const allAnchors = document.querySelectorAll(this.getSettings("selectors.links"));
3309 + return Array.from(allAnchors).filter((anchor, index, self) => index === self.findIndex((t) => t.getAttribute("href") === anchor.getAttribute("href")));
3310 + }
3311 + filterAndSortElementsByType(elements, type) {
3312 + return elements.filter((item) => type === item.type).sort((a, b) => a.scrollPosition - b.scrollPosition);
3313 + }
3314 + isValidSelector(hash) {
3315 + return /^#[A-Za-z_][\w-]*$/.test(hash);
3316 + }
3317 + getAnchorTarget(element) {
3318 + const hash = element === null || element === void 0 ? void 0 : element.hash;
3319 + if (!this.isValidSelector(hash)) return null;
3320 + return document.querySelector(hash);
3321 + }
3322 + getElementSettings(element) {
3323 + return JSON.parse(element.getAttribute("data-settings"));
3324 + }
3325 + };
3326 + exports.default = _default;
3327 + }));
1735 3328
3329 +//#endregion
3330 +//#region assets/dev/js/frontend/utils/utils.js
3331 + var require_utils = /* @__PURE__ */ __commonJSMin(((exports) => {
3332 + Object.defineProperty(exports, "__esModule", { value: true });
3333 + exports.isScrollSnapActive = exports.escapeHTML = void 0;
3334 + var escapeHTML = (str) => {
3335 + const specialChars = {
3336 + "&": "&amp;",
3337 + "<": "&lt;",
3338 + ">": "&gt;",
3339 + "'": "&#39;",
3340 + "\"": "&quot;"
3341 + };
3342 + return str.replace(/[&<>'"]/g, (tag) => specialChars[tag] || tag);
3343 + };
3344 + exports.escapeHTML = escapeHTML;
3345 + var isScrollSnapActive = () => {
3346 + var _elementor$settings$p;
3347 + var _elementorFrontend$co;
3348 + return "yes" === (elementorFrontend.isEditMode() ? (_elementor$settings$p = elementor.settings.page.model.attributes) === null || _elementor$settings$p === void 0 ? void 0 : _elementor$settings$p.scroll_snap : (_elementorFrontend$co = elementorFrontend.config.settings.page) === null || _elementorFrontend$co === void 0 ? void 0 : _elementorFrontend$co.scroll_snap) ? true : false;
3349 + };
3350 + exports.isScrollSnapActive = isScrollSnapActive;
3351 + }));
1736 3352
3353 +//#endregion
3354 +//#region assets/dev/js/utils/hooks.js
3355 + var require_hooks = /* @__PURE__ */ __commonJSMin(((exports, module) => {
3356 + /**
3357 + * Handles managing all events for whatever you plug it into. Priorities for hooks are based on lowest to highest in
3358 + * that, lowest priority hooks are fired first.
3359 + */
3360 + require_es_array_push();
3361 + var EventManager = function() {
3362 + var slice = Array.prototype.slice;
3363 + var MethodsAvailable;
3364 + /**
3365 + * Contains the hooks that get registered with this EventManager. The array for storage utilizes a "flat"
3366 + * object literal such that looking up the hook utilizes the native object literal hash.
3367 + */
3368 + var STORAGE = {
3369 + actions: {},
3370 + filters: {}
3371 + };
3372 + /**
3373 + * Removes the specified hook by resetting the value of it.
3374 + *
3375 + * @param {string} type Type of hook, either 'actions' or 'filters'
3376 + * @param {Function} hook The hook (namespace.identifier) to remove
3377 + * @param {Function} callback
3378 + * @param {*} context
3379 + * @private
3380 + */
3381 + function _removeHook(type, hook, callback, context) {
3382 + var handlers;
3383 + var handler;
3384 + var i;
3385 + if (!STORAGE[type][hook]) return;
3386 + if (!callback) STORAGE[type][hook] = [];
3387 + else {
3388 + handlers = STORAGE[type][hook];
3389 + if (!context) {
3390 + for (i = handlers.length; i--;) if (handlers[i].callback === callback) handlers.splice(i, 1);
3391 + } else for (i = handlers.length; i--;) {
3392 + handler = handlers[i];
3393 + if (handler.callback === callback && handler.context === context) handlers.splice(i, 1);
3394 + }
3395 + }
3396 + }
3397 + /**
3398 + * Use an insert sort for keeping our hooks organized based on priority. This function is ridiculously faster
3399 + * than bubble sort, etc: http://jsperf.com/javascript-sort
3400 + *
3401 + * @param {Array<*>} hooks The custom array containing all of the appropriate hooks to perform an insert sort on.
3402 + * @private
3403 + */
3404 + function _hookInsertSort(hooks) {
3405 + var tmpHook;
3406 + var j;
3407 + var prevHook;
3408 + for (var i = 1, len = hooks.length; i < len; i++) {
3409 + tmpHook = hooks[i];
3410 + j = i;
3411 + while ((prevHook = hooks[j - 1]) && prevHook.priority > tmpHook.priority) {
3412 + hooks[j] = hooks[j - 1];
3413 + --j;
3414 + }
3415 + hooks[j] = tmpHook;
3416 + }
3417 + return hooks;
3418 + }
3419 + /**
3420 + * Adds the hook to the appropriate storage container
3421 + *
3422 + * @param {string} type 'actions' or 'filters'
3423 + * @param {Array<*>} hook The hook (namespace.identifier) to add to our event manager
3424 + * @param {Function} callback The function that will be called when the hook is executed.
3425 + * @param {number} priority The priority of this hook. Must be an integer.
3426 + * @param {*} [context] A value to be used for this
3427 + * @private
3428 + */
3429 + function _addHook(type, hook, callback, priority, context) {
3430 + var hookObject = {
3431 + callback,
3432 + priority,
3433 + context
3434 + };
3435 + var hooks = STORAGE[type][hook];
3436 + if (hooks) {
3437 + var hasSameCallback = false;
3438 + jQuery.each(hooks, function() {
3439 + if (this.callback === callback) {
3440 + hasSameCallback = true;
3441 + return false;
3442 + }
3443 + });
3444 + if (hasSameCallback) return;
3445 + hooks.push(hookObject);
3446 + hooks = _hookInsertSort(hooks);
3447 + } else hooks = [hookObject];
3448 + STORAGE[type][hook] = hooks;
3449 + }
3450 + /**
3451 + * Runs the specified hook. If it is an action, the value is not modified but if it is a filter, it is.
3452 + *
3453 + * @param {string} type 'actions' or 'filters'
3454 + * @param {*} hook The hook ( namespace.identifier ) to be ran.
3455 + * @param {Array<*>} args Arguments to pass to the action/filter. If it's a filter, args is actually a single parameter.
3456 + * @private
3457 + */
3458 + function _runHook(type, hook, args) {
3459 + var handlers = STORAGE[type][hook];
3460 + var i;
3461 + var len;
3462 + if (!handlers) return "filters" === type ? args[0] : false;
3463 + len = handlers.length;
3464 + if ("filters" === type) for (i = 0; i < len; i++) args[0] = handlers[i].callback.apply(handlers[i].context, args);
3465 + else for (i = 0; i < len; i++) handlers[i].callback.apply(handlers[i].context, args);
3466 + return "filters" === type ? args[0] : true;
3467 + }
3468 + /**
3469 + * Adds an action to the event manager.
3470 + *
3471 + * @param {string} action Must contain namespace.identifier
3472 + * @param {Function} callback Must be a valid callback function before this action is added
3473 + * @param {number} [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
3474 + * @param {*} [context] Supply a value to be used for this
3475 + */
3476 + function addAction(action, callback, priority, context) {
3477 + if ("string" === typeof action && "function" === typeof callback) {
3478 + priority = parseInt(priority || 10, 10);
3479 + _addHook("actions", action, callback, priority, context);
3480 + }
3481 + return MethodsAvailable;
3482 + }
3483 + /**
3484 + * Performs an action if it exists. You can pass as many arguments as you want to this function; the only rule is
3485 + * that the first argument must always be the action.
3486 + */
3487 + function doAction() {
3488 + var args = slice.call(arguments);
3489 + var action = args.shift();
3490 + if ("string" === typeof action) _runHook("actions", action, args);
3491 + return MethodsAvailable;
3492 + }
3493 + /**
3494 + * Removes the specified action if it contains a namespace.identifier & exists.
3495 + *
3496 + * @param {string} action The action to remove
3497 + * @param {Function} [callback] Callback function to remove
3498 + */
3499 + function removeAction(action, callback) {
3500 + if ("string" === typeof action) _removeHook("actions", action, callback);
3501 + return MethodsAvailable;
3502 + }
3503 + /**
3504 + * Adds a filter to the event manager.
3505 + *
3506 + * @param {string} filter Must contain namespace.identifier
3507 + * @param {Function} callback Must be a valid callback function before this action is added
3508 + * @param {number} [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
3509 + * @param {*} [context] Supply a value to be used for this
3510 + */
3511 + function addFilter(filter, callback, priority, context) {
3512 + if ("string" === typeof filter && "function" === typeof callback) {
3513 + priority = parseInt(priority || 10, 10);
3514 + _addHook("filters", filter, callback, priority, context);
3515 + }
3516 + return MethodsAvailable;
3517 + }
3518 + /**
3519 + * Performs a filter if it exists. You should only ever pass 1 argument to be filtered. The only rule is that
3520 + * the first argument must always be the filter.
3521 + */
3522 + function applyFilters() {
3523 + var args = slice.call(arguments);
3524 + var filter = args.shift();
3525 + if ("string" === typeof filter) return _runHook("filters", filter, args);
3526 + return MethodsAvailable;
3527 + }
3528 + /**
3529 + * Removes the specified filter if it contains a namespace.identifier & exists.
3530 + *
3531 + * @param {string} filter The action to remove
3532 + * @param {Function} [callback] Callback function to remove
3533 + */
3534 + function removeFilter(filter, callback) {
3535 + if ("string" === typeof filter) _removeHook("filters", filter, callback);
3536 + return MethodsAvailable;
3537 + }
3538 + /**
3539 + * Maintain a reference to the object scope so our public methods never get confusing.
3540 + */
3541 + MethodsAvailable = {
3542 + removeFilter,
3543 + applyFilters,
3544 + addFilter,
3545 + removeAction,
3546 + doAction,
3547 + addAction
3548 + };
3549 + return MethodsAvailable;
3550 + };
3551 + module.exports = EventManager;
3552 + }));
1737 3553
1738 -/**
1739 - * Handles managing all events for whatever you plug it into. Priorities for hooks are based on lowest to highest in
1740 - * that, lowest priority hooks are fired first.
1741 - */
1742 -__webpack_require__(/*! core-js/modules/es.array.push.js */ "../node_modules/core-js/modules/es.array.push.js");
1743 -var EventManager = function () {
1744 - var slice = Array.prototype.slice,
1745 - MethodsAvailable;
3554 +//#endregion
3555 +//#region assets/dev/js/frontend/handlers/global.js
3556 + var require_global = /* @__PURE__ */ __commonJSMin(((exports) => {
3557 + Object.defineProperty(exports, "__esModule", { value: true });
3558 + exports.default = void 0;
3559 + var GlobalHandler = class extends elementorModules.frontend.handlers.Base {
3560 + getWidgetType() {
3561 + return "global";
3562 + }
3563 + animate() {
3564 + const $element = this.$element;
3565 + const animation = this.getAnimation();
3566 + if ("none" === animation) {
3567 + $element.removeClass("elementor-invisible");
3568 + return;
3569 + }
3570 + const elementSettings = this.getElementSettings();
3571 + const animationDelay = elementSettings._animation_delay || elementSettings.animation_delay || 0;
3572 + $element.removeClass(animation);
3573 + if (this.currentAnimation) $element.removeClass(this.currentAnimation);
3574 + this.currentAnimation = animation;
3575 + setTimeout(() => {
3576 + $element.removeClass("elementor-invisible").addClass("animated " + animation);
3577 + }, animationDelay);
3578 + }
3579 + getAnimation() {
3580 + return this.getCurrentDeviceSetting("animation") || this.getCurrentDeviceSetting("_animation");
3581 + }
3582 + onInit(...args) {
3583 + super.onInit(...args);
3584 + if (this.getAnimation()) {
3585 + const observer = elementorModules.utils.Scroll.scrollObserver({ callback: (event) => {
3586 + if (event.isInViewport) {
3587 + this.animate();
3588 + observer.unobserve(this.$element[0]);
3589 + }
3590 + } });
3591 + observer.observe(this.$element[0]);
3592 + }
3593 + }
3594 + onElementChange(propertyName) {
3595 + if (/^_?animation/.test(propertyName)) this.animate();
3596 + }
3597 + };
3598 + var _default = ($scope) => {
3599 + elementorFrontend.elementsHandler.addHandler(GlobalHandler, { $element: $scope });
3600 + };
3601 + exports.default = _default;
3602 + }));
1746 3603
1747 - /**
1748 - * Contains the hooks that get registered with this EventManager. The array for storage utilizes a "flat"
1749 - * object literal such that looking up the hook utilizes the native object literal hash.
1750 - */
1751 - var STORAGE = {
1752 - actions: {},
1753 - filters: {}
1754 - };
3604 +//#endregion
3605 +//#region assets/dev/js/frontend/handlers/create-editor-handler.js
3606 + var require_create_editor_handler = /* @__PURE__ */ __commonJSMin(((exports) => {
3607 + Object.defineProperty(exports, "__esModule", { value: true });
3608 + exports.createEditorHandler = createEditorHandler;
3609 + function createEditorHandler(importer) {
3610 + return () => {
3611 + return new Promise((resolve) => {
3612 + if (elementorFrontend.isEditMode()) importer().then(resolve);
3613 + });
3614 + };
3615 + }
3616 + }));
1755 3617
1756 - /**
1757 - * Removes the specified hook by resetting the value of it.
1758 - *
1759 - * @param {string} type Type of hook, either 'actions' or 'filters'
1760 - * @param {Function} hook The hook (namespace.identifier) to remove
1761 - * @param {Function} callback
1762 - * @param {*} context
1763 - * @private
1764 - */
1765 - function _removeHook(type, hook, callback, context) {
1766 - var handlers, handler, i;
1767 - if (!STORAGE[type][hook]) {
1768 - return;
1769 - }
1770 - if (!callback) {
1771 - STORAGE[type][hook] = [];
1772 - } else {
1773 - handlers = STORAGE[type][hook];
1774 - if (!context) {
1775 - for (i = handlers.length; i--;) {
1776 - if (handlers[i].callback === callback) {
1777 - handlers.splice(i, 1);
1778 - }
1779 - }
1780 - } else {
1781 - for (i = handlers.length; i--;) {
1782 - handler = handlers[i];
1783 - if (handler.callback === callback && handler.context === context) {
1784 - handlers.splice(i, 1);
1785 - }
1786 - }
1787 - }
1788 - }
1789 - }
3618 +//#endregion
3619 +//#region assets/dev/js/frontend/handlers/container/container.js
3620 + var require_container = /* @__PURE__ */ __commonJSMin(((exports) => {
3621 + Object.defineProperty(exports, "__esModule", { value: true });
3622 + exports.default = void 0;
3623 + var _createEditorHandler = require_create_editor_handler();
3624 + exports.default = [
3625 + () => __elementorLoadChunk("background-slideshow"),
3626 + () => __elementorLoadChunk("background-video"),
3627 + (0, _createEditorHandler.createEditorHandler)(() => __elementorLoadChunk("handles-position")),
3628 + (0, _createEditorHandler.createEditorHandler)(() => __elementorLoadChunk("container-shapes")),
3629 + (0, _createEditorHandler.createEditorHandler)(() => __elementorLoadChunk("container-grid-container"))
3630 + ];
3631 + }));
1790 3632
1791 - /**
1792 - * Use an insert sort for keeping our hooks organized based on priority. This function is ridiculously faster
1793 - * than bubble sort, etc: http://jsperf.com/javascript-sort
1794 - *
1795 - * @param {Array<*>} hooks The custom array containing all of the appropriate hooks to perform an insert sort on.
1796 - * @private
1797 - */
1798 - function _hookInsertSort(hooks) {
1799 - var tmpHook, j, prevHook;
1800 - for (var i = 1, len = hooks.length; i < len; i++) {
1801 - tmpHook = hooks[i];
1802 - j = i;
1803 - while ((prevHook = hooks[j - 1]) && prevHook.priority > tmpHook.priority) {
1804 - hooks[j] = hooks[j - 1];
1805 - --j;
1806 - }
1807 - hooks[j] = tmpHook;
1808 - }
1809 - return hooks;
1810 - }
3633 +//#endregion
3634 +//#region assets/dev/js/frontend/handlers/section/section.js
3635 + var require_section = /* @__PURE__ */ __commonJSMin(((exports) => {
3636 + Object.defineProperty(exports, "__esModule", { value: true });
3637 + exports.default = void 0;
3638 + var _createEditorHandler = require_create_editor_handler();
3639 + exports.default = [
3640 + () => __elementorLoadChunk("section-stretched-section"),
3641 + () => __elementorLoadChunk("background-slideshow"),
3642 + () => __elementorLoadChunk("background-video"),
3643 + (0, _createEditorHandler.createEditorHandler)(() => __elementorLoadChunk("handles-position")),
3644 + (0, _createEditorHandler.createEditorHandler)(() => __elementorLoadChunk("section-shapes"))
3645 + ];
3646 + }));
1811 3647
1812 - /**
1813 - * Adds the hook to the appropriate storage container
1814 - *
1815 - * @param {string} type 'actions' or 'filters'
1816 - * @param {Array<*>} hook The hook (namespace.identifier) to add to our event manager
1817 - * @param {Function} callback The function that will be called when the hook is executed.
1818 - * @param {number} priority The priority of this hook. Must be an integer.
1819 - * @param {*} [context] A value to be used for this
1820 - * @private
1821 - */
1822 - function _addHook(type, hook, callback, priority, context) {
1823 - var hookObject = {
1824 - callback,
1825 - priority,
1826 - context
1827 - };
3648 +//#endregion
3649 +//#region assets/dev/js/frontend/handlers/column.js
3650 + var require_column = /* @__PURE__ */ __commonJSMin(((exports) => {
3651 + Object.defineProperty(exports, "__esModule", { value: true });
3652 + exports.default = void 0;
3653 + exports.default = [() => __elementorLoadChunk("background-slideshow")];
3654 + }));
1828 3655
1829 - // Utilize 'prop itself' : http://jsperf.com/hasownproperty-vs-in-vs-undefined/19
1830 - var hooks = STORAGE[type][hook];
1831 - if (hooks) {
1832 - // TEMP FIX BUG
1833 - var hasSameCallback = false;
1834 - jQuery.each(hooks, function () {
1835 - if (this.callback === callback) {
1836 - hasSameCallback = true;
1837 - return false;
1838 - }
1839 - });
1840 - if (hasSameCallback) {
1841 - return;
1842 - }
1843 - // END TEMP FIX BUG
3656 +//#endregion
3657 +//#region assets/dev/js/frontend/elements-handlers-manager.js
3658 + var require_elements_handlers_manager = /* @__PURE__ */ __commonJSMin(((exports, module) => {
3659 + var _interopRequireDefault = require_interopRequireDefault();
3660 + require_esnext_iterator_constructor();
3661 + require_esnext_iterator_for_each();
3662 + var _global = _interopRequireDefault(require_global());
3663 + var _container = _interopRequireDefault(require_container());
3664 + var _section = _interopRequireDefault(require_section());
3665 + var _column = _interopRequireDefault(require_column());
3666 + module.exports = function($) {
3667 + const handlersInstances = {};
3668 + this.elementsHandlers = {
3669 + "accordion.default": () => __elementorLoadChunk("accordion"),
3670 + "alert.default": () => __elementorLoadChunk("alert"),
3671 + "counter.default": () => __elementorLoadChunk("counter"),
3672 + "progress.default": () => __elementorLoadChunk("progress"),
3673 + "tabs.default": () => __elementorLoadChunk("tabs"),
3674 + "toggle.default": () => __elementorLoadChunk("toggle"),
3675 + "video.default": () => __elementorLoadChunk("video"),
3676 + "image-carousel.default": () => __elementorLoadChunk("image-carousel"),
3677 + "text-editor.default": () => __elementorLoadChunk("text-editor"),
3678 + "wp-widget-media_audio.default": () => __elementorLoadChunk("wp-audio"),
3679 + container: _container.default,
3680 + section: _section.default,
3681 + column: _column.default
3682 + };
3683 + if (elementorFrontendConfig.experimentalFeatures.container) {
3684 + this.elementsHandlers["nested-tabs.default"] = () => __elementorLoadChunk("nested-tabs");
3685 + this.elementsHandlers["nested-accordion.default"] = () => __elementorLoadChunk("nested-accordion");
3686 + }
3687 + if (elementorFrontendConfig.experimentalFeatures.container) {
3688 + this.elementsHandlers["contact-buttons.default"] = () => __elementorLoadChunk("contact-buttons");
3689 + this.elementsHandlers["floating-bars-var-1.default"] = () => __elementorLoadChunk("floating-bars");
3690 + }
3691 + const addGlobalHandlers = () => elementorFrontend.hooks.addAction("frontend/element_ready/global", _global.default);
3692 + const addElementsHandlers = () => {
3693 + $.each(this.elementsHandlers, (elementName, Handlers) => {
3694 + const elementData = elementName.split(".");
3695 + elementName = elementData[0];
3696 + const skin = elementData[1] || null;
3697 + this.attachHandler(elementName, Handlers, skin);
3698 + });
3699 + };
3700 + const isClassHandler = (Handler) => {
3701 + var _Handler$prototype;
3702 + return (_Handler$prototype = Handler.prototype) === null || _Handler$prototype === void 0 ? void 0 : _Handler$prototype.getUniqueHandlerID;
3703 + };
3704 + const addHandlerWithHook = (elementBaseName, Handler, skin = "default") => {
3705 + skin = skin ? "." + skin : "";
3706 + const elementName = elementBaseName + skin;
3707 + elementorFrontend.hooks.addAction(`frontend/element_ready/${elementName}`, ($element) => {
3708 + if (isClassHandler(Handler)) this.addHandler(Handler, {
3709 + $element,
3710 + elementName
3711 + }, true);
3712 + else {
3713 + const handlerValue = Handler();
3714 + if (!handlerValue) return;
3715 + if (handlerValue instanceof Promise) handlerValue.then(({ default: dynamicHandler }) => {
3716 + this.addHandler(dynamicHandler, {
3717 + $element,
3718 + elementName
3719 + }, true);
3720 + });
3721 + else this.addHandler(handlerValue, {
3722 + $element,
3723 + elementName
3724 + }, true);
3725 + }
3726 + });
3727 + };
3728 + this.addHandler = function(HandlerClass, options) {
3729 + const elementID = options.$element.data("model-cid");
3730 + let handlerID;
3731 + if (elementID) {
3732 + handlerID = HandlerClass.prototype.getConstructorID();
3733 + if (!handlersInstances[elementID]) handlersInstances[elementID] = {};
3734 + const oldHandler = handlersInstances[elementID][handlerID];
3735 + if (oldHandler) oldHandler.onDestroy();
3736 + }
3737 + const newHandler = new HandlerClass(options);
3738 + elementorFrontend.hooks.doAction(`frontend/element_handler_ready/${options.elementName}`, options.$element, $);
3739 + if (elementID) handlersInstances[elementID][handlerID] = newHandler;
3740 + };
3741 + this.attachHandler = (elementName, Handlers, skin) => {
3742 + if (!Array.isArray(Handlers)) Handlers = [Handlers];
3743 + Handlers.forEach((Handler) => addHandlerWithHook(elementName, Handler, skin));
3744 + };
3745 + this.getHandler = function(handlerName) {
3746 + const elementHandler = this.elementsHandlers[handlerName];
3747 + if (isClassHandler(elementHandler)) return elementHandler;
3748 + return new Promise((res) => {
3749 + elementHandler().then(({ default: dynamicHandler }) => {
3750 + res(dynamicHandler);
3751 + });
3752 + });
3753 + };
3754 + /**
3755 + * @param {string} handlerName
3756 + * @deprecated since 3.1.0, use `elementorFrontend.elementsHandler.getHandler` instead.
3757 + */
3758 + this.getHandlers = function(handlerName) {
3759 + elementorDevTools.deprecation.deprecated("getHandlers", "3.1.0", "elementorFrontend.elementsHandler.getHandler");
3760 + if (handlerName) return this.getHandler(handlerName);
3761 + return this.elementsHandlers;
3762 + };
3763 + this.runReadyTrigger = function(scope) {
3764 + const isDelayChildHandlers = !!scope.closest("[data-delay-child-handlers=\"true\"]") && 0 !== scope.closest("[data-delay-child-handlers=\"true\"]").length;
3765 + if (elementorFrontend.config.is_static || isDelayChildHandlers) return;
3766 + const $scope = jQuery(scope);
3767 + const elementType = $scope.attr("data-element_type");
3768 + if (!elementType) return;
3769 + elementorFrontend.hooks.doAction("frontend/element_ready/global", $scope, $);
3770 + elementorFrontend.hooks.doAction(`frontend/element_ready/${elementType}`, $scope, $);
3771 + if ("widget" === elementType) {
3772 + const widgetType = $scope.attr("data-widget_type");
3773 + elementorFrontend.hooks.doAction(`frontend/element_ready/${widgetType}`, $scope, $);
3774 + }
3775 + };
3776 + this.init = () => {
3777 + addGlobalHandlers();
3778 + addElementsHandlers();
3779 + };
3780 + };
3781 + }));
1844 3782
1845 - hooks.push(hookObject);
1846 - hooks = _hookInsertSort(hooks);
1847 - } else {
1848 - hooks = [hookObject];
1849 - }
1850 - STORAGE[type][hook] = hooks;
1851 - }
3783 +//#endregion
3784 +//#region assets/dev/js/frontend/frontend.js
3785 + var require_frontend = /* @__PURE__ */ __commonJSMin(((exports) => {
3786 + var _interopRequireDefault = require_interopRequireDefault();
3787 + Object.defineProperty(exports, "__esModule", { value: true });
3788 + exports.default = void 0;
3789 + require_esnext_iterator_constructor();
3790 + require_esnext_iterator_find();
3791 + require_esnext_iterator_for_each();
3792 + require_public_path();
3793 + require_chunk_loader();
3794 + var _documentsManager = _interopRequireDefault(require_documents_manager());
3795 + var _storage = _interopRequireDefault(require_storage());
3796 + var _environment = _interopRequireDefault(require_environment());
3797 + var _youtubeLoader = _interopRequireDefault(require_youtube_loader());
3798 + var _vimeoLoader = _interopRequireDefault(require_vimeo_loader());
3799 + var _baseLoader = _interopRequireDefault(require_base_loader());
3800 + var _urlActions = _interopRequireDefault(require_url_actions());
3801 + var _swiper = _interopRequireDefault(require_swiper());
3802 + var _lightboxManager = _interopRequireDefault(require_lightbox_manager());
3803 + var _assetsLoader = _interopRequireDefault(require_assets_loader());
3804 + var _breakpoints = _interopRequireDefault(require_breakpoints());
3805 + var _events = _interopRequireDefault(require_events());
3806 + var _frontend = _interopRequireDefault(require_frontend$1());
3807 + var _controls = _interopRequireDefault(require_controls());
3808 + var _anchorScrollMargin = _interopRequireDefault(require_anchor_scroll_margin());
3809 + var _utils = require_utils();
3810 + var EventManager = require_hooks();
3811 + var ElementsHandler = require_elements_handlers_manager();
3812 + var Frontend = class extends elementorModules.ViewModule {
3813 + constructor(...args) {
3814 + super(...args);
3815 + this.config = elementorFrontendConfig;
3816 + this.config.legacyMode = {
3817 + /**
3818 + * @deprecated since 3.1.0
3819 + */
3820 +get elementWrappers() {
3821 + if (elementorFrontend.isEditMode()) window.top.elementorDevTools.deprecation.deprecated("elementorFrontend.config.legacyMode.elementWrappers", "3.1.0");
3822 + return false;
3823 + } };
3824 + this.populateActiveBreakpointsConfig();
3825 + }
3826 + /**
3827 + * @deprecated since 2.5.0, use `elementorModules.frontend.handlers.Base` instead.
3828 + */
3829 + get Module() {
3830 + if (this.isEditMode()) parent.elementorDevTools.deprecation.deprecated("elementorFrontend.Module", "2.5.0", "elementorModules.frontend.handlers.Base");
3831 + return elementorModules.frontend.handlers.Base;
3832 + }
3833 + getDefaultSettings() {
3834 + return { selectors: {
3835 + elementor: ".elementor",
3836 + adminBar: "#wpadminbar"
3837 + } };
3838 + }
3839 + getDefaultElements() {
3840 + const defaultElements = {
3841 + window,
3842 + $window: jQuery(window),
3843 + $document: jQuery(document),
3844 + $head: jQuery(document.head),
3845 + $body: jQuery(document.body),
3846 + $deviceMode: jQuery("<span>", {
3847 + id: "elementor-device-mode",
3848 + class: "elementor-screen-only"
3849 + })
3850 + };
3851 + defaultElements.$body.append(defaultElements.$deviceMode);
3852 + return defaultElements;
3853 + }
3854 + bindEvents() {
3855 + this.elements.$window.on("resize", () => this.setDeviceModeData());
3856 + }
3857 + /**
3858 + * @param {string} elementName
3859 + * @deprecated since 2.4.0, use `this.elements` instead.
3860 + */
3861 + getElements(elementName) {
3862 + return this.getItems(this.elements, elementName);
3863 + }
3864 + /**
3865 + * @param {string} settingName
3866 + * @deprecated since 2.4.0, this method was never in use.
3867 + */
3868 + getPageSettings(settingName) {
3869 + const settingsObject = this.isEditMode() ? elementor.settings.page.model.attributes : this.config.settings.page;
3870 + return this.getItems(settingsObject, settingName);
3871 + }
3872 + /**
3873 + * @param {string} settingName
3874 + * @deprecated since 3.0.0, use `getKitSettings()` instead and remove the `elementor_` prefix.
3875 + */
3876 + getGeneralSettings(settingName) {
3877 + if (this.isEditMode()) parent.elementorDevTools.deprecation.deprecated("getGeneralSettings()", "3.0.0", "getKitSettings() and remove the `elementor_` prefix");
3878 + return this.getKitSettings(`elementor_${settingName}`);
3879 + }
3880 + getKitSettings(settingName) {
3881 + return this.getItems(this.config.kit, settingName);
3882 + }
3883 + getCurrentDeviceMode() {
3884 + return getComputedStyle(this.elements.$deviceMode[0], ":after").content.replace(/"/g, "");
3885 + }
3886 + getDeviceSetting(deviceMode, settings, settingKey) {
3887 + if ("widescreen" === deviceMode) return this.getWidescreenSetting(settings, settingKey);
3888 + const devices = elementorFrontend.breakpoints.getActiveBreakpointsList({
3889 + largeToSmall: true,
3890 + withDesktop: true
3891 + });
3892 + let deviceIndex = devices.indexOf(deviceMode);
3893 + while (deviceIndex > 0) {
3894 + const currentDevice = devices[deviceIndex];
3895 + const deviceValue = settings[settingKey + "_" + currentDevice];
3896 + if (deviceValue || 0 === deviceValue) return deviceValue;
3897 + deviceIndex--;
3898 + }
3899 + return settings[settingKey];
3900 + }
3901 + getWidescreenSetting(settings, settingKey) {
3902 + const widescreenSettingKey = settingKey + "_widescreen";
3903 + let settingToReturn;
3904 + if (settings[widescreenSettingKey]) settingToReturn = settings[widescreenSettingKey];
3905 + else settingToReturn = settings[settingKey];
3906 + return settingToReturn;
3907 + }
3908 + getCurrentDeviceSetting(settings, settingKey) {
3909 + return this.getDeviceSetting(elementorFrontend.getCurrentDeviceMode(), settings, settingKey);
3910 + }
3911 + isEditMode() {
3912 + return this.config.environmentMode.edit;
3913 + }
3914 + isWPPreviewMode() {
3915 + return this.config.environmentMode.wpPreview;
3916 + }
3917 + initDialogsManager() {
3918 + let dialogsManager;
3919 + this.getDialogsManager = () => {
3920 + if (!dialogsManager) dialogsManager = new DialogsManager.Instance();
3921 + return dialogsManager;
3922 + };
3923 + }
3924 + initOnReadyComponents() {
3925 + this.utils = {
3926 + youtube: new _youtubeLoader.default(),
3927 + vimeo: new _vimeoLoader.default(),
3928 + baseVideoLoader: new _baseLoader.default(),
3929 + get lightbox() {
3930 + return _lightboxManager.default.getLightbox();
3931 + },
3932 + urlActions: new _urlActions.default(),
3933 + swiper: _swiper.default,
3934 + environment: _environment.default,
3935 + assetsLoader: new _assetsLoader.default(),
3936 + escapeHTML: _utils.escapeHTML,
3937 + events: _events.default,
3938 + controls: new _controls.default(),
3939 + anchor_scroll_margin: new _anchorScrollMargin.default()
3940 + };
3941 + this.modules = {
3942 + StretchElement: elementorModules.frontend.tools.StretchElement,
3943 + Masonry: elementorModules.utils.Masonry
3944 + };
3945 + this.elementsHandler.init();
3946 + if (this.isEditMode()) elementor.once("document:loaded", () => this.onDocumentLoaded());
3947 + else this.onDocumentLoaded();
3948 + }
3949 + initOnReadyElements() {
3950 + this.elements.$wpAdminBar = this.elements.$document.find(this.getSettings("selectors.adminBar"));
3951 + }
3952 + addUserAgentClasses() {
3953 + for (const [key, value] of Object.entries(_environment.default)) if (value) this.elements.$body.addClass("e--ua-" + key);
3954 + }
3955 + setDeviceModeData() {
3956 + this.elements.$body.attr("data-elementor-device-mode", this.getCurrentDeviceMode());
3957 + }
3958 + addListenerOnce(listenerID, event, callback, to) {
3959 + if (!to) to = this.elements.$window;
3960 + if (!this.isEditMode()) {
3961 + to.on(event, callback);
3962 + return;
3963 + }
3964 + this.removeListeners(listenerID, event, to);
3965 + if (to instanceof jQuery) {
3966 + const eventNS = event + "." + listenerID;
3967 + to.on(eventNS, callback);
3968 + } else to.on(event, callback, listenerID);
3969 + }
3970 + removeListeners(listenerID, event, callback, from) {
3971 + if (!from) from = this.elements.$window;
3972 + if (from instanceof jQuery) {
3973 + const eventNS = event + "." + listenerID;
3974 + from.off(eventNS, callback);
3975 + } else from.off(event, callback, listenerID);
3976 + }
3977 + debounce(func, wait) {
3978 + let timeout;
3979 + return function() {
3980 + const context = this;
3981 + const args = arguments;
3982 + const later = () => {
3983 + timeout = null;
3984 + func.apply(context, args);
3985 + };
3986 + const callNow = !timeout;
3987 + clearTimeout(timeout);
3988 + timeout = setTimeout(later, wait);
3989 + if (callNow) func.apply(context, args);
3990 + };
3991 + }
3992 + muteMigrationTraces() {
3993 + jQuery.migrateMute = true;
3994 + jQuery.migrateTrace = false;
3995 + }
3996 + /**
3997 + * Initialize the modules' widgets handlers.
3998 + */
3999 + initModules() {
4000 + const handlers = { shapes: _frontend.default };
4001 + elementorFrontend.trigger("elementor/modules/init:before");
4002 + elementorFrontend.trigger("elementor/modules/init/before");
4003 + Object.entries(handlers).forEach(([moduleName, ModuleClass]) => {
4004 + this.modulesHandlers[moduleName] = new ModuleClass();
4005 + });
4006 + }
4007 + populateActiveBreakpointsConfig() {
4008 + this.config.responsive.activeBreakpoints = {};
4009 + Object.entries(this.config.responsive.breakpoints).forEach(([breakpointKey, breakpointData]) => {
4010 + if (breakpointData.is_enabled) this.config.responsive.activeBreakpoints[breakpointKey] = breakpointData;
4011 + });
4012 + }
4013 + init() {
4014 + this.hooks = new EventManager();
4015 + this.breakpoints = new _breakpoints.default(this.config.responsive);
4016 + this.storage = new _storage.default();
4017 + this.elementsHandler = new ElementsHandler(jQuery);
4018 + this.modulesHandlers = {};
4019 + this.addUserAgentClasses();
4020 + this.setDeviceModeData();
4021 + this.initDialogsManager();
4022 + if (this.isEditMode()) this.muteMigrationTraces();
4023 + _events.default.dispatch(this.elements.$window, "elementor/frontend/init");
4024 + this.initModules();
4025 + this.initOnReadyElements();
4026 + this.initOnReadyComponents();
4027 + }
4028 + onDocumentLoaded() {
4029 + this.documentsManager = new _documentsManager.default();
4030 + this.trigger("components:init");
4031 + new _lightboxManager.default();
4032 + }
4033 + };
4034 + exports.default = Frontend;
4035 + window.elementorFrontend = new Frontend();
4036 + if (!elementorFrontend.isEditMode()) jQuery(() => elementorFrontend.init());
4037 + }));
1852 4038
1853 - /**
1854 - * Runs the specified hook. If it is an action, the value is not modified but if it is a filter, it is.
1855 - *
1856 - * @param {string} type 'actions' or 'filters'
1857 - * @param {*} hook The hook ( namespace.identifier ) to be ran.
1858 - * @param {Array<*>} args Arguments to pass to the action/filter. If it's a filter, args is actually a single parameter.
1859 - * @private
1860 - */
1861 - function _runHook(type, hook, args) {
1862 - var handlers = STORAGE[type][hook],
1863 - i,
1864 - len;
1865 - if (!handlers) {
1866 - return 'filters' === type ? args[0] : false;
1867 - }
1868 - len = handlers.length;
1869 - if ('filters' === type) {
1870 - for (i = 0; i < len; i++) {
1871 - args[0] = handlers[i].callback.apply(handlers[i].context, args);
1872 - }
1873 - } else {
1874 - for (i = 0; i < len; i++) {
1875 - handlers[i].callback.apply(handlers[i].context, args);
1876 - }
1877 - }
1878 - return 'filters' === type ? args[0] : true;
1879 - }
4039 +//#endregion
4040 +return require_frontend();
1880 4041
1881 - /**
1882 - * Adds an action to the event manager.
1883 - *
1884 - * @param {string} action Must contain namespace.identifier
1885 - * @param {Function} callback Must be a valid callback function before this action is added
1886 - * @param {number} [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
1887 - * @param {*} [context] Supply a value to be used for this
1888 - */
1889 - function addAction(action, callback, priority, context) {
1890 - if ('string' === typeof action && 'function' === typeof callback) {
1891 - priority = parseInt(priority || 10, 10);
1892 - _addHook('actions', action, callback, priority, context);
1893 - }
1894 - return MethodsAvailable;
1895 - }
1896 -
1897 - /**
1898 - * Performs an action if it exists. You can pass as many arguments as you want to this function; the only rule is
1899 - * that the first argument must always be the action.
1900 - */
1901 - function doAction(/* Action, arg1, arg2, ... */
1902 - ) {
1903 - var args = slice.call(arguments);
1904 - var action = args.shift();
1905 - if ('string' === typeof action) {
1906 - _runHook('actions', action, args);
1907 - }
1908 - return MethodsAvailable;
1909 - }
1910 -
1911 - /**
1912 - * Removes the specified action if it contains a namespace.identifier & exists.
1913 - *
1914 - * @param {string} action The action to remove
1915 - * @param {Function} [callback] Callback function to remove
1916 - */
1917 - function removeAction(action, callback) {
1918 - if ('string' === typeof action) {
1919 - _removeHook('actions', action, callback);
1920 - }
1921 - return MethodsAvailable;
1922 - }
1923 -
1924 - /**
1925 - * Adds a filter to the event manager.
1926 - *
1927 - * @param {string} filter Must contain namespace.identifier
1928 - * @param {Function} callback Must be a valid callback function before this action is added
1929 - * @param {number} [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
1930 - * @param {*} [context] Supply a value to be used for this
1931 - */
1932 - function addFilter(filter, callback, priority, context) {
1933 - if ('string' === typeof filter && 'function' === typeof callback) {
1934 - priority = parseInt(priority || 10, 10);
1935 - _addHook('filters', filter, callback, priority, context);
1936 - }
1937 - return MethodsAvailable;
1938 - }
1939 -
1940 - /**
1941 - * Performs a filter if it exists. You should only ever pass 1 argument to be filtered. The only rule is that
1942 - * the first argument must always be the filter.
1943 - */
1944 - function applyFilters(/* Filter, filtered arg, arg2, ... */
1945 - ) {
1946 - var args = slice.call(arguments);
1947 - var filter = args.shift();
1948 - if ('string' === typeof filter) {
1949 - return _runHook('filters', filter, args);
1950 - }
1951 - return MethodsAvailable;
1952 - }
1953 -
1954 - /**
1955 - * Removes the specified filter if it contains a namespace.identifier & exists.
1956 - *
1957 - * @param {string} filter The action to remove
1958 - * @param {Function} [callback] Callback function to remove
1959 - */
1960 - function removeFilter(filter, callback) {
1961 - if ('string' === typeof filter) {
1962 - _removeHook('filters', filter, callback);
1963 - }
1964 - return MethodsAvailable;
1965 - }
1966 -
1967 - /**
1968 - * Maintain a reference to the object scope so our public methods never get confusing.
1969 - */
1970 - MethodsAvailable = {
1971 - removeFilter,
1972 - applyFilters,
1973 - addFilter,
1974 - removeAction,
1975 - doAction,
1976 - addAction
1977 - };
1978 -
1979 - // Return all of the publicly available methods
1980 - return MethodsAvailable;
1981 -};
1982 -module.exports = EventManager;
1983 -
1984 -/***/ }),
1985 -
1986 -/***/ "../core/common/assets/js/utils/environment.js":
1987 -/*!*****************************************************!*\
1988 - !*** ../core/common/assets/js/utils/environment.js ***!
1989 - \*****************************************************/
1990 -/***/ ((__unused_webpack_module, exports) => {
1991 -
1992 -
1993 -
1994 -Object.defineProperty(exports, "__esModule", ({
1995 - value: true
1996 -}));
1997 -exports["default"] = void 0;
1998 -const matchUserAgent = UserAgentStr => {
1999 - return userAgent.indexOf(UserAgentStr) >= 0;
2000 - },
2001 - userAgent = navigator.userAgent,
2002 - // Solution influenced by https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
2003 -
2004 - // Opera 8.0+
2005 - isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(' OPR/'),
2006 - // Firefox 1.0+
2007 - isFirefox = matchUserAgent('Firefox'),
2008 - // Safari 3.0+ "[object HTMLElementConstructor]"
2009 - isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || (p => {
2010 - return '[object SafariRemoteNotification]' === p.toString();
2011 - })(!window.safari || typeof safari !== 'undefined' && safari.pushNotification),
2012 - // Internet Explorer 6-11
2013 - isIE = /Trident|MSIE/.test(userAgent) && (/* @cc_on!@*/ false || !!document.documentMode),
2014 - // Edge 20+
2015 - isEdge = !isIE && !!window.StyleMedia || matchUserAgent('Edg'),
2016 - // Google Chrome (Not accurate)
2017 - isChrome = !!window.chrome && matchUserAgent('Chrome') && !(isEdge || isOpera),
2018 - // Blink engine
2019 - isBlink = matchUserAgent('Chrome') && !!window.CSS,
2020 - // Apple Webkit engine
2021 - isAppleWebkit = matchUserAgent('AppleWebKit') && !isBlink,
2022 - isTouchDevice = 'ontouchstart' in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0,
2023 - environment = {
2024 - isTouchDevice,
2025 - appleWebkit: isAppleWebkit,
2026 - blink: isBlink,
2027 - chrome: isChrome,
2028 - edge: isEdge,
2029 - firefox: isFirefox,
2030 - ie: isIE,
2031 - mac: matchUserAgent('Macintosh'),
2032 - opera: isOpera,
2033 - safari: isSafari,
2034 - webkit: matchUserAgent('AppleWebKit')
2035 - };
2036 -var _default = exports["default"] = environment;
2037 -
2038 -/***/ }),
2039 -
2040 -/***/ "../core/common/assets/js/utils/storage.js":
2041 -/*!*************************************************!*\
2042 - !*** ../core/common/assets/js/utils/storage.js ***!
2043 - \*************************************************/
2044 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2045 -
2046 -
2047 -
2048 -Object.defineProperty(exports, "__esModule", ({
2049 - value: true
2050 -}));
2051 -exports["default"] = void 0;
2052 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
2053 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
2054 -class _default extends elementorModules.Module {
2055 - get(key, options) {
2056 - options = options || {};
2057 - let storage;
2058 - try {
2059 - storage = options.session ? sessionStorage : localStorage;
2060 - } catch (e) {
2061 - return key ? undefined : {};
2062 - }
2063 - let elementorStorage = storage.getItem('elementor');
2064 - if (elementorStorage) {
2065 - elementorStorage = JSON.parse(elementorStorage);
2066 - } else {
2067 - elementorStorage = {};
2068 - }
2069 - if (!elementorStorage.__expiration) {
2070 - elementorStorage.__expiration = {};
2071 - }
2072 - const expiration = elementorStorage.__expiration;
2073 - let expirationToCheck = [];
2074 - if (key) {
2075 - if (expiration[key]) {
2076 - expirationToCheck = [key];
2077 - }
2078 - } else {
2079 - expirationToCheck = Object.keys(expiration);
2080 - }
2081 - let entryExpired = false;
2082 - expirationToCheck.forEach(expirationKey => {
2083 - if (new Date(expiration[expirationKey]) < new Date()) {
2084 - delete elementorStorage[expirationKey];
2085 - delete expiration[expirationKey];
2086 - entryExpired = true;
2087 - }
2088 - });
2089 - if (entryExpired) {
2090 - this.save(elementorStorage, options.session);
2091 - }
2092 - if (key) {
2093 - return elementorStorage[key];
2094 - }
2095 - return elementorStorage;
2096 - }
2097 - set(key, value, options) {
2098 - options = options || {};
2099 - const elementorStorage = this.get(null, options);
2100 - elementorStorage[key] = value;
2101 - if (options.lifetimeInSeconds) {
2102 - const date = new Date();
2103 - date.setTime(date.getTime() + options.lifetimeInSeconds * 1000);
2104 - elementorStorage.__expiration[key] = date.getTime();
2105 - }
2106 - this.save(elementorStorage, options.session);
2107 - }
2108 - save(object, session) {
2109 - let storage;
2110 - try {
2111 - storage = session ? sessionStorage : localStorage;
2112 - } catch (e) {
2113 - return;
2114 - }
2115 - storage.setItem('elementor', JSON.stringify(object));
2116 - }
2117 -}
2118 -exports["default"] = _default;
2119 -
2120 -/***/ }),
2121 -
2122 -/***/ "../modules/shapes/assets/js/frontend/frontend.js":
2123 -/*!********************************************************!*\
2124 - !*** ../modules/shapes/assets/js/frontend/frontend.js ***!
2125 - \********************************************************/
2126 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2127 -
2128 -
2129 -
2130 -Object.defineProperty(exports, "__esModule", ({
2131 - value: true
2132 -}));
2133 -exports["default"] = void 0;
2134 -class _default extends elementorModules.Module {
2135 - constructor() {
2136 - super();
2137 - elementorFrontend.elementsHandler.attachHandler('text-path', () => Promise.all(/*! import() | text-path */[__webpack_require__.e("vendors-node_modules_dompurify_dist_purify_cjs_js"), __webpack_require__.e("text-path")]).then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/text-path */ "../modules/shapes/assets/js/frontend/handlers/text-path.js")));
2138 - }
2139 -}
2140 -exports["default"] = _default;
2141 -
2142 -/***/ }),
2143 -
2144 -/***/ "../node_modules/core-js/internals/a-possible-prototype.js":
2145 -/*!*****************************************************************!*\
2146 - !*** ../node_modules/core-js/internals/a-possible-prototype.js ***!
2147 - \*****************************************************************/
2148 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2149 -
2150 -
2151 -var isPossiblePrototype = __webpack_require__(/*! ../internals/is-possible-prototype */ "../node_modules/core-js/internals/is-possible-prototype.js");
2152 -
2153 -var $String = String;
2154 -var $TypeError = TypeError;
2155 -
2156 -module.exports = function (argument) {
2157 - if (isPossiblePrototype(argument)) return argument;
2158 - throw new $TypeError("Can't set " + $String(argument) + ' as a prototype');
2159 -};
2160 -
2161 -
2162 -/***/ }),
2163 -
2164 -/***/ "../node_modules/core-js/internals/dom-exception-constants.js":
2165 -/*!********************************************************************!*\
2166 - !*** ../node_modules/core-js/internals/dom-exception-constants.js ***!
2167 - \********************************************************************/
2168 -/***/ ((module) => {
2169 -
2170 -
2171 -module.exports = {
2172 - IndexSizeError: { s: 'INDEX_SIZE_ERR', c: 1, m: 1 },
2173 - DOMStringSizeError: { s: 'DOMSTRING_SIZE_ERR', c: 2, m: 0 },
2174 - HierarchyRequestError: { s: 'HIERARCHY_REQUEST_ERR', c: 3, m: 1 },
2175 - WrongDocumentError: { s: 'WRONG_DOCUMENT_ERR', c: 4, m: 1 },
2176 - InvalidCharacterError: { s: 'INVALID_CHARACTER_ERR', c: 5, m: 1 },
2177 - NoDataAllowedError: { s: 'NO_DATA_ALLOWED_ERR', c: 6, m: 0 },
2178 - NoModificationAllowedError: { s: 'NO_MODIFICATION_ALLOWED_ERR', c: 7, m: 1 },
2179 - NotFoundError: { s: 'NOT_FOUND_ERR', c: 8, m: 1 },
2180 - NotSupportedError: { s: 'NOT_SUPPORTED_ERR', c: 9, m: 1 },
2181 - InUseAttributeError: { s: 'INUSE_ATTRIBUTE_ERR', c: 10, m: 1 },
2182 - InvalidStateError: { s: 'INVALID_STATE_ERR', c: 11, m: 1 },
2183 - SyntaxError: { s: 'SYNTAX_ERR', c: 12, m: 1 },
2184 - InvalidModificationError: { s: 'INVALID_MODIFICATION_ERR', c: 13, m: 1 },
2185 - NamespaceError: { s: 'NAMESPACE_ERR', c: 14, m: 1 },
2186 - InvalidAccessError: { s: 'INVALID_ACCESS_ERR', c: 15, m: 1 },
2187 - ValidationError: { s: 'VALIDATION_ERR', c: 16, m: 0 },
2188 - TypeMismatchError: { s: 'TYPE_MISMATCH_ERR', c: 17, m: 1 },
2189 - SecurityError: { s: 'SECURITY_ERR', c: 18, m: 1 },
2190 - NetworkError: { s: 'NETWORK_ERR', c: 19, m: 1 },
2191 - AbortError: { s: 'ABORT_ERR', c: 20, m: 1 },
2192 - URLMismatchError: { s: 'URL_MISMATCH_ERR', c: 21, m: 1 },
2193 - QuotaExceededError: { s: 'QUOTA_EXCEEDED_ERR', c: 22, m: 1 },
2194 - TimeoutError: { s: 'TIMEOUT_ERR', c: 23, m: 1 },
2195 - InvalidNodeTypeError: { s: 'INVALID_NODE_TYPE_ERR', c: 24, m: 1 },
2196 - DataCloneError: { s: 'DATA_CLONE_ERR', c: 25, m: 1 }
2197 -};
2198 -
2199 -
2200 -/***/ }),
2201 -
2202 -/***/ "../node_modules/core-js/internals/error-stack-clear.js":
2203 -/*!**************************************************************!*\
2204 - !*** ../node_modules/core-js/internals/error-stack-clear.js ***!
2205 - \**************************************************************/
2206 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2207 -
2208 -
2209 -var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
2210 -
2211 -var $Error = Error;
2212 -var replace = uncurryThis(''.replace);
2213 -
2214 -var TEST = (function (arg) { return String(new $Error(arg).stack); })('zxcasd');
2215 -// eslint-disable-next-line redos/no-vulnerable, sonarjs/slow-regex -- safe
2216 -var V8_OR_CHAKRA_STACK_ENTRY = /\n\s*at [^:]*:[^\n]*/;
2217 -var IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);
2218 -
2219 -module.exports = function (stack, dropEntries) {
2220 - if (IS_V8_OR_CHAKRA_STACK && typeof stack == 'string' && !$Error.prepareStackTrace) {
2221 - while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, '');
2222 - } return stack;
2223 -};
2224 -
2225 -
2226 -/***/ }),
2227 -
2228 -/***/ "../node_modules/core-js/internals/function-uncurry-this-accessor.js":
2229 -/*!***************************************************************************!*\
2230 - !*** ../node_modules/core-js/internals/function-uncurry-this-accessor.js ***!
2231 - \***************************************************************************/
2232 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2233 -
2234 -
2235 -var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
2236 -var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js");
2237 -
2238 -module.exports = function (object, key, method) {
2239 - try {
2240 - // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
2241 - return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));
2242 - } catch (error) { /* empty */ }
2243 -};
2244 -
2245 -
2246 -/***/ }),
2247 -
2248 -/***/ "../node_modules/core-js/internals/inherit-if-required.js":
2249 -/*!****************************************************************!*\
2250 - !*** ../node_modules/core-js/internals/inherit-if-required.js ***!
2251 - \****************************************************************/
2252 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2253 -
2254 -
2255 -var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
2256 -var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
2257 -var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ "../node_modules/core-js/internals/object-set-prototype-of.js");
2258 -
2259 -// makes subclassing work correct for wrapped built-ins
2260 -module.exports = function ($this, dummy, Wrapper) {
2261 - var NewTarget, NewTargetPrototype;
2262 - if (
2263 - // it can work only with native `setPrototypeOf`
2264 - setPrototypeOf &&
2265 - // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
2266 - isCallable(NewTarget = dummy.constructor) &&
2267 - NewTarget !== Wrapper &&
2268 - isObject(NewTargetPrototype = NewTarget.prototype) &&
2269 - NewTargetPrototype !== Wrapper.prototype
2270 - ) setPrototypeOf($this, NewTargetPrototype);
2271 - return $this;
2272 -};
2273 -
2274 -
2275 -/***/ }),
2276 -
2277 -/***/ "../node_modules/core-js/internals/is-possible-prototype.js":
2278 -/*!******************************************************************!*\
2279 - !*** ../node_modules/core-js/internals/is-possible-prototype.js ***!
2280 - \******************************************************************/
2281 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2282 -
2283 -
2284 -var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
2285 -
2286 -module.exports = function (argument) {
2287 - return isObject(argument) || argument === null;
2288 -};
2289 -
2290 -
2291 -/***/ }),
2292 -
2293 -/***/ "../node_modules/core-js/internals/normalize-string-argument.js":
2294 -/*!**********************************************************************!*\
2295 - !*** ../node_modules/core-js/internals/normalize-string-argument.js ***!
2296 - \**********************************************************************/
2297 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2298 -
2299 -
2300 -var toString = __webpack_require__(/*! ../internals/to-string */ "../node_modules/core-js/internals/to-string.js");
2301 -
2302 -module.exports = function (argument, $default) {
2303 - return argument === undefined ? arguments.length < 2 ? '' : $default : toString(argument);
2304 -};
2305 -
2306 -
2307 -/***/ }),
2308 -
2309 -/***/ "../node_modules/core-js/internals/object-set-prototype-of.js":
2310 -/*!********************************************************************!*\
2311 - !*** ../node_modules/core-js/internals/object-set-prototype-of.js ***!
2312 - \********************************************************************/
2313 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2314 -
2315 -
2316 -/* eslint-disable no-proto -- safe */
2317 -var uncurryThisAccessor = __webpack_require__(/*! ../internals/function-uncurry-this-accessor */ "../node_modules/core-js/internals/function-uncurry-this-accessor.js");
2318 -var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
2319 -var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../node_modules/core-js/internals/require-object-coercible.js");
2320 -var aPossiblePrototype = __webpack_require__(/*! ../internals/a-possible-prototype */ "../node_modules/core-js/internals/a-possible-prototype.js");
2321 -
2322 -// `Object.setPrototypeOf` method
2323 -// https://tc39.es/ecma262/#sec-object.setprototypeof
2324 -// Works with __proto__ only. Old v8 can't work with null proto objects.
2325 -// eslint-disable-next-line es/no-object-setprototypeof -- safe
2326 -module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
2327 - var CORRECT_SETTER = false;
2328 - var test = {};
2329 - var setter;
2330 - try {
2331 - setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');
2332 - setter(test, []);
2333 - CORRECT_SETTER = test instanceof Array;
2334 - } catch (error) { /* empty */ }
2335 - return function setPrototypeOf(O, proto) {
2336 - requireObjectCoercible(O);
2337 - aPossiblePrototype(proto);
2338 - if (!isObject(O)) return O;
2339 - if (CORRECT_SETTER) setter(O, proto);
2340 - else O.__proto__ = proto;
2341 - return O;
2342 - };
2343 -}() : undefined);
2344 -
2345 -
2346 -/***/ }),
2347 -
2348 -/***/ "../node_modules/core-js/internals/to-string.js":
2349 -/*!******************************************************!*\
2350 - !*** ../node_modules/core-js/internals/to-string.js ***!
2351 - \******************************************************/
2352 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2353 -
2354 -
2355 -var classof = __webpack_require__(/*! ../internals/classof */ "../node_modules/core-js/internals/classof.js");
2356 -
2357 -var $String = String;
2358 -
2359 -module.exports = function (argument) {
2360 - if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
2361 - return $String(argument);
2362 -};
2363 -
2364 -
2365 -/***/ }),
2366 -
2367 -/***/ "../node_modules/core-js/modules/web.dom-exception.stack.js":
2368 -/*!******************************************************************!*\
2369 - !*** ../node_modules/core-js/modules/web.dom-exception.stack.js ***!
2370 - \******************************************************************/
2371 -/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
2372 -
2373 -
2374 -var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js");
2375 -var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
2376 -var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ "../node_modules/core-js/internals/get-built-in.js");
2377 -var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../node_modules/core-js/internals/create-property-descriptor.js");
2378 -var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js").f);
2379 -var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
2380 -var anInstance = __webpack_require__(/*! ../internals/an-instance */ "../node_modules/core-js/internals/an-instance.js");
2381 -var inheritIfRequired = __webpack_require__(/*! ../internals/inherit-if-required */ "../node_modules/core-js/internals/inherit-if-required.js");
2382 -var normalizeStringArgument = __webpack_require__(/*! ../internals/normalize-string-argument */ "../node_modules/core-js/internals/normalize-string-argument.js");
2383 -var DOMExceptionConstants = __webpack_require__(/*! ../internals/dom-exception-constants */ "../node_modules/core-js/internals/dom-exception-constants.js");
2384 -var clearErrorStack = __webpack_require__(/*! ../internals/error-stack-clear */ "../node_modules/core-js/internals/error-stack-clear.js");
2385 -var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
2386 -var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../node_modules/core-js/internals/is-pure.js");
2387 -
2388 -var DOM_EXCEPTION = 'DOMException';
2389 -var Error = getBuiltIn('Error');
2390 -var NativeDOMException = getBuiltIn(DOM_EXCEPTION);
2391 -
2392 -var $DOMException = function DOMException() {
2393 - anInstance(this, DOMExceptionPrototype);
2394 - var argumentsLength = arguments.length;
2395 - var message = normalizeStringArgument(argumentsLength < 1 ? undefined : arguments[0]);
2396 - var name = normalizeStringArgument(argumentsLength < 2 ? undefined : arguments[1], 'Error');
2397 - var that = new NativeDOMException(message, name);
2398 - var error = new Error(message);
2399 - error.name = DOM_EXCEPTION;
2400 - defineProperty(that, 'stack', createPropertyDescriptor(1, clearErrorStack(error.stack, 1)));
2401 - inheritIfRequired(that, this, $DOMException);
2402 - return that;
2403 -};
2404 -
2405 -var DOMExceptionPrototype = $DOMException.prototype = NativeDOMException.prototype;
2406 -
2407 -var ERROR_HAS_STACK = 'stack' in new Error(DOM_EXCEPTION);
2408 -var DOM_EXCEPTION_HAS_STACK = 'stack' in new NativeDOMException(1, 2);
2409 -
2410 -// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
2411 -var descriptor = NativeDOMException && DESCRIPTORS && Object.getOwnPropertyDescriptor(globalThis, DOM_EXCEPTION);
2412 -
2413 -// Bun ~ 0.1.1 DOMException have incorrect descriptor and we can't redefine it
2414 -// https://github.com/Jarred-Sumner/bun/issues/399
2415 -var BUGGY_DESCRIPTOR = !!descriptor && !(descriptor.writable && descriptor.configurable);
2416 -
2417 -var FORCED_CONSTRUCTOR = ERROR_HAS_STACK && !BUGGY_DESCRIPTOR && !DOM_EXCEPTION_HAS_STACK;
2418 -
2419 -// `DOMException` constructor patch for `.stack` where it's required
2420 -// https://webidl.spec.whatwg.org/#es-DOMException-specialness
2421 -$({ global: true, constructor: true, forced: IS_PURE || FORCED_CONSTRUCTOR }, { // TODO: fix export logic
2422 - DOMException: FORCED_CONSTRUCTOR ? $DOMException : NativeDOMException
2423 -});
2424 -
2425 -var PolyfilledDOMException = getBuiltIn(DOM_EXCEPTION);
2426 -var PolyfilledDOMExceptionPrototype = PolyfilledDOMException.prototype;
2427 -
2428 -if (PolyfilledDOMExceptionPrototype.constructor !== PolyfilledDOMException) {
2429 - if (!IS_PURE) {
2430 - defineProperty(PolyfilledDOMExceptionPrototype, 'constructor', createPropertyDescriptor(1, PolyfilledDOMException));
2431 - }
2432 -
2433 - for (var key in DOMExceptionConstants) if (hasOwn(DOMExceptionConstants, key)) {
2434 - var constant = DOMExceptionConstants[key];
2435 - var constantName = constant.s;
2436 - if (!hasOwn(PolyfilledDOMException, constantName)) {
2437 - defineProperty(PolyfilledDOMException, constantName, createPropertyDescriptor(6, constant.c));
2438 - }
2439 - }
2440 -}
2441 -
2442 -
2443 -/***/ })
2444 -
2445 -},
2446 -/******/ __webpack_require__ => { // webpackRuntimeModules
2447 -/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
2448 -/******/ __webpack_require__.O(0, ["frontend-modules"], () => (__webpack_exec__("../assets/dev/js/frontend/frontend.js")));
2449 -/******/ var __webpack_exports__ = __webpack_require__.O();
2450 -/******/ }
2451 -]);
4042 +})();
2452 4043 //# sourceMappingURL=frontend.js.map