PluginProbe
Elementor Website Builder – more than just a page builder / 3.7.3
Elementor Website Builder – more than just a page builder v3.7.3
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 4.0.8 All 454 releases
← All changes | assets/js/editor-modules.js +2837 -2228 4.3.0-beta3 → 3.7.3 View file →
@@ -1,2281 +1,2890 @@
1 -(function(_wordpress_i18n) {
1 +/*! elementor - v3.7.3 - 29-08-2022 */
2 +/******/ (() => { // webpackBootstrap
3 +/******/ var __webpack_modules__ = ({
2 4
3 -//#region \0rolldown/runtime.js
4 - var __create = Object.create;
5 - var __defProp = Object.defineProperty;
6 - var __name = (target, value) => __defProp(target, "name", {
7 - value,
8 - configurable: true
9 - });
10 - var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
11 - var __getOwnPropNames = Object.getOwnPropertyNames;
12 - var __getProtoOf = Object.getPrototypeOf;
13 - var __hasOwnProp = Object.prototype.hasOwnProperty;
14 - var __esmMin = (fn, res, err) => () => {
15 - if (err) throw err[0];
16 - try {
17 - return fn && (res = fn(fn = 0)), res;
18 - } catch (e) {
19 - throw err = [e], e;
20 - }
21 - };
22 - var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
23 - var __copyProps = (to, from, except, desc) => {
24 - if (from && typeof from === "object" || typeof from === "function") {
25 - for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
26 - key = keys[i];
27 - if (!__hasOwnProp.call(to, key) && key !== except) {
28 - __defProp(to, key, {
29 - get: ((k) => from[k]).bind(null, key),
30 - enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
31 - });
32 - }
33 - }
34 - }
35 - return to;
36 - };
37 - var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
38 - value: mod,
39 - enumerable: true
40 - }) : target, mod));
5 +/***/ "../assets/dev/js/editor/container/container.js":
6 +/*!******************************************************!*\
7 + !*** ../assets/dev/js/editor/container/container.js ***!
8 + \******************************************************/
9 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
41 10
42 -//#endregion
11 +"use strict";
12 +/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
43 13
44 -//#region assets/dev/js/editor/utils/module.js
45 - var require_module = /* @__PURE__ */ __commonJSMin(((exports, module) => {
46 - var EditorModule = elementorModules.Module.extend({
47 - onInit: function onInit() {
48 - var _this = this;
49 - var $window = jQuery(window);
50 - $window.on("elementor:init-components", this.onElementorInitComponents.bind(this));
51 - $window.on("elementor:loaded", function() {
52 - _this.onElementorLoaded();
53 - elementor.on("document:loaded", _this.onDocumentLoaded.bind(_this));
54 - });
55 - $window.on("elementor:init", this.onElementorReady);
56 - },
57 - getEditorControlView: function getEditorControlView(name) {
58 - var _this$getEditorContro;
59 - return elementor.getPanelView().getCurrentPageView().children.findByModelCid((_this$getEditorContro = this.getEditorControlModel(name)) === null || _this$getEditorContro === void 0 ? void 0 : _this$getEditorContro.cid);
60 - },
61 - getEditorControlModel: function getEditorControlModel(name) {
62 - return elementor.getPanelView().getCurrentPageView().collection.findWhere({ name });
63 - },
64 - onElementorReady: function onElementorReady() {
65 - this.onElementorInit();
66 - elementor.on("frontend:init", this.onElementorFrontendInit.bind(this)).on("preview:loaded", this.onElementorPreviewLoaded.bind(this));
67 - }
68 - });
69 - EditorModule.prototype.onElementorLoaded = function() {};
70 - EditorModule.prototype.onElementorInit = function() {};
71 - EditorModule.prototype.onElementorPreviewLoaded = function() {};
72 - EditorModule.prototype.onDocumentLoaded = function() {};
73 - EditorModule.prototype.onElementorFrontendInit = function() {};
74 - EditorModule.prototype.onElementorInitComponents = function() {};
75 - module.exports = EditorModule;
76 - }));
77 14
78 -//#endregion
79 -//#region node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
80 -var import_module = /* @__PURE__ */ __toESM(require_module());
81 - function asyncGeneratorStep(n, t, e, r, o, a, c) {
82 - try {
83 - var i = n[a](c);
84 - var u = i.value;
85 - } catch (n) {
86 - e(n);
87 - return;
88 - }
89 - i.done ? t(u) : Promise.resolve(u).then(r, o);
90 - }
91 - function _asyncToGenerator(n) {
92 - return function() {
93 - var t = this;
94 - var e = arguments;
95 - return new Promise(function(r, o) {
96 - var a = n.apply(t, e);
97 - function _next(n) {
98 - asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
99 - }
100 - function _throw(n) {
101 - asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
102 - }
103 - _next(void 0);
104 - });
105 - };
106 - }
15 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
107 16
108 -//#endregion
109 -//#region node_modules/@babel/runtime/helpers/esm/classCallCheck.js
110 - function _classCallCheck(a, n) {
111 - if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function");
112 - }
17 +Object.defineProperty(exports, "__esModule", ({
18 + value: true
19 +}));
20 +exports["default"] = void 0;
113 21
114 -//#endregion
115 -//#region node_modules/@babel/runtime/helpers/esm/typeof.js
116 - function _typeof(o) {
117 - "@babel/helpers - typeof";
118 - return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
119 - return typeof o;
120 - } : function(o) {
121 - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
122 - }, _typeof(o);
123 - }
124 - var init_typeof = __esmMin((() => {}));
22 +var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"));
125 23
126 -//#endregion
127 -//#region node_modules/@babel/runtime/helpers/esm/toPrimitive.js
128 - init_typeof();
129 - function toPrimitive(t, r) {
130 - if ("object" != _typeof(t) || !t) return t;
131 - var e = t[Symbol.toPrimitive];
132 - if (void 0 !== e) {
133 - var i = e.call(t, r || "default");
134 - if ("object" != _typeof(i)) return i;
135 - throw new TypeError("@@toPrimitive must return a primitive value.");
136 - }
137 - return ("string" === r ? String : Number)(t);
138 - }
24 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
139 25
140 -//#endregion
141 -//#region node_modules/@babel/runtime/helpers/esm/toPropertyKey.js
142 - init_typeof();
143 - function toPropertyKey(t) {
144 - var i = toPrimitive(t, "string");
145 - return "symbol" == _typeof(i) ? i : i + "";
146 - }
26 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
147 27
148 -//#endregion
149 -//#region node_modules/@babel/runtime/helpers/esm/createClass.js
150 - function _defineProperties(e, r) {
151 - for (var t = 0; t < r.length; t++) {
152 - var o = r[t];
153 - o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey(o.key), o);
154 - }
155 - }
156 - function _createClass(e, r, t) {
157 - return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
158 - }
28 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
159 29
160 -//#endregion
161 -//#region node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
162 - function _assertThisInitialized(e) {
163 - if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
164 - return e;
165 - }
30 +var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
166 31
167 -//#endregion
168 -//#region node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
169 - init_typeof();
170 - function _possibleConstructorReturn(t, e) {
171 - if (e && ("object" == _typeof(e) || "function" == typeof e)) return e;
172 - if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined");
173 - return _assertThisInitialized(t);
174 - }
32 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
175 33
176 -//#endregion
177 -//#region node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
178 - function _getPrototypeOf(t) {
179 - return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(t) {
180 - return t.__proto__ || Object.getPrototypeOf(t);
181 - }, _getPrototypeOf(t);
182 - }
34 +var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
183 35
184 -//#endregion
185 -//#region node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
186 - function _setPrototypeOf(t, e) {
187 - return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(t, e) {
188 - return t.__proto__ = e, t;
189 - }, _setPrototypeOf(t, e);
190 - }
36 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
191 37
192 -//#endregion
193 -//#region node_modules/@babel/runtime/helpers/esm/inherits.js
194 - function _inherits(t, e) {
195 - if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function");
196 - t.prototype = Object.create(e && e.prototype, { constructor: {
197 - value: t,
198 - writable: !0,
199 - configurable: !0
200 - } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e);
201 - }
38 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
202 39
203 -//#endregion
204 -//#region node_modules/@babel/runtime/helpers/esm/defineProperty.js
205 - function _defineProperty(e, r, t) {
206 - return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
207 - value: t,
208 - enumerable: !0,
209 - configurable: !0,
210 - writable: !0
211 - }) : e[r] = t, e;
212 - }
40 +var _argsObject = _interopRequireDefault(__webpack_require__(/*! ../../modules/imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));
213 41
214 -//#endregion
215 -//#region node_modules/@babel/runtime/helpers/OverloadYield.js
216 - var require_OverloadYield = /* @__PURE__ */ __commonJSMin(((exports, module) => {
217 - function _OverloadYield(e, d) {
218 - this.v = e, this.k = d;
219 - }
220 - module.exports = _OverloadYield, module.exports.__esModule = true, module.exports["default"] = module.exports;
221 - }));
42 +var _panel = _interopRequireDefault(__webpack_require__(/*! ./panel */ "../assets/dev/js/editor/container/panel.js"));
222 43
223 -//#endregion
224 -//#region node_modules/@babel/runtime/helpers/regeneratorDefine.js
225 - var require_regeneratorDefine = /* @__PURE__ */ __commonJSMin(((exports, module) => {
226 - function _regeneratorDefine(e, r, n, t) {
227 - var i = Object.defineProperty;
228 - try {
229 - i({}, "", {});
230 - } catch (e) {
231 - i = 0;
232 - }
233 - module.exports = _regeneratorDefine = function regeneratorDefine(e, r, n, t) {
234 - function o(r, n) {
235 - _regeneratorDefine(e, r, function(e) {
236 - return this._invoke(r, n, e);
237 - });
238 - }
239 - r ? i ? i(e, r, {
240 - value: n,
241 - enumerable: !t,
242 - configurable: !t,
243 - writable: !t
244 - }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2));
245 - }, module.exports.__esModule = true, module.exports["default"] = module.exports, _regeneratorDefine(e, r, n, t);
246 - }
247 - module.exports = _regeneratorDefine, module.exports.__esModule = true, module.exports["default"] = module.exports;
248 - }));
44 +var _childrenArray = _interopRequireDefault(__webpack_require__(/*! ./model/children-array */ "../assets/dev/js/editor/container/model/children-array.js"));
249 45
250 -//#endregion
251 -//#region node_modules/@babel/runtime/helpers/regenerator.js
252 - var require_regenerator$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
253 - var regeneratorDefine = require_regeneratorDefine();
254 - function _regenerator() {
255 - /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
256 - var e;
257 - var t;
258 - var r = "function" == typeof Symbol ? Symbol : {};
259 - var n = r.iterator || "@@iterator";
260 - var o = r.toStringTag || "@@toStringTag";
261 - function i(r, n, o, i) {
262 - var c = n && n.prototype instanceof Generator ? n : Generator;
263 - var u = Object.create(c.prototype);
264 - return regeneratorDefine(u, "_invoke", function(r, n, o) {
265 - var i;
266 - var c;
267 - var u;
268 - var f = 0;
269 - var p = o || [];
270 - var y = !1;
271 - var G = {
272 - p: 0,
273 - n: 0,
274 - v: e,
275 - a: d,
276 - f: d.bind(e, 4),
277 - d: function d(t, r) {
278 - return i = t, c = 0, u = e, G.n = r, a;
279 - }
280 - };
281 - function d(r, n) {
282 - for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) {
283 - var o;
284 - var i = p[t];
285 - var d = G.p;
286 - var l = i[2];
287 - r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0));
288 - }
289 - if (o || r > 1) return a;
290 - throw y = !0, n;
291 - }
292 - return function(o, p, l) {
293 - if (f > 1) throw TypeError("Generator is already running");
294 - for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) {
295 - i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u);
296 - try {
297 - if (f = 2, i) {
298 - if (c || (o = "next"), t = i[o]) {
299 - if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object");
300 - if (!t.done) return t;
301 - u = t.value, c < 2 && (c = 0);
302 - } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1);
303 - i = e;
304 - } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break;
305 - } catch (t) {
306 - i = e, c = 1, u = t;
307 - } finally {
308 - f = 1;
309 - }
310 - }
311 - return {
312 - value: t,
313 - done: y
314 - };
315 - };
316 - }(r, o, i), !0), u;
317 - }
318 - var a = {};
319 - function Generator() {}
320 - function GeneratorFunction() {}
321 - function GeneratorFunctionPrototype() {}
322 - t = Object.getPrototypeOf;
323 - var c = [][n] ? t(t([][n]())) : (regeneratorDefine(t = {}, n, function() {
324 - return this;
325 - }), t);
326 - var u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c);
327 - function f(e) {
328 - return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, regeneratorDefine(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e;
329 - }
330 - return GeneratorFunction.prototype = GeneratorFunctionPrototype, regeneratorDefine(u, "constructor", GeneratorFunctionPrototype), regeneratorDefine(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", regeneratorDefine(GeneratorFunctionPrototype, o, "GeneratorFunction"), regeneratorDefine(u), regeneratorDefine(u, o, "Generator"), regeneratorDefine(u, n, function() {
331 - return this;
332 - }), regeneratorDefine(u, "toString", function() {
333 - return "[object Generator]";
334 - }), (module.exports = _regenerator = function _regenerator() {
335 - return {
336 - w: i,
337 - m: f
338 - };
339 - }, module.exports.__esModule = true, module.exports["default"] = module.exports)();
340 - }
341 - module.exports = _regenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
342 - }));
46 +function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
343 47
344 -//#endregion
345 -//#region node_modules/@babel/runtime/helpers/regeneratorAsyncIterator.js
346 - var require_regeneratorAsyncIterator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
347 - var OverloadYield = require_OverloadYield();
348 - var regeneratorDefine = require_regeneratorDefine();
349 - function AsyncIterator(t, e) {
350 - function n(r, o, i, f) {
351 - try {
352 - var c = t[r](o);
353 - var u = c.value;
354 - return u instanceof OverloadYield ? e.resolve(u.v).then(function(t) {
355 - n("next", t, i, f);
356 - }, function(t) {
357 - n("throw", t, i, f);
358 - }) : e.resolve(u).then(function(t) {
359 - c.value = t, i(c);
360 - }, function(t) {
361 - return n("throw", t, i, f);
362 - });
363 - } catch (t) {
364 - f(t);
365 - }
366 - }
367 - var r;
368 - this.next || (regeneratorDefine(AsyncIterator.prototype), regeneratorDefine(AsyncIterator.prototype, "function" == typeof Symbol && Symbol.asyncIterator || "@asyncIterator", function() {
369 - return this;
370 - })), regeneratorDefine(this, "_invoke", function(t, o, i) {
371 - function f() {
372 - return new e(function(e, r) {
373 - n(t, i, e, r);
374 - });
375 - }
376 - return r = r ? r.then(f, f) : f();
377 - }, !0);
378 - }
379 - module.exports = AsyncIterator, module.exports.__esModule = true, module.exports["default"] = module.exports;
380 - }));
48 +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
381 49
382 -//#endregion
383 -//#region node_modules/@babel/runtime/helpers/regeneratorAsyncGen.js
384 - var require_regeneratorAsyncGen = /* @__PURE__ */ __commonJSMin(((exports, module) => {
385 - var regenerator = require_regenerator$1();
386 - var regeneratorAsyncIterator = require_regeneratorAsyncIterator();
387 - function _regeneratorAsyncGen(r, e, t, o, n) {
388 - return new regeneratorAsyncIterator(regenerator().w(r, e, t, o), n || Promise);
389 - }
390 - module.exports = _regeneratorAsyncGen, module.exports.__esModule = true, module.exports["default"] = module.exports;
391 - }));
50 +/**
51 + * @typedef {import('../../../../lib/backbone/backbone.marionette')} Backbone
52 + * @typedef {import('../../../../lib/backbone/backbone.marionette')} Marionette
53 + * @typedef {import('../elements/views/base')} BaseElementView
54 + * @typedef {import('../elements/views/section')} SectionView
55 + * @typedef {import('../views/base-container')} BaseContainer
56 + * @typedef {import('../elements/models/base-element-model')} BaseElementModel
57 + */
392 58
393 -//#endregion
394 -//#region node_modules/@babel/runtime/helpers/regeneratorAsync.js
395 - var require_regeneratorAsync = /* @__PURE__ */ __commonJSMin(((exports, module) => {
396 - var regeneratorAsyncGen = require_regeneratorAsyncGen();
397 - function _regeneratorAsync(n, e, r, t, o) {
398 - var a = regeneratorAsyncGen(n, e, r, t, o);
399 - return a.next().then(function(n) {
400 - return n.done ? n.value : a.next();
401 - });
402 - }
403 - module.exports = _regeneratorAsync, module.exports.__esModule = true, module.exports["default"] = module.exports;
404 - }));
59 +/**
60 + * TODO: ViewsOptions
61 + *
62 + * @typedef {(Marionette.View|Marionette.CompositeView|BaseElementView|SectionView|BaseContainer)} ViewsOptions
63 + */
64 +var Container = /*#__PURE__*/function (_ArgsObject) {
65 + (0, _inherits2.default)(Container, _ArgsObject);
405 66
406 -//#endregion
407 -//#region node_modules/@babel/runtime/helpers/regeneratorKeys.js
408 - var require_regeneratorKeys = /* @__PURE__ */ __commonJSMin(((exports, module) => {
409 - function _regeneratorKeys(e) {
410 - var n = Object(e);
411 - var r = [];
412 - for (var t in n) r.unshift(t);
413 - return function e() {
414 - for (; r.length;) if ((t = r.pop()) in n) return e.value = t, e.done = !1, e;
415 - return e.done = !0, e;
416 - };
417 - }
418 - module.exports = _regeneratorKeys, module.exports.__esModule = true, module.exports["default"] = module.exports;
419 - }));
67 + var _super = _createSuper(Container);
420 68
421 -//#endregion
422 -//#region node_modules/@babel/runtime/helpers/typeof.js
423 - var require_typeof = /* @__PURE__ */ __commonJSMin(((exports, module) => {
424 - function _typeof(o) {
425 - "@babel/helpers - typeof";
426 - return module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
427 - return typeof o;
428 - } : function(o) {
429 - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
430 - }, module.exports.__esModule = true, module.exports["default"] = module.exports, _typeof(o);
431 - }
432 - module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
433 - }));
69 + // TODO: Swap those backwards compatibility is required.
434 70
435 -//#endregion
436 -//#region node_modules/@babel/runtime/helpers/regeneratorValues.js
437 - var require_regeneratorValues = /* @__PURE__ */ __commonJSMin(((exports, module) => {
438 - var _typeof = require_typeof()["default"];
439 - function _regeneratorValues(e) {
440 - if (null != e) {
441 - var t = e["function" == typeof Symbol && Symbol.iterator || "@@iterator"];
442 - var r = 0;
443 - if (t) return t.call(e);
444 - if ("function" == typeof e.next) return e;
445 - if (!isNaN(e.length)) return { next: function next() {
446 - return e && r >= e.length && (e = void 0), {
447 - value: e && e[r++],
448 - done: !e
449 - };
450 - } };
451 - }
452 - throw new TypeError(_typeof(e) + " is not iterable");
453 - }
454 - module.exports = _regeneratorValues, module.exports.__esModule = true, module.exports["default"] = module.exports;
455 - }));
71 + /**
72 + * Container type.
73 + *
74 + * @type {string}
75 + */
456 76
457 -//#endregion
458 -//#region node_modules/@babel/runtime/helpers/regeneratorRuntime.js
459 - var require_regeneratorRuntime = /* @__PURE__ */ __commonJSMin(((exports, module) => {
460 - var OverloadYield = require_OverloadYield();
461 - var regenerator = require_regenerator$1();
462 - var regeneratorAsync = require_regeneratorAsync();
463 - var regeneratorAsyncGen = require_regeneratorAsyncGen();
464 - var regeneratorAsyncIterator = require_regeneratorAsyncIterator();
465 - var regeneratorKeys = require_regeneratorKeys();
466 - var regeneratorValues = require_regeneratorValues();
467 - function _regeneratorRuntime() {
468 - "use strict";
469 - var r = regenerator();
470 - var e = r.m(_regeneratorRuntime);
471 - var t = (Object.getPrototypeOf ? Object.getPrototypeOf(e) : e.__proto__).constructor;
472 - function n(r) {
473 - var e = "function" == typeof r && r.constructor;
474 - return !!e && (e === t || "GeneratorFunction" === (e.displayName || e.name));
475 - }
476 - var o = {
477 - "throw": 1,
478 - "return": 2,
479 - "break": 3,
480 - "continue": 3
481 - };
482 - function a(r) {
483 - var e;
484 - var t;
485 - return function(n) {
486 - e || (e = {
487 - stop: function stop() {
488 - return t(n.a, 2);
489 - },
490 - "catch": function _catch() {
491 - return n.v;
492 - },
493 - abrupt: function abrupt(r, e) {
494 - return t(n.a, o[r], e);
495 - },
496 - delegateYield: function delegateYield(r, o, a) {
497 - return e.resultName = o, t(n.d, regeneratorValues(r), a);
498 - },
499 - finish: function finish(r) {
500 - return t(n.f, r);
501 - }
502 - }, t = function t(r, _t, o) {
503 - n.p = e.prev, n.n = e.next;
504 - try {
505 - return r(_t, o);
506 - } finally {
507 - e.next = n.n;
508 - }
509 - }), e.resultName && (e[e.resultName] = n.v, e.resultName = void 0), e.sent = n.v, e.next = n.n;
510 - try {
511 - return r.call(this, e);
512 - } finally {
513 - n.p = e.prev, n.n = e.next;
514 - }
515 - };
516 - }
517 - return (module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
518 - return {
519 - wrap: function wrap(e, t, n, o) {
520 - return r.w(a(e), t, n, o && o.reverse());
521 - },
522 - isGeneratorFunction: n,
523 - mark: r.m,
524 - awrap: function awrap(r, e) {
525 - return new OverloadYield(r, e);
526 - },
527 - AsyncIterator: regeneratorAsyncIterator,
528 - async: function async(r, e, t, o, u) {
529 - return (n(e) ? regeneratorAsyncGen : regeneratorAsync)(a(r), e, t, o, u);
530 - },
531 - keys: regeneratorKeys,
532 - values: regeneratorValues
533 - };
534 - }, module.exports.__esModule = true, module.exports["default"] = module.exports)();
535 - }
536 - module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
537 - }));
77 + /**
78 + * Container id.
79 + *
80 + * @type {string}
81 + */
538 82
539 -//#endregion
540 -//#region node_modules/@babel/runtime/regenerator/index.js
541 - var require_regenerator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
542 - var runtime = require_regeneratorRuntime()();
543 - module.exports = runtime;
544 - try {
545 - regeneratorRuntime = runtime;
546 - } catch (accidentalStrictMode) {
547 - if (typeof globalThis === "object") globalThis.regeneratorRuntime = runtime;
548 - else Function("r", "regeneratorRuntime = r")(runtime);
549 - }
550 - }));
83 + /**
84 + * Document Object.
85 + *
86 + * @type {{}}
87 + */
551 88
552 -//#endregion
553 -//#region assets/dev/js/utils/introduction.js
554 - var import_regenerator = /* @__PURE__ */ __toESM(require_regenerator());
555 - function _callSuper$3(t, o, e) {
556 - return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$4() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
557 - }
558 - __name(_callSuper$3, "_callSuper");
559 - function _isNativeReflectConstruct$4() {
560 - try {
561 - var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
562 - } catch (t) {}
563 - return (_isNativeReflectConstruct$4 = function _isNativeReflectConstruct() {
564 - return !!t;
565 - })();
566 - }
567 - __name(_isNativeReflectConstruct$4, "_isNativeReflectConstruct");
568 - var _default = /*#__PURE__*/ function(_elementorModules$Mod) {
569 - function _default() {
570 - var _this;
571 - _classCallCheck(this, _default);
572 - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
573 - _this = _callSuper$3(this, _default, [].concat(args));
574 - _defineProperty(_this, "introductionMap", null);
575 - _this.initDialog();
576 - return _this;
577 - }
578 - _inherits(_default, _elementorModules$Mod);
579 - return _createClass(_default, [
580 - {
581 - key: "setIntroductionMap",
582 - value: function setIntroductionMap(map) {
583 - this.introductionMap = map;
584 - }
585 - },
586 - {
587 - key: "getIntroductionMap",
588 - value: function getIntroductionMap() {
589 - return this.introductionMap || elementor.config.user.introduction;
590 - }
591 - },
592 - {
593 - key: "getDefaultSettings",
594 - value: function getDefaultSettings() {
595 - return {
596 - dialogType: "buttons",
597 - dialogOptions: {
598 - effects: {
599 - hide: "hide",
600 - show: "show"
601 - },
602 - hide: { onBackgroundClick: false }
603 - }
604 - };
605 - }
606 - },
607 - {
608 - key: "initDialog",
609 - value: function initDialog() {
610 - var _this2 = this;
611 - var dialog;
612 - this.getDialog = function() {
613 - if (!dialog) {
614 - var settings = _this2.getSettings();
615 - dialog = elementorCommon.dialogsManager.createWidget(settings.dialogType, settings.dialogOptions);
616 - if (settings.onDialogInitCallback) settings.onDialogInitCallback.call(_this2, dialog);
617 - }
618 - return dialog;
619 - };
620 - }
621 - },
622 - {
623 - key: "show",
624 - value: function show(target) {
625 - if (this.introductionViewed) return;
626 - var dialog = this.getDialog();
627 - if (target) dialog.setSettings("position", { of: target });
628 - dialog.show();
629 - }
630 - },
631 - {
632 - key: "introductionViewed",
633 - get: function get() {
634 - var introductionKey = this.getSettings("introductionKey");
635 - return this.getIntroductionMap()[introductionKey];
636 - },
637 - set: function set(isViewed) {
638 - var introductionKey = this.getSettings("introductionKey");
639 - this.getIntroductionMap()[introductionKey] = isViewed;
640 - }
641 - },
642 - {
643 - key: "setViewed",
644 - value: function() {
645 - var _setViewed = _asyncToGenerator(/*#__PURE__*/ import_regenerator.default.mark(function _callee() {
646 - var _this3 = this;
647 - return import_regenerator.default.wrap(function(_context) {
648 - while (1) switch (_context.prev = _context.next) {
649 - case 0:
650 - this.introductionViewed = true;
651 - return _context.abrupt("return", new Promise(function(resolve, reject) {
652 - elementorCommon.ajax.addRequest("introduction_viewed", {
653 - data: { introductionKey: _this3.getSettings("introductionKey") },
654 - success: resolve,
655 - error: reject
656 - });
657 - }));
658 - case 1:
659 - case "end": return _context.stop();
660 - }
661 - }, _callee, this);
662 - }));
663 - function setViewed() {
664 - return _setViewed.apply(this, arguments);
665 - }
666 - return setViewed;
667 - }()
668 - }
669 - ]);
670 - }(elementorModules.Module);
89 + /**
90 + * Container model.
91 + *
92 + * @type {(Backbone.Model|BaseElementModel)}
93 + */
671 94
672 -//#endregion
673 -//#region assets/dev/js/editor/views/controls-popover.js
674 - var ControlsPopover = /*#__PURE__*/ function() {
675 - function ControlsPopover(child) {
676 - _classCallCheck(this, ControlsPopover);
677 - this.child = child;
678 - this.$popover = jQuery("<div>", { class: "elementor-controls-popover" });
679 - child.$el.before(this.$popover);
680 - this.$popover.append(child.$el);
681 - this.popoverToggleView = child._parent.children.findByIndex(child._index - 1);
682 - if ("typography" === this.child.model.attributes.groupType) this.createPopoverHeader();
683 - }
684 - return _createClass(ControlsPopover, [
685 - {
686 - key: "addChild",
687 - value: function addChild(child) {
688 - this.$popover.append(child.$el);
689 - }
690 - },
691 - {
692 - key: "createPopoverHeader",
693 - value: function createPopoverHeader() {
694 - var _this = this;
695 - var $resetLabel = this.$popover.prev().find(".elementor-control-popover-toggle-reset-label");
696 - this.$popoverHeader = jQuery("<div>", { class: "e-group-control-header" }).html("<span>" + (0, _wordpress_i18n.__)("Typography", "elementor") + "</span>");
697 - this.$headerControlsWrapper = jQuery("<div>", { class: "e-control-tools" });
698 - $resetLabel.addClass("e-control-tool").on("click", function() {
699 - return _this.onResetButtonClick();
700 - });
701 - this.$headerControlsWrapper.append($resetLabel);
702 - this.$popoverHeader.append(this.$headerControlsWrapper);
703 - var globalConfig = this.popoverToggleView.model.get("global");
704 - if (globalConfig !== null && globalConfig !== void 0 && globalConfig.active) this.createAddButton();
705 - this.$popover.prepend(this.$popoverHeader).addClass("e-controls-popover--typography");
706 - }
707 - },
708 - {
709 - key: "onResetButtonClick",
710 - value: function onResetButtonClick() {
711 - this.$popover.hide();
712 - this.$popover.trigger("hide");
713 - var groupControlName = this.child.model.get("groupPrefix") + "typography";
714 - var args = {
715 - container: this.child.options.container,
716 - settings: _defineProperty({}, groupControlName, "")
717 - };
718 - if (this.child.options.container.globals.get(groupControlName)) $e.run("document/globals/disable", args);
719 - else $e.run("document/elements/settings", args);
720 - }
721 - },
722 - {
723 - key: "onAddButtonClick",
724 - value: function onAddButtonClick() {
725 - this.popoverToggleView.onAddGlobalButtonClick();
726 - }
727 - },
728 - {
729 - key: "createAddButton",
730 - value: function createAddButton() {
731 - var _this2 = this;
732 - this.$addButton = jQuery("<button>", { class: "e-control-tool" }).html(jQuery("<i>", { class: "eicon-plus" }));
733 - this.$headerControlsWrapper.append(this.$addButton);
734 - this.$addButton.on("click", function() {
735 - return _this2.onAddButtonClick();
736 - });
737 - this.$addButton.tipsy({
738 - title: function title() {
739 - return (0, _wordpress_i18n.__)("Create New Global Font", "elementor");
740 - },
741 - gravity: function gravity() {
742 - return "s";
743 - }
744 - });
745 - }
746 - },
747 - {
748 - key: "destroy",
749 - value: function destroy() {
750 - this.$popover.remove();
751 - }
752 - }
753 - ]);
754 - }();
95 + /**
96 + * Container settings.
97 + *
98 + * @type {Backbone.Model}
99 + */
755 100
756 -//#endregion
757 -//#region assets/dev/js/editor/elements/views/behaviors/inner-tabs.js
758 - var require_inner_tabs = /* @__PURE__ */ __commonJSMin(((exports, module) => {
759 - var InnerTabsBehavior = Marionette.Behavior.extend({
760 - onRenderCollection: function onRenderCollection() {
761 - this.handleInnerTabs(this.view);
762 - },
763 - handleInnerTabs: function handleInnerTabs(parent) {
764 - var closedClass = "e-tab-close";
765 - var activeClass = "e-tab-active";
766 - var tabsWrappers = parent.children.filter(function(view) {
767 - return "tabs" === view.model.get("type");
768 - });
769 - _.each(tabsWrappers, function(view) {
770 - view.$el.find(".elementor-control-content").remove();
771 - var tabsId = view.model.get("name");
772 - var tabs = parent.children.filter(function(childView) {
773 - return "tab" === childView.model.get("type") && childView.model.get("tabs_wrapper") === tabsId;
774 - });
775 - _.each(tabs, function(childView, index) {
776 - view._addChildView(childView);
777 - var tabId = childView.model.get("name");
778 - var controlsUnderTab = parent.children.filter(function(controlView) {
779 - return tabId === controlView.model.get("inner_tab");
780 - });
781 - if (0 === index) childView.$el.addClass(activeClass);
782 - else _.each(controlsUnderTab, function(controlView) {
783 - controlView.$el.addClass(closedClass);
784 - });
785 - });
786 - });
787 - },
788 - onChildviewControlTabClicked: function onChildviewControlTabClicked(childView) {
789 - var closedClass = "e-tab-close";
790 - var activeClass = "e-tab-active";
791 - var tabClicked = childView.model.get("name");
792 - var childrenUnderTab = this.view.children.filter(function(view) {
793 - return "tab" !== view.model.get("type") && childView.model.get("tabs_wrapper") === view.model.get("tabs_wrapper");
794 - });
795 - var siblingTabs = this.view.children.filter(function(view) {
796 - return "tab" === view.model.get("type") && childView.model.get("tabs_wrapper") === view.model.get("tabs_wrapper");
797 - });
798 - _.each(siblingTabs, function(view) {
799 - view.$el.removeClass(activeClass);
800 - });
801 - childView.$el.addClass(activeClass);
802 - _.each(childrenUnderTab, function(view) {
803 - if (view.model.get("inner_tab") === tabClicked) view.$el.removeClass(closedClass);
804 - else view.$el.addClass(closedClass);
805 - });
806 - elementor.getPanelView().updateScrollbar();
807 - }
808 - });
809 - module.exports = InnerTabsBehavior;
810 - }));
101 + /**
102 + * Container view.
103 + *
104 + * @type {ViewsOptions}
105 + */
811 106
812 -//#endregion
813 -//#region assets/dev/js/editor/views/controls-stack.js
814 - var ControlsStack = Marionette.CompositeView.extend({
815 - classes: { popover: "elementor-controls-popover" },
816 - activeTab: null,
817 - activeSection: null,
818 - className: function className() {
819 - return "elementor-controls-stack";
820 - },
821 - templateHelpers: function templateHelpers() {
822 - return { elementData: elementor.getElementData(this.model) };
823 - },
824 - childViewOptions: function childViewOptions() {
825 - return { elementSettingsModel: this.model };
826 - },
827 - ui: function ui() {
828 - return {
829 - tabs: ".elementor-panel-navigation-tab",
830 - reloadButton: ".elementor-update-preview-button"
831 - };
832 - },
833 - events: function events() {
834 - return { "click @ui.reloadButton": "onReloadButtonClick" };
835 - },
836 - modelEvents: { destroy: "onModelDestroy" },
837 - behaviors: { HandleInnerTabs: { behaviorClass: require_inner_tabs() } },
838 - initialize: function initialize(options) {
839 - this.initCollection();
840 - if (options.tab) {
841 - this.activeTab = options.tab;
842 - this.activateFirstSection();
843 - }
844 - this.listenTo(elementor.channels.deviceMode, "change", this.onDeviceModeChange);
845 - },
846 - onDestroy: function onDestroy() {
847 - this.stopListening(elementor.channels.deviceMode, "change", this.onDeviceModeChange);
848 - },
849 - initCollection: function initCollection() {
850 - this.collection = new Backbone.Collection(_.values(elementor.mergeControlsSettings(this.getOption("controls"))));
851 - },
852 - filter: function filter(controlModel) {
853 - if (controlModel.get("tab") !== this.activeTab) return false;
854 - if ("section" === controlModel.get("type")) return true;
855 - var section = controlModel.get("section");
856 - return !section || section === this.activeSection;
857 - },
858 - getControlViewByModel: function getControlViewByModel(model) {
859 - return this.children.findByModelCid(model.cid);
860 - },
861 - getControlViewByName: function getControlViewByName(name) {
862 - return this.getControlViewByModel(this.getControlModel(name));
863 - },
864 - getControlModel: function getControlModel(name) {
865 - return this.collection.findWhere({ name });
866 - },
867 - isVisibleSectionControl: function isVisibleSectionControl(sectionControlModel) {
868 - return this.activeTab === sectionControlModel.get("tab");
869 - },
870 - activateTab: function activateTab(tab) {
871 - this.activeTab = tab;
872 - this.activateFirstSection();
873 - this._renderChildren();
874 - return this;
875 - },
876 - activateSection: function activateSection(sectionName) {
877 - this.activeSection = sectionName;
878 - return this;
879 - },
880 - activateFirstSection: function activateFirstSection() {
881 - var self = this;
882 - var sectionControls = self.collection.filter(function(controlModel) {
883 - return "section" === controlModel.get("type") && self.isVisibleSectionControl(controlModel);
884 - });
885 - var sectionToActivate;
886 - if (!sectionControls[0]) {
887 - self.activeSection = null;
888 - sectionToActivate = null;
889 - } else sectionToActivate = sectionControls[0].get("name");
890 - if (sectionControls.filter(function(controlModel) {
891 - return self.activeSection === controlModel.get("name");
892 - })[0]) return;
893 - self.activateSection(sectionToActivate);
894 - return this;
895 - },
896 - getChildView: function getChildView(item) {
897 - var controlType = item.get("type");
898 - return elementor.getControlView(controlType);
899 - },
900 - getNamespaceArray: function getNamespaceArray() {
901 - return [elementor.getPanelView().getCurrentPageName()];
902 - },
903 - openActiveSection: function openActiveSection() {
904 - var activeSection = this.activeSection;
905 - var activeSectionView = this.children.filter(function(view) {
906 - return activeSection === view.model.get("name");
907 - });
908 - if (activeSectionView[0]) {
909 - activeSectionView[0].$el.addClass("e-open");
910 - var eventNamespace = this.getNamespaceArray();
911 - eventNamespace.push(activeSection, "activated");
912 - elementor.channels.editor.trigger(eventNamespace.join(":"), this);
913 - }
914 - },
915 - onRenderCollection: function onRenderCollection() {
916 - this.openActiveSection();
917 - ControlsStack.handlePopovers(this);
918 - },
919 - onModelDestroy: function onModelDestroy() {
920 - this.destroy();
921 - },
922 - onReloadButtonClick: function onReloadButtonClick() {
923 - elementor.reloadPreview();
924 - },
925 - onDeviceModeChange: function onDeviceModeChange() {
926 - if ("desktop" === elementor.channels.deviceMode.request("currentMode")) this.$el.removeClass("elementor-responsive-switchers-open");
927 - },
928 - onChildviewControlSectionClicked: function onChildviewControlSectionClicked(childView) {
929 - var isSectionOpen = childView.$el.hasClass("e-open");
930 - this.activateSection(isSectionOpen ? null : childView.model.get("name"));
931 - this._renderChildren();
932 - },
933 - onChildviewResponsiveSwitcherClick: function onChildviewResponsiveSwitcherClick(childView, device) {
934 - if ("desktop" === device) this.$el.toggleClass("elementor-responsive-switchers-open");
935 - }
936 - }, {
937 - handlePopovers: function handlePopovers(view) {
938 - var popover;
939 - this.removePopovers(view);
940 - view.popovers = [];
941 - view.children.each(function(control) {
942 - if (popover) popover.addChild(control);
943 - var popoverData = control.model.get("popover");
944 - if (!popoverData) return;
945 - if (popoverData.start) {
946 - popover = new ControlsPopover(control);
947 - view.popovers.push(popover);
948 - }
949 - if (popoverData.end) popover = null;
950 - });
951 - },
952 - removePopovers: function removePopovers(view) {
953 - var _view$popovers;
954 - (_view$popovers = view.popovers) === null || _view$popovers === void 0 || _view$popovers.forEach(function(popover) {
955 - return popover.destroy();
956 - });
957 - }
958 - });
107 + /**
108 + * Container parent.
109 + *
110 + * @type {Container}
111 + */
959 112
960 -//#endregion
961 -//#region assets/dev/js/editor/elements/models/base-settings.js
962 - var require_base_settings = /* @__PURE__ */ __commonJSMin(((exports, module) => {
963 - init_typeof();
964 - var BaseSettingsModel = Backbone.Model.extend({
965 - options: {},
966 - initialize: function initialize(data, options) {
967 - var self = this;
968 - self.options = options;
969 - self.controls = elementor.mergeControlsSettings(options.controls);
970 - self.validators = {};
971 - if (!self.controls) return;
972 - var attrs = data || {};
973 - var defaults = {};
974 - _.each(self.controls, function(control) {
975 - if (control.features && -1 !== control.features.indexOf("ui")) return;
976 - var controlName = control.name;
977 - if ("object" === _typeof(control.default)) defaults[controlName] = structuredClone(control.default);
978 - else defaults[controlName] = control.default;
979 - var isDynamicControl = control.dynamic && control.dynamic.active;
980 - var hasDynamicSettings = isDynamicControl && attrs.__dynamic__ && attrs.__dynamic__[controlName];
981 - if (isDynamicControl && !hasDynamicSettings && control.dynamic.default) {
982 - if (!attrs.__dynamic__) attrs.__dynamic__ = {};
983 - attrs.__dynamic__[controlName] = control.dynamic.default;
984 - hasDynamicSettings = true;
985 - }
986 - var isMultipleControl = jQuery.isPlainObject(control.default);
987 - if (void 0 !== attrs[controlName] && isMultipleControl && !_.isObject(attrs[controlName]) && !hasDynamicSettings) {
988 - elementorCommon.debug.addCustomError(/* @__PURE__ */ new TypeError("An invalid argument supplied as multiple control value"), "InvalidElementData", "Element `" + (self.get("widgetType") || self.get("elType")) + "` got <" + attrs[controlName] + "> as `" + controlName + "` value. Expected array or object.");
989 - delete attrs[controlName];
990 - }
991 - if (void 0 === attrs[controlName]) attrs[controlName] = defaults[controlName];
992 - });
993 - self.defaults = defaults;
994 - self.handleRepeaterData(attrs);
995 - self.set(attrs);
996 - },
997 - convertRepeaterValueToCollection: function convertRepeaterValueToCollection(attrs, repeaterControl) {
998 - return new Backbone.Collection(attrs[repeaterControl.name], { model: function model(attributes, options) {
999 - options = options || {};
1000 - options.controls = {};
1001 - Object.values(repeaterControl.fields).forEach(function(item) {
1002 - options.controls[item.name] = item;
1003 - });
1004 - if (!attributes._id) attributes._id = elementorCommon.helpers.getUniqueId();
1005 - return new BaseSettingsModel(attributes, options);
1006 - } });
1007 - },
1008 - handleRepeaterData: function handleRepeaterData(attrs) {
1009 - var self = this;
1010 - _.each(this.controls, function(field) {
1011 - if (field.is_repeater) {
1012 - if (!(attrs[field.name] instanceof Backbone.Collection)) attrs[field.name] = self.convertRepeaterValueToCollection(attrs, field);
1013 - }
1014 - });
1015 - },
1016 - getFontControls: function getFontControls() {
1017 - return this.getControlsByType("font");
1018 - },
1019 - getIconsControls: function getIconsControls() {
1020 - return this.getControlsByType("icons");
1021 - },
1022 - getControlsByType: function getControlsByType(type) {
1023 - return _.filter(this.getActiveControls(), function(control) {
1024 - return type === control.type;
1025 - });
1026 - },
1027 - getStyleControls: function getStyleControls(controls, attributes) {
1028 - var self = this;
1029 - controls = structuredClone(self.getActiveControls(controls, attributes));
1030 - var styleControls = [];
1031 - jQuery.each(controls, function() {
1032 - var _control$dynamic;
1033 - var control = this;
1034 - var controlDefaultSettings = elementor.config.controls[control.type];
1035 - control = jQuery.extend({}, controlDefaultSettings, control);
1036 - if (control.fields) {
1037 - var styleFields = [];
1038 - if (!(self.attributes[control.name] instanceof Backbone.Collection)) self.attributes[control.name] = self.convertRepeaterValueToCollection(self.attributes, control);
1039 - self.attributes[control.name].each(function(item) {
1040 - styleFields.push(self.getStyleControls(control.fields, item.attributes));
1041 - });
1042 - control.styleFields = styleFields;
1043 - }
1044 - if (control.fields || (_control$dynamic = control.dynamic) !== null && _control$dynamic !== void 0 && _control$dynamic.active || self.isGlobalControl(control, controls) || self.isStyleControl(control.name, controls)) styleControls.push(control);
1045 - });
1046 - return styleControls;
1047 - },
1048 - isGlobalControl: function isGlobalControl(control, controls) {
1049 - var _globalControl$global;
1050 - var _this$attributes$__gl;
1051 - var controlGlobalKey = control.name;
1052 - if (control.groupType) controlGlobalKey = control.groupPrefix + control.groupType;
1053 - var globalControl = controls[controlGlobalKey];
1054 - if (!(globalControl !== null && globalControl !== void 0 && (_globalControl$global = globalControl.global) !== null && _globalControl$global !== void 0 && _globalControl$global.active)) return false;
1055 - return !!((_this$attributes$__gl = this.attributes.__globals__) === null || _this$attributes$__gl === void 0 ? void 0 : _this$attributes$__gl[controlGlobalKey]);
1056 - },
1057 - isStyleControl: function isStyleControl(attribute, controls) {
1058 - controls = controls || this.controls;
1059 - var currentControl = _.find(controls, function(control) {
1060 - return attribute === control.name;
1061 - });
1062 - return currentControl && !_.isEmpty(currentControl.selectors);
1063 - },
1064 - getClassControls: function getClassControls(controls) {
1065 - controls = controls || this.controls;
1066 - return _.filter(controls, function(control) {
1067 - return !_.isUndefined(control.prefix_class);
1068 - });
1069 - },
1070 - isClassControl: function isClassControl(attribute) {
1071 - var currentControl = _.find(this.controls, function(control) {
1072 - return attribute === control.name;
1073 - });
1074 - return currentControl && !_.isUndefined(currentControl.prefix_class);
1075 - },
1076 - getControl: function getControl(id) {
1077 - return _.find(this.controls, function(control) {
1078 - return id === control.name;
1079 - });
1080 - },
1081 - getActiveControls: function getActiveControls(controls, attributes) {
1082 - var activeControls = {};
1083 - if (!controls) controls = this.controls;
1084 - if (!attributes) attributes = this.attributes;
1085 - attributes = this.parseGlobalSettings(attributes, controls);
1086 - jQuery.each(controls, function(controlKey, control) {
1087 - if (elementor.helpers.isActiveControl(control, attributes, controls)) activeControls[controlKey] = control;
1088 - });
1089 - return activeControls;
1090 - },
1091 - clone: function clone() {
1092 - return new BaseSettingsModel(elementorCommon.helpers.cloneObject(this.attributes), elementorCommon.helpers.cloneObject(this.options));
1093 - },
1094 - setExternalChange: function setExternalChange(key, value) {
1095 - var self = this;
1096 - var settingsToChange;
1097 - if ("object" === _typeof(key)) settingsToChange = key;
1098 - else {
1099 - settingsToChange = {};
1100 - settingsToChange[key] = value;
1101 - }
1102 - self.set(settingsToChange);
1103 - jQuery.each(settingsToChange, function(changedKey, changedValue) {
1104 - self.trigger("change:external:" + changedKey, changedValue);
1105 - });
1106 - },
1107 - parseDynamicSettings: function parseDynamicSettings(settings, options, controls) {
1108 - var self = this;
1109 - settings = elementorCommon.helpers.cloneObject(settings || self.attributes);
1110 - options = options || {};
1111 - controls = controls || this.controls;
1112 - jQuery.each(controls, function() {
1113 - var control = this;
1114 - var valueToParse;
1115 - if (control.is_repeater) {
1116 - valueToParse = settings[control.name];
1117 - valueToParse.forEach(function(value, key) {
1118 - valueToParse[key] = self.parseDynamicSettings(value, options, control.fields);
1119 - });
1120 - return;
1121 - }
1122 - valueToParse = settings.__dynamic__ && settings.__dynamic__[control.name];
1123 - if (!valueToParse) return;
1124 - var dynamicSettings = control.dynamic;
1125 - if (void 0 === dynamicSettings) dynamicSettings = elementor.config.controls[control.type].dynamic;
1126 - if (!dynamicSettings || !dynamicSettings.active) return;
1127 - var dynamicValue;
1128 - try {
1129 - dynamicValue = elementor.dynamicTags.parseTagsText(valueToParse, dynamicSettings, elementor.dynamicTags.getTagDataContent);
1130 - } catch (error) {
1131 - if (elementor.dynamicTags.CACHE_KEY_NOT_FOUND_ERROR !== error.message) throw error;
1132 - dynamicValue = "";
1133 - if (options.onServerRequestStart) options.onServerRequestStart();
1134 - elementor.dynamicTags.refreshCacheFromServer(function() {
1135 - if (options.onServerRequestEnd) options.onServerRequestEnd();
1136 - });
1137 - }
1138 - if (dynamicSettings.property) settings[control.name][dynamicSettings.property] = dynamicValue;
1139 - else settings[control.name] = dynamicValue;
1140 - });
1141 - return settings;
1142 - },
1143 - parseGlobalSettings: function parseGlobalSettings(settings, controls) {
1144 - var _this = this;
1145 - settings = elementorCommon.helpers.cloneObject(settings);
1146 - controls = controls || this.controls;
1147 - jQuery.each(controls, function(index, control) {
1148 - var _settings$__globals__;
1149 - var _globalSettings;
1150 - var valueToParse;
1151 - if (control.is_repeater) {
1152 - valueToParse = settings[control.name];
1153 - valueToParse.forEach(function(value, key) {
1154 - valueToParse[key] = _this.parseGlobalSettings(value, control.fields);
1155 - });
1156 - return;
1157 - }
1158 - valueToParse = (_settings$__globals__ = settings.__globals__) === null || _settings$__globals__ === void 0 ? void 0 : _settings$__globals__[control.name];
1159 - if (!valueToParse) return;
1160 - var globalSettings = control.global;
1161 - if (void 0 === globalSettings) globalSettings = elementor.config.controls[control.type].global;
1162 - if (!((_globalSettings = globalSettings) !== null && _globalSettings !== void 0 && _globalSettings.active)) return;
1163 - var _$e$data$commandExtra = $e.data.commandExtractArgs(valueToParse);
1164 - var command = _$e$data$commandExtra.command;
1165 - var args = _$e$data$commandExtra.args;
1166 - var globalValue = $e.data.getCache($e.components.get("globals"), command, args.query);
1167 - if (control.groupType) settings[control.name] = "custom";
1168 - else settings[control.name] = globalValue;
1169 - });
1170 - return settings;
1171 - },
1172 - removeDataDefaults: function removeDataDefaults(data, controls) {
1173 - var _this2 = this;
1174 - jQuery.each(data, function(key) {
1175 - var control = controls[key];
1176 - if (!control) return;
1177 - if (control.save_default || ("text" === control.type || "textarea" === control.type) && data[key]) return;
1178 - if (control.is_repeater) {
1179 - data[key].forEach(function(repeaterRow) {
1180 - _this2.removeDataDefaults(repeaterRow, control.fields);
1181 - });
1182 - return;
1183 - }
1184 - if (_.isEqual(data[key], control.default)) delete data[key];
1185 - });
1186 - },
1187 - toJSON: function toJSON(options) {
1188 - var data = Backbone.Model.prototype.toJSON.call(this);
1189 - options = options || {};
1190 - delete data.widgetType;
1191 - delete data.elType;
1192 - delete data.isInner;
1193 - _.each(data, function(attribute, key) {
1194 - if (attribute && attribute.toJSON) data[key] = attribute.toJSON();
1195 - });
1196 - if (options.remove && -1 !== options.remove.indexOf("default")) this.removeDataDefaults(data, this.controls);
1197 - return structuredClone(data);
1198 - }
1199 - });
1200 - /**
1201 - * @name BaseSettingsModel
1202 - */
1203 - module.exports = BaseSettingsModel;
1204 - }));
113 + /**
114 + * Container children(s).
115 + *
116 + * @type {ChildrenArray}
117 + */
1205 118
1206 -//#endregion
1207 -//#region node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
1208 -var import_base_settings = /* @__PURE__ */ __toESM(require_base_settings());
1209 - function _arrayWithHoles(r) {
1210 - if (Array.isArray(r)) return r;
1211 - }
119 + /**
120 + * Container dynamic.
121 + *
122 + * @type {Backbone.Model}
123 + */
1212 124
1213 -//#endregion
1214 -//#region node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
1215 - function _iterableToArrayLimit(r, l) {
1216 - var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
1217 - if (null != t) {
1218 - var e;
1219 - var n;
1220 - var i;
1221 - var u;
1222 - var a = [];
1223 - var f = !0;
1224 - var o = !1;
1225 - try {
1226 - if (i = (t = t.call(r)).next, 0 === l) {
1227 - if (Object(t) !== t) return;
1228 - f = !1;
1229 - } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
1230 - } catch (r) {
1231 - o = !0, n = r;
1232 - } finally {
1233 - try {
1234 - if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
1235 - } finally {
1236 - if (o) throw n;
1237 - }
1238 - }
1239 - return a;
1240 - }
1241 - }
125 + /**
126 + * Container globals.
127 + *
128 + * @type {Backbone.Model}
129 + */
1242 130
1243 -//#endregion
1244 -//#region node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
1245 - function _arrayLikeToArray$2(r, a) {
1246 - (null == a || a > r.length) && (a = r.length);
1247 - for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
1248 - return n;
1249 - }
1250 - __name(_arrayLikeToArray$2, "_arrayLikeToArray");
131 + /**
132 + * Container label.
133 + *
134 + * @type {string}
135 + */
1251 136
1252 -//#endregion
1253 -//#region node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
1254 - function _unsupportedIterableToArray$2(r, a) {
1255 - if (r) {
1256 - if ("string" == typeof r) return _arrayLikeToArray$2(r, a);
1257 - var t = {}.toString.call(r).slice(8, -1);
1258 - return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$2(r, a) : void 0;
1259 - }
1260 - }
1261 - __name(_unsupportedIterableToArray$2, "_unsupportedIterableToArray");
137 + /**
138 + * Container controls.
139 + *
140 + * @type {{}}
141 + */
1262 142
1263 -//#endregion
1264 -//#region node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
1265 - function _nonIterableRest() {
1266 - throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1267 - }
143 + /**
144 + * Repeaters containers
145 + *
146 + * @type {{}}
147 + */
1268 148
1269 -//#endregion
1270 -//#region node_modules/@babel/runtime/helpers/esm/slicedToArray.js
1271 - function _slicedToArray(r, e) {
1272 - return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray$2(r, e) || _nonIterableRest();
1273 - }
149 + /**
150 + * Container renderer (The one who render).
151 + *
152 + * @type {Container}
153 + */
1274 154
1275 -//#endregion
1276 -//#region node_modules/@babel/runtime/helpers/esm/superPropBase.js
1277 - function _superPropBase(t, o) {
1278 - for (; !{}.hasOwnProperty.call(t, o) && null !== (t = _getPrototypeOf(t)););
1279 - return t;
1280 - }
155 + /**
156 + * Container panel.
157 + *
158 + * @type {Panel}
159 + */
1281 160
1282 -//#endregion
1283 -//#region node_modules/@babel/runtime/helpers/esm/get.js
1284 - function _get() {
1285 - return _get = "undefined" != typeof Reflect && Reflect.get ? Reflect.get.bind() : function(e, t, r) {
1286 - var p = _superPropBase(e, t);
1287 - if (p) {
1288 - var n = Object.getOwnPropertyDescriptor(p, t);
1289 - return n.get ? n.get.call(arguments.length < 3 ? e : r) : n.value;
1290 - }
1291 - }, _get.apply(null, arguments);
1292 - }
161 + /**
162 + * Controls placeholders.
163 + *
164 + * @type {{}}
165 + */
1293 166
1294 -//#endregion
1295 -//#region assets/dev/js/modules/imports/instance-type.js
1296 - function _superPropGet(t, o, e, r) {
1297 - var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e);
1298 - return 2 & r && "function" == typeof p ? function(t) {
1299 - return p.apply(e, t);
1300 - } : p;
1301 - }
1302 - var InstanceType = /*#__PURE__*/ function() {
1303 - function InstanceType() {
1304 - var _this = this;
1305 - _classCallCheck(this, InstanceType);
1306 - var target = this instanceof InstanceType ? this.constructor : void 0;
1307 - var prototypes = [];
1308 - while (target.__proto__ && target.__proto__.name) {
1309 - prototypes.push(target.__proto__);
1310 - target = target.__proto__;
1311 - }
1312 - prototypes.reverse().forEach(function(proto) {
1313 - return _this instanceof proto;
1314 - });
1315 - }
1316 - return _createClass(InstanceType, null, [{
1317 - key: Symbol.hasInstance,
1318 - value: function value(target) {
1319 - /**
1320 - * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
1321 - * its give's opportunity to mange capabilities of instanceOf operator.
1322 - * saving current class each time will give option later to handle instanceOf manually.
1323 - */
1324 - var result = _superPropGet(InstanceType, Symbol.hasInstance, this, 2)([target]);
1325 - if (target && !target.constructor.getInstanceType) return result;
1326 - if (target) {
1327 - if (!target.instanceTypes) target.instanceTypes = [];
1328 - if (!result) {
1329 - if (this.getInstanceType() === target.constructor.getInstanceType()) result = true;
1330 - }
1331 - if (result) {
1332 - var name = this.getInstanceType === InstanceType.getInstanceType ? "BaseInstanceType" : this.getInstanceType();
1333 - if (-1 === target.instanceTypes.indexOf(name)) target.instanceTypes.push(name);
1334 - }
1335 - }
1336 - if (!result && target) result = target.instanceTypes && Array.isArray(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
1337 - return result;
1338 - }
1339 - }, {
1340 - key: "getInstanceType",
1341 - value: function getInstanceType() {
1342 - elementorModules.ForceMethodImplementation();
1343 - }
1344 - }]);
1345 - }();
167 + /**
168 + * Function constructor().
169 + *
170 + * Create container.
171 + *
172 + * @param {{}} args
173 + *
174 + * @throws {Error}
175 + */
176 + function Container(args) {
177 + var _this;
1346 178
1347 -//#endregion
1348 -//#region assets/dev/js/editor/utils/is-instanceof.js
1349 - function _createForOfIteratorHelper$1(r, e) {
1350 - var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
1351 - if (!t) {
1352 - if (Array.isArray(r) || (t = _unsupportedIterableToArray$1(r)) || e && r && "number" == typeof r.length) {
1353 - t && (r = t);
1354 - var _n = 0;
1355 - var F = function F() {};
1356 - return {
1357 - s: F,
1358 - n: function n() {
1359 - return _n >= r.length ? { done: !0 } : {
1360 - done: !1,
1361 - value: r[_n++]
1362 - };
1363 - },
1364 - e: function e(r) {
1365 - throw r;
1366 - },
1367 - f: F
1368 - };
1369 - }
1370 - throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1371 - }
1372 - var o;
1373 - var a = !0;
1374 - var u = !1;
1375 - return {
1376 - s: function s() {
1377 - t = t.call(r);
1378 - },
1379 - n: function n() {
1380 - var r = t.next();
1381 - return a = r.done, r;
1382 - },
1383 - e: function e(r) {
1384 - u = !0, o = r;
1385 - },
1386 - f: function f() {
1387 - try {
1388 - a || null == t.return || t.return();
1389 - } finally {
1390 - if (u) throw o;
1391 - }
1392 - }
1393 - };
1394 - }
1395 - __name(_createForOfIteratorHelper$1, "_createForOfIteratorHelper");
1396 - function _unsupportedIterableToArray$1(r, a) {
1397 - if (r) {
1398 - if ("string" == typeof r) return _arrayLikeToArray$1(r, a);
1399 - var t = {}.toString.call(r).slice(8, -1);
1400 - return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1(r, a) : void 0;
1401 - }
1402 - }
1403 - __name(_unsupportedIterableToArray$1, "_unsupportedIterableToArray");
1404 - function _arrayLikeToArray$1(r, a) {
1405 - (null == a || a > r.length) && (a = r.length);
1406 - for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
1407 - return n;
1408 - }
1409 - __name(_arrayLikeToArray$1, "_arrayLikeToArray");
1410 - /**
1411 - * Some FileAPI objects such as FileList, DataTransferItem and DataTransferItemList has inconsistency with the retrieved
1412 - * object (from events, etc.) and the actual JavaScript object so a regular instanceof doesn't work. This function can
1413 - * check whether it's instanceof by using the objects constructor and prototype names.
1414 - *
1415 - * @param object
1416 - * @param constructors
1417 - * @return {boolean}
1418 - */
1419 - var is_instanceof_default = /* @__PURE__ */ __name((function(object, constructors) {
1420 - constructors = Array.isArray(constructors) ? constructors : [constructors];
1421 - var _iterator = _createForOfIteratorHelper$1(constructors);
1422 - var _step;
1423 - try {
1424 - for (_iterator.s(); !(_step = _iterator.n()).done;) {
1425 - var constructor = _step.value;
1426 - if (object.constructor.name === constructor.prototype[Symbol.toStringTag]) return true;
1427 - }
1428 - } catch (err) {
1429 - _iterator.e(err);
1430 - } finally {
1431 - _iterator.f();
1432 - }
1433 - return false;
1434 - }), "default");
179 + (0, _classCallCheck2.default)(this, Container);
180 + _this = _super.call(this, args); // Validate args.
1435 181
1436 -//#endregion
1437 -//#region assets/dev/js/modules/imports/args-object.js
1438 - init_typeof();
1439 - function _callSuper$2(t, o, e) {
1440 - return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$3() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
1441 - }
1442 - __name(_callSuper$2, "_callSuper");
1443 - function _isNativeReflectConstruct$3() {
1444 - try {
1445 - var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
1446 - } catch (t) {}
1447 - return (_isNativeReflectConstruct$3 = function _isNativeReflectConstruct() {
1448 - return !!t;
1449 - })();
1450 - }
1451 - __name(_isNativeReflectConstruct$3, "_isNativeReflectConstruct");
1452 - var ArgsObject = /*#__PURE__*/ function(_InstanceType) {
1453 - /**
1454 - * Function constructor().
1455 - *
1456 - * Create ArgsObject.
1457 - *
1458 - * @param {{}} args
1459 - */
1460 - function ArgsObject(args) {
1461 - var _this;
1462 - _classCallCheck(this, ArgsObject);
1463 - _this = _callSuper$2(this, ArgsObject);
1464 - _this.args = args;
1465 - return _this;
1466 - }
1467 - /**
1468 - * Function requireArgument().
1469 - *
1470 - * Validate property in args.
1471 - *
1472 - * @param {string} property
1473 - * @param {{}} args
1474 - *
1475 - * @throws {Error}
1476 - */
1477 - _inherits(ArgsObject, _InstanceType);
1478 - return _createClass(ArgsObject, [
1479 - {
1480 - key: "requireArgument",
1481 - value: function requireArgument(property) {
1482 - var args = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.args;
1483 - if (!Object.prototype.hasOwnProperty.call(args, property)) throw Error("".concat(property, " is required."));
1484 - }
1485 - },
1486 - {
1487 - key: "requireArgumentType",
1488 - value: function requireArgumentType(property, type) {
1489 - var args = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : this.args;
1490 - this.requireArgument(property, args);
1491 - if (_typeof(args[property]) !== type) throw Error("".concat(property, " invalid type: ").concat(type, "."));
1492 - }
1493 - },
1494 - {
1495 - key: "requireArgumentInstance",
1496 - value: function requireArgumentInstance(property, instance) {
1497 - var args = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : this.args;
1498 - this.requireArgument(property, args);
1499 - if (!(args[property] instanceof instance) && !is_instanceof_default(args[property], instance)) throw Error("".concat(property, " invalid instance."));
1500 - }
1501 - },
1502 - {
1503 - key: "requireArgumentConstructor",
1504 - value: function requireArgumentConstructor(property, type) {
1505 - var args = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : this.args;
1506 - this.requireArgument(property, args);
1507 - if (args[property].constructor.toString() !== type.prototype.constructor.toString()) throw Error("".concat(property, " invalid constructor type."));
1508 - }
1509 - }
1510 - ], [{
1511 - key: "getInstanceType",
1512 - value: function getInstanceType() {
1513 - return "ArgsObject";
1514 - }
1515 - }]);
1516 - }(InstanceType);
182 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", void 0);
183 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "id", void 0);
184 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "document", void 0);
185 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "model", void 0);
186 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "settings", void 0);
187 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "view", void 0);
188 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "parent", void 0);
189 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "children", new _childrenArray.default());
190 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "dynamic", void 0);
191 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "globals", void 0);
192 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "label", void 0);
193 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "controls", {});
194 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "repeaters", {});
195 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderer", void 0);
196 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "panel", void 0);
197 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "placeholders", {});
1517 198
1518 -//#endregion
1519 -//#region assets/dev/js/editor/container/panel.js
199 + _this.validateArgs(args);
200 +
201 + args = Object.entries(args); // If empty.
202 +
203 + if (0 === args.length) {
204 + throw Error('Container cannot be empty.');
205 + } // Set properties, if not defined - keep the defaults.
206 +
207 +
208 + args.forEach(function (_ref) {
209 + var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
210 + key = _ref2[0],
211 + value = _ref2[1];
212 +
213 + _this[key] = 'undefined' === typeof value ? _this[key] : value;
214 + });
215 +
216 + if ('undefined' === typeof _this.renderer) {
217 + _this.renderer = (0, _assertThisInitialized2.default)(_this);
218 + }
219 +
220 + if (!_this.document) {
221 + _this.document = elementor.documents.getCurrent();
222 + }
223 +
224 + _this.dynamic = new Backbone.Model(_this.settings.get('__dynamic__'));
225 + _this.globals = new Backbone.Model(_this.settings.get('__globals__'));
226 + _this.panel = new _panel.default((0, _assertThisInitialized2.default)(_this));
227 +
228 + _this.initialize();
229 +
230 + return _this;
231 + }
232 +
233 + (0, _createClass2.default)(Container, [{
234 + key: "initialize",
235 + value: function initialize() {
236 + if (this.isViewElement()) {
237 + this.addToParent();
238 + this.handleChildrenRecursive();
239 + this.view.on('destroy', this.removeFromParent.bind(this));
240 + }
241 +
242 + this.handleRepeaterChildren();
243 + }
244 + }, {
245 + key: "validateArgs",
246 + value: function validateArgs(args) {
247 + this.requireArgumentType('type', 'string', args);
248 + this.requireArgumentType('id', 'string', args);
249 + this.requireArgumentInstance('settings', Backbone.Model, args);
250 + this.requireArgumentInstance('model', Backbone.Model, args); // Require it, unless it's forced to be `false`.
251 +
252 + if (false !== args.parent) {
253 + this.requireArgumentInstance('parent', elementorModules.editor.Container, args);
254 + }
255 + }
256 + /**
257 + * Function getGroupRelatedControls().
258 + *
259 + * Example:
260 + * Settings = { typography_typography: 'whatever', button_text_color: 'whatever' };
261 + * Result { control_name: controlValue, ... - and so on };
262 + * `Object.keys( Result ) = [ 'typography_typography', 'typography_font_family', 'typography_font_size', 'typography_font_size_tablet', 'typography_font_size_mobile', 'typography_font_weight', 'typography_text_transform', 'typography_font_style', 'typography_text_decoration', 'typography_line_height', 'typography_line_height_tablet', 'typography_line_height_mobile', 'typography_letter_spacing', 'typography_letter_spacing_tablet', 'typography_letter_spacing_mobile', 'button_text_color' ]`.
263 + *
264 + * @param {{}} settings
265 + *
266 + * @return {{}} result
267 + */
268 +
269 + }, {
270 + key: "getGroupRelatedControls",
271 + value: function getGroupRelatedControls(settings) {
272 + var _this2 = this;
273 +
274 + var result = {};
275 + Object.keys(settings).forEach(function (settingKey) {
276 + Object.values(_this2.controls).forEach(function (control) {
277 + var _this2$controls$setti;
278 +
279 + if (settingKey === control.name) {
280 + result[control.name] = control;
281 + } else if ((_this2$controls$setti = _this2.controls[settingKey]) !== null && _this2$controls$setti !== void 0 && _this2$controls$setti.groupPrefix) {
282 + var groupPrefix = _this2.controls[settingKey].groupPrefix;
283 +
284 + if (control.name.toString().startsWith(groupPrefix)) {
285 + result[control.name] = control;
286 + }
287 + }
288 + });
289 + });
290 + return result;
291 + }
292 + /**
293 + * Function getAffectingControls().
294 + *
295 + * @return {{}} All controls that effecting the container.
296 + */
297 +
298 + }, {
299 + key: "getAffectingControls",
300 + value: function getAffectingControls() {
301 + var _this3 = this;
302 +
303 + var result = {},
304 + activeControls = this.settings.getActiveControls();
305 + Object.entries(activeControls).forEach(function (_ref3) {
306 + var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
307 + controlName = _ref4[0],
308 + control = _ref4[1];
309 +
310 + var controlValue = _this3.settings.get(control.name);
311 +
312 + if (control.global && !(controlValue !== null && controlValue !== void 0 && controlValue.length)) {
313 + var _this3$globals$get;
314 +
315 + if ((_this3$globals$get = _this3.globals.get(control.name)) !== null && _this3$globals$get !== void 0 && _this3$globals$get.length || _this3.getGlobalDefault(controlName).length) {
316 + control.global.utilized = true;
317 + result[controlName] = control;
318 + return;
319 + }
320 + }
321 +
322 + if (control.dynamic) {
323 + if (_this3.dynamic.get(controlName)) {
324 + control.dynamic.utilized = true;
325 + result[controlName] = control;
326 + return;
327 + }
328 + }
329 +
330 + if (controlValue === control.default) {
331 + return;
332 + }
333 +
334 + if (!controlValue) {
335 + return;
336 + }
337 +
338 + if ('object' === (0, _typeof2.default)(controlValue) && Object.values(controlValue).join() === Object.values(control.default).join()) {
339 + return;
340 + }
341 +
342 + result[controlName] = control;
343 + });
344 + return result;
345 + }
346 + /**
347 + * Function getParentAncestry().
348 + *
349 + * Recursively run over all parents from current container till the top
350 + *
351 + * @return {Array.<Container>} All parent as flat array.
352 + */
353 +
354 + }, {
355 + key: "getParentAncestry",
356 + value: function getParentAncestry() {
357 + var result = [];
358 + var parent = this;
359 +
360 + while (parent) {
361 + result.push(parent);
362 + parent = parent.parent;
363 + }
364 +
365 + return result;
366 + }
367 + }, {
368 + key: "handleChildrenRecursive",
369 + value: function handleChildrenRecursive() {
370 + var _this$view$children;
371 +
372 + if ((_this$view$children = this.view.children) !== null && _this$view$children !== void 0 && _this$view$children.length) {
373 + Object.values(this.view.children._views).forEach(function (view) {
374 + if (!view.container) {
375 + return;
376 + }
377 +
378 + var container = view.container; // Since the way 'global-widget' rendered, it does not have parent sometimes.
379 +
380 + if (container.parent.children) {
381 + container.parent.children[view._index] = container;
382 + }
383 +
384 + container.handleChildrenRecursive();
385 + });
386 + } else {
387 + this.children.clear();
388 + }
389 + }
390 + }, {
391 + key: "addToParent",
392 + value: function addToParent() {
393 + if (!this.parent.children || this.isRepeaterItem()) {
394 + return;
395 + } // On create container tell the parent where it was created.
396 +
397 +
398 + this.parent.children.splice(this.view._index, 0, this);
399 + }
400 + }, {
401 + key: "removeFromParent",
402 + value: function removeFromParent() {
403 + var _this4 = this;
404 +
405 + if (!this.parent.children || this.isRepeater()) {
406 + return;
407 + } // When delete container its should notify its parent, that his children is dead.
408 +
409 +
410 + this.parent.children = this.parent.children.filter(function (filtered) {
411 + return filtered.id !== _this4.id;
412 + });
413 + }
414 + }, {
415 + key: "handleRepeaterChildren",
416 + value: function handleRepeaterChildren() {
417 + var _this5 = this;
418 +
419 + Object.values(this.controls).forEach(function (control) {
420 + if (!control.is_repeater) {
421 + return;
422 + }
423 +
424 + var model = new Backbone.Model({
425 + name: control.name
426 + });
427 + _this5.repeaters[control.name] = new elementorModules.editor.Container({
428 + type: Container.TYPE_REPEATER,
429 + id: control.name,
430 + model: model,
431 + settings: model,
432 + view: _this5.view,
433 + parent: _this5,
434 + label: control.label || control.name,
435 + controls: {},
436 + renderer: _this5.renderer
437 + });
438 +
439 + _this5.settings.get(control.name).forEach(function (rowModel, index) {
440 + _this5.addRepeaterItem(control.name, rowModel, index);
441 + });
442 + }); // Backwards Compatibility: if there is only one repeater (type=repeater), set it's children as current children.
443 + // Since 3.0.0.
444 +
445 + if (['widget', 'document'].includes(this.type)) {
446 + var repeaters = Object.values(this.controls).filter(function (control) {
447 + return 'repeater' === control.type;
448 + });
449 +
450 + if (1 === repeaters.length) {
451 + Object.defineProperty(this, 'children', {
452 + get: function get() {
453 + elementorDevTools.deprecation.deprecated('children', '3.0.0', 'container.repeaters[ repeaterName ].children');
454 + return this.repeaters[repeaters[0].name].children;
455 + }
456 + });
457 + }
458 + }
459 + }
460 + /**
461 + * Function addRepeaterItem().
462 + *
463 + * The method add repeater item, find the repeater control by it name, and create new container for the item.
464 + *
465 + * @param {string} repeaterName
466 + * @param {Backbone.Model} rowSettingsModel
467 + * @param {number} index
468 + *
469 + * @return {Container} container
470 + */
471 +
472 + }, {
473 + key: "addRepeaterItem",
474 + value: function addRepeaterItem(repeaterName, rowSettingsModel, index) {
475 + var rowId = rowSettingsModel.get('_id'); // TODO: Temp backwards compatibility. since 2.8.0.
476 +
477 + if (!rowId) {
478 + rowId = 'bc-' + elementorCommon.helpers.getUniqueId();
479 + rowSettingsModel.set('_id', rowId);
480 + }
481 +
482 + this.repeaters[repeaterName].children.splice(index, 0, new elementorModules.editor.Container({
483 + type: Container.TYPE_REPEATER_ITEM,
484 + id: rowSettingsModel.get('_id'),
485 + model: new Backbone.Model({
486 + name: repeaterName
487 + }),
488 + settings: rowSettingsModel,
489 + view: this.view,
490 + parent: this.repeaters[repeaterName],
491 + label: this.label + ' ' + __('Item', 'elementor'),
492 + controls: rowSettingsModel.options.controls,
493 + renderer: this.renderer
494 + }));
495 + return this.repeaters[repeaterName];
496 + }
497 + /**
498 + * Function lookup().
499 + *
500 + * If the view were destroyed, try to find it again if it exists.
501 + *
502 + * TODO: Refactor.
503 + *
504 + * @return {Container} container
505 + */
506 +
507 + }, {
508 + key: "lookup",
509 + value: function lookup() {
510 + var _this$renderer$view;
511 +
512 + var result = this;
513 +
514 + if (!this.renderer) {
515 + return this;
516 + }
517 +
518 + if (this !== this.renderer && (_this$renderer$view = this.renderer.view) !== null && _this$renderer$view !== void 0 && _this$renderer$view.isDisconnected && this.renderer.view.isDisconnected()) {
519 + this.renderer = this.renderer.lookup();
520 + }
521 +
522 + if (undefined === this.view || !this.view.lookup || !this.view.isDisconnected()) {
523 + // Hack For repeater item the result is the parent container.
524 + if (Container.TYPE_REPEATER_ITEM === this.type) {
525 + this.settings = this.parent.parent.settings.get(this.model.get('name')).findWhere({
526 + _id: this.id
527 + });
528 + }
529 +
530 + return result;
531 + }
532 +
533 + var lookup = this.view.lookup();
534 +
535 + if (lookup) {
536 + result = lookup.getContainer(); // Hack For repeater item the result is the parent container.
537 +
538 + if (Container.REPEATER === this.type) {
539 + this.settings = result.settings.get(this.model.get('name')).findWhere({
540 + _id: this.id
541 + });
542 + return this;
543 + } // If lookup were done, new container were created and parent does not know about it.
544 +
545 +
546 + if (result.parent.children) {
547 + result.parent.children[result.view._index] = result;
548 + }
549 + }
550 +
551 + return result;
552 + }
553 + }, {
554 + key: "findChildrenRecursive",
555 + value: function findChildrenRecursive(callback) {
556 + elementorDevTools.deprecation.deprecated('container.findChildrenRecursive( callback )', '3.5.0', 'container.children.findRecursive( callback )');
557 + return this.children.findRecursive(callback);
558 + }
559 + }, {
560 + key: "forEachChildrenRecursive",
561 + value: function forEachChildrenRecursive(callback) {
562 + elementorDevTools.deprecation.deprecated('container.forEachChildrenRecursive( callback )', '3.5.0', 'container.children.forEachRecursive( callback )');
563 + return this.children.forEachRecursive(callback);
564 + }
565 + /**
566 + * Function render().
567 + *
568 + * Call view render.
569 + *
570 + * Run's `this.renderer.view.renderOnChange( this.settings ) `.
571 + * When `this.renderer` exist.
572 + *
573 + */
574 +
575 + }, {
576 + key: "render",
577 + value: function render() {
578 + if (!this.renderer) {
579 + return;
580 + }
581 +
582 + this.renderer.view.renderOnChange(this.settings);
583 + }
584 + }, {
585 + key: "renderUI",
586 + value: function renderUI() {
587 + if (!this.renderer) {
588 + return;
589 + }
590 +
591 + this.renderer.view.renderUI();
592 + }
593 + }, {
594 + key: "isEditable",
595 + value: function isEditable() {
596 + return 'edit' === elementor.channels.dataEditMode.request('activeMode') && 'open' === this.document.editor.status;
597 + }
598 + }, {
599 + key: "isDesignable",
600 + value: function isDesignable() {
601 + return elementor.userCan('design') && this.isEditable();
602 + }
603 + }, {
604 + key: "isRepeater",
605 + value: function isRepeater() {
606 + return Container.TYPE_REPEATER === this.type;
607 + }
608 + }, {
609 + key: "isRepeaterItem",
610 + value: function isRepeaterItem() {
611 + return Container.TYPE_REPEATER_ITEM === this.type;
612 + }
613 + }, {
614 + key: "isViewElement",
615 + value: function isViewElement() {
616 + return this.view && this.model.get('elType');
617 + }
618 + }, {
619 + key: "getSetting",
620 + value: function getSetting(name) {
621 + var localOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
622 + var localValue = this.settings.get(name);
623 +
624 + if (localOnly) {
625 + return localValue;
626 + } // Try to get the value in the order: Global, Local, Global default.
627 +
628 +
629 + var globalValue;
630 +
631 + if (this.getGlobalKey(name)) {
632 + globalValue = this.getGlobalValue(name);
633 + }
634 +
635 + return globalValue || localValue || this.getGlobalDefault(name);
636 + }
637 + }, {
638 + key: "getGlobalKey",
639 + value: function getGlobalKey(name) {
640 + return this.globals.get(name);
641 + }
642 + }, {
643 + key: "getGlobalValue",
644 + value: function getGlobalValue(name) {
645 + var control = this.controls[name],
646 + globalKey = this.getGlobalKey(name),
647 + globalArgs = $e.data.commandExtractArgs(globalKey),
648 + data = $e.data.getCache($e.components.get('globals'), globalArgs.command, globalArgs.args.query);
649 +
650 + if (!(data !== null && data !== void 0 && data.value)) {
651 + return;
652 + }
653 +
654 + var id = data.id;
655 + var value; // It's a global settings with additional controls in group.
656 +
657 + if (control.groupType) {
658 + // A regex containing all of the active breakpoints' prefixes ('_mobile', '_tablet' etc.).
659 + var responsivePrefixRegex = elementor.breakpoints.getActiveMatchRegex();
660 + var propertyName = control.name.replace(control.groupPrefix, '').replace(responsivePrefixRegex, '');
661 +
662 + if (!data.value[elementor.config.kit_config.typography_prefix + propertyName]) {
663 + return;
664 + }
665 +
666 + propertyName = propertyName.replace('_', '-');
667 + value = "var( --e-global-".concat(control.groupType, "-").concat(id, "-").concat(propertyName, " )");
668 +
669 + if (elementor.config.ui.defaultGenericFonts && control.groupPrefix + 'font_family' === control.name) {
670 + value += ", ".concat(elementor.config.ui.defaultGenericFonts);
671 + }
672 + } else {
673 + value = "var( --e-global-".concat(control.type, "-").concat(id, " )");
674 + }
675 +
676 + return value;
677 + }
678 + /**
679 + * Determine if a control's global value is applied.
680 + * It actually checks if the local value is different than the global value.
681 + *
682 + * @param {string} controlName - Control name
683 + * @return {boolean} true if a control's global value is applied
684 + */
685 +
686 + }, {
687 + key: "isGlobalApplied",
688 + value: function isGlobalApplied(controlName) {
689 + return this.getSetting(controlName) !== this.settings.get(controlName);
690 + }
691 + }, {
692 + key: "getGlobalDefault",
693 + value: function getGlobalDefault(controlName) {
694 + var _this$controls$contro;
695 +
696 + var controlGlobalArgs = (_this$controls$contro = this.controls[controlName]) === null || _this$controls$contro === void 0 ? void 0 : _this$controls$contro.global;
697 +
698 + if (controlGlobalArgs !== null && controlGlobalArgs !== void 0 && controlGlobalArgs.default) {
699 + // Temp fix.
700 + var controlType = this.controls[controlName].type;
701 +
702 + if ('color' === controlType) {
703 + controlType = 'colors';
704 + } // End temp fix
705 + // If the control is a color/typography control and default colors/typography are disabled, don't return the global value.
706 +
707 +
708 + if (!elementor.config.globals.defaults_enabled[controlType]) {
709 + return '';
710 + }
711 +
712 + var _$e$data$commandExtra = $e.data.commandExtractArgs(controlGlobalArgs.default),
713 + command = _$e$data$commandExtra.command,
714 + args = _$e$data$commandExtra.args,
715 + result = $e.data.getCache($e.components.get('globals'), command, args.query);
716 +
717 + return result === null || result === void 0 ? void 0 : result.value;
718 + } // No global default.
719 +
720 +
721 + return '';
722 + }
723 + }]);
724 + return Container;
725 +}(_argsObject.default);
726 +
727 +exports["default"] = Container;
728 +(0, _defineProperty2.default)(Container, "TYPE_REPEATER", 'repeater-control');
729 +(0, _defineProperty2.default)(Container, "TYPE_REPEATER_ITEM", 'repeater');
730 +
731 +/***/ }),
732 +
733 +/***/ "../assets/dev/js/editor/container/model/children-array.js":
734 +/*!*****************************************************************!*\
735 + !*** ../assets/dev/js/editor/container/model/children-array.js ***!
736 + \*****************************************************************/
737 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
738 +
739 +"use strict";
740 +
741 +
742 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
743 +
744 +Object.defineProperty(exports, "__esModule", ({
745 + value: true
746 +}));
747 +exports["default"] = void 0;
748 +
749 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
750 +
751 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
752 +
753 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
754 +
755 +var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
756 +
757 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
758 +
759 +var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/wrapNativeSuper */ "../node_modules/@babel/runtime/helpers/wrapNativeSuper.js"));
760 +
761 +function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
762 +
763 +function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
764 +
765 +function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
766 +
767 +function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
768 +
769 +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
770 +
1520 771 /**
1521 - * @typedef {import('./container')} Container
1522 - */
1523 - var Panel = /*#__PURE__*/ function() {
1524 - /**
1525 - * Function constructor().
1526 - *
1527 - * Create constructor panel.
1528 - *
1529 - * @param {Container} container
1530 - */
1531 - function Panel(container) {
1532 - _classCallCheck(this, Panel);
1533 - this.container = container;
1534 - }
1535 - /**
1536 - * Function refresh().
1537 - *
1538 - * Refresh the panel.
1539 - */
1540 - return _createClass(Panel, [
1541 - {
1542 - key: "refresh",
1543 - value: function refresh() {
1544 - if ($e.routes.isPartOf("panel/editor")) $e.routes.refreshContainer("panel");
1545 - }
1546 - },
1547 - {
1548 - key: "closeEditor",
1549 - value: function closeEditor() {
1550 - $e.route("panel/elements/categories");
1551 - }
1552 - },
1553 - {
1554 - key: "getControlView",
1555 - value: function getControlView(name) {
1556 - return elementor.getPanelView().getCurrentPageView().children.findByModelCid(this.getControlModel(name).cid);
1557 - }
1558 - },
1559 - {
1560 - key: "getControlModel",
1561 - value: function getControlModel(name) {
1562 - return elementor.getPanelView().getCurrentPageView().collection.findWhere({ name });
1563 - }
1564 - }
1565 - ]);
1566 - }();
772 + * @typedef {import('../container')} Container
773 + */
774 +var ChildrenArray = /*#__PURE__*/function (_Array) {
775 + (0, _inherits2.default)(ChildrenArray, _Array);
1567 776
1568 -//#endregion
1569 -//#region node_modules/@babel/runtime/helpers/esm/isNativeFunction.js
1570 - function _isNativeFunction(t) {
1571 - try {
1572 - return -1 !== Function.toString.call(t).indexOf("[native code]");
1573 - } catch (n) {
1574 - return "function" == typeof t;
1575 - }
1576 - }
777 + var _super = _createSuper(ChildrenArray);
1577 778
1578 -//#endregion
1579 -//#region node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js
1580 - function _isNativeReflectConstruct$2() {
1581 - try {
1582 - var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
1583 - } catch (t) {}
1584 - return (_isNativeReflectConstruct$2 = function _isNativeReflectConstruct() {
1585 - return !!t;
1586 - })();
1587 - }
1588 - __name(_isNativeReflectConstruct$2, "_isNativeReflectConstruct");
779 + function ChildrenArray() {
780 + (0, _classCallCheck2.default)(this, ChildrenArray);
781 + return _super.apply(this, arguments);
782 + }
1589 783
1590 -//#endregion
1591 -//#region node_modules/@babel/runtime/helpers/esm/construct.js
1592 - function _construct(t, e, r) {
1593 - if (_isNativeReflectConstruct$2()) return Reflect.construct.apply(null, arguments);
1594 - var o = [null];
1595 - o.push.apply(o, e);
1596 - var p = new (t.bind.apply(t, o))();
1597 - return r && _setPrototypeOf(p, r.prototype), p;
1598 - }
784 + (0, _createClass2.default)(ChildrenArray, [{
785 + key: "clear",
786 + value: function clear() {
787 + this.length = 0;
788 + }
789 + /**
790 + * Function findRecursive().
791 + *
792 + * Will run over children recursively and pass the children to the callback till the callback returns positive value.
793 + *
794 + * @param {function(Container) : *} callback
795 + *
796 + * @return {Container|false} child
797 + */
1599 798
1600 -//#endregion
1601 -//#region node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js
1602 - function _wrapNativeSuper(t) {
1603 - var r = "function" == typeof Map ? /* @__PURE__ */ new Map() : void 0;
1604 - return _wrapNativeSuper = function _wrapNativeSuper(t) {
1605 - if (null === t || !_isNativeFunction(t)) return t;
1606 - if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function");
1607 - if (void 0 !== r) {
1608 - if (r.has(t)) return r.get(t);
1609 - r.set(t, Wrapper);
1610 - }
1611 - function Wrapper() {
1612 - return _construct(t, arguments, _getPrototypeOf(this).constructor);
1613 - }
1614 - return Wrapper.prototype = Object.create(t.prototype, { constructor: {
1615 - value: Wrapper,
1616 - enumerable: !1,
1617 - writable: !0,
1618 - configurable: !0
1619 - } }), _setPrototypeOf(Wrapper, t);
1620 - }, _wrapNativeSuper(t);
1621 - }
799 + }, {
800 + key: "findRecursive",
801 + value: function findRecursive(callback) {
802 + var _iterator = _createForOfIteratorHelper(this),
803 + _step;
1622 804
1623 -//#endregion
1624 -//#region assets/dev/js/editor/container/model/children-array.js
1625 - function _createForOfIteratorHelper(r, e) {
1626 - var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
1627 - if (!t) {
1628 - if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) {
1629 - t && (r = t);
1630 - var _n = 0;
1631 - var F = function F() {};
1632 - return {
1633 - s: F,
1634 - n: function n() {
1635 - return _n >= r.length ? { done: !0 } : {
1636 - done: !1,
1637 - value: r[_n++]
1638 - };
1639 - },
1640 - e: function e(r) {
1641 - throw r;
1642 - },
1643 - f: F
1644 - };
1645 - }
1646 - throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1647 - }
1648 - var o;
1649 - var a = !0;
1650 - var u = !1;
1651 - return {
1652 - s: function s() {
1653 - t = t.call(r);
1654 - },
1655 - n: function n() {
1656 - var r = t.next();
1657 - return a = r.done, r;
1658 - },
1659 - e: function e(r) {
1660 - u = !0, o = r;
1661 - },
1662 - f: function f() {
1663 - try {
1664 - a || null == t.return || t.return();
1665 - } finally {
1666 - if (u) throw o;
1667 - }
1668 - }
1669 - };
1670 - }
1671 - function _unsupportedIterableToArray(r, a) {
1672 - if (r) {
1673 - if ("string" == typeof r) return _arrayLikeToArray(r, a);
1674 - var t = {}.toString.call(r).slice(8, -1);
1675 - return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
1676 - }
1677 - }
1678 - function _arrayLikeToArray(r, a) {
1679 - (null == a || a > r.length) && (a = r.length);
1680 - for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
1681 - return n;
1682 - }
1683 - function _callSuper$1(t, o, e) {
1684 - return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$1() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
1685 - }
1686 - __name(_callSuper$1, "_callSuper");
1687 - function _isNativeReflectConstruct$1() {
1688 - try {
1689 - var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
1690 - } catch (t) {}
1691 - return (_isNativeReflectConstruct$1 = function _isNativeReflectConstruct() {
1692 - return !!t;
1693 - })();
1694 - }
1695 - __name(_isNativeReflectConstruct$1, "_isNativeReflectConstruct");
1696 - /**
1697 - * @typedef {import('../container')} Container
1698 - */
1699 - var ChildrenArray = /*#__PURE__*/ function(_Array) {
1700 - function ChildrenArray() {
1701 - _classCallCheck(this, ChildrenArray);
1702 - return _callSuper$1(this, ChildrenArray, arguments);
1703 - }
1704 - _inherits(ChildrenArray, _Array);
1705 - return _createClass(ChildrenArray, [
1706 - {
1707 - key: "clear",
1708 - value: function clear() {
1709 - this.length = 0;
1710 - }
1711 - },
1712 - {
1713 - key: "findRecursive",
1714 - value: function findRecursive(callback) {
1715 - var _iterator = _createForOfIteratorHelper(this);
1716 - var _step;
1717 - try {
1718 - for (_iterator.s(); !(_step = _iterator.n()).done;) {
1719 - var container = _step.value;
1720 - if (callback(container)) return container;
1721 - if (container.children.length) {
1722 - var foundChildren = container.children.findRecursive(callback);
1723 - if (foundChildren) return foundChildren;
1724 - }
1725 - }
1726 - } catch (err) {
1727 - _iterator.e(err);
1728 - } finally {
1729 - _iterator.f();
1730 - }
1731 - return false;
1732 - }
1733 - },
1734 - {
1735 - key: "forEachRecursive",
1736 - value: function forEachRecursive(callback) {
1737 - var _iterator2 = _createForOfIteratorHelper(this);
1738 - var _step2;
1739 - try {
1740 - for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
1741 - var container = _step2.value;
1742 - callback(container);
1743 - if (container.children.length) container.children.forEachRecursive(callback);
1744 - }
1745 - } catch (err) {
1746 - _iterator2.e(err);
1747 - } finally {
1748 - _iterator2.f();
1749 - }
1750 - }
1751 - },
1752 - {
1753 - key: "someRecursive",
1754 - value: function someRecursive(callback) {
1755 - var _iterator3 = _createForOfIteratorHelper(this);
1756 - var _step3;
1757 - try {
1758 - for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
1759 - var _container$children;
1760 - var container = _step3.value;
1761 - if (callback(container)) return true;
1762 - if ((_container$children = container.children) !== null && _container$children !== void 0 && _container$children.length) {
1763 - if (container.children.someRecursive(callback)) return true;
1764 - }
1765 - }
1766 - } catch (err) {
1767 - _iterator3.e(err);
1768 - } finally {
1769 - _iterator3.f();
1770 - }
1771 - return false;
1772 - }
1773 - }
1774 - ]);
1775 - }(/*#__PURE__*/ _wrapNativeSuper(Array));
805 + try {
806 + for (_iterator.s(); !(_step = _iterator.n()).done;) {
807 + var container = _step.value;
1776 808
1777 -//#endregion
1778 -//#region assets/dev/js/editor/container/container.js
1779 - init_typeof();
1780 - function _callSuper(t, o, e) {
1781 - return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
1782 - }
1783 - function _isNativeReflectConstruct() {
1784 - try {
1785 - var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
1786 - } catch (t) {}
1787 - return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {
1788 - return !!t;
1789 - })();
1790 - }
1791 - /**
1792 - * @typedef {import('../../../../lib/backbone/backbone.marionette')} Backbone
1793 - * @typedef {import('../../../../lib/backbone/backbone.marionette')} Marionette
1794 - * @typedef {import('../elements/views/base')} BaseElementView
1795 - * @typedef {import('../elements/views/section')} SectionView
1796 - * @typedef {import('../views/base-container')} BaseContainer
1797 - * @typedef {import('../elements/models/base-element-model')} BaseElementModel
1798 - */
1799 - /**
1800 - * TODO: ViewsOptions
1801 - *
1802 - * @typedef {(Marionette.View|Marionette.CompositeView|BaseElementView|SectionView|BaseContainer)} ViewsOptions
1803 - */
1804 - var Container = /*#__PURE__*/ function(_ArgsObject) {
1805 - /**
1806 - * Function constructor().
1807 - *
1808 - * Create container.
1809 - *
1810 - * @param {{}} args
1811 - *
1812 - * @throws {Error}
1813 - */
1814 - function Container(args) {
1815 - var _this;
1816 - _classCallCheck(this, Container);
1817 - _this = _callSuper(this, Container, [args]);
1818 - /**
1819 - * Container type.
1820 - *
1821 - * @type {string}
1822 - */
1823 - _defineProperty(_this, "type", void 0);
1824 - /**
1825 - * Container id.
1826 - *
1827 - * @type {string}
1828 - */
1829 - _defineProperty(_this, "id", void 0);
1830 - /**
1831 - * Document Object.
1832 - *
1833 - * @type {{}}
1834 - */
1835 - _defineProperty(_this, "document", void 0);
1836 - /**
1837 - * Container model.
1838 - *
1839 - * @type {(Backbone.Model|BaseElementModel)}
1840 - */
1841 - _defineProperty(_this, "model", void 0);
1842 - /**
1843 - * Container settings.
1844 - *
1845 - * @type {Backbone.Model}
1846 - */
1847 - _defineProperty(_this, "settings", void 0);
1848 - /**
1849 - * Container view.
1850 - *
1851 - * @type {ViewsOptions}
1852 - */
1853 - _defineProperty(_this, "view", void 0);
1854 - /**
1855 - * Container parent.
1856 - *
1857 - * @type {Container}
1858 - */
1859 - _defineProperty(_this, "parent", void 0);
1860 - /**
1861 - * Container children(s).
1862 - *
1863 - * @type {ChildrenArray}
1864 - */
1865 - _defineProperty(_this, "children", new ChildrenArray());
1866 - /**
1867 - * Container dynamic.
1868 - *
1869 - * @type {Backbone.Model}
1870 - */
1871 - _defineProperty(_this, "dynamic", void 0);
1872 - /**
1873 - * Container globals.
1874 - *
1875 - * @type {Backbone.Model}
1876 - */
1877 - _defineProperty(_this, "globals", void 0);
1878 - /**
1879 - * Container label.
1880 - *
1881 - * @type {string}
1882 - */
1883 - _defineProperty(_this, "label", void 0);
1884 - /**
1885 - * Container controls.
1886 - *
1887 - * @type {{}}
1888 - */
1889 - _defineProperty(_this, "controls", {});
1890 - /**
1891 - * Repeaters containers
1892 - *
1893 - * @type {{}}
1894 - */
1895 - _defineProperty(_this, "repeaters", {});
1896 - /**
1897 - * Container renderer (The one who render).
1898 - *
1899 - * @type {Container}
1900 - */
1901 - _defineProperty(_this, "renderer", void 0);
1902 - /**
1903 - * Container panel.
1904 - *
1905 - * @type {Panel}
1906 - */
1907 - _defineProperty(_this, "panel", void 0);
1908 - /**
1909 - * Controls placeholders.
1910 - *
1911 - * @type {{}}
1912 - */
1913 - _defineProperty(_this, "placeholders", {});
1914 - _this.validateArgs(args);
1915 - args = Object.entries(args);
1916 - if (0 === args.length) throw Error("Container cannot be empty.");
1917 - args.forEach(function(_ref) {
1918 - var _ref2 = _slicedToArray(_ref, 2);
1919 - var key = _ref2[0];
1920 - var value = _ref2[1];
1921 - _this[key] = "undefined" === typeof value ? _this[key] : value;
1922 - });
1923 - if ("undefined" === typeof _this.renderer) _this.renderer = _this;
1924 - if (!_this.document) _this.document = elementor.documents.getCurrent();
1925 - _this.dynamic = new Backbone.Model(_this.settings.get("__dynamic__"));
1926 - _this.globals = new Backbone.Model(_this.settings.get("__globals__"));
1927 - _this.panel = new Panel(_this);
1928 - _this.initialize();
1929 - return _this;
1930 - }
1931 - _inherits(Container, _ArgsObject);
1932 - return _createClass(Container, [
1933 - {
1934 - key: "initialize",
1935 - value: function initialize() {
1936 - if (this.isViewElement()) {
1937 - this.addToParent();
1938 - this.handleChildrenRecursive();
1939 - this.view.on("destroy", this.removeFromParent.bind(this));
1940 - }
1941 - this.handleRepeaterChildren();
1942 - }
1943 - },
1944 - {
1945 - key: "validateArgs",
1946 - value: function validateArgs(args) {
1947 - this.requireArgumentType("type", "string", args);
1948 - this.requireArgumentType("id", "string", args);
1949 - this.requireArgumentInstance("settings", Backbone.Model, args);
1950 - this.requireArgumentInstance("model", Backbone.Model, args);
1951 - if (false !== args.parent) this.requireArgumentInstance("parent", elementorModules.editor.Container, args);
1952 - }
1953 - },
1954 - {
1955 - key: "getGroupRelatedControls",
1956 - value: function getGroupRelatedControls(settings) {
1957 - var _this2 = this;
1958 - var result = {};
1959 - Object.keys(settings).forEach(function(settingKey) {
1960 - Object.values(_this2.controls).forEach(function(control) {
1961 - var _this2$controls$setti;
1962 - if (settingKey === control.name) result[control.name] = control;
1963 - else if ((_this2$controls$setti = _this2.controls[settingKey]) !== null && _this2$controls$setti !== void 0 && _this2$controls$setti.groupPrefix) {
1964 - var groupPrefix = _this2.controls[settingKey].groupPrefix;
1965 - if (control.name.toString().startsWith(groupPrefix)) result[control.name] = control;
1966 - }
1967 - });
1968 - });
1969 - return result;
1970 - }
1971 - },
1972 - {
1973 - key: "getAffectingControls",
1974 - value: function getAffectingControls() {
1975 - var _this3 = this;
1976 - var result = {};
1977 - var activeControls = this.settings.getActiveControls();
1978 - Object.entries(activeControls).forEach(function(_ref3) {
1979 - var _ref4 = _slicedToArray(_ref3, 2);
1980 - var controlName = _ref4[0];
1981 - var control = _ref4[1];
1982 - var controlValue = _this3.settings.get(control.name);
1983 - if (control.global && !(controlValue !== null && controlValue !== void 0 && controlValue.length)) {
1984 - var _this3$globals$get;
1985 - if ((_this3$globals$get = _this3.globals.get(control.name)) !== null && _this3$globals$get !== void 0 && _this3$globals$get.length || _this3.getGlobalDefault(controlName).length) {
1986 - control.global.utilized = true;
1987 - result[controlName] = control;
1988 - return;
1989 - }
1990 - }
1991 - if (control.dynamic) {
1992 - if (_this3.dynamic.get(controlName)) {
1993 - control.dynamic.utilized = true;
1994 - result[controlName] = control;
1995 - return;
1996 - }
1997 - }
1998 - if (controlValue === control.default) return;
1999 - if (!controlValue) return;
2000 - if ("object" === _typeof(controlValue) && Object.values(controlValue).join() === Object.values(control.default).join()) return;
2001 - result[controlName] = control;
2002 - });
2003 - return result;
2004 - }
2005 - },
2006 - {
2007 - key: "getParentAncestry",
2008 - value: function getParentAncestry() {
2009 - var result = [];
2010 - var parent = this;
2011 - while (parent) {
2012 - result.push(parent);
2013 - parent = parent.parent;
2014 - }
2015 - return result;
2016 - }
2017 - },
2018 - {
2019 - key: "handleChildrenRecursive",
2020 - value: function handleChildrenRecursive() {
2021 - var _this$view$children;
2022 - if ((_this$view$children = this.view.children) !== null && _this$view$children !== void 0 && _this$view$children.length) Object.values(this.view.children._views).forEach(function(view) {
2023 - if (!view.container) return;
2024 - var container = view.container;
2025 - if (container.parent.children) container.parent.children[view._index] = container;
2026 - container.handleChildrenRecursive();
2027 - });
2028 - else this.children.clear();
2029 - }
2030 - },
2031 - {
2032 - key: "addToParent",
2033 - value: function addToParent() {
2034 - if (!this.parent.children || this.isRepeaterItem()) return;
2035 - this.parent.children.splice(this.view._index, 0, this);
2036 - }
2037 - },
2038 - {
2039 - key: "removeFromParent",
2040 - value: function removeFromParent() {
2041 - var _this4 = this;
2042 - if (!this.parent.children || this.isRepeater()) return;
2043 - this.parent.children = this.parent.children.filter(function(filtered) {
2044 - return filtered.id !== _this4.id;
2045 - });
2046 - }
2047 - },
2048 - {
2049 - key: "handleRepeaterChildren",
2050 - value: function handleRepeaterChildren() {
2051 - var _this5 = this;
2052 - Object.values(this.controls).forEach(function(control) {
2053 - if (!control.is_repeater) return;
2054 - var model = new Backbone.Model({ name: control.name });
2055 - _this5.repeaters[control.name] = new elementorModules.editor.Container({
2056 - type: Container.TYPE_REPEATER,
2057 - id: control.name,
2058 - model,
2059 - settings: model,
2060 - view: _this5.view,
2061 - parent: _this5,
2062 - label: control.label || control.name,
2063 - controls: {},
2064 - renderer: _this5.renderer
2065 - });
2066 - _this5.settings.get(control.name).forEach(function(rowModel, index) {
2067 - _this5.addRepeaterItem(control.name, rowModel, index);
2068 - });
2069 - });
2070 - if (["widget", "document"].includes(this.type)) {
2071 - var repeaters = Object.values(this.controls).filter(function(control) {
2072 - return "repeater" === control.type;
2073 - });
2074 - if (!this.model.get("supportRepeaterChildren") && 1 === repeaters.length) Object.defineProperty(this, "children", { get: function get() {
2075 - elementorDevTools.deprecation.deprecated("children", "3.0.0", "container.repeaters[ repeaterName ].children");
2076 - return this.repeaters[repeaters[0].name].children;
2077 - } });
2078 - }
2079 - }
2080 - },
2081 - {
2082 - key: "addRepeaterItem",
2083 - value: function addRepeaterItem(repeaterName, rowSettingsModel, index) {
2084 - var rowId = rowSettingsModel.get("_id");
2085 - if (!rowId) {
2086 - rowId = "bc-" + elementorCommon.helpers.getUniqueId();
2087 - rowSettingsModel.set("_id", rowId);
2088 - }
2089 - this.repeaters[repeaterName].children.splice(index, 0, new elementorModules.editor.Container({
2090 - type: Container.TYPE_REPEATER_ITEM,
2091 - id: rowSettingsModel.get("_id"),
2092 - model: new Backbone.Model({ name: repeaterName }),
2093 - settings: rowSettingsModel,
2094 - view: this.view,
2095 - parent: this.repeaters[repeaterName],
2096 - label: this.label + " " + (0, _wordpress_i18n.__)("Item", "elementor"),
2097 - controls: rowSettingsModel.options.controls,
2098 - renderer: this.renderer
2099 - }));
2100 - return this.repeaters[repeaterName];
2101 - }
2102 - },
2103 - {
2104 - key: "lookup",
2105 - value: function lookup() {
2106 - var _this$renderer$view;
2107 - var result = this;
2108 - if (!this.renderer) return this;
2109 - if (this !== this.renderer && (_this$renderer$view = this.renderer.view) !== null && _this$renderer$view !== void 0 && _this$renderer$view.isDisconnected && this.renderer.view.isDisconnected()) this.renderer = this.renderer.lookup();
2110 - if (void 0 === this.view || !this.view.lookup || !this.view.isDisconnected()) {
2111 - if (Container.TYPE_REPEATER_ITEM === this.type) this.settings = this.parent.parent.settings.get(this.model.get("name")).findWhere({ _id: this.id });
2112 - return result;
2113 - }
2114 - var lookup = this.view.lookup();
2115 - if (lookup) {
2116 - result = lookup.getContainer();
2117 - if (Container.REPEATER === this.type) {
2118 - this.settings = result.settings.get(this.model.get("name")).findWhere({ _id: this.id });
2119 - return this;
2120 - }
2121 - if (result.parent.children) result.parent.children[result.view._index] = result;
2122 - }
2123 - return result;
2124 - }
2125 - },
2126 - {
2127 - key: "findChildrenRecursive",
2128 - value: function findChildrenRecursive(callback) {
2129 - elementorDevTools.deprecation.deprecated("container.findChildrenRecursive( callback )", "3.5.0", "container.children.findRecursive( callback )");
2130 - return this.children.findRecursive(callback);
2131 - }
2132 - },
2133 - {
2134 - key: "forEachChildrenRecursive",
2135 - value: function forEachChildrenRecursive(callback) {
2136 - elementorDevTools.deprecation.deprecated("container.forEachChildrenRecursive( callback )", "3.5.0", "container.children.forEachRecursive( callback )");
2137 - return this.children.forEachRecursive(callback);
2138 - }
2139 - },
2140 - {
2141 - key: "render",
2142 - value: function render() {
2143 - var _this$view;
2144 - if (!this.renderer) return;
2145 - this.renderer.view.renderOnChange(this.settings, (_this$view = this.view) === null || _this$view === void 0 ? void 0 : _this$view.$el);
2146 - }
2147 - },
2148 - {
2149 - key: "renderUI",
2150 - value: function renderUI() {
2151 - if (!this.renderer) return;
2152 - this.renderer.view.renderUI();
2153 - }
2154 - },
2155 - {
2156 - key: "isEditable",
2157 - value: function isEditable() {
2158 - var _this$model;
2159 - var _this$model$get;
2160 - var _this$model$get$get;
2161 - return "edit" === elementor.channels.dataEditMode.request("activeMode") && "open" === this.document.editor.status && !((_this$model = this.model) !== null && _this$model !== void 0 && (_this$model$get = _this$model.get) !== null && _this$model$get !== void 0 && (_this$model$get = _this$model$get.call(_this$model, "editSettings")) !== null && _this$model$get !== void 0 && (_this$model$get$get = _this$model$get.get) !== null && _this$model$get$get !== void 0 && _this$model$get$get.call(_this$model$get, "inactive"));
2162 - }
2163 - },
2164 - {
2165 - key: "isDesignable",
2166 - value: function isDesignable() {
2167 - return elementor.userCan("design") && this.isEditable();
2168 - }
2169 - },
2170 - {
2171 - key: "isGridContainer",
2172 - value: function isGridContainer() {
2173 - return "grid" === this.parent.settings.get("container_type");
2174 - }
2175 - },
2176 - {
2177 - key: "isLocked",
2178 - value: function isLocked() {
2179 - return this.model.get("isLocked");
2180 - }
2181 - },
2182 - {
2183 - key: "isRepeater",
2184 - value: function isRepeater() {
2185 - return Container.TYPE_REPEATER === this.type;
2186 - }
2187 - },
2188 - {
2189 - key: "isRepeaterItem",
2190 - value: function isRepeaterItem() {
2191 - return Container.TYPE_REPEATER_ITEM === this.type;
2192 - }
2193 - },
2194 - {
2195 - key: "isViewElement",
2196 - value: function isViewElement() {
2197 - return this.view && this.model.get("elType");
2198 - }
2199 - },
2200 - {
2201 - key: "getSetting",
2202 - value: function getSetting(name) {
2203 - var localOnly = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
2204 - var localValue = this.settings.get(name);
2205 - if (localOnly) return localValue;
2206 - var globalValue;
2207 - if (this.getGlobalKey(name)) globalValue = this.getGlobalValue(name);
2208 - return globalValue || localValue || this.getGlobalDefault(name);
2209 - }
2210 - },
2211 - {
2212 - key: "getGlobalKey",
2213 - value: function getGlobalKey(name) {
2214 - return this.globals.get(name);
2215 - }
2216 - },
2217 - {
2218 - key: "getGlobalValue",
2219 - value: function getGlobalValue(name) {
2220 - var control = this.controls[name];
2221 - var globalKey = this.getGlobalKey(name);
2222 - var globalArgs = $e.data.commandExtractArgs(globalKey);
2223 - var data = $e.data.getCache($e.components.get("globals"), globalArgs.command, globalArgs.args.query);
2224 - if (!(data !== null && data !== void 0 && data.value)) return;
2225 - var id = data.id;
2226 - var value;
2227 - if (control.groupType) {
2228 - var responsivePrefixRegex = elementor.breakpoints.getActiveMatchRegex();
2229 - var propertyName = control.name.replace(control.groupPrefix, "").replace(responsivePrefixRegex, "");
2230 - if (!data.value[elementor.config.kit_config.typography_prefix + propertyName]) return;
2231 - propertyName = propertyName.replace("_", "-");
2232 - value = "var( --e-global-".concat(control.groupType, "-").concat(id, "-").concat(propertyName, " )");
2233 - if (elementor.config.ui.defaultGenericFonts && control.groupPrefix + "font_family" === control.name) value += ", ".concat(elementor.config.ui.defaultGenericFonts);
2234 - } else value = "var( --e-global-".concat(control.type, "-").concat(id, " )");
2235 - return value;
2236 - }
2237 - },
2238 - {
2239 - key: "isGlobalApplied",
2240 - value: function isGlobalApplied(controlName) {
2241 - return this.getSetting(controlName) !== this.settings.get(controlName);
2242 - }
2243 - },
2244 - {
2245 - key: "getGlobalDefault",
2246 - value: function getGlobalDefault(controlName) {
2247 - var _this$controls$contro;
2248 - var controlGlobalArgs = (_this$controls$contro = this.controls[controlName]) === null || _this$controls$contro === void 0 ? void 0 : _this$controls$contro.global;
2249 - if (controlGlobalArgs !== null && controlGlobalArgs !== void 0 && controlGlobalArgs.default) {
2250 - var controlType = this.controls[controlName].type;
2251 - if ("color" === controlType) controlType = "colors";
2252 - if (!elementor.config.globals.defaults_enabled[controlType]) return "";
2253 - var _$e$data$commandExtra = $e.data.commandExtractArgs(controlGlobalArgs.default);
2254 - var command = _$e$data$commandExtra.command;
2255 - var args = _$e$data$commandExtra.args;
2256 - var result = $e.data.getCache($e.components.get("globals"), command, args.query);
2257 - return result === null || result === void 0 ? void 0 : result.value;
2258 - }
2259 - return "";
2260 - }
2261 - }
2262 - ]);
2263 - }(ArgsObject);
2264 - _defineProperty(Container, "TYPE_REPEATER", "repeater-control");
2265 - _defineProperty(Container, "TYPE_REPEATER_ITEM", "repeater");
809 + if (callback(container)) {
810 + return container;
811 + }
2266 812
2267 -//#endregion
2268 -//#region assets/dev/js/editor/modules.js
2269 - elementorModules.editor = {
2270 - elements: { models: { BaseSettings: import_base_settings.default } },
2271 - utils: {
2272 - Module: import_module.default,
2273 - Introduction: _default
2274 - },
2275 - views: { ControlsStack },
2276 - Container
2277 - };
813 + if (container.children.length) {
814 + var foundChildren = container.children.findRecursive(callback);
2278 815
2279 -//#endregion
2280 -})(wp.i18n);
816 + if (foundChildren) {
817 + return foundChildren;
818 + }
819 + }
820 + }
821 + } catch (err) {
822 + _iterator.e(err);
823 + } finally {
824 + _iterator.f();
825 + }
826 +
827 + return false;
828 + }
829 + /**
830 + * Function forEachRecursive().
831 + *
832 + * Will run over children recursively.
833 + *
834 + * @param {function(Container) : *} callback
835 + *
836 + * @return {void}
837 + */
838 +
839 + }, {
840 + key: "forEachRecursive",
841 + value: function forEachRecursive(callback) {
842 + var _iterator2 = _createForOfIteratorHelper(this),
843 + _step2;
844 +
845 + try {
846 + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
847 + var container = _step2.value;
848 + callback(container);
849 +
850 + if (container.children.length) {
851 + container.children.forEachRecursive(callback);
852 + }
853 + }
854 + } catch (err) {
855 + _iterator2.e(err);
856 + } finally {
857 + _iterator2.f();
858 + }
859 + }
860 + /**
861 + * Function someRecursive().
862 + *
863 + * Will run over children recursively, breaks if the callback return true.
864 + *
865 + * @param {function(Container) : *} callback
866 + *
867 + */
868 +
869 + }, {
870 + key: "someRecursive",
871 + value: function someRecursive(callback) {
872 + var _iterator3 = _createForOfIteratorHelper(this),
873 + _step3;
874 +
875 + try {
876 + for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
877 + var _container$children;
878 +
879 + var container = _step3.value;
880 +
881 + if (callback(container)) {
882 + return true;
883 + }
884 +
885 + if ((_container$children = container.children) !== null && _container$children !== void 0 && _container$children.length) {
886 + if (container.children.someRecursive(callback)) {
887 + return true;
888 + }
889 + }
890 + }
891 + } catch (err) {
892 + _iterator3.e(err);
893 + } finally {
894 + _iterator3.f();
895 + }
896 +
897 + return false;
898 + }
899 + }]);
900 + return ChildrenArray;
901 +}( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Array));
902 +
903 +exports["default"] = ChildrenArray;
904 +
905 +/***/ }),
906 +
907 +/***/ "../assets/dev/js/editor/container/panel.js":
908 +/*!**************************************************!*\
909 + !*** ../assets/dev/js/editor/container/panel.js ***!
910 + \**************************************************/
911 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
912 +
913 +"use strict";
914 +
915 +
916 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
917 +
918 +Object.defineProperty(exports, "__esModule", ({
919 + value: true
920 +}));
921 +exports["default"] = void 0;
922 +
923 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
924 +
925 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
926 +
927 +/**
928 + * @typedef {import('./container')} Container
929 + */
930 +var Panel = /*#__PURE__*/function () {
931 + /**
932 + * Function constructor().
933 + *
934 + * Create constructor panel.
935 + *
936 + * @param {Container} container
937 + */
938 + function Panel(container) {
939 + (0, _classCallCheck2.default)(this, Panel);
940 + this.container = container;
941 + }
942 + /**
943 + * Function refresh().
944 + *
945 + * Refresh the panel.
946 + */
947 +
948 +
949 + (0, _createClass2.default)(Panel, [{
950 + key: "refresh",
951 + value: function refresh() {
952 + if ($e.routes.isPartOf('panel/editor')) {
953 + $e.routes.refreshContainer('panel');
954 + }
955 + }
956 + /**
957 + * Function closeEditor().
958 + *
959 + * Route to `panel/elements/categories`
960 + */
961 +
962 + }, {
963 + key: "closeEditor",
964 + value: function closeEditor() {
965 + $e.route('panel/elements/categories');
966 + }
967 + }, {
968 + key: "getControlView",
969 + value: function getControlView(name) {
970 + var editor = elementor.getPanelView().getCurrentPageView();
971 + return editor.children.findByModelCid(this.getControlModel(name).cid);
972 + }
973 + }, {
974 + key: "getControlModel",
975 + value: function getControlModel(name) {
976 + var editor = elementor.getPanelView().getCurrentPageView();
977 + return editor.collection.findWhere({
978 + name: name
979 + });
980 + }
981 + }]);
982 + return Panel;
983 +}();
984 +
985 +exports["default"] = Panel;
986 +
987 +/***/ }),
988 +
989 +/***/ "../assets/dev/js/editor/elements/models/base-settings.js":
990 +/*!****************************************************************!*\
991 + !*** ../assets/dev/js/editor/elements/models/base-settings.js ***!
992 + \****************************************************************/
993 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
994 +
995 +"use strict";
996 +
997 +
998 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
999 +
1000 +var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"));
1001 +
1002 +var BaseSettingsModel;
1003 +/**
1004 + * @name BaseSettingsModel
1005 + */
1006 +
1007 +BaseSettingsModel = Backbone.Model.extend({
1008 + options: {},
1009 + initialize: function initialize(data, options) {
1010 + var self = this; // Keep the options for cloning
1011 +
1012 + self.options = options;
1013 + self.controls = elementor.mergeControlsSettings(options.controls);
1014 + self.validators = {};
1015 +
1016 + if (!self.controls) {
1017 + return;
1018 + }
1019 +
1020 + var attrs = data || {},
1021 + defaults = {};
1022 +
1023 + _.each(self.controls, function (control) {
1024 + // Check features since they does not exist in tests.
1025 + var isUIControl = control.features && -1 !== control.features.indexOf('ui');
1026 +
1027 + if (isUIControl) {
1028 + return;
1029 + }
1030 +
1031 + var controlName = control.name;
1032 +
1033 + if ('object' === (0, _typeof2.default)(control.default)) {
1034 + defaults[controlName] = elementorCommon.helpers.cloneObject(control.default);
1035 + } else {
1036 + defaults[controlName] = control.default;
1037 + }
1038 +
1039 + var isDynamicControl = control.dynamic && control.dynamic.active,
1040 + hasDynamicSettings = isDynamicControl && attrs.__dynamic__ && attrs.__dynamic__[controlName];
1041 +
1042 + if (isDynamicControl && !hasDynamicSettings && control.dynamic.default) {
1043 + if (!attrs.__dynamic__) {
1044 + attrs.__dynamic__ = {};
1045 + }
1046 +
1047 + attrs.__dynamic__[controlName] = control.dynamic.default;
1048 + hasDynamicSettings = true;
1049 + } // Check if the value is a plain object ( and not an array )
1050 +
1051 +
1052 + var isMultipleControl = jQuery.isPlainObject(control.default);
1053 +
1054 + if (undefined !== attrs[controlName] && isMultipleControl && !_.isObject(attrs[controlName]) && !hasDynamicSettings) {
1055 + elementorCommon.debug.addCustomError(new TypeError('An invalid argument supplied as multiple control value'), 'InvalidElementData', 'Element `' + (self.get('widgetType') || self.get('elType')) + '` got <' + attrs[controlName] + '> as `' + controlName + '` value. Expected array or object.');
1056 + delete attrs[controlName];
1057 + }
1058 +
1059 + if (undefined === attrs[controlName]) {
1060 + attrs[controlName] = defaults[controlName];
1061 + }
1062 + });
1063 +
1064 + self.defaults = defaults;
1065 + self.handleRepeaterData(attrs);
1066 + self.set(attrs);
1067 + },
1068 + handleRepeaterData: function handleRepeaterData(attrs) {
1069 + _.each(this.controls, function (field) {
1070 + if (field.is_repeater) {
1071 + // TODO: Apply defaults on each field in repeater fields
1072 + if (!(attrs[field.name] instanceof Backbone.Collection)) {
1073 + attrs[field.name] = new Backbone.Collection(attrs[field.name], {
1074 + model: function model(attributes, options) {
1075 + options = options || {};
1076 + options.controls = {};
1077 + Object.values(field.fields).forEach(function (item) {
1078 + options.controls[item.name] = item;
1079 + }); // TODO: Cannot be deleted, since it handle repeater items after repeater widget creation.
1080 +
1081 + if (!attributes._id) {
1082 + attributes._id = elementorCommon.helpers.getUniqueId();
1083 + }
1084 +
1085 + return new BaseSettingsModel(attributes, options);
1086 + }
1087 + });
1088 + }
1089 + }
1090 + });
1091 + },
1092 + getFontControls: function getFontControls() {
1093 + return this.getControlsByType('font');
1094 + },
1095 + getIconsControls: function getIconsControls() {
1096 + return this.getControlsByType('icons');
1097 + },
1098 + getControlsByType: function getControlsByType(type) {
1099 + return _.filter(this.getActiveControls(), function (control) {
1100 + return type === control.type;
1101 + });
1102 + },
1103 + getStyleControls: function getStyleControls(controls, attributes) {
1104 + var self = this;
1105 + controls = elementorCommon.helpers.cloneObject(self.getActiveControls(controls, attributes));
1106 + var styleControls = [];
1107 + jQuery.each(controls, function () {
1108 + var _control$dynamic;
1109 +
1110 + var control = this,
1111 + controlDefaultSettings = elementor.config.controls[control.type];
1112 + control = jQuery.extend({}, controlDefaultSettings, control);
1113 +
1114 + if (control.fields) {
1115 + var styleFields = [];
1116 + self.attributes[control.name].each(function (item) {
1117 + styleFields.push(self.getStyleControls(control.fields, item.attributes));
1118 + });
1119 + control.styleFields = styleFields;
1120 + }
1121 +
1122 + if (control.fields || (_control$dynamic = control.dynamic) !== null && _control$dynamic !== void 0 && _control$dynamic.active || self.isGlobalControl(control, controls) || self.isStyleControl(control.name, controls)) {
1123 + styleControls.push(control);
1124 + }
1125 + });
1126 + return styleControls;
1127 + },
1128 + isGlobalControl: function isGlobalControl(control, controls) {
1129 + var _globalControl$global, _this$attributes$__gl;
1130 +
1131 + var controlGlobalKey = control.name;
1132 +
1133 + if (control.groupType) {
1134 + controlGlobalKey = control.groupPrefix + control.groupType;
1135 + }
1136 +
1137 + var globalControl = controls[controlGlobalKey];
1138 +
1139 + if (!((_globalControl$global = globalControl.global) !== null && _globalControl$global !== void 0 && _globalControl$global.active)) {
1140 + return false;
1141 + }
1142 +
1143 + var globalValue = (_this$attributes$__gl = this.attributes.__globals__) === null || _this$attributes$__gl === void 0 ? void 0 : _this$attributes$__gl[controlGlobalKey];
1144 + return !!globalValue;
1145 + },
1146 + isStyleControl: function isStyleControl(attribute, controls) {
1147 + controls = controls || this.controls;
1148 +
1149 + var currentControl = _.find(controls, function (control) {
1150 + return attribute === control.name;
1151 + });
1152 +
1153 + return currentControl && !_.isEmpty(currentControl.selectors);
1154 + },
1155 + getClassControls: function getClassControls(controls) {
1156 + controls = controls || this.controls;
1157 + return _.filter(controls, function (control) {
1158 + return !_.isUndefined(control.prefix_class);
1159 + });
1160 + },
1161 + isClassControl: function isClassControl(attribute) {
1162 + var currentControl = _.find(this.controls, function (control) {
1163 + return attribute === control.name;
1164 + });
1165 +
1166 + return currentControl && !_.isUndefined(currentControl.prefix_class);
1167 + },
1168 + getControl: function getControl(id) {
1169 + return _.find(this.controls, function (control) {
1170 + return id === control.name;
1171 + });
1172 + },
1173 + getActiveControls: function getActiveControls(controls, attributes) {
1174 + var activeControls = {};
1175 +
1176 + if (!controls) {
1177 + controls = this.controls;
1178 + }
1179 +
1180 + if (!attributes) {
1181 + attributes = this.attributes;
1182 + }
1183 +
1184 + attributes = this.parseGlobalSettings(attributes, controls);
1185 + jQuery.each(controls, function (controlKey, control) {
1186 + if (elementor.helpers.isActiveControl(control, attributes, controls)) {
1187 + activeControls[controlKey] = control;
1188 + }
1189 + });
1190 + return activeControls;
1191 + },
1192 + clone: function clone() {
1193 + return new BaseSettingsModel(elementorCommon.helpers.cloneObject(this.attributes), elementorCommon.helpers.cloneObject(this.options));
1194 + },
1195 + setExternalChange: function setExternalChange(key, value) {
1196 + var self = this,
1197 + settingsToChange;
1198 +
1199 + if ('object' === (0, _typeof2.default)(key)) {
1200 + settingsToChange = key;
1201 + } else {
1202 + settingsToChange = {};
1203 + settingsToChange[key] = value;
1204 + }
1205 +
1206 + self.set(settingsToChange);
1207 + jQuery.each(settingsToChange, function (changedKey, changedValue) {
1208 + self.trigger('change:external:' + changedKey, changedValue);
1209 + });
1210 + },
1211 + parseDynamicSettings: function parseDynamicSettings(settings, options, controls) {
1212 + var self = this;
1213 + settings = elementorCommon.helpers.cloneObject(settings || self.attributes);
1214 + options = options || {};
1215 + controls = controls || this.controls;
1216 + jQuery.each(controls, function () {
1217 + var control = this,
1218 + valueToParse;
1219 +
1220 + if (control.is_repeater) {
1221 + valueToParse = settings[control.name];
1222 + valueToParse.forEach(function (value, key) {
1223 + valueToParse[key] = self.parseDynamicSettings(value, options, control.fields);
1224 + });
1225 + return;
1226 + }
1227 +
1228 + valueToParse = settings.__dynamic__ && settings.__dynamic__[control.name];
1229 +
1230 + if (!valueToParse) {
1231 + return;
1232 + }
1233 +
1234 + var dynamicSettings = control.dynamic;
1235 +
1236 + if (undefined === dynamicSettings) {
1237 + dynamicSettings = elementor.config.controls[control.type].dynamic;
1238 + }
1239 +
1240 + if (!dynamicSettings || !dynamicSettings.active) {
1241 + return;
1242 + }
1243 +
1244 + var dynamicValue;
1245 +
1246 + try {
1247 + dynamicValue = elementor.dynamicTags.parseTagsText(valueToParse, dynamicSettings, elementor.dynamicTags.getTagDataContent);
1248 + } catch (error) {
1249 + if (elementor.dynamicTags.CACHE_KEY_NOT_FOUND_ERROR !== error.message) {
1250 + throw error;
1251 + }
1252 +
1253 + dynamicValue = '';
1254 +
1255 + if (options.onServerRequestStart) {
1256 + options.onServerRequestStart();
1257 + }
1258 +
1259 + elementor.dynamicTags.refreshCacheFromServer(function () {
1260 + if (options.onServerRequestEnd) {
1261 + options.onServerRequestEnd();
1262 + }
1263 + });
1264 + }
1265 +
1266 + if (dynamicSettings.property) {
1267 + settings[control.name][dynamicSettings.property] = dynamicValue;
1268 + } else {
1269 + settings[control.name] = dynamicValue;
1270 + }
1271 + });
1272 + return settings;
1273 + },
1274 + parseGlobalSettings: function parseGlobalSettings(settings, controls) {
1275 + var _this = this;
1276 +
1277 + settings = elementorCommon.helpers.cloneObject(settings);
1278 + controls = controls || this.controls;
1279 + jQuery.each(controls, function (index, control) {
1280 + var _settings$__globals__, _globalSettings;
1281 +
1282 + var valueToParse;
1283 +
1284 + if (control.is_repeater) {
1285 + valueToParse = settings[control.name];
1286 + valueToParse.forEach(function (value, key) {
1287 + valueToParse[key] = _this.parseGlobalSettings(value, control.fields);
1288 + });
1289 + return;
1290 + }
1291 +
1292 + valueToParse = (_settings$__globals__ = settings.__globals__) === null || _settings$__globals__ === void 0 ? void 0 : _settings$__globals__[control.name];
1293 +
1294 + if (!valueToParse) {
1295 + return;
1296 + }
1297 +
1298 + var globalSettings = control.global;
1299 +
1300 + if (undefined === globalSettings) {
1301 + globalSettings = elementor.config.controls[control.type].global;
1302 + }
1303 +
1304 + if (!((_globalSettings = globalSettings) !== null && _globalSettings !== void 0 && _globalSettings.active)) {
1305 + return;
1306 + }
1307 +
1308 + var _$e$data$commandExtra = $e.data.commandExtractArgs(valueToParse),
1309 + command = _$e$data$commandExtra.command,
1310 + args = _$e$data$commandExtra.args,
1311 + globalValue = $e.data.getCache($e.components.get('globals'), command, args.query);
1312 +
1313 + if (control.groupType) {
1314 + settings[control.name] = 'custom';
1315 + } else {
1316 + settings[control.name] = globalValue;
1317 + }
1318 + });
1319 + return settings;
1320 + },
1321 + removeDataDefaults: function removeDataDefaults(data, controls) {
1322 + var _this2 = this;
1323 +
1324 + jQuery.each(data, function (key) {
1325 + var control = controls[key];
1326 +
1327 + if (!control) {
1328 + return;
1329 + } // TODO: use `save_default` in text|textarea controls.
1330 +
1331 +
1332 + if (control.save_default || ('text' === control.type || 'textarea' === control.type) && data[key]) {
1333 + return;
1334 + }
1335 +
1336 + if (control.is_repeater) {
1337 + data[key].forEach(function (repeaterRow) {
1338 + _this2.removeDataDefaults(repeaterRow, control.fields);
1339 + });
1340 + return;
1341 + }
1342 +
1343 + if (_.isEqual(data[key], control.default)) {
1344 + delete data[key];
1345 + }
1346 + });
1347 + },
1348 + toJSON: function toJSON(options) {
1349 + var data = Backbone.Model.prototype.toJSON.call(this);
1350 + options = options || {};
1351 + delete data.widgetType;
1352 + delete data.elType;
1353 + delete data.isInner;
1354 +
1355 + _.each(data, function (attribute, key) {
1356 + if (attribute && attribute.toJSON) {
1357 + data[key] = attribute.toJSON();
1358 + }
1359 + });
1360 +
1361 + if (options.remove && -1 !== options.remove.indexOf('default')) {
1362 + this.removeDataDefaults(data, this.controls);
1363 + }
1364 +
1365 + return elementorCommon.helpers.cloneObject(data);
1366 + }
1367 +});
1368 +/**
1369 + * @name BaseSettingsModel
1370 + */
1371 +
1372 +module.exports = BaseSettingsModel;
1373 +
1374 +/***/ }),
1375 +
1376 +/***/ "../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js":
1377 +/*!**********************************************************************!*\
1378 + !*** ../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js ***!
1379 + \**********************************************************************/
1380 +/***/ ((module) => {
1381 +
1382 +"use strict";
1383 +
1384 +
1385 +var InnerTabsBehavior;
1386 +InnerTabsBehavior = Marionette.Behavior.extend({
1387 + onRenderCollection: function onRenderCollection() {
1388 + this.handleInnerTabs(this.view);
1389 + },
1390 + handleInnerTabs: function handleInnerTabs(parent) {
1391 + var closedClass = 'elementor-tab-close',
1392 + activeClass = 'elementor-tab-active',
1393 + tabsWrappers = parent.children.filter(function (view) {
1394 + return 'tabs' === view.model.get('type');
1395 + });
1396 +
1397 + _.each(tabsWrappers, function (view) {
1398 + view.$el.find('.elementor-control-content').remove();
1399 + var tabsId = view.model.get('name'),
1400 + tabs = parent.children.filter(function (childView) {
1401 + return 'tab' === childView.model.get('type') && childView.model.get('tabs_wrapper') === tabsId;
1402 + });
1403 +
1404 + _.each(tabs, function (childView, index) {
1405 + view._addChildView(childView);
1406 +
1407 + var tabId = childView.model.get('name'),
1408 + controlsUnderTab = parent.children.filter(function (controlView) {
1409 + return tabId === controlView.model.get('inner_tab');
1410 + });
1411 +
1412 + if (0 === index) {
1413 + childView.$el.addClass(activeClass);
1414 + } else {
1415 + _.each(controlsUnderTab, function (controlView) {
1416 + controlView.$el.addClass(closedClass);
1417 + });
1418 + }
1419 + });
1420 + });
1421 + },
1422 + onChildviewControlTabClicked: function onChildviewControlTabClicked(childView) {
1423 + var closedClass = 'elementor-tab-close',
1424 + activeClass = 'elementor-tab-active',
1425 + tabClicked = childView.model.get('name'),
1426 + childrenUnderTab = this.view.children.filter(function (view) {
1427 + return 'tab' !== view.model.get('type') && childView.model.get('tabs_wrapper') === view.model.get('tabs_wrapper');
1428 + }),
1429 + siblingTabs = this.view.children.filter(function (view) {
1430 + return 'tab' === view.model.get('type') && childView.model.get('tabs_wrapper') === view.model.get('tabs_wrapper');
1431 + });
1432 +
1433 + _.each(siblingTabs, function (view) {
1434 + view.$el.removeClass(activeClass);
1435 + });
1436 +
1437 + childView.$el.addClass(activeClass);
1438 +
1439 + _.each(childrenUnderTab, function (view) {
1440 + if (view.model.get('inner_tab') === tabClicked) {
1441 + view.$el.removeClass(closedClass);
1442 + } else {
1443 + view.$el.addClass(closedClass);
1444 + }
1445 + });
1446 +
1447 + elementor.getPanelView().updateScrollbar();
1448 + }
1449 +});
1450 +module.exports = InnerTabsBehavior;
1451 +
1452 +/***/ }),
1453 +
1454 +/***/ "../assets/dev/js/editor/utils/introduction.js":
1455 +/*!*****************************************************!*\
1456 + !*** ../assets/dev/js/editor/utils/introduction.js ***!
1457 + \*****************************************************/
1458 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1459 +
1460 +"use strict";
1461 +
1462 +
1463 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1464 +
1465 +Object.defineProperty(exports, "__esModule", ({
1466 + value: true
1467 +}));
1468 +exports["default"] = void 0;
1469 +
1470 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
1471 +
1472 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
1473 +
1474 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
1475 +
1476 +var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
1477 +
1478 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
1479 +
1480 +function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
1481 +
1482 +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
1483 +
1484 +var _default = /*#__PURE__*/function (_elementorModules$Mod) {
1485 + (0, _inherits2.default)(_default, _elementorModules$Mod);
1486 +
1487 + var _super = _createSuper(_default);
1488 +
1489 + function _default() {
1490 + var _this;
1491 +
1492 + (0, _classCallCheck2.default)(this, _default);
1493 +
1494 + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1495 + args[_key] = arguments[_key];
1496 + }
1497 +
1498 + _this = _super.call.apply(_super, [this].concat(args));
1499 +
1500 + _this.initDialog();
1501 +
1502 + return _this;
1503 + }
1504 +
1505 + (0, _createClass2.default)(_default, [{
1506 + key: "getDefaultSettings",
1507 + value: function getDefaultSettings() {
1508 + return {
1509 + dialogType: 'buttons',
1510 + dialogOptions: {
1511 + effects: {
1512 + hide: 'hide',
1513 + show: 'show'
1514 + },
1515 + hide: {
1516 + onBackgroundClick: false
1517 + }
1518 + }
1519 + };
1520 + }
1521 + }, {
1522 + key: "initDialog",
1523 + value: function initDialog() {
1524 + var _this2 = this;
1525 +
1526 + var dialog;
1527 +
1528 + this.getDialog = function () {
1529 + if (!dialog) {
1530 + var settings = _this2.getSettings();
1531 +
1532 + dialog = elementorCommon.dialogsManager.createWidget(settings.dialogType, settings.dialogOptions);
1533 +
1534 + if (settings.onDialogInitCallback) {
1535 + settings.onDialogInitCallback.call(_this2, dialog);
1536 + }
1537 + }
1538 +
1539 + return dialog;
1540 + };
1541 + }
1542 + }, {
1543 + key: "show",
1544 + value: function show(target) {
1545 + if (this.introductionViewed) {
1546 + return;
1547 + }
1548 +
1549 + var dialog = this.getDialog();
1550 +
1551 + if (target) {
1552 + dialog.setSettings('position', {
1553 + of: target
1554 + });
1555 + }
1556 +
1557 + dialog.show();
1558 + }
1559 + }, {
1560 + key: "setViewed",
1561 + value: function setViewed() {
1562 + this.introductionViewed = true;
1563 + elementorCommon.ajax.addRequest('introduction_viewed', {
1564 + data: {
1565 + introductionKey: this.getSettings('introductionKey')
1566 + }
1567 + });
1568 + }
1569 + }]);
1570 + return _default;
1571 +}(elementorModules.Module);
1572 +
1573 +exports["default"] = _default;
1574 +
1575 +/***/ }),
1576 +
1577 +/***/ "../assets/dev/js/editor/utils/is-instanceof.js":
1578 +/*!******************************************************!*\
1579 + !*** ../assets/dev/js/editor/utils/is-instanceof.js ***!
1580 + \******************************************************/
1581 +/***/ ((__unused_webpack_module, exports) => {
1582 +
1583 +"use strict";
1584 +
1585 +
1586 +Object.defineProperty(exports, "__esModule", ({
1587 + value: true
1588 +}));
1589 +exports["default"] = void 0;
1590 +
1591 +function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
1592 +
1593 +function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
1594 +
1595 +function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
1596 +
1597 +/**
1598 + * Some FileAPI objects such as FileList, DataTransferItem and DataTransferItemList has inconsistency with the retrieved
1599 + * object (from events, etc.) and the actual JavaScript object so a regular instanceof doesn't work. This function can
1600 + * check whether it's instanceof by using the objects constructor and prototype names.
1601 + *
1602 + * @param object
1603 + * @param constructors
1604 + * @return {boolean}
1605 + */
1606 +var _default = function _default(object, constructors) {
1607 + constructors = Array.isArray(constructors) ? constructors : [constructors];
1608 +
1609 + var _iterator = _createForOfIteratorHelper(constructors),
1610 + _step;
1611 +
1612 + try {
1613 + for (_iterator.s(); !(_step = _iterator.n()).done;) {
1614 + var _constructor = _step.value;
1615 +
1616 + if (object.constructor.name === _constructor.prototype[Symbol.toStringTag]) {
1617 + return true;
1618 + }
1619 + }
1620 + } catch (err) {
1621 + _iterator.e(err);
1622 + } finally {
1623 + _iterator.f();
1624 + }
1625 +
1626 + return false;
1627 +};
1628 +
1629 +exports["default"] = _default;
1630 +
1631 +/***/ }),
1632 +
1633 +/***/ "../assets/dev/js/editor/utils/module.js":
1634 +/*!***********************************************!*\
1635 + !*** ../assets/dev/js/editor/utils/module.js ***!
1636 + \***********************************************/
1637 +/***/ ((module) => {
1638 +
1639 +"use strict";
1640 +
1641 +
1642 +var EditorModule = elementorModules.Module.extend({
1643 + onInit: function onInit() {
1644 + var _this = this;
1645 +
1646 + var $window = jQuery(window);
1647 + $window.on('elementor:init-components', this.onElementorInitComponents.bind(this));
1648 + $window.on('elementor:loaded', function () {
1649 + _this.onElementorLoaded();
1650 +
1651 + elementor.on('document:loaded', _this.onDocumentLoaded.bind(_this));
1652 + });
1653 + $window.on('elementor:init', this.onElementorReady);
1654 + },
1655 + // TODO: Delete as soon as possible.
1656 + getEditorControlView: function getEditorControlView(name) {
1657 + var editor = elementor.getPanelView().getCurrentPageView();
1658 + return editor.children.findByModelCid(this.getEditorControlModel(name).cid);
1659 + },
1660 + // TODO: Delete as soon as possible.
1661 + getEditorControlModel: function getEditorControlModel(name) {
1662 + var editor = elementor.getPanelView().getCurrentPageView();
1663 + return editor.collection.findWhere({
1664 + name: name
1665 + });
1666 + },
1667 + onElementorReady: function onElementorReady() {
1668 + this.onElementorInit();
1669 + elementor.on('frontend:init', this.onElementorFrontendInit.bind(this)).on('preview:loaded', this.onElementorPreviewLoaded.bind(this));
1670 + }
1671 +});
1672 +
1673 +EditorModule.prototype.onElementorLoaded = function () {};
1674 +
1675 +EditorModule.prototype.onElementorInit = function () {};
1676 +
1677 +EditorModule.prototype.onElementorPreviewLoaded = function () {};
1678 +
1679 +EditorModule.prototype.onDocumentLoaded = function () {};
1680 +
1681 +EditorModule.prototype.onElementorFrontendInit = function () {};
1682 +
1683 +EditorModule.prototype.onElementorInitComponents = function () {};
1684 +
1685 +module.exports = EditorModule;
1686 +
1687 +/***/ }),
1688 +
1689 +/***/ "../assets/dev/js/editor/views/controls-popover.js":
1690 +/*!*********************************************************!*\
1691 + !*** ../assets/dev/js/editor/views/controls-popover.js ***!
1692 + \*********************************************************/
1693 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1694 +
1695 +"use strict";
1696 +/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
1697 +
1698 +
1699 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1700 +
1701 +Object.defineProperty(exports, "__esModule", ({
1702 + value: true
1703 +}));
1704 +exports["default"] = void 0;
1705 +
1706 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1707 +
1708 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
1709 +
1710 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
1711 +
1712 +var ControlsPopover = /*#__PURE__*/function () {
1713 + function ControlsPopover(child) {
1714 + (0, _classCallCheck2.default)(this, ControlsPopover);
1715 + this.child = child;
1716 + this.$popover = jQuery('<div>', {
1717 + class: 'elementor-controls-popover'
1718 + });
1719 + child.$el.before(this.$popover);
1720 + this.$popover.append(child.$el);
1721 + this.popoverToggleView = child._parent.children.findByIndex(child._index - 1); // Add the "Typography" header to the popover
1722 +
1723 + if ('typography' === this.child.model.attributes.groupType) {
1724 + this.createPopoverHeader();
1725 + }
1726 + }
1727 +
1728 + (0, _createClass2.default)(ControlsPopover, [{
1729 + key: "addChild",
1730 + value: function addChild(child) {
1731 + this.$popover.append(child.$el);
1732 + }
1733 + }, {
1734 + key: "createPopoverHeader",
1735 + value: function createPopoverHeader() {
1736 + var _this = this;
1737 +
1738 + var $popoverToggleControl = this.$popover.prev(),
1739 + // Get the existing reset button.
1740 + $resetLabel = $popoverToggleControl.find('.elementor-control-popover-toggle-reset-label');
1741 + this.$popoverHeader = jQuery('<div>', {
1742 + class: 'e-group-control-header'
1743 + }).html('<span>' + __('Typography', 'elementor') + '</span>');
1744 + this.$headerControlsWrapper = jQuery('<div>', {
1745 + class: 'e-control-tools'
1746 + }); // Give the reset button the control tool styling, and add a click event so clicking on it closes the popover.
1747 +
1748 + $resetLabel.addClass('e-control-tool').on('click', function () {
1749 + return _this.onResetButtonClick();
1750 + }); // Move the popover toggle reset button into the popover header.
1751 +
1752 + this.$headerControlsWrapper.append($resetLabel);
1753 + this.$popoverHeader.append(this.$headerControlsWrapper);
1754 + var globalConfig = this.popoverToggleView.model.get('global');
1755 +
1756 + if (globalConfig !== null && globalConfig !== void 0 && globalConfig.active) {
1757 + this.createAddButton();
1758 + }
1759 +
1760 + this.$popover.prepend(this.$popoverHeader).addClass('e-controls-popover--typography');
1761 + }
1762 + }, {
1763 + key: "onResetButtonClick",
1764 + value: function onResetButtonClick() {
1765 + this.$popover.hide();
1766 + var groupControlName = this.child.model.get('groupPrefix') + 'typography',
1767 + args = {
1768 + container: this.child.options.container,
1769 + settings: (0, _defineProperty2.default)({}, groupControlName, '')
1770 + };
1771 +
1772 + if (this.child.options.container.globals.get(groupControlName)) {
1773 + // The Disable Globals command applies global settings locally,
1774 + // so disabling the global shouldn't actually change the appearance of the widget.
1775 + $e.run('document/globals/disable', args);
1776 + } else {
1777 + $e.run('document/elements/settings', args);
1778 + }
1779 + }
1780 + }, {
1781 + key: "onAddButtonClick",
1782 + value: function onAddButtonClick() {
1783 + this.popoverToggleView.onAddGlobalButtonClick();
1784 + }
1785 + }, {
1786 + key: "createAddButton",
1787 + value: function createAddButton() {
1788 + var _this2 = this;
1789 +
1790 + this.$addButton = jQuery('<button>', {
1791 + class: 'e-control-tool'
1792 + }).html(jQuery('<i>', {
1793 + class: 'eicon-plus'
1794 + }));
1795 + this.$headerControlsWrapper.append(this.$addButton);
1796 + this.$addButton.on('click', function () {
1797 + return _this2.onAddButtonClick();
1798 + });
1799 + this.$addButton.tipsy({
1800 + title: function title() {
1801 + return __('Create New Global Font', 'elementor');
1802 + },
1803 + gravity: function gravity() {
1804 + return 's';
1805 + }
1806 + });
1807 + }
1808 + }, {
1809 + key: "destroy",
1810 + value: function destroy() {
1811 + this.$popover.remove();
1812 + }
1813 + }]);
1814 + return ControlsPopover;
1815 +}();
1816 +
1817 +exports["default"] = ControlsPopover;
1818 +
1819 +/***/ }),
1820 +
1821 +/***/ "../assets/dev/js/editor/views/controls-stack.js":
1822 +/*!*******************************************************!*\
1823 + !*** ../assets/dev/js/editor/views/controls-stack.js ***!
1824 + \*******************************************************/
1825 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1826 +
1827 +"use strict";
1828 +
1829 +
1830 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1831 +
1832 +Object.defineProperty(exports, "__esModule", ({
1833 + value: true
1834 +}));
1835 +exports["default"] = void 0;
1836 +
1837 +var _controlsPopover = _interopRequireDefault(__webpack_require__(/*! ./controls-popover */ "../assets/dev/js/editor/views/controls-popover.js"));
1838 +
1839 +var ControlsStack;
1840 +ControlsStack = Marionette.CompositeView.extend({
1841 + classes: {
1842 + popover: 'elementor-controls-popover'
1843 + },
1844 + activeTab: null,
1845 + activeSection: null,
1846 + className: function className() {
1847 + return 'elementor-controls-stack';
1848 + },
1849 + templateHelpers: function templateHelpers() {
1850 + return {
1851 + elementData: elementor.getElementData(this.model)
1852 + };
1853 + },
1854 + childViewOptions: function childViewOptions() {
1855 + return {
1856 + // TODO: elementSettingsModel is deprecated since 2.8.0.
1857 + elementSettingsModel: this.model
1858 + };
1859 + },
1860 + ui: function ui() {
1861 + return {
1862 + tabs: '.elementor-panel-navigation-tab',
1863 + reloadButton: '.elementor-update-preview-button'
1864 + };
1865 + },
1866 + events: function events() {
1867 + return {
1868 + 'click @ui.reloadButton': 'onReloadButtonClick'
1869 + };
1870 + },
1871 + modelEvents: {
1872 + destroy: 'onModelDestroy'
1873 + },
1874 + behaviors: {
1875 + HandleInnerTabs: {
1876 + behaviorClass: __webpack_require__(/*! elementor-behaviors/inner-tabs */ "../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js")
1877 + }
1878 + },
1879 + initialize: function initialize(options) {
1880 + this.initCollection();
1881 +
1882 + if (options.tab) {
1883 + this.activeTab = options.tab;
1884 + this.activateFirstSection();
1885 + }
1886 +
1887 + this.listenTo(elementor.channels.deviceMode, 'change', this.onDeviceModeChange);
1888 + },
1889 + initCollection: function initCollection() {
1890 + this.collection = new Backbone.Collection(_.values(elementor.mergeControlsSettings(this.getOption('controls'))));
1891 + },
1892 + filter: function filter(controlModel) {
1893 + if (controlModel.get('tab') !== this.activeTab) {
1894 + return false;
1895 + }
1896 +
1897 + if ('section' === controlModel.get('type')) {
1898 + return true;
1899 + }
1900 +
1901 + var section = controlModel.get('section');
1902 + return !section || section === this.activeSection;
1903 + },
1904 + getControlViewByModel: function getControlViewByModel(model) {
1905 + return this.children.findByModelCid(model.cid);
1906 + },
1907 + getControlViewByName: function getControlViewByName(name) {
1908 + return this.getControlViewByModel(this.getControlModel(name));
1909 + },
1910 + getControlModel: function getControlModel(name) {
1911 + return this.collection.findWhere({
1912 + name: name
1913 + });
1914 + },
1915 + isVisibleSectionControl: function isVisibleSectionControl(sectionControlModel) {
1916 + return this.activeTab === sectionControlModel.get('tab');
1917 + },
1918 + activateTab: function activateTab(tab) {
1919 + this.activeTab = tab;
1920 + this.activateFirstSection();
1921 +
1922 + this._renderChildren();
1923 +
1924 + return this;
1925 + },
1926 + activateSection: function activateSection(sectionName) {
1927 + this.activeSection = sectionName;
1928 + return this;
1929 + },
1930 + activateFirstSection: function activateFirstSection() {
1931 + var self = this;
1932 + var sectionControls = self.collection.filter(function (controlModel) {
1933 + return 'section' === controlModel.get('type') && self.isVisibleSectionControl(controlModel);
1934 + });
1935 + var sectionToActivate;
1936 +
1937 + if (!sectionControls[0]) {
1938 + self.activeSection = null;
1939 + sectionToActivate = null;
1940 + } else {
1941 + sectionToActivate = sectionControls[0].get('name');
1942 + }
1943 +
1944 + var preActivatedSection = sectionControls.filter(function (controlModel) {
1945 + return self.activeSection === controlModel.get('name');
1946 + });
1947 +
1948 + if (preActivatedSection[0]) {
1949 + return;
1950 + }
1951 +
1952 + self.activateSection(sectionToActivate);
1953 + return this;
1954 + },
1955 + getChildView: function getChildView(item) {
1956 + var controlType = item.get('type');
1957 + return elementor.getControlView(controlType);
1958 + },
1959 + getNamespaceArray: function getNamespaceArray() {
1960 + return [elementor.getPanelView().getCurrentPageName()];
1961 + },
1962 + openActiveSection: function openActiveSection() {
1963 + var activeSection = this.activeSection,
1964 + activeSectionView = this.children.filter(function (view) {
1965 + return activeSection === view.model.get('name');
1966 + });
1967 +
1968 + if (activeSectionView[0]) {
1969 + activeSectionView[0].$el.addClass('elementor-open');
1970 + var eventNamespace = this.getNamespaceArray();
1971 + eventNamespace.push(activeSection, 'activated');
1972 + elementor.channels.editor.trigger(eventNamespace.join(':'), this);
1973 + }
1974 + },
1975 + onRenderCollection: function onRenderCollection() {
1976 + this.openActiveSection();
1977 + ControlsStack.handlePopovers(this);
1978 + },
1979 + onModelDestroy: function onModelDestroy() {
1980 + this.destroy();
1981 + },
1982 + onReloadButtonClick: function onReloadButtonClick() {
1983 + elementor.reloadPreview();
1984 + },
1985 + onDeviceModeChange: function onDeviceModeChange() {
1986 + if ('desktop' === elementor.channels.deviceMode.request('currentMode')) {
1987 + this.$el.removeClass('elementor-responsive-switchers-open');
1988 + }
1989 + },
1990 + onChildviewControlSectionClicked: function onChildviewControlSectionClicked(childView) {
1991 + var isSectionOpen = childView.$el.hasClass('elementor-open');
1992 + this.activateSection(isSectionOpen ? null : childView.model.get('name'));
1993 +
1994 + this._renderChildren();
1995 + },
1996 + onChildviewResponsiveSwitcherClick: function onChildviewResponsiveSwitcherClick(childView, device) {
1997 + if ('desktop' === device) {
1998 + this.$el.toggleClass('elementor-responsive-switchers-open');
1999 + }
2000 + }
2001 +}, {
2002 + handlePopovers: function handlePopovers(view) {
2003 + var popover;
2004 + view.popovers = [];
2005 + this.removePopovers(view);
2006 + view.children.each(function (control) {
2007 + if (popover) {
2008 + popover.addChild(control);
2009 + }
2010 +
2011 + var popoverData = control.model.get('popover');
2012 +
2013 + if (!popoverData) {
2014 + return;
2015 + }
2016 +
2017 + if (popoverData.start) {
2018 + popover = new _controlsPopover.default(control);
2019 + view.popovers.push(popover);
2020 + }
2021 +
2022 + if (popoverData.end) {
2023 + popover = null;
2024 + }
2025 + });
2026 + },
2027 + removePopovers: function removePopovers(view) {
2028 + view.popovers.forEach(function (popover) {
2029 + return popover.destroy();
2030 + });
2031 + }
2032 +});
2033 +var _default = ControlsStack;
2034 +exports["default"] = _default;
2035 +
2036 +/***/ }),
2037 +
2038 +/***/ "../assets/dev/js/modules/imports/args-object.js":
2039 +/*!*******************************************************!*\
2040 + !*** ../assets/dev/js/modules/imports/args-object.js ***!
2041 + \*******************************************************/
2042 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2043 +
2044 +"use strict";
2045 +
2046 +
2047 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2048 +
2049 +Object.defineProperty(exports, "__esModule", ({
2050 + value: true
2051 +}));
2052 +exports["default"] = void 0;
2053 +
2054 +var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"));
2055 +
2056 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
2057 +
2058 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
2059 +
2060 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
2061 +
2062 +var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
2063 +
2064 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
2065 +
2066 +var _instanceType = _interopRequireDefault(__webpack_require__(/*! ./instance-type */ "../assets/dev/js/modules/imports/instance-type.js"));
2067 +
2068 +var _isInstanceof = _interopRequireDefault(__webpack_require__(/*! ../../editor/utils/is-instanceof */ "../assets/dev/js/editor/utils/is-instanceof.js"));
2069 +
2070 +function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
2071 +
2072 +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
2073 +
2074 +var ArgsObject = /*#__PURE__*/function (_InstanceType) {
2075 + (0, _inherits2.default)(ArgsObject, _InstanceType);
2076 +
2077 + var _super = _createSuper(ArgsObject);
2078 +
2079 + /**
2080 + * Function constructor().
2081 + *
2082 + * Create ArgsObject.
2083 + *
2084 + * @param {{}} args
2085 + */
2086 + function ArgsObject(args) {
2087 + var _this;
2088 +
2089 + (0, _classCallCheck2.default)(this, ArgsObject);
2090 + _this = _super.call(this);
2091 + _this.args = args;
2092 + return _this;
2093 + }
2094 + /**
2095 + * Function requireArgument().
2096 + *
2097 + * Validate property in args.
2098 + *
2099 + * @param {string} property
2100 + * @param {{}} args
2101 + *
2102 + * @throws {Error}
2103 + *
2104 + */
2105 +
2106 +
2107 + (0, _createClass2.default)(ArgsObject, [{
2108 + key: "requireArgument",
2109 + value: function requireArgument(property) {
2110 + var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.args;
2111 +
2112 + if (!Object.prototype.hasOwnProperty.call(args, property)) {
2113 + throw Error("".concat(property, " is required."));
2114 + }
2115 + }
2116 + /**
2117 + * Function requireArgumentType().
2118 + *
2119 + * Validate property in args using `type === typeof(args.whatever)`.
2120 + *
2121 + * @param {string} property
2122 + * @param {string} type
2123 + * @param {{}} args
2124 + *
2125 + * @throws {Error}
2126 + *
2127 + */
2128 +
2129 + }, {
2130 + key: "requireArgumentType",
2131 + value: function requireArgumentType(property, type) {
2132 + var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
2133 + this.requireArgument(property, args);
2134 +
2135 + if ((0, _typeof2.default)(args[property]) !== type) {
2136 + throw Error("".concat(property, " invalid type: ").concat(type, "."));
2137 + }
2138 + }
2139 + /**
2140 + * Function requireArgumentInstance().
2141 + *
2142 + * Validate property in args using `args.whatever instanceof instance`.
2143 + *
2144 + * @param {string} property
2145 + * @param {*} instance
2146 + * @param {{}} args
2147 + *
2148 + * @throws {Error}
2149 + *
2150 + */
2151 +
2152 + }, {
2153 + key: "requireArgumentInstance",
2154 + value: function requireArgumentInstance(property, instance) {
2155 + var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
2156 + this.requireArgument(property, args);
2157 +
2158 + if (!(args[property] instanceof instance) && !(0, _isInstanceof.default)(args[property], instance)) {
2159 + throw Error("".concat(property, " invalid instance."));
2160 + }
2161 + }
2162 + /**
2163 + * Function requireArgumentConstructor().
2164 + *
2165 + * Validate property in args using `type === args.whatever.constructor`.
2166 + *
2167 + * @param {string} property
2168 + * @param {*} type
2169 + * @param {{}} args
2170 + *
2171 + * @throws {Error}
2172 + *
2173 + */
2174 +
2175 + }, {
2176 + key: "requireArgumentConstructor",
2177 + value: function requireArgumentConstructor(property, type) {
2178 + var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
2179 + this.requireArgument(property, args); // Note: Converting the constructor to string in order to avoid equation issues
2180 + // due to different memory addresses between iframes (window.Object !== window.top.Object).
2181 +
2182 + if (args[property].constructor.toString() !== type.prototype.constructor.toString()) {
2183 + throw Error("".concat(property, " invalid constructor type."));
2184 + }
2185 + }
2186 + }], [{
2187 + key: "getInstanceType",
2188 + value: function getInstanceType() {
2189 + return 'ArgsObject';
2190 + }
2191 + }]);
2192 + return ArgsObject;
2193 +}(_instanceType.default);
2194 +
2195 +exports["default"] = ArgsObject;
2196 +
2197 +/***/ }),
2198 +
2199 +/***/ "../assets/dev/js/modules/imports/instance-type.js":
2200 +/*!*********************************************************!*\
2201 + !*** ../assets/dev/js/modules/imports/instance-type.js ***!
2202 + \*********************************************************/
2203 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2204 +
2205 +"use strict";
2206 +
2207 +
2208 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2209 +
2210 +Object.defineProperty(exports, "__esModule", ({
2211 + value: true
2212 +}));
2213 +exports["default"] = void 0;
2214 +
2215 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
2216 +
2217 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
2218 +
2219 +var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/get */ "../node_modules/@babel/runtime/helpers/get.js"));
2220 +
2221 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
2222 +
2223 +var InstanceType = /*#__PURE__*/function (_Symbol$hasInstance) {
2224 + function InstanceType() {
2225 + var _this = this;
2226 +
2227 + (0, _classCallCheck2.default)(this, InstanceType);
2228 + // Since anonymous classes sometimes do not get validated by babel, do it manually.
2229 + var target = this instanceof InstanceType ? this.constructor : void 0;
2230 + var prototypes = [];
2231 +
2232 + while (target.__proto__ && target.__proto__.name) {
2233 + prototypes.push(target.__proto__);
2234 + target = target.__proto__;
2235 + }
2236 +
2237 + prototypes.reverse().forEach(function (proto) {
2238 + return _this instanceof proto;
2239 + });
2240 + }
2241 +
2242 + (0, _createClass2.default)(InstanceType, null, [{
2243 + key: _Symbol$hasInstance,
2244 + value: function value(target) {
2245 + /**
2246 + * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
2247 + * its give's opportunity to mange capabilities of instanceOf operator.
2248 + * saving current class each time will give option later to handle instanceOf manually.
2249 + */
2250 + var result = (0, _get2.default)((0, _getPrototypeOf2.default)(InstanceType), Symbol.hasInstance, this).call(this, target); // Act normal when validate a class, which does not have instance type.
2251 +
2252 + if (target && !target.constructor.getInstanceType) {
2253 + return result;
2254 + }
2255 +
2256 + if (target) {
2257 + if (!target.instanceTypes) {
2258 + target.instanceTypes = [];
2259 + }
2260 +
2261 + if (!result) {
2262 + if (this.getInstanceType() === target.constructor.getInstanceType()) {
2263 + result = true;
2264 + }
2265 + }
2266 +
2267 + if (result) {
2268 + var name = this.getInstanceType === InstanceType.getInstanceType ? 'BaseInstanceType' : this.getInstanceType();
2269 +
2270 + if (-1 === target.instanceTypes.indexOf(name)) {
2271 + target.instanceTypes.push(name);
2272 + }
2273 + }
2274 + }
2275 +
2276 + if (!result && target) {
2277 + // Check if the given 'target', is instance of known types.
2278 + result = target.instanceTypes && Array.isArray(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
2279 + }
2280 +
2281 + return result;
2282 + }
2283 + }, {
2284 + key: "getInstanceType",
2285 + value: function getInstanceType() {
2286 + elementorModules.ForceMethodImplementation();
2287 + }
2288 + }]);
2289 + return InstanceType;
2290 +}(Symbol.hasInstance);
2291 +
2292 +exports["default"] = InstanceType;
2293 +
2294 +/***/ }),
2295 +
2296 +/***/ "@wordpress/i18n":
2297 +/*!**************************!*\
2298 + !*** external "wp.i18n" ***!
2299 + \**************************/
2300 +/***/ ((module) => {
2301 +
2302 +"use strict";
2303 +module.exports = wp.i18n;
2304 +
2305 +/***/ }),
2306 +
2307 +/***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
2308 +/*!******************************************************************!*\
2309 + !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
2310 + \******************************************************************/
2311 +/***/ ((module) => {
2312 +
2313 +function _arrayLikeToArray(arr, len) {
2314 + if (len == null || len > arr.length) len = arr.length;
2315 +
2316 + for (var i = 0, arr2 = new Array(len); i < len; i++) {
2317 + arr2[i] = arr[i];
2318 + }
2319 +
2320 + return arr2;
2321 +}
2322 +
2323 +module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
2324 +
2325 +/***/ }),
2326 +
2327 +/***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
2328 +/*!****************************************************************!*\
2329 + !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
2330 + \****************************************************************/
2331 +/***/ ((module) => {
2332 +
2333 +function _arrayWithHoles(arr) {
2334 + if (Array.isArray(arr)) return arr;
2335 +}
2336 +
2337 +module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
2338 +
2339 +/***/ }),
2340 +
2341 +/***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js":
2342 +/*!***********************************************************************!*\
2343 + !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
2344 + \***********************************************************************/
2345 +/***/ ((module) => {
2346 +
2347 +function _assertThisInitialized(self) {
2348 + if (self === void 0) {
2349 + throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
2350 + }
2351 +
2352 + return self;
2353 +}
2354 +
2355 +module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports;
2356 +
2357 +/***/ }),
2358 +
2359 +/***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js":
2360 +/*!****************************************************************!*\
2361 + !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***!
2362 + \****************************************************************/
2363 +/***/ ((module) => {
2364 +
2365 +function _classCallCheck(instance, Constructor) {
2366 + if (!(instance instanceof Constructor)) {
2367 + throw new TypeError("Cannot call a class as a function");
2368 + }
2369 +}
2370 +
2371 +module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
2372 +
2373 +/***/ }),
2374 +
2375 +/***/ "../node_modules/@babel/runtime/helpers/construct.js":
2376 +/*!***********************************************************!*\
2377 + !*** ../node_modules/@babel/runtime/helpers/construct.js ***!
2378 + \***********************************************************/
2379 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2380 +
2381 +var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
2382 +
2383 +var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js");
2384 +
2385 +function _construct(Parent, args, Class) {
2386 + if (isNativeReflectConstruct()) {
2387 + module.exports = _construct = Reflect.construct.bind(), module.exports.__esModule = true, module.exports["default"] = module.exports;
2388 + } else {
2389 + module.exports = _construct = function _construct(Parent, args, Class) {
2390 + var a = [null];
2391 + a.push.apply(a, args);
2392 + var Constructor = Function.bind.apply(Parent, a);
2393 + var instance = new Constructor();
2394 + if (Class) setPrototypeOf(instance, Class.prototype);
2395 + return instance;
2396 + }, module.exports.__esModule = true, module.exports["default"] = module.exports;
2397 + }
2398 +
2399 + return _construct.apply(null, arguments);
2400 +}
2401 +
2402 +module.exports = _construct, module.exports.__esModule = true, module.exports["default"] = module.exports;
2403 +
2404 +/***/ }),
2405 +
2406 +/***/ "../node_modules/@babel/runtime/helpers/createClass.js":
2407 +/*!*************************************************************!*\
2408 + !*** ../node_modules/@babel/runtime/helpers/createClass.js ***!
2409 + \*************************************************************/
2410 +/***/ ((module) => {
2411 +
2412 +function _defineProperties(target, props) {
2413 + for (var i = 0; i < props.length; i++) {
2414 + var descriptor = props[i];
2415 + descriptor.enumerable = descriptor.enumerable || false;
2416 + descriptor.configurable = true;
2417 + if ("value" in descriptor) descriptor.writable = true;
2418 + Object.defineProperty(target, descriptor.key, descriptor);
2419 + }
2420 +}
2421 +
2422 +function _createClass(Constructor, protoProps, staticProps) {
2423 + if (protoProps) _defineProperties(Constructor.prototype, protoProps);
2424 + if (staticProps) _defineProperties(Constructor, staticProps);
2425 + Object.defineProperty(Constructor, "prototype", {
2426 + writable: false
2427 + });
2428 + return Constructor;
2429 +}
2430 +
2431 +module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
2432 +
2433 +/***/ }),
2434 +
2435 +/***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
2436 +/*!****************************************************************!*\
2437 + !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
2438 + \****************************************************************/
2439 +/***/ ((module) => {
2440 +
2441 +function _defineProperty(obj, key, value) {
2442 + if (key in obj) {
2443 + Object.defineProperty(obj, key, {
2444 + value: value,
2445 + enumerable: true,
2446 + configurable: true,
2447 + writable: true
2448 + });
2449 + } else {
2450 + obj[key] = value;
2451 + }
2452 +
2453 + return obj;
2454 +}
2455 +
2456 +module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
2457 +
2458 +/***/ }),
2459 +
2460 +/***/ "../node_modules/@babel/runtime/helpers/get.js":
2461 +/*!*****************************************************!*\
2462 + !*** ../node_modules/@babel/runtime/helpers/get.js ***!
2463 + \*****************************************************/
2464 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2465 +
2466 +var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime/helpers/superPropBase.js");
2467 +
2468 +function _get() {
2469 + if (typeof Reflect !== "undefined" && Reflect.get) {
2470 + module.exports = _get = Reflect.get.bind(), module.exports.__esModule = true, module.exports["default"] = module.exports;
2471 + } else {
2472 + module.exports = _get = function _get(target, property, receiver) {
2473 + var base = superPropBase(target, property);
2474 + if (!base) return;
2475 + var desc = Object.getOwnPropertyDescriptor(base, property);
2476 +
2477 + if (desc.get) {
2478 + return desc.get.call(arguments.length < 3 ? target : receiver);
2479 + }
2480 +
2481 + return desc.value;
2482 + }, module.exports.__esModule = true, module.exports["default"] = module.exports;
2483 + }
2484 +
2485 + return _get.apply(this, arguments);
2486 +}
2487 +
2488 +module.exports = _get, module.exports.__esModule = true, module.exports["default"] = module.exports;
2489 +
2490 +/***/ }),
2491 +
2492 +/***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js":
2493 +/*!****************************************************************!*\
2494 + !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
2495 + \****************************************************************/
2496 +/***/ ((module) => {
2497 +
2498 +function _getPrototypeOf(o) {
2499 + module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
2500 + return o.__proto__ || Object.getPrototypeOf(o);
2501 + }, module.exports.__esModule = true, module.exports["default"] = module.exports;
2502 + return _getPrototypeOf(o);
2503 +}
2504 +
2505 +module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
2506 +
2507 +/***/ }),
2508 +
2509 +/***/ "../node_modules/@babel/runtime/helpers/inherits.js":
2510 +/*!**********************************************************!*\
2511 + !*** ../node_modules/@babel/runtime/helpers/inherits.js ***!
2512 + \**********************************************************/
2513 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2514 +
2515 +var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
2516 +
2517 +function _inherits(subClass, superClass) {
2518 + if (typeof superClass !== "function" && superClass !== null) {
2519 + throw new TypeError("Super expression must either be null or a function");
2520 + }
2521 +
2522 + subClass.prototype = Object.create(superClass && superClass.prototype, {
2523 + constructor: {
2524 + value: subClass,
2525 + writable: true,
2526 + configurable: true
2527 + }
2528 + });
2529 + Object.defineProperty(subClass, "prototype", {
2530 + writable: false
2531 + });
2532 + if (superClass) setPrototypeOf(subClass, superClass);
2533 +}
2534 +
2535 +module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports;
2536 +
2537 +/***/ }),
2538 +
2539 +/***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
2540 +/*!***********************************************************************!*\
2541 + !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
2542 + \***********************************************************************/
2543 +/***/ ((module) => {
2544 +
2545 +function _interopRequireDefault(obj) {
2546 + return obj && obj.__esModule ? obj : {
2547 + "default": obj
2548 + };
2549 +}
2550 +
2551 +module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
2552 +
2553 +/***/ }),
2554 +
2555 +/***/ "../node_modules/@babel/runtime/helpers/isNativeFunction.js":
2556 +/*!******************************************************************!*\
2557 + !*** ../node_modules/@babel/runtime/helpers/isNativeFunction.js ***!
2558 + \******************************************************************/
2559 +/***/ ((module) => {
2560 +
2561 +function _isNativeFunction(fn) {
2562 + return Function.toString.call(fn).indexOf("[native code]") !== -1;
2563 +}
2564 +
2565 +module.exports = _isNativeFunction, module.exports.__esModule = true, module.exports["default"] = module.exports;
2566 +
2567 +/***/ }),
2568 +
2569 +/***/ "../node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js":
2570 +/*!**************************************************************************!*\
2571 + !*** ../node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js ***!
2572 + \**************************************************************************/
2573 +/***/ ((module) => {
2574 +
2575 +function _isNativeReflectConstruct() {
2576 + if (typeof Reflect === "undefined" || !Reflect.construct) return false;
2577 + if (Reflect.construct.sham) return false;
2578 + if (typeof Proxy === "function") return true;
2579 +
2580 + try {
2581 + Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
2582 + return true;
2583 + } catch (e) {
2584 + return false;
2585 + }
2586 +}
2587 +
2588 +module.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports["default"] = module.exports;
2589 +
2590 +/***/ }),
2591 +
2592 +/***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
2593 +/*!**********************************************************************!*\
2594 + !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
2595 + \**********************************************************************/
2596 +/***/ ((module) => {
2597 +
2598 +function _iterableToArrayLimit(arr, i) {
2599 + var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
2600 +
2601 + if (_i == null) return;
2602 + var _arr = [];
2603 + var _n = true;
2604 + var _d = false;
2605 +
2606 + var _s, _e;
2607 +
2608 + try {
2609 + for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
2610 + _arr.push(_s.value);
2611 +
2612 + if (i && _arr.length === i) break;
2613 + }
2614 + } catch (err) {
2615 + _d = true;
2616 + _e = err;
2617 + } finally {
2618 + try {
2619 + if (!_n && _i["return"] != null) _i["return"]();
2620 + } finally {
2621 + if (_d) throw _e;
2622 + }
2623 + }
2624 +
2625 + return _arr;
2626 +}
2627 +
2628 +module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
2629 +
2630 +/***/ }),
2631 +
2632 +/***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
2633 +/*!*****************************************************************!*\
2634 + !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
2635 + \*****************************************************************/
2636 +/***/ ((module) => {
2637 +
2638 +function _nonIterableRest() {
2639 + throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2640 +}
2641 +
2642 +module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
2643 +
2644 +/***/ }),
2645 +
2646 +/***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
2647 +/*!***************************************************************************!*\
2648 + !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
2649 + \***************************************************************************/
2650 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2651 +
2652 +var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
2653 +
2654 +var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js");
2655 +
2656 +function _possibleConstructorReturn(self, call) {
2657 + if (call && (_typeof(call) === "object" || typeof call === "function")) {
2658 + return call;
2659 + } else if (call !== void 0) {
2660 + throw new TypeError("Derived constructors may only return object or undefined");
2661 + }
2662 +
2663 + return assertThisInitialized(self);
2664 +}
2665 +
2666 +module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports;
2667 +
2668 +/***/ }),
2669 +
2670 +/***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js":
2671 +/*!****************************************************************!*\
2672 + !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
2673 + \****************************************************************/
2674 +/***/ ((module) => {
2675 +
2676 +function _setPrototypeOf(o, p) {
2677 + module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
2678 + o.__proto__ = p;
2679 + return o;
2680 + }, module.exports.__esModule = true, module.exports["default"] = module.exports;
2681 + return _setPrototypeOf(o, p);
2682 +}
2683 +
2684 +module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
2685 +
2686 +/***/ }),
2687 +
2688 +/***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
2689 +/*!***************************************************************!*\
2690 + !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
2691 + \***************************************************************/
2692 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2693 +
2694 +var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
2695 +
2696 +var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
2697 +
2698 +var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
2699 +
2700 +var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
2701 +
2702 +function _slicedToArray(arr, i) {
2703 + return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
2704 +}
2705 +
2706 +module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
2707 +
2708 +/***/ }),
2709 +
2710 +/***/ "../node_modules/@babel/runtime/helpers/superPropBase.js":
2711 +/*!***************************************************************!*\
2712 + !*** ../node_modules/@babel/runtime/helpers/superPropBase.js ***!
2713 + \***************************************************************/
2714 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2715 +
2716 +var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js");
2717 +
2718 +function _superPropBase(object, property) {
2719 + while (!Object.prototype.hasOwnProperty.call(object, property)) {
2720 + object = getPrototypeOf(object);
2721 + if (object === null) break;
2722 + }
2723 +
2724 + return object;
2725 +}
2726 +
2727 +module.exports = _superPropBase, module.exports.__esModule = true, module.exports["default"] = module.exports;
2728 +
2729 +/***/ }),
2730 +
2731 +/***/ "../node_modules/@babel/runtime/helpers/typeof.js":
2732 +/*!********************************************************!*\
2733 + !*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
2734 + \********************************************************/
2735 +/***/ ((module) => {
2736 +
2737 +function _typeof(obj) {
2738 + "@babel/helpers - typeof";
2739 +
2740 + return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
2741 + return typeof obj;
2742 + } : function (obj) {
2743 + return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
2744 + }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(obj);
2745 +}
2746 +
2747 +module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
2748 +
2749 +/***/ }),
2750 +
2751 +/***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
2752 +/*!****************************************************************************!*\
2753 + !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
2754 + \****************************************************************************/
2755 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2756 +
2757 +var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
2758 +
2759 +function _unsupportedIterableToArray(o, minLen) {
2760 + if (!o) return;
2761 + if (typeof o === "string") return arrayLikeToArray(o, minLen);
2762 + var n = Object.prototype.toString.call(o).slice(8, -1);
2763 + if (n === "Object" && o.constructor) n = o.constructor.name;
2764 + if (n === "Map" || n === "Set") return Array.from(o);
2765 + if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
2766 +}
2767 +
2768 +module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
2769 +
2770 +/***/ }),
2771 +
2772 +/***/ "../node_modules/@babel/runtime/helpers/wrapNativeSuper.js":
2773 +/*!*****************************************************************!*\
2774 + !*** ../node_modules/@babel/runtime/helpers/wrapNativeSuper.js ***!
2775 + \*****************************************************************/
2776 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2777 +
2778 +var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js");
2779 +
2780 +var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
2781 +
2782 +var isNativeFunction = __webpack_require__(/*! ./isNativeFunction.js */ "../node_modules/@babel/runtime/helpers/isNativeFunction.js");
2783 +
2784 +var construct = __webpack_require__(/*! ./construct.js */ "../node_modules/@babel/runtime/helpers/construct.js");
2785 +
2786 +function _wrapNativeSuper(Class) {
2787 + var _cache = typeof Map === "function" ? new Map() : undefined;
2788 +
2789 + module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {
2790 + if (Class === null || !isNativeFunction(Class)) return Class;
2791 +
2792 + if (typeof Class !== "function") {
2793 + throw new TypeError("Super expression must either be null or a function");
2794 + }
2795 +
2796 + if (typeof _cache !== "undefined") {
2797 + if (_cache.has(Class)) return _cache.get(Class);
2798 +
2799 + _cache.set(Class, Wrapper);
2800 + }
2801 +
2802 + function Wrapper() {
2803 + return construct(Class, arguments, getPrototypeOf(this).constructor);
2804 + }
2805 +
2806 + Wrapper.prototype = Object.create(Class.prototype, {
2807 + constructor: {
2808 + value: Wrapper,
2809 + enumerable: false,
2810 + writable: true,
2811 + configurable: true
2812 + }
2813 + });
2814 + return setPrototypeOf(Wrapper, Class);
2815 + }, module.exports.__esModule = true, module.exports["default"] = module.exports;
2816 + return _wrapNativeSuper(Class);
2817 +}
2818 +
2819 +module.exports = _wrapNativeSuper, module.exports.__esModule = true, module.exports["default"] = module.exports;
2820 +
2821 +/***/ })
2822 +
2823 +/******/ });
2824 +/************************************************************************/
2825 +/******/ // The module cache
2826 +/******/ var __webpack_module_cache__ = {};
2827 +/******/
2828 +/******/ // The require function
2829 +/******/ function __webpack_require__(moduleId) {
2830 +/******/ // Check if module is in cache
2831 +/******/ var cachedModule = __webpack_module_cache__[moduleId];
2832 +/******/ if (cachedModule !== undefined) {
2833 +/******/ return cachedModule.exports;
2834 +/******/ }
2835 +/******/ // Create a new module (and put it into the cache)
2836 +/******/ var module = __webpack_module_cache__[moduleId] = {
2837 +/******/ // no module.id needed
2838 +/******/ // no module.loaded needed
2839 +/******/ exports: {}
2840 +/******/ };
2841 +/******/
2842 +/******/ // Execute the module function
2843 +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
2844 +/******/
2845 +/******/ // Return the exports of the module
2846 +/******/ return module.exports;
2847 +/******/ }
2848 +/******/
2849 +/************************************************************************/
2850 +var __webpack_exports__ = {};
2851 +// This entry need to be wrapped in an IIFE because it need to be in strict mode.
2852 +(() => {
2853 +"use strict";
2854 +/*!******************************************!*\
2855 + !*** ../assets/dev/js/editor/modules.js ***!
2856 + \******************************************/
2857 +
2858 +
2859 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2860 +
2861 +var _module = _interopRequireDefault(__webpack_require__(/*! ./utils/module */ "../assets/dev/js/editor/utils/module.js"));
2862 +
2863 +var _introduction = _interopRequireDefault(__webpack_require__(/*! ./utils/introduction */ "../assets/dev/js/editor/utils/introduction.js"));
2864 +
2865 +var _controlsStack = _interopRequireDefault(__webpack_require__(/*! ./views/controls-stack */ "../assets/dev/js/editor/views/controls-stack.js"));
2866 +
2867 +var _baseSettings = _interopRequireDefault(__webpack_require__(/*! ./elements/models/base-settings */ "../assets/dev/js/editor/elements/models/base-settings.js"));
2868 +
2869 +var _container = _interopRequireDefault(__webpack_require__(/*! ./container/container */ "../assets/dev/js/editor/container/container.js"));
2870 +
2871 +elementorModules.editor = {
2872 + elements: {
2873 + models: {
2874 + BaseSettings: _baseSettings.default
2875 + }
2876 + },
2877 + utils: {
2878 + Module: _module.default,
2879 + Introduction: _introduction.default
2880 + },
2881 + views: {
2882 + ControlsStack: _controlsStack.default
2883 + },
2884 + Container: _container.default
2885 +};
2886 +})();
2887 +
2888 +/******/ })()
2889 +;
2281 2890 //# sourceMappingURL=editor-modules.js.map