PluginProbe
Elementor Website Builder – more than just a page builder / 4.3.0
Elementor Website Builder – more than just a page builder v4.3.0
4.3.0 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 All 453 releases
elementor / assets / js / frontend.js

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

4,043 lines 149.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 "use strict";
2
3 (function() {
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);
20
21 //#endregion
22
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 }));
30
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 }));
41
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 }));
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 }));
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 }));
74
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 }));
84
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 }));
96
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 }));
109
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 }));
123
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 }));
134
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 }));
149
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 }));
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 }));
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 }));
178
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 }));
189
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 }));
198
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 }));
211
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 }));
218
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 }));
226
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 }));
251
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 }));
263
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 }));
270
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 }));
286
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 }));
299
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 }));
311
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 }));
322
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 }));
339
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 }));
345
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 }));
364
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 }));
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 }));
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 }));
400
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 }));
411
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 }));
423
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 }));
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 }));
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 }));
478
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 }));
490
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 }));
503
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 }));
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 }));
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 }));
550
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 }));
593
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 }));
607
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
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 }));
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 }));
646
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 }));
657
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 }));
663
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 }));
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 }));
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 }));
809
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 }));
820
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 }));
830
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 }));
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 }));
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 }));
862
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 }));
889
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 }));
909
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 }));
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 }));
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 }));
939
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 }));
955
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 }));
973
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 }));
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 }));
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 }));
1043
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 }));
1054
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 }));
1074
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 }));
1086
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 }));
1098
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 }));
1108
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 }));
1129
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 }));
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 }));
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 }));
1236
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 }));
1290
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 }));
1296
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 }));
1306
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 }));
1321
1322 //#endregion
1323 //#region node_modules/core-js/internals/iterators.js
1324 var require_iterators = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1325 module.exports = {};
1326 }));
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 }));
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 }));
1348
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 }));
1372
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 }));
1385
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 }));
1401
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 }));
1429
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 }));
1500
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 }));
1512
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 }));
1537
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 }));
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 }));
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 }));
1610
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 }));
1616
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 }));
1622
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 }));
1678
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 }));
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 }));
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 }));
1833
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 }));
1868
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 }));
1905
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 }));
1929
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 }));
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((() => {}));
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 }));
1999
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 }));
2008
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 }));
2020
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 }));
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 }));
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 }));
2072
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 }));
2081
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 }));
2213
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 }));
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 }));
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 }));
2349
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 }));
2414
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 }));
2500
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 }));
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((() => {}));
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 }));
2598
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 }));
2609
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 }));
2623
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 }));
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 }));
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 }));
2682
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 }));
2693
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 }));
2730
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 }));
2740
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 }));
2751
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 }));
2770
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 }));
2849
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 }));
2863
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 }));
2876
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 }));
2915
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 }));
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 }));
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 }));
3076
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 }));
3090
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 }));
3159
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 }));
3208
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 }));
3214
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 }));
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 }));
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 }));
3553
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 }));
3603
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 }));
3617
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 }));
3632
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 }));
3647
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 }));
3655
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 }));
3782
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 }));
4038
4039 //#endregion
4040 return require_frontend();
4041
4042 })();
4043 //# sourceMappingURL=frontend.js.map