PluginProbe
Elementor Website Builder – more than just a page builder / 3.1.0-dev2
Elementor Website Builder – more than just a page builder v3.1.0-dev2
4.3.2 4.3.1 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 All 455 releases
← All changes | assets/js/frontend.js +5282 -1735 4.2.0-beta1 → 3.1.0-dev2 View file →
@@ -1,226 +1,1264 @@
1 -"use strict";
2 -(self["webpackChunkelementorFrontend"] = self["webpackChunkelementorFrontend"] || []).push([["frontend"],{
1 +/*! elementor - v3.0.14 - 16-12-2020 */
2 +(self["webpackChunk"] = self["webpackChunk"] || []).push([["frontend"],{
3 3
4 -/***/ "../assets/dev/js/frontend/documents-manager.js":
5 -/*!******************************************************!*\
6 - !*** ../assets/dev/js/frontend/documents-manager.js ***!
7 - \******************************************************/
8 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4 +/***/ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js":
5 +/*!************************************************************************!*\
6 + !*** ../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js ***!
7 + \************************************************************************/
8 +/*! dynamic exports */
9 +/*! exports [maybe provided (runtime-defined)] [no usage info] -> ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/json/stringify.js */
10 +/*! runtime requirements: module, __webpack_require__ */
11 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9 12
13 +module.exports = __webpack_require__(/*! core-js/library/fn/json/stringify */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/json/stringify.js");
10 14
15 +/***/ }),
11 16
12 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
13 -Object.defineProperty(exports, "__esModule", ({
14 - value: true
15 -}));
16 -exports["default"] = void 0;
17 -var _document = _interopRequireDefault(__webpack_require__(/*! ./document */ "../assets/dev/js/frontend/document.js"));
18 -class _default extends elementorModules.ViewModule {
19 - constructor(...args) {
20 - super(...args);
21 - this.documents = {};
22 - this.initDocumentClasses();
23 - this.attachDocumentsClasses();
17 +/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js":
18 +/*!**********************************************************************************!*\
19 + !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js ***!
20 + \**********************************************************************************/
21 +/*! dynamic exports */
22 +/*! exports [maybe provided (runtime-defined)] [no usage info] -> ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/object/define-properties.js */
23 +/*! runtime requirements: module, __webpack_require__ */
24 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
25 +
26 +module.exports = __webpack_require__(/*! core-js/library/fn/object/define-properties */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/object/define-properties.js");
27 +
28 +/***/ }),
29 +
30 +/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js":
31 +/*!***********************************************************************!*\
32 + !*** ../node_modules/@babel/runtime-corejs2/core-js/object/values.js ***!
33 + \***********************************************************************/
34 +/*! dynamic exports */
35 +/*! exports [maybe provided (runtime-defined)] [no usage info] -> ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/object/values.js */
36 +/*! runtime requirements: module, __webpack_require__ */
37 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
38 +
39 +module.exports = __webpack_require__(/*! core-js/library/fn/object/values */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/object/values.js");
40 +
41 +/***/ }),
42 +
43 +/***/ "../node_modules/@babel/runtime-corejs2/core-js/promise.js":
44 +/*!*****************************************************************!*\
45 + !*** ../node_modules/@babel/runtime-corejs2/core-js/promise.js ***!
46 + \*****************************************************************/
47 +/*! dynamic exports */
48 +/*! exports [maybe provided (runtime-defined)] [no usage info] -> ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/promise.js */
49 +/*! runtime requirements: module, __webpack_require__ */
50 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
51 +
52 +module.exports = __webpack_require__(/*! core-js/library/fn/promise */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/promise.js");
53 +
54 +/***/ }),
55 +
56 +/***/ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js":
57 +/*!**************************************************************************!*\
58 + !*** ../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js ***!
59 + \**************************************************************************/
60 +/*! unknown exports (runtime-defined) */
61 +/*! runtime requirements: module, __webpack_require__ */
62 +/*! CommonJS bailout: module.exports is used directly at 39:0-14 */
63 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
64 +
65 +var _Promise = __webpack_require__(/*! ../core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js");
66 +
67 +function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
68 + try {
69 + var info = gen[key](arg);
70 + var value = info.value;
71 + } catch (error) {
72 + reject(error);
73 + return;
24 74 }
25 - getDefaultSettings() {
26 - return {
27 - selectors: {
28 - document: '.elementor'
75 +
76 + if (info.done) {
77 + resolve(value);
78 + } else {
79 + _Promise.resolve(value).then(_next, _throw);
80 + }
81 +}
82 +
83 +function _asyncToGenerator(fn) {
84 + return function () {
85 + var self = this,
86 + args = arguments;
87 + return new _Promise(function (resolve, reject) {
88 + var gen = fn.apply(self, args);
89 +
90 + function _next(value) {
91 + asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
29 92 }
93 +
94 + function _throw(err) {
95 + asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
96 + }
97 +
98 + _next(undefined);
99 + });
100 + };
101 +}
102 +
103 +module.exports = _asyncToGenerator;
104 +
105 +/***/ }),
106 +
107 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/json/stringify.js":
108 +/*!************************************************************************************************!*\
109 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/json/stringify.js ***!
110 + \************************************************************************************************/
111 +/*! unknown exports (runtime-defined) */
112 +/*! runtime requirements: module, __webpack_require__ */
113 +/*! CommonJS bailout: module.exports is used directly at 3:0-14 */
114 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
115 +
116 +var core = __webpack_require__(/*! ../../modules/_core */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_core.js");
117 +var $JSON = core.JSON || (core.JSON = { stringify: JSON.stringify });
118 +module.exports = function stringify(it) { // eslint-disable-line no-unused-vars
119 + return $JSON.stringify.apply($JSON, arguments);
120 +};
121 +
122 +
123 +/***/ }),
124 +
125 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/object/define-properties.js":
126 +/*!**********************************************************************************************************!*\
127 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/object/define-properties.js ***!
128 + \**********************************************************************************************************/
129 +/*! unknown exports (runtime-defined) */
130 +/*! runtime requirements: __webpack_require__, module */
131 +/*! CommonJS bailout: module.exports is used directly at 3:0-14 */
132 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
133 +
134 +__webpack_require__(/*! ../../modules/es6.object.define-properties */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es6.object.define-properties.js");
135 +var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_core.js").Object;
136 +module.exports = function defineProperties(T, D) {
137 + return $Object.defineProperties(T, D);
138 +};
139 +
140 +
141 +/***/ }),
142 +
143 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/object/values.js":
144 +/*!***********************************************************************************************!*\
145 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/object/values.js ***!
146 + \***********************************************************************************************/
147 +/*! dynamic exports */
148 +/*! export __esModule [maybe provided (runtime-defined)] [no usage info] [provision prevents renaming (no use info)] */
149 +/*! other exports [maybe provided (runtime-defined)] [no usage info] */
150 +/*! runtime requirements: module, __webpack_require__ */
151 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
152 +
153 +__webpack_require__(/*! ../../modules/es7.object.values */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es7.object.values.js");
154 +module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_core.js").Object.values;
155 +
156 +
157 +/***/ }),
158 +
159 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/promise.js":
160 +/*!*****************************************************************************************!*\
161 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/promise.js ***!
162 + \*****************************************************************************************/
163 +/*! dynamic exports */
164 +/*! export __esModule [maybe provided (runtime-defined)] [no usage info] [provision prevents renaming (no use info)] */
165 +/*! other exports [maybe provided (runtime-defined)] [no usage info] */
166 +/*! runtime requirements: module, __webpack_require__ */
167 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
168 +
169 +__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es6.object.to-string.js");
170 +__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es6.string.iterator.js");
171 +__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/web.dom.iterable.js");
172 +__webpack_require__(/*! ../modules/es6.promise */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es6.promise.js");
173 +__webpack_require__(/*! ../modules/es7.promise.finally */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es7.promise.finally.js");
174 +__webpack_require__(/*! ../modules/es7.promise.try */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es7.promise.try.js");
175 +module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_core.js").Promise;
176 +
177 +
178 +/***/ }),
179 +
180 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_iter-detect.js":
181 +/*!***************************************************************************************************!*\
182 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_iter-detect.js ***!
183 + \***************************************************************************************************/
184 +/*! unknown exports (runtime-defined) */
185 +/*! runtime requirements: module, __webpack_require__ */
186 +/*! CommonJS bailout: module.exports is used directly at 11:0-14 */
187 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
188 +
189 +var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_wks.js")('iterator');
190 +var SAFE_CLOSING = false;
191 +
192 +try {
193 + var riter = [7][ITERATOR]();
194 + riter['return'] = function () { SAFE_CLOSING = true; };
195 + // eslint-disable-next-line no-throw-literal
196 + Array.from(riter, function () { throw 2; });
197 +} catch (e) { /* empty */ }
198 +
199 +module.exports = function (exec, skipClosing) {
200 + if (!skipClosing && !SAFE_CLOSING) return false;
201 + var safe = false;
202 + try {
203 + var arr = [7];
204 + var iter = arr[ITERATOR]();
205 + iter.next = function () { return { done: safe = true }; };
206 + arr[ITERATOR] = function () { return iter; };
207 + exec(arr);
208 + } catch (e) { /* empty */ }
209 + return safe;
210 +};
211 +
212 +
213 +/***/ }),
214 +
215 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_microtask.js":
216 +/*!*************************************************************************************************!*\
217 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_microtask.js ***!
218 + \*************************************************************************************************/
219 +/*! unknown exports (runtime-defined) */
220 +/*! runtime requirements: __webpack_require__, module */
221 +/*! CommonJS bailout: module.exports is used directly at 8:0-14 */
222 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
223 +
224 +var global = __webpack_require__(/*! ./_global */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_global.js");
225 +var macrotask = __webpack_require__(/*! ./_task */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_task.js").set;
226 +var Observer = global.MutationObserver || global.WebKitMutationObserver;
227 +var process = global.process;
228 +var Promise = global.Promise;
229 +var isNode = __webpack_require__(/*! ./_cof */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_cof.js")(process) == 'process';
230 +
231 +module.exports = function () {
232 + var head, last, notify;
233 +
234 + var flush = function () {
235 + var parent, fn;
236 + if (isNode && (parent = process.domain)) parent.exit();
237 + while (head) {
238 + fn = head.fn;
239 + head = head.next;
240 + try {
241 + fn();
242 + } catch (e) {
243 + if (head) notify();
244 + else last = undefined;
245 + throw e;
246 + }
247 + } last = undefined;
248 + if (parent) parent.enter();
249 + };
250 +
251 + // Node.js
252 + if (isNode) {
253 + notify = function () {
254 + process.nextTick(flush);
30 255 };
256 + // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
257 + } else if (Observer && !(global.navigator && global.navigator.standalone)) {
258 + var toggle = true;
259 + var node = document.createTextNode('');
260 + new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
261 + notify = function () {
262 + node.data = toggle = !toggle;
263 + };
264 + // environments with maybe non-completely correct, but existent Promise
265 + } else if (Promise && Promise.resolve) {
266 + // Promise.resolve without an argument throws an error in LG WebOS 2
267 + var promise = Promise.resolve(undefined);
268 + notify = function () {
269 + promise.then(flush);
270 + };
271 + // for other environments - macrotask based on:
272 + // - setImmediate
273 + // - MessageChannel
274 + // - window.postMessag
275 + // - onreadystatechange
276 + // - setTimeout
277 + } else {
278 + notify = function () {
279 + // strange IE + webpack dev server bug - use .call(global)
280 + macrotask.call(global, flush);
281 + };
31 282 }
32 - getDefaultElements() {
33 - const selectors = this.getSettings('selectors');
34 - return {
35 - $documents: jQuery(selectors.document)
283 +
284 + return function (fn) {
285 + var task = { fn: fn, next: undefined };
286 + if (last) last.next = task;
287 + if (!head) {
288 + head = task;
289 + notify();
290 + } last = task;
291 + };
292 +};
293 +
294 +
295 +/***/ }),
296 +
297 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_new-promise-capability.js":
298 +/*!**************************************************************************************************************!*\
299 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_new-promise-capability.js ***!
300 + \**************************************************************************************************************/
301 +/*! default exports */
302 +/*! export f [provided] [no usage info] [missing usage info prevents renaming] */
303 +/*! other exports [not provided] [no usage info] */
304 +/*! runtime requirements: module, __webpack_require__ */
305 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
306 +
307 +"use strict";
308 +
309 +// 25.4.1.5 NewPromiseCapability(C)
310 +var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_a-function.js");
311 +
312 +function PromiseCapability(C) {
313 + var resolve, reject;
314 + this.promise = new C(function ($$resolve, $$reject) {
315 + if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
316 + resolve = $$resolve;
317 + reject = $$reject;
318 + });
319 + this.resolve = aFunction(resolve);
320 + this.reject = aFunction(reject);
321 +}
322 +
323 +module.exports.f = function (C) {
324 + return new PromiseCapability(C);
325 +};
326 +
327 +
328 +/***/ }),
329 +
330 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_object-to-array.js":
331 +/*!*******************************************************************************************************!*\
332 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_object-to-array.js ***!
333 + \*******************************************************************************************************/
334 +/*! unknown exports (runtime-defined) */
335 +/*! runtime requirements: __webpack_require__, module */
336 +/*! CommonJS bailout: module.exports is used directly at 5:0-14 */
337 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
338 +
339 +var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_descriptors.js");
340 +var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_object-keys.js");
341 +var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_to-iobject.js");
342 +var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_object-pie.js").f;
343 +module.exports = function (isEntries) {
344 + return function (it) {
345 + var O = toIObject(it);
346 + var keys = getKeys(O);
347 + var length = keys.length;
348 + var i = 0;
349 + var result = [];
350 + var key;
351 + while (length > i) {
352 + key = keys[i++];
353 + if (!DESCRIPTORS || isEnum.call(O, key)) {
354 + result.push(isEntries ? [key, O[key]] : O[key]);
355 + }
356 + }
357 + return result;
358 + };
359 +};
360 +
361 +
362 +/***/ }),
363 +
364 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_perform.js":
365 +/*!***********************************************************************************************!*\
366 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_perform.js ***!
367 + \***********************************************************************************************/
368 +/*! unknown exports (runtime-defined) */
369 +/*! runtime requirements: module */
370 +/*! CommonJS bailout: module.exports is used directly at 1:0-14 */
371 +/***/ ((module) => {
372 +
373 +module.exports = function (exec) {
374 + try {
375 + return { e: false, v: exec() };
376 + } catch (e) {
377 + return { e: true, v: e };
378 + }
379 +};
380 +
381 +
382 +/***/ }),
383 +
384 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_promise-resolve.js":
385 +/*!*******************************************************************************************************!*\
386 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_promise-resolve.js ***!
387 + \*******************************************************************************************************/
388 +/*! unknown exports (runtime-defined) */
389 +/*! runtime requirements: module, __webpack_require__ */
390 +/*! CommonJS bailout: module.exports is used directly at 5:0-14 */
391 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
392 +
393 +var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_an-object.js");
394 +var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_is-object.js");
395 +var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_new-promise-capability.js");
396 +
397 +module.exports = function (C, x) {
398 + anObject(C);
399 + if (isObject(x) && x.constructor === C) return x;
400 + var promiseCapability = newPromiseCapability.f(C);
401 + var resolve = promiseCapability.resolve;
402 + resolve(x);
403 + return promiseCapability.promise;
404 +};
405 +
406 +
407 +/***/ }),
408 +
409 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_species-constructor.js":
410 +/*!***********************************************************************************************************!*\
411 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_species-constructor.js ***!
412 + \***********************************************************************************************************/
413 +/*! unknown exports (runtime-defined) */
414 +/*! runtime requirements: module, __webpack_require__ */
415 +/*! CommonJS bailout: module.exports is used directly at 5:0-14 */
416 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
417 +
418 +// 7.3.20 SpeciesConstructor(O, defaultConstructor)
419 +var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_an-object.js");
420 +var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_a-function.js");
421 +var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_wks.js")('species');
422 +module.exports = function (O, D) {
423 + var C = anObject(O).constructor;
424 + var S;
425 + return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
426 +};
427 +
428 +
429 +/***/ }),
430 +
431 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_task.js":
432 +/*!********************************************************************************************!*\
433 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_task.js ***!
434 + \********************************************************************************************/
435 +/*! unknown exports (runtime-defined) */
436 +/*! runtime requirements: module, __webpack_require__ */
437 +/*! CommonJS bailout: module.exports is used directly at 81:0-14 */
438 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
439 +
440 +var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_ctx.js");
441 +var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_invoke.js");
442 +var html = __webpack_require__(/*! ./_html */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_html.js");
443 +var cel = __webpack_require__(/*! ./_dom-create */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_dom-create.js");
444 +var global = __webpack_require__(/*! ./_global */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_global.js");
445 +var process = global.process;
446 +var setTask = global.setImmediate;
447 +var clearTask = global.clearImmediate;
448 +var MessageChannel = global.MessageChannel;
449 +var Dispatch = global.Dispatch;
450 +var counter = 0;
451 +var queue = {};
452 +var ONREADYSTATECHANGE = 'onreadystatechange';
453 +var defer, channel, port;
454 +var run = function () {
455 + var id = +this;
456 + // eslint-disable-next-line no-prototype-builtins
457 + if (queue.hasOwnProperty(id)) {
458 + var fn = queue[id];
459 + delete queue[id];
460 + fn();
461 + }
462 +};
463 +var listener = function (event) {
464 + run.call(event.data);
465 +};
466 +// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
467 +if (!setTask || !clearTask) {
468 + setTask = function setImmediate(fn) {
469 + var args = [];
470 + var i = 1;
471 + while (arguments.length > i) args.push(arguments[i++]);
472 + queue[++counter] = function () {
473 + // eslint-disable-next-line no-new-func
474 + invoke(typeof fn == 'function' ? fn : Function(fn), args);
36 475 };
476 + defer(counter);
477 + return counter;
478 + };
479 + clearTask = function clearImmediate(id) {
480 + delete queue[id];
481 + };
482 + // Node.js 0.8-
483 + if (__webpack_require__(/*! ./_cof */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_cof.js")(process) == 'process') {
484 + defer = function (id) {
485 + process.nextTick(ctx(run, id, 1));
486 + };
487 + // Sphere (JS game engine) Dispatch API
488 + } else if (Dispatch && Dispatch.now) {
489 + defer = function (id) {
490 + Dispatch.now(ctx(run, id, 1));
491 + };
492 + // Browsers with MessageChannel, includes WebWorkers
493 + } else if (MessageChannel) {
494 + channel = new MessageChannel();
495 + port = channel.port2;
496 + channel.port1.onmessage = listener;
497 + defer = ctx(port.postMessage, port, 1);
498 + // Browsers with postMessage, skip WebWorkers
499 + // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
500 + } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
501 + defer = function (id) {
502 + global.postMessage(id + '', '*');
503 + };
504 + global.addEventListener('message', listener, false);
505 + // IE8-
506 + } else if (ONREADYSTATECHANGE in cel('script')) {
507 + defer = function (id) {
508 + html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
509 + html.removeChild(this);
510 + run.call(id);
511 + };
512 + };
513 + // Rest old browsers
514 + } else {
515 + defer = function (id) {
516 + setTimeout(ctx(run, id, 1), 0);
517 + };
37 518 }
38 - initDocumentClasses() {
39 - this.documentClasses = {
40 - base: _document.default
519 +}
520 +module.exports = {
521 + set: setTask,
522 + clear: clearTask
523 +};
524 +
525 +
526 +/***/ }),
527 +
528 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_user-agent.js":
529 +/*!**************************************************************************************************!*\
530 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_user-agent.js ***!
531 + \**************************************************************************************************/
532 +/*! unknown exports (runtime-defined) */
533 +/*! runtime requirements: module, __webpack_require__ */
534 +/*! CommonJS bailout: module.exports is used directly at 4:0-14 */
535 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
536 +
537 +var global = __webpack_require__(/*! ./_global */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_global.js");
538 +var navigator = global.navigator;
539 +
540 +module.exports = navigator && navigator.userAgent || '';
541 +
542 +
543 +/***/ }),
544 +
545 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es6.object.define-properties.js":
546 +/*!*******************************************************************************************************************!*\
547 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es6.object.define-properties.js ***!
548 + \*******************************************************************************************************************/
549 +/*! unknown exports (runtime-defined) */
550 +/*! runtime requirements: __webpack_require__ */
551 +/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
552 +
553 +var $export = __webpack_require__(/*! ./_export */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_export.js");
554 +// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
555 +$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperties: __webpack_require__(/*! ./_object-dps */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_object-dps.js") });
556 +
557 +
558 +/***/ }),
559 +
560 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es6.promise.js":
561 +/*!**************************************************************************************************!*\
562 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es6.promise.js ***!
563 + \**************************************************************************************************/
564 +/*! unknown exports (runtime-defined) */
565 +/*! runtime requirements: __webpack_require__ */
566 +/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
567 +
568 +"use strict";
569 +
570 +var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_library.js");
571 +var global = __webpack_require__(/*! ./_global */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_global.js");
572 +var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_ctx.js");
573 +var classof = __webpack_require__(/*! ./_classof */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_classof.js");
574 +var $export = __webpack_require__(/*! ./_export */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_export.js");
575 +var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_is-object.js");
576 +var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_a-function.js");
577 +var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_an-instance.js");
578 +var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_for-of.js");
579 +var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_species-constructor.js");
580 +var task = __webpack_require__(/*! ./_task */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_task.js").set;
581 +var microtask = __webpack_require__(/*! ./_microtask */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_microtask.js")();
582 +var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_new-promise-capability.js");
583 +var perform = __webpack_require__(/*! ./_perform */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_perform.js");
584 +var userAgent = __webpack_require__(/*! ./_user-agent */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_user-agent.js");
585 +var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_promise-resolve.js");
586 +var PROMISE = 'Promise';
587 +var TypeError = global.TypeError;
588 +var process = global.process;
589 +var versions = process && process.versions;
590 +var v8 = versions && versions.v8 || '';
591 +var $Promise = global[PROMISE];
592 +var isNode = classof(process) == 'process';
593 +var empty = function () { /* empty */ };
594 +var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
595 +var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;
596 +
597 +var USE_NATIVE = !!function () {
598 + try {
599 + // correct subclassing with @@species support
600 + var promise = $Promise.resolve(1);
601 + var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_wks.js")('species')] = function (exec) {
602 + exec(empty, empty);
41 603 };
42 - elementorFrontend.hooks.doAction('elementor/frontend/documents-manager/init-classes', this);
604 + // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
605 + return (isNode || typeof PromiseRejectionEvent == 'function')
606 + && promise.then(empty) instanceof FakePromise
607 + // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
608 + // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
609 + // we can't detect it synchronously, so just check versions
610 + && v8.indexOf('6.6') !== 0
611 + && userAgent.indexOf('Chrome/66') === -1;
612 + } catch (e) { /* empty */ }
613 +}();
614 +
615 +// helpers
616 +var isThenable = function (it) {
617 + var then;
618 + return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
619 +};
620 +var notify = function (promise, isReject) {
621 + if (promise._n) return;
622 + promise._n = true;
623 + var chain = promise._c;
624 + microtask(function () {
625 + var value = promise._v;
626 + var ok = promise._s == 1;
627 + var i = 0;
628 + var run = function (reaction) {
629 + var handler = ok ? reaction.ok : reaction.fail;
630 + var resolve = reaction.resolve;
631 + var reject = reaction.reject;
632 + var domain = reaction.domain;
633 + var result, then, exited;
634 + try {
635 + if (handler) {
636 + if (!ok) {
637 + if (promise._h == 2) onHandleUnhandled(promise);
638 + promise._h = 1;
639 + }
640 + if (handler === true) result = value;
641 + else {
642 + if (domain) domain.enter();
643 + result = handler(value); // may throw
644 + if (domain) {
645 + domain.exit();
646 + exited = true;
647 + }
648 + }
649 + if (result === reaction.promise) {
650 + reject(TypeError('Promise-chain cycle'));
651 + } else if (then = isThenable(result)) {
652 + then.call(result, resolve, reject);
653 + } else resolve(result);
654 + } else reject(value);
655 + } catch (e) {
656 + if (domain && !exited) domain.exit();
657 + reject(e);
658 + }
659 + };
660 + while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
661 + promise._c = [];
662 + promise._n = false;
663 + if (isReject && !promise._h) onUnhandled(promise);
664 + });
665 +};
666 +var onUnhandled = function (promise) {
667 + task.call(global, function () {
668 + var value = promise._v;
669 + var unhandled = isUnhandled(promise);
670 + var result, handler, console;
671 + if (unhandled) {
672 + result = perform(function () {
673 + if (isNode) {
674 + process.emit('unhandledRejection', value, promise);
675 + } else if (handler = global.onunhandledrejection) {
676 + handler({ promise: promise, reason: value });
677 + } else if ((console = global.console) && console.error) {
678 + console.error('Unhandled promise rejection', value);
679 + }
680 + });
681 + // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
682 + promise._h = isNode || isUnhandled(promise) ? 2 : 1;
683 + } promise._a = undefined;
684 + if (unhandled && result.e) throw result.v;
685 + });
686 +};
687 +var isUnhandled = function (promise) {
688 + return promise._h !== 1 && (promise._a || promise._c).length === 0;
689 +};
690 +var onHandleUnhandled = function (promise) {
691 + task.call(global, function () {
692 + var handler;
693 + if (isNode) {
694 + process.emit('rejectionHandled', promise);
695 + } else if (handler = global.onrejectionhandled) {
696 + handler({ promise: promise, reason: promise._v });
697 + }
698 + });
699 +};
700 +var $reject = function (value) {
701 + var promise = this;
702 + if (promise._d) return;
703 + promise._d = true;
704 + promise = promise._w || promise; // unwrap
705 + promise._v = value;
706 + promise._s = 2;
707 + if (!promise._a) promise._a = promise._c.slice();
708 + notify(promise, true);
709 +};
710 +var $resolve = function (value) {
711 + var promise = this;
712 + var then;
713 + if (promise._d) return;
714 + promise._d = true;
715 + promise = promise._w || promise; // unwrap
716 + try {
717 + if (promise === value) throw TypeError("Promise can't be resolved itself");
718 + if (then = isThenable(value)) {
719 + microtask(function () {
720 + var wrapper = { _w: promise, _d: false }; // wrap
721 + try {
722 + then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
723 + } catch (e) {
724 + $reject.call(wrapper, e);
725 + }
726 + });
727 + } else {
728 + promise._v = value;
729 + promise._s = 1;
730 + notify(promise, false);
731 + }
732 + } catch (e) {
733 + $reject.call({ _w: promise, _d: false }, e); // wrap
43 734 }
44 - addDocumentClass(documentType, documentClass) {
45 - this.documentClasses[documentType] = documentClass;
735 +};
736 +
737 +// constructor polyfill
738 +if (!USE_NATIVE) {
739 + // 25.4.3.1 Promise(executor)
740 + $Promise = function Promise(executor) {
741 + anInstance(this, $Promise, PROMISE, '_h');
742 + aFunction(executor);
743 + Internal.call(this);
744 + try {
745 + executor(ctx($resolve, this, 1), ctx($reject, this, 1));
746 + } catch (err) {
747 + $reject.call(this, err);
748 + }
749 + };
750 + // eslint-disable-next-line no-unused-vars
751 + Internal = function Promise(executor) {
752 + this._c = []; // <- awaiting reactions
753 + this._a = undefined; // <- checked in isUnhandled reactions
754 + this._s = 0; // <- state
755 + this._d = false; // <- done
756 + this._v = undefined; // <- value
757 + this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
758 + this._n = false; // <- notify
759 + };
760 + Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_redefine-all.js")($Promise.prototype, {
761 + // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
762 + then: function then(onFulfilled, onRejected) {
763 + var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
764 + reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
765 + reaction.fail = typeof onRejected == 'function' && onRejected;
766 + reaction.domain = isNode ? process.domain : undefined;
767 + this._c.push(reaction);
768 + if (this._a) this._a.push(reaction);
769 + if (this._s) notify(this, false);
770 + return reaction.promise;
771 + },
772 + // 25.4.5.1 Promise.prototype.catch(onRejected)
773 + 'catch': function (onRejected) {
774 + return this.then(undefined, onRejected);
775 + }
776 + });
777 + OwnPromiseCapability = function () {
778 + var promise = new Internal();
779 + this.promise = promise;
780 + this.resolve = ctx($resolve, promise, 1);
781 + this.reject = ctx($reject, promise, 1);
782 + };
783 + newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
784 + return C === $Promise || C === Wrapper
785 + ? new OwnPromiseCapability(C)
786 + : newGenericPromiseCapability(C);
787 + };
788 +}
789 +
790 +$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
791 +__webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_set-to-string-tag.js")($Promise, PROMISE);
792 +__webpack_require__(/*! ./_set-species */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_set-species.js")(PROMISE);
793 +Wrapper = __webpack_require__(/*! ./_core */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_core.js")[PROMISE];
794 +
795 +// statics
796 +$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
797 + // 25.4.4.5 Promise.reject(r)
798 + reject: function reject(r) {
799 + var capability = newPromiseCapability(this);
800 + var $$reject = capability.reject;
801 + $$reject(r);
802 + return capability.promise;
46 803 }
47 - attachDocumentsClasses() {
48 - this.elements.$documents.each((index, document) => this.attachDocumentClass(jQuery(document)));
804 +});
805 +$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
806 + // 25.4.4.6 Promise.resolve(x)
807 + resolve: function resolve(x) {
808 + return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
49 809 }
50 - attachDocumentClass($document) {
51 - const documentData = $document.data(),
52 - documentID = documentData.elementorId,
53 - documentType = documentData.elementorType,
54 - DocumentClass = this.documentClasses[documentType] || this.documentClasses.base;
55 - this.documents[documentID] = new DocumentClass({
56 - $element: $document,
57 - id: documentID
810 +});
811 +$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_iter-detect.js")(function (iter) {
812 + $Promise.all(iter)['catch'](empty);
813 +})), PROMISE, {
814 + // 25.4.4.1 Promise.all(iterable)
815 + all: function all(iterable) {
816 + var C = this;
817 + var capability = newPromiseCapability(C);
818 + var resolve = capability.resolve;
819 + var reject = capability.reject;
820 + var result = perform(function () {
821 + var values = [];
822 + var index = 0;
823 + var remaining = 1;
824 + forOf(iterable, false, function (promise) {
825 + var $index = index++;
826 + var alreadyCalled = false;
827 + values.push(undefined);
828 + remaining++;
829 + C.resolve(promise).then(function (value) {
830 + if (alreadyCalled) return;
831 + alreadyCalled = true;
832 + values[$index] = value;
833 + --remaining || resolve(values);
834 + }, reject);
835 + });
836 + --remaining || resolve(values);
58 837 });
838 + if (result.e) reject(result.v);
839 + return capability.promise;
840 + },
841 + // 25.4.4.4 Promise.race(iterable)
842 + race: function race(iterable) {
843 + var C = this;
844 + var capability = newPromiseCapability(C);
845 + var reject = capability.reject;
846 + var result = perform(function () {
847 + forOf(iterable, false, function (promise) {
848 + C.resolve(promise).then(capability.resolve, reject);
849 + });
850 + });
851 + if (result.e) reject(result.v);
852 + return capability.promise;
59 853 }
60 -}
61 -exports["default"] = _default;
854 +});
62 855
856 +
63 857 /***/ }),
64 858
859 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es7.object.values.js":
860 +/*!********************************************************************************************************!*\
861 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es7.object.values.js ***!
862 + \********************************************************************************************************/
863 +/*! unknown exports (runtime-defined) */
864 +/*! runtime requirements: __webpack_require__ */
865 +/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
866 +
867 +// https://github.com/tc39/proposal-object-values-entries
868 +var $export = __webpack_require__(/*! ./_export */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_export.js");
869 +var $values = __webpack_require__(/*! ./_object-to-array */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_object-to-array.js")(false);
870 +
871 +$export($export.S, 'Object', {
872 + values: function values(it) {
873 + return $values(it);
874 + }
875 +});
876 +
877 +
878 +/***/ }),
879 +
880 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es7.promise.finally.js":
881 +/*!**********************************************************************************************************!*\
882 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es7.promise.finally.js ***!
883 + \**********************************************************************************************************/
884 +/*! unknown exports (runtime-defined) */
885 +/*! runtime requirements: __webpack_require__ */
886 +/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
887 +
888 +"use strict";
889 +// https://github.com/tc39/proposal-promise-finally
890 +
891 +var $export = __webpack_require__(/*! ./_export */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_export.js");
892 +var core = __webpack_require__(/*! ./_core */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_core.js");
893 +var global = __webpack_require__(/*! ./_global */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_global.js");
894 +var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_species-constructor.js");
895 +var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_promise-resolve.js");
896 +
897 +$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
898 + var C = speciesConstructor(this, core.Promise || global.Promise);
899 + var isFunction = typeof onFinally == 'function';
900 + return this.then(
901 + isFunction ? function (x) {
902 + return promiseResolve(C, onFinally()).then(function () { return x; });
903 + } : onFinally,
904 + isFunction ? function (e) {
905 + return promiseResolve(C, onFinally()).then(function () { throw e; });
906 + } : onFinally
907 + );
908 +} });
909 +
910 +
911 +/***/ }),
912 +
913 +/***/ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es7.promise.try.js":
914 +/*!******************************************************************************************************!*\
915 + !*** ../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es7.promise.try.js ***!
916 + \******************************************************************************************************/
917 +/*! unknown exports (runtime-defined) */
918 +/*! runtime requirements: __webpack_require__ */
919 +/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
920 +
921 +"use strict";
922 +
923 +// https://github.com/tc39/proposal-promise-try
924 +var $export = __webpack_require__(/*! ./_export */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_export.js");
925 +var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_new-promise-capability.js");
926 +var perform = __webpack_require__(/*! ./_perform */ "../node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_perform.js");
927 +
928 +$export($export.S, 'Promise', { 'try': function (callbackfn) {
929 + var promiseCapability = newPromiseCapability.f(this);
930 + var result = perform(callbackfn);
931 + (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);
932 + return promiseCapability.promise;
933 +} });
934 +
935 +
936 +/***/ }),
937 +
938 +/***/ "../node_modules/@babel/runtime/regenerator/index.js":
939 +/*!***********************************************************!*\
940 + !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
941 + \***********************************************************/
942 +/*! dynamic exports */
943 +/*! exports [maybe provided (runtime-defined)] [no usage info] -> ../node_modules/regenerator-runtime/runtime.js */
944 +/*! runtime requirements: module, __webpack_require__ */
945 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
946 +
947 +module.exports = __webpack_require__(/*! regenerator-runtime */ "../node_modules/regenerator-runtime/runtime.js");
948 +
949 +
950 +/***/ }),
951 +
952 +/***/ "../assets/dev/js/frontend/documents-manager.js":
953 +/*!******************************************************!*\
954 + !*** ../assets/dev/js/frontend/documents-manager.js ***!
955 + \******************************************************/
956 +/*! unknown exports (runtime-defined) */
957 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
958 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
959 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
960 +
961 +"use strict";
962 +
963 +
964 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
965 +
966 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
967 +
968 +_Object$defineProperty(exports, "__esModule", {
969 + value: true
970 +});
971 +
972 +exports.default = void 0;
973 +
974 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
975 +
976 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
977 +
978 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
979 +
980 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
981 +
982 +var _document = _interopRequireDefault(__webpack_require__(/*! ./document */ "../assets/dev/js/frontend/document.js"));
983 +
984 +var _default = /*#__PURE__*/function (_elementorModules$Vie) {
985 + (0, _inherits2.default)(_default, _elementorModules$Vie);
986 +
987 + var _super = (0, _createSuper2.default)(_default);
988 +
989 + function _default() {
990 + var _this;
991 +
992 + (0, _classCallCheck2.default)(this, _default);
993 +
994 + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
995 + args[_key] = arguments[_key];
996 + }
997 +
998 + _this = _super.call.apply(_super, [this].concat(args));
999 + _this.documents = {};
1000 +
1001 + _this.initDocumentClasses();
1002 +
1003 + _this.attachDocumentsClasses();
1004 +
1005 + return _this;
1006 + }
1007 +
1008 + (0, _createClass2.default)(_default, [{
1009 + key: "getDefaultSettings",
1010 + value: function getDefaultSettings() {
1011 + return {
1012 + selectors: {
1013 + document: '.elementor'
1014 + }
1015 + };
1016 + }
1017 + }, {
1018 + key: "getDefaultElements",
1019 + value: function getDefaultElements() {
1020 + var selectors = this.getSettings('selectors');
1021 + return {
1022 + $documents: jQuery(selectors.document)
1023 + };
1024 + }
1025 + }, {
1026 + key: "initDocumentClasses",
1027 + value: function initDocumentClasses() {
1028 + this.documentClasses = {
1029 + base: _document.default
1030 + };
1031 + elementorFrontend.hooks.doAction('elementor/frontend/documents-manager/init-classes', this);
1032 + }
1033 + }, {
1034 + key: "addDocumentClass",
1035 + value: function addDocumentClass(documentType, documentClass) {
1036 + this.documentClasses[documentType] = documentClass;
1037 + }
1038 + }, {
1039 + key: "attachDocumentsClasses",
1040 + value: function attachDocumentsClasses() {
1041 + var _this2 = this;
1042 +
1043 + this.elements.$documents.each(function (index, document) {
1044 + return _this2.attachDocumentClass(jQuery(document));
1045 + });
1046 + }
1047 + }, {
1048 + key: "attachDocumentClass",
1049 + value: function attachDocumentClass($document) {
1050 + var documentData = $document.data(),
1051 + documentID = documentData.elementorId,
1052 + documentType = documentData.elementorType,
1053 + DocumentClass = this.documentClasses[documentType] || this.documentClasses.base;
1054 + this.documents[documentID] = new DocumentClass({
1055 + $element: $document,
1056 + id: documentID
1057 + });
1058 + }
1059 + }]);
1060 + return _default;
1061 +}(elementorModules.ViewModule);
1062 +
1063 +exports.default = _default;
1064 +
1065 +/***/ }),
1066 +
65 1067 /***/ "../assets/dev/js/frontend/elements-handlers-manager.js":
66 1068 /*!**************************************************************!*\
67 1069 !*** ../assets/dev/js/frontend/elements-handlers-manager.js ***!
68 1070 \**************************************************************/
1071 +/*! unknown exports (runtime-defined) */
1072 +/*! runtime requirements: module, __webpack_require__, __webpack_require__.e, __webpack_require__.t, __webpack_require__.* */
1073 +/*! CommonJS bailout: module.exports is used directly at 17:0-14 */
69 1074 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
70 1075
1076 +"use strict";
71 1077
72 1078
73 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
74 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
75 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
1079 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
1080 +
1081 +var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));
1082 +
1083 +var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));
1084 +
1085 +__webpack_require__(/*! core-js/modules/es6.regexp.split */ "../node_modules/core-js/modules/es6.regexp.split.js");
1086 +
76 1087 var _global = _interopRequireDefault(__webpack_require__(/*! ./handlers/global */ "../assets/dev/js/frontend/handlers/global.js"));
77 -var _container = _interopRequireDefault(__webpack_require__(/*! ./handlers/container/container */ "../assets/dev/js/frontend/handlers/container/container.js"));
1088 +
78 1089 var _section = _interopRequireDefault(__webpack_require__(/*! ./handlers/section/section */ "../assets/dev/js/frontend/handlers/section/section.js"));
1090 +
79 1091 var _column = _interopRequireDefault(__webpack_require__(/*! ./handlers/column */ "../assets/dev/js/frontend/handlers/column.js"));
80 -/* global elementorFrontendConfig */
81 1092
82 1093 module.exports = function ($) {
83 - const handlersInstances = {};
1094 + var _this = this;
1095 +
1096 + var handlersInstances = {};
84 1097 this.elementsHandlers = {
85 - 'accordion.default': () => __webpack_require__.e(/*! import() | accordion */ "accordion").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/accordion */ "../assets/dev/js/frontend/handlers/accordion.js")),
86 - 'alert.default': () => __webpack_require__.e(/*! import() | alert */ "alert").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/alert */ "../assets/dev/js/frontend/handlers/alert.js")),
87 - 'counter.default': () => __webpack_require__.e(/*! import() | counter */ "counter").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/counter */ "../assets/dev/js/frontend/handlers/counter.js")),
88 - 'progress.default': () => __webpack_require__.e(/*! import() | progress */ "progress").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/progress */ "../assets/dev/js/frontend/handlers/progress.js")),
89 - 'tabs.default': () => __webpack_require__.e(/*! import() | tabs */ "tabs").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/tabs */ "../assets/dev/js/frontend/handlers/tabs.js")),
90 - 'toggle.default': () => __webpack_require__.e(/*! import() | toggle */ "toggle").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/toggle */ "../assets/dev/js/frontend/handlers/toggle.js")),
91 - 'video.default': () => __webpack_require__.e(/*! import() | video */ "video").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/video */ "../assets/dev/js/frontend/handlers/video.js")),
92 - 'image-carousel.default': () => __webpack_require__.e(/*! import() | image-carousel */ "image-carousel").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/image-carousel */ "../assets/dev/js/frontend/handlers/image-carousel.js")),
93 - 'text-editor.default': () => __webpack_require__.e(/*! import() | text-editor */ "text-editor").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/text-editor */ "../assets/dev/js/frontend/handlers/text-editor.js")),
94 - 'wp-widget-media_audio.default': () => __webpack_require__.e(/*! import() | wp-audio */ "wp-audio").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/wp-audio */ "../assets/dev/js/frontend/handlers/wp-audio.js")),
95 - container: _container.default,
96 - section: _section.default,
97 - column: _column.default
1098 + 'accordion.default': function accordionDefault() {
1099 + return Promise.all(/*! import() | accordion */[__webpack_require__.e("node_modules_babel_runtime-corejs2_helpers_objectSpread2_js-assets_dev_js_frontend_handlers_b-376ec2"), __webpack_require__.e("accordion")]).then(__webpack_require__.t.bind(__webpack_require__, /*! ./handlers/accordion */ "../assets/dev/js/frontend/handlers/accordion.js", 7));
1100 + },
1101 + 'alert.default': function alertDefault() {
1102 + return __webpack_require__.e(/*! import() | alert */ "alert").then(__webpack_require__.t.bind(__webpack_require__, /*! ./handlers/alert */ "../assets/dev/js/frontend/handlers/alert.js", 7));
1103 + },
1104 + 'counter.default': function counterDefault() {
1105 + return __webpack_require__.e(/*! import() | counter */ "counter").then(__webpack_require__.t.bind(__webpack_require__, /*! ./handlers/counter */ "../assets/dev/js/frontend/handlers/counter.js", 7));
1106 + },
1107 + 'progress.default': function progressDefault() {
1108 + return __webpack_require__.e(/*! import() | progress */ "progress").then(__webpack_require__.t.bind(__webpack_require__, /*! ./handlers/progress */ "../assets/dev/js/frontend/handlers/progress.js", 7));
1109 + },
1110 + 'tabs.default': function tabsDefault() {
1111 + return Promise.all(/*! import() | tabs */[__webpack_require__.e("node_modules_babel_runtime-corejs2_helpers_objectSpread2_js-assets_dev_js_frontend_handlers_b-376ec2"), __webpack_require__.e("tabs")]).then(__webpack_require__.t.bind(__webpack_require__, /*! ./handlers/tabs */ "../assets/dev/js/frontend/handlers/tabs.js", 7));
1112 + },
1113 + 'toggle.default': function toggleDefault() {
1114 + return Promise.all(/*! import() | toggle */[__webpack_require__.e("node_modules_babel_runtime-corejs2_helpers_objectSpread2_js-assets_dev_js_frontend_handlers_b-376ec2"), __webpack_require__.e("toggle")]).then(__webpack_require__.t.bind(__webpack_require__, /*! ./handlers/toggle */ "../assets/dev/js/frontend/handlers/toggle.js", 7));
1115 + },
1116 + 'video.default': function videoDefault() {
1117 + return __webpack_require__.e(/*! import() | video */ "video").then(__webpack_require__.t.bind(__webpack_require__, /*! ./handlers/video */ "../assets/dev/js/frontend/handlers/video.js", 7));
1118 + },
1119 + 'image-carousel.default': function imageCarouselDefault() {
1120 + return __webpack_require__.e(/*! import() | image-carousel */ "image-carousel").then(__webpack_require__.t.bind(__webpack_require__, /*! ./handlers/image-carousel */ "../assets/dev/js/frontend/handlers/image-carousel.js", 7));
1121 + },
1122 + 'text-editor.default': function textEditorDefault() {
1123 + return __webpack_require__.e(/*! import() | text-editor */ "text-editor").then(__webpack_require__.t.bind(__webpack_require__, /*! ./handlers/text-editor */ "../assets/dev/js/frontend/handlers/text-editor.js", 7));
1124 + }
98 1125 };
99 - if (elementorFrontendConfig.experimentalFeatures['nested-elements']) {
100 - this.elementsHandlers['nested-tabs.default'] = () => __webpack_require__.e(/*! import() | nested-tabs */ "nested-tabs").then(__webpack_require__.bind(__webpack_require__, /*! elementor/modules/nested-tabs/assets/js/frontend/handlers/nested-tabs */ "../modules/nested-tabs/assets/js/frontend/handlers/nested-tabs.js"));
101 - }
102 - if (elementorFrontendConfig.experimentalFeatures['nested-elements']) {
103 - this.elementsHandlers['nested-accordion.default'] = () => __webpack_require__.e(/*! import() | nested-accordion */ "nested-accordion").then(__webpack_require__.bind(__webpack_require__, /*! elementor/modules/nested-accordion/assets/js/frontend/handlers/nested-accordion */ "../modules/nested-accordion/assets/js/frontend/handlers/nested-accordion.js"));
104 - }
105 - if (elementorFrontendConfig.experimentalFeatures.container) {
106 - this.elementsHandlers['contact-buttons.default'] = () => __webpack_require__.e(/*! import() | contact-buttons */ "contact-buttons").then(__webpack_require__.bind(__webpack_require__, /*! elementor/modules/floating-buttons/assets/js/floating-buttons/frontend/handlers/contact-buttons */ "../modules/floating-buttons/assets/js/floating-buttons/frontend/handlers/contact-buttons.js"));
107 - this.elementsHandlers['floating-bars-var-1.default'] = () => __webpack_require__.e(/*! import() | floating-bars */ "floating-bars").then(__webpack_require__.bind(__webpack_require__, /*! elementor/modules/floating-buttons/assets/js/floating-bars/frontend/handlers/floating-bars */ "../modules/floating-buttons/assets/js/floating-bars/frontend/handlers/floating-bars.js"));
108 - }
109 - const addGlobalHandlers = () => elementorFrontend.hooks.addAction('frontend/element_ready/global', _global.default);
110 - const addElementsHandlers = () => {
111 - $.each(this.elementsHandlers, (elementName, Handlers) => {
112 - const elementData = elementName.split('.');
1126 +
1127 + var addGlobalHandlers = function addGlobalHandlers() {
1128 + return elementorFrontend.hooks.addAction('frontend/element_ready/global', _global.default);
1129 + };
1130 +
1131 + var addElementsHandlers = function addElementsHandlers() {
1132 + _this.elementsHandlers.section = _section.default;
1133 + _this.elementsHandlers.column = _column.default;
1134 + $.each(_this.elementsHandlers, function (elementName, Handlers) {
1135 + var elementData = elementName.split('.');
113 1136 elementName = elementData[0];
114 - const skin = elementData[1] || null;
115 - this.attachHandler(elementName, Handlers, skin);
1137 + var skin = elementData[1] || null;
1138 +
1139 + _this.attachHandler(elementName, Handlers, skin);
116 1140 });
117 1141 };
118 - const isClassHandler = Handler => Handler.prototype?.getUniqueHandlerID;
119 - const addHandlerWithHook = (elementBaseName, Handler, skin = 'default') => {
1142 +
1143 + var isClassHandler = function isClassHandler(Handler) {
1144 + return Handler.prototype.getUniqueHandlerID;
1145 + };
1146 +
1147 + var addHandlerWithHook = function addHandlerWithHook(elementName, Handler) {
1148 + var skin = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'default';
120 1149 skin = skin ? '.' + skin : '';
121 - const elementName = elementBaseName + skin;
122 - elementorFrontend.hooks.addAction(`frontend/element_ready/${elementName}`, $element => {
1150 + elementorFrontend.hooks.addAction("frontend/element_ready/".concat(elementName).concat(skin), function ($element) {
123 1151 if (isClassHandler(Handler)) {
124 - this.addHandler(Handler, {
125 - $element,
126 - elementName
1152 + _this.addHandler(Handler, {
1153 + $element: $element
127 1154 }, true);
128 1155 } else {
129 - const handlerValue = Handler();
130 - if (!handlerValue) {
131 - return;
132 - }
133 - if (handlerValue instanceof Promise) {
134 - handlerValue.then(({
135 - default: dynamicHandler
136 - }) => {
137 - this.addHandler(dynamicHandler, {
138 - $element,
139 - elementName
1156 + var handlerValue = Handler();
1157 +
1158 + if (handlerValue instanceof _promise.default) {
1159 + handlerValue.then(function (_ref) {
1160 + var dynamicHandler = _ref.default;
1161 +
1162 + _this.addHandler(dynamicHandler, {
1163 + $element: $element
140 1164 }, true);
141 1165 });
142 1166 } else {
143 - this.addHandler(handlerValue, {
144 - $element,
145 - elementName
1167 + _this.addHandler(handlerValue, {
1168 + $element: $element
146 1169 }, true);
147 1170 }
148 1171 }
149 1172 });
150 1173 };
1174 +
151 1175 this.addHandler = function (HandlerClass, options) {
152 - const elementID = options.$element.data('model-cid');
153 - let handlerID;
1176 + var elementID = options.$element.data('model-cid');
1177 + var handlerID; // If element is in edit mode
154 1178
155 - // If element is in edit mode
156 1179 if (elementID) {
157 1180 handlerID = HandlerClass.prototype.getConstructorID();
1181 +
158 1182 if (!handlersInstances[elementID]) {
159 1183 handlersInstances[elementID] = {};
160 1184 }
161 - const oldHandler = handlersInstances[elementID][handlerID];
1185 +
1186 + var oldHandler = handlersInstances[elementID][handlerID];
1187 +
162 1188 if (oldHandler) {
163 1189 oldHandler.onDestroy();
164 1190 }
165 1191 }
166 - const newHandler = new HandlerClass(options);
167 - elementorFrontend.hooks.doAction(`frontend/element_handler_ready/${options.elementName}`, options.$element, $);
1192 +
1193 + var newHandler = new HandlerClass(options);
1194 +
168 1195 if (elementID) {
169 1196 handlersInstances[elementID][handlerID] = newHandler;
170 1197 }
171 1198 };
172 - this.attachHandler = (elementName, Handlers, skin) => {
173 - if (!Array.isArray(Handlers)) {
1199 +
1200 + this.attachHandler = function (elementName, Handlers, skin) {
1201 + if (!(0, _isArray.default)(Handlers)) {
174 1202 Handlers = [Handlers];
175 1203 }
176 - Handlers.forEach(Handler => addHandlerWithHook(elementName, Handler, skin));
1204 +
1205 + Handlers.forEach(function (Handler) {
1206 + return addHandlerWithHook(elementName, Handler, skin);
1207 + });
177 1208 };
1209 +
178 1210 this.getHandler = function (handlerName) {
179 - const elementHandler = this.elementsHandlers[handlerName];
1211 + if (!handlerName) {
1212 + return;
1213 + }
1214 +
1215 + var elementHandler = this.elementsHandlers[handlerName];
1216 +
180 1217 if (isClassHandler(elementHandler)) {
181 1218 return elementHandler;
182 1219 }
183 - return new Promise(res => {
184 - elementHandler().then(({
185 - default: dynamicHandler
186 - }) => {
1220 +
1221 + return new _promise.default(function (res) {
1222 + elementHandler().then(function (_ref2) {
1223 + var dynamicHandler = _ref2.default;
187 1224 res(dynamicHandler);
188 1225 });
189 1226 });
190 1227 };
191 1228
192 - /**
193 - * @param {string} handlerName
194 - * @deprecated since 3.1.0, use `elementorFrontend.elementsHandler.getHandler` instead.
195 - */
196 1229 this.getHandlers = function (handlerName) {
197 - elementorDevTools.deprecation.deprecated('getHandlers', '3.1.0', 'elementorFrontend.elementsHandler.getHandler');
1230 + elementorCommon.helpers.softDeprecated('getHandlers', '3.1.0', 'elementorFrontend.elementsHandler.getHandler');
1231 +
198 1232 if (handlerName) {
199 1233 return this.getHandler(handlerName);
200 1234 }
1235 +
201 1236 return this.elementsHandlers;
202 1237 };
1238 +
203 1239 this.runReadyTrigger = function (scope) {
204 - const isDelayChildHandlers = !!scope.closest('[data-delay-child-handlers="true"]') && 0 !== scope.closest('[data-delay-child-handlers="true"]').length;
205 - if (elementorFrontend.config.is_static || isDelayChildHandlers) {
1240 + if (elementorFrontend.config.is_static) {
206 1241 return;
207 - }
1242 + } // Initializing the `$scope` as frontend jQuery instance
208 1243
209 - // Initializing the `$scope` as frontend jQuery instance
210 - const $scope = jQuery(scope),
211 - elementType = $scope.attr('data-element_type');
1244 +
1245 + var $scope = jQuery(scope),
1246 + elementType = $scope.attr('data-element_type');
1247 +
212 1248 if (!elementType) {
213 1249 return;
214 1250 }
1251 +
215 1252 elementorFrontend.hooks.doAction('frontend/element_ready/global', $scope, $);
216 - elementorFrontend.hooks.doAction(`frontend/element_ready/${elementType}`, $scope, $);
1253 + elementorFrontend.hooks.doAction('frontend/element_ready/' + elementType, $scope, $);
1254 +
217 1255 if ('widget' === elementType) {
218 - const widgetType = $scope.attr('data-widget_type');
219 - elementorFrontend.hooks.doAction(`frontend/element_ready/${widgetType}`, $scope, $);
1256 + elementorFrontend.hooks.doAction('frontend/element_ready/' + $scope.attr('data-widget_type'), $scope, $);
220 1257 }
221 1258 };
222 - this.init = () => {
1259 +
1260 + this.init = function () {
223 1261 addGlobalHandlers();
224 1262 addElementsHandlers();
225 1263 };
226 1264 };
@@ -230,334 +1268,645 @@
230 1268 /***/ "../assets/dev/js/frontend/frontend.js":
231 1269 /*!*********************************************!*\
232 1270 !*** ../assets/dev/js/frontend/frontend.js ***!
233 1271 \*********************************************/
1272 +/*! unknown exports (runtime-defined) */
1273 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
1274 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
234 1275 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
235 1276
1277 +"use strict";
236 1278
237 1279
238 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
239 -Object.defineProperty(exports, "__esModule", ({
1280 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
1281 +
1282 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
1283 +
1284 +_Object$defineProperty(exports, "__esModule", {
240 1285 value: true
241 -}));
242 -exports["default"] = void 0;
243 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
244 -__webpack_require__(/*! core-js/modules/esnext.iterator.find.js */ "../node_modules/core-js/modules/esnext.iterator.find.js");
245 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
1286 +});
1287 +
1288 +exports.default = void 0;
1289 +
1290 +__webpack_require__(/*! core-js/modules/es6.array.find */ "../node_modules/core-js/modules/es6.array.find.js");
1291 +
1292 +__webpack_require__(/*! core-js/modules/es6.regexp.replace */ "../node_modules/core-js/modules/es6.regexp.replace.js");
1293 +
1294 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
1295 +
1296 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
1297 +
1298 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
1299 +
1300 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
1301 +
246 1302 __webpack_require__(/*! ../public-path */ "../assets/dev/js/public-path.js");
1303 +
247 1304 var _documentsManager = _interopRequireDefault(__webpack_require__(/*! ./documents-manager */ "../assets/dev/js/frontend/documents-manager.js"));
1305 +
248 1306 var _storage = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/storage */ "../core/common/assets/js/utils/storage.js"));
1307 +
249 1308 var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));
1309 +
250 1310 var _youtubeLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/video-api/youtube-loader */ "../assets/dev/js/frontend/utils/video-api/youtube-loader.js"));
1311 +
251 1312 var _vimeoLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/video-api/vimeo-loader */ "../assets/dev/js/frontend/utils/video-api/vimeo-loader.js"));
252 -var _baseLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/video-api/base-loader */ "../assets/dev/js/frontend/utils/video-api/base-loader.js"));
1313 +
253 1314 var _urlActions = _interopRequireDefault(__webpack_require__(/*! ./utils/url-actions */ "../assets/dev/js/frontend/utils/url-actions.js"));
1315 +
254 1316 var _swiper = _interopRequireDefault(__webpack_require__(/*! ./utils/swiper */ "../assets/dev/js/frontend/utils/swiper.js"));
255 -var _lightboxManager = _interopRequireDefault(__webpack_require__(/*! ./utils/lightbox/lightbox-manager */ "../assets/dev/js/frontend/utils/lightbox/lightbox-manager.js"));
256 -var _assetsLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/assets-loader */ "../assets/dev/js/frontend/utils/assets-loader.js"));
257 -var _breakpoints = _interopRequireDefault(__webpack_require__(/*! elementor-utils/breakpoints */ "../assets/dev/js/utils/breakpoints.js"));
258 -var _events = _interopRequireDefault(__webpack_require__(/*! elementor-utils/events */ "../assets/dev/js/utils/events.js"));
259 -var _frontend = _interopRequireDefault(__webpack_require__(/*! elementor/modules/shapes/assets/js/frontend/frontend */ "../modules/shapes/assets/js/frontend/frontend.js"));
260 -var _controls = _interopRequireDefault(__webpack_require__(/*! ./utils/controls */ "../assets/dev/js/frontend/utils/controls.js"));
261 -var _anchorScrollMargin = _interopRequireDefault(__webpack_require__(/*! ./utils/anchor-scroll-margin */ "../assets/dev/js/frontend/utils/anchor-scroll-margin.js"));
262 -var _utils = __webpack_require__(/*! elementor-frontend/utils/utils */ "../assets/dev/js/frontend/utils/utils.js");
1317 +
263 1318 /* global elementorFrontendConfig */
1319 +var EventManager = __webpack_require__(/*! elementor-utils/hooks */ "../assets/dev/js/utils/hooks.js"),
1320 + ElementsHandler = __webpack_require__(/*! elementor-frontend/elements-handlers-manager */ "../assets/dev/js/frontend/elements-handlers-manager.js"),
1321 + AnchorsModule = __webpack_require__(/*! elementor-frontend/utils/anchors */ "../assets/dev/js/frontend/utils/anchors.js"),
1322 + LightboxModule = __webpack_require__(/*! elementor-frontend/utils/lightbox/lightbox */ "../assets/dev/js/frontend/utils/lightbox/lightbox.js");
264 1323
265 -const EventManager = __webpack_require__(/*! elementor-utils/hooks */ "../assets/dev/js/utils/hooks.js"),
266 - ElementsHandler = __webpack_require__(/*! elementor-frontend/elements-handlers-manager */ "../assets/dev/js/frontend/elements-handlers-manager.js");
267 -class Frontend extends elementorModules.ViewModule {
268 - constructor(...args) {
269 - super(...args);
270 - this.config = elementorFrontendConfig;
271 - this.config.legacyMode = {
272 - /**
273 - * @deprecated since 3.1.0
274 - */
275 - get elementWrappers() {
276 - if (elementorFrontend.isEditMode()) {
277 - window.top.elementorDevTools.deprecation.deprecated('elementorFrontend.config.legacyMode.elementWrappers', '3.1.0');
1324 +var Frontend = /*#__PURE__*/function (_elementorModules$Vie) {
1325 + (0, _inherits2.default)(Frontend, _elementorModules$Vie);
1326 +
1327 + var _super = (0, _createSuper2.default)(Frontend);
1328 +
1329 + function Frontend() {
1330 + var _this;
1331 +
1332 + (0, _classCallCheck2.default)(this, Frontend);
1333 +
1334 + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1335 + args[_key] = arguments[_key];
1336 + }
1337 +
1338 + _this = _super.call.apply(_super, [this].concat(args));
1339 + _this.config = elementorFrontendConfig;
1340 + return _this;
1341 + } // TODO: BC since 2.5.0
1342 +
1343 +
1344 + (0, _createClass2.default)(Frontend, [{
1345 + key: "getDefaultSettings",
1346 + value: function getDefaultSettings() {
1347 + return {
1348 + selectors: {
1349 + elementor: '.elementor',
1350 + adminBar: '#wpadminbar'
1351 + },
1352 + classes: {
1353 + ie: 'elementor-msie'
278 1354 }
279 - return false;
1355 + };
1356 + }
1357 + }, {
1358 + key: "getDefaultElements",
1359 + value: function getDefaultElements() {
1360 + var defaultElements = {
1361 + window: window,
1362 + $window: jQuery(window),
1363 + $document: jQuery(document),
1364 + $head: jQuery(document.head),
1365 + $body: jQuery(document.body),
1366 + $deviceMode: jQuery('<span>', {
1367 + id: 'elementor-device-mode',
1368 + class: 'elementor-screen-only'
1369 + })
1370 + };
1371 + defaultElements.$body.append(defaultElements.$deviceMode);
1372 + return defaultElements;
1373 + }
1374 + }, {
1375 + key: "bindEvents",
1376 + value: function bindEvents() {
1377 + var _this2 = this;
1378 +
1379 + this.elements.$window.on('resize', function () {
1380 + return _this2.setDeviceModeData();
1381 + });
1382 + }
1383 + /**
1384 + * @deprecated 2.4.0 Use just `this.elements` instead
1385 + */
1386 +
1387 + }, {
1388 + key: "getElements",
1389 + value: function getElements(elementName) {
1390 + return this.getItems(this.elements, elementName);
1391 + }
1392 + /**
1393 + * @deprecated 2.4.0 This method was never in use
1394 + */
1395 +
1396 + }, {
1397 + key: "getPageSettings",
1398 + value: function getPageSettings(settingName) {
1399 + var settingsObject = this.isEditMode() ? elementor.settings.page.model.attributes : this.config.settings.page;
1400 + return this.getItems(settingsObject, settingName);
1401 + }
1402 + }, {
1403 + key: "getGeneralSettings",
1404 + value: function getGeneralSettings(settingName) {
1405 + if (this.isEditMode()) {
1406 + parent.elementorCommon.helpers.softDeprecated('getGeneralSettings', '3.0.0', 'getKitSettings and remove the `elementor_` prefix');
280 1407 }
281 - };
282 - this.populateActiveBreakpointsConfig();
283 - }
284 1408
285 - /**
286 - * @deprecated since 2.5.0, use `elementorModules.frontend.handlers.Base` instead.
287 - */
288 - get Module() {
289 - if (this.isEditMode()) {
290 - parent.elementorDevTools.deprecation.deprecated('elementorFrontend.Module', '2.5.0', 'elementorModules.frontend.handlers.Base');
1409 + return this.getKitSettings("elementor_".concat(settingName));
291 1410 }
292 - return elementorModules.frontend.handlers.Base;
293 - }
294 - getDefaultSettings() {
295 - return {
296 - selectors: {
297 - elementor: '.elementor',
298 - adminBar: '#wpadminbar'
1411 + }, {
1412 + key: "getKitSettings",
1413 + value: function getKitSettings(settingName) {
1414 + // TODO: use Data API.
1415 + return this.getItems(this.config.kit, settingName);
1416 + }
1417 + }, {
1418 + key: "getCurrentDeviceMode",
1419 + value: function getCurrentDeviceMode() {
1420 + return getComputedStyle(this.elements.$deviceMode[0], ':after').content.replace(/"/g, '');
1421 + }
1422 + }, {
1423 + key: "getDeviceSetting",
1424 + value: function getDeviceSetting(deviceMode, settings, settingKey) {
1425 + var devices = ['desktop', 'tablet', 'mobile'];
1426 + var deviceIndex = devices.indexOf(deviceMode);
1427 +
1428 + while (deviceIndex > 0) {
1429 + var currentDevice = devices[deviceIndex],
1430 + fullSettingKey = settingKey + '_' + currentDevice,
1431 + deviceValue = settings[fullSettingKey];
1432 +
1433 + if (deviceValue) {
1434 + return deviceValue;
1435 + }
1436 +
1437 + deviceIndex--;
299 1438 }
300 - };
301 - }
302 - getDefaultElements() {
303 - const defaultElements = {
304 - window,
305 - $window: jQuery(window),
306 - $document: jQuery(document),
307 - $head: jQuery(document.head),
308 - $body: jQuery(document.body),
309 - $deviceMode: jQuery('<span>', {
310 - id: 'elementor-device-mode',
311 - class: 'elementor-screen-only'
312 - })
313 - };
314 - defaultElements.$body.append(defaultElements.$deviceMode);
315 - return defaultElements;
316 - }
317 - bindEvents() {
318 - this.elements.$window.on('resize', () => this.setDeviceModeData());
319 - }
320 1439
321 - /**
322 - * @param {string} elementName
323 - * @deprecated since 2.4.0, use `this.elements` instead.
324 - */
325 - getElements(elementName) {
326 - return this.getItems(this.elements, elementName);
327 - }
1440 + return settings[settingKey];
1441 + }
1442 + }, {
1443 + key: "getCurrentDeviceSetting",
1444 + value: function getCurrentDeviceSetting(settings, settingKey) {
1445 + return this.getDeviceSetting(elementorFrontend.getCurrentDeviceMode(), settings, settingKey);
1446 + }
1447 + }, {
1448 + key: "isEditMode",
1449 + value: function isEditMode() {
1450 + return this.config.environmentMode.edit;
1451 + }
1452 + }, {
1453 + key: "isWPPreviewMode",
1454 + value: function isWPPreviewMode() {
1455 + return this.config.environmentMode.wpPreview;
1456 + }
1457 + }, {
1458 + key: "initDialogsManager",
1459 + value: function initDialogsManager() {
1460 + var dialogsManager;
328 1461
329 - /**
330 - * @param {string} settingName
331 - * @deprecated since 2.4.0, this method was never in use.
332 - */
333 - getPageSettings(settingName) {
334 - const settingsObject = this.isEditMode() ? elementor.settings.page.model.attributes : this.config.settings.page;
335 - return this.getItems(settingsObject, settingName);
336 - }
1462 + this.getDialogsManager = function () {
1463 + if (!dialogsManager) {
1464 + dialogsManager = new DialogsManager.Instance();
1465 + }
337 1466
338 - /**
339 - * @param {string} settingName
340 - * @deprecated since 3.0.0, use `getKitSettings()` instead and remove the `elementor_` prefix.
341 - */
342 - getGeneralSettings(settingName) {
343 - if (this.isEditMode()) {
344 - parent.elementorDevTools.deprecation.deprecated('getGeneralSettings()', '3.0.0', 'getKitSettings() and remove the `elementor_` prefix');
1467 + return dialogsManager;
1468 + };
345 1469 }
346 - return this.getKitSettings(`elementor_${settingName}`);
347 - }
348 - getKitSettings(settingName) {
349 - // TODO: use Data API.
350 - return this.getItems(this.config.kit, settingName);
351 - }
352 - getCurrentDeviceMode() {
353 - return getComputedStyle(this.elements.$deviceMode[0], ':after').content.replace(/"/g, '');
354 - }
355 - getDeviceSetting(deviceMode, settings, settingKey) {
356 - // Add specific handling for widescreen since it is larger than desktop.
357 - if ('widescreen' === deviceMode) {
358 - return this.getWidescreenSetting(settings, settingKey);
1470 + }, {
1471 + key: "initOnReadyComponents",
1472 + value: function initOnReadyComponents() {
1473 + var _this3 = this;
1474 +
1475 + this.utils = {
1476 + youtube: new _youtubeLoader.default(),
1477 + vimeo: new _vimeoLoader.default(),
1478 + anchors: new AnchorsModule(),
1479 + lightbox: new LightboxModule(),
1480 + urlActions: new _urlActions.default(),
1481 + swiper: _swiper.default,
1482 + environment: _environment.default
1483 + }; // TODO: BC since 2.4.0
1484 +
1485 + this.modules = {
1486 + StretchElement: elementorModules.frontend.tools.StretchElement,
1487 + Masonry: elementorModules.utils.Masonry
1488 + };
1489 + this.elementsHandler.init();
1490 +
1491 + if (this.isEditMode()) {
1492 + elementor.once('document:loaded', function () {
1493 + return _this3.onDocumentLoaded();
1494 + });
1495 + } else {
1496 + this.onDocumentLoaded();
1497 + }
359 1498 }
360 - const devices = elementorFrontend.breakpoints.getActiveBreakpointsList({
361 - largeToSmall: true,
362 - withDesktop: true
363 - });
364 - let deviceIndex = devices.indexOf(deviceMode);
365 - while (deviceIndex > 0) {
366 - const currentDevice = devices[deviceIndex],
367 - fullSettingKey = settingKey + '_' + currentDevice,
368 - deviceValue = settings[fullSettingKey];
1499 + }, {
1500 + key: "initOnReadyElements",
1501 + value: function initOnReadyElements() {
1502 + this.elements.$wpAdminBar = this.elements.$document.find(this.getSettings('selectors.adminBar'));
1503 + }
1504 + }, {
1505 + key: "addIeCompatibility",
1506 + value: function addIeCompatibility() {
1507 + var el = document.createElement('div'),
1508 + supportsGrid = 'string' === typeof el.style.grid;
369 1509
370 - // Accept 0 as value.
371 - if (deviceValue || 0 === deviceValue) {
372 - return deviceValue;
1510 + if (!_environment.default.ie && supportsGrid) {
1511 + return;
373 1512 }
374 - deviceIndex--;
1513 +
1514 + this.elements.$body.addClass(this.getSettings('classes.ie'));
1515 + var msieCss = '<link rel="stylesheet" id="elementor-frontend-css-msie" href="' + this.config.urls.assets + 'css/frontend-msie.min.css?' + this.config.version + '" type="text/css" />';
1516 + this.elements.$body.append(msieCss);
375 1517 }
376 - return settings[settingKey];
377 - }
378 - getWidescreenSetting(settings, settingKey) {
379 - const deviceMode = 'widescreen',
380 - widescreenSettingKey = settingKey + '_' + deviceMode;
381 - let settingToReturn;
1518 + }, {
1519 + key: "setDeviceModeData",
1520 + value: function setDeviceModeData() {
1521 + this.elements.$body.attr('data-elementor-device-mode', this.getCurrentDeviceMode());
1522 + }
1523 + }, {
1524 + key: "addListenerOnce",
1525 + value: function addListenerOnce(listenerID, event, callback, to) {
1526 + if (!to) {
1527 + to = this.elements.$window;
1528 + }
382 1529
383 - // If the device mode is 'widescreen', and the setting exists - return it.
384 - if (settings[widescreenSettingKey]) {
385 - settingToReturn = settings[widescreenSettingKey];
386 - } else {
387 - // Otherwise, return the desktop setting
388 - settingToReturn = settings[settingKey];
1530 + if (!this.isEditMode()) {
1531 + to.on(event, callback);
1532 + return;
1533 + }
1534 +
1535 + this.removeListeners(listenerID, event, to);
1536 +
1537 + if (to instanceof jQuery) {
1538 + var eventNS = event + '.' + listenerID;
1539 + to.on(eventNS, callback);
1540 + } else {
1541 + to.on(event, callback, listenerID);
1542 + }
389 1543 }
390 - return settingToReturn;
391 - }
392 - getCurrentDeviceSetting(settings, settingKey) {
393 - return this.getDeviceSetting(elementorFrontend.getCurrentDeviceMode(), settings, settingKey);
394 - }
395 - isEditMode() {
396 - return this.config.environmentMode.edit;
397 - }
398 - isWPPreviewMode() {
399 - return this.config.environmentMode.wpPreview;
400 - }
401 - initDialogsManager() {
402 - let dialogsManager;
403 - this.getDialogsManager = () => {
404 - if (!dialogsManager) {
405 - dialogsManager = new DialogsManager.Instance();
1544 + }, {
1545 + key: "removeListeners",
1546 + value: function removeListeners(listenerID, event, callback, from) {
1547 + if (!from) {
1548 + from = this.elements.$window;
406 1549 }
407 - return dialogsManager;
408 - };
409 - }
410 - initOnReadyComponents() {
411 - this.utils = {
412 - youtube: new _youtubeLoader.default(),
413 - vimeo: new _vimeoLoader.default(),
414 - baseVideoLoader: new _baseLoader.default(),
415 - get lightbox() {
416 - return _lightboxManager.default.getLightbox();
417 - },
418 - urlActions: new _urlActions.default(),
419 - swiper: _swiper.default,
420 - environment: _environment.default,
421 - assetsLoader: new _assetsLoader.default(),
422 - escapeHTML: _utils.escapeHTML,
423 - events: _events.default,
424 - controls: new _controls.default(),
425 - anchor_scroll_margin: new _anchorScrollMargin.default()
426 - };
427 1550
428 - // TODO: BC since 2.4.0
429 - this.modules = {
430 - StretchElement: elementorModules.frontend.tools.StretchElement,
431 - Masonry: elementorModules.utils.Masonry
432 - };
433 - this.elementsHandler.init();
434 - if (this.isEditMode()) {
435 - elementor.once('document:loaded', () => this.onDocumentLoaded());
436 - } else {
437 - this.onDocumentLoaded();
438 - }
439 - }
440 - initOnReadyElements() {
441 - this.elements.$wpAdminBar = this.elements.$document.find(this.getSettings('selectors.adminBar'));
442 - }
443 - addUserAgentClasses() {
444 - for (const [key, value] of Object.entries(_environment.default)) {
445 - if (value) {
446 - this.elements.$body.addClass('e--ua-' + key);
1551 + if (from instanceof jQuery) {
1552 + var eventNS = event + '.' + listenerID;
1553 + from.off(eventNS, callback);
1554 + } else {
1555 + from.off(event, callback, listenerID);
447 1556 }
1557 + } // Based on underscore function
1558 +
1559 + }, {
1560 + key: "debounce",
1561 + value: function debounce(func, wait) {
1562 + var timeout;
1563 + return function () {
1564 + var context = this,
1565 + args = arguments;
1566 +
1567 + var later = function later() {
1568 + timeout = null;
1569 + func.apply(context, args);
1570 + };
1571 +
1572 + var callNow = !timeout;
1573 + clearTimeout(timeout);
1574 + timeout = setTimeout(later, wait);
1575 +
1576 + if (callNow) {
1577 + func.apply(context, args);
1578 + }
1579 + };
448 1580 }
449 - }
450 - setDeviceModeData() {
451 - this.elements.$body.attr('data-elementor-device-mode', this.getCurrentDeviceMode());
452 - }
453 - addListenerOnce(listenerID, event, callback, to) {
454 - if (!to) {
455 - to = this.elements.$window;
1581 + }, {
1582 + key: "waypoint",
1583 + value: function waypoint($element, callback, options) {
1584 + var defaultOptions = {
1585 + offset: '100%',
1586 + triggerOnce: true
1587 + };
1588 + options = jQuery.extend(defaultOptions, options);
1589 +
1590 + var correctCallback = function correctCallback() {
1591 + var element = this.element || this,
1592 + result = callback.apply(element, arguments); // If is Waypoint new API and is frontend
1593 +
1594 + if (options.triggerOnce && this.destroy) {
1595 + this.destroy();
1596 + }
1597 +
1598 + return result;
1599 + };
1600 +
1601 + return $element.elementorWaypoint(correctCallback, options);
456 1602 }
457 - if (!this.isEditMode()) {
458 - to.on(event, callback);
459 - return;
1603 + }, {
1604 + key: "muteMigrationTraces",
1605 + value: function muteMigrationTraces() {
1606 + jQuery.migrateMute = true;
1607 + jQuery.migrateTrace = false;
460 1608 }
461 - this.removeListeners(listenerID, event, to);
462 - if (to instanceof jQuery) {
463 - const eventNS = event + '.' + listenerID;
464 - to.on(eventNS, callback);
465 - } else {
466 - to.on(event, callback, listenerID);
1609 + }, {
1610 + key: "init",
1611 + value: function init() {
1612 + this.hooks = new EventManager();
1613 + this.storage = new _storage.default();
1614 + this.elementsHandler = new ElementsHandler(jQuery);
1615 + this.addIeCompatibility();
1616 + this.setDeviceModeData();
1617 + this.initDialogsManager();
1618 +
1619 + if (this.isEditMode()) {
1620 + this.muteMigrationTraces();
1621 + } // Keep this line before `initOnReadyComponents` call
1622 +
1623 +
1624 + this.elements.$window.trigger('elementor/frontend/init');
1625 + this.initOnReadyElements();
1626 + this.initOnReadyComponents();
467 1627 }
468 - }
469 - removeListeners(listenerID, event, callback, from) {
470 - if (!from) {
471 - from = this.elements.$window;
1628 + }, {
1629 + key: "onDocumentLoaded",
1630 + value: function onDocumentLoaded() {
1631 + this.documentsManager = new _documentsManager.default();
1632 + this.trigger('components:init');
472 1633 }
473 - if (from instanceof jQuery) {
474 - const eventNS = event + '.' + listenerID;
475 - from.off(eventNS, callback);
476 - } else {
477 - from.off(event, callback, listenerID);
1634 + }, {
1635 + key: "Module",
1636 + get: function get() {
1637 + if (this.isEditMode()) {
1638 + parent.elementorCommon.helpers.hardDeprecated('elementorFrontend.Module', '2.5.0', 'elementorModules.frontend.handlers.Base');
1639 + }
1640 +
1641 + return elementorModules.frontend.handlers.Base;
478 1642 }
1643 + }]);
1644 + return Frontend;
1645 +}(elementorModules.ViewModule);
1646 +
1647 +exports.default = Frontend;
1648 +window.elementorFrontend = new Frontend();
1649 +
1650 +if (!elementorFrontend.isEditMode()) {
1651 + jQuery(function () {
1652 + return elementorFrontend.init();
1653 + });
1654 +}
1655 +
1656 +/***/ }),
1657 +
1658 +/***/ "../assets/dev/js/frontend/handlers/background-slideshow.js":
1659 +/*!******************************************************************!*\
1660 + !*** ../assets/dev/js/frontend/handlers/background-slideshow.js ***!
1661 + \******************************************************************/
1662 +/*! unknown exports (runtime-defined) */
1663 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
1664 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
1665 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1666 +
1667 +"use strict";
1668 +
1669 +
1670 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
1671 +
1672 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
1673 +
1674 +_Object$defineProperty(exports, "__esModule", {
1675 + value: true
1676 +});
1677 +
1678 +exports.default = void 0;
1679 +
1680 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
1681 +
1682 +__webpack_require__(/*! regenerator-runtime/runtime */ "../node_modules/regenerator-runtime/runtime.js");
1683 +
1684 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));
1685 +
1686 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
1687 +
1688 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
1689 +
1690 +var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
1691 +
1692 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
1693 +
1694 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
1695 +
1696 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
1697 +
1698 +var BackgroundSlideshow = /*#__PURE__*/function (_elementorModules$fro) {
1699 + (0, _inherits2.default)(BackgroundSlideshow, _elementorModules$fro);
1700 +
1701 + var _super = (0, _createSuper2.default)(BackgroundSlideshow);
1702 +
1703 + function BackgroundSlideshow() {
1704 + (0, _classCallCheck2.default)(this, BackgroundSlideshow);
1705 + return _super.apply(this, arguments);
479 1706 }
480 1707
481 - // Based on underscore function
482 - debounce(func, wait) {
483 - let timeout;
484 - return function () {
485 - const context = this,
486 - args = arguments;
487 - const later = () => {
488 - timeout = null;
489 - func.apply(context, args);
1708 + (0, _createClass2.default)(BackgroundSlideshow, [{
1709 + key: "getDefaultSettings",
1710 + value: function getDefaultSettings() {
1711 + return {
1712 + classes: {
1713 + swiperContainer: 'elementor-background-slideshow swiper-container',
1714 + swiperWrapper: 'swiper-wrapper',
1715 + swiperSlide: 'elementor-background-slideshow__slide swiper-slide',
1716 + slideBackground: 'elementor-background-slideshow__slide__image',
1717 + kenBurns: 'elementor-ken-burns',
1718 + kenBurnsActive: 'elementor-ken-burns--active',
1719 + kenBurnsIn: 'elementor-ken-burns--in',
1720 + kenBurnsOut: 'elementor-ken-burns--out'
1721 + }
490 1722 };
491 - const callNow = !timeout;
492 - clearTimeout(timeout);
493 - timeout = setTimeout(later, wait);
494 - if (callNow) {
495 - func.apply(context, args);
1723 + }
1724 + }, {
1725 + key: "getSwiperOptions",
1726 + value: function getSwiperOptions() {
1727 + var _this = this;
1728 +
1729 + var elementSettings = this.getElementSettings();
1730 + var swiperOptions = {
1731 + grabCursor: false,
1732 + slidesPerView: 1,
1733 + slidesPerGroup: 1,
1734 + loop: 'yes' === elementSettings.background_slideshow_loop,
1735 + speed: elementSettings.background_slideshow_transition_duration,
1736 + autoplay: {
1737 + delay: elementSettings.background_slideshow_slide_duration,
1738 + stopOnLastSlide: !elementSettings.background_slideshow_loop
1739 + },
1740 + handleElementorBreakpoints: true,
1741 + on: {
1742 + slideChange: function slideChange() {
1743 + if (elementSettings.background_slideshow_ken_burns) {
1744 + _this.handleKenBurns();
1745 + }
1746 + }
1747 + }
1748 + };
1749 +
1750 + if ('yes' === elementSettings.background_slideshow_loop) {
1751 + swiperOptions.loopedSlides = this.getSlidesCount();
496 1752 }
497 - };
498 - }
499 - muteMigrationTraces() {
500 - jQuery.migrateMute = true;
501 - jQuery.migrateTrace = false;
502 - }
503 1753
504 - /**
505 - * Initialize the modules' widgets handlers.
506 - */
507 - initModules() {
508 - const handlers = {
509 - shapes: _frontend.default
510 - };
1754 + switch (elementSettings.background_slideshow_slide_transition) {
1755 + case 'fade':
1756 + swiperOptions.effect = 'fade';
1757 + swiperOptions.fadeEffect = {
1758 + crossFade: true
1759 + };
1760 + break;
511 1761
512 - // TODO: BC - Deprecated since 3.5.0
513 - elementorFrontend.trigger('elementor/modules/init:before');
1762 + case 'slide_down':
1763 + swiperOptions.autoplay.reverseDirection = true;
514 1764
515 - // TODO: Use this instead.
516 - elementorFrontend.trigger('elementor/modules/init/before');
517 - Object.entries(handlers).forEach(([moduleName, ModuleClass]) => {
518 - this.modulesHandlers[moduleName] = new ModuleClass();
519 - });
520 - }
521 - populateActiveBreakpointsConfig() {
522 - this.config.responsive.activeBreakpoints = {};
523 - Object.entries(this.config.responsive.breakpoints).forEach(([breakpointKey, breakpointData]) => {
524 - if (breakpointData.is_enabled) {
525 - this.config.responsive.activeBreakpoints[breakpointKey] = breakpointData;
1765 + case 'slide_up':
1766 + swiperOptions.direction = 'vertical';
1767 + break;
526 1768 }
527 - });
528 - }
529 - init() {
530 - this.hooks = new EventManager();
531 - this.breakpoints = new _breakpoints.default(this.config.responsive);
532 - this.storage = new _storage.default();
533 - this.elementsHandler = new ElementsHandler(jQuery);
534 - this.modulesHandlers = {};
535 - this.addUserAgentClasses();
536 - this.setDeviceModeData();
537 - this.initDialogsManager();
538 - if (this.isEditMode()) {
539 - this.muteMigrationTraces();
1769 +
1770 + return swiperOptions;
540 1771 }
1772 + }, {
1773 + key: "buildSwiperElements",
1774 + value: function buildSwiperElements() {
1775 + var _this2 = this;
541 1776
542 - // Keep this line before `initOnReadyComponents` call
543 - _events.default.dispatch(this.elements.$window, 'elementor/frontend/init');
544 - this.initModules();
545 - this.initOnReadyElements();
546 - this.initOnReadyComponents();
547 - }
548 - onDocumentLoaded() {
549 - this.documentsManager = new _documentsManager.default();
550 - this.trigger('components:init');
551 - new _lightboxManager.default();
552 - }
553 -}
554 -exports["default"] = Frontend;
555 -window.elementorFrontend = new Frontend();
556 -if (!elementorFrontend.isEditMode()) {
557 - jQuery(() => elementorFrontend.init());
558 -}
1777 + var classes = this.getSettings('classes'),
1778 + elementSettings = this.getElementSettings(),
1779 + direction = 'slide_left' === elementSettings.background_slideshow_slide_transition ? 'ltr' : 'rtl',
1780 + $container = jQuery('<div>', {
1781 + class: classes.swiperContainer,
1782 + dir: direction
1783 + }),
1784 + $wrapper = jQuery('<div>', {
1785 + class: classes.swiperWrapper
1786 + }),
1787 + kenBurnsActive = elementSettings.background_slideshow_ken_burns;
1788 + var slideInnerClass = classes.slideBackground;
559 1789
1790 + if (kenBurnsActive) {
1791 + slideInnerClass += ' ' + classes.kenBurns;
1792 + var kenBurnsDirection = 'in' === elementSettings.background_slideshow_ken_burns_zoom_direction ? 'kenBurnsIn' : 'kenBurnsOut';
1793 + slideInnerClass += ' ' + classes[kenBurnsDirection];
1794 + }
1795 +
1796 + this.elements.$slides = jQuery();
1797 + elementSettings.background_slideshow_gallery.forEach(function (slide) {
1798 + var $slide = jQuery('<div>', {
1799 + class: classes.swiperSlide
1800 + }),
1801 + $slidebg = jQuery('<div>', {
1802 + class: slideInnerClass,
1803 + style: 'background-image: url("' + slide.url + '");'
1804 + });
1805 + $slide.append($slidebg);
1806 + $wrapper.append($slide);
1807 + _this2.elements.$slides = _this2.elements.$slides.add($slide);
1808 + });
1809 + $container.append($wrapper);
1810 + this.$element.prepend($container);
1811 + this.elements.$backgroundSlideShowContainer = $container;
1812 + }
1813 + }, {
1814 + key: "initSlider",
1815 + value: function () {
1816 + var _initSlider = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
1817 + var elementSettings, Swiper;
1818 + return _regenerator.default.wrap(function _callee$(_context) {
1819 + while (1) {
1820 + switch (_context.prev = _context.next) {
1821 + case 0:
1822 + if (!(1 >= this.getSlidesCount())) {
1823 + _context.next = 2;
1824 + break;
1825 + }
1826 +
1827 + return _context.abrupt("return");
1828 +
1829 + case 2:
1830 + elementSettings = this.getElementSettings();
1831 + Swiper = elementorFrontend.utils.swiper;
1832 + _context.next = 6;
1833 + return new Swiper(this.elements.$backgroundSlideShowContainer, this.getSwiperOptions());
1834 +
1835 + case 6:
1836 + this.swiper = _context.sent;
1837 + // Expose the swiper instance in the frontend
1838 + this.elements.$backgroundSlideShowContainer.data('swiper', this.swiper);
1839 +
1840 + if (elementSettings.background_slideshow_ken_burns) {
1841 + this.handleKenBurns();
1842 + }
1843 +
1844 + case 9:
1845 + case "end":
1846 + return _context.stop();
1847 + }
1848 + }
1849 + }, _callee, this);
1850 + }));
1851 +
1852 + function initSlider() {
1853 + return _initSlider.apply(this, arguments);
1854 + }
1855 +
1856 + return initSlider;
1857 + }()
1858 + }, {
1859 + key: "activate",
1860 + value: function activate() {
1861 + this.buildSwiperElements();
1862 + this.initSlider();
1863 + }
1864 + }, {
1865 + key: "deactivate",
1866 + value: function deactivate() {
1867 + if (this.swiper) {
1868 + this.swiper.destroy();
1869 + this.elements.$backgroundSlideShowContainer.remove();
1870 + }
1871 + }
1872 + }, {
1873 + key: "run",
1874 + value: function run() {
1875 + if ('slideshow' === this.getElementSettings('background_background')) {
1876 + this.activate();
1877 + } else {
1878 + this.deactivate();
1879 + }
1880 + }
1881 + }, {
1882 + key: "onInit",
1883 + value: function onInit() {
1884 + (0, _get2.default)((0, _getPrototypeOf2.default)(BackgroundSlideshow.prototype), "onInit", this).call(this);
1885 +
1886 + if (this.getElementSettings('background_slideshow_gallery')) {
1887 + this.run();
1888 + }
1889 + }
1890 + }, {
1891 + key: "onDestroy",
1892 + value: function onDestroy() {
1893 + (0, _get2.default)((0, _getPrototypeOf2.default)(BackgroundSlideshow.prototype), "onDestroy", this).call(this);
1894 + this.deactivate();
1895 + }
1896 + }, {
1897 + key: "onElementChange",
1898 + value: function onElementChange(propertyName) {
1899 + if ('background_background' === propertyName) {
1900 + this.run();
1901 + }
1902 + }
1903 + }]);
1904 + return BackgroundSlideshow;
1905 +}(elementorModules.frontend.handlers.SwiperBase);
1906 +
1907 +exports.default = BackgroundSlideshow;
1908 +
560 1909 /***/ }),
561 1910
562 1911 /***/ "../assets/dev/js/frontend/handlers/column.js":
563 1912 /*!****************************************************!*\
@@ -562,125 +1911,623 @@
562 1911 /***/ "../assets/dev/js/frontend/handlers/column.js":
563 1912 /*!****************************************************!*\
564 1913 !*** ../assets/dev/js/frontend/handlers/column.js ***!
565 1914 \****************************************************/
1915 +/*! unknown exports (runtime-defined) */
1916 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
1917 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
566 1918 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
567 1919
1920 +"use strict";
568 1921
569 1922
570 -Object.defineProperty(exports, "__esModule", ({
1923 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
1924 +
1925 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
1926 +
1927 +_Object$defineProperty(exports, "__esModule", {
571 1928 value: true
572 -}));
573 -exports["default"] = void 0;
574 -var _default = exports["default"] = [() => __webpack_require__.e(/*! import() | shared-frontend-handlers */ "shared-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ./background-slideshow */ "../assets/dev/js/frontend/handlers/background-slideshow.js"))];
1929 +});
575 1930
1931 +exports.default = void 0;
1932 +
1933 +var _backgroundSlideshow = _interopRequireDefault(__webpack_require__(/*! ./background-slideshow */ "../assets/dev/js/frontend/handlers/background-slideshow.js"));
1934 +
1935 +var _default = [_backgroundSlideshow.default];
1936 +exports.default = _default;
1937 +
576 1938 /***/ }),
577 1939
578 -/***/ "../assets/dev/js/frontend/handlers/container/container.js":
579 -/*!*****************************************************************!*\
580 - !*** ../assets/dev/js/frontend/handlers/container/container.js ***!
581 - \*****************************************************************/
1940 +/***/ "../assets/dev/js/frontend/handlers/global.js":
1941 +/*!****************************************************!*\
1942 + !*** ../assets/dev/js/frontend/handlers/global.js ***!
1943 + \****************************************************/
1944 +/*! unknown exports (runtime-defined) */
1945 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
1946 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
582 1947 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
583 1948
1949 +"use strict";
584 1950
585 1951
586 -Object.defineProperty(exports, "__esModule", ({
1952 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
1953 +
1954 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
1955 +
1956 +_Object$defineProperty(exports, "__esModule", {
587 1957 value: true
588 -}));
589 -exports["default"] = void 0;
590 -var _createEditorHandler = __webpack_require__(/*! ../create-editor-handler */ "../assets/dev/js/frontend/handlers/create-editor-handler.js");
591 -var _default = exports["default"] = [() => __webpack_require__.e(/*! import() | shared-frontend-handlers */ "shared-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../background-slideshow */ "../assets/dev/js/frontend/handlers/background-slideshow.js")), () => __webpack_require__.e(/*! import() | shared-frontend-handlers */ "shared-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../background-video */ "../assets/dev/js/frontend/handlers/background-video.js")), (0, _createEditorHandler.createEditorHandler)(() => __webpack_require__.e(/*! import() | shared-editor-handlers */ "shared-editor-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../handles-position */ "../assets/dev/js/frontend/handlers/handles-position.js"))), (0, _createEditorHandler.createEditorHandler)(() => __webpack_require__.e(/*! import() | container-editor-handlers */ "container-editor-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ./shapes */ "../assets/dev/js/frontend/handlers/container/shapes.js"))), (0, _createEditorHandler.createEditorHandler)(() => __webpack_require__.e(/*! import() | container-editor-handlers */ "container-editor-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ./grid-container */ "../assets/dev/js/frontend/handlers/container/grid-container.js")))];
1958 +});
592 1959
593 -/***/ }),
1960 +exports.default = void 0;
594 1961
595 -/***/ "../assets/dev/js/frontend/handlers/create-editor-handler.js":
596 -/*!*******************************************************************!*\
597 - !*** ../assets/dev/js/frontend/handlers/create-editor-handler.js ***!
598 - \*******************************************************************/
599 -/***/ ((__unused_webpack_module, exports) => {
1962 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
600 1963
1964 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
601 1965
1966 +var _get3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
602 1967
603 -Object.defineProperty(exports, "__esModule", ({
604 - value: true
605 -}));
606 -exports.createEditorHandler = createEditorHandler;
607 -function createEditorHandler(importer) {
608 - return () => {
609 - return new Promise(resolve => {
610 - if (elementorFrontend.isEditMode()) {
611 - importer().then(resolve);
1968 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
1969 +
1970 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
1971 +
1972 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
1973 +
1974 +var GlobalHandler = /*#__PURE__*/function (_elementorModules$fro) {
1975 + (0, _inherits2.default)(GlobalHandler, _elementorModules$fro);
1976 +
1977 + var _super = (0, _createSuper2.default)(GlobalHandler);
1978 +
1979 + function GlobalHandler() {
1980 + (0, _classCallCheck2.default)(this, GlobalHandler);
1981 + return _super.apply(this, arguments);
1982 + }
1983 +
1984 + (0, _createClass2.default)(GlobalHandler, [{
1985 + key: "getWidgetType",
1986 + value: function getWidgetType() {
1987 + return 'global';
1988 + }
1989 + }, {
1990 + key: "animate",
1991 + value: function animate() {
1992 + var $element = this.$element,
1993 + animation = this.getAnimation();
1994 +
1995 + if ('none' === animation) {
1996 + $element.removeClass('elementor-invisible');
1997 + return;
612 1998 }
613 - });
614 - };
615 -}
616 1999
2000 + var elementSettings = this.getElementSettings(),
2001 + animationDelay = elementSettings._animation_delay || elementSettings.animation_delay || 0;
2002 + $element.removeClass(animation);
2003 +
2004 + if (this.currentAnimation) {
2005 + $element.removeClass(this.currentAnimation);
2006 + }
2007 +
2008 + this.currentAnimation = animation;
2009 + setTimeout(function () {
2010 + $element.removeClass('elementor-invisible').addClass('animated ' + animation);
2011 + }, animationDelay);
2012 + }
2013 + }, {
2014 + key: "getAnimation",
2015 + value: function getAnimation() {
2016 + return this.getCurrentDeviceSetting('animation') || this.getCurrentDeviceSetting('_animation');
2017 + }
2018 + }, {
2019 + key: "onInit",
2020 + value: function onInit() {
2021 + var _get2,
2022 + _this = this;
2023 +
2024 + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2025 + args[_key] = arguments[_key];
2026 + }
2027 +
2028 + (_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(GlobalHandler.prototype), "onInit", this)).call.apply(_get2, [this].concat(args));
2029 +
2030 + if (this.getAnimation()) {
2031 + elementorFrontend.waypoint(this.$element, function () {
2032 + return _this.animate();
2033 + });
2034 + }
2035 + }
2036 + }, {
2037 + key: "onElementChange",
2038 + value: function onElementChange(propertyName) {
2039 + if (/^_?animation/.test(propertyName)) {
2040 + this.animate();
2041 + }
2042 + }
2043 + }]);
2044 + return GlobalHandler;
2045 +}(elementorModules.frontend.handlers.Base);
2046 +
2047 +var _default = function _default($scope) {
2048 + elementorFrontend.elementsHandler.addHandler(GlobalHandler, {
2049 + $element: $scope
2050 + });
2051 +};
2052 +
2053 +exports.default = _default;
2054 +
617 2055 /***/ }),
618 2056
619 -/***/ "../assets/dev/js/frontend/handlers/global.js":
620 -/*!****************************************************!*\
621 - !*** ../assets/dev/js/frontend/handlers/global.js ***!
622 - \****************************************************/
623 -/***/ ((__unused_webpack_module, exports) => {
2057 +/***/ "../assets/dev/js/frontend/handlers/section/background-video.js":
2058 +/*!**********************************************************************!*\
2059 + !*** ../assets/dev/js/frontend/handlers/section/background-video.js ***!
2060 + \**********************************************************************/
2061 +/*! unknown exports (runtime-defined) */
2062 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
2063 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
2064 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
624 2065
2066 +"use strict";
625 2067
626 2068
627 -Object.defineProperty(exports, "__esModule", ({
2069 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
2070 +
2071 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
2072 +
2073 +_Object$defineProperty(exports, "__esModule", {
628 2074 value: true
629 -}));
630 -exports["default"] = void 0;
631 -class GlobalHandler extends elementorModules.frontend.handlers.Base {
632 - getWidgetType() {
633 - return 'global';
2075 +});
2076 +
2077 +exports.default = void 0;
2078 +
2079 +__webpack_require__(/*! core-js/modules/es6.regexp.match */ "../node_modules/core-js/modules/es6.regexp.match.js");
2080 +
2081 +__webpack_require__(/*! core-js/modules/es6.regexp.split */ "../node_modules/core-js/modules/es6.regexp.split.js");
2082 +
2083 +__webpack_require__(/*! core-js/modules/es6.array.find */ "../node_modules/core-js/modules/es6.array.find.js");
2084 +
2085 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
2086 +
2087 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
2088 +
2089 +var _get3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
2090 +
2091 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
2092 +
2093 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
2094 +
2095 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
2096 +
2097 +var BackgroundVideo = /*#__PURE__*/function (_elementorModules$fro) {
2098 + (0, _inherits2.default)(BackgroundVideo, _elementorModules$fro);
2099 +
2100 + var _super = (0, _createSuper2.default)(BackgroundVideo);
2101 +
2102 + function BackgroundVideo() {
2103 + (0, _classCallCheck2.default)(this, BackgroundVideo);
2104 + return _super.apply(this, arguments);
634 2105 }
635 - animate() {
636 - const $element = this.$element,
637 - animation = this.getAnimation();
638 - if ('none' === animation) {
639 - $element.removeClass('elementor-invisible');
640 - return;
2106 +
2107 + (0, _createClass2.default)(BackgroundVideo, [{
2108 + key: "getDefaultSettings",
2109 + value: function getDefaultSettings() {
2110 + return {
2111 + selectors: {
2112 + backgroundVideoContainer: '.elementor-background-video-container',
2113 + backgroundVideoEmbed: '.elementor-background-video-embed',
2114 + backgroundVideoHosted: '.elementor-background-video-hosted'
2115 + }
2116 + };
641 2117 }
642 - const elementSettings = this.getElementSettings(),
643 - animationDelay = elementSettings._animation_delay || elementSettings.animation_delay || 0;
644 - $element.removeClass(animation);
645 - if (this.currentAnimation) {
646 - $element.removeClass(this.currentAnimation);
2118 + }, {
2119 + key: "getDefaultElements",
2120 + value: function getDefaultElements() {
2121 + var selectors = this.getSettings('selectors'),
2122 + elements = {
2123 + $backgroundVideoContainer: this.$element.find(selectors.backgroundVideoContainer)
2124 + };
2125 + elements.$backgroundVideoEmbed = elements.$backgroundVideoContainer.children(selectors.backgroundVideoEmbed);
2126 + elements.$backgroundVideoHosted = elements.$backgroundVideoContainer.children(selectors.backgroundVideoHosted);
2127 + return elements;
647 2128 }
648 - this.currentAnimation = animation;
649 - setTimeout(() => {
650 - $element.removeClass('elementor-invisible').addClass('animated ' + animation);
651 - }, animationDelay);
652 - }
653 - getAnimation() {
654 - return this.getCurrentDeviceSetting('animation') || this.getCurrentDeviceSetting('_animation');
655 - }
656 - onInit(...args) {
657 - super.onInit(...args);
658 - if (this.getAnimation()) {
659 - const observer = elementorModules.utils.Scroll.scrollObserver({
660 - callback: event => {
661 - if (event.isInViewport) {
662 - this.animate();
663 - observer.unobserve(this.$element[0]);
2129 + }, {
2130 + key: "calcVideosSize",
2131 + value: function calcVideosSize($video) {
2132 + var aspectRatioSetting = '16:9';
2133 +
2134 + if ('vimeo' === this.videoType) {
2135 + aspectRatioSetting = $video[0].width + ':' + $video[0].height;
2136 + }
2137 +
2138 + var containerWidth = this.elements.$backgroundVideoContainer.outerWidth(),
2139 + containerHeight = this.elements.$backgroundVideoContainer.outerHeight(),
2140 + aspectRatioArray = aspectRatioSetting.split(':'),
2141 + aspectRatio = aspectRatioArray[0] / aspectRatioArray[1],
2142 + ratioWidth = containerWidth / aspectRatio,
2143 + ratioHeight = containerHeight * aspectRatio,
2144 + isWidthFixed = containerWidth / containerHeight > aspectRatio;
2145 + return {
2146 + width: isWidthFixed ? containerWidth : ratioHeight,
2147 + height: isWidthFixed ? ratioWidth : containerHeight
2148 + };
2149 + }
2150 + }, {
2151 + key: "changeVideoSize",
2152 + value: function changeVideoSize() {
2153 + if (!('hosted' === this.videoType) && !this.player) {
2154 + return;
2155 + }
2156 +
2157 + var $video;
2158 +
2159 + if ('youtube' === this.videoType) {
2160 + $video = jQuery(this.player.getIframe());
2161 + } else if ('vimeo' === this.videoType) {
2162 + $video = jQuery(this.player.element);
2163 + } else if ('hosted' === this.videoType) {
2164 + $video = this.elements.$backgroundVideoHosted;
2165 + }
2166 +
2167 + if (!$video) {
2168 + return;
2169 + }
2170 +
2171 + var size = this.calcVideosSize($video);
2172 + $video.width(size.width).height(size.height);
2173 + }
2174 + }, {
2175 + key: "startVideoLoop",
2176 + value: function startVideoLoop(firstTime) {
2177 + var _this = this;
2178 +
2179 + // If the section has been removed
2180 + if (!this.player.getIframe().contentWindow) {
2181 + return;
2182 + }
2183 +
2184 + var elementSettings = this.getElementSettings(),
2185 + startPoint = elementSettings.background_video_start || 0,
2186 + endPoint = elementSettings.background_video_end;
2187 +
2188 + if (elementSettings.background_play_once && !firstTime) {
2189 + this.player.stopVideo();
2190 + return;
2191 + }
2192 +
2193 + this.player.seekTo(startPoint);
2194 +
2195 + if (endPoint) {
2196 + var durationToEnd = endPoint - startPoint + 1;
2197 + setTimeout(function () {
2198 + _this.startVideoLoop(false);
2199 + }, durationToEnd * 1000);
2200 + }
2201 + }
2202 + }, {
2203 + key: "prepareVimeoVideo",
2204 + value: function prepareVimeoVideo(Vimeo, videoId) {
2205 + var _this2 = this;
2206 +
2207 + var elementSettings = this.getElementSettings(),
2208 + startTime = elementSettings.background_video_start ? elementSettings.background_video_start : 0,
2209 + videoSize = this.elements.$backgroundVideoContainer.outerWidth(),
2210 + vimeoOptions = {
2211 + id: videoId,
2212 + width: videoSize.width,
2213 + autoplay: true,
2214 + loop: !elementSettings.background_play_once,
2215 + transparent: false,
2216 + background: true,
2217 + muted: true
2218 + };
2219 + this.player = new Vimeo.Player(this.elements.$backgroundVideoContainer, vimeoOptions); // Handle user-defined start/end times
2220 +
2221 + this.handleVimeoStartEndTimes(elementSettings);
2222 + this.player.ready().then(function () {
2223 + jQuery(_this2.player.element).addClass('elementor-background-video-embed');
2224 +
2225 + _this2.changeVideoSize();
2226 + });
2227 + }
2228 + }, {
2229 + key: "handleVimeoStartEndTimes",
2230 + value: function handleVimeoStartEndTimes(elementSettings) {
2231 + var _this3 = this;
2232 +
2233 + // If a start time is defined, set the start time
2234 + if (elementSettings.background_video_start) {
2235 + this.player.on('play', function (data) {
2236 + if (0 === data.seconds) {
2237 + _this3.player.setCurrentTime(elementSettings.background_video_start);
664 2238 }
2239 + });
2240 + }
2241 +
2242 + this.player.on('timeupdate', function (data) {
2243 + // If an end time is defined, handle ending the video
2244 + if (elementSettings.background_video_end && elementSettings.background_video_end < data.seconds) {
2245 + if (elementSettings.background_play_once) {
2246 + // Stop at user-defined end time if not loop
2247 + _this3.player.pause();
2248 + } else {
2249 + // Go to start time if loop
2250 + _this3.player.setCurrentTime(elementSettings.background_video_start);
2251 + }
2252 + } // If start time is defined but an end time is not, go to user-defined start time at video end.
2253 + // Vimeo JS API has an 'ended' event, but it never fires when infinite loop is defined, so we
2254 + // get the video duration (returns a promise) then use duration-0.5s as end time
2255 +
2256 +
2257 + _this3.player.getDuration().then(function (duration) {
2258 + if (elementSettings.background_video_start && !elementSettings.background_video_end && data.seconds > duration - 0.5) {
2259 + _this3.player.setCurrentTime(elementSettings.background_video_start);
2260 + }
2261 + });
2262 + });
2263 + }
2264 + }, {
2265 + key: "prepareYTVideo",
2266 + value: function prepareYTVideo(YT, videoID) {
2267 + var _this4 = this;
2268 +
2269 + var $backgroundVideoContainer = this.elements.$backgroundVideoContainer,
2270 + elementSettings = this.getElementSettings();
2271 + var startStateCode = YT.PlayerState.PLAYING; // Since version 67, Chrome doesn't fire the `PLAYING` state at start time
2272 +
2273 + if (window.chrome) {
2274 + startStateCode = YT.PlayerState.UNSTARTED;
2275 + }
2276 +
2277 + $backgroundVideoContainer.addClass('elementor-loading elementor-invisible');
2278 + this.player = new YT.Player(this.elements.$backgroundVideoEmbed[0], {
2279 + videoId: videoID,
2280 + events: {
2281 + onReady: function onReady() {
2282 + _this4.player.mute();
2283 +
2284 + _this4.changeVideoSize();
2285 +
2286 + _this4.startVideoLoop(true);
2287 +
2288 + _this4.player.playVideo();
2289 + },
2290 + onStateChange: function onStateChange(event) {
2291 + switch (event.data) {
2292 + case startStateCode:
2293 + $backgroundVideoContainer.removeClass('elementor-invisible elementor-loading');
2294 + break;
2295 +
2296 + case YT.PlayerState.ENDED:
2297 + _this4.player.seekTo(elementSettings.background_video_start || 0);
2298 +
2299 + if (elementSettings.background_play_once) {
2300 + _this4.player.destroy();
2301 + }
2302 +
2303 + }
2304 + }
2305 + },
2306 + playerVars: {
2307 + controls: 0,
2308 + rel: 0,
2309 + playsinline: 1
665 2310 }
666 2311 });
667 - observer.observe(this.$element[0]);
668 2312 }
2313 + }, {
2314 + key: "activate",
2315 + value: function activate() {
2316 + var _this5 = this;
2317 +
2318 + var videoLink = this.getElementSettings('background_video_link'),
2319 + videoID;
2320 + var playOnce = this.getElementSettings('background_play_once');
2321 +
2322 + if (-1 !== videoLink.indexOf('vimeo.com')) {
2323 + this.videoType = 'vimeo';
2324 + this.apiProvider = elementorFrontend.utils.vimeo;
2325 + } else if (videoLink.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)) {
2326 + this.videoType = 'youtube';
2327 + this.apiProvider = elementorFrontend.utils.youtube;
2328 + }
2329 +
2330 + if (this.apiProvider) {
2331 + videoID = this.apiProvider.getVideoIDFromURL(videoLink);
2332 + this.apiProvider.onApiReady(function (apiObject) {
2333 + if ('youtube' === _this5.videoType) {
2334 + _this5.prepareYTVideo(apiObject, videoID);
2335 + }
2336 +
2337 + if ('vimeo' === _this5.videoType) {
2338 + _this5.prepareVimeoVideo(apiObject, videoID);
2339 + }
2340 + });
2341 + } else {
2342 + this.videoType = 'hosted';
2343 + var startTime = this.getElementSettings('background_video_start'),
2344 + endTime = this.getElementSettings('background_video_end');
2345 +
2346 + if (startTime || endTime) {
2347 + videoLink += '#t=' + (startTime || 0) + (endTime ? ',' + endTime : '');
2348 + }
2349 +
2350 + this.elements.$backgroundVideoHosted.attr('src', videoLink).one('canplay', this.changeVideoSize.bind(this));
2351 +
2352 + if (playOnce) {
2353 + this.elements.$backgroundVideoHosted.on('ended', function () {
2354 + _this5.elements.$backgroundVideoHosted.hide();
2355 + });
2356 + }
2357 + }
2358 +
2359 + elementorFrontend.elements.$window.on('resize', this.changeVideoSize);
2360 + }
2361 + }, {
2362 + key: "deactivate",
2363 + value: function deactivate() {
2364 + if ('youtube' === this.videoType && this.player.getIframe() || 'vimeo' === this.videoType) {
2365 + this.player.destroy();
2366 + } else {
2367 + this.elements.$backgroundVideoHosted.removeAttr('src').off('ended');
2368 + }
2369 +
2370 + elementorFrontend.elements.$window.off('resize', this.changeVideoSize);
2371 + }
2372 + }, {
2373 + key: "run",
2374 + value: function run() {
2375 + var elementSettings = this.getElementSettings();
2376 +
2377 + if (!elementSettings.background_play_on_mobile && 'mobile' === elementorFrontend.getCurrentDeviceMode()) {
2378 + return;
2379 + }
2380 +
2381 + if ('video' === elementSettings.background_background && elementSettings.background_video_link) {
2382 + this.activate();
2383 + } else {
2384 + this.deactivate();
2385 + }
2386 + }
2387 + }, {
2388 + key: "onInit",
2389 + value: function onInit() {
2390 + var _get2;
2391 +
2392 + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2393 + args[_key] = arguments[_key];
2394 + }
2395 +
2396 + (_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(BackgroundVideo.prototype), "onInit", this)).call.apply(_get2, [this].concat(args));
2397 +
2398 + this.changeVideoSize = this.changeVideoSize.bind(this);
2399 + this.run();
2400 + }
2401 + }, {
2402 + key: "onElementChange",
2403 + value: function onElementChange(propertyName) {
2404 + if ('background_background' === propertyName) {
2405 + this.run();
2406 + }
2407 + }
2408 + }]);
2409 + return BackgroundVideo;
2410 +}(elementorModules.frontend.handlers.Base);
2411 +
2412 +exports.default = BackgroundVideo;
2413 +
2414 +/***/ }),
2415 +
2416 +/***/ "../assets/dev/js/frontend/handlers/section/handles-position.js":
2417 +/*!**********************************************************************!*\
2418 + !*** ../assets/dev/js/frontend/handlers/section/handles-position.js ***!
2419 + \**********************************************************************/
2420 +/*! unknown exports (runtime-defined) */
2421 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
2422 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
2423 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2424 +
2425 +"use strict";
2426 +
2427 +
2428 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
2429 +
2430 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
2431 +
2432 +_Object$defineProperty(exports, "__esModule", {
2433 + value: true
2434 +});
2435 +
2436 +exports.default = void 0;
2437 +
2438 +__webpack_require__(/*! core-js/modules/es6.array.find */ "../node_modules/core-js/modules/es6.array.find.js");
2439 +
2440 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
2441 +
2442 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
2443 +
2444 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
2445 +
2446 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
2447 +
2448 +var HandlesPosition = /*#__PURE__*/function (_elementorModules$fro) {
2449 + (0, _inherits2.default)(HandlesPosition, _elementorModules$fro);
2450 +
2451 + var _super = (0, _createSuper2.default)(HandlesPosition);
2452 +
2453 + function HandlesPosition() {
2454 + (0, _classCallCheck2.default)(this, HandlesPosition);
2455 + return _super.apply(this, arguments);
669 2456 }
670 - onElementChange(propertyName) {
671 - if (/^_?animation/.test(propertyName)) {
672 - this.animate();
2457 +
2458 + (0, _createClass2.default)(HandlesPosition, [{
2459 + key: "isActive",
2460 + value: function isActive() {
2461 + return elementorFrontend.isEditMode();
673 2462 }
674 - }
675 -}
676 -var _default = $scope => {
677 - elementorFrontend.elementsHandler.addHandler(GlobalHandler, {
678 - $element: $scope
679 - });
680 -};
681 -exports["default"] = _default;
2463 + }, {
2464 + key: "isFirstSection",
2465 + value: function isFirstSection() {
2466 + return this.$element.is('.elementor-edit-mode .elementor-top-section:first');
2467 + }
2468 + }, {
2469 + key: "isOverflowHidden",
2470 + value: function isOverflowHidden() {
2471 + return 'hidden' === this.$element.css('overflow');
2472 + }
2473 + }, {
2474 + key: "getOffset",
2475 + value: function getOffset() {
2476 + if ('body' === elementor.config.document.container) {
2477 + return this.$element.offset().top;
2478 + }
682 2479
2480 + var $container = jQuery(elementor.config.document.container);
2481 + return this.$element.offset().top - $container.offset().top;
2482 + }
2483 + }, {
2484 + key: "setHandlesPosition",
2485 + value: function setHandlesPosition() {
2486 + var document = elementor.documents.getCurrent();
2487 +
2488 + if (!document || !document.container.isEditable()) {
2489 + return;
2490 + }
2491 +
2492 + var isOverflowHidden = this.isOverflowHidden();
2493 +
2494 + if (!isOverflowHidden && !this.isFirstSection()) {
2495 + return;
2496 + }
2497 +
2498 + var offset = isOverflowHidden ? 0 : this.getOffset(),
2499 + $handlesElement = this.$element.find('> .elementor-element-overlay > .elementor-editor-section-settings'),
2500 + insideHandleClass = 'elementor-section--handles-inside';
2501 +
2502 + if (offset < 25) {
2503 + this.$element.addClass(insideHandleClass);
2504 +
2505 + if (offset < -5) {
2506 + $handlesElement.css('top', -offset);
2507 + } else {
2508 + $handlesElement.css('top', '');
2509 + }
2510 + } else {
2511 + this.$element.removeClass(insideHandleClass);
2512 + }
2513 + }
2514 + }, {
2515 + key: "onInit",
2516 + value: function onInit() {
2517 + if (!this.isActive()) {
2518 + return;
2519 + }
2520 +
2521 + this.setHandlesPosition();
2522 + this.$element.on('mouseenter', this.setHandlesPosition.bind(this));
2523 + }
2524 + }]);
2525 + return HandlesPosition;
2526 +}(elementorModules.frontend.handlers.Base);
2527 +
2528 +exports.default = HandlesPosition;
2529 +
683 2530 /***/ }),
684 2531
685 2532 /***/ "../assets/dev/js/frontend/handlers/section/section.js":
686 2533 /*!*************************************************************!*\
@@ -685,443 +2532,1512 @@
685 2532 /***/ "../assets/dev/js/frontend/handlers/section/section.js":
686 2533 /*!*************************************************************!*\
687 2534 !*** ../assets/dev/js/frontend/handlers/section/section.js ***!
688 2535 \*************************************************************/
2536 +/*! unknown exports (runtime-defined) */
2537 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
2538 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
689 2539 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
690 2540
2541 +"use strict";
691 2542
692 2543
693 -Object.defineProperty(exports, "__esModule", ({
2544 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
2545 +
2546 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
2547 +
2548 +_Object$defineProperty(exports, "__esModule", {
694 2549 value: true
695 -}));
696 -exports["default"] = void 0;
697 -var _createEditorHandler = __webpack_require__(/*! ../create-editor-handler */ "../assets/dev/js/frontend/handlers/create-editor-handler.js");
698 -var _default = exports["default"] = [() => __webpack_require__.e(/*! import() | section-frontend-handlers */ "section-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ./stretched-section */ "../assets/dev/js/frontend/handlers/section/stretched-section.js")),
699 -// Must run before BackgroundSlideshow to init the slideshow only after the stretch.
700 -() => __webpack_require__.e(/*! import() | shared-frontend-handlers */ "shared-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../background-slideshow */ "../assets/dev/js/frontend/handlers/background-slideshow.js")), () => __webpack_require__.e(/*! import() | shared-frontend-handlers */ "shared-frontend-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../background-video */ "../assets/dev/js/frontend/handlers/background-video.js")), (0, _createEditorHandler.createEditorHandler)(() => __webpack_require__.e(/*! import() | shared-editor-handlers */ "shared-editor-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ../handles-position */ "../assets/dev/js/frontend/handlers/handles-position.js"))), (0, _createEditorHandler.createEditorHandler)(() => __webpack_require__.e(/*! import() | section-editor-handlers */ "section-editor-handlers").then(__webpack_require__.bind(__webpack_require__, /*! ./shapes */ "../assets/dev/js/frontend/handlers/section/shapes.js")))];
2550 +});
701 2551
2552 +exports.default = void 0;
2553 +
2554 +var _backgroundSlideshow = _interopRequireDefault(__webpack_require__(/*! ../background-slideshow */ "../assets/dev/js/frontend/handlers/background-slideshow.js"));
2555 +
2556 +var _backgroundVideo = _interopRequireDefault(__webpack_require__(/*! ./background-video */ "../assets/dev/js/frontend/handlers/section/background-video.js"));
2557 +
2558 +var _handlesPosition = _interopRequireDefault(__webpack_require__(/*! ./handles-position */ "../assets/dev/js/frontend/handlers/section/handles-position.js"));
2559 +
2560 +var _stretchedSection = _interopRequireDefault(__webpack_require__(/*! ./stretched-section */ "../assets/dev/js/frontend/handlers/section/stretched-section.js"));
2561 +
2562 +var _shapes = _interopRequireDefault(__webpack_require__(/*! ./shapes */ "../assets/dev/js/frontend/handlers/section/shapes.js"));
2563 +
2564 +var _default = [_backgroundSlideshow.default, _backgroundVideo.default, _handlesPosition.default, _stretchedSection.default, _shapes.default];
2565 +exports.default = _default;
2566 +
702 2567 /***/ }),
703 2568
704 -/***/ "../assets/dev/js/frontend/utils/anchor-scroll-margin.js":
705 -/*!***************************************************************!*\
706 - !*** ../assets/dev/js/frontend/utils/anchor-scroll-margin.js ***!
707 - \***************************************************************/
2569 +/***/ "../assets/dev/js/frontend/handlers/section/shapes.js":
2570 +/*!************************************************************!*\
2571 + !*** ../assets/dev/js/frontend/handlers/section/shapes.js ***!
2572 + \************************************************************/
2573 +/*! unknown exports (runtime-defined) */
2574 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
2575 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
708 2576 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
709 2577
2578 +"use strict";
710 2579
711 2580
712 -Object.defineProperty(exports, "__esModule", ({
2581 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
2582 +
2583 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
2584 +
2585 +_Object$defineProperty(exports, "__esModule", {
713 2586 value: true
714 -}));
715 -exports["default"] = void 0;
716 -__webpack_require__(/*! core-js/modules/es.array.push.js */ "../node_modules/core-js/modules/es.array.push.js");
717 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
718 -__webpack_require__(/*! core-js/modules/esnext.iterator.filter.js */ "../node_modules/core-js/modules/esnext.iterator.filter.js");
719 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
720 -class _default extends elementorModules.ViewModule {
721 - getDefaultSettings() {
722 - return {
723 - selectors: {
724 - links: '.elementor-element a[href*="#"]',
725 - stickyElements: '.elementor-element.elementor-sticky'
2587 +});
2588 +
2589 +exports.default = void 0;
2590 +
2591 +__webpack_require__(/*! core-js/modules/es6.regexp.match */ "../node_modules/core-js/modules/es6.regexp.match.js");
2592 +
2593 +__webpack_require__(/*! core-js/modules/es6.regexp.replace */ "../node_modules/core-js/modules/es6.regexp.replace.js");
2594 +
2595 +__webpack_require__(/*! core-js/modules/es6.array.find */ "../node_modules/core-js/modules/es6.array.find.js");
2596 +
2597 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
2598 +
2599 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
2600 +
2601 +var _get3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
2602 +
2603 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
2604 +
2605 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
2606 +
2607 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
2608 +
2609 +var Shapes = /*#__PURE__*/function (_elementorModules$fro) {
2610 + (0, _inherits2.default)(Shapes, _elementorModules$fro);
2611 +
2612 + var _super = (0, _createSuper2.default)(Shapes);
2613 +
2614 + function Shapes() {
2615 + (0, _classCallCheck2.default)(this, Shapes);
2616 + return _super.apply(this, arguments);
2617 + }
2618 +
2619 + (0, _createClass2.default)(Shapes, [{
2620 + key: "getDefaultSettings",
2621 + value: function getDefaultSettings() {
2622 + return {
2623 + selectors: {
2624 + container: '> .elementor-shape-%s'
2625 + },
2626 + svgURL: elementorFrontend.config.urls.assets + 'shapes/'
2627 + };
2628 + }
2629 + }, {
2630 + key: "getDefaultElements",
2631 + value: function getDefaultElements() {
2632 + var elements = {},
2633 + selectors = this.getSettings('selectors');
2634 + elements.$topContainer = this.$element.find(selectors.container.replace('%s', 'top'));
2635 + elements.$bottomContainer = this.$element.find(selectors.container.replace('%s', 'bottom'));
2636 + return elements;
2637 + }
2638 + }, {
2639 + key: "isActive",
2640 + value: function isActive() {
2641 + return elementorFrontend.isEditMode();
2642 + }
2643 + }, {
2644 + key: "getSvgURL",
2645 + value: function getSvgURL(shapeType, fileName) {
2646 + var svgURL = this.getSettings('svgURL') + fileName + '.svg';
2647 +
2648 + if (elementor.config.additional_shapes && shapeType in elementor.config.additional_shapes) {
2649 + svgURL = elementor.config.additional_shapes[shapeType];
2650 +
2651 + if (-1 < fileName.indexOf('-negative')) {
2652 + svgURL = svgURL.replace('.svg', '-negative.svg');
2653 + }
726 2654 }
727 - };
728 - }
729 - onInit() {
730 - this.observeStickyElements(() => {
731 - this.initializeStickyAndAnchorTracking();
732 - });
733 - }
734 - observeStickyElements(callback) {
735 - const observer = new MutationObserver(mutationsList => {
736 - for (const mutation of mutationsList) {
737 - if ('childList' === mutation.type || 'attributes' === mutation.type && mutation.target.classList.contains('elementor-sticky')) {
738 - callback();
2655 +
2656 + return svgURL;
2657 + }
2658 + }, {
2659 + key: "buildSVG",
2660 + value: function buildSVG(side) {
2661 + var baseSettingKey = 'shape_divider_' + side,
2662 + shapeType = this.getElementSettings(baseSettingKey),
2663 + $svgContainer = this.elements['$' + side + 'Container'];
2664 + $svgContainer.attr('data-shape', shapeType);
2665 +
2666 + if (!shapeType) {
2667 + $svgContainer.empty(); // Shape-divider set to 'none'
2668 +
2669 + return;
2670 + }
2671 +
2672 + var fileName = shapeType;
2673 +
2674 + if (this.getElementSettings(baseSettingKey + '_negative')) {
2675 + fileName += '-negative';
2676 + }
2677 +
2678 + var svgURL = this.getSvgURL(shapeType, fileName);
2679 + jQuery.get(svgURL, function (data) {
2680 + $svgContainer.empty().append(data.childNodes[0]);
2681 + });
2682 + this.setNegative(side);
2683 + }
2684 + }, {
2685 + key: "setNegative",
2686 + value: function setNegative(side) {
2687 + this.elements['$' + side + 'Container'].attr('data-negative', !!this.getElementSettings('shape_divider_' + side + '_negative'));
2688 + }
2689 + }, {
2690 + key: "onInit",
2691 + value: function onInit() {
2692 + var _get2,
2693 + _this = this;
2694 +
2695 + if (!this.isActive(this.getSettings())) {
2696 + return;
2697 + }
2698 +
2699 + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2700 + args[_key] = arguments[_key];
2701 + }
2702 +
2703 + (_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(Shapes.prototype), "onInit", this)).call.apply(_get2, [this].concat(args));
2704 +
2705 + ['top', 'bottom'].forEach(function (side) {
2706 + if (_this.getElementSettings('shape_divider_' + side)) {
2707 + _this.buildSVG(side);
739 2708 }
2709 + });
2710 + }
2711 + }, {
2712 + key: "onElementChange",
2713 + value: function onElementChange(propertyName) {
2714 + var shapeChange = propertyName.match(/^shape_divider_(top|bottom)$/);
2715 +
2716 + if (shapeChange) {
2717 + this.buildSVG(shapeChange[1]);
2718 + return;
740 2719 }
741 - });
742 - observer.observe(document.body, {
743 - childList: true,
744 - subtree: true,
745 - attributes: true,
746 - attributeFilter: ['class', 'style']
747 - });
2720 +
2721 + var negativeChange = propertyName.match(/^shape_divider_(top|bottom)_negative$/);
2722 +
2723 + if (negativeChange) {
2724 + this.buildSVG(negativeChange[1]);
2725 + this.setNegative(negativeChange[1]);
2726 + }
2727 + }
2728 + }]);
2729 + return Shapes;
2730 +}(elementorModules.frontend.handlers.Base);
2731 +
2732 +exports.default = Shapes;
2733 +
2734 +/***/ }),
2735 +
2736 +/***/ "../assets/dev/js/frontend/handlers/section/stretched-section.js":
2737 +/*!***********************************************************************!*\
2738 + !*** ../assets/dev/js/frontend/handlers/section/stretched-section.js ***!
2739 + \***********************************************************************/
2740 +/*! unknown exports (runtime-defined) */
2741 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
2742 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
2743 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2744 +
2745 +"use strict";
2746 +
2747 +
2748 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
2749 +
2750 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
2751 +
2752 +_Object$defineProperty(exports, "__esModule", {
2753 + value: true
2754 +});
2755 +
2756 +exports.default = void 0;
2757 +
2758 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
2759 +
2760 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
2761 +
2762 +var _get3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
2763 +
2764 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
2765 +
2766 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
2767 +
2768 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
2769 +
2770 +var StretchedSection = /*#__PURE__*/function (_elementorModules$fro) {
2771 + (0, _inherits2.default)(StretchedSection, _elementorModules$fro);
2772 +
2773 + var _super = (0, _createSuper2.default)(StretchedSection);
2774 +
2775 + function StretchedSection() {
2776 + (0, _classCallCheck2.default)(this, StretchedSection);
2777 + return _super.apply(this, arguments);
748 2778 }
749 - initializeStickyAndAnchorTracking() {
750 - const anchorLinks = this.getAllAnchorLinks();
751 - const stickyElements = this.getAllStickyElements();
752 - const trackedElements = [];
753 - if (!stickyElements.length > 0 && !anchorLinks.length > 0) {
754 - return;
2779 +
2780 + (0, _createClass2.default)(StretchedSection, [{
2781 + key: "bindEvents",
2782 + value: function bindEvents() {
2783 + var handlerID = this.getUniqueHandlerID();
2784 + elementorFrontend.addListenerOnce(handlerID, 'resize', this.stretch);
2785 + elementorFrontend.addListenerOnce(handlerID, 'sticky:stick', this.stretch, this.$element);
2786 + elementorFrontend.addListenerOnce(handlerID, 'sticky:unstick', this.stretch, this.$element);
2787 +
2788 + if (elementorFrontend.isEditMode()) {
2789 + this.onKitChangeStretchContainerChange = this.onKitChangeStretchContainerChange.bind(this);
2790 + elementor.channels.editor.on('kit:change:stretchContainer', this.onKitChangeStretchContainerChange);
2791 + }
755 2792 }
756 - this.trackStickyElements(stickyElements, trackedElements);
757 - this.trackAnchorLinks(anchorLinks, trackedElements);
758 - this.organizeStickyAndAnchors(trackedElements);
759 - }
760 - trackAnchorLinks(anchorLinks, trackedElements) {
761 - anchorLinks.forEach(element => {
762 - const target = this.getAnchorTarget(element);
763 - const scrollPosition = this.getScrollPosition(target);
764 - trackedElements.push({
765 - element: target,
766 - type: 'anchor',
767 - scrollPosition
2793 + }, {
2794 + key: "unbindEvents",
2795 + value: function unbindEvents() {
2796 + elementorFrontend.removeListeners(this.getUniqueHandlerID(), 'resize', this.stretch);
2797 +
2798 + if (elementorFrontend.isEditMode()) {
2799 + elementor.channels.editor.off('kit:change:stretchContainer', this.onKitChangeStretchContainerChange);
2800 + }
2801 + }
2802 + }, {
2803 + key: "isActive",
2804 + value: function isActive(settings) {
2805 + return elementorFrontend.isEditMode() || settings.$element.hasClass('elementor-section-stretched');
2806 + }
2807 + }, {
2808 + key: "initStretch",
2809 + value: function initStretch() {
2810 + this.stretch = this.stretch.bind(this);
2811 + this.stretchElement = new elementorModules.frontend.tools.StretchElement({
2812 + element: this.$element,
2813 + selectors: {
2814 + container: this.getStretchContainer()
2815 + }
768 2816 });
769 - });
770 - }
771 - trackStickyElements(stickyElements, trackedElements) {
772 - stickyElements.forEach(element => {
773 - const settings = this.getElementSettings(element);
774 - if (!settings || !settings.sticky_anchor_link_offset) {
2817 + }
2818 + }, {
2819 + key: "getStretchContainer",
2820 + value: function getStretchContainer() {
2821 + return elementorFrontend.getKitSettings('stretched_section_container') || window;
2822 + }
2823 + }, {
2824 + key: "stretch",
2825 + value: function stretch() {
2826 + if (!this.getElementSettings('stretch_section')) {
775 2827 return;
776 2828 }
777 - const {
778 - sticky_anchor_link_offset: scrollMarginTop
779 - } = settings;
780 - if (0 === scrollMarginTop) {
2829 +
2830 + this.stretchElement.stretch();
2831 + }
2832 + }, {
2833 + key: "onInit",
2834 + value: function onInit() {
2835 + var _get2;
2836 +
2837 + if (!this.isActive(this.getSettings())) {
781 2838 return;
782 2839 }
783 - const scrollPosition = this.getScrollPosition(element);
784 - trackedElements.push({
785 - scrollMarginTop,
786 - type: 'sticky',
787 - scrollPosition
788 - });
789 - });
790 - }
791 - organizeStickyAndAnchors(elements) {
792 - const stickyList = this.filterAndSortElementsByType(elements, 'sticky');
793 - const anchorList = this.filterAndSortElementsByType(elements, 'anchor');
794 - stickyList.forEach((sticky, index) => {
795 - this.defineCurrentStickyRange(sticky, index, stickyList, anchorList);
796 - });
797 - }
798 - defineCurrentStickyRange(sticky, index, stickyList, anchorList) {
799 - const nextStickyScrollPosition = index + 1 < stickyList.length ? stickyList[index + 1].scrollPosition : Infinity;
800 - sticky.anchor = anchorList.filter(anchor => {
801 - const withinRange = anchor.scrollPosition > sticky.scrollPosition && anchor.scrollPosition < nextStickyScrollPosition;
802 - if (withinRange) {
803 - anchor.element.style.scrollMarginTop = `${sticky.scrollMarginTop}px`;
2840 +
2841 + this.initStretch();
2842 +
2843 + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2844 + args[_key] = arguments[_key];
804 2845 }
805 - return withinRange;
806 - });
807 - }
808 - getScrollPosition(element) {
809 - let offsetTop = 0;
810 - while (element) {
811 - offsetTop += element.offsetTop;
812 - element = element.offsetParent;
2846 +
2847 + (_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(StretchedSection.prototype), "onInit", this)).call.apply(_get2, [this].concat(args));
2848 +
2849 + this.stretch();
813 2850 }
814 - return offsetTop;
815 - }
816 - getAllStickyElements() {
817 - const allStickyElements = document.querySelectorAll(this.getSettings('selectors.stickyElements'));
818 - return Array.from(allStickyElements).filter((anchor, index, self) => index === self.findIndex(t => t.getAttribute('data-id') === anchor.getAttribute('data-id')));
819 - }
820 - getAllAnchorLinks() {
821 - const allAnchors = document.querySelectorAll(this.getSettings('selectors.links'));
822 - return Array.from(allAnchors).filter((anchor, index, self) => index === self.findIndex(t => t.getAttribute('href') === anchor.getAttribute('href')));
823 - }
824 - filterAndSortElementsByType(elements, type) {
825 - return elements.filter(item => type === item.type).sort((a, b) => a.scrollPosition - b.scrollPosition);
826 - }
827 - isValidSelector(hash) {
828 - const validSelectorPattern = /^#[A-Za-z_][\w-]*$/;
829 - return validSelectorPattern.test(hash);
830 - }
831 - getAnchorTarget(element) {
832 - const hash = element?.hash;
833 - if (!this.isValidSelector(hash)) {
834 - return null;
2851 + }, {
2852 + key: "onElementChange",
2853 + value: function onElementChange(propertyName) {
2854 + if ('stretch_section' === propertyName) {
2855 + if (this.getElementSettings('stretch_section')) {
2856 + this.stretch();
2857 + } else {
2858 + this.stretchElement.reset();
2859 + }
2860 + }
835 2861 }
836 - return document.querySelector(hash);
2862 + }, {
2863 + key: "onKitChangeStretchContainerChange",
2864 + value: function onKitChangeStretchContainerChange() {
2865 + this.stretchElement.setSettings('selectors.container', this.getStretchContainer());
2866 + this.stretch();
2867 + }
2868 + }]);
2869 + return StretchedSection;
2870 +}(elementorModules.frontend.handlers.Base);
2871 +
2872 +exports.default = StretchedSection;
2873 +
2874 +/***/ }),
2875 +
2876 +/***/ "../assets/dev/js/frontend/utils/anchors.js":
2877 +/*!**************************************************!*\
2878 + !*** ../assets/dev/js/frontend/utils/anchors.js ***!
2879 + \**************************************************/
2880 +/*! unknown exports (runtime-defined) */
2881 +/*! runtime requirements: module */
2882 +/*! CommonJS bailout: module.exports is used directly at 3:0-14 */
2883 +/***/ ((module) => {
2884 +
2885 +"use strict";
2886 +
2887 +
2888 +module.exports = elementorModules.ViewModule.extend({
2889 + getDefaultSettings: function getDefaultSettings() {
2890 + return {
2891 + scrollDuration: 500,
2892 + selectors: {
2893 + links: 'a[href*="#"]',
2894 + targets: '.elementor-element, .elementor-menu-anchor',
2895 + scrollable: 'html, body'
2896 + }
2897 + };
2898 + },
2899 + getDefaultElements: function getDefaultElements() {
2900 + var $ = jQuery,
2901 + selectors = this.getSettings('selectors');
2902 + return {
2903 + $scrollable: $(selectors.scrollable)
2904 + };
2905 + },
2906 + bindEvents: function bindEvents() {
2907 + elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), this.handleAnchorLinks);
2908 + },
2909 + handleAnchorLinks: function handleAnchorLinks(event) {
2910 + var clickedLink = event.currentTarget,
2911 + isSamePathname = location.pathname === clickedLink.pathname,
2912 + isSameHostname = location.hostname === clickedLink.hostname,
2913 + $anchor;
2914 +
2915 + if (!isSameHostname || !isSamePathname || clickedLink.hash.length < 2) {
2916 + return;
2917 + }
2918 +
2919 + try {
2920 + $anchor = jQuery(clickedLink.hash).filter(this.getSettings('selectors.targets'));
2921 + } catch (e) {
2922 + return;
2923 + }
2924 +
2925 + if (!$anchor.length) {
2926 + return;
2927 + }
2928 +
2929 + var scrollTop = $anchor.offset().top,
2930 + $wpAdminBar = elementorFrontend.elements.$wpAdminBar,
2931 + $activeStickies = jQuery('.elementor-section.elementor-sticky--active:visible'),
2932 + maxStickyHeight = 0;
2933 +
2934 + if ($wpAdminBar.length > 0) {
2935 + scrollTop -= $wpAdminBar.height();
2936 + } // Offset height of tallest sticky
2937 +
2938 +
2939 + if ($activeStickies.length > 0) {
2940 + maxStickyHeight = Math.max.apply(null, $activeStickies.map(function () {
2941 + return jQuery(this).outerHeight();
2942 + }).get());
2943 + scrollTop -= maxStickyHeight;
2944 + }
2945 +
2946 + event.preventDefault();
2947 + scrollTop = elementorFrontend.hooks.applyFilters('frontend/handlers/menu_anchor/scroll_top_distance', scrollTop);
2948 + this.elements.$scrollable.animate({
2949 + scrollTop: scrollTop
2950 + }, this.getSettings('scrollDuration'), 'linear');
2951 + },
2952 + onInit: function onInit() {
2953 + elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
2954 + this.bindEvents();
837 2955 }
838 - getElementSettings(element) {
839 - return JSON.parse(element.getAttribute('data-settings'));
840 - }
841 -}
842 -exports["default"] = _default;
2956 +});
843 2957
844 2958 /***/ }),
845 2959
846 -/***/ "../assets/dev/js/frontend/utils/assets-loader.js":
847 -/*!********************************************************!*\
848 - !*** ../assets/dev/js/frontend/utils/assets-loader.js ***!
849 - \********************************************************/
850 -/***/ ((__unused_webpack_module, exports) => {
2960 +/***/ "../assets/dev/js/frontend/utils/lightbox/lightbox.js":
2961 +/*!************************************************************!*\
2962 + !*** ../assets/dev/js/frontend/utils/lightbox/lightbox.js ***!
2963 + \************************************************************/
2964 +/*! unknown exports (runtime-defined) */
2965 +/*! runtime requirements: module, __webpack_require__ */
2966 +/*! CommonJS bailout: module.exports is used directly at 19:0-14 */
2967 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
851 2968
2969 +"use strict";
852 2970
853 2971
854 -Object.defineProperty(exports, "__esModule", ({
855 - value: true
856 -}));
857 -exports["default"] = void 0;
858 -class AssetsLoader {
859 - getScriptElement(src) {
860 - const scriptElement = document.createElement('script');
861 - scriptElement.src = src;
862 - return scriptElement;
863 - }
864 - getStyleElement(src) {
865 - const styleElement = document.createElement('link');
866 - styleElement.rel = 'stylesheet';
867 - styleElement.href = src;
868 - return styleElement;
869 - }
870 - load(type, key) {
871 - const assetData = AssetsLoader.assets[type][key];
872 - if (!assetData.loader) {
873 - assetData.loader = this.isAssetLoaded(assetData, type) ? Promise.resolve(true) : this.loadAsset(assetData, type);
2972 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
2973 +
2974 +__webpack_require__(/*! core-js/modules/es6.regexp.match */ "../node_modules/core-js/modules/es6.regexp.match.js");
2975 +
2976 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
2977 +
2978 +__webpack_require__(/*! regenerator-runtime/runtime */ "../node_modules/regenerator-runtime/runtime.js");
2979 +
2980 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));
2981 +
2982 +__webpack_require__(/*! core-js/modules/es6.array.find */ "../node_modules/core-js/modules/es6.array.find.js");
2983 +
2984 +__webpack_require__(/*! core-js/modules/es6.regexp.replace */ "../node_modules/core-js/modules/es6.regexp.replace.js");
2985 +
2986 +var _screenfull = _interopRequireDefault(__webpack_require__(/*! ./screenfull */ "../assets/dev/js/frontend/utils/lightbox/screenfull.js"));
2987 +
2988 +module.exports = elementorModules.ViewModule.extend({
2989 + oldAspectRatio: null,
2990 + oldAnimation: null,
2991 + swiper: null,
2992 + player: null,
2993 + getDefaultSettings: function getDefaultSettings() {
2994 + return {
2995 + classes: {
2996 + aspectRatio: 'elementor-aspect-ratio-%s',
2997 + item: 'elementor-lightbox-item',
2998 + image: 'elementor-lightbox-image',
2999 + videoContainer: 'elementor-video-container',
3000 + videoWrapper: 'elementor-fit-aspect-ratio',
3001 + playButton: 'elementor-custom-embed-play',
3002 + playButtonIcon: 'fa',
3003 + playing: 'elementor-playing',
3004 + hidden: 'elementor-hidden',
3005 + invisible: 'elementor-invisible',
3006 + preventClose: 'elementor-lightbox-prevent-close',
3007 + slideshow: {
3008 + container: 'swiper-container',
3009 + slidesWrapper: 'swiper-wrapper',
3010 + prevButton: 'elementor-swiper-button elementor-swiper-button-prev',
3011 + nextButton: 'elementor-swiper-button elementor-swiper-button-next',
3012 + prevButtonIcon: 'eicon-chevron-left',
3013 + nextButtonIcon: 'eicon-chevron-right',
3014 + slide: 'swiper-slide',
3015 + header: 'elementor-slideshow__header',
3016 + footer: 'elementor-slideshow__footer',
3017 + title: 'elementor-slideshow__title',
3018 + description: 'elementor-slideshow__description',
3019 + counter: 'elementor-slideshow__counter',
3020 + iconExpand: 'eicon-frame-expand',
3021 + iconShrink: 'eicon-frame-minimize',
3022 + iconZoomIn: 'eicon-zoom-in-bold',
3023 + iconZoomOut: 'eicon-zoom-out-bold',
3024 + iconShare: 'eicon-share-arrow',
3025 + shareMenu: 'elementor-slideshow__share-menu',
3026 + shareLinks: 'elementor-slideshow__share-links',
3027 + hideUiVisibility: 'elementor-slideshow--ui-hidden',
3028 + shareMode: 'elementor-slideshow--share-mode',
3029 + fullscreenMode: 'elementor-slideshow--fullscreen-mode',
3030 + zoomMode: 'elementor-slideshow--zoom-mode'
3031 + }
3032 + },
3033 + selectors: {
3034 + image: '.elementor-lightbox-image',
3035 + links: 'a, [data-elementor-lightbox]',
3036 + slideshow: {
3037 + activeSlide: '.swiper-slide-active',
3038 + prevSlide: '.swiper-slide-prev',
3039 + nextSlide: '.swiper-slide-next'
3040 + }
3041 + },
3042 + modalOptions: {
3043 + id: 'elementor-lightbox',
3044 + entranceAnimation: 'zoomIn',
3045 + videoAspectRatio: 169,
3046 + position: {
3047 + enable: false
3048 + }
3049 + }
3050 + };
3051 + },
3052 + getModal: function getModal() {
3053 + if (!module.exports.modal) {
3054 + this.initModal();
874 3055 }
875 - return assetData.loader;
876 - }
877 - isAssetLoaded(assetData, assetType) {
878 - const filePath = 'script' === assetType ? `script[src="${assetData.src}"]` : `link[href="${assetData.src}"]`;
879 - return !!document.querySelectorAll(filePath)?.length;
880 - }
881 - loadAsset(assetData, assetType) {
882 - return new Promise(resolve => {
883 - const element = 'style' === assetType ? this.getStyleElement(assetData.src) : this.getScriptElement(assetData.src);
884 - element.onload = () => resolve(true);
885 - this.appendAsset(assetData, element);
3056 +
3057 + return module.exports.modal;
3058 + },
3059 + initModal: function initModal() {
3060 + var modal = module.exports.modal = elementorFrontend.getDialogsManager().createWidget('lightbox', {
3061 + className: 'elementor-lightbox',
3062 + closeButton: true,
3063 + closeButtonOptions: {
3064 + iconClass: 'eicon-close',
3065 + attributes: {
3066 + tabindex: 0,
3067 + role: 'button',
3068 + 'aria-label': wp.i18n.__('Close', 'elementor') + ' (Esc)'
3069 + }
3070 + },
3071 + selectors: {
3072 + preventClose: '.' + this.getSettings('classes.preventClose')
3073 + },
3074 + hide: {
3075 + onClick: true
3076 + }
886 3077 });
887 - }
888 - appendAsset(assetData, element) {
889 - const beforeElement = document.querySelector(assetData.before);
890 - if (!!beforeElement) {
891 - beforeElement.insertAdjacentElement('beforebegin', element);
892 - return;
3078 + modal.on('hide', function () {
3079 + modal.setMessage('');
3080 + });
3081 + },
3082 + showModal: function showModal(options) {
3083 + this.elements.$closeButton = this.getModal().getElements('closeButton');
3084 + this.$buttons = this.elements.$closeButton;
3085 + this.focusedButton = null;
3086 + var self = this,
3087 + defaultOptions = self.getDefaultSettings().modalOptions;
3088 + self.id = options.id;
3089 + self.setSettings('modalOptions', jQuery.extend(defaultOptions, options.modalOptions));
3090 + var modal = self.getModal();
3091 + modal.setID(self.getSettings('modalOptions.id'));
3092 +
3093 + modal.onShow = function () {
3094 + DialogsManager.getWidgetType('lightbox').prototype.onShow.apply(modal, arguments);
3095 + self.setEntranceAnimation();
3096 + };
3097 +
3098 + modal.onHide = function () {
3099 + DialogsManager.getWidgetType('lightbox').prototype.onHide.apply(modal, arguments);
3100 + modal.getElements('message').removeClass('animated');
3101 +
3102 + if (_screenfull.default.isFullscreen) {
3103 + self.deactivateFullscreen();
3104 + }
3105 +
3106 + self.unbindHotKeys();
3107 + };
3108 +
3109 + switch (options.type) {
3110 + case 'video':
3111 + self.setVideoContent(options);
3112 + break;
3113 +
3114 + case 'image':
3115 + var slides = [{
3116 + image: options.url,
3117 + index: 0,
3118 + title: options.title,
3119 + description: options.description
3120 + }];
3121 + options.slideshow = {
3122 + slides: slides,
3123 + swiper: {
3124 + loop: false,
3125 + pagination: false
3126 + }
3127 + };
3128 +
3129 + case 'slideshow':
3130 + self.setSlideshowContent(options.slideshow);
3131 + break;
3132 +
3133 + default:
3134 + self.setHTMLContent(options.html);
893 3135 }
894 - const parent = 'head' === assetData.parent ? assetData.parent : 'body';
895 - document[parent].appendChild(element);
896 - }
897 -}
898 -exports["default"] = AssetsLoader;
899 -const assetsUrl = elementorFrontendConfig.urls.assets;
900 -const fileSuffix = elementorFrontendConfig.environmentMode.isScriptDebug ? '' : '.min';
901 -const pluginVersion = elementorFrontendConfig.version;
902 -AssetsLoader.assets = {
903 - script: {
904 - dialog: {
905 - src: `${assetsUrl}lib/dialog/dialog${fileSuffix}.js?ver=4.9.3`
3136 +
3137 + modal.show();
3138 + },
3139 + setHTMLContent: function setHTMLContent(html) {
3140 + this.getModal().setMessage(html);
3141 + },
3142 + setVideoContent: function setVideoContent(options) {
3143 + var $ = jQuery,
3144 + classes = this.getSettings('classes'),
3145 + $videoContainer = $('<div>', {
3146 + class: "".concat(classes.videoContainer, " ").concat(classes.preventClose)
3147 + }),
3148 + $videoWrapper = $('<div>', {
3149 + class: classes.videoWrapper
3150 + }),
3151 + modal = this.getModal();
3152 + var $videoElement;
3153 +
3154 + if ('hosted' === options.videoType) {
3155 + var videoParams = $.extend({
3156 + src: options.url,
3157 + autoplay: ''
3158 + }, options.videoParams);
3159 + $videoElement = $('<video>', videoParams);
3160 + } else {
3161 + var videoURL = options.url.replace('&autoplay=0', '') + '&autoplay=1';
3162 + $videoElement = $('<iframe>', {
3163 + src: videoURL,
3164 + allowfullscreen: 1
3165 + });
3166 + }
3167 +
3168 + $videoContainer.append($videoWrapper);
3169 + $videoWrapper.append($videoElement);
3170 + modal.setMessage($videoContainer);
3171 + this.setVideoAspectRatio();
3172 + var onHideMethod = modal.onHide;
3173 +
3174 + modal.onHide = function () {
3175 + onHideMethod();
3176 + this.$buttons = jQuery();
3177 + this.focusedButton = null;
3178 + modal.getElements('message').removeClass('elementor-fit-aspect-ratio');
3179 + };
3180 + },
3181 + getShareLinks: function getShareLinks() {
3182 + var _this = this;
3183 +
3184 + var i18n = elementorFrontend.config.i18n,
3185 + socialNetworks = {
3186 + facebook: wp.i18n.__('Share on Facebook', 'elementor'),
3187 + twitter: wp.i18n.__('Share on Twitter', 'elementor'),
3188 + pinterest: wp.i18n.__('Share on Twitter', 'elementor')
906 3189 },
907 - 'share-link': {
908 - src: `${assetsUrl}lib/share-link/share-link${fileSuffix}.js?ver=${pluginVersion}`
909 - },
910 - // TODO: Remove 'swiper' in v3.29.0 [ED-16272].
911 - swiper: {
912 - src: `${assetsUrl}lib/swiper/v8/swiper${fileSuffix}.js?ver=8.4.5`
3190 + $ = jQuery,
3191 + classes = this.getSettings('classes'),
3192 + selectors = this.getSettings('selectors'),
3193 + $linkList = $('<div>', {
3194 + class: classes.slideshow.shareLinks
3195 + }),
3196 + $activeSlide = this.getSlide('active'),
3197 + $image = $activeSlide.find(selectors.image),
3198 + videoUrl = $activeSlide.data('elementor-slideshow-video');
3199 + var itemUrl;
3200 +
3201 + if (videoUrl) {
3202 + itemUrl = videoUrl;
3203 + } else {
3204 + itemUrl = $image.attr('src');
913 3205 }
3206 +
3207 + $.each(socialNetworks, function (key, networkLabel) {
3208 + var $link = $('<a>', {
3209 + href: _this.createShareLink(key, itemUrl),
3210 + target: '_blank'
3211 + }).text(networkLabel);
3212 + $link.prepend($('<i>', {
3213 + class: 'eicon-' + key
3214 + }));
3215 + $linkList.append($link);
3216 + });
3217 +
3218 + if (!videoUrl) {
3219 + $linkList.append($('<a>', {
3220 + href: itemUrl,
3221 + download: ''
3222 + }).text(wp.i18n.__('Download image', 'elementor')).prepend($('<i>', {
3223 + class: 'eicon-download-bold',
3224 + 'aria-label': wp.i18n.__('Download', 'elementor')
3225 + })));
3226 + }
3227 +
3228 + return $linkList;
914 3229 },
915 - style: {
916 - swiper: {
917 - src: `${assetsUrl}lib/swiper/v8/css/swiper${fileSuffix}.css?ver=8.4.5`,
918 - parent: 'head'
919 - },
920 - 'e-lightbox': {
921 - src: elementorFrontendConfig?.responsive?.hasCustomBreakpoints ? `${elementorFrontendConfig.urls.uploadUrl}/elementor/css/custom-lightbox.min.css?ver=${pluginVersion}` : `${assetsUrl}css/conditionals/lightbox${fileSuffix}.css?ver=${pluginVersion}`
922 - },
923 - dialog: {
924 - src: `${assetsUrl}css/conditionals/dialog${fileSuffix}.css?ver=${pluginVersion}`,
925 - parent: 'head',
926 - before: '#elementor-frontend-css'
3230 + createShareLink: function createShareLink(networkName, itemUrl) {
3231 + var options = {};
3232 +
3233 + if ('pinterest' === networkName) {
3234 + options.image = encodeURIComponent(itemUrl);
3235 + } else {
3236 + var hash = elementorFrontend.utils.urlActions.createActionHash('lightbox', {
3237 + id: this.id,
3238 + url: itemUrl
3239 + });
3240 + options.url = encodeURIComponent(location.href.replace(/#.*/, '')) + hash;
927 3241 }
928 - }
929 -};
930 3242
931 -/***/ }),
3243 + return ShareLink.getNetworkLink(networkName, options);
3244 + },
3245 + getSlideshowHeader: function getSlideshowHeader() {
3246 + var i18n = elementorFrontend.config.i18n,
3247 + $ = jQuery,
3248 + showCounter = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_counter'),
3249 + showFullscreen = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_fullscreen'),
3250 + showZoom = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_zoom'),
3251 + showShare = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_share'),
3252 + classes = this.getSettings('classes'),
3253 + slideshowClasses = classes.slideshow,
3254 + elements = this.elements;
932 3255
933 -/***/ "../assets/dev/js/frontend/utils/controls.js":
934 -/*!***************************************************!*\
935 - !*** ../assets/dev/js/frontend/utils/controls.js ***!
936 - \***************************************************/
937 -/***/ ((__unused_webpack_module, exports) => {
3256 + if (!(showCounter || showFullscreen || showZoom || showShare)) {
3257 + return;
3258 + }
938 3259
3260 + elements.$header = $('<header>', {
3261 + class: slideshowClasses.header + ' ' + classes.preventClose
3262 + });
939 3263
3264 + if (showShare) {
3265 + elements.$iconShare = $('<i>', {
3266 + class: slideshowClasses.iconShare,
3267 + role: 'button',
3268 + 'aria-label': wp.i18n.__('Share', 'elementor'),
3269 + 'aria-expanded': false
3270 + }).append($('<span>'));
3271 + var $shareLinks = $('<div>');
3272 + $shareLinks.on('click', function (e) {
3273 + e.stopPropagation();
3274 + });
3275 + elements.$shareMenu = $('<div>', {
3276 + class: slideshowClasses.shareMenu
3277 + }).append($shareLinks);
3278 + elements.$iconShare.add(elements.$shareMenu).on('click', this.toggleShareMenu);
3279 + elements.$header.append(elements.$iconShare, elements.$shareMenu);
3280 + this.$buttons = this.$buttons.add(elements.$iconShare);
3281 + }
940 3282
941 -Object.defineProperty(exports, "__esModule", ({
942 - value: true
943 -}));
944 -exports["default"] = void 0;
945 -class Controls {
946 - /**
947 - * Get Control Value
948 - *
949 - * Retrieves a control value.
950 - * This function has been copied from `elementor/assets/dev/js/editor/utils/conditions.js`.
951 - *
952 - * @since 3.11.0
953 - *
954 - * @param {{}} controlSettings A settings object (e.g. element settings - keys and values)
955 - * @param {string} controlKey The control key name
956 - * @param {string} controlSubKey A specific property of the control object.
957 - * @return {*} Control Value
958 - */
959 - getControlValue(controlSettings, controlKey, controlSubKey) {
960 - let value;
961 - if ('object' === typeof controlSettings[controlKey] && controlSubKey) {
962 - value = controlSettings[controlKey][controlSubKey];
3283 + if (showZoom) {
3284 + elements.$iconZoom = $('<i>', {
3285 + class: slideshowClasses.iconZoomIn,
3286 + role: 'switch',
3287 + 'aria-checked': false,
3288 + 'aria-label': wp.i18n.__('Zoom', 'elementor')
3289 + });
3290 + elements.$iconZoom.on('click', this.toggleZoomMode);
3291 + elements.$header.append(elements.$iconZoom);
3292 + this.$buttons = this.$buttons.add(elements.$iconZoom);
3293 + }
3294 +
3295 + if (showFullscreen) {
3296 + elements.$iconExpand = $('<i>', {
3297 + class: slideshowClasses.iconExpand,
3298 + role: 'switch',
3299 + 'aria-checked': false,
3300 + 'aria-label': wp.i18n.__('Fullscreen', 'elementor')
3301 + }).append($('<span>'), $('<span>'));
3302 + elements.$iconExpand.on('click', this.toggleFullscreen);
3303 + elements.$header.append(elements.$iconExpand);
3304 + this.$buttons = this.$buttons.add(elements.$iconExpand);
3305 + }
3306 +
3307 + if (showCounter) {
3308 + elements.$counter = $('<span>', {
3309 + class: slideshowClasses.counter
3310 + });
3311 + elements.$header.append(elements.$counter);
3312 + }
3313 +
3314 + return elements.$header;
3315 + },
3316 + toggleFullscreen: function toggleFullscreen() {
3317 + if (_screenfull.default.isFullscreen) {
3318 + this.deactivateFullscreen();
3319 + } else if (_screenfull.default.isEnabled) {
3320 + this.activateFullscreen();
3321 + }
3322 + },
3323 + toggleZoomMode: function toggleZoomMode() {
3324 + if (1 !== this.swiper.zoom.scale) {
3325 + this.deactivateZoom();
963 3326 } else {
964 - value = controlSettings[controlKey];
3327 + this.activateZoom();
965 3328 }
966 - return value;
967 - }
3329 + },
3330 + toggleShareMenu: function toggleShareMenu() {
3331 + if (this.shareMode) {
3332 + this.deactivateShareMode();
3333 + } else {
3334 + this.elements.$shareMenu.html(this.getShareLinks());
3335 + this.activateShareMode();
3336 + }
3337 + },
3338 + activateShareMode: function activateShareMode() {
3339 + var classes = this.getSettings('classes');
3340 + this.elements.$container.addClass(classes.slideshow.shareMode);
3341 + this.elements.$iconShare.attr('aria-expanded', true); // Prevent swiper interactions while in share mode
968 3342
969 - /**
970 - * Get the value of a responsive control.
971 - *
972 - * Retrieves the value of a responsive control for the current device or for this first parent device which has a control value.
973 - *
974 - * @since 3.11.0
975 - *
976 - * @param {{}} controlSettings A settings object (e.g. element settings - keys and values)
977 - * @param {string} controlKey The control key name
978 - * @param {string} controlSubKey A specific property of the control object.
979 - * @param {string} device If we want to get a value for a specific device mode.
980 - * @return {*} Control Value
981 - */
982 - getResponsiveControlValue(controlSettings, controlKey, controlSubKey = '', device = null) {
983 - const currentDeviceMode = device || elementorFrontend.getCurrentDeviceMode(),
984 - controlValueDesktop = this.getControlValue(controlSettings, controlKey, controlSubKey);
3343 + this.swiper.detachEvents(); // Temporarily replace tabbable buttons with share-menu items
985 3344
986 - // Set the control value for the current device mode.
987 - // First check the widescreen device mode.
988 - if ('widescreen' === currentDeviceMode) {
989 - const controlValueWidescreen = this.getControlValue(controlSettings, `${controlKey}_widescreen`, controlSubKey);
990 - return !!controlValueWidescreen || 0 === controlValueWidescreen ? controlValueWidescreen : controlValueDesktop;
3345 + this.$originalButtons = this.$buttons;
3346 + this.$buttons = this.elements.$iconShare.add(this.elements.$shareMenu.find('a'));
3347 + this.shareMode = true;
3348 + },
3349 + deactivateShareMode: function deactivateShareMode() {
3350 + var classes = this.getSettings('classes');
3351 + this.elements.$container.removeClass(classes.slideshow.shareMode);
3352 + this.elements.$iconShare.attr('aria-expanded', false);
3353 + this.swiper.attachEvents();
3354 + this.$buttons = this.$originalButtons;
3355 + this.shareMode = false;
3356 + },
3357 + activateFullscreen: function activateFullscreen() {
3358 + var classes = this.getSettings('classes');
3359 +
3360 + _screenfull.default.request(this.elements.$container.parents('.dialog-widget')[0]);
3361 +
3362 + this.elements.$iconExpand.removeClass(classes.slideshow.iconExpand).addClass(classes.slideshow.iconShrink).attr('aria-checked', 'true');
3363 + this.elements.$container.addClass(classes.slideshow.fullscreenMode);
3364 + },
3365 + deactivateFullscreen: function deactivateFullscreen() {
3366 + var classes = this.getSettings('classes');
3367 +
3368 + _screenfull.default.exit();
3369 +
3370 + this.elements.$iconExpand.removeClass(classes.slideshow.iconShrink).addClass(classes.slideshow.iconExpand).attr('aria-checked', 'false');
3371 + this.elements.$container.removeClass(classes.slideshow.fullscreenMode);
3372 + },
3373 + activateZoom: function activateZoom() {
3374 + var swiper = this.swiper,
3375 + elements = this.elements,
3376 + classes = this.getSettings('classes');
3377 + swiper.zoom.in();
3378 + swiper.allowSlideNext = false;
3379 + swiper.allowSlidePrev = false;
3380 + swiper.allowTouchMove = false;
3381 + elements.$container.addClass(classes.slideshow.zoomMode);
3382 + elements.$iconZoom.removeClass(classes.slideshow.iconZoomIn).addClass(classes.slideshow.iconZoomOut);
3383 + },
3384 + deactivateZoom: function deactivateZoom() {
3385 + var swiper = this.swiper,
3386 + elements = this.elements,
3387 + classes = this.getSettings('classes');
3388 + swiper.zoom.out();
3389 + swiper.allowSlideNext = true;
3390 + swiper.allowSlidePrev = true;
3391 + swiper.allowTouchMove = true;
3392 + elements.$container.removeClass(classes.slideshow.zoomMode);
3393 + elements.$iconZoom.removeClass(classes.slideshow.iconZoomOut).addClass(classes.slideshow.iconZoomIn);
3394 + },
3395 + getSlideshowFooter: function getSlideshowFooter() {
3396 + var $ = jQuery,
3397 + classes = this.getSettings('classes'),
3398 + $footer = $('<footer>', {
3399 + class: classes.slideshow.footer + ' ' + classes.preventClose
3400 + }),
3401 + $title = $('<div>', {
3402 + class: classes.slideshow.title
3403 + }),
3404 + $description = $('<div>', {
3405 + class: classes.slideshow.description
3406 + });
3407 + $footer.append($title, $description);
3408 + return $footer;
3409 + },
3410 + setSlideshowContent: function setSlideshowContent(options) {
3411 + var _this2 = this;
3412 +
3413 + var i18n = elementorFrontend.config.i18n,
3414 + $ = jQuery,
3415 + isSingleSlide = 1 === options.slides.length,
3416 + hasTitle = '' !== elementorFrontend.getKitSettings('lightbox_title_src'),
3417 + hasDescription = '' !== elementorFrontend.getKitSettings('lightbox_description_src'),
3418 + showFooter = hasTitle || hasDescription,
3419 + classes = this.getSettings('classes'),
3420 + slideshowClasses = classes.slideshow,
3421 + $container = $('<div>', {
3422 + class: slideshowClasses.container
3423 + }),
3424 + $slidesWrapper = $('<div>', {
3425 + class: slideshowClasses.slidesWrapper
3426 + });
3427 + var $prevButton, $nextButton;
3428 + options.slides.forEach(function (slide) {
3429 + var slideClass = slideshowClasses.slide + ' ' + classes.item;
3430 +
3431 + if (slide.video) {
3432 + slideClass += ' ' + classes.video;
3433 + }
3434 +
3435 + var $slide = $('<div>', {
3436 + class: slideClass
3437 + });
3438 +
3439 + if (slide.video) {
3440 + $slide.attr('data-elementor-slideshow-video', slide.video);
3441 + var $playIcon = $('<div>', {
3442 + class: classes.playButton
3443 + }).html($('<i>', {
3444 + class: classes.playButtonIcon,
3445 + 'aria-label': wp.i18n.__('Play Video', 'elementor')
3446 + }));
3447 + $slide.append($playIcon);
3448 + } else {
3449 + var $zoomContainer = $('<div>', {
3450 + class: 'swiper-zoom-container'
3451 + }),
3452 + $slidePlaceholder = $('<div class="swiper-lazy-preloader"></div>'),
3453 + imageAttributes = {
3454 + 'data-src': slide.image,
3455 + class: classes.image + ' ' + classes.preventClose + ' swiper-lazy'
3456 + };
3457 +
3458 + if (slide.title) {
3459 + imageAttributes['data-title'] = slide.title;
3460 + imageAttributes.alt = slide.title;
3461 + }
3462 +
3463 + if (slide.description) {
3464 + imageAttributes['data-description'] = slide.description;
3465 + imageAttributes.alt += ' - ' + slide.description;
3466 + }
3467 +
3468 + var $slideImage = $('<img>', imageAttributes);
3469 + $zoomContainer.append([$slideImage, $slidePlaceholder]);
3470 + $slide.append($zoomContainer);
3471 + }
3472 +
3473 + $slidesWrapper.append($slide);
3474 + });
3475 + this.elements.$container = $container;
3476 + this.elements.$header = this.getSlideshowHeader();
3477 + $container.prepend(this.elements.$header).append($slidesWrapper);
3478 +
3479 + if (!isSingleSlide) {
3480 + $prevButton = $('<div>', {
3481 + class: slideshowClasses.prevButton + ' ' + classes.preventClose,
3482 + 'aria-label': wp.i18n.__('Previous', 'elementor')
3483 + }).html($('<i>', {
3484 + class: slideshowClasses.prevButtonIcon
3485 + }));
3486 + $nextButton = $('<div>', {
3487 + class: slideshowClasses.nextButton + ' ' + classes.preventClose,
3488 + 'aria-label': wp.i18n.__('Next', 'elementor')
3489 + }).html($('<i>', {
3490 + class: slideshowClasses.nextButtonIcon
3491 + }));
3492 + $container.append($nextButton, $prevButton);
3493 + this.$buttons = this.$buttons.add($nextButton).add($prevButton);
991 3494 }
992 3495
993 - // Loop through all responsive and desktop device modes.
994 - const activeBreakpoints = elementorFrontend.breakpoints.getActiveBreakpointsList({
995 - withDesktop: true
3496 + if (showFooter) {
3497 + this.elements.$footer = this.getSlideshowFooter();
3498 + $container.append(this.elements.$footer);
3499 + }
3500 +
3501 + this.setSettings('hideUiTimeout', '');
3502 + $container.on('click mousemove keypress', this.showLightboxUi);
3503 + var modal = this.getModal();
3504 + modal.setMessage($container);
3505 + var onShowMethod = modal.onShow;
3506 + modal.onShow = /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
3507 + var swiperOptions, Swiper;
3508 + return _regenerator.default.wrap(function _callee$(_context) {
3509 + while (1) {
3510 + switch (_context.prev = _context.next) {
3511 + case 0:
3512 + onShowMethod();
3513 + swiperOptions = {
3514 + pagination: {
3515 + el: '.' + slideshowClasses.counter,
3516 + type: 'fraction'
3517 + },
3518 + on: {
3519 + slideChangeTransitionEnd: _this2.onSlideChange
3520 + },
3521 + lazy: {
3522 + loadPrevNext: true
3523 + },
3524 + zoom: true,
3525 + spaceBetween: 100,
3526 + grabCursor: true,
3527 + runCallbacksOnInit: false,
3528 + loop: true,
3529 + keyboard: true,
3530 + handleElementorBreakpoints: true
3531 + };
3532 +
3533 + if (!isSingleSlide) {
3534 + swiperOptions.navigation = {
3535 + prevEl: $prevButton,
3536 + nextEl: $nextButton
3537 + };
3538 + }
3539 +
3540 + if (options.swiper) {
3541 + $.extend(swiperOptions, options.swiper);
3542 + }
3543 +
3544 + Swiper = elementorFrontend.utils.swiper;
3545 + _context.next = 7;
3546 + return new Swiper($container, swiperOptions);
3547 +
3548 + case 7:
3549 + _this2.swiper = _context.sent;
3550 + // Expose the swiper instance in the frontend
3551 + $container.data('swiper', _this2.swiper);
3552 +
3553 + _this2.setVideoAspectRatio();
3554 +
3555 + _this2.playSlideVideo();
3556 +
3557 + if (showFooter) {
3558 + _this2.updateFooterText();
3559 + }
3560 +
3561 + _this2.bindHotKeys();
3562 +
3563 + _this2.makeButtonsAccessible();
3564 +
3565 + case 14:
3566 + case "end":
3567 + return _context.stop();
3568 + }
3569 + }
3570 + }, _callee);
3571 + }));
3572 + },
3573 + makeButtonsAccessible: function makeButtonsAccessible() {
3574 + this.$buttons.attr('tabindex', 0).on('keypress', function (event) {
3575 + var ENTER_KEY = 13,
3576 + SPACE_KEY = 32;
3577 +
3578 + if (ENTER_KEY === event.which || SPACE_KEY === event.which) {
3579 + jQuery(event.currentTarget).trigger('click');
3580 + }
996 3581 });
997 - let parentDeviceMode = currentDeviceMode,
998 - deviceIndex = activeBreakpoints.indexOf(currentDeviceMode),
999 - controlValue = '';
1000 - while (deviceIndex <= activeBreakpoints.length) {
1001 - if ('desktop' === parentDeviceMode) {
1002 - controlValue = controlValueDesktop;
1003 - break;
3582 + },
3583 + showLightboxUi: function showLightboxUi() {
3584 + var _this3 = this;
3585 +
3586 + var slideshowClasses = this.getSettings('classes').slideshow;
3587 + this.elements.$container.removeClass(slideshowClasses.hideUiVisibility);
3588 + clearTimeout(this.getSettings('hideUiTimeout'));
3589 + this.setSettings('hideUiTimeout', setTimeout(function () {
3590 + if (!_this3.shareMode) {
3591 + _this3.elements.$container.addClass(slideshowClasses.hideUiVisibility);
1004 3592 }
1005 - const responsiveControlKey = `${controlKey}_${parentDeviceMode}`,
1006 - responsiveControlValue = this.getControlValue(controlSettings, responsiveControlKey, controlSubKey);
1007 - if (!!responsiveControlValue || 0 === responsiveControlValue) {
1008 - controlValue = responsiveControlValue;
1009 - break;
3593 + }, 3500));
3594 + },
3595 + bindHotKeys: function bindHotKeys() {
3596 + this.getModal().getElements('window').on('keydown', this.activeKeyDown);
3597 + },
3598 + unbindHotKeys: function unbindHotKeys() {
3599 + this.getModal().getElements('window').off('keydown', this.activeKeyDown);
3600 + },
3601 + activeKeyDown: function activeKeyDown(event) {
3602 + this.showLightboxUi();
3603 + var TAB_KEY = 9;
3604 +
3605 + if (event.which === TAB_KEY) {
3606 + var $buttons = this.$buttons;
3607 + var focusedButton,
3608 + isFirst = false,
3609 + isLast = false;
3610 + $buttons.each(function (index) {
3611 + var item = $buttons[index];
3612 +
3613 + if (jQuery(item).is(':focus')) {
3614 + focusedButton = item;
3615 + isFirst = 0 === index;
3616 + isLast = $buttons.length - 1 === index;
3617 + return false;
3618 + }
3619 + });
3620 +
3621 + if (event.shiftKey) {
3622 + if (isFirst) {
3623 + event.preventDefault();
3624 + $buttons.last().focus();
3625 + }
3626 + } else if (isLast || !focusedButton) {
3627 + event.preventDefault();
3628 + $buttons.first().focus();
1010 3629 }
3630 + }
3631 + },
3632 + setVideoAspectRatio: function setVideoAspectRatio(aspectRatio) {
3633 + aspectRatio = aspectRatio || this.getSettings('modalOptions.videoAspectRatio');
3634 + var $widgetContent = this.getModal().getElements('widgetContent'),
3635 + oldAspectRatio = this.oldAspectRatio,
3636 + aspectRatioClass = this.getSettings('classes.aspectRatio');
3637 + this.oldAspectRatio = aspectRatio;
1011 3638
1012 - // If no control value has been set for the current device mode, then check the parent device mode.
1013 - deviceIndex++;
1014 - parentDeviceMode = activeBreakpoints[deviceIndex];
3639 + if (oldAspectRatio) {
3640 + $widgetContent.removeClass(aspectRatioClass.replace('%s', oldAspectRatio));
1015 3641 }
1016 - return controlValue;
1017 - }
1018 -}
1019 -exports["default"] = Controls;
1020 3642
1021 -/***/ }),
3643 + if (aspectRatio) {
3644 + $widgetContent.addClass(aspectRatioClass.replace('%s', aspectRatio));
3645 + }
3646 + },
3647 + getSlide: function getSlide(slideState) {
3648 + return jQuery(this.swiper.slides).filter(this.getSettings('selectors.slideshow.' + slideState + 'Slide'));
3649 + },
3650 + updateFooterText: function updateFooterText() {
3651 + if (!this.elements.$footer) {
3652 + return;
3653 + }
1022 3654
1023 -/***/ "../assets/dev/js/frontend/utils/lightbox/lightbox-manager.js":
1024 -/*!********************************************************************!*\
1025 - !*** ../assets/dev/js/frontend/utils/lightbox/lightbox-manager.js ***!
1026 - \********************************************************************/
1027 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3655 + var classes = this.getSettings('classes'),
3656 + $activeSlide = this.getSlide('active'),
3657 + $image = $activeSlide.find('.elementor-lightbox-image'),
3658 + titleText = $image.data('title'),
3659 + descriptionText = $image.data('description'),
3660 + $title = this.elements.$footer.find('.' + classes.slideshow.title),
3661 + $description = this.elements.$footer.find('.' + classes.slideshow.description);
3662 + $title.text(titleText || '');
3663 + $description.text(descriptionText || '');
3664 + },
3665 + playSlideVideo: function playSlideVideo() {
3666 + var _this4 = this;
1028 3667
3668 + var $activeSlide = this.getSlide('active'),
3669 + videoURL = $activeSlide.data('elementor-slideshow-video');
1029 3670
3671 + if (!videoURL) {
3672 + return;
3673 + }
1030 3674
1031 -Object.defineProperty(exports, "__esModule", ({
1032 - value: true
1033 -}));
1034 -exports["default"] = void 0;
1035 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
1036 -__webpack_require__(/*! core-js/modules/esnext.iterator.find.js */ "../node_modules/core-js/modules/esnext.iterator.find.js");
1037 -class LightboxManager extends elementorModules.ViewModule {
1038 - static getLightbox() {
1039 - const lightboxPromise = new Promise(resolveLightbox => {
1040 - Promise.all(/*! import() | lightbox */[__webpack_require__.e("vendors-node_modules_dompurify_dist_purify_cjs_js"), __webpack_require__.e("lightbox")]).then(__webpack_require__.t.bind(__webpack_require__, /*! elementor-frontend/utils/lightbox/lightbox */ "../assets/dev/js/frontend/utils/lightbox/lightbox.js", 23)).then(({
1041 - default: LightboxModule
1042 - }) => resolveLightbox(new LightboxModule()));
1043 - }),
1044 - dialogScriptPromise = elementorFrontend.utils.assetsLoader.load('script', 'dialog'),
1045 - dialogStylePromise = elementorFrontend.utils.assetsLoader.load('style', 'dialog'),
1046 - shareLinkPromise = elementorFrontend.utils.assetsLoader.load('script', 'share-link'),
1047 - swiperStylePromise = elementorFrontend.utils.assetsLoader.load('style', 'swiper'),
1048 - lightboxStylePromise = elementorFrontend.utils.assetsLoader.load('style', 'e-lightbox');
1049 - return Promise.all([lightboxPromise, dialogScriptPromise, dialogStylePromise, shareLinkPromise, swiperStylePromise, lightboxStylePromise]).then(() => lightboxPromise);
1050 - }
1051 - getDefaultSettings() {
1052 - return {
1053 - selectors: {
1054 - links: 'a, [data-elementor-lightbox]',
1055 - slideshow: '[data-elementor-lightbox-slideshow]'
3675 + var classes = this.getSettings('classes'),
3676 + $videoContainer = jQuery('<div>', {
3677 + class: classes.videoContainer + ' ' + classes.invisible
3678 + }),
3679 + $videoWrapper = jQuery('<div>', {
3680 + class: classes.videoWrapper
3681 + }),
3682 + $playIcon = $activeSlide.children('.' + classes.playButton);
3683 + var videoType, apiProvider;
3684 + $videoContainer.append($videoWrapper);
3685 + $activeSlide.append($videoContainer);
3686 +
3687 + if (-1 !== videoURL.indexOf('vimeo.com')) {
3688 + videoType = 'vimeo';
3689 + apiProvider = elementorFrontend.utils.vimeo;
3690 + } else if (videoURL.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)) {
3691 + videoType = 'youtube';
3692 + apiProvider = elementorFrontend.utils.youtube;
3693 + }
3694 +
3695 + var videoID = apiProvider.getVideoIDFromURL(videoURL);
3696 + apiProvider.onApiReady(function (apiObject) {
3697 + if ('youtube' === videoType) {
3698 + _this4.prepareYTVideo(apiObject, videoID, $videoContainer, $videoWrapper, $playIcon);
3699 + } else if ('vimeo' === videoType) {
3700 + _this4.prepareVimeoVideo(apiObject, videoID, $videoContainer, $videoWrapper, $playIcon);
1056 3701 }
3702 + });
3703 + $playIcon.addClass(classes.playing).removeClass(classes.hidden);
3704 + },
3705 + prepareYTVideo: function prepareYTVideo(YT, videoID, $videoContainer, $videoWrapper, $playIcon) {
3706 + var _this5 = this;
3707 +
3708 + var classes = this.getSettings('classes'),
3709 + $videoPlaceholderElement = jQuery('<div>');
3710 + var startStateCode = YT.PlayerState.PLAYING;
3711 + $videoWrapper.append($videoPlaceholderElement); // Since version 67, Chrome doesn't fire the `PLAYING` state at start time
3712 +
3713 + if (window.chrome) {
3714 + startStateCode = YT.PlayerState.UNSTARTED;
3715 + }
3716 +
3717 + $videoContainer.addClass('elementor-loading' + ' ' + classes.invisible);
3718 + this.player = new YT.Player($videoPlaceholderElement[0], {
3719 + videoId: videoID,
3720 + events: {
3721 + onReady: function onReady() {
3722 + $playIcon.addClass(classes.hidden);
3723 + $videoContainer.removeClass(classes.invisible);
3724 +
3725 + _this5.player.playVideo();
3726 + },
3727 + onStateChange: function onStateChange(event) {
3728 + if (event.data === startStateCode) {
3729 + $videoContainer.removeClass('elementor-loading' + ' ' + classes.invisible);
3730 + }
3731 + }
3732 + },
3733 + playerVars: {
3734 + controls: 0,
3735 + rel: 0
3736 + }
3737 + });
3738 + },
3739 + prepareVimeoVideo: function prepareVimeoVideo(Vimeo, videoId, $videoContainer, $videoWrapper, $playIcon) {
3740 + var classes = this.getSettings('classes'),
3741 + vimeoOptions = {
3742 + id: videoId,
3743 + autoplay: true,
3744 + transparent: false,
3745 + playsinline: false
1057 3746 };
1058 - }
1059 - getDefaultElements() {
1060 - return {
1061 - $links: jQuery(this.getSettings('selectors.links')),
1062 - $slideshow: jQuery(this.getSettings('selectors.slideshow'))
1063 - };
1064 - }
1065 - isLightboxLink(element) {
1066 - // Check for lowercase `a` to make sure it works also for links inside SVGs.
1067 - if ('a' === element.tagName.toLowerCase() && (element.hasAttribute('download') || !/^[^?]+\.(png|jpe?g|gif|svg|webp|avif)(\?.*)?$/i.test(element.href)) && !element.dataset.elementorLightboxVideo) {
3747 + this.player = new Vimeo.Player($videoWrapper, vimeoOptions);
3748 + this.player.ready().then(function () {
3749 + $playIcon.addClass(classes.hidden);
3750 + $videoContainer.removeClass(classes.invisible);
3751 + });
3752 + },
3753 + setEntranceAnimation: function setEntranceAnimation(animation) {
3754 + animation = animation || elementorFrontend.getCurrentDeviceSetting(this.getSettings('modalOptions'), 'entranceAnimation');
3755 + var $widgetMessage = this.getModal().getElements('message');
3756 +
3757 + if (this.oldAnimation) {
3758 + $widgetMessage.removeClass(this.oldAnimation);
3759 + }
3760 +
3761 + this.oldAnimation = animation;
3762 +
3763 + if (animation) {
3764 + $widgetMessage.addClass('animated ' + animation);
3765 + }
3766 + },
3767 + isLightboxLink: function isLightboxLink(element) {
3768 + if ('A' === element.tagName && (element.hasAttribute('download') || !/^[^?]+\.(png|jpe?g|gif|svg|webp)(\?.*)?$/i.test(element.href))) {
1068 3769 return false;
1069 3770 }
1070 - const generalOpenInLightbox = elementorFrontend.getKitSettings('global_image_lightbox'),
1071 - currentLinkOpenInLightbox = element.dataset.elementorOpenLightbox;
3771 +
3772 + var generalOpenInLightbox = elementorFrontend.getKitSettings('global_image_lightbox'),
3773 + currentLinkOpenInLightbox = element.dataset.elementorOpenLightbox;
1072 3774 return 'yes' === currentLinkOpenInLightbox || generalOpenInLightbox && 'no' !== currentLinkOpenInLightbox;
1073 - }
1074 - isLightboxSlideshow() {
1075 - return 0 !== this.elements.$slideshow.length;
1076 - }
1077 - async onLinkClick(event) {
1078 - const element = event.currentTarget,
1079 - $target = jQuery(event.target),
1080 - editMode = elementorFrontend.isEditMode(),
1081 - isColorPickingMode = editMode && elementor.$previewContents.find('body').hasClass('elementor-editor__ui-state__color-picker'),
1082 - isClickInsideElementor = !!$target.closest('.elementor-edit-area').length;
3775 + },
3776 + openSlideshow: function openSlideshow(slideshowID, initialSlideURL) {
3777 + var $allSlideshowLinks = jQuery(this.getSettings('selectors.links')).filter(function (index, element) {
3778 + var $element = jQuery(element);
3779 + return slideshowID === element.dataset.elementorLightboxSlideshow && !$element.parent('.swiper-slide-duplicate').length && !$element.parents('.slick-cloned').length;
3780 + });
3781 + var slides = [];
3782 + var initialSlideIndex = 0;
3783 + $allSlideshowLinks.each(function () {
3784 + var slideVideo = this.dataset.elementorLightboxVideo;
3785 + var slideIndex = this.dataset.elementorLightboxIndex;
3786 +
3787 + if (undefined === slideIndex) {
3788 + slideIndex = $allSlideshowLinks.index(this);
3789 + }
3790 +
3791 + if (initialSlideURL === this.href || slideVideo && initialSlideURL === slideVideo) {
3792 + initialSlideIndex = slideIndex;
3793 + }
3794 +
3795 + var slideData = {
3796 + image: this.href,
3797 + index: slideIndex,
3798 + title: this.dataset.elementorLightboxTitle,
3799 + description: this.dataset.elementorLightboxDescription
3800 + };
3801 +
3802 + if (slideVideo) {
3803 + slideData.video = slideVideo;
3804 + }
3805 +
3806 + slides.push(slideData);
3807 + });
3808 + slides.sort(function (a, b) {
3809 + return a.index - b.index;
3810 + });
3811 + this.showModal({
3812 + type: 'slideshow',
3813 + id: slideshowID,
3814 + modalOptions: {
3815 + id: 'elementor-lightbox-slideshow-' + slideshowID
3816 + },
3817 + slideshow: {
3818 + slides: slides,
3819 + swiper: {
3820 + initialSlide: +initialSlideIndex
3821 + }
3822 + }
3823 + });
3824 + },
3825 + openLink: function openLink(event) {
3826 + var element = event.currentTarget,
3827 + $target = jQuery(event.target),
3828 + editMode = elementorFrontend.isEditMode(),
3829 + isClickInsideElementor = !!$target.closest('.elementor-edit-area').length;
3830 +
1083 3831 if (!this.isLightboxLink(element)) {
1084 3832 if (editMode && isClickInsideElementor) {
1085 3833 event.preventDefault();
1086 3834 }
3835 +
1087 3836 return;
1088 3837 }
3838 +
1089 3839 event.preventDefault();
3840 +
1090 3841 if (editMode && !elementor.getPreferences('lightbox_in_editor')) {
1091 3842 return;
1092 3843 }
1093 3844
1094 - // Disable lightbox on color picking mode.
1095 - if (isColorPickingMode) {
3845 + var lightboxData = {};
3846 +
3847 + if (element.dataset.elementorLightbox) {
3848 + lightboxData = JSON.parse(element.dataset.elementorLightbox);
3849 + }
3850 +
3851 + if (lightboxData.type && 'slideshow' !== lightboxData.type) {
3852 + this.showModal(lightboxData);
1096 3853 return;
1097 3854 }
1098 - const lightbox = await LightboxManager.getLightbox();
1099 - lightbox.createLightbox(element);
3855 +
3856 + if (!element.dataset.elementorLightboxSlideshow) {
3857 + var slideshowID = 'single-img';
3858 + this.showModal({
3859 + type: 'image',
3860 + id: slideshowID,
3861 + url: element.href,
3862 + title: element.dataset.elementorLightboxTitle,
3863 + description: element.dataset.elementorLightboxDescription,
3864 + modalOptions: {
3865 + id: 'elementor-lightbox-slideshow-' + slideshowID
3866 + }
3867 + });
3868 + return;
3869 + }
3870 +
3871 + var initialSlideURL = element.dataset.elementorLightboxVideo ? element.dataset.elementorLightboxVideo : element.href;
3872 + this.openSlideshow(element.dataset.elementorLightboxSlideshow, initialSlideURL);
3873 + },
3874 + bindEvents: function bindEvents() {
3875 + elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), this.openLink);
3876 + },
3877 + onSlideChange: function onSlideChange() {
3878 + this.getSlide('prev').add(this.getSlide('next')).add(this.getSlide('active')).find('.' + this.getSettings('classes.videoWrapper')).remove();
3879 + this.playSlideVideo();
3880 + this.updateFooterText();
1100 3881 }
1101 - bindEvents() {
1102 - elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), event => this.onLinkClick(event));
1103 - }
1104 - onInit(...args) {
1105 - super.onInit(...args);
1106 - if (elementorFrontend.isEditMode()) {
1107 - return;
3882 +});
3883 +
3884 +/***/ }),
3885 +
3886 +/***/ "../assets/dev/js/frontend/utils/lightbox/screenfull.js":
3887 +/*!**************************************************************!*\
3888 + !*** ../assets/dev/js/frontend/utils/lightbox/screenfull.js ***!
3889 + \**************************************************************/
3890 +/*! unknown exports (runtime-defined) */
3891 +/*! runtime requirements: module, __webpack_require__ */
3892 +/*! CommonJS bailout: module.exports is used directly at 13:52-66 */
3893 +/*! CommonJS bailout: module.exports is used directly at 104:6-20 */
3894 +/*! CommonJS bailout: module.exports is used directly at 138:4-18 */
3895 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3896 +
3897 +"use strict";
3898 +
3899 +
3900 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
3901 +
3902 +var _defineProperties = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-properties */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js"));
3903 +
3904 +var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));
3905 +
3906 +(function () {
3907 + 'use strict';
3908 +
3909 + var document = typeof window !== 'undefined' && typeof window.document !== 'undefined' ? window.document : {};
3910 + var isCommonjs = true && module.exports;
3911 +
3912 + var fn = function () {
3913 + var val;
3914 + var fnMap = [['requestFullscreen', 'exitFullscreen', 'fullscreenElement', 'fullscreenEnabled', 'fullscreenchange', 'fullscreenerror'], // New WebKit
3915 + ['webkitRequestFullscreen', 'webkitExitFullscreen', 'webkitFullscreenElement', 'webkitFullscreenEnabled', 'webkitfullscreenchange', 'webkitfullscreenerror'], // Old WebKit
3916 + ['webkitRequestFullScreen', 'webkitCancelFullScreen', 'webkitCurrentFullScreenElement', 'webkitCancelFullScreen', 'webkitfullscreenchange', 'webkitfullscreenerror'], ['mozRequestFullScreen', 'mozCancelFullScreen', 'mozFullScreenElement', 'mozFullScreenEnabled', 'mozfullscreenchange', 'mozfullscreenerror'], ['msRequestFullscreen', 'msExitFullscreen', 'msFullscreenElement', 'msFullscreenEnabled', 'MSFullscreenChange', 'MSFullscreenError']];
3917 + var i = 0;
3918 + var l = fnMap.length;
3919 + var ret = {};
3920 +
3921 + for (; i < l; i++) {
3922 + val = fnMap[i];
3923 +
3924 + if (val && val[1] in document) {
3925 + var valLength = val.length;
3926 +
3927 + for (i = 0; i < valLength; i++) {
3928 + ret[fnMap[0][i]] = val[i];
3929 + }
3930 +
3931 + return ret;
3932 + }
1108 3933 }
1109 - this.maybeActivateLightboxOnLink();
3934 +
3935 + return false;
3936 + }();
3937 +
3938 + var eventNameMap = {
3939 + change: fn.fullscreenchange,
3940 + error: fn.fullscreenerror
3941 + };
3942 + var screenfull = {
3943 + request: function request(element) {
3944 + return new _promise.default(function (resolve, reject) {
3945 + var onFullScreenEntered = function () {
3946 + this.off('change', onFullScreenEntered);
3947 + resolve();
3948 + }.bind(this);
3949 +
3950 + this.on('change', onFullScreenEntered);
3951 + element = element || document.documentElement;
3952 +
3953 + _promise.default.resolve(element[fn.requestFullscreen]()).catch(reject);
3954 + }.bind(this));
3955 + },
3956 + exit: function exit() {
3957 + return new _promise.default(function (resolve, reject) {
3958 + if (!this.isFullscreen) {
3959 + resolve();
3960 + return;
3961 + }
3962 +
3963 + var onFullScreenExit = function () {
3964 + this.off('change', onFullScreenExit);
3965 + resolve();
3966 + }.bind(this);
3967 +
3968 + this.on('change', onFullScreenExit);
3969 +
3970 + _promise.default.resolve(document[fn.exitFullscreen]()).catch(reject);
3971 + }.bind(this));
3972 + },
3973 + toggle: function toggle(element) {
3974 + return this.isFullscreen ? this.exit() : this.request(element);
3975 + },
3976 + onchange: function onchange(callback) {
3977 + this.on('change', callback);
3978 + },
3979 + onerror: function onerror(callback) {
3980 + this.on('error', callback);
3981 + },
3982 + on: function on(event, callback) {
3983 + var eventName = eventNameMap[event];
3984 +
3985 + if (eventName) {
3986 + document.addEventListener(eventName, callback, false);
3987 + }
3988 + },
3989 + off: function off(event, callback) {
3990 + var eventName = eventNameMap[event];
3991 +
3992 + if (eventName) {
3993 + document.removeEventListener(eventName, callback, false);
3994 + }
3995 + },
3996 + raw: fn
3997 + };
3998 +
3999 + if (!fn) {
4000 + if (isCommonjs) {
4001 + module.exports = {
4002 + isEnabled: false
4003 + };
4004 + } else {
4005 + window.screenfull = {
4006 + isEnabled: false
4007 + };
4008 + }
4009 +
4010 + return;
1110 4011 }
1111 - maybeActivateLightboxOnLink() {
1112 - // Detecting lightbox links on init will reduce the time of waiting to the lightbox to be display on slow connections.
1113 - this.elements.$links.each((index, element) => {
1114 - if (this.isLightboxLink(element)) {
1115 - LightboxManager.getLightbox();
1116 4012
1117 - // Breaking the iteration when the library loading has already been triggered.
1118 - return false;
4013 + (0, _defineProperties.default)(screenfull, {
4014 + isFullscreen: {
4015 + get: function get() {
4016 + return Boolean(document[fn.fullscreenElement]);
1119 4017 }
1120 - });
4018 + },
4019 + element: {
4020 + enumerable: true,
4021 + get: function get() {
4022 + return document[fn.fullscreenElement];
4023 + }
4024 + },
4025 + isEnabled: {
4026 + enumerable: true,
4027 + get: function get() {
4028 + // Coerce to boolean in case of old WebKit
4029 + return Boolean(document[fn.fullscreenEnabled]);
4030 + }
4031 + }
4032 + });
4033 +
4034 + if (isCommonjs) {
4035 + module.exports = screenfull;
4036 + } else {
4037 + window.screenfull = screenfull;
1121 4038 }
1122 -}
1123 -exports["default"] = LightboxManager;
4039 +})();
1124 4040
1125 4041 /***/ }),
1126 4042
1127 4043 /***/ "../assets/dev/js/frontend/utils/swiper.js":
@@ -1127,107 +4043,119 @@
1127 4043 /***/ "../assets/dev/js/frontend/utils/swiper.js":
1128 4044 /*!*************************************************!*\
1129 4045 !*** ../assets/dev/js/frontend/utils/swiper.js ***!
1130 4046 \*************************************************/
4047 +/*! unknown exports (runtime-defined) */
4048 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
4049 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
1131 4050 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1132 4051
4052 +"use strict";
1133 4053
1134 4054
1135 -Object.defineProperty(exports, "__esModule", ({
4055 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
4056 +
4057 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
4058 +
4059 +_Object$defineProperty(exports, "__esModule", {
1136 4060 value: true
1137 -}));
1138 -exports["default"] = void 0;
1139 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
1140 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
1141 -class SwiperHandler {
1142 - constructor(container, config) {
4061 +});
4062 +
4063 +exports.default = void 0;
4064 +
4065 +__webpack_require__(/*! core-js/modules/es6.array.find-index */ "../node_modules/core-js/modules/es6.array.find-index.js");
4066 +
4067 +var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));
4068 +
4069 +var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
4070 +
4071 +var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
4072 +
4073 +var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));
4074 +
4075 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
4076 +
4077 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
4078 +
4079 +var Swiper = /*#__PURE__*/function () {
4080 + function Swiper(container, config) {
4081 + var _this = this;
4082 +
4083 + (0, _classCallCheck2.default)(this, Swiper);
1143 4084 this.config = config;
4085 +
1144 4086 if (this.config.breakpoints) {
1145 4087 // The config is passed as a param to allow adjustConfig to be called outside of this wrapper
1146 4088 this.config = this.adjustConfig(config);
1147 4089 }
1148 - if (container instanceof jQuery) {
1149 - container = container[0];
1150 - }
1151 4090
1152 - // The Swiper will overlap the column width when applying custom margin values on the column.
1153 - container.closest('.elementor-widget-wrap')?.classList.add('e-swiper-container');
1154 - container.closest('.elementor-widget')?.classList.add('e-widget-swiper');
1155 - return new Promise(resolve => {
1156 - // TODO: Remove in v3.29.0 [ED-16272].
1157 - if ('undefined' === typeof Swiper) {
1158 - elementorFrontend.utils.assetsLoader.load('script', 'swiper').then(() => resolve(this.createSwiperInstance(container, this.config)));
1159 - return;
4091 + return new _promise.default(function (resolve) {
4092 + if (!elementorFrontendConfig.environmentMode.isOptimizedJS) {
4093 + return resolve(_this.createSwiperInstance(container, _this.config));
1160 4094 }
1161 - if ('function' === typeof Swiper && 'undefined' === typeof window.Swiper) {
1162 - window.Swiper = Swiper;
1163 - }
1164 - resolve(this.createSwiperInstance(container, this.config));
4095 +
4096 + var fileSuffix = elementorFrontendConfig.environmentMode.isScriptDebug ? '' : '.min';
4097 + import(
4098 + /* webpackIgnore: true */
4099 + "".concat(elementorFrontendConfig.urls.assets, "lib/swiper/swiper").concat(fileSuffix, ".js?ver=5.3.6")).then(function () {
4100 + return resolve(_this.createSwiperInstance(container, _this.config));
4101 + });
1165 4102 });
1166 4103 }
1167 - createSwiperInstance(container, config) {
1168 - const SwiperSource = window.Swiper;
1169 - SwiperSource.prototype.adjustConfig = this.adjustConfig;
1170 - config = this.applyMotionPreferences(config);
1171 - return new SwiperSource(container, config);
1172 - }
1173 4104
1174 - // Backwards compatibility for Elementor Pro <2.9.0 (old Swiper version - <5.0.0)
1175 - // In Swiper 5.0.0 and up, breakpoints changed from acting as max-width to acting as min-width
1176 - adjustConfig(config) {
1177 - // Only reverse the breakpoints if the handle param has been defined
1178 - if (!config.handleElementorBreakpoints) {
1179 - return config;
1180 - }
1181 - const elementorBreakpoints = elementorFrontend.config.responsive.activeBreakpoints,
1182 - elementorBreakpointValues = elementorFrontend.breakpoints.getBreakpointValues();
1183 - Object.keys(config.breakpoints).forEach(configBPKey => {
1184 - const configBPKeyInt = parseInt(configBPKey);
1185 - let breakpointToUpdate;
4105 + (0, _createClass2.default)(Swiper, [{
4106 + key: "createSwiperInstance",
4107 + value: function createSwiperInstance(container, config) {
4108 + var SwiperSource = window.Swiper;
4109 + SwiperSource.prototype.adjustConfig = this.adjustConfig;
4110 + return new SwiperSource(container, config);
4111 + } // Backwards compatibility for Elementor Pro <2.9.0 (old Swiper version - <5.0.0)
4112 + // In Swiper 5.0.0 and up, breakpoints changed from acting as max-width to acting as min-width
1186 4113
1187 - // The `configBPKeyInt + 1` is a BC Fix for Elementor Pro Carousels from 2.8.0-2.8.3 used with Elementor >= 2.9.0
1188 - if (configBPKeyInt === elementorBreakpoints.mobile.value || configBPKeyInt + 1 === elementorBreakpoints.mobile.value) {
1189 - // This handles the mobile breakpoint. Elementor's default sm breakpoint is never actually used,
1190 - // so the mobile breakpoint (md) needs to be handled separately and set to the 0 breakpoint (xs)
1191 - breakpointToUpdate = 0;
1192 - } else if (elementorBreakpoints.widescreen && (configBPKeyInt === elementorBreakpoints.widescreen.value || configBPKeyInt + 1 === elementorBreakpoints.widescreen.value)) {
1193 - // Widescreen is a min-width breakpoint. Since in Swiper >5.0 the breakpoint system is min-width based,
1194 - // the value we pass to the Swiper instance in this case is the breakpoint from the user, unchanged.
1195 - breakpointToUpdate = configBPKeyInt;
1196 - } else {
1197 - // Find the index of the current config breakpoint in the Elementor Breakpoints array
1198 - const currentBPIndexInElementorBPs = elementorBreakpointValues.findIndex(elementorBP => {
1199 - // BC Fix for Elementor Pro Carousels from 2.8.0-2.8.3 used with Elementor >= 2.9.0
1200 - return configBPKeyInt === elementorBP || configBPKeyInt + 1 === elementorBP;
1201 - });
4114 + }, {
4115 + key: "adjustConfig",
4116 + value: function adjustConfig(config) {
4117 + // Only reverse the breakpoints if the handle param has been defined
4118 + if (!config.handleElementorBreakpoints) {
4119 + return config;
4120 + }
1202 4121
1203 - // For all other Swiper config breakpoints, move them one breakpoint down on the breakpoint list,
1204 - // according to the array of Elementor's global breakpoints
1205 - breakpointToUpdate = elementorBreakpointValues[currentBPIndexInElementorBPs - 1];
1206 - }
1207 - config.breakpoints[breakpointToUpdate] = config.breakpoints[configBPKey];
4122 + var elementorBreakpoints = elementorFrontend.config.breakpoints,
4123 + elementorBreakpointValues = (0, _values.default)(elementorBreakpoints);
4124 + (0, _keys.default)(config.breakpoints).forEach(function (configBPKey) {
4125 + var configBPKeyInt = (0, _parseInt2.default)(configBPKey);
4126 + var breakpointToUpdate; // The `configBPKeyInt + 1` is a BC Fix for Elementor Pro Carousels from 2.8.0-2.8.3 used with Elementor >= 2.9.0
1208 4127
1209 - // Then reset the settings in the original breakpoint key to the default values
1210 - config.breakpoints[configBPKey] = {
1211 - slidesPerView: config.slidesPerView,
1212 - slidesPerGroup: config.slidesPerGroup ? config.slidesPerGroup : 1
1213 - };
1214 - });
1215 - return config;
1216 - }
1217 - applyMotionPreferences(config) {
1218 - const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
1219 - if (!prefersReducedMotion) {
4128 + if (configBPKeyInt === elementorBreakpoints.md || configBPKeyInt + 1 === elementorBreakpoints.md) {
4129 + // This handles the mobile breakpoint. Elementor's default sm breakpoint is never actually used,
4130 + // so the mobile breakpoint (md) needs to be handled separately and set to the 0 breakpoint (xs)
4131 + breakpointToUpdate = elementorBreakpoints.xs;
4132 + } else {
4133 + // Find the index of the current config breakpoint in the Elementor Breakpoints array
4134 + var currentBPIndexInElementorBPs = elementorBreakpointValues.findIndex(function (elementorBP) {
4135 + // BC Fix for Elementor Pro Carousels from 2.8.0-2.8.3 used with Elementor >= 2.9.0
4136 + return configBPKeyInt === elementorBP || configBPKeyInt + 1 === elementorBP;
4137 + }); // For all other Swiper config breakpoints, move them one breakpoint down on the breakpoint list,
4138 + // according to the array of Elementor's global breakpoints
4139 +
4140 + breakpointToUpdate = elementorBreakpointValues[currentBPIndexInElementorBPs - 1];
4141 + }
4142 +
4143 + config.breakpoints[breakpointToUpdate] = config.breakpoints[configBPKey]; // Then reset the settings in the original breakpoint key to the default values
4144 +
4145 + config.breakpoints[configBPKey] = {
4146 + slidesPerView: config.slidesPerView,
4147 + slidesPerGroup: config.slidesPerGroup ? config.slidesPerGroup : 1
4148 + };
4149 + });
1220 4150 return config;
1221 4151 }
1222 - return Object.assign({}, config, {
1223 - speed: 0,
1224 - autoplay: false
1225 - });
1226 - }
1227 -}
1228 -exports["default"] = SwiperHandler;
4152 + }]);
4153 + return Swiper;
4154 +}();
1229 4155
4156 +exports.default = Swiper;
4157 +
1230 4158 /***/ }),
1231 4159
1232 4160 /***/ "../assets/dev/js/frontend/utils/url-actions.js":
1233 4161 /*!******************************************************!*\
@@ -1232,128 +4160,145 @@
1232 4160 /***/ "../assets/dev/js/frontend/utils/url-actions.js":
1233 4161 /*!******************************************************!*\
1234 4162 !*** ../assets/dev/js/frontend/utils/url-actions.js ***!
1235 4163 \******************************************************/
4164 +/*! unknown exports (runtime-defined) */
4165 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
4166 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
1236 4167 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1237 4168
4169 +"use strict";
1238 4170
1239 4171
1240 -Object.defineProperty(exports, "__esModule", ({
4172 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
4173 +
4174 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
4175 +
4176 +_Object$defineProperty(exports, "__esModule", {
1241 4177 value: true
1242 -}));
1243 -exports["default"] = void 0;
1244 -__webpack_require__(/*! core-js/modules/web.dom-exception.stack.js */ "../node_modules/core-js/modules/web.dom-exception.stack.js");
1245 -class _default extends elementorModules.ViewModule {
1246 - getDefaultSettings() {
1247 - return {
1248 - selectors: {
1249 - links: 'a[href^="%23elementor-action"], a[href^="#elementor-action"]'
1250 - }
1251 - };
4178 +});
4179 +
4180 +exports.default = void 0;
4181 +
4182 +var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));
4183 +
4184 +__webpack_require__(/*! core-js/modules/es6.regexp.match */ "../node_modules/core-js/modules/es6.regexp.match.js");
4185 +
4186 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
4187 +
4188 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
4189 +
4190 +var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
4191 +
4192 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
4193 +
4194 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
4195 +
4196 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
4197 +
4198 +var _default = /*#__PURE__*/function (_elementorModules$Vie) {
4199 + (0, _inherits2.default)(_default, _elementorModules$Vie);
4200 +
4201 + var _super = (0, _createSuper2.default)(_default);
4202 +
4203 + function _default() {
4204 + (0, _classCallCheck2.default)(this, _default);
4205 + return _super.apply(this, arguments);
1252 4206 }
1253 - bindEvents() {
1254 - elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), this.runLinkAction.bind(this));
1255 - }
1256 - initActions() {
1257 - this.actions = {
1258 - lightbox: async settings => {
1259 - const lightbox = await elementorFrontend.utils.lightbox;
1260 - if (settings.slideshow) {
1261 - // Handle slideshow display
1262 - lightbox.openSlideshow(settings.slideshow, settings.url);
1263 - } else {
1264 - // If the settings has an ID - the lightbox target content is an image - the ID is an attachment ID.
4207 +
4208 + (0, _createClass2.default)(_default, [{
4209 + key: "getDefaultSettings",
4210 + value: function getDefaultSettings() {
4211 + return {
4212 + selectors: {
4213 + links: 'a[href^="%23elementor-action"], a[href^="#elementor-action"]'
4214 + }
4215 + };
4216 + }
4217 + }, {
4218 + key: "bindEvents",
4219 + value: function bindEvents() {
4220 + elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), this.runLinkAction.bind(this));
4221 + }
4222 + }, {
4223 + key: "initActions",
4224 + value: function initActions() {
4225 + this.actions = {
4226 + lightbox: function lightbox(settings) {
1265 4227 if (settings.id) {
1266 - settings.type = 'image';
4228 + elementorFrontend.utils.lightbox.openSlideshow(settings.id, settings.url);
4229 + } else {
4230 + elementorFrontend.utils.lightbox.showModal(settings);
1267 4231 }
1268 - lightbox.showModal(settings);
1269 4232 }
1270 - }
1271 - };
1272 - }
1273 - addAction(name, callback) {
1274 - this.actions[name] = callback;
1275 - }
1276 - runAction(url, ...restArgs) {
1277 - url = decodeURI(url);
1278 - url = decodeURIComponent(url);
1279 - const actionMatch = url.match(/action=(.+?)&/);
1280 - if (!actionMatch) {
1281 - return;
4233 + };
1282 4234 }
1283 - const action = this.actions[actionMatch[1]];
1284 - if (!action) {
1285 - return;
4235 + }, {
4236 + key: "addAction",
4237 + value: function addAction(name, callback) {
4238 + this.actions[name] = callback;
1286 4239 }
1287 - let settings = {};
1288 - const settingsMatch = url.match(/settings=(.+)/);
1289 - if (settingsMatch) {
1290 - settings = JSON.parse(atob(settingsMatch[1]));
1291 - }
1292 - settings.previousEvent = event;
1293 - action(settings, ...restArgs);
1294 - }
1295 - runLinkAction(event) {
1296 - event.preventDefault();
1297 - this.runAction(jQuery(event.currentTarget).attr('href'), event);
1298 - }
1299 - runHashAction() {
1300 - if (!location.hash) {
1301 - return;
1302 - }
4240 + }, {
4241 + key: "runAction",
4242 + value: function runAction(url) {
4243 + url = decodeURIComponent(url);
4244 + var actionMatch = url.match(/action=(.+?)&/),
4245 + settingsMatch = url.match(/settings=(.+)/);
1303 4246
1304 - // Only if an element with this action hash exists on the page do we allow running the action.
1305 - const elementWithHash = document.querySelector(`[data-e-action-hash="${location.hash}"], a[href*="${location.hash}"]`);
1306 - if (elementWithHash) {
1307 - this.runAction(elementWithHash.getAttribute('data-e-action-hash'));
1308 - }
1309 - }
1310 - createActionHash(action, settings) {
1311 - // We need to encode the hash tag (#) here, in order to support share links for a variety of providers
1312 - return encodeURIComponent(`#elementor-action:action=${action}&settings=${btoa(JSON.stringify(settings))}`);
1313 - }
1314 - onInit() {
1315 - super.onInit();
1316 - this.initActions();
1317 - elementorFrontend.on('components:init', this.runHashAction.bind(this));
1318 - }
1319 -}
1320 -exports["default"] = _default;
4247 + if (!actionMatch) {
4248 + return;
4249 + }
1321 4250
1322 -/***/ }),
4251 + var action = this.actions[actionMatch[1]];
1323 4252
1324 -/***/ "../assets/dev/js/frontend/utils/utils.js":
1325 -/*!************************************************!*\
1326 - !*** ../assets/dev/js/frontend/utils/utils.js ***!
1327 - \************************************************/
1328 -/***/ ((__unused_webpack_module, exports) => {
4253 + if (!action) {
4254 + return;
4255 + }
1329 4256
4257 + var settings = {};
1330 4258
4259 + if (settingsMatch) {
4260 + settings = JSON.parse(atob(settingsMatch[1]));
4261 + }
1331 4262
1332 -Object.defineProperty(exports, "__esModule", ({
1333 - value: true
1334 -}));
1335 -exports.isScrollSnapActive = exports.escapeHTML = void 0;
1336 -// Escape HTML special chars to prevent XSS.
1337 -const escapeHTML = str => {
1338 - const specialChars = {
1339 - '&': '&amp;',
1340 - '<': '&lt;',
1341 - '>': '&gt;',
1342 - "'": '&#39;',
1343 - '"': '&quot;'
1344 - };
1345 - return str.replace(/[&<>'"]/g, tag => specialChars[tag] || tag);
1346 -};
4263 + for (var _len = arguments.length, restArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
4264 + restArgs[_key - 1] = arguments[_key];
4265 + }
1347 4266
1348 -// Check if Scroll-Snap is active.
1349 -exports.escapeHTML = escapeHTML;
1350 -const isScrollSnapActive = () => {
1351 - const scrollSnapStatus = elementorFrontend.isEditMode() ? elementor.settings.page.model.attributes?.scroll_snap : elementorFrontend.config.settings.page?.scroll_snap;
1352 - return 'yes' === scrollSnapStatus ? true : false;
1353 -};
1354 -exports.isScrollSnapActive = isScrollSnapActive;
4267 + action.apply(void 0, [settings].concat(restArgs));
4268 + }
4269 + }, {
4270 + key: "runLinkAction",
4271 + value: function runLinkAction(event) {
4272 + event.preventDefault();
4273 + this.runAction(jQuery(event.currentTarget).attr('href'), event);
4274 + }
4275 + }, {
4276 + key: "runHashAction",
4277 + value: function runHashAction() {
4278 + if (location.hash) {
4279 + this.runAction(location.hash);
4280 + }
4281 + }
4282 + }, {
4283 + key: "createActionHash",
4284 + value: function createActionHash(action, settings) {
4285 + // We need to encode the hash tag (#) here, in order to support share links for a variety of providers
4286 + return encodeURIComponent("#elementor-action:action=".concat(action, "&settings=").concat(btoa((0, _stringify.default)(settings))));
4287 + }
4288 + }, {
4289 + key: "onInit",
4290 + value: function onInit() {
4291 + (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "onInit", this).call(this);
4292 + this.initActions();
4293 + elementorFrontend.on('components:init', this.runHashAction.bind(this));
4294 + }
4295 + }]);
4296 + return _default;
4297 +}(elementorModules.ViewModule);
1355 4298
4299 +exports.default = _default;
4300 +
1356 4301 /***/ }),
1357 4302
1358 4303 /***/ "../assets/dev/js/frontend/utils/video-api/base-loader.js":
1359 4304 /*!****************************************************************!*\
@@ -1358,59 +4303,101 @@
1358 4303 /***/ "../assets/dev/js/frontend/utils/video-api/base-loader.js":
1359 4304 /*!****************************************************************!*\
1360 4305 !*** ../assets/dev/js/frontend/utils/video-api/base-loader.js ***!
1361 4306 \****************************************************************/
1362 -/***/ ((__unused_webpack_module, exports) => {
4307 +/*! unknown exports (runtime-defined) */
4308 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
4309 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
4310 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1363 4311
4312 +"use strict";
1364 4313
1365 4314
1366 -Object.defineProperty(exports, "__esModule", ({
4315 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
4316 +
4317 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
4318 +
4319 +_Object$defineProperty(exports, "__esModule", {
1367 4320 value: true
1368 -}));
1369 -exports["default"] = void 0;
1370 -class BaseLoader extends elementorModules.ViewModule {
1371 - getDefaultSettings() {
1372 - return {
1373 - isInserted: false,
1374 - selectors: {
1375 - firstScript: 'script:first'
1376 - }
1377 - };
4321 +});
4322 +
4323 +exports.default = void 0;
4324 +
4325 +__webpack_require__(/*! core-js/modules/es6.regexp.match */ "../node_modules/core-js/modules/es6.regexp.match.js");
4326 +
4327 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
4328 +
4329 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
4330 +
4331 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
4332 +
4333 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
4334 +
4335 +var BaseLoader = /*#__PURE__*/function (_elementorModules$Vie) {
4336 + (0, _inherits2.default)(BaseLoader, _elementorModules$Vie);
4337 +
4338 + var _super = (0, _createSuper2.default)(BaseLoader);
4339 +
4340 + function BaseLoader() {
4341 + (0, _classCallCheck2.default)(this, BaseLoader);
4342 + return _super.apply(this, arguments);
1378 4343 }
1379 - getDefaultElements() {
1380 - return {
1381 - $firstScript: jQuery(this.getSettings('selectors.firstScript'))
1382 - };
1383 - }
1384 - insertAPI() {
1385 - this.elements.$firstScript.before(jQuery('<script>', {
1386 - src: this.getApiURL()
1387 - }));
1388 - this.setSettings('isInserted', true);
1389 - }
1390 - getVideoIDFromURL(url) {
1391 - const videoIDParts = url.match(this.getURLRegex());
1392 - return videoIDParts && videoIDParts[1];
1393 - }
1394 - onApiReady(callback) {
1395 - if (!this.getSettings('isInserted')) {
1396 - this.insertAPI();
4344 +
4345 + (0, _createClass2.default)(BaseLoader, [{
4346 + key: "getDefaultSettings",
4347 + value: function getDefaultSettings() {
4348 + return {
4349 + isInserted: false,
4350 + selectors: {
4351 + firstScript: 'script:first'
4352 + }
4353 + };
1397 4354 }
1398 - if (this.isApiLoaded()) {
1399 - callback(this.getApiObject());
1400 - } else {
1401 - // If not ready check again by timeout..
1402 - setTimeout(() => {
1403 - this.onApiReady(callback);
1404 - }, 350);
4355 + }, {
4356 + key: "getDefaultElements",
4357 + value: function getDefaultElements() {
4358 + return {
4359 + $firstScript: jQuery(this.getSettings('selectors.firstScript'))
4360 + };
1405 4361 }
1406 - }
1407 - getAutoplayURL(videoURL) {
1408 - return videoURL.replace('&autoplay=0', '') + '&autoplay=1';
1409 - }
1410 -}
1411 -exports["default"] = BaseLoader;
4362 + }, {
4363 + key: "insertAPI",
4364 + value: function insertAPI() {
4365 + this.elements.$firstScript.before(jQuery('<script>', {
4366 + src: this.getApiURL()
4367 + }));
4368 + this.setSettings('isInserted', true);
4369 + }
4370 + }, {
4371 + key: "getVideoIDFromURL",
4372 + value: function getVideoIDFromURL(url) {
4373 + var videoIDParts = url.match(this.getURLRegex());
4374 + return videoIDParts && videoIDParts[1];
4375 + }
4376 + }, {
4377 + key: "onApiReady",
4378 + value: function onApiReady(callback) {
4379 + var _this = this;
1412 4380
4381 + if (!this.getSettings('isInserted')) {
4382 + this.insertAPI();
4383 + }
4384 +
4385 + if (this.isApiLoaded()) {
4386 + callback(this.getApiObject());
4387 + } else {
4388 + // If not ready check again by timeout..
4389 + setTimeout(function () {
4390 + _this.onApiReady(callback);
4391 + }, 350);
4392 + }
4393 + }
4394 + }]);
4395 + return BaseLoader;
4396 +}(elementorModules.ViewModule);
4397 +
4398 +exports.default = BaseLoader;
4399 +
1413 4400 /***/ }),
1414 4401
1415 4402 /***/ "../assets/dev/js/frontend/utils/video-api/vimeo-loader.js":
1416 4403 /*!*****************************************************************!*\
@@ -1415,39 +4402,72 @@
1415 4402 /***/ "../assets/dev/js/frontend/utils/video-api/vimeo-loader.js":
1416 4403 /*!*****************************************************************!*\
1417 4404 !*** ../assets/dev/js/frontend/utils/video-api/vimeo-loader.js ***!
1418 4405 \*****************************************************************/
4406 +/*! unknown exports (runtime-defined) */
4407 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
4408 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
1419 4409 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1420 4410
4411 +"use strict";
1421 4412
1422 4413
1423 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1424 -Object.defineProperty(exports, "__esModule", ({
4414 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
4415 +
4416 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
4417 +
4418 +_Object$defineProperty(exports, "__esModule", {
1425 4419 value: true
1426 -}));
1427 -exports["default"] = void 0;
4420 +});
4421 +
4422 +exports.default = void 0;
4423 +
4424 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
4425 +
4426 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
4427 +
4428 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
4429 +
4430 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
4431 +
1428 4432 var _baseLoader = _interopRequireDefault(__webpack_require__(/*! ./base-loader */ "../assets/dev/js/frontend/utils/video-api/base-loader.js"));
1429 -class VimeoLoader extends _baseLoader.default {
1430 - getApiURL() {
1431 - return 'https://player.vimeo.com/api/player.js';
4433 +
4434 +var VimeoLoader = /*#__PURE__*/function (_BaseLoader) {
4435 + (0, _inherits2.default)(VimeoLoader, _BaseLoader);
4436 +
4437 + var _super = (0, _createSuper2.default)(VimeoLoader);
4438 +
4439 + function VimeoLoader() {
4440 + (0, _classCallCheck2.default)(this, VimeoLoader);
4441 + return _super.apply(this, arguments);
1432 4442 }
1433 - getURLRegex() {
1434 - return /^(?:https?:\/\/)?(?:www|player\.)?(?:vimeo\.com\/)?(?:video\/|external\/)?(\d+)([^.?&#"'>]?)/;
1435 - }
1436 - isApiLoaded() {
1437 - return window.Vimeo;
1438 - }
1439 - getApiObject() {
1440 - return Vimeo;
1441 - }
1442 - getAutoplayURL(videoURL) {
1443 - // Vimeo requires the '#t=' param to be last in the URL.
1444 - const timeMatch = videoURL.match(/#t=[^&]*/);
1445 - return videoURL.replace(timeMatch[0], '') + timeMatch;
1446 - }
1447 -}
1448 -exports["default"] = VimeoLoader;
1449 4443
4444 + (0, _createClass2.default)(VimeoLoader, [{
4445 + key: "getApiURL",
4446 + value: function getApiURL() {
4447 + return 'https://player.vimeo.com/api/player.js';
4448 + }
4449 + }, {
4450 + key: "getURLRegex",
4451 + value: function getURLRegex() {
4452 + return /^(?:https?:\/\/)?(?:www|player\.)?(?:vimeo\.com\/)?(?:video\/|external\/)?(\d+)([^.?&#"'>]?)/;
4453 + }
4454 + }, {
4455 + key: "isApiLoaded",
4456 + value: function isApiLoaded() {
4457 + return window.Vimeo;
4458 + }
4459 + }, {
4460 + key: "getApiObject",
4461 + value: function getApiObject() {
4462 + return Vimeo;
4463 + }
4464 + }]);
4465 + return VimeoLoader;
4466 +}(_baseLoader.default);
4467 +
4468 +exports.default = VimeoLoader;
4469 +
1450 4470 /***/ }),
1451 4471
1452 4472 /***/ "../assets/dev/js/frontend/utils/video-api/youtube-loader.js":
1453 4473 /*!*******************************************************************!*\
@@ -1452,280 +4472,88 @@
1452 4472 /***/ "../assets/dev/js/frontend/utils/video-api/youtube-loader.js":
1453 4473 /*!*******************************************************************!*\
1454 4474 !*** ../assets/dev/js/frontend/utils/video-api/youtube-loader.js ***!
1455 4475 \*******************************************************************/
4476 +/*! unknown exports (runtime-defined) */
4477 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
4478 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
1456 4479 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1457 4480
4481 +"use strict";
1458 4482
1459 4483
1460 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1461 -Object.defineProperty(exports, "__esModule", ({
1462 - value: true
1463 -}));
1464 -exports["default"] = void 0;
1465 -var _baseLoader = _interopRequireDefault(__webpack_require__(/*! ./base-loader */ "../assets/dev/js/frontend/utils/video-api/base-loader.js"));
1466 -class YoutubeLoader extends _baseLoader.default {
1467 - getApiURL() {
1468 - return 'https://www.youtube.com/iframe_api';
1469 - }
1470 - getURLRegex() {
1471 - return /^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user|shorts)\/))([^?&"'>]+)/;
1472 - }
1473 - isApiLoaded() {
1474 - return window.YT && YT.loaded;
1475 - }
1476 - getApiObject() {
1477 - return YT;
1478 - }
1479 -}
1480 -exports["default"] = YoutubeLoader;
4484 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
1481 4485
1482 -/***/ }),
4486 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
1483 4487
1484 -/***/ "../assets/dev/js/public-path.js":
1485 -/*!***************************************!*\
1486 - !*** ../assets/dev/js/public-path.js ***!
1487 - \***************************************/
1488 -/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
4488 +_Object$defineProperty(exports, "__esModule", {
4489 + value: true
4490 +});
1489 4491
4492 +exports.default = void 0;
1490 4493
4494 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
1491 4495
1492 -/* eslint-disable camelcase */
1493 -__webpack_require__.p = elementorFrontendConfig.urls.assets + 'js/';
4496 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
1494 4497
1495 -/***/ }),
4498 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
1496 4499
1497 -/***/ "../assets/dev/js/utils/breakpoints.js":
1498 -/*!*********************************************!*\
1499 - !*** ../assets/dev/js/utils/breakpoints.js ***!
1500 - \*********************************************/
1501 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4500 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
1502 4501
4502 +var _baseLoader = _interopRequireDefault(__webpack_require__(/*! ./base-loader */ "../assets/dev/js/frontend/utils/video-api/base-loader.js"));
1503 4503
4504 +var YoutubeLoader = /*#__PURE__*/function (_BaseLoader) {
4505 + (0, _inherits2.default)(YoutubeLoader, _BaseLoader);
1504 4506
1505 -Object.defineProperty(exports, "__esModule", ({
1506 - value: true
1507 -}));
1508 -exports["default"] = void 0;
1509 -__webpack_require__(/*! core-js/modules/es.array.push.js */ "../node_modules/core-js/modules/es.array.push.js");
1510 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
1511 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
1512 -__webpack_require__(/*! core-js/modules/esnext.iterator.map.js */ "../node_modules/core-js/modules/esnext.iterator.map.js");
1513 -/**
1514 - * Breakpoints
1515 - *
1516 - * This utility class contains helper functions relating to Elementor's breakpoints system.
1517 - *
1518 - * @since 3.4.0
1519 - */
1520 -class Breakpoints extends elementorModules.Module {
1521 - constructor(responsiveConfig) {
1522 - super();
4507 + var _super = (0, _createSuper2.default)(YoutubeLoader);
1523 4508
1524 - // The passed config is either `elementor.config.responsive` or `elementorFrontend.config.responsive`
1525 - this.responsiveConfig = responsiveConfig;
4509 + function YoutubeLoader() {
4510 + (0, _classCallCheck2.default)(this, YoutubeLoader);
4511 + return _super.apply(this, arguments);
1526 4512 }
1527 4513
1528 - /**
1529 - * Get Active Breakpoints List
1530 - *
1531 - * Returns a flat array containing the active breakpoints/devices. By default, it returns the li
1532 - * the list ordered from smallest to largest breakpoint. If `true` is passed as a parameter, it reverses the order.
1533 - *
1534 - * @since 3.4.0
1535 - *
1536 - * @param {Object} args
1537 - */
1538 - getActiveBreakpointsList(args = {}) {
1539 - const defaultArgs = {
1540 - largeToSmall: false,
1541 - withDesktop: false
1542 - };
1543 - args = {
1544 - ...defaultArgs,
1545 - ...args
1546 - };
1547 - const breakpointKeys = Object.keys(this.responsiveConfig.activeBreakpoints);
1548 - if (args.withDesktop) {
1549 - // If there is an active 'widescreen' breakpoint, insert the artificial 'desktop' device below it.
1550 - const widescreenIndex = breakpointKeys.indexOf('widescreen'),
1551 - indexToInsertDesktopDevice = -1 === widescreenIndex ? breakpointKeys.length : breakpointKeys.length - 1;
1552 - breakpointKeys.splice(indexToInsertDesktopDevice, 0, 'desktop');
4514 + (0, _createClass2.default)(YoutubeLoader, [{
4515 + key: "getApiURL",
4516 + value: function getApiURL() {
4517 + return 'https://www.youtube.com/iframe_api';
1553 4518 }
1554 - if (args.largeToSmall) {
1555 - breakpointKeys.reverse();
4519 + }, {
4520 + key: "getURLRegex",
4521 + value: function getURLRegex() {
4522 + return /^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user)\/))([^?&"'>]+)/;
1556 4523 }
1557 - return breakpointKeys;
1558 - }
1559 -
1560 - /**
1561 - * Get Active Breakpoint Values
1562 - *
1563 - * Returns a flat array containing the list of active breakpoint values, from smallest to largest.
1564 - *
1565 - * @since 3.4.0
1566 - */
1567 - getBreakpointValues() {
1568 - const {
1569 - activeBreakpoints
1570 - } = this.responsiveConfig,
1571 - breakpointValues = [];
1572 - Object.values(activeBreakpoints).forEach(breakpointConfig => {
1573 - breakpointValues.push(breakpointConfig.value);
1574 - });
1575 - return breakpointValues;
1576 - }
1577 -
1578 - /**
1579 - * Get Desktop Previous Device Key
1580 - *
1581 - * Returns the key of the device directly under desktop (can be 'tablet', 'tablet_extra', 'laptop').
1582 - *
1583 - * @since 3.4.0
1584 - *
1585 - * @return {string} device key
1586 - */
1587 - getDesktopPreviousDeviceKey() {
1588 - let desktopPreviousDevice = '';
1589 - const {
1590 - activeBreakpoints
1591 - } = this.responsiveConfig,
1592 - breakpointKeys = Object.keys(activeBreakpoints),
1593 - numOfDevices = breakpointKeys.length;
1594 - if ('min' === activeBreakpoints[breakpointKeys[numOfDevices - 1]].direction) {
1595 - // If the widescreen breakpoint is active, the device that's previous to desktop is the last one before
1596 - // widescreen.
1597 - desktopPreviousDevice = breakpointKeys[numOfDevices - 2];
1598 - } else {
1599 - // If the widescreen breakpoint isn't active, we just take the last device returned by the config.
1600 - desktopPreviousDevice = breakpointKeys[numOfDevices - 1];
4524 + }, {
4525 + key: "isApiLoaded",
4526 + value: function isApiLoaded() {
4527 + return window.YT && YT.loaded;
1601 4528 }
1602 - return desktopPreviousDevice;
1603 - }
1604 -
1605 - /**
1606 - * Get Device Minimum Breakpoint
1607 - *
1608 - * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
1609 - * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
1610 - * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
1611 - *
1612 - * @since 3.4.0
1613 - *
1614 - * @return {number|*} minimum breakpoint
1615 - */
1616 - getDesktopMinPoint() {
1617 - const {
1618 - activeBreakpoints
1619 - } = this.responsiveConfig,
1620 - desktopPreviousDevice = this.getDesktopPreviousDeviceKey();
1621 - return activeBreakpoints[desktopPreviousDevice].value + 1;
1622 - }
1623 -
1624 - /**
1625 - * Get Device Minimum Breakpoint
1626 - *
1627 - * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
1628 - * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
1629 - * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
1630 - *
1631 - * @since 3.4.0
1632 - *
1633 - * @param {string} device
1634 - * @return {number|*} minimum breakpoint
1635 - */
1636 - getDeviceMinBreakpoint(device) {
1637 - if ('desktop' === device) {
1638 - return this.getDesktopMinPoint();
4529 + }, {
4530 + key: "getApiObject",
4531 + value: function getApiObject() {
4532 + return YT;
1639 4533 }
1640 - const {
1641 - activeBreakpoints
1642 - } = this.responsiveConfig,
1643 - breakpointNames = Object.keys(activeBreakpoints);
1644 - let minBreakpoint;
1645 - if (breakpointNames[0] === device) {
1646 - // For the lowest breakpoint, the min point is always 320.
1647 - minBreakpoint = 320;
1648 - } else if ('widescreen' === device) {
1649 - // Widescreen only has a minimum point. In this case, the breakpoint
1650 - // value in the Breakpoints config is itself the device min point.
1651 - if (activeBreakpoints[device]) {
1652 - minBreakpoint = activeBreakpoints[device].value;
1653 - } else {
1654 - // If the widescreen breakpoint does not exist in the active breakpoints config (for example, in the
1655 - // case this method runs as the breakpoint is being added), get the value from the full config.
1656 - minBreakpoint = this.responsiveConfig.breakpoints.widescreen;
1657 - }
1658 - } else {
1659 - const deviceNameIndex = breakpointNames.indexOf(device),
1660 - previousIndex = deviceNameIndex - 1;
1661 - minBreakpoint = activeBreakpoints[breakpointNames[previousIndex]].value + 1;
1662 - }
1663 - return minBreakpoint;
1664 - }
4534 + }]);
4535 + return YoutubeLoader;
4536 +}(_baseLoader.default);
1665 4537
1666 - /**
1667 - * Get Active Match Regex
1668 - *
1669 - * Returns a regular expression containing all active breakpoints prefixed with an underscore.
1670 - *
1671 - * @return {RegExp} Active Match Regex
1672 - */
1673 - getActiveMatchRegex() {
1674 - return new RegExp(this.getActiveBreakpointsList().map(device => '_' + device).join('|') + '$');
1675 - }
1676 -}
1677 -exports["default"] = Breakpoints;
4538 +exports.default = YoutubeLoader;
1678 4539
1679 4540 /***/ }),
1680 4541
1681 -/***/ "../assets/dev/js/utils/events.js":
1682 -/*!****************************************!*\
1683 - !*** ../assets/dev/js/utils/events.js ***!
1684 - \****************************************/
1685 -/***/ ((__unused_webpack_module, exports) => {
4542 +/***/ "../assets/dev/js/public-path.js":
4543 +/*!***************************************!*\
4544 + !*** ../assets/dev/js/public-path.js ***!
4545 + \***************************************/
4546 +/*! unknown exports (runtime-defined) */
4547 +/*! runtime requirements: __webpack_require__.p, __webpack_require__.* */
4548 +/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
1686 4549
4550 +"use strict";
1687 4551
1688 4552
1689 -Object.defineProperty(exports, "__esModule", ({
1690 - value: true
1691 -}));
1692 -exports["default"] = exports.Events = void 0;
1693 -class Events {
1694 - /**
1695 - * Dispatch an Elementor event.
1696 - *
1697 - * Will dispatch both native event & jQuery event (as BC).
1698 - * By default, `bcEvent` is `null`.
1699 - *
1700 - * @param {Object} context - The context that will dispatch the event.
1701 - * @param {string} event - Event to dispatch.
1702 - * @param {*} data - Data to pass to the event, default to `null`.
1703 - * @param {string|null} bcEvent - BC event to dispatch, default to `null`.
1704 - *
1705 - * @return {void}
1706 - */
1707 - static dispatch(context, event, data = null, bcEvent = null) {
1708 - // Make sure to use the native context if it's a jQuery instance.
1709 - context = context instanceof jQuery ? context[0] : context;
4553 +/* eslint-disable camelcase */
4554 +__webpack_require__.p = elementorFrontendConfig.urls.assets + 'js/';
1710 4555
1711 - // Dispatch the BC event only if exists.
1712 - if (bcEvent) {
1713 - context.dispatchEvent(new CustomEvent(bcEvent, {
1714 - detail: data
1715 - }));
1716 - }
1717 -
1718 - // jQuery's `.on()` listens also to native custom events, so there is no need
1719 - // to dispatch also a jQuery event.
1720 - context.dispatchEvent(new CustomEvent(event, {
1721 - detail: data
1722 - }));
1723 - }
1724 -}
1725 -exports.Events = Events;
1726 -var _default = exports["default"] = Events;
1727 -
1728 4556 /***/ }),
1729 4557
1730 4558 /***/ "../assets/dev/js/utils/hooks.js":
1731 4559 /*!***************************************!*\
@@ -1730,48 +4558,57 @@
1730 4558 /***/ "../assets/dev/js/utils/hooks.js":
1731 4559 /*!***************************************!*\
1732 4560 !*** ../assets/dev/js/utils/hooks.js ***!
1733 4561 \***************************************/
4562 +/*! unknown exports (runtime-defined) */
4563 +/*! runtime requirements: module, __webpack_require__ */
4564 +/*! CommonJS bailout: module.exports is used directly at 285:0-14 */
1734 4565 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1735 4566
4567 +"use strict";
1736 4568
1737 -
1738 4569 /**
1739 4570 * Handles managing all events for whatever you plug it into. Priorities for hooks are based on lowest to highest in
1740 4571 * that, lowest priority hooks are fired first.
1741 4572 */
1742 -__webpack_require__(/*! core-js/modules/es.array.push.js */ "../node_modules/core-js/modules/es.array.push.js");
1743 -var EventManager = function () {
4573 +
4574 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
4575 +
4576 +var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));
4577 +
4578 +var EventManager = function EventManager() {
1744 4579 var slice = Array.prototype.slice,
1745 - MethodsAvailable;
1746 -
4580 + MethodsAvailable;
1747 4581 /**
1748 4582 * Contains the hooks that get registered with this EventManager. The array for storage utilizes a "flat"
1749 4583 * object literal such that looking up the hook utilizes the native object literal hash.
1750 4584 */
4585 +
1751 4586 var STORAGE = {
1752 4587 actions: {},
1753 4588 filters: {}
1754 4589 };
1755 -
1756 4590 /**
1757 4591 * Removes the specified hook by resetting the value of it.
1758 4592 *
1759 - * @param {string} type Type of hook, either 'actions' or 'filters'
1760 - * @param {Function} hook The hook (namespace.identifier) to remove
1761 - * @param {Function} callback
1762 - * @param {*} context
4593 + * @param type Type of hook, either 'actions' or 'filters'
4594 + * @param hook The hook (namespace.identifier) to remove
4595 + *
1763 4596 * @private
1764 4597 */
4598 +
1765 4599 function _removeHook(type, hook, callback, context) {
1766 4600 var handlers, handler, i;
4601 +
1767 4602 if (!STORAGE[type][hook]) {
1768 4603 return;
1769 4604 }
4605 +
1770 4606 if (!callback) {
1771 4607 STORAGE[type][hook] = [];
1772 4608 } else {
1773 4609 handlers = STORAGE[type][hook];
4610 +
1774 4611 if (!context) {
1775 4612 for (i = handlers.length; i--;) {
1776 4613 if (handlers[i].callback === callback) {
1777 4614 handlers.splice(i, 1);
@@ -1779,8 +4616,9 @@
1779 4616 }
1780 4617 } else {
1781 4618 for (i = handlers.length; i--;) {
1782 4619 handler = handlers[i];
4620 +
1783 4621 if (handler.callback === callback && handler.context === context) {
1784 4622 handlers.splice(i, 1);
1785 4623 }
1786 4624 }
@@ -1786,49 +4624,55 @@
1786 4624 }
1787 4625 }
1788 4626 }
1789 4627 }
1790 -
1791 4628 /**
1792 4629 * Use an insert sort for keeping our hooks organized based on priority. This function is ridiculously faster
1793 4630 * than bubble sort, etc: http://jsperf.com/javascript-sort
1794 4631 *
1795 - * @param {Array<*>} hooks The custom array containing all of the appropriate hooks to perform an insert sort on.
4632 + * @param hooks The custom array containing all of the appropriate hooks to perform an insert sort on.
1796 4633 * @private
1797 4634 */
4635 +
4636 +
1798 4637 function _hookInsertSort(hooks) {
1799 4638 var tmpHook, j, prevHook;
4639 +
1800 4640 for (var i = 1, len = hooks.length; i < len; i++) {
1801 4641 tmpHook = hooks[i];
1802 4642 j = i;
4643 +
1803 4644 while ((prevHook = hooks[j - 1]) && prevHook.priority > tmpHook.priority) {
1804 4645 hooks[j] = hooks[j - 1];
1805 4646 --j;
1806 4647 }
4648 +
1807 4649 hooks[j] = tmpHook;
1808 4650 }
4651 +
1809 4652 return hooks;
1810 4653 }
1811 -
1812 4654 /**
1813 4655 * Adds the hook to the appropriate storage container
1814 4656 *
1815 - * @param {string} type 'actions' or 'filters'
1816 - * @param {Array<*>} hook The hook (namespace.identifier) to add to our event manager
1817 - * @param {Function} callback The function that will be called when the hook is executed.
1818 - * @param {number} priority The priority of this hook. Must be an integer.
1819 - * @param {*} [context] A value to be used for this
4657 + * @param type 'actions' or 'filters'
4658 + * @param hook The hook (namespace.identifier) to add to our event manager
4659 + * @param callback The function that will be called when the hook is executed.
4660 + * @param priority The priority of this hook. Must be an integer.
4661 + * @param [context] A value to be used for this
1820 4662 * @private
1821 4663 */
4664 +
4665 +
1822 4666 function _addHook(type, hook, callback, priority, context) {
1823 4667 var hookObject = {
1824 - callback,
1825 - priority,
1826 - context
1827 - };
4668 + callback: callback,
4669 + priority: priority,
4670 + context: context
4671 + }; // Utilize 'prop itself' : http://jsperf.com/hasownproperty-vs-in-vs-undefined/19
1828 4672
1829 - // Utilize 'prop itself' : http://jsperf.com/hasownproperty-vs-in-vs-undefined/19
1830 4673 var hooks = STORAGE[type][hook];
4674 +
1831 4675 if (hooks) {
1832 4676 // TEMP FIX BUG
1833 4677 var hasSameCallback = false;
1834 4678 jQuery.each(hooks, function () {
@@ -1836,37 +4680,43 @@
1836 4680 hasSameCallback = true;
1837 4681 return false;
1838 4682 }
1839 4683 });
4684 +
1840 4685 if (hasSameCallback) {
1841 4686 return;
1842 - }
1843 - // END TEMP FIX BUG
4687 + } // END TEMP FIX BUG
1844 4688
4689 +
1845 4690 hooks.push(hookObject);
1846 4691 hooks = _hookInsertSort(hooks);
1847 4692 } else {
1848 4693 hooks = [hookObject];
1849 4694 }
4695 +
1850 4696 STORAGE[type][hook] = hooks;
1851 4697 }
1852 -
1853 4698 /**
1854 4699 * Runs the specified hook. If it is an action, the value is not modified but if it is a filter, it is.
1855 4700 *
1856 - * @param {string} type 'actions' or 'filters'
1857 - * @param {*} hook The hook ( namespace.identifier ) to be ran.
1858 - * @param {Array<*>} args Arguments to pass to the action/filter. If it's a filter, args is actually a single parameter.
4701 + * @param type 'actions' or 'filters'
4702 + * @param hook The hook ( namespace.identifier ) to be ran.
4703 + * @param args Arguments to pass to the action/filter. If it's a filter, args is actually a single parameter.
1859 4704 * @private
1860 4705 */
4706 +
4707 +
1861 4708 function _runHook(type, hook, args) {
1862 4709 var handlers = STORAGE[type][hook],
1863 - i,
1864 - len;
4710 + i,
4711 + len;
4712 +
1865 4713 if (!handlers) {
1866 4714 return 'filters' === type ? args[0] : false;
1867 4715 }
4716 +
1868 4717 len = handlers.length;
4718 +
1869 4719 if ('filters' === type) {
1870 4720 for (i = 0; i < len; i++) {
1871 4721 args[0] = handlers[i].callback.apply(handlers[i].context, args);
1872 4722 }
@@ -1874,112 +4724,132 @@
1874 4724 for (i = 0; i < len; i++) {
1875 4725 handlers[i].callback.apply(handlers[i].context, args);
1876 4726 }
1877 4727 }
4728 +
1878 4729 return 'filters' === type ? args[0] : true;
1879 4730 }
1880 -
1881 4731 /**
1882 4732 * Adds an action to the event manager.
1883 4733 *
1884 - * @param {string} action Must contain namespace.identifier
1885 - * @param {Function} callback Must be a valid callback function before this action is added
1886 - * @param {number} [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
1887 - * @param {*} [context] Supply a value to be used for this
4734 + * @param action Must contain namespace.identifier
4735 + * @param callback Must be a valid callback function before this action is added
4736 + * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
4737 + * @param [context] Supply a value to be used for this
1888 4738 */
4739 +
4740 +
1889 4741 function addAction(action, callback, priority, context) {
1890 4742 if ('string' === typeof action && 'function' === typeof callback) {
1891 - priority = parseInt(priority || 10, 10);
4743 + priority = (0, _parseInt2.default)(priority || 10, 10);
4744 +
1892 4745 _addHook('actions', action, callback, priority, context);
1893 4746 }
4747 +
1894 4748 return MethodsAvailable;
1895 4749 }
1896 -
1897 4750 /**
1898 4751 * Performs an action if it exists. You can pass as many arguments as you want to this function; the only rule is
1899 4752 * that the first argument must always be the action.
1900 4753 */
1901 - function doAction(/* Action, arg1, arg2, ... */
1902 - ) {
4754 +
4755 +
4756 + function doAction()
4757 + /* action, arg1, arg2, ... */
4758 + {
1903 4759 var args = slice.call(arguments);
1904 4760 var action = args.shift();
4761 +
1905 4762 if ('string' === typeof action) {
1906 4763 _runHook('actions', action, args);
1907 4764 }
4765 +
1908 4766 return MethodsAvailable;
1909 4767 }
1910 -
1911 4768 /**
1912 4769 * Removes the specified action if it contains a namespace.identifier & exists.
1913 4770 *
1914 - * @param {string} action The action to remove
1915 - * @param {Function} [callback] Callback function to remove
4771 + * @param action The action to remove
4772 + * @param [callback] Callback function to remove
1916 4773 */
4774 +
4775 +
1917 4776 function removeAction(action, callback) {
1918 4777 if ('string' === typeof action) {
1919 4778 _removeHook('actions', action, callback);
1920 4779 }
4780 +
1921 4781 return MethodsAvailable;
1922 4782 }
1923 -
1924 4783 /**
1925 4784 * Adds a filter to the event manager.
1926 4785 *
1927 - * @param {string} filter Must contain namespace.identifier
1928 - * @param {Function} callback Must be a valid callback function before this action is added
1929 - * @param {number} [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
1930 - * @param {*} [context] Supply a value to be used for this
4786 + * @param filter Must contain namespace.identifier
4787 + * @param callback Must be a valid callback function before this action is added
4788 + * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
4789 + * @param [context] Supply a value to be used for this
1931 4790 */
4791 +
4792 +
1932 4793 function addFilter(filter, callback, priority, context) {
1933 4794 if ('string' === typeof filter && 'function' === typeof callback) {
1934 - priority = parseInt(priority || 10, 10);
4795 + priority = (0, _parseInt2.default)(priority || 10, 10);
4796 +
1935 4797 _addHook('filters', filter, callback, priority, context);
1936 4798 }
4799 +
1937 4800 return MethodsAvailable;
1938 4801 }
1939 -
1940 4802 /**
1941 4803 * Performs a filter if it exists. You should only ever pass 1 argument to be filtered. The only rule is that
1942 4804 * the first argument must always be the filter.
1943 4805 */
1944 - function applyFilters(/* Filter, filtered arg, arg2, ... */
1945 - ) {
4806 +
4807 +
4808 + function applyFilters()
4809 + /* filter, filtered arg, arg2, ... */
4810 + {
1946 4811 var args = slice.call(arguments);
1947 4812 var filter = args.shift();
4813 +
1948 4814 if ('string' === typeof filter) {
1949 4815 return _runHook('filters', filter, args);
1950 4816 }
4817 +
1951 4818 return MethodsAvailable;
1952 4819 }
1953 -
1954 4820 /**
1955 4821 * Removes the specified filter if it contains a namespace.identifier & exists.
1956 4822 *
1957 - * @param {string} filter The action to remove
1958 - * @param {Function} [callback] Callback function to remove
4823 + * @param filter The action to remove
4824 + * @param [callback] Callback function to remove
1959 4825 */
4826 +
4827 +
1960 4828 function removeFilter(filter, callback) {
1961 4829 if ('string' === typeof filter) {
1962 4830 _removeHook('filters', filter, callback);
1963 4831 }
4832 +
1964 4833 return MethodsAvailable;
1965 4834 }
1966 -
1967 4835 /**
1968 4836 * Maintain a reference to the object scope so our public methods never get confusing.
1969 4837 */
4838 +
4839 +
1970 4840 MethodsAvailable = {
1971 - removeFilter,
1972 - applyFilters,
1973 - addFilter,
1974 - removeAction,
1975 - doAction,
1976 - addAction
1977 - };
4841 + removeFilter: removeFilter,
4842 + applyFilters: applyFilters,
4843 + addFilter: addFilter,
4844 + removeAction: removeAction,
4845 + doAction: doAction,
4846 + addAction: addAction
4847 + }; // return all of the publicly available methods
1978 4848
1979 - // Return all of the publicly available methods
1980 4849 return MethodsAvailable;
1981 4850 };
4851 +
1982 4852 module.exports = EventManager;
1983 4853
1984 4854 /***/ }),
1985 4855
@@ -1986,55 +4856,36 @@
1986 4856 /***/ "../core/common/assets/js/utils/environment.js":
1987 4857 /*!*****************************************************!*\
1988 4858 !*** ../core/common/assets/js/utils/environment.js ***!
1989 4859 \*****************************************************/
1990 -/***/ ((__unused_webpack_module, exports) => {
4860 +/*! unknown exports (runtime-defined) */
4861 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
4862 +/*! CommonJS bailout: exports is used directly at 5:23-30 */
4863 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1991 4864
4865 +"use strict";
1992 4866
1993 4867
1994 -Object.defineProperty(exports, "__esModule", ({
4868 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
4869 +
4870 +_Object$defineProperty(exports, "__esModule", {
1995 4871 value: true
1996 -}));
1997 -exports["default"] = void 0;
1998 -const matchUserAgent = UserAgentStr => {
1999 - return userAgent.indexOf(UserAgentStr) >= 0;
2000 - },
2001 - userAgent = navigator.userAgent,
2002 - // Solution influenced by https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
4872 +});
2003 4873
2004 - // Opera 8.0+
2005 - isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(' OPR/'),
2006 - // Firefox 1.0+
2007 - isFirefox = matchUserAgent('Firefox'),
2008 - // Safari 3.0+ "[object HTMLElementConstructor]"
2009 - isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || (p => {
2010 - return '[object SafariRemoteNotification]' === p.toString();
2011 - })(!window.safari || typeof safari !== 'undefined' && safari.pushNotification),
2012 - // Internet Explorer 6-11
2013 - isIE = /Trident|MSIE/.test(userAgent) && (/* @cc_on!@*/ false || !!document.documentMode),
2014 - // Edge 20+
2015 - isEdge = !isIE && !!window.StyleMedia || matchUserAgent('Edg'),
2016 - // Google Chrome (Not accurate)
2017 - isChrome = !!window.chrome && matchUserAgent('Chrome') && !(isEdge || isOpera),
2018 - // Blink engine
2019 - isBlink = matchUserAgent('Chrome') && !!window.CSS,
2020 - // Apple Webkit engine
2021 - isAppleWebkit = matchUserAgent('AppleWebKit') && !isBlink,
2022 - isTouchDevice = 'ontouchstart' in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0,
2023 - environment = {
2024 - isTouchDevice,
2025 - appleWebkit: isAppleWebkit,
2026 - blink: isBlink,
2027 - chrome: isChrome,
2028 - edge: isEdge,
2029 - firefox: isFirefox,
2030 - ie: isIE,
2031 - mac: matchUserAgent('Macintosh'),
2032 - opera: isOpera,
2033 - safari: isSafari,
2034 - webkit: matchUserAgent('AppleWebKit')
2035 - };
2036 -var _default = exports["default"] = environment;
4874 +exports.default = void 0;
4875 +var userAgent = navigator.userAgent,
4876 + environment = {
4877 + webkit: -1 !== userAgent.indexOf('AppleWebKit'),
4878 + firefox: -1 !== userAgent.indexOf('Firefox'),
4879 + ie: /Trident|MSIE/.test(userAgent),
4880 + edge: -1 !== userAgent.indexOf('Edg'),
4881 + mac: -1 !== userAgent.indexOf('Macintosh'),
4882 + safari: /^((?!chrome|android).)*safari/i.test(userAgent),
4883 + opera: -1 !== userAgent.indexOf('OPR')
4884 +};
4885 +environment.chrome = -1 !== userAgent.indexOf('Chrome') && !environment.opera && !environment.edge;
4886 +var _default = environment;
4887 +exports.default = _default;
2037 4888
2038 4889 /***/ }),
2039 4890
2040 4891 /***/ "../core/common/assets/js/utils/storage.js":
@@ -2040,404 +4891,1105 @@
2040 4891 /***/ "../core/common/assets/js/utils/storage.js":
2041 4892 /*!*************************************************!*\
2042 4893 !*** ../core/common/assets/js/utils/storage.js ***!
2043 4894 \*************************************************/
4895 +/*! unknown exports (runtime-defined) */
4896 +/*! runtime requirements: __webpack_exports__, __webpack_require__ */
4897 +/*! CommonJS bailout: exports is used directly at 7:23-30 */
2044 4898 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2045 4899
4900 +"use strict";
2046 4901
2047 4902
2048 -Object.defineProperty(exports, "__esModule", ({
4903 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
4904 +
4905 +var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
4906 +
4907 +_Object$defineProperty(exports, "__esModule", {
2049 4908 value: true
2050 -}));
2051 -exports["default"] = void 0;
2052 -__webpack_require__(/*! core-js/modules/esnext.iterator.constructor.js */ "../node_modules/core-js/modules/esnext.iterator.constructor.js");
2053 -__webpack_require__(/*! core-js/modules/esnext.iterator.for-each.js */ "../node_modules/core-js/modules/esnext.iterator.for-each.js");
2054 -class _default extends elementorModules.Module {
2055 - get(key, options) {
2056 - options = options || {};
2057 - let storage;
2058 - try {
2059 - storage = options.session ? sessionStorage : localStorage;
2060 - } catch (e) {
2061 - return key ? undefined : {};
4909 +});
4910 +
4911 +exports.default = void 0;
4912 +
4913 +var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));
4914 +
4915 +var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
4916 +
4917 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
4918 +
4919 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
4920 +
4921 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
4922 +
4923 +var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
4924 +
4925 +var _default = /*#__PURE__*/function (_elementorModules$Mod) {
4926 + (0, _inherits2.default)(_default, _elementorModules$Mod);
4927 +
4928 + var _super = (0, _createSuper2.default)(_default);
4929 +
4930 + function _default() {
4931 + (0, _classCallCheck2.default)(this, _default);
4932 + return _super.apply(this, arguments);
4933 + }
4934 +
4935 + (0, _createClass2.default)(_default, [{
4936 + key: "get",
4937 + value: function get(key, options) {
4938 + options = options || {};
4939 + var storage;
4940 +
4941 + try {
4942 + storage = options.session ? sessionStorage : localStorage;
4943 + } catch (e) {
4944 + return key ? undefined : {};
4945 + }
4946 +
4947 + var elementorStorage = storage.getItem('elementor');
4948 +
4949 + if (elementorStorage) {
4950 + elementorStorage = JSON.parse(elementorStorage);
4951 + } else {
4952 + elementorStorage = {};
4953 + }
4954 +
4955 + if (!elementorStorage.__expiration) {
4956 + elementorStorage.__expiration = {};
4957 + }
4958 +
4959 + var expiration = elementorStorage.__expiration;
4960 + var expirationToCheck = [];
4961 +
4962 + if (key) {
4963 + if (expiration[key]) {
4964 + expirationToCheck = [key];
4965 + }
4966 + } else {
4967 + expirationToCheck = (0, _keys.default)(expiration);
4968 + }
4969 +
4970 + var entryExpired = false;
4971 + expirationToCheck.forEach(function (expirationKey) {
4972 + if (new Date(expiration[expirationKey]) < new Date()) {
4973 + delete elementorStorage[expirationKey];
4974 + delete expiration[expirationKey];
4975 + entryExpired = true;
4976 + }
4977 + });
4978 +
4979 + if (entryExpired) {
4980 + this.save(elementorStorage, options.session);
4981 + }
4982 +
4983 + if (key) {
4984 + return elementorStorage[key];
4985 + }
4986 +
4987 + return elementorStorage;
2062 4988 }
2063 - let elementorStorage = storage.getItem('elementor');
2064 - if (elementorStorage) {
2065 - elementorStorage = JSON.parse(elementorStorage);
2066 - } else {
2067 - elementorStorage = {};
4989 + }, {
4990 + key: "set",
4991 + value: function set(key, value, options) {
4992 + options = options || {};
4993 + var elementorStorage = this.get(null, options);
4994 + elementorStorage[key] = value;
4995 +
4996 + if (options.lifetimeInSeconds) {
4997 + var date = new Date();
4998 + date.setTime(date.getTime() + options.lifetimeInSeconds * 1000);
4999 + elementorStorage.__expiration[key] = date.getTime();
5000 + }
5001 +
5002 + this.save(elementorStorage, options.session);
2068 5003 }
2069 - if (!elementorStorage.__expiration) {
2070 - elementorStorage.__expiration = {};
5004 + }, {
5005 + key: "save",
5006 + value: function save(object, session) {
5007 + var storage;
5008 +
5009 + try {
5010 + storage = session ? sessionStorage : localStorage;
5011 + } catch (e) {
5012 + return;
5013 + }
5014 +
5015 + storage.setItem('elementor', (0, _stringify.default)(object));
2071 5016 }
2072 - const expiration = elementorStorage.__expiration;
2073 - let expirationToCheck = [];
2074 - if (key) {
2075 - if (expiration[key]) {
2076 - expirationToCheck = [key];
5017 + }]);
5018 + return _default;
5019 +}(elementorModules.Module);
5020 +
5021 +exports.default = _default;
5022 +
5023 +/***/ }),
5024 +
5025 +/***/ "../node_modules/core-js/modules/es6.array.find-index.js":
5026 +/*!***************************************************************!*\
5027 + !*** ../node_modules/core-js/modules/es6.array.find-index.js ***!
5028 + \***************************************************************/
5029 +/*! unknown exports (runtime-defined) */
5030 +/*! runtime requirements: __webpack_require__ */
5031 +/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
5032 +
5033 +"use strict";
5034 +
5035 +// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
5036 +var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
5037 +var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(6);
5038 +var KEY = 'findIndex';
5039 +var forced = true;
5040 +// Shouldn't skip holes
5041 +if (KEY in []) Array(1)[KEY](function () { forced = false; });
5042 +$export($export.P + $export.F * forced, 'Array', {
5043 + findIndex: function findIndex(callbackfn /* , that = undefined */) {
5044 + return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
5045 + }
5046 +});
5047 +__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);
5048 +
5049 +
5050 +/***/ }),
5051 +
5052 +/***/ "../node_modules/core-js/modules/es6.regexp.match.js":
5053 +/*!***********************************************************!*\
5054 + !*** ../node_modules/core-js/modules/es6.regexp.match.js ***!
5055 + \***********************************************************/
5056 +/*! unknown exports (runtime-defined) */
5057 +/*! runtime requirements: __webpack_require__ */
5058 +/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
5059 +
5060 +"use strict";
5061 +
5062 +
5063 +var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
5064 +var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
5065 +var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
5066 +var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
5067 +
5068 +// @@match logic
5069 +__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('match', 1, function (defined, MATCH, $match, maybeCallNative) {
5070 + return [
5071 + // `String.prototype.match` method
5072 + // https://tc39.github.io/ecma262/#sec-string.prototype.match
5073 + function match(regexp) {
5074 + var O = defined(this);
5075 + var fn = regexp == undefined ? undefined : regexp[MATCH];
5076 + return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
5077 + },
5078 + // `RegExp.prototype[@@match]` method
5079 + // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
5080 + function (regexp) {
5081 + var res = maybeCallNative($match, regexp, this);
5082 + if (res.done) return res.value;
5083 + var rx = anObject(regexp);
5084 + var S = String(this);
5085 + if (!rx.global) return regExpExec(rx, S);
5086 + var fullUnicode = rx.unicode;
5087 + rx.lastIndex = 0;
5088 + var A = [];
5089 + var n = 0;
5090 + var result;
5091 + while ((result = regExpExec(rx, S)) !== null) {
5092 + var matchStr = String(result[0]);
5093 + A[n] = matchStr;
5094 + if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
5095 + n++;
2077 5096 }
2078 - } else {
2079 - expirationToCheck = Object.keys(expiration);
5097 + return n === 0 ? null : A;
2080 5098 }
2081 - let entryExpired = false;
2082 - expirationToCheck.forEach(expirationKey => {
2083 - if (new Date(expiration[expirationKey]) < new Date()) {
2084 - delete elementorStorage[expirationKey];
2085 - delete expiration[expirationKey];
2086 - entryExpired = true;
5099 + ];
5100 +});
5101 +
5102 +
5103 +/***/ }),
5104 +
5105 +/***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
5106 +/*!*************************************************************!*\
5107 + !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
5108 + \*************************************************************/
5109 +/*! unknown exports (runtime-defined) */
5110 +/*! runtime requirements: __webpack_require__ */
5111 +/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
5112 +
5113 +"use strict";
5114 +
5115 +
5116 +var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
5117 +var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
5118 +var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
5119 +var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
5120 +var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
5121 +var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
5122 +var max = Math.max;
5123 +var min = Math.min;
5124 +var floor = Math.floor;
5125 +var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
5126 +var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;
5127 +
5128 +var maybeToString = function (it) {
5129 + return it === undefined ? it : String(it);
5130 +};
5131 +
5132 +// @@replace logic
5133 +__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
5134 + return [
5135 + // `String.prototype.replace` method
5136 + // https://tc39.github.io/ecma262/#sec-string.prototype.replace
5137 + function replace(searchValue, replaceValue) {
5138 + var O = defined(this);
5139 + var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
5140 + return fn !== undefined
5141 + ? fn.call(searchValue, O, replaceValue)
5142 + : $replace.call(String(O), searchValue, replaceValue);
5143 + },
5144 + // `RegExp.prototype[@@replace]` method
5145 + // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
5146 + function (regexp, replaceValue) {
5147 + var res = maybeCallNative($replace, regexp, this, replaceValue);
5148 + if (res.done) return res.value;
5149 +
5150 + var rx = anObject(regexp);
5151 + var S = String(this);
5152 + var functionalReplace = typeof replaceValue === 'function';
5153 + if (!functionalReplace) replaceValue = String(replaceValue);
5154 + var global = rx.global;
5155 + if (global) {
5156 + var fullUnicode = rx.unicode;
5157 + rx.lastIndex = 0;
2087 5158 }
2088 - });
2089 - if (entryExpired) {
2090 - this.save(elementorStorage, options.session);
5159 + var results = [];
5160 + while (true) {
5161 + var result = regExpExec(rx, S);
5162 + if (result === null) break;
5163 + results.push(result);
5164 + if (!global) break;
5165 + var matchStr = String(result[0]);
5166 + if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
5167 + }
5168 + var accumulatedResult = '';
5169 + var nextSourcePosition = 0;
5170 + for (var i = 0; i < results.length; i++) {
5171 + result = results[i];
5172 + var matched = String(result[0]);
5173 + var position = max(min(toInteger(result.index), S.length), 0);
5174 + var captures = [];
5175 + // NOTE: This is equivalent to
5176 + // captures = result.slice(1).map(maybeToString)
5177 + // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
5178 + // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
5179 + // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
5180 + for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
5181 + var namedCaptures = result.groups;
5182 + if (functionalReplace) {
5183 + var replacerArgs = [matched].concat(captures, position, S);
5184 + if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
5185 + var replacement = String(replaceValue.apply(undefined, replacerArgs));
5186 + } else {
5187 + replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
5188 + }
5189 + if (position >= nextSourcePosition) {
5190 + accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
5191 + nextSourcePosition = position + matched.length;
5192 + }
5193 + }
5194 + return accumulatedResult + S.slice(nextSourcePosition);
2091 5195 }
2092 - if (key) {
2093 - return elementorStorage[key];
5196 + ];
5197 +
5198 + // https://tc39.github.io/ecma262/#sec-getsubstitution
5199 + function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
5200 + var tailPos = position + matched.length;
5201 + var m = captures.length;
5202 + var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
5203 + if (namedCaptures !== undefined) {
5204 + namedCaptures = toObject(namedCaptures);
5205 + symbols = SUBSTITUTION_SYMBOLS;
2094 5206 }
2095 - return elementorStorage;
5207 + return $replace.call(replacement, symbols, function (match, ch) {
5208 + var capture;
5209 + switch (ch.charAt(0)) {
5210 + case '$': return '$';
5211 + case '&': return matched;
5212 + case '`': return str.slice(0, position);
5213 + case "'": return str.slice(tailPos);
5214 + case '<':
5215 + capture = namedCaptures[ch.slice(1, -1)];
5216 + break;
5217 + default: // \d\d?
5218 + var n = +ch;
5219 + if (n === 0) return match;
5220 + if (n > m) {
5221 + var f = floor(n / 10);
5222 + if (f === 0) return match;
5223 + if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
5224 + return match;
5225 + }
5226 + capture = captures[n - 1];
5227 + }
5228 + return capture === undefined ? '' : capture;
5229 + });
2096 5230 }
2097 - set(key, value, options) {
2098 - options = options || {};
2099 - const elementorStorage = this.get(null, options);
2100 - elementorStorage[key] = value;
2101 - if (options.lifetimeInSeconds) {
2102 - const date = new Date();
2103 - date.setTime(date.getTime() + options.lifetimeInSeconds * 1000);
2104 - elementorStorage.__expiration[key] = date.getTime();
2105 - }
2106 - this.save(elementorStorage, options.session);
5231 +});
5232 +
5233 +
5234 +/***/ }),
5235 +
5236 +/***/ "../node_modules/regenerator-runtime/runtime.js":
5237 +/*!******************************************************!*\
5238 + !*** ../node_modules/regenerator-runtime/runtime.js ***!
5239 + \******************************************************/
5240 +/*! unknown exports (runtime-defined) */
5241 +/*! runtime requirements: module */
5242 +/*! CommonJS bailout: module.exports is used directly at 732:31-45 */
5243 +/***/ ((module) => {
5244 +
5245 +/**
5246 + * Copyright (c) 2014-present, Facebook, Inc.
5247 + *
5248 + * This source code is licensed under the MIT license found in the
5249 + * LICENSE file in the root directory of this source tree.
5250 + */
5251 +
5252 +var runtime = (function (exports) {
5253 + "use strict";
5254 +
5255 + var Op = Object.prototype;
5256 + var hasOwn = Op.hasOwnProperty;
5257 + var undefined; // More compressible than void 0.
5258 + var $Symbol = typeof Symbol === "function" ? Symbol : {};
5259 + var iteratorSymbol = $Symbol.iterator || "@@iterator";
5260 + var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
5261 + var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
5262 +
5263 + function define(obj, key, value) {
5264 + Object.defineProperty(obj, key, {
5265 + value: value,
5266 + enumerable: true,
5267 + configurable: true,
5268 + writable: true
5269 + });
5270 + return obj[key];
2107 5271 }
2108 - save(object, session) {
2109 - let storage;
5272 + try {
5273 + // IE 8 has a broken Object.defineProperty that only works on DOM objects.
5274 + define({}, "");
5275 + } catch (err) {
5276 + define = function(obj, key, value) {
5277 + return obj[key] = value;
5278 + };
5279 + }
5280 +
5281 + function wrap(innerFn, outerFn, self, tryLocsList) {
5282 + // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
5283 + var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
5284 + var generator = Object.create(protoGenerator.prototype);
5285 + var context = new Context(tryLocsList || []);
5286 +
5287 + // The ._invoke method unifies the implementations of the .next,
5288 + // .throw, and .return methods.
5289 + generator._invoke = makeInvokeMethod(innerFn, self, context);
5290 +
5291 + return generator;
5292 + }
5293 + exports.wrap = wrap;
5294 +
5295 + // Try/catch helper to minimize deoptimizations. Returns a completion
5296 + // record like context.tryEntries[i].completion. This interface could
5297 + // have been (and was previously) designed to take a closure to be
5298 + // invoked without arguments, but in all the cases we care about we
5299 + // already have an existing method we want to call, so there's no need
5300 + // to create a new function object. We can even get away with assuming
5301 + // the method takes exactly one argument, since that happens to be true
5302 + // in every case, so we don't have to touch the arguments object. The
5303 + // only additional allocation required is the completion record, which
5304 + // has a stable shape and so hopefully should be cheap to allocate.
5305 + function tryCatch(fn, obj, arg) {
2110 5306 try {
2111 - storage = session ? sessionStorage : localStorage;
2112 - } catch (e) {
2113 - return;
5307 + return { type: "normal", arg: fn.call(obj, arg) };
5308 + } catch (err) {
5309 + return { type: "throw", arg: err };
2114 5310 }
2115 - storage.setItem('elementor', JSON.stringify(object));
2116 5311 }
2117 -}
2118 -exports["default"] = _default;
2119 5312
2120 -/***/ }),
5313 + var GenStateSuspendedStart = "suspendedStart";
5314 + var GenStateSuspendedYield = "suspendedYield";
5315 + var GenStateExecuting = "executing";
5316 + var GenStateCompleted = "completed";
2121 5317
2122 -/***/ "../modules/shapes/assets/js/frontend/frontend.js":
2123 -/*!********************************************************!*\
2124 - !*** ../modules/shapes/assets/js/frontend/frontend.js ***!
2125 - \********************************************************/
2126 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5318 + // Returning this object from the innerFn has the same effect as
5319 + // breaking out of the dispatch switch statement.
5320 + var ContinueSentinel = {};
2127 5321
5322 + // Dummy constructor functions that we use as the .constructor and
5323 + // .constructor.prototype properties for functions that return Generator
5324 + // objects. For full spec compliance, you may wish to configure your
5325 + // minifier not to mangle the names of these two functions.
5326 + function Generator() {}
5327 + function GeneratorFunction() {}
5328 + function GeneratorFunctionPrototype() {}
2128 5329
5330 + // This is a polyfill for %IteratorPrototype% for environments that
5331 + // don't natively support it.
5332 + var IteratorPrototype = {};
5333 + IteratorPrototype[iteratorSymbol] = function () {
5334 + return this;
5335 + };
2129 5336
2130 -Object.defineProperty(exports, "__esModule", ({
2131 - value: true
2132 -}));
2133 -exports["default"] = void 0;
2134 -class _default extends elementorModules.Module {
2135 - constructor() {
2136 - super();
2137 - elementorFrontend.elementsHandler.attachHandler('text-path', () => Promise.all(/*! import() | text-path */[__webpack_require__.e("vendors-node_modules_dompurify_dist_purify_cjs_js"), __webpack_require__.e("text-path")]).then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/text-path */ "../modules/shapes/assets/js/frontend/handlers/text-path.js")));
5337 + var getProto = Object.getPrototypeOf;
5338 + var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
5339 + if (NativeIteratorPrototype &&
5340 + NativeIteratorPrototype !== Op &&
5341 + hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
5342 + // This environment has a native %IteratorPrototype%; use it instead
5343 + // of the polyfill.
5344 + IteratorPrototype = NativeIteratorPrototype;
2138 5345 }
2139 -}
2140 -exports["default"] = _default;
2141 5346
2142 -/***/ }),
5347 + var Gp = GeneratorFunctionPrototype.prototype =
5348 + Generator.prototype = Object.create(IteratorPrototype);
5349 + GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
5350 + GeneratorFunctionPrototype.constructor = GeneratorFunction;
5351 + GeneratorFunction.displayName = define(
5352 + GeneratorFunctionPrototype,
5353 + toStringTagSymbol,
5354 + "GeneratorFunction"
5355 + );
2143 5356
2144 -/***/ "../node_modules/core-js/internals/a-possible-prototype.js":
2145 -/*!*****************************************************************!*\
2146 - !*** ../node_modules/core-js/internals/a-possible-prototype.js ***!
2147 - \*****************************************************************/
2148 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
5357 + // Helper for defining the .next, .throw, and .return methods of the
5358 + // Iterator interface in terms of a single ._invoke method.
5359 + function defineIteratorMethods(prototype) {
5360 + ["next", "throw", "return"].forEach(function(method) {
5361 + define(prototype, method, function(arg) {
5362 + return this._invoke(method, arg);
5363 + });
5364 + });
5365 + }
2149 5366
5367 + exports.isGeneratorFunction = function(genFun) {
5368 + var ctor = typeof genFun === "function" && genFun.constructor;
5369 + return ctor
5370 + ? ctor === GeneratorFunction ||
5371 + // For the native GeneratorFunction constructor, the best we can
5372 + // do is to check its .name property.
5373 + (ctor.displayName || ctor.name) === "GeneratorFunction"
5374 + : false;
5375 + };
2150 5376
2151 -var isPossiblePrototype = __webpack_require__(/*! ../internals/is-possible-prototype */ "../node_modules/core-js/internals/is-possible-prototype.js");
5377 + exports.mark = function(genFun) {
5378 + if (Object.setPrototypeOf) {
5379 + Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
5380 + } else {
5381 + genFun.__proto__ = GeneratorFunctionPrototype;
5382 + define(genFun, toStringTagSymbol, "GeneratorFunction");
5383 + }
5384 + genFun.prototype = Object.create(Gp);
5385 + return genFun;
5386 + };
2152 5387
2153 -var $String = String;
2154 -var $TypeError = TypeError;
5388 + // Within the body of any async function, `await x` is transformed to
5389 + // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
5390 + // `hasOwn.call(value, "__await")` to determine if the yielded value is
5391 + // meant to be awaited.
5392 + exports.awrap = function(arg) {
5393 + return { __await: arg };
5394 + };
2155 5395
2156 -module.exports = function (argument) {
2157 - if (isPossiblePrototype(argument)) return argument;
2158 - throw new $TypeError("Can't set " + $String(argument) + ' as a prototype');
2159 -};
5396 + function AsyncIterator(generator, PromiseImpl) {
5397 + function invoke(method, arg, resolve, reject) {
5398 + var record = tryCatch(generator[method], generator, arg);
5399 + if (record.type === "throw") {
5400 + reject(record.arg);
5401 + } else {
5402 + var result = record.arg;
5403 + var value = result.value;
5404 + if (value &&
5405 + typeof value === "object" &&
5406 + hasOwn.call(value, "__await")) {
5407 + return PromiseImpl.resolve(value.__await).then(function(value) {
5408 + invoke("next", value, resolve, reject);
5409 + }, function(err) {
5410 + invoke("throw", err, resolve, reject);
5411 + });
5412 + }
2160 5413
5414 + return PromiseImpl.resolve(value).then(function(unwrapped) {
5415 + // When a yielded Promise is resolved, its final value becomes
5416 + // the .value of the Promise<{value,done}> result for the
5417 + // current iteration.
5418 + result.value = unwrapped;
5419 + resolve(result);
5420 + }, function(error) {
5421 + // If a rejected Promise was yielded, throw the rejection back
5422 + // into the async generator function so it can be handled there.
5423 + return invoke("throw", error, resolve, reject);
5424 + });
5425 + }
5426 + }
2161 5427
2162 -/***/ }),
5428 + var previousPromise;
2163 5429
2164 -/***/ "../node_modules/core-js/internals/dom-exception-constants.js":
2165 -/*!********************************************************************!*\
2166 - !*** ../node_modules/core-js/internals/dom-exception-constants.js ***!
2167 - \********************************************************************/
2168 -/***/ ((module) => {
5430 + function enqueue(method, arg) {
5431 + function callInvokeWithMethodAndArg() {
5432 + return new PromiseImpl(function(resolve, reject) {
5433 + invoke(method, arg, resolve, reject);
5434 + });
5435 + }
2169 5436
5437 + return previousPromise =
5438 + // If enqueue has been called before, then we want to wait until
5439 + // all previous Promises have been resolved before calling invoke,
5440 + // so that results are always delivered in the correct order. If
5441 + // enqueue has not been called before, then it is important to
5442 + // call invoke immediately, without waiting on a callback to fire,
5443 + // so that the async generator function has the opportunity to do
5444 + // any necessary setup in a predictable way. This predictability
5445 + // is why the Promise constructor synchronously invokes its
5446 + // executor callback, and why async functions synchronously
5447 + // execute code before the first await. Since we implement simple
5448 + // async functions in terms of async generators, it is especially
5449 + // important to get this right, even though it requires care.
5450 + previousPromise ? previousPromise.then(
5451 + callInvokeWithMethodAndArg,
5452 + // Avoid propagating failures to Promises returned by later
5453 + // invocations of the iterator.
5454 + callInvokeWithMethodAndArg
5455 + ) : callInvokeWithMethodAndArg();
5456 + }
2170 5457
2171 -module.exports = {
2172 - IndexSizeError: { s: 'INDEX_SIZE_ERR', c: 1, m: 1 },
2173 - DOMStringSizeError: { s: 'DOMSTRING_SIZE_ERR', c: 2, m: 0 },
2174 - HierarchyRequestError: { s: 'HIERARCHY_REQUEST_ERR', c: 3, m: 1 },
2175 - WrongDocumentError: { s: 'WRONG_DOCUMENT_ERR', c: 4, m: 1 },
2176 - InvalidCharacterError: { s: 'INVALID_CHARACTER_ERR', c: 5, m: 1 },
2177 - NoDataAllowedError: { s: 'NO_DATA_ALLOWED_ERR', c: 6, m: 0 },
2178 - NoModificationAllowedError: { s: 'NO_MODIFICATION_ALLOWED_ERR', c: 7, m: 1 },
2179 - NotFoundError: { s: 'NOT_FOUND_ERR', c: 8, m: 1 },
2180 - NotSupportedError: { s: 'NOT_SUPPORTED_ERR', c: 9, m: 1 },
2181 - InUseAttributeError: { s: 'INUSE_ATTRIBUTE_ERR', c: 10, m: 1 },
2182 - InvalidStateError: { s: 'INVALID_STATE_ERR', c: 11, m: 1 },
2183 - SyntaxError: { s: 'SYNTAX_ERR', c: 12, m: 1 },
2184 - InvalidModificationError: { s: 'INVALID_MODIFICATION_ERR', c: 13, m: 1 },
2185 - NamespaceError: { s: 'NAMESPACE_ERR', c: 14, m: 1 },
2186 - InvalidAccessError: { s: 'INVALID_ACCESS_ERR', c: 15, m: 1 },
2187 - ValidationError: { s: 'VALIDATION_ERR', c: 16, m: 0 },
2188 - TypeMismatchError: { s: 'TYPE_MISMATCH_ERR', c: 17, m: 1 },
2189 - SecurityError: { s: 'SECURITY_ERR', c: 18, m: 1 },
2190 - NetworkError: { s: 'NETWORK_ERR', c: 19, m: 1 },
2191 - AbortError: { s: 'ABORT_ERR', c: 20, m: 1 },
2192 - URLMismatchError: { s: 'URL_MISMATCH_ERR', c: 21, m: 1 },
2193 - QuotaExceededError: { s: 'QUOTA_EXCEEDED_ERR', c: 22, m: 1 },
2194 - TimeoutError: { s: 'TIMEOUT_ERR', c: 23, m: 1 },
2195 - InvalidNodeTypeError: { s: 'INVALID_NODE_TYPE_ERR', c: 24, m: 1 },
2196 - DataCloneError: { s: 'DATA_CLONE_ERR', c: 25, m: 1 }
2197 -};
5458 + // Define the unified helper method that is used to implement .next,
5459 + // .throw, and .return (see defineIteratorMethods).
5460 + this._invoke = enqueue;
5461 + }
2198 5462
5463 + defineIteratorMethods(AsyncIterator.prototype);
5464 + AsyncIterator.prototype[asyncIteratorSymbol] = function () {
5465 + return this;
5466 + };
5467 + exports.AsyncIterator = AsyncIterator;
2199 5468
2200 -/***/ }),
5469 + // Note that simple async functions are implemented on top of
5470 + // AsyncIterator objects; they just return a Promise for the value of
5471 + // the final result produced by the iterator.
5472 + exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
5473 + if (PromiseImpl === void 0) PromiseImpl = Promise;
2201 5474
2202 -/***/ "../node_modules/core-js/internals/error-stack-clear.js":
2203 -/*!**************************************************************!*\
2204 - !*** ../node_modules/core-js/internals/error-stack-clear.js ***!
2205 - \**************************************************************/
2206 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
5475 + var iter = new AsyncIterator(
5476 + wrap(innerFn, outerFn, self, tryLocsList),
5477 + PromiseImpl
5478 + );
2207 5479
5480 + return exports.isGeneratorFunction(outerFn)
5481 + ? iter // If outerFn is a generator, return the full iterator.
5482 + : iter.next().then(function(result) {
5483 + return result.done ? result.value : iter.next();
5484 + });
5485 + };
2208 5486
2209 -var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
5487 + function makeInvokeMethod(innerFn, self, context) {
5488 + var state = GenStateSuspendedStart;
2210 5489
2211 -var $Error = Error;
2212 -var replace = uncurryThis(''.replace);
5490 + return function invoke(method, arg) {
5491 + if (state === GenStateExecuting) {
5492 + throw new Error("Generator is already running");
5493 + }
2213 5494
2214 -var TEST = (function (arg) { return String(new $Error(arg).stack); })('zxcasd');
2215 -// eslint-disable-next-line redos/no-vulnerable, sonarjs/slow-regex -- safe
2216 -var V8_OR_CHAKRA_STACK_ENTRY = /\n\s*at [^:]*:[^\n]*/;
2217 -var IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);
5495 + if (state === GenStateCompleted) {
5496 + if (method === "throw") {
5497 + throw arg;
5498 + }
2218 5499
2219 -module.exports = function (stack, dropEntries) {
2220 - if (IS_V8_OR_CHAKRA_STACK && typeof stack == 'string' && !$Error.prepareStackTrace) {
2221 - while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, '');
2222 - } return stack;
2223 -};
5500 + // Be forgiving, per 25.3.3.3.3 of the spec:
5501 + // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
5502 + return doneResult();
5503 + }
2224 5504
5505 + context.method = method;
5506 + context.arg = arg;
2225 5507
2226 -/***/ }),
5508 + while (true) {
5509 + var delegate = context.delegate;
5510 + if (delegate) {
5511 + var delegateResult = maybeInvokeDelegate(delegate, context);
5512 + if (delegateResult) {
5513 + if (delegateResult === ContinueSentinel) continue;
5514 + return delegateResult;
5515 + }
5516 + }
2227 5517
2228 -/***/ "../node_modules/core-js/internals/function-uncurry-this-accessor.js":
2229 -/*!***************************************************************************!*\
2230 - !*** ../node_modules/core-js/internals/function-uncurry-this-accessor.js ***!
2231 - \***************************************************************************/
2232 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
5518 + if (context.method === "next") {
5519 + // Setting context._sent for legacy support of Babel's
5520 + // function.sent implementation.
5521 + context.sent = context._sent = context.arg;
2233 5522
5523 + } else if (context.method === "throw") {
5524 + if (state === GenStateSuspendedStart) {
5525 + state = GenStateCompleted;
5526 + throw context.arg;
5527 + }
2234 5528
2235 -var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ "../node_modules/core-js/internals/function-uncurry-this.js");
2236 -var aCallable = __webpack_require__(/*! ../internals/a-callable */ "../node_modules/core-js/internals/a-callable.js");
5529 + context.dispatchException(context.arg);
2237 5530
2238 -module.exports = function (object, key, method) {
2239 - try {
2240 - // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
2241 - return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));
2242 - } catch (error) { /* empty */ }
2243 -};
5531 + } else if (context.method === "return") {
5532 + context.abrupt("return", context.arg);
5533 + }
2244 5534
5535 + state = GenStateExecuting;
2245 5536
2246 -/***/ }),
5537 + var record = tryCatch(innerFn, self, context);
5538 + if (record.type === "normal") {
5539 + // If an exception is thrown from innerFn, we leave state ===
5540 + // GenStateExecuting and loop back for another invocation.
5541 + state = context.done
5542 + ? GenStateCompleted
5543 + : GenStateSuspendedYield;
2247 5544
2248 -/***/ "../node_modules/core-js/internals/inherit-if-required.js":
2249 -/*!****************************************************************!*\
2250 - !*** ../node_modules/core-js/internals/inherit-if-required.js ***!
2251 - \****************************************************************/
2252 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
5545 + if (record.arg === ContinueSentinel) {
5546 + continue;
5547 + }
2253 5548
5549 + return {
5550 + value: record.arg,
5551 + done: context.done
5552 + };
2254 5553
2255 -var isCallable = __webpack_require__(/*! ../internals/is-callable */ "../node_modules/core-js/internals/is-callable.js");
2256 -var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
2257 -var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ "../node_modules/core-js/internals/object-set-prototype-of.js");
5554 + } else if (record.type === "throw") {
5555 + state = GenStateCompleted;
5556 + // Dispatch the exception by looping back around to the
5557 + // context.dispatchException(context.arg) call above.
5558 + context.method = "throw";
5559 + context.arg = record.arg;
5560 + }
5561 + }
5562 + };
5563 + }
2258 5564
2259 -// makes subclassing work correct for wrapped built-ins
2260 -module.exports = function ($this, dummy, Wrapper) {
2261 - var NewTarget, NewTargetPrototype;
2262 - if (
2263 - // it can work only with native `setPrototypeOf`
2264 - setPrototypeOf &&
2265 - // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
2266 - isCallable(NewTarget = dummy.constructor) &&
2267 - NewTarget !== Wrapper &&
2268 - isObject(NewTargetPrototype = NewTarget.prototype) &&
2269 - NewTargetPrototype !== Wrapper.prototype
2270 - ) setPrototypeOf($this, NewTargetPrototype);
2271 - return $this;
2272 -};
5565 + // Call delegate.iterator[context.method](context.arg) and handle the
5566 + // result, either by returning a { value, done } result from the
5567 + // delegate iterator, or by modifying context.method and context.arg,
5568 + // setting context.delegate to null, and returning the ContinueSentinel.
5569 + function maybeInvokeDelegate(delegate, context) {
5570 + var method = delegate.iterator[context.method];
5571 + if (method === undefined) {
5572 + // A .throw or .return when the delegate iterator has no .throw
5573 + // method always terminates the yield* loop.
5574 + context.delegate = null;
2273 5575
5576 + if (context.method === "throw") {
5577 + // Note: ["return"] must be used for ES3 parsing compatibility.
5578 + if (delegate.iterator["return"]) {
5579 + // If the delegate iterator has a return method, give it a
5580 + // chance to clean up.
5581 + context.method = "return";
5582 + context.arg = undefined;
5583 + maybeInvokeDelegate(delegate, context);
2274 5584
2275 -/***/ }),
5585 + if (context.method === "throw") {
5586 + // If maybeInvokeDelegate(context) changed context.method from
5587 + // "return" to "throw", let that override the TypeError below.
5588 + return ContinueSentinel;
5589 + }
5590 + }
2276 5591
2277 -/***/ "../node_modules/core-js/internals/is-possible-prototype.js":
2278 -/*!******************************************************************!*\
2279 - !*** ../node_modules/core-js/internals/is-possible-prototype.js ***!
2280 - \******************************************************************/
2281 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
5592 + context.method = "throw";
5593 + context.arg = new TypeError(
5594 + "The iterator does not provide a 'throw' method");
5595 + }
2282 5596
5597 + return ContinueSentinel;
5598 + }
2283 5599
2284 -var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
5600 + var record = tryCatch(method, delegate.iterator, context.arg);
2285 5601
2286 -module.exports = function (argument) {
2287 - return isObject(argument) || argument === null;
2288 -};
5602 + if (record.type === "throw") {
5603 + context.method = "throw";
5604 + context.arg = record.arg;
5605 + context.delegate = null;
5606 + return ContinueSentinel;
5607 + }
2289 5608
5609 + var info = record.arg;
2290 5610
2291 -/***/ }),
5611 + if (! info) {
5612 + context.method = "throw";
5613 + context.arg = new TypeError("iterator result is not an object");
5614 + context.delegate = null;
5615 + return ContinueSentinel;
5616 + }
2292 5617
2293 -/***/ "../node_modules/core-js/internals/normalize-string-argument.js":
2294 -/*!**********************************************************************!*\
2295 - !*** ../node_modules/core-js/internals/normalize-string-argument.js ***!
2296 - \**********************************************************************/
2297 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
5618 + if (info.done) {
5619 + // Assign the result of the finished delegate to the temporary
5620 + // variable specified by delegate.resultName (see delegateYield).
5621 + context[delegate.resultName] = info.value;
2298 5622
5623 + // Resume execution at the desired location (see delegateYield).
5624 + context.next = delegate.nextLoc;
2299 5625
2300 -var toString = __webpack_require__(/*! ../internals/to-string */ "../node_modules/core-js/internals/to-string.js");
5626 + // If context.method was "throw" but the delegate handled the
5627 + // exception, let the outer generator proceed normally. If
5628 + // context.method was "next", forget context.arg since it has been
5629 + // "consumed" by the delegate iterator. If context.method was
5630 + // "return", allow the original .return call to continue in the
5631 + // outer generator.
5632 + if (context.method !== "return") {
5633 + context.method = "next";
5634 + context.arg = undefined;
5635 + }
2301 5636
2302 -module.exports = function (argument, $default) {
2303 - return argument === undefined ? arguments.length < 2 ? '' : $default : toString(argument);
2304 -};
5637 + } else {
5638 + // Re-yield the result returned by the delegate method.
5639 + return info;
5640 + }
2305 5641
5642 + // The delegate iterator is finished, so forget it and continue with
5643 + // the outer generator.
5644 + context.delegate = null;
5645 + return ContinueSentinel;
5646 + }
2306 5647
2307 -/***/ }),
5648 + // Define Generator.prototype.{next,throw,return} in terms of the
5649 + // unified ._invoke helper method.
5650 + defineIteratorMethods(Gp);
2308 5651
2309 -/***/ "../node_modules/core-js/internals/object-set-prototype-of.js":
2310 -/*!********************************************************************!*\
2311 - !*** ../node_modules/core-js/internals/object-set-prototype-of.js ***!
2312 - \********************************************************************/
2313 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
5652 + define(Gp, toStringTagSymbol, "Generator");
2314 5653
5654 + // A Generator should always return itself as the iterator object when the
5655 + // @@iterator function is called on it. Some browsers' implementations of the
5656 + // iterator prototype chain incorrectly implement this, causing the Generator
5657 + // object to not be returned from this call. This ensures that doesn't happen.
5658 + // See https://github.com/facebook/regenerator/issues/274 for more details.
5659 + Gp[iteratorSymbol] = function() {
5660 + return this;
5661 + };
2315 5662
2316 -/* eslint-disable no-proto -- safe */
2317 -var uncurryThisAccessor = __webpack_require__(/*! ../internals/function-uncurry-this-accessor */ "../node_modules/core-js/internals/function-uncurry-this-accessor.js");
2318 -var isObject = __webpack_require__(/*! ../internals/is-object */ "../node_modules/core-js/internals/is-object.js");
2319 -var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ "../node_modules/core-js/internals/require-object-coercible.js");
2320 -var aPossiblePrototype = __webpack_require__(/*! ../internals/a-possible-prototype */ "../node_modules/core-js/internals/a-possible-prototype.js");
5663 + Gp.toString = function() {
5664 + return "[object Generator]";
5665 + };
2321 5666
2322 -// `Object.setPrototypeOf` method
2323 -// https://tc39.es/ecma262/#sec-object.setprototypeof
2324 -// Works with __proto__ only. Old v8 can't work with null proto objects.
2325 -// eslint-disable-next-line es/no-object-setprototypeof -- safe
2326 -module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
2327 - var CORRECT_SETTER = false;
2328 - var test = {};
2329 - var setter;
2330 - try {
2331 - setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');
2332 - setter(test, []);
2333 - CORRECT_SETTER = test instanceof Array;
2334 - } catch (error) { /* empty */ }
2335 - return function setPrototypeOf(O, proto) {
2336 - requireObjectCoercible(O);
2337 - aPossiblePrototype(proto);
2338 - if (!isObject(O)) return O;
2339 - if (CORRECT_SETTER) setter(O, proto);
2340 - else O.__proto__ = proto;
2341 - return O;
5667 + function pushTryEntry(locs) {
5668 + var entry = { tryLoc: locs[0] };
5669 +
5670 + if (1 in locs) {
5671 + entry.catchLoc = locs[1];
5672 + }
5673 +
5674 + if (2 in locs) {
5675 + entry.finallyLoc = locs[2];
5676 + entry.afterLoc = locs[3];
5677 + }
5678 +
5679 + this.tryEntries.push(entry);
5680 + }
5681 +
5682 + function resetTryEntry(entry) {
5683 + var record = entry.completion || {};
5684 + record.type = "normal";
5685 + delete record.arg;
5686 + entry.completion = record;
5687 + }
5688 +
5689 + function Context(tryLocsList) {
5690 + // The root entry object (effectively a try statement without a catch
5691 + // or a finally block) gives us a place to store values thrown from
5692 + // locations where there is no enclosing try statement.
5693 + this.tryEntries = [{ tryLoc: "root" }];
5694 + tryLocsList.forEach(pushTryEntry, this);
5695 + this.reset(true);
5696 + }
5697 +
5698 + exports.keys = function(object) {
5699 + var keys = [];
5700 + for (var key in object) {
5701 + keys.push(key);
5702 + }
5703 + keys.reverse();
5704 +
5705 + // Rather than returning an object with a next method, we keep
5706 + // things simple and return the next function itself.
5707 + return function next() {
5708 + while (keys.length) {
5709 + var key = keys.pop();
5710 + if (key in object) {
5711 + next.value = key;
5712 + next.done = false;
5713 + return next;
5714 + }
5715 + }
5716 +
5717 + // To avoid creating an additional object, we just hang the .value
5718 + // and .done properties off the next function object itself. This
5719 + // also ensures that the minifier will not anonymize the function.
5720 + next.done = true;
5721 + return next;
5722 + };
2342 5723 };
2343 -}() : undefined);
2344 5724
5725 + function values(iterable) {
5726 + if (iterable) {
5727 + var iteratorMethod = iterable[iteratorSymbol];
5728 + if (iteratorMethod) {
5729 + return iteratorMethod.call(iterable);
5730 + }
2345 5731
2346 -/***/ }),
5732 + if (typeof iterable.next === "function") {
5733 + return iterable;
5734 + }
2347 5735
2348 -/***/ "../node_modules/core-js/internals/to-string.js":
2349 -/*!******************************************************!*\
2350 - !*** ../node_modules/core-js/internals/to-string.js ***!
2351 - \******************************************************/
2352 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
5736 + if (!isNaN(iterable.length)) {
5737 + var i = -1, next = function next() {
5738 + while (++i < iterable.length) {
5739 + if (hasOwn.call(iterable, i)) {
5740 + next.value = iterable[i];
5741 + next.done = false;
5742 + return next;
5743 + }
5744 + }
2353 5745
5746 + next.value = undefined;
5747 + next.done = true;
2354 5748
2355 -var classof = __webpack_require__(/*! ../internals/classof */ "../node_modules/core-js/internals/classof.js");
5749 + return next;
5750 + };
2356 5751
2357 -var $String = String;
5752 + return next.next = next;
5753 + }
5754 + }
2358 5755
2359 -module.exports = function (argument) {
2360 - if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
2361 - return $String(argument);
2362 -};
5756 + // Return an iterator with no values.
5757 + return { next: doneResult };
5758 + }
5759 + exports.values = values;
2363 5760
5761 + function doneResult() {
5762 + return { value: undefined, done: true };
5763 + }
2364 5764
2365 -/***/ }),
5765 + Context.prototype = {
5766 + constructor: Context,
2366 5767
2367 -/***/ "../node_modules/core-js/modules/web.dom-exception.stack.js":
2368 -/*!******************************************************************!*\
2369 - !*** ../node_modules/core-js/modules/web.dom-exception.stack.js ***!
2370 - \******************************************************************/
2371 -/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
5768 + reset: function(skipTempReset) {
5769 + this.prev = 0;
5770 + this.next = 0;
5771 + // Resetting context._sent for legacy support of Babel's
5772 + // function.sent implementation.
5773 + this.sent = this._sent = undefined;
5774 + this.done = false;
5775 + this.delegate = null;
2372 5776
5777 + this.method = "next";
5778 + this.arg = undefined;
2373 5779
2374 -var $ = __webpack_require__(/*! ../internals/export */ "../node_modules/core-js/internals/export.js");
2375 -var globalThis = __webpack_require__(/*! ../internals/global-this */ "../node_modules/core-js/internals/global-this.js");
2376 -var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ "../node_modules/core-js/internals/get-built-in.js");
2377 -var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ "../node_modules/core-js/internals/create-property-descriptor.js");
2378 -var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ "../node_modules/core-js/internals/object-define-property.js").f);
2379 -var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ "../node_modules/core-js/internals/has-own-property.js");
2380 -var anInstance = __webpack_require__(/*! ../internals/an-instance */ "../node_modules/core-js/internals/an-instance.js");
2381 -var inheritIfRequired = __webpack_require__(/*! ../internals/inherit-if-required */ "../node_modules/core-js/internals/inherit-if-required.js");
2382 -var normalizeStringArgument = __webpack_require__(/*! ../internals/normalize-string-argument */ "../node_modules/core-js/internals/normalize-string-argument.js");
2383 -var DOMExceptionConstants = __webpack_require__(/*! ../internals/dom-exception-constants */ "../node_modules/core-js/internals/dom-exception-constants.js");
2384 -var clearErrorStack = __webpack_require__(/*! ../internals/error-stack-clear */ "../node_modules/core-js/internals/error-stack-clear.js");
2385 -var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ "../node_modules/core-js/internals/descriptors.js");
2386 -var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ "../node_modules/core-js/internals/is-pure.js");
5780 + this.tryEntries.forEach(resetTryEntry);
2387 5781
2388 -var DOM_EXCEPTION = 'DOMException';
2389 -var Error = getBuiltIn('Error');
2390 -var NativeDOMException = getBuiltIn(DOM_EXCEPTION);
5782 + if (!skipTempReset) {
5783 + for (var name in this) {
5784 + // Not sure about the optimal order of these conditions:
5785 + if (name.charAt(0) === "t" &&
5786 + hasOwn.call(this, name) &&
5787 + !isNaN(+name.slice(1))) {
5788 + this[name] = undefined;
5789 + }
5790 + }
5791 + }
5792 + },
2391 5793
2392 -var $DOMException = function DOMException() {
2393 - anInstance(this, DOMExceptionPrototype);
2394 - var argumentsLength = arguments.length;
2395 - var message = normalizeStringArgument(argumentsLength < 1 ? undefined : arguments[0]);
2396 - var name = normalizeStringArgument(argumentsLength < 2 ? undefined : arguments[1], 'Error');
2397 - var that = new NativeDOMException(message, name);
2398 - var error = new Error(message);
2399 - error.name = DOM_EXCEPTION;
2400 - defineProperty(that, 'stack', createPropertyDescriptor(1, clearErrorStack(error.stack, 1)));
2401 - inheritIfRequired(that, this, $DOMException);
2402 - return that;
2403 -};
5794 + stop: function() {
5795 + this.done = true;
2404 5796
2405 -var DOMExceptionPrototype = $DOMException.prototype = NativeDOMException.prototype;
5797 + var rootEntry = this.tryEntries[0];
5798 + var rootRecord = rootEntry.completion;
5799 + if (rootRecord.type === "throw") {
5800 + throw rootRecord.arg;
5801 + }
2406 5802
2407 -var ERROR_HAS_STACK = 'stack' in new Error(DOM_EXCEPTION);
2408 -var DOM_EXCEPTION_HAS_STACK = 'stack' in new NativeDOMException(1, 2);
5803 + return this.rval;
5804 + },
2409 5805
2410 -// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
2411 -var descriptor = NativeDOMException && DESCRIPTORS && Object.getOwnPropertyDescriptor(globalThis, DOM_EXCEPTION);
5806 + dispatchException: function(exception) {
5807 + if (this.done) {
5808 + throw exception;
5809 + }
2412 5810
2413 -// Bun ~ 0.1.1 DOMException have incorrect descriptor and we can't redefine it
2414 -// https://github.com/Jarred-Sumner/bun/issues/399
2415 -var BUGGY_DESCRIPTOR = !!descriptor && !(descriptor.writable && descriptor.configurable);
5811 + var context = this;
5812 + function handle(loc, caught) {
5813 + record.type = "throw";
5814 + record.arg = exception;
5815 + context.next = loc;
2416 5816
2417 -var FORCED_CONSTRUCTOR = ERROR_HAS_STACK && !BUGGY_DESCRIPTOR && !DOM_EXCEPTION_HAS_STACK;
5817 + if (caught) {
5818 + // If the dispatched exception was caught by a catch block,
5819 + // then let that catch block handle the exception normally.
5820 + context.method = "next";
5821 + context.arg = undefined;
5822 + }
2418 5823
2419 -// `DOMException` constructor patch for `.stack` where it's required
2420 -// https://webidl.spec.whatwg.org/#es-DOMException-specialness
2421 -$({ global: true, constructor: true, forced: IS_PURE || FORCED_CONSTRUCTOR }, { // TODO: fix export logic
2422 - DOMException: FORCED_CONSTRUCTOR ? $DOMException : NativeDOMException
2423 -});
5824 + return !! caught;
5825 + }
2424 5826
2425 -var PolyfilledDOMException = getBuiltIn(DOM_EXCEPTION);
2426 -var PolyfilledDOMExceptionPrototype = PolyfilledDOMException.prototype;
5827 + for (var i = this.tryEntries.length - 1; i >= 0; --i) {
5828 + var entry = this.tryEntries[i];
5829 + var record = entry.completion;
2427 5830
2428 -if (PolyfilledDOMExceptionPrototype.constructor !== PolyfilledDOMException) {
2429 - if (!IS_PURE) {
2430 - defineProperty(PolyfilledDOMExceptionPrototype, 'constructor', createPropertyDescriptor(1, PolyfilledDOMException));
2431 - }
5831 + if (entry.tryLoc === "root") {
5832 + // Exception thrown outside of any try block that could handle
5833 + // it, so set the completion value of the entire function to
5834 + // throw the exception.
5835 + return handle("end");
5836 + }
2432 5837
2433 - for (var key in DOMExceptionConstants) if (hasOwn(DOMExceptionConstants, key)) {
2434 - var constant = DOMExceptionConstants[key];
2435 - var constantName = constant.s;
2436 - if (!hasOwn(PolyfilledDOMException, constantName)) {
2437 - defineProperty(PolyfilledDOMException, constantName, createPropertyDescriptor(6, constant.c));
5838 + if (entry.tryLoc <= this.prev) {
5839 + var hasCatch = hasOwn.call(entry, "catchLoc");
5840 + var hasFinally = hasOwn.call(entry, "finallyLoc");
5841 +
5842 + if (hasCatch && hasFinally) {
5843 + if (this.prev < entry.catchLoc) {
5844 + return handle(entry.catchLoc, true);
5845 + } else if (this.prev < entry.finallyLoc) {
5846 + return handle(entry.finallyLoc);
5847 + }
5848 +
5849 + } else if (hasCatch) {
5850 + if (this.prev < entry.catchLoc) {
5851 + return handle(entry.catchLoc, true);
5852 + }
5853 +
5854 + } else if (hasFinally) {
5855 + if (this.prev < entry.finallyLoc) {
5856 + return handle(entry.finallyLoc);
5857 + }
5858 +
5859 + } else {
5860 + throw new Error("try statement without catch or finally");
5861 + }
5862 + }
5863 + }
5864 + },
5865 +
5866 + abrupt: function(type, arg) {
5867 + for (var i = this.tryEntries.length - 1; i >= 0; --i) {
5868 + var entry = this.tryEntries[i];
5869 + if (entry.tryLoc <= this.prev &&
5870 + hasOwn.call(entry, "finallyLoc") &&
5871 + this.prev < entry.finallyLoc) {
5872 + var finallyEntry = entry;
5873 + break;
5874 + }
5875 + }
5876 +
5877 + if (finallyEntry &&
5878 + (type === "break" ||
5879 + type === "continue") &&
5880 + finallyEntry.tryLoc <= arg &&
5881 + arg <= finallyEntry.finallyLoc) {
5882 + // Ignore the finally entry if control is not jumping to a
5883 + // location outside the try/catch block.
5884 + finallyEntry = null;
5885 + }
5886 +
5887 + var record = finallyEntry ? finallyEntry.completion : {};
5888 + record.type = type;
5889 + record.arg = arg;
5890 +
5891 + if (finallyEntry) {
5892 + this.method = "next";
5893 + this.next = finallyEntry.finallyLoc;
5894 + return ContinueSentinel;
5895 + }
5896 +
5897 + return this.complete(record);
5898 + },
5899 +
5900 + complete: function(record, afterLoc) {
5901 + if (record.type === "throw") {
5902 + throw record.arg;
5903 + }
5904 +
5905 + if (record.type === "break" ||
5906 + record.type === "continue") {
5907 + this.next = record.arg;
5908 + } else if (record.type === "return") {
5909 + this.rval = this.arg = record.arg;
5910 + this.method = "return";
5911 + this.next = "end";
5912 + } else if (record.type === "normal" && afterLoc) {
5913 + this.next = afterLoc;
5914 + }
5915 +
5916 + return ContinueSentinel;
5917 + },
5918 +
5919 + finish: function(finallyLoc) {
5920 + for (var i = this.tryEntries.length - 1; i >= 0; --i) {
5921 + var entry = this.tryEntries[i];
5922 + if (entry.finallyLoc === finallyLoc) {
5923 + this.complete(entry.completion, entry.afterLoc);
5924 + resetTryEntry(entry);
5925 + return ContinueSentinel;
5926 + }
5927 + }
5928 + },
5929 +
5930 + "catch": function(tryLoc) {
5931 + for (var i = this.tryEntries.length - 1; i >= 0; --i) {
5932 + var entry = this.tryEntries[i];
5933 + if (entry.tryLoc === tryLoc) {
5934 + var record = entry.completion;
5935 + if (record.type === "throw") {
5936 + var thrown = record.arg;
5937 + resetTryEntry(entry);
5938 + }
5939 + return thrown;
5940 + }
5941 + }
5942 +
5943 + // The context.catch method must only be called with a location
5944 + // argument that corresponds to a known catch block.
5945 + throw new Error("illegal catch attempt");
5946 + },
5947 +
5948 + delegateYield: function(iterable, resultName, nextLoc) {
5949 + this.delegate = {
5950 + iterator: values(iterable),
5951 + resultName: resultName,
5952 + nextLoc: nextLoc
5953 + };
5954 +
5955 + if (this.method === "next") {
5956 + // Deliberately forget the last sent value so that we don't
5957 + // accidentally pass it on to the delegate.
5958 + this.arg = undefined;
5959 + }
5960 +
5961 + return ContinueSentinel;
2438 5962 }
2439 - }
5963 + };
5964 +
5965 + // Regardless of whether this script is executing as a CommonJS module
5966 + // or not, return the runtime object so that we can declare the variable
5967 + // regeneratorRuntime in the outer scope, which allows this module to be
5968 + // injected easily by `bin/regenerator --include-runtime script.js`.
5969 + return exports;
5970 +
5971 +}(
5972 + // If this script is executing as a CommonJS module, use module.exports
5973 + // as the regeneratorRuntime namespace. Otherwise create a new empty
5974 + // object. Either way, the resulting object will be used to initialize
5975 + // the regeneratorRuntime variable at the top of this file.
5976 + true ? module.exports : 0
5977 +));
5978 +
5979 +try {
5980 + regeneratorRuntime = runtime;
5981 +} catch (accidentalStrictMode) {
5982 + // This module should not be running in strict mode, so the above
5983 + // assignment should always work unless something is misconfigured. Just
5984 + // in case runtime.js accidentally runs in strict mode, we can escape
5985 + // strict mode using a global Function call. This could conceivably fail
5986 + // if a Content Security Policy forbids using Function, but in that case
5987 + // the proper solution is to fix the accidental strict mode problem. If
5988 + // you've misconfigured your bundler to force strict mode and applied a
5989 + // CSP to forbid Function, and you're not willing to fix either of those
5990 + // problems, please detail your unique predicament in a GitHub issue.
5991 + Function("r", "regeneratorRuntime = r")(runtime);
2440 5992 }
2441 5993
2442 5994
2443 5995 /***/ })
@@ -2442,11 +5994,6 @@
2442 5994
2443 5995 /***/ })
2444 5996
2445 5997 },
2446 -/******/ __webpack_require__ => { // webpackRuntimeModules
2447 -/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
2448 -/******/ __webpack_require__.O(0, ["frontend-modules"], () => (__webpack_exec__("../assets/dev/js/frontend/frontend.js")));
2449 -/******/ var __webpack_exports__ = __webpack_require__.O();
2450 -/******/ }
2451 -]);
5998 +0,[["../assets/dev/js/frontend/frontend.js","webpack.runtime","frontend-modules"]]]);
2452 5999 //# sourceMappingURL=frontend.js.map