balmet.com

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

editor.js (1669819B)


      1 /*! elementor - v3.4.4 - 13-09-2021 */
      2 /******/ (() => { // webpackBootstrap
      3 /******/ 	var __webpack_modules__ = ({
      4 
      5 /***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
      6 /*!********************************************************************!*\
      7   !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
      8   \********************************************************************/
      9 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
     10 
     11 module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");
     12 
     13 /***/ }),
     14 
     15 /***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
     16 /*!************************************************************************!*\
     17   !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
     18   \************************************************************************/
     19 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
     20 
     21 module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");
     22 
     23 /***/ }),
     24 
     25 /***/ "../node_modules/@babel/runtime-corejs2/core-js/is-iterable.js":
     26 /*!*********************************************************************!*\
     27   !*** ../node_modules/@babel/runtime-corejs2/core-js/is-iterable.js ***!
     28   \*********************************************************************/
     29 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
     30 
     31 module.exports = __webpack_require__(/*! core-js/library/fn/is-iterable */ "../node_modules/core-js/library/fn/is-iterable.js");
     32 
     33 /***/ }),
     34 
     35 /***/ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js":
     36 /*!************************************************************************!*\
     37   !*** ../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js ***!
     38   \************************************************************************/
     39 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
     40 
     41 module.exports = __webpack_require__(/*! core-js/library/fn/json/stringify */ "../node_modules/core-js/library/fn/json/stringify.js");
     42 
     43 /***/ }),
     44 
     45 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js":
     46 /*!***********************************************************************!*\
     47   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/assign.js ***!
     48   \***********************************************************************/
     49 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
     50 
     51 module.exports = __webpack_require__(/*! core-js/library/fn/object/assign */ "../node_modules/core-js/library/fn/object/assign.js");
     52 
     53 /***/ }),
     54 
     55 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
     56 /*!***********************************************************************!*\
     57   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
     58   \***********************************************************************/
     59 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
     60 
     61 module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");
     62 
     63 /***/ }),
     64 
     65 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js":
     66 /*!**********************************************************************************!*\
     67   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js ***!
     68   \**********************************************************************************/
     69 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
     70 
     71 module.exports = __webpack_require__(/*! core-js/library/fn/object/define-properties */ "../node_modules/core-js/library/fn/object/define-properties.js");
     72 
     73 /***/ }),
     74 
     75 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
     76 /*!********************************************************************************!*\
     77   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
     78   \********************************************************************************/
     79 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
     80 
     81 module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");
     82 
     83 /***/ }),
     84 
     85 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js":
     86 /*!************************************************************************!*\
     87   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/entries.js ***!
     88   \************************************************************************/
     89 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
     90 
     91 module.exports = __webpack_require__(/*! core-js/library/fn/object/entries */ "../node_modules/core-js/library/fn/object/entries.js");
     92 
     93 /***/ }),
     94 
     95 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
     96 /*!********************************************************************************************!*\
     97   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
     98   \********************************************************************************************/
     99 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    100 
    101 module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");
    102 
    103 /***/ }),
    104 
    105 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js":
    106 /*!*********************************************************************************************!*\
    107   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js ***!
    108   \*********************************************************************************************/
    109 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    110 
    111 module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptors */ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js");
    112 
    113 /***/ }),
    114 
    115 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js":
    116 /*!*****************************************************************************************!*\
    117   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js ***!
    118   \*****************************************************************************************/
    119 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    120 
    121 module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-symbols */ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js");
    122 
    123 /***/ }),
    124 
    125 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
    126 /*!*********************************************************************************!*\
    127   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
    128   \*********************************************************************************/
    129 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    130 
    131 module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");
    132 
    133 /***/ }),
    134 
    135 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js":
    136 /*!*********************************************************************!*\
    137   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/keys.js ***!
    138   \*********************************************************************/
    139 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    140 
    141 module.exports = __webpack_require__(/*! core-js/library/fn/object/keys */ "../node_modules/core-js/library/fn/object/keys.js");
    142 
    143 /***/ }),
    144 
    145 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
    146 /*!*********************************************************************************!*\
    147   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
    148   \*********************************************************************************/
    149 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    150 
    151 module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");
    152 
    153 /***/ }),
    154 
    155 /***/ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js":
    156 /*!***********************************************************************!*\
    157   !*** ../node_modules/@babel/runtime-corejs2/core-js/object/values.js ***!
    158   \***********************************************************************/
    159 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    160 
    161 module.exports = __webpack_require__(/*! core-js/library/fn/object/values */ "../node_modules/core-js/library/fn/object/values.js");
    162 
    163 /***/ }),
    164 
    165 /***/ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js":
    166 /*!*******************************************************************!*\
    167   !*** ../node_modules/@babel/runtime-corejs2/core-js/parse-int.js ***!
    168   \*******************************************************************/
    169 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    170 
    171 module.exports = __webpack_require__(/*! core-js/library/fn/parse-int */ "../node_modules/core-js/library/fn/parse-int.js");
    172 
    173 /***/ }),
    174 
    175 /***/ "../node_modules/@babel/runtime-corejs2/core-js/promise.js":
    176 /*!*****************************************************************!*\
    177   !*** ../node_modules/@babel/runtime-corejs2/core-js/promise.js ***!
    178   \*****************************************************************/
    179 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    180 
    181 module.exports = __webpack_require__(/*! core-js/library/fn/promise */ "../node_modules/core-js/library/fn/promise.js");
    182 
    183 /***/ }),
    184 
    185 /***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
    186 /*!***************************************************************************!*\
    187   !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
    188   \***************************************************************************/
    189 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    190 
    191 module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");
    192 
    193 /***/ }),
    194 
    195 /***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
    196 /*!*********************************************************************!*\
    197   !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
    198   \*********************************************************************/
    199 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    200 
    201 module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");
    202 
    203 /***/ }),
    204 
    205 /***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
    206 /*!****************************************************************!*\
    207   !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
    208   \****************************************************************/
    209 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    210 
    211 module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");
    212 
    213 /***/ }),
    214 
    215 /***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js":
    216 /*!*****************************************************************************!*\
    217   !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js ***!
    218   \*****************************************************************************/
    219 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    220 
    221 module.exports = __webpack_require__(/*! core-js/library/fn/symbol/has-instance */ "../node_modules/core-js/library/fn/symbol/has-instance.js");
    222 
    223 /***/ }),
    224 
    225 /***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
    226 /*!*************************************************************************!*\
    227   !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
    228   \*************************************************************************/
    229 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    230 
    231 module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");
    232 
    233 /***/ }),
    234 
    235 /***/ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js":
    236 /*!******************************************************************!*\
    237   !*** ../node_modules/@babel/runtime-corejs2/core-js/weak-map.js ***!
    238   \******************************************************************/
    239 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    240 
    241 module.exports = __webpack_require__(/*! core-js/library/fn/weak-map */ "../node_modules/core-js/library/fn/weak-map.js");
    242 
    243 /***/ }),
    244 
    245 /***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
    246 /*!**************************************************************************!*\
    247   !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
    248   \**************************************************************************/
    249 /***/ ((module) => {
    250 
    251 function _arrayLikeToArray(arr, len) {
    252   if (len == null || len > arr.length) len = arr.length;
    253 
    254   for (var i = 0, arr2 = new Array(len); i < len; i++) {
    255     arr2[i] = arr[i];
    256   }
    257 
    258   return arr2;
    259 }
    260 
    261 module.exports = _arrayLikeToArray;
    262 module.exports.default = module.exports, module.exports.__esModule = true;
    263 
    264 /***/ }),
    265 
    266 /***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
    267 /*!************************************************************************!*\
    268   !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
    269   \************************************************************************/
    270 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    271 
    272 var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");
    273 
    274 function _arrayWithHoles(arr) {
    275   if (_Array$isArray(arr)) return arr;
    276 }
    277 
    278 module.exports = _arrayWithHoles;
    279 module.exports.default = module.exports, module.exports.__esModule = true;
    280 
    281 /***/ }),
    282 
    283 /***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js":
    284 /*!***************************************************************************!*\
    285   !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js ***!
    286   \***************************************************************************/
    287 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    288 
    289 var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");
    290 
    291 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");
    292 
    293 function _arrayWithoutHoles(arr) {
    294   if (_Array$isArray(arr)) return arrayLikeToArray(arr);
    295 }
    296 
    297 module.exports = _arrayWithoutHoles;
    298 module.exports.default = module.exports, module.exports.__esModule = true;
    299 
    300 /***/ }),
    301 
    302 /***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
    303 /*!*******************************************************************************!*\
    304   !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
    305   \*******************************************************************************/
    306 /***/ ((module) => {
    307 
    308 function _assertThisInitialized(self) {
    309   if (self === void 0) {
    310     throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
    311   }
    312 
    313   return self;
    314 }
    315 
    316 module.exports = _assertThisInitialized;
    317 module.exports.default = module.exports, module.exports.__esModule = true;
    318 
    319 /***/ }),
    320 
    321 /***/ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js":
    322 /*!**************************************************************************!*\
    323   !*** ../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js ***!
    324   \**************************************************************************/
    325 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    326 
    327 var _Promise = __webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js");
    328 
    329 function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
    330   try {
    331     var info = gen[key](arg);
    332     var value = info.value;
    333   } catch (error) {
    334     reject(error);
    335     return;
    336   }
    337 
    338   if (info.done) {
    339     resolve(value);
    340   } else {
    341     _Promise.resolve(value).then(_next, _throw);
    342   }
    343 }
    344 
    345 function _asyncToGenerator(fn) {
    346   return function () {
    347     var self = this,
    348         args = arguments;
    349     return new _Promise(function (resolve, reject) {
    350       var gen = fn.apply(self, args);
    351 
    352       function _next(value) {
    353         asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
    354       }
    355 
    356       function _throw(err) {
    357         asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
    358       }
    359 
    360       _next(undefined);
    361     });
    362   };
    363 }
    364 
    365 module.exports = _asyncToGenerator;
    366 module.exports.default = module.exports, module.exports.__esModule = true;
    367 
    368 /***/ }),
    369 
    370 /***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
    371 /*!************************************************************************!*\
    372   !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
    373   \************************************************************************/
    374 /***/ ((module) => {
    375 
    376 function _classCallCheck(instance, Constructor) {
    377   if (!(instance instanceof Constructor)) {
    378     throw new TypeError("Cannot call a class as a function");
    379   }
    380 }
    381 
    382 module.exports = _classCallCheck;
    383 module.exports.default = module.exports, module.exports.__esModule = true;
    384 
    385 /***/ }),
    386 
    387 /***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
    388 /*!*********************************************************************!*\
    389   !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
    390   \*********************************************************************/
    391 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    392 
    393 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
    394 
    395 function _defineProperties(target, props) {
    396   for (var i = 0; i < props.length; i++) {
    397     var descriptor = props[i];
    398     descriptor.enumerable = descriptor.enumerable || false;
    399     descriptor.configurable = true;
    400     if ("value" in descriptor) descriptor.writable = true;
    401 
    402     _Object$defineProperty(target, descriptor.key, descriptor);
    403   }
    404 }
    405 
    406 function _createClass(Constructor, protoProps, staticProps) {
    407   if (protoProps) _defineProperties(Constructor.prototype, protoProps);
    408   if (staticProps) _defineProperties(Constructor, staticProps);
    409   return Constructor;
    410 }
    411 
    412 module.exports = _createClass;
    413 module.exports.default = module.exports, module.exports.__esModule = true;
    414 
    415 /***/ }),
    416 
    417 /***/ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js":
    418 /*!***********************************************************************************!*\
    419   !*** ../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js ***!
    420   \***********************************************************************************/
    421 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    422 
    423 var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");
    424 
    425 var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");
    426 
    427 var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");
    428 
    429 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");
    430 
    431 function _createForOfIteratorHelper(o, allowArrayLike) {
    432   var it = typeof _Symbol !== "undefined" && o[_Symbol$iterator] || o["@@iterator"];
    433 
    434   if (!it) {
    435     if (_Array$isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
    436       if (it) o = it;
    437       var i = 0;
    438 
    439       var F = function F() {};
    440 
    441       return {
    442         s: F,
    443         n: function n() {
    444           if (i >= o.length) return {
    445             done: true
    446           };
    447           return {
    448             done: false,
    449             value: o[i++]
    450           };
    451         },
    452         e: function e(_e) {
    453           throw _e;
    454         },
    455         f: F
    456       };
    457     }
    458 
    459     throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
    460   }
    461 
    462   var normalCompletion = true,
    463       didErr = false,
    464       err;
    465   return {
    466     s: function s() {
    467       it = it.call(o);
    468     },
    469     n: function n() {
    470       var step = it.next();
    471       normalCompletion = step.done;
    472       return step;
    473     },
    474     e: function e(_e2) {
    475       didErr = true;
    476       err = _e2;
    477     },
    478     f: function f() {
    479       try {
    480         if (!normalCompletion && it["return"] != null) it["return"]();
    481       } finally {
    482         if (didErr) throw err;
    483       }
    484     }
    485   };
    486 }
    487 
    488 module.exports = _createForOfIteratorHelper;
    489 module.exports.default = module.exports, module.exports.__esModule = true;
    490 
    491 /***/ }),
    492 
    493 /***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
    494 /*!*********************************************************************!*\
    495   !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
    496   \*********************************************************************/
    497 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    498 
    499 var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");
    500 
    501 var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");
    502 
    503 var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");
    504 
    505 var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");
    506 
    507 function _createSuper(Derived) {
    508   var hasNativeReflectConstruct = isNativeReflectConstruct();
    509   return function _createSuperInternal() {
    510     var Super = getPrototypeOf(Derived),
    511         result;
    512 
    513     if (hasNativeReflectConstruct) {
    514       var NewTarget = getPrototypeOf(this).constructor;
    515       result = _Reflect$construct(Super, arguments, NewTarget);
    516     } else {
    517       result = Super.apply(this, arguments);
    518     }
    519 
    520     return possibleConstructorReturn(this, result);
    521   };
    522 }
    523 
    524 module.exports = _createSuper;
    525 module.exports.default = module.exports, module.exports.__esModule = true;
    526 
    527 /***/ }),
    528 
    529 /***/ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js":
    530 /*!************************************************************************!*\
    531   !*** ../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js ***!
    532   \************************************************************************/
    533 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    534 
    535 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
    536 
    537 function _defineProperty(obj, key, value) {
    538   if (key in obj) {
    539     _Object$defineProperty(obj, key, {
    540       value: value,
    541       enumerable: true,
    542       configurable: true,
    543       writable: true
    544     });
    545   } else {
    546     obj[key] = value;
    547   }
    548 
    549   return obj;
    550 }
    551 
    552 module.exports = _defineProperty;
    553 module.exports.default = module.exports, module.exports.__esModule = true;
    554 
    555 /***/ }),
    556 
    557 /***/ "../node_modules/@babel/runtime-corejs2/helpers/extends.js":
    558 /*!*****************************************************************!*\
    559   !*** ../node_modules/@babel/runtime-corejs2/helpers/extends.js ***!
    560   \*****************************************************************/
    561 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    562 
    563 var _Object$assign = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js");
    564 
    565 function _extends() {
    566   module.exports = _extends = _Object$assign || function (target) {
    567     for (var i = 1; i < arguments.length; i++) {
    568       var source = arguments[i];
    569 
    570       for (var key in source) {
    571         if (Object.prototype.hasOwnProperty.call(source, key)) {
    572           target[key] = source[key];
    573         }
    574       }
    575     }
    576 
    577     return target;
    578   };
    579 
    580   module.exports.default = module.exports, module.exports.__esModule = true;
    581   return _extends.apply(this, arguments);
    582 }
    583 
    584 module.exports = _extends;
    585 module.exports.default = module.exports, module.exports.__esModule = true;
    586 
    587 /***/ }),
    588 
    589 /***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
    590 /*!*************************************************************!*\
    591   !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
    592   \*************************************************************/
    593 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    594 
    595 var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");
    596 
    597 var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");
    598 
    599 var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");
    600 
    601 function _get(target, property, receiver) {
    602   if (typeof Reflect !== "undefined" && _Reflect$get) {
    603     module.exports = _get = _Reflect$get;
    604     module.exports.default = module.exports, module.exports.__esModule = true;
    605   } else {
    606     module.exports = _get = function _get(target, property, receiver) {
    607       var base = superPropBase(target, property);
    608       if (!base) return;
    609 
    610       var desc = _Object$getOwnPropertyDescriptor(base, property);
    611 
    612       if (desc.get) {
    613         return desc.get.call(receiver);
    614       }
    615 
    616       return desc.value;
    617     };
    618 
    619     module.exports.default = module.exports, module.exports.__esModule = true;
    620   }
    621 
    622   return _get(target, property, receiver || target);
    623 }
    624 
    625 module.exports = _get;
    626 module.exports.default = module.exports, module.exports.__esModule = true;
    627 
    628 /***/ }),
    629 
    630 /***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
    631 /*!************************************************************************!*\
    632   !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
    633   \************************************************************************/
    634 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    635 
    636 var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");
    637 
    638 var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");
    639 
    640 function _getPrototypeOf(o) {
    641   module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    642     return o.__proto__ || _Object$getPrototypeOf(o);
    643   };
    644   module.exports.default = module.exports, module.exports.__esModule = true;
    645   return _getPrototypeOf(o);
    646 }
    647 
    648 module.exports = _getPrototypeOf;
    649 module.exports.default = module.exports, module.exports.__esModule = true;
    650 
    651 /***/ }),
    652 
    653 /***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
    654 /*!******************************************************************!*\
    655   !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
    656   \******************************************************************/
    657 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    658 
    659 var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");
    660 
    661 var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");
    662 
    663 function _inherits(subClass, superClass) {
    664   if (typeof superClass !== "function" && superClass !== null) {
    665     throw new TypeError("Super expression must either be null or a function");
    666   }
    667 
    668   subClass.prototype = _Object$create(superClass && superClass.prototype, {
    669     constructor: {
    670       value: subClass,
    671       writable: true,
    672       configurable: true
    673     }
    674   });
    675   if (superClass) setPrototypeOf(subClass, superClass);
    676 }
    677 
    678 module.exports = _inherits;
    679 module.exports.default = module.exports, module.exports.__esModule = true;
    680 
    681 /***/ }),
    682 
    683 /***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
    684 /*!*******************************************************************************!*\
    685   !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
    686   \*******************************************************************************/
    687 /***/ ((module) => {
    688 
    689 function _interopRequireDefault(obj) {
    690   return obj && obj.__esModule ? obj : {
    691     "default": obj
    692   };
    693 }
    694 
    695 module.exports = _interopRequireDefault;
    696 module.exports.default = module.exports, module.exports.__esModule = true;
    697 
    698 /***/ }),
    699 
    700 /***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js":
    701 /*!********************************************************************************!*\
    702   !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js ***!
    703   \********************************************************************************/
    704 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    705 
    706 var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;
    707 
    708 var _WeakMap = __webpack_require__(/*! @babel/runtime-corejs2/core-js/weak-map */ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js");
    709 
    710 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
    711 
    712 var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");
    713 
    714 function _getRequireWildcardCache(nodeInterop) {
    715   if (typeof _WeakMap !== "function") return null;
    716   var cacheBabelInterop = new _WeakMap();
    717   var cacheNodeInterop = new _WeakMap();
    718   return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
    719     return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
    720   })(nodeInterop);
    721 }
    722 
    723 function _interopRequireWildcard(obj, nodeInterop) {
    724   if (!nodeInterop && obj && obj.__esModule) {
    725     return obj;
    726   }
    727 
    728   if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
    729     return {
    730       "default": obj
    731     };
    732   }
    733 
    734   var cache = _getRequireWildcardCache(nodeInterop);
    735 
    736   if (cache && cache.has(obj)) {
    737     return cache.get(obj);
    738   }
    739 
    740   var newObj = {};
    741   var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor;
    742 
    743   for (var key in obj) {
    744     if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
    745       var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null;
    746 
    747       if (desc && (desc.get || desc.set)) {
    748         _Object$defineProperty(newObj, key, desc);
    749       } else {
    750         newObj[key] = obj[key];
    751       }
    752     }
    753   }
    754 
    755   newObj["default"] = obj;
    756 
    757   if (cache) {
    758     cache.set(obj, newObj);
    759   }
    760 
    761   return newObj;
    762 }
    763 
    764 module.exports = _interopRequireWildcard;
    765 module.exports.default = module.exports, module.exports.__esModule = true;
    766 
    767 /***/ }),
    768 
    769 /***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
    770 /*!**********************************************************************************!*\
    771   !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
    772   \**********************************************************************************/
    773 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    774 
    775 var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");
    776 
    777 function _isNativeReflectConstruct() {
    778   if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
    779   if (_Reflect$construct.sham) return false;
    780   if (typeof Proxy === "function") return true;
    781 
    782   try {
    783     Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    784     return true;
    785   } catch (e) {
    786     return false;
    787   }
    788 }
    789 
    790 module.exports = _isNativeReflectConstruct;
    791 module.exports.default = module.exports, module.exports.__esModule = true;
    792 
    793 /***/ }),
    794 
    795 /***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js":
    796 /*!*************************************************************************!*\
    797   !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js ***!
    798   \*************************************************************************/
    799 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    800 
    801 var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");
    802 
    803 var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");
    804 
    805 var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");
    806 
    807 function _iterableToArray(iter) {
    808   if (typeof _Symbol !== "undefined" && iter[_Symbol$iterator] != null || iter["@@iterator"] != null) return _Array$from(iter);
    809 }
    810 
    811 module.exports = _iterableToArray;
    812 module.exports.default = module.exports, module.exports.__esModule = true;
    813 
    814 /***/ }),
    815 
    816 /***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
    817 /*!******************************************************************************!*\
    818   !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
    819   \******************************************************************************/
    820 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    821 
    822 var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");
    823 
    824 var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");
    825 
    826 function _iterableToArrayLimit(arr, i) {
    827   var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];
    828 
    829   if (_i == null) return;
    830   var _arr = [];
    831   var _n = true;
    832   var _d = false;
    833 
    834   var _s, _e;
    835 
    836   try {
    837     for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
    838       _arr.push(_s.value);
    839 
    840       if (i && _arr.length === i) break;
    841     }
    842   } catch (err) {
    843     _d = true;
    844     _e = err;
    845   } finally {
    846     try {
    847       if (!_n && _i["return"] != null) _i["return"]();
    848     } finally {
    849       if (_d) throw _e;
    850     }
    851   }
    852 
    853   return _arr;
    854 }
    855 
    856 module.exports = _iterableToArrayLimit;
    857 module.exports.default = module.exports, module.exports.__esModule = true;
    858 
    859 /***/ }),
    860 
    861 /***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
    862 /*!*************************************************************************!*\
    863   !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
    864   \*************************************************************************/
    865 /***/ ((module) => {
    866 
    867 function _nonIterableRest() {
    868   throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
    869 }
    870 
    871 module.exports = _nonIterableRest;
    872 module.exports.default = module.exports, module.exports.__esModule = true;
    873 
    874 /***/ }),
    875 
    876 /***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js":
    877 /*!***************************************************************************!*\
    878   !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js ***!
    879   \***************************************************************************/
    880 /***/ ((module) => {
    881 
    882 function _nonIterableSpread() {
    883   throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
    884 }
    885 
    886 module.exports = _nonIterableSpread;
    887 module.exports.default = module.exports, module.exports.__esModule = true;
    888 
    889 /***/ }),
    890 
    891 /***/ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js":
    892 /*!***********************************************************************!*\
    893   !*** ../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js ***!
    894   \***********************************************************************/
    895 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    896 
    897 var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");
    898 
    899 var _Object$getOwnPropertySymbols = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-symbols */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js");
    900 
    901 var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");
    902 
    903 var _Object$getOwnPropertyDescriptors = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptors */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js");
    904 
    905 var _Object$defineProperties = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-properties */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js");
    906 
    907 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
    908 
    909 var defineProperty = __webpack_require__(/*! ./defineProperty.js */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js");
    910 
    911 function ownKeys(object, enumerableOnly) {
    912   var keys = _Object$keys(object);
    913 
    914   if (_Object$getOwnPropertySymbols) {
    915     var symbols = _Object$getOwnPropertySymbols(object);
    916 
    917     if (enumerableOnly) {
    918       symbols = symbols.filter(function (sym) {
    919         return _Object$getOwnPropertyDescriptor(object, sym).enumerable;
    920       });
    921     }
    922 
    923     keys.push.apply(keys, symbols);
    924   }
    925 
    926   return keys;
    927 }
    928 
    929 function _objectSpread2(target) {
    930   for (var i = 1; i < arguments.length; i++) {
    931     var source = arguments[i] != null ? arguments[i] : {};
    932 
    933     if (i % 2) {
    934       ownKeys(Object(source), true).forEach(function (key) {
    935         defineProperty(target, key, source[key]);
    936       });
    937     } else if (_Object$getOwnPropertyDescriptors) {
    938       _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source));
    939     } else {
    940       ownKeys(Object(source)).forEach(function (key) {
    941         _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key));
    942       });
    943     }
    944   }
    945 
    946   return target;
    947 }
    948 
    949 module.exports = _objectSpread2;
    950 module.exports.default = module.exports, module.exports.__esModule = true;
    951 
    952 /***/ }),
    953 
    954 /***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
    955 /*!***********************************************************************************!*\
    956   !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
    957   \***********************************************************************************/
    958 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    959 
    960 var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;
    961 
    962 var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");
    963 
    964 function _possibleConstructorReturn(self, call) {
    965   if (call && (_typeof(call) === "object" || typeof call === "function")) {
    966     return call;
    967   }
    968 
    969   return assertThisInitialized(self);
    970 }
    971 
    972 module.exports = _possibleConstructorReturn;
    973 module.exports.default = module.exports, module.exports.__esModule = true;
    974 
    975 /***/ }),
    976 
    977 /***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
    978 /*!************************************************************************!*\
    979   !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
    980   \************************************************************************/
    981 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
    982 
    983 var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");
    984 
    985 function _setPrototypeOf(o, p) {
    986   module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    987     o.__proto__ = p;
    988     return o;
    989   };
    990 
    991   module.exports.default = module.exports, module.exports.__esModule = true;
    992   return _setPrototypeOf(o, p);
    993 }
    994 
    995 module.exports = _setPrototypeOf;
    996 module.exports.default = module.exports, module.exports.__esModule = true;
    997 
    998 /***/ }),
    999 
   1000 /***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
   1001 /*!***********************************************************************!*\
   1002   !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
   1003   \***********************************************************************/
   1004 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   1005 
   1006 var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");
   1007 
   1008 var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");
   1009 
   1010 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");
   1011 
   1012 var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");
   1013 
   1014 function _slicedToArray(arr, i) {
   1015   return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
   1016 }
   1017 
   1018 module.exports = _slicedToArray;
   1019 module.exports.default = module.exports, module.exports.__esModule = true;
   1020 
   1021 /***/ }),
   1022 
   1023 /***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
   1024 /*!***********************************************************************!*\
   1025   !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
   1026   \***********************************************************************/
   1027 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   1028 
   1029 var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");
   1030 
   1031 function _superPropBase(object, property) {
   1032   while (!Object.prototype.hasOwnProperty.call(object, property)) {
   1033     object = getPrototypeOf(object);
   1034     if (object === null) break;
   1035   }
   1036 
   1037   return object;
   1038 }
   1039 
   1040 module.exports = _superPropBase;
   1041 module.exports.default = module.exports, module.exports.__esModule = true;
   1042 
   1043 /***/ }),
   1044 
   1045 /***/ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js":
   1046 /*!***************************************************************************!*\
   1047   !*** ../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js ***!
   1048   \***************************************************************************/
   1049 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   1050 
   1051 var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js");
   1052 
   1053 var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js");
   1054 
   1055 var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");
   1056 
   1057 var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js");
   1058 
   1059 function _toConsumableArray(arr) {
   1060   return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
   1061 }
   1062 
   1063 module.exports = _toConsumableArray;
   1064 module.exports.default = module.exports, module.exports.__esModule = true;
   1065 
   1066 /***/ }),
   1067 
   1068 /***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
   1069 /*!****************************************************************!*\
   1070   !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
   1071   \****************************************************************/
   1072 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   1073 
   1074 var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");
   1075 
   1076 var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");
   1077 
   1078 function _typeof(obj) {
   1079   "@babel/helpers - typeof";
   1080 
   1081   if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
   1082     module.exports = _typeof = function _typeof(obj) {
   1083       return typeof obj;
   1084     };
   1085 
   1086     module.exports.default = module.exports, module.exports.__esModule = true;
   1087   } else {
   1088     module.exports = _typeof = function _typeof(obj) {
   1089       return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
   1090     };
   1091 
   1092     module.exports.default = module.exports, module.exports.__esModule = true;
   1093   }
   1094 
   1095   return _typeof(obj);
   1096 }
   1097 
   1098 module.exports = _typeof;
   1099 module.exports.default = module.exports, module.exports.__esModule = true;
   1100 
   1101 /***/ }),
   1102 
   1103 /***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
   1104 /*!************************************************************************************!*\
   1105   !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
   1106   \************************************************************************************/
   1107 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   1108 
   1109 var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");
   1110 
   1111 var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");
   1112 
   1113 function _unsupportedIterableToArray(o, minLen) {
   1114   if (!o) return;
   1115   if (typeof o === "string") return arrayLikeToArray(o, minLen);
   1116   var n = Object.prototype.toString.call(o).slice(8, -1);
   1117   if (n === "Object" && o.constructor) n = o.constructor.name;
   1118   if (n === "Map" || n === "Set") return _Array$from(o);
   1119   if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
   1120 }
   1121 
   1122 module.exports = _unsupportedIterableToArray;
   1123 module.exports.default = module.exports, module.exports.__esModule = true;
   1124 
   1125 /***/ }),
   1126 
   1127 /***/ "../node_modules/@babel/runtime/regenerator/index.js":
   1128 /*!***********************************************************!*\
   1129   !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
   1130   \***********************************************************/
   1131 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   1132 
   1133 module.exports = __webpack_require__(/*! regenerator-runtime */ "../node_modules/regenerator-runtime/runtime.js");
   1134 
   1135 
   1136 /***/ }),
   1137 
   1138 /***/ "../assets/dev/js/editor/commands/close.js":
   1139 /*!*************************************************!*\
   1140   !*** ../assets/dev/js/editor/commands/close.js ***!
   1141   \*************************************************/
   1142 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   1143 
   1144 "use strict";
   1145 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   1146 
   1147 
   1148 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   1149 
   1150 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   1151 
   1152 _Object$defineProperty(exports, "__esModule", {
   1153   value: true
   1154 });
   1155 
   1156 exports.default = exports.Close = void 0;
   1157 
   1158 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
   1159 
   1160 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));
   1161 
   1162 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   1163 
   1164 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   1165 
   1166 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   1167 
   1168 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   1169 
   1170 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
   1171 
   1172 var Close = /*#__PURE__*/function (_CommandBase) {
   1173   (0, _inherits2.default)(Close, _CommandBase);
   1174 
   1175   var _super = (0, _createSuper2.default)(Close);
   1176 
   1177   function Close() {
   1178     (0, _classCallCheck2.default)(this, Close);
   1179     return _super.apply(this, arguments);
   1180   }
   1181 
   1182   (0, _createClass2.default)(Close, [{
   1183     key: "validateArgs",
   1184     value: function validateArgs(args) {
   1185       this.requireArgument('id', args);
   1186     }
   1187   }, {
   1188     key: "apply",
   1189     value: function () {
   1190       var _apply = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(args) {
   1191         var id, mode, onClose, document, deferred;
   1192         return _regenerator.default.wrap(function _callee$(_context) {
   1193           while (1) {
   1194             switch (_context.prev = _context.next) {
   1195               case 0:
   1196                 id = args.id, mode = args.mode, onClose = args.onClose, document = elementor.documents.get(id); // Already closed.
   1197 
   1198                 if (!('closed' === document.editor.status)) {
   1199                   _context.next = 3;
   1200                   break;
   1201                 }
   1202 
   1203                 return _context.abrupt("return", jQuery.Deferred().resolve());
   1204 
   1205               case 3:
   1206                 if (!(!mode && (document.editor.isChanged || document.isDraft()))) {
   1207                   _context.next = 7;
   1208                   break;
   1209                 }
   1210 
   1211                 deferred = jQuery.Deferred();
   1212                 this.getConfirmDialog(deferred).show();
   1213                 return _context.abrupt("return", deferred.promise());
   1214 
   1215               case 7:
   1216                 _context.t0 = mode;
   1217                 _context.next = _context.t0 === 'autosave' ? 10 : _context.t0 === 'save' ? 13 : _context.t0 === 'discard' ? 16 : 19;
   1218                 break;
   1219 
   1220               case 10:
   1221                 _context.next = 12;
   1222                 return $e.run('document/save/auto');
   1223 
   1224               case 12:
   1225                 return _context.abrupt("break", 19);
   1226 
   1227               case 13:
   1228                 _context.next = 15;
   1229                 return $e.run('document/save/update');
   1230 
   1231               case 15:
   1232                 return _context.abrupt("break", 19);
   1233 
   1234               case 16:
   1235                 _context.next = 18;
   1236                 return $e.run('document/save/discard', {
   1237                   document: document
   1238                 });
   1239 
   1240               case 18:
   1241                 return _context.abrupt("break", 19);
   1242 
   1243               case 19:
   1244                 $e.internal('editor/documents/unload', {
   1245                   document: document
   1246                 });
   1247 
   1248                 if (!onClose) {
   1249                   _context.next = 23;
   1250                   break;
   1251                 }
   1252 
   1253                 _context.next = 23;
   1254                 return onClose(document);
   1255 
   1256               case 23:
   1257                 return _context.abrupt("return", jQuery.Deferred().resolve());
   1258 
   1259               case 24:
   1260               case "end":
   1261                 return _context.stop();
   1262             }
   1263           }
   1264         }, _callee, this);
   1265       }));
   1266 
   1267       function apply(_x) {
   1268         return _apply.apply(this, arguments);
   1269       }
   1270 
   1271       return apply;
   1272     }()
   1273   }, {
   1274     key: "getConfirmDialog",
   1275     value: function getConfirmDialog(deferred) {
   1276       var _this = this;
   1277 
   1278       if (this.confirmDialog) {
   1279         return this.confirmDialog;
   1280       }
   1281 
   1282       this.confirmDialog = elementorCommon.dialogsManager.createWidget('confirm', {
   1283         id: 'elementor-document-save-on-close',
   1284         headerMessage: __('Save Changes', 'elementor'),
   1285         message: __('Would you like to save the changes you\'ve made?', 'elementor'),
   1286         position: {
   1287           my: 'center center',
   1288           at: 'center center'
   1289         },
   1290         strings: {
   1291           confirm: __('Save', 'elementor'),
   1292           cancel: __('Discard', 'elementor')
   1293         },
   1294         onHide: function onHide() {
   1295           // If still not action chosen. use `defer` because onHide is called before onConfirm/onCancel.
   1296           _.defer(function () {
   1297             if (!_this.args.mode) {
   1298               deferred.reject('Close document has been canceled.');
   1299             }
   1300           });
   1301         },
   1302         onConfirm: function onConfirm() {
   1303           _this.args.mode = 'save'; // Re-run with same args.
   1304 
   1305           $e.run('editor/documents/close', _this.args).then(function () {
   1306             deferred.resolve();
   1307           });
   1308         },
   1309         onCancel: function onCancel() {
   1310           _this.args.mode = 'discard'; // Re-run with same args.
   1311 
   1312           $e.run('editor/documents/close', _this.args).then(function () {
   1313             deferred.resolve();
   1314           });
   1315         }
   1316       });
   1317       return this.confirmDialog;
   1318     }
   1319   }]);
   1320   return Close;
   1321 }(_commandBase.default);
   1322 
   1323 exports.Close = Close;
   1324 var _default = Close;
   1325 exports.default = _default;
   1326 
   1327 /***/ }),
   1328 
   1329 /***/ "../assets/dev/js/editor/commands/index.js":
   1330 /*!*************************************************!*\
   1331   !*** ../assets/dev/js/editor/commands/index.js ***!
   1332   \*************************************************/
   1333 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   1334 
   1335 "use strict";
   1336 
   1337 
   1338 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   1339 
   1340 _Object$defineProperty(exports, "__esModule", {
   1341   value: true
   1342 });
   1343 
   1344 _Object$defineProperty(exports, "Close", {
   1345   enumerable: true,
   1346   get: function get() {
   1347     return _close.Close;
   1348   }
   1349 });
   1350 
   1351 _Object$defineProperty(exports, "Open", {
   1352   enumerable: true,
   1353   get: function get() {
   1354     return _open.Open;
   1355   }
   1356 });
   1357 
   1358 _Object$defineProperty(exports, "Preview", {
   1359   enumerable: true,
   1360   get: function get() {
   1361     return _preview.Preview;
   1362   }
   1363 });
   1364 
   1365 _Object$defineProperty(exports, "Switch", {
   1366   enumerable: true,
   1367   get: function get() {
   1368     return _switch.Switch;
   1369   }
   1370 });
   1371 
   1372 var _close = __webpack_require__(/*! ./close */ "../assets/dev/js/editor/commands/close.js");
   1373 
   1374 var _open = __webpack_require__(/*! ./open */ "../assets/dev/js/editor/commands/open.js");
   1375 
   1376 var _preview = __webpack_require__(/*! ./preview */ "../assets/dev/js/editor/commands/preview.js");
   1377 
   1378 var _switch = __webpack_require__(/*! ./switch */ "../assets/dev/js/editor/commands/switch.js");
   1379 
   1380 /***/ }),
   1381 
   1382 /***/ "../assets/dev/js/editor/commands/internal/attach-preview.js":
   1383 /*!*******************************************************************!*\
   1384   !*** ../assets/dev/js/editor/commands/internal/attach-preview.js ***!
   1385   \*******************************************************************/
   1386 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   1387 
   1388 "use strict";
   1389 
   1390 
   1391 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   1392 
   1393 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   1394 
   1395 _Object$defineProperty(exports, "__esModule", {
   1396   value: true
   1397 });
   1398 
   1399 exports.default = exports.AttachPreview = void 0;
   1400 
   1401 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
   1402 
   1403 var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));
   1404 
   1405 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   1406 
   1407 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   1408 
   1409 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   1410 
   1411 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   1412 
   1413 var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));
   1414 
   1415 var AttachPreview = /*#__PURE__*/function (_CommandInternalBaseB) {
   1416   (0, _inherits2.default)(AttachPreview, _CommandInternalBaseB);
   1417 
   1418   var _super = (0, _createSuper2.default)(AttachPreview);
   1419 
   1420   function AttachPreview() {
   1421     (0, _classCallCheck2.default)(this, AttachPreview);
   1422     return _super.apply(this, arguments);
   1423   }
   1424 
   1425   (0, _createClass2.default)(AttachPreview, [{
   1426     key: "apply",
   1427     value: function apply() {
   1428       var _this = this;
   1429 
   1430       var document = elementor.documents.getCurrent();
   1431       return $e.data.get('globals/index').then(function () {
   1432         elementor.trigger('globals:loaded');
   1433         return _this.attachDocumentToPreview(document);
   1434       }).then(function () {
   1435         elementor.toggleDocumentCssFiles(document, false);
   1436         elementor.onEditModeSwitched();
   1437         elementor.checkPageStatus();
   1438         elementor.trigger('document:loaded', document);
   1439         return $e.internal('panel/open-default', {
   1440           refresh: true
   1441         });
   1442       });
   1443     }
   1444   }, {
   1445     key: "attachDocumentToPreview",
   1446     value: function attachDocumentToPreview(document) {
   1447       return new _promise.default(function (resolve, reject) {
   1448         // Not yet loaded.
   1449         if (!document) {
   1450           return reject();
   1451         }
   1452 
   1453         if (!document.config.elements) {
   1454           return resolve();
   1455         }
   1456 
   1457         document.$element = elementor.$previewContents.find('.elementor-' + document.id);
   1458 
   1459         if (!document.$element.length) {
   1460           elementor.onPreviewElNotFound();
   1461           return reject();
   1462         }
   1463 
   1464         document.$element.addClass('elementor-edit-area elementor-edit-mode'); // If not the same document.
   1465 
   1466         if (document.id !== elementor.config.initial_document.id) {
   1467           elementor.$previewElementorEl.addClass('elementor-embedded-editor');
   1468         }
   1469 
   1470         elementor.initElements();
   1471         elementor.initPreviewView(document);
   1472         document.container.view = elementor.getPreviewView();
   1473         document.container.model.attributes.elements = elementor.elements;
   1474         elementor.helpers.scrollToView(document.$element);
   1475         document.$element.addClass('elementor-edit-area-active').removeClass('elementor-editor-preview');
   1476         resolve();
   1477       });
   1478     }
   1479   }]);
   1480   return AttachPreview;
   1481 }(_commandInternalBase.default);
   1482 
   1483 exports.AttachPreview = AttachPreview;
   1484 var _default = AttachPreview;
   1485 exports.default = _default;
   1486 
   1487 /***/ }),
   1488 
   1489 /***/ "../assets/dev/js/editor/commands/internal/index.js":
   1490 /*!**********************************************************!*\
   1491   !*** ../assets/dev/js/editor/commands/internal/index.js ***!
   1492   \**********************************************************/
   1493 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   1494 
   1495 "use strict";
   1496 
   1497 
   1498 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   1499 
   1500 _Object$defineProperty(exports, "__esModule", {
   1501   value: true
   1502 });
   1503 
   1504 _Object$defineProperty(exports, "AttachPreview", {
   1505   enumerable: true,
   1506   get: function get() {
   1507     return _attachPreview.AttachPreview;
   1508   }
   1509 });
   1510 
   1511 _Object$defineProperty(exports, "Load", {
   1512   enumerable: true,
   1513   get: function get() {
   1514     return _load.Load;
   1515   }
   1516 });
   1517 
   1518 _Object$defineProperty(exports, "Unload", {
   1519   enumerable: true,
   1520   get: function get() {
   1521     return _unload.Unload;
   1522   }
   1523 });
   1524 
   1525 var _attachPreview = __webpack_require__(/*! ./attach-preview */ "../assets/dev/js/editor/commands/internal/attach-preview.js");
   1526 
   1527 var _load = __webpack_require__(/*! ./load */ "../assets/dev/js/editor/commands/internal/load.js");
   1528 
   1529 var _unload = __webpack_require__(/*! ./unload */ "../assets/dev/js/editor/commands/internal/unload.js");
   1530 
   1531 /***/ }),
   1532 
   1533 /***/ "../assets/dev/js/editor/commands/internal/load.js":
   1534 /*!*********************************************************!*\
   1535   !*** ../assets/dev/js/editor/commands/internal/load.js ***!
   1536   \*********************************************************/
   1537 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   1538 
   1539 "use strict";
   1540 
   1541 
   1542 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   1543 
   1544 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   1545 
   1546 _Object$defineProperty(exports, "__esModule", {
   1547   value: true
   1548 });
   1549 
   1550 exports.default = exports.Load = void 0;
   1551 
   1552 var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));
   1553 
   1554 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   1555 
   1556 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   1557 
   1558 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   1559 
   1560 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   1561 
   1562 var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));
   1563 
   1564 var _document = _interopRequireDefault(__webpack_require__(/*! elementor-editor/document */ "../assets/dev/js/editor/document.js"));
   1565 
   1566 var _heartbeat = _interopRequireDefault(__webpack_require__(/*! elementor-editor-utils/heartbeat */ "../assets/dev/js/editor/utils/heartbeat.js"));
   1567 
   1568 var Load = /*#__PURE__*/function (_CommandInternalBase) {
   1569   (0, _inherits2.default)(Load, _CommandInternalBase);
   1570 
   1571   var _super = (0, _createSuper2.default)(Load);
   1572 
   1573   function Load() {
   1574     (0, _classCallCheck2.default)(this, Load);
   1575     return _super.apply(this, arguments);
   1576   }
   1577 
   1578   (0, _createClass2.default)(Load, [{
   1579     key: "validateArgs",
   1580     value: function validateArgs() {
   1581       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
   1582       this.requireArgument('config', args);
   1583     }
   1584   }, {
   1585     key: "apply",
   1586     value: function apply(args) {
   1587       var config = args.config;
   1588 
   1589       if (elementorCommon.config.experimentalFeatures.additional_custom_breakpoints) {
   1590         // When the Responsive Optimization experiment is active, the responsive controls are generated on the
   1591         // JS side instead of the PHP.
   1592         config.settings.controls = elementor.generateResponsiveControls(config.settings.controls);
   1593       }
   1594 
   1595       elementor.config.document = config;
   1596       elementor.setAjax();
   1597       elementor.addWidgetsCache(config.widgets);
   1598       elementor.templates.init();
   1599       var document = new _document.default(config);
   1600       elementor.documents.add(document); // Must set current before create a container.
   1601 
   1602       elementor.documents.setCurrent(document);
   1603       elementor.settings.page = new elementor.settings.modules.page(config.settings);
   1604       document.container = elementor.settings.page.getEditedView().getContainer(); // Reference container back to document.
   1605 
   1606       document.container.document = document;
   1607       elementor.heartbeat = new _heartbeat.default(document);
   1608       var isOldPageVersion = elementor.config.document.version && elementor.helpers.compareVersions(elementor.config.document.version, '2.5.0', '<');
   1609 
   1610       if (!elementor.config.user.introduction.flexbox && isOldPageVersion) {
   1611         elementor.showFlexBoxAttentionDialog();
   1612       }
   1613 
   1614       if (elementor.loaded) {
   1615         // TODO: Find better solution - Fix issue when globals does not render after saving from kit.
   1616         // The issue is that the css-parser is depends upon cache and cache is not available during this time.
   1617         return $e.data.get('globals/index').then(function () {
   1618           return $e.internal('editor/documents/attach-preview');
   1619         });
   1620       }
   1621 
   1622       return _promise.default.resolve(document);
   1623     }
   1624   }]);
   1625   return Load;
   1626 }(_commandInternalBase.default);
   1627 
   1628 exports.Load = Load;
   1629 var _default = Load;
   1630 exports.default = _default;
   1631 
   1632 /***/ }),
   1633 
   1634 /***/ "../assets/dev/js/editor/commands/internal/unload.js":
   1635 /*!***********************************************************!*\
   1636   !*** ../assets/dev/js/editor/commands/internal/unload.js ***!
   1637   \***********************************************************/
   1638 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   1639 
   1640 "use strict";
   1641 
   1642 
   1643 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   1644 
   1645 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   1646 
   1647 _Object$defineProperty(exports, "__esModule", {
   1648   value: true
   1649 });
   1650 
   1651 exports.default = exports.Unload = void 0;
   1652 
   1653 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   1654 
   1655 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   1656 
   1657 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   1658 
   1659 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   1660 
   1661 var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));
   1662 
   1663 var _document = _interopRequireDefault(__webpack_require__(/*! elementor-editor/document */ "../assets/dev/js/editor/document.js"));
   1664 
   1665 var Unload = /*#__PURE__*/function (_CommandInternalBase) {
   1666   (0, _inherits2.default)(Unload, _CommandInternalBase);
   1667 
   1668   var _super = (0, _createSuper2.default)(Unload);
   1669 
   1670   function Unload() {
   1671     (0, _classCallCheck2.default)(this, Unload);
   1672     return _super.apply(this, arguments);
   1673   }
   1674 
   1675   (0, _createClass2.default)(Unload, [{
   1676     key: "validateArgs",
   1677     value: function validateArgs() {
   1678       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
   1679       this.requireArgumentConstructor('document', _document.default, args);
   1680     }
   1681   }, {
   1682     key: "apply",
   1683     value: function apply(args) {
   1684       var document = args.document;
   1685 
   1686       if (document.id !== elementor.config.document.id) {
   1687         return;
   1688       }
   1689 
   1690       elementor.elements = [];
   1691       elementor.saver.stopAutoSave(document);
   1692       elementor.channels.dataEditMode.trigger('switch', 'preview');
   1693 
   1694       if (document.$element) {
   1695         document.$element.removeClass('elementor-edit-area-active elementor-edit-mode').addClass('elementor-editor-preview');
   1696       }
   1697 
   1698       elementorCommon.elements.$body.removeClass("elementor-editor-".concat(document.config.type));
   1699       elementor.settings.page.destroy();
   1700       elementor.heartbeat.destroy();
   1701       document.editor.status = 'closed';
   1702       elementor.config.document = {};
   1703       elementor.documents.unsetCurrent();
   1704       elementor.trigger('document:unloaded', document);
   1705     }
   1706   }]);
   1707   return Unload;
   1708 }(_commandInternalBase.default);
   1709 
   1710 exports.Unload = Unload;
   1711 var _default = Unload;
   1712 exports.default = _default;
   1713 
   1714 /***/ }),
   1715 
   1716 /***/ "../assets/dev/js/editor/commands/open.js":
   1717 /*!************************************************!*\
   1718   !*** ../assets/dev/js/editor/commands/open.js ***!
   1719   \************************************************/
   1720 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   1721 
   1722 "use strict";
   1723 
   1724 
   1725 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   1726 
   1727 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   1728 
   1729 _Object$defineProperty(exports, "__esModule", {
   1730   value: true
   1731 });
   1732 
   1733 exports.default = exports.Open = void 0;
   1734 
   1735 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
   1736 
   1737 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   1738 
   1739 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   1740 
   1741 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   1742 
   1743 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   1744 
   1745 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
   1746 
   1747 var Open = /*#__PURE__*/function (_CommandBase) {
   1748   (0, _inherits2.default)(Open, _CommandBase);
   1749 
   1750   var _super = (0, _createSuper2.default)(Open);
   1751 
   1752   function Open() {
   1753     (0, _classCallCheck2.default)(this, Open);
   1754     return _super.apply(this, arguments);
   1755   }
   1756 
   1757   (0, _createClass2.default)(Open, [{
   1758     key: "validateArgs",
   1759     value: function validateArgs(args) {
   1760       this.requireArgument('id', args);
   1761     }
   1762   }, {
   1763     key: "apply",
   1764     value: function apply(args) {
   1765       var id = args.id,
   1766           currentDocument = elementor.documents.getCurrent(); // Already opened.
   1767 
   1768       if (currentDocument && id === currentDocument.id) {
   1769         return jQuery.Deferred().resolve();
   1770       } // TODO: move to $e.hooks.ui.
   1771 
   1772 
   1773       if (elementor.loaded) {
   1774         elementor.$previewContents.find(".elementor-".concat(id)).addClass('loading');
   1775       }
   1776 
   1777       return elementor.documents.request(id).then(function (config) {
   1778         elementorCommon.elements.$body.addClass("elementor-editor-".concat(config.type)); // Tell the editor to load the document.
   1779 
   1780         return $e.internal('editor/documents/load', {
   1781           config: config
   1782         });
   1783       }).always(function () {
   1784         // TODO: move to $e.hooks.ui.
   1785         if (elementor.loaded) {
   1786           elementor.$previewContents.find(".elementor-".concat(id)).removeClass('loading');
   1787         }
   1788       });
   1789     }
   1790   }]);
   1791   return Open;
   1792 }(_commandBase.default);
   1793 
   1794 exports.Open = Open;
   1795 var _default = Open;
   1796 exports.default = _default;
   1797 
   1798 /***/ }),
   1799 
   1800 /***/ "../assets/dev/js/editor/commands/preview.js":
   1801 /*!***************************************************!*\
   1802   !*** ../assets/dev/js/editor/commands/preview.js ***!
   1803   \***************************************************/
   1804 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   1805 
   1806 "use strict";
   1807 
   1808 
   1809 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   1810 
   1811 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   1812 
   1813 _Object$defineProperty(exports, "__esModule", {
   1814   value: true
   1815 });
   1816 
   1817 exports.default = exports.Preview = void 0;
   1818 
   1819 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
   1820 
   1821 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));
   1822 
   1823 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   1824 
   1825 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   1826 
   1827 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   1828 
   1829 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   1830 
   1831 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
   1832 
   1833 var Preview = /*#__PURE__*/function (_CommandBase) {
   1834   (0, _inherits2.default)(Preview, _CommandBase);
   1835 
   1836   var _super = (0, _createSuper2.default)(Preview);
   1837 
   1838   function Preview() {
   1839     (0, _classCallCheck2.default)(this, Preview);
   1840     return _super.apply(this, arguments);
   1841   }
   1842 
   1843   (0, _createClass2.default)(Preview, [{
   1844     key: "validateArgs",
   1845     value: function validateArgs(args) {
   1846       this.requireArgument('id', args);
   1847     } // TODO: Check if blocking is required.
   1848 
   1849   }, {
   1850     key: "apply",
   1851     value: function () {
   1852       var _apply = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(args) {
   1853         var id, _$e$components$get, footerSaver, document;
   1854 
   1855         return _regenerator.default.wrap(function _callee$(_context) {
   1856           while (1) {
   1857             switch (_context.prev = _context.next) {
   1858               case 0:
   1859                 id = args.id, _$e$components$get = $e.components.get('document/save'), footerSaver = _$e$components$get.footerSaver, document = elementor.documents.get(id);
   1860 
   1861                 if (!document.editor.isChanged) {
   1862                   _context.next = 4;
   1863                   break;
   1864                 }
   1865 
   1866                 _context.next = 4;
   1867                 return $e.run('document/save/auto', {
   1868                   force: true
   1869                 });
   1870 
   1871               case 4:
   1872                 // Open immediately in order to avoid popup blockers.
   1873                 footerSaver.previewWindow = open(document.config.urls.wp_preview, "wp-preview-".concat(document.id));
   1874 
   1875               case 5:
   1876               case "end":
   1877                 return _context.stop();
   1878             }
   1879           }
   1880         }, _callee);
   1881       }));
   1882 
   1883       function apply(_x) {
   1884         return _apply.apply(this, arguments);
   1885       }
   1886 
   1887       return apply;
   1888     }()
   1889   }]);
   1890   return Preview;
   1891 }(_commandBase.default);
   1892 
   1893 exports.Preview = Preview;
   1894 var _default = Preview;
   1895 exports.default = _default;
   1896 
   1897 /***/ }),
   1898 
   1899 /***/ "../assets/dev/js/editor/commands/switch.js":
   1900 /*!**************************************************!*\
   1901   !*** ../assets/dev/js/editor/commands/switch.js ***!
   1902   \**************************************************/
   1903 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   1904 
   1905 "use strict";
   1906 
   1907 
   1908 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   1909 
   1910 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   1911 
   1912 _Object$defineProperty(exports, "__esModule", {
   1913   value: true
   1914 });
   1915 
   1916 exports.default = exports.Switch = void 0;
   1917 
   1918 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   1919 
   1920 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   1921 
   1922 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   1923 
   1924 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   1925 
   1926 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
   1927 
   1928 var Switch = /*#__PURE__*/function (_CommandBase) {
   1929   (0, _inherits2.default)(Switch, _CommandBase);
   1930 
   1931   var _super = (0, _createSuper2.default)(Switch);
   1932 
   1933   function Switch() {
   1934     (0, _classCallCheck2.default)(this, Switch);
   1935     return _super.apply(this, arguments);
   1936   }
   1937 
   1938   (0, _createClass2.default)(Switch, [{
   1939     key: "validateArgs",
   1940     value: function validateArgs(args) {
   1941       this.requireArgument('id', args);
   1942     }
   1943   }, {
   1944     key: "apply",
   1945     value: function apply(args) {
   1946       var id = args.id,
   1947           mode = args.mode,
   1948           onClose = args.onClose;
   1949       return $e.run('editor/documents/close', {
   1950         id: elementor.documents.getCurrentId(),
   1951         mode: mode,
   1952         onClose: onClose
   1953       }).then(function () {
   1954         return $e.run('editor/documents/open', {
   1955           id: id
   1956         });
   1957       });
   1958     }
   1959   }]);
   1960   return Switch;
   1961 }(_commandBase.default);
   1962 
   1963 exports.Switch = Switch;
   1964 var _default = Switch;
   1965 exports.default = _default;
   1966 
   1967 /***/ }),
   1968 
   1969 /***/ "../assets/dev/js/editor/component.js":
   1970 /*!********************************************!*\
   1971   !*** ../assets/dev/js/editor/component.js ***!
   1972   \********************************************/
   1973 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   1974 
   1975 "use strict";
   1976 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   1977 
   1978 
   1979 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   1980 
   1981 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
   1982 
   1983 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   1984 
   1985 _Object$defineProperty(exports, "__esModule", {
   1986   value: true
   1987 });
   1988 
   1989 exports.default = void 0;
   1990 
   1991 var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));
   1992 
   1993 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   1994 
   1995 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   1996 
   1997 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
   1998 
   1999 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
   2000 
   2001 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   2002 
   2003 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   2004 
   2005 var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));
   2006 
   2007 var _document = _interopRequireDefault(__webpack_require__(/*! ./document */ "../assets/dev/js/editor/document.js"));
   2008 
   2009 var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/commands/index.js"));
   2010 
   2011 var internalCommands = _interopRequireWildcard(__webpack_require__(/*! ./commands/internal/ */ "../assets/dev/js/editor/commands/internal/index.js"));
   2012 
   2013 var Component = /*#__PURE__*/function (_ComponentBase) {
   2014   (0, _inherits2.default)(Component, _ComponentBase);
   2015 
   2016   var _super = (0, _createSuper2.default)(Component);
   2017 
   2018   function Component() {
   2019     (0, _classCallCheck2.default)(this, Component);
   2020     return _super.apply(this, arguments);
   2021   }
   2022 
   2023   (0, _createClass2.default)(Component, [{
   2024     key: "__construct",
   2025     value: function __construct() {
   2026       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
   2027       (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "__construct", this).call(this, args);
   2028       /**
   2029        * All the documents.
   2030        *
   2031        * @type {Object.<Document>}
   2032        */
   2033 
   2034       this.documents = {};
   2035       /**
   2036        * Current document.
   2037        *
   2038        * @type {Document}
   2039        */
   2040 
   2041       this.currentDocument = null;
   2042       this.saveInitialDocumentToCache();
   2043     }
   2044   }, {
   2045     key: "getNamespace",
   2046     value: function getNamespace() {
   2047       return 'editor/documents';
   2048     }
   2049   }, {
   2050     key: "defaultCommands",
   2051     value: function defaultCommands() {
   2052       return this.importCommands(commands);
   2053     }
   2054   }, {
   2055     key: "defaultCommandsInternal",
   2056     value: function defaultCommandsInternal() {
   2057       return this.importCommands(internalCommands);
   2058     }
   2059     /**
   2060      * Function add().
   2061      *
   2062      * Add's document to the manager.
   2063      *
   2064      * @param {Document} document
   2065      *
   2066      * @returns {Document}
   2067      */
   2068 
   2069   }, {
   2070     key: "add",
   2071     value: function add(document) {
   2072       var id = document.id; // Save the document.
   2073 
   2074       this.documents[id] = document;
   2075       return document;
   2076     }
   2077     /**
   2078      * Function addDocumentByConfig().
   2079      *
   2080      * Add document to manager by config.
   2081      *
   2082      * @param {{}} config
   2083      *
   2084      * @returns {Document}
   2085      */
   2086 
   2087   }, {
   2088     key: "addDocumentByConfig",
   2089     value: function addDocumentByConfig(config) {
   2090       return this.add(new _document.default(config));
   2091     }
   2092     /**
   2093      * Function get().
   2094      *
   2095      * Get document by id.
   2096      *
   2097      * @param {number} id
   2098      *
   2099      * @returns {Document|boolean}
   2100      */
   2101 
   2102   }, {
   2103     key: "get",
   2104     value: function get(id) {
   2105       if (undefined !== this.documents[id]) {
   2106         return this.documents[id];
   2107       }
   2108 
   2109       return false;
   2110     }
   2111     /**
   2112      * Function getCurrent().
   2113      *
   2114      * Return's current document.
   2115      *
   2116      * @returns {Document}
   2117      */
   2118 
   2119   }, {
   2120     key: "getCurrent",
   2121     value: function getCurrent() {
   2122       return this.currentDocument;
   2123     }
   2124     /**
   2125      * Function getCurrentId().
   2126      *
   2127      * Return's current document id.
   2128      *
   2129      * @returns {number}
   2130      */
   2131 
   2132   }, {
   2133     key: "getCurrentId",
   2134     value: function getCurrentId() {
   2135       return this.currentDocument.id;
   2136     }
   2137     /**
   2138      * Function setCurrent().
   2139      *
   2140      * set current document by document instance.
   2141      *
   2142      * @param {Document} document
   2143      */
   2144 
   2145   }, {
   2146     key: "setCurrent",
   2147     value: function setCurrent(document) {
   2148       if (undefined === this.documents[document.id]) {
   2149         throw Error("The document with id: '".concat(document.id, "' does not exist/loaded"));
   2150       }
   2151 
   2152       if (this.currentDocument) {
   2153         this.currentDocument.editor.status = 'closed';
   2154       }
   2155 
   2156       this.currentDocument = this.documents[document.id];
   2157       this.currentDocument.editor.status = 'open';
   2158       elementorCommon.ajax.addRequestConstant('editor_post_id', document.id);
   2159     }
   2160   }, {
   2161     key: "isCurrent",
   2162     value: function isCurrent(id) {
   2163       return (0, _parseInt2.default)(id) === this.currentDocument.id;
   2164     }
   2165   }, {
   2166     key: "unsetCurrent",
   2167     value: function unsetCurrent() {
   2168       this.currentDocument = null;
   2169       elementorCommon.ajax.addRequestConstant('editor_post_id', null);
   2170     }
   2171   }, {
   2172     key: "request",
   2173     value: function request(id) {
   2174       return elementorCommon.ajax.load(this.getRequestArgs(id), true);
   2175     }
   2176   }, {
   2177     key: "invalidateCache",
   2178     value: function invalidateCache(id) {
   2179       elementorCommon.ajax.invalidateCache(this.getRequestArgs(id));
   2180     }
   2181   }, {
   2182     key: "getRequestArgs",
   2183     value: function getRequestArgs(id) {
   2184       id = (0, _parseInt2.default)(id);
   2185       return {
   2186         action: 'get_document_config',
   2187         unique_id: "document-".concat(id),
   2188         data: {
   2189           id: id
   2190         },
   2191         success: function success(config) {
   2192           return config;
   2193         },
   2194         error: function error(data) {
   2195           var message;
   2196 
   2197           if (_.isString(data)) {
   2198             message = data;
   2199           } else if (data.statusText) {
   2200             message = elementor.createAjaxErrorMessage(data);
   2201 
   2202             if (0 === data.readyState) {
   2203               message += ' ' + __('Cannot load editor', 'elementor');
   2204             }
   2205           } else if (data[0] && data[0].code) {
   2206             message = __('Server Error', 'elementor') + ' ' + data[0].code;
   2207           }
   2208 
   2209           alert(message);
   2210         }
   2211       };
   2212     }
   2213     /**
   2214      * Temp: Don't request initial document via ajax.
   2215      * Keep the event `elementor:init` before `preview:loaded`.
   2216      */
   2217 
   2218   }, {
   2219     key: "saveInitialDocumentToCache",
   2220     value: function saveInitialDocumentToCache() {
   2221       var document = elementor.config.initial_document;
   2222       elementorCommon.ajax.addRequestCache(this.getRequestArgs(document.id), document);
   2223     }
   2224   }]);
   2225   return Component;
   2226 }(_componentBase.default);
   2227 
   2228 exports.default = Component;
   2229 
   2230 /***/ }),
   2231 
   2232 /***/ "../assets/dev/js/editor/components/dynamic-tags/control-behavior.js":
   2233 /*!***************************************************************************!*\
   2234   !*** ../assets/dev/js/editor/components/dynamic-tags/control-behavior.js ***!
   2235   \***************************************************************************/
   2236 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   2237 
   2238 "use strict";
   2239 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   2240 
   2241 
   2242 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   2243 
   2244 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
   2245 
   2246 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
   2247 
   2248 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
   2249 
   2250 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
   2251 
   2252 var TagPanelView = __webpack_require__(/*! elementor-dynamic-tags/tag-panel-view */ "../assets/dev/js/editor/components/dynamic-tags/tag-panel-view.js");
   2253 
   2254 module.exports = Marionette.Behavior.extend({
   2255   tagView: null,
   2256   listenerAttached: false,
   2257   initialize: function initialize() {
   2258     if (!this.listenerAttached) {
   2259       this.listenTo(this.view.options.container.settings, 'change:external:__dynamic__', this.onAfterExternalChange);
   2260       this.listenerAttached = true;
   2261     }
   2262   },
   2263   renderTools: function renderTools() {
   2264     var _this = this;
   2265 
   2266     // If the user has Elementor Pro and the current control has no dynamic tags available, don't generate the dynamic switcher.
   2267     // If the user has the core version only, we do display the dynamic switcher for the promotion.
   2268     if (this.getOption('dynamicSettings').default || elementor.helpers.hasPro() && !this.getOption('tags').length) {
   2269       return;
   2270     }
   2271 
   2272     var $dynamicSwitcher = jQuery(Marionette.Renderer.render('#tmpl-elementor-control-dynamic-switcher'));
   2273     $dynamicSwitcher.on('click', function (event) {
   2274       return _this.onDynamicSwitcherClick(event);
   2275     });
   2276     this.$el.find('.elementor-control-dynamic-switcher-wrapper').append($dynamicSwitcher);
   2277     this.ui.dynamicSwitcher = $dynamicSwitcher;
   2278 
   2279     if ('color' === this.view.model.get('type')) {
   2280       if (this.view.colorPicker) {
   2281         this.moveDynamicSwitcherToColorPicker();
   2282       } else {
   2283         setTimeout(function () {
   2284           return _this.moveDynamicSwitcherToColorPicker();
   2285         });
   2286       }
   2287     } // Add a Tipsy Tooltip to the Dynamic Switcher
   2288 
   2289 
   2290     this.ui.dynamicSwitcher.tipsy({
   2291       title: function title() {
   2292         return this.getAttribute('data-tooltip');
   2293       },
   2294       gravity: 's'
   2295     });
   2296   },
   2297   moveDynamicSwitcherToColorPicker: function moveDynamicSwitcherToColorPicker() {
   2298     var $colorPickerToolsContainer = this.view.colorPicker.$pickerToolsContainer;
   2299     this.ui.dynamicSwitcher.removeClass('elementor-control-unit-1').addClass('e-control-tool');
   2300     var $eyedropper = $colorPickerToolsContainer.find('.elementor-control-element-color-picker');
   2301 
   2302     if ($eyedropper.length) {
   2303       this.ui.dynamicSwitcher.insertBefore($eyedropper);
   2304     } else {
   2305       $colorPickerToolsContainer.append(this.ui.dynamicSwitcher);
   2306     }
   2307   },
   2308   toggleDynamicClass: function toggleDynamicClass() {
   2309     this.$el.toggleClass('elementor-control-dynamic-value', this.isDynamicMode());
   2310   },
   2311   isDynamicMode: function isDynamicMode() {
   2312     var dynamicSettings = this.view.container.settings.get('__dynamic__');
   2313     return !!(dynamicSettings && dynamicSettings[this.view.model.get('name')]);
   2314   },
   2315   createTagsList: function createTagsList() {
   2316     var tags = _.groupBy(this.getOption('tags'), 'group'),
   2317         groups = elementor.dynamicTags.getConfig('groups'),
   2318         $tagsList = this.ui.tagsList = jQuery('<div>', {
   2319       class: 'elementor-tags-list'
   2320     }),
   2321         $tagsListInner = jQuery('<div>', {
   2322       class: 'elementor-tags-list__inner'
   2323     });
   2324 
   2325     $tagsList.append($tagsListInner);
   2326     jQuery.each(groups, function (groupName) {
   2327       var groupTags = tags[groupName];
   2328 
   2329       if (!groupTags) {
   2330         return;
   2331       }
   2332 
   2333       var group = this,
   2334           $groupTitle = jQuery('<div>', {
   2335         class: 'elementor-tags-list__group-title'
   2336       }).text(group.title);
   2337       $tagsListInner.append($groupTitle);
   2338       groupTags.forEach(function (tag) {
   2339         var $tag = jQuery('<div>', {
   2340           class: 'elementor-tags-list__item'
   2341         });
   2342         $tag.text(tag.title).attr('data-tag-name', tag.name);
   2343         $tagsListInner.append($tag);
   2344       });
   2345     }); // Create and inject pro dynamic teaser template if Pro is not installed
   2346 
   2347     if (!elementor.helpers.hasPro() && (0, _keys.default)(tags).length) {
   2348       var proTeaser = Marionette.Renderer.render('#tmpl-elementor-dynamic-tags-promo');
   2349       $tagsListInner.append(proTeaser);
   2350     }
   2351 
   2352     $tagsListInner.on('click', '.elementor-tags-list__item', this.onTagsListItemClick.bind(this));
   2353     elementorCommon.elements.$body.append($tagsList);
   2354   },
   2355   getTagsList: function getTagsList() {
   2356     if (!this.ui.tagsList) {
   2357       this.createTagsList();
   2358     }
   2359 
   2360     return this.ui.tagsList;
   2361   },
   2362   toggleTagsList: function toggleTagsList() {
   2363     var $tagsList = this.getTagsList();
   2364 
   2365     if ($tagsList.is(':visible')) {
   2366       $tagsList.hide();
   2367       return;
   2368     }
   2369 
   2370     var direction = elementorCommon.config.isRTL ? 'left' : 'right';
   2371     $tagsList.show().position({
   2372       my: "".concat(direction, " top"),
   2373       at: "".concat(direction, " bottom+5"),
   2374       of: this.ui.dynamicSwitcher
   2375     });
   2376   },
   2377   setTagView: function setTagView(id, name, settings) {
   2378     if (this.tagView) {
   2379       this.tagView.destroy();
   2380     }
   2381 
   2382     var tagView = this.tagView = new TagPanelView({
   2383       id: id,
   2384       name: name,
   2385       settings: settings,
   2386       controlName: this.view.model.get('name'),
   2387       dynamicSettings: this.getOption('dynamicSettings')
   2388     }),
   2389         elementContainer = this.view.options.container,
   2390         tagViewLabel = elementContainer.controls[tagView.options.controlName].label;
   2391     tagView.options.container = new elementorModules.editor.Container({
   2392       type: 'dynamic',
   2393       id: id,
   2394       model: tagView.model,
   2395       settings: tagView.model,
   2396       view: tagView,
   2397       parent: elementContainer,
   2398       label: elementContainer.label + ' ' + tagViewLabel,
   2399       controls: tagView.model.options.controls,
   2400       renderer: elementContainer
   2401     });
   2402     tagView.render();
   2403     this.$el.find('.elementor-control-tag-area').after(tagView.el);
   2404     this.listenTo(tagView, 'remove', this.onTagViewRemove.bind(this));
   2405   },
   2406   setDefaultTagView: function setDefaultTagView() {
   2407     var tagData = elementor.dynamicTags.tagTextToTagData(this.getDynamicValue());
   2408     this.setTagView(tagData.id, tagData.name, tagData.settings);
   2409   },
   2410   tagViewToTagText: function tagViewToTagText() {
   2411     var tagView = this.tagView;
   2412     return elementor.dynamicTags.tagDataToTagText(tagView.getOption('id'), tagView.getOption('name'), tagView.model);
   2413   },
   2414   getDynamicValue: function getDynamicValue() {
   2415     return this.view.container.dynamic.get(this.view.model.get('name'));
   2416   },
   2417   destroyTagView: function destroyTagView() {
   2418     if (this.tagView) {
   2419       this.tagView.destroy();
   2420       this.tagView = null;
   2421     }
   2422   },
   2423   showPromotion: function showPromotion() {
   2424     var message = __('Create more personalized and dynamic sites by populating data from various sources with dozens of dynamic tags to choose from.', 'elementor');
   2425 
   2426     elementor.promotion.showDialog({
   2427       headerMessage: __('Dynamic Content', 'elementor'),
   2428       message: message,
   2429       top: '-10',
   2430       element: this.ui.dynamicSwitcher,
   2431       actionURL: elementor.config.dynamicPromotionURL
   2432     });
   2433   },
   2434   onRender: function onRender() {
   2435     this.$el.addClass('elementor-control-dynamic');
   2436     this.renderTools();
   2437     this.toggleDynamicClass();
   2438 
   2439     if (this.isDynamicMode()) {
   2440       this.setDefaultTagView();
   2441     }
   2442   },
   2443   onDynamicSwitcherClick: function onDynamicSwitcherClick(event) {
   2444     event.stopPropagation();
   2445 
   2446     if (this.getOption('tags').length) {
   2447       this.toggleTagsList();
   2448     } else {
   2449       this.showPromotion();
   2450     }
   2451   },
   2452   onTagsListItemClick: function onTagsListItemClick(event) {
   2453     var $tag = jQuery(event.currentTarget);
   2454     this.setTagView(elementorCommon.helpers.getUniqueId(), $tag.data('tagName'), {}); // If an element has an active global value, disable it before applying the dynamic value.
   2455 
   2456     if (this.view.getGlobalKey()) {
   2457       this.view.triggerMethod('unset:global:value');
   2458     }
   2459 
   2460     if (this.isDynamicMode()) {
   2461       $e.run('document/dynamic/settings', {
   2462         container: this.view.options.container,
   2463         settings: (0, _defineProperty2.default)({}, this.view.model.get('name'), this.tagViewToTagText())
   2464       });
   2465     } else {
   2466       $e.run('document/dynamic/enable', {
   2467         container: this.view.options.container,
   2468         settings: (0, _defineProperty2.default)({}, this.view.model.get('name'), this.tagViewToTagText())
   2469       });
   2470     }
   2471 
   2472     this.toggleDynamicClass();
   2473     this.toggleTagsList();
   2474 
   2475     if (this.tagView.getTagConfig().settings_required) {
   2476       this.tagView.showSettingsPopup();
   2477     }
   2478   },
   2479   onTagViewRemove: function onTagViewRemove() {
   2480     $e.run('document/dynamic/disable', {
   2481       container: this.view.options.container,
   2482       settings: (0, _defineProperty2.default)({}, this.view.model.get('name'), this.tagViewToTagText())
   2483     });
   2484     this.toggleDynamicClass();
   2485   },
   2486   onAfterExternalChange: function onAfterExternalChange() {
   2487     this.destroyTagView();
   2488 
   2489     if (this.isDynamicMode()) {
   2490       this.setDefaultTagView();
   2491     }
   2492 
   2493     this.toggleDynamicClass();
   2494   },
   2495   onDestroy: function onDestroy() {
   2496     this.destroyTagView();
   2497 
   2498     if (this.ui.tagsList) {
   2499       this.ui.tagsList.remove();
   2500     }
   2501   }
   2502 });
   2503 
   2504 /***/ }),
   2505 
   2506 /***/ "../assets/dev/js/editor/components/dynamic-tags/manager.js":
   2507 /*!******************************************************************!*\
   2508   !*** ../assets/dev/js/editor/components/dynamic-tags/manager.js ***!
   2509   \******************************************************************/
   2510 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   2511 
   2512 "use strict";
   2513 
   2514 
   2515 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   2516 
   2517 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
   2518 
   2519 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
   2520 
   2521 __webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");
   2522 
   2523 var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));
   2524 
   2525 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
   2526 
   2527 module.exports = elementorModules.Module.extend({
   2528   CACHE_KEY_NOT_FOUND_ERROR: 'Cache key not found',
   2529   tags: {
   2530     Base: __webpack_require__(/*! elementor-dynamic-tags/tag */ "../assets/dev/js/editor/components/dynamic-tags/tag.js")
   2531   },
   2532   cache: {},
   2533   cacheRequests: {},
   2534   cacheCallbacks: [],
   2535   addCacheRequest: function addCacheRequest(tag) {
   2536     this.cacheRequests[this.createCacheKey(tag)] = true;
   2537   },
   2538   createCacheKey: function createCacheKey(tag) {
   2539     return btoa(tag.getOption('name')) + '-' + btoa(encodeURIComponent((0, _stringify.default)(tag.model)));
   2540   },
   2541   loadTagDataFromCache: function loadTagDataFromCache(tag) {
   2542     var cacheKey = this.createCacheKey(tag);
   2543 
   2544     if (undefined !== this.cache[cacheKey]) {
   2545       return this.cache[cacheKey];
   2546     }
   2547 
   2548     if (!this.cacheRequests[cacheKey]) {
   2549       this.addCacheRequest(tag);
   2550     }
   2551   },
   2552   loadCacheRequests: function loadCacheRequests() {
   2553     var cache = this.cache,
   2554         cacheRequests = this.cacheRequests,
   2555         cacheCallbacks = this.cacheCallbacks;
   2556     this.cacheRequests = {};
   2557     this.cacheCallbacks = [];
   2558     elementorCommon.ajax.addRequest('render_tags', {
   2559       data: {
   2560         post_id: elementor.config.document.id,
   2561         tags: (0, _keys.default)(cacheRequests)
   2562       },
   2563       success: function success(data) {
   2564         jQuery.extend(cache, data);
   2565         cacheCallbacks.forEach(function (callback) {
   2566           callback();
   2567         });
   2568       }
   2569     });
   2570   },
   2571   refreshCacheFromServer: function refreshCacheFromServer(callback) {
   2572     this.cacheCallbacks.push(callback);
   2573     this.loadCacheRequests();
   2574   },
   2575   getConfig: function getConfig(key) {
   2576     return this.getItems(elementor.config.dynamicTags, key);
   2577   },
   2578   parseTagsText: function parseTagsText(text, settings, parseCallback) {
   2579     var self = this;
   2580 
   2581     if ('object' === settings.returnType) {
   2582       return self.parseTagText(text, settings, parseCallback);
   2583     }
   2584 
   2585     return text.replace(/\[elementor-tag[^\]]+]/g, function (tagText) {
   2586       return self.parseTagText(tagText, settings, parseCallback);
   2587     });
   2588   },
   2589   parseTagText: function parseTagText(tagText, settings, parseCallback) {
   2590     var tagData = this.tagTextToTagData(tagText);
   2591 
   2592     if (!tagData) {
   2593       if ('object' === settings.returnType) {
   2594         return {};
   2595       }
   2596 
   2597       return '';
   2598     }
   2599 
   2600     return parseCallback(tagData.id, tagData.name, tagData.settings);
   2601   },
   2602   tagTextToTagData: function tagTextToTagData(tagText) {
   2603     var tagIDMatch = tagText.match(/id="(.*?(?="))"/),
   2604         tagNameMatch = tagText.match(/name="(.*?(?="))"/),
   2605         tagSettingsMatch = tagText.match(/settings="(.*?(?="]))/);
   2606 
   2607     if (!tagIDMatch || !tagNameMatch || !tagSettingsMatch) {
   2608       return false;
   2609     }
   2610 
   2611     return {
   2612       id: tagIDMatch[1],
   2613       name: tagNameMatch[1],
   2614       settings: JSON.parse(decodeURIComponent(tagSettingsMatch[1]))
   2615     };
   2616   },
   2617   createTag: function createTag(tagID, tagName, tagSettings) {
   2618     var tagConfig = this.getConfig('tags.' + tagName);
   2619 
   2620     if (!tagConfig) {
   2621       return;
   2622     }
   2623 
   2624     var TagClass = this.tags[tagName] || this.tags.Base,
   2625         model = new elementorModules.editor.elements.models.BaseSettings(tagSettings, {
   2626       controls: tagConfig.controls
   2627     });
   2628     return new TagClass({
   2629       id: tagID,
   2630       name: tagName,
   2631       model: model
   2632     });
   2633   },
   2634   getTagDataContent: function getTagDataContent(tagID, tagName, tagSettings) {
   2635     var tag = this.createTag(tagID, tagName, tagSettings);
   2636 
   2637     if (!tag) {
   2638       return;
   2639     }
   2640 
   2641     return tag.getContent();
   2642   },
   2643   tagDataToTagText: function tagDataToTagText(tagID, tagName, tagSettings) {
   2644     tagSettings = encodeURIComponent((0, _stringify.default)(tagSettings && tagSettings.toJSON({
   2645       remove: ['default']
   2646     }) || {}));
   2647     return '[elementor-tag id="' + tagID + '" name="' + tagName + '" settings="' + tagSettings + '"]';
   2648   },
   2649   tagContainerToTagText: function tagContainerToTagText(
   2650   /**Container*/
   2651   container) {
   2652     return elementor.dynamicTags.tagDataToTagText(container.view.getOption('id'), container.view.getOption('name'), container.view.model);
   2653   },
   2654   cleanCache: function cleanCache() {
   2655     this.cache = {};
   2656   },
   2657   onInit: function onInit() {
   2658     this.loadCacheRequests = _.debounce(this.loadCacheRequests, 300);
   2659   }
   2660 });
   2661 
   2662 /***/ }),
   2663 
   2664 /***/ "../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack-empty.js":
   2665 /*!***********************************************************************************!*\
   2666   !*** ../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack-empty.js ***!
   2667   \***********************************************************************************/
   2668 /***/ ((module) => {
   2669 
   2670 "use strict";
   2671 
   2672 
   2673 module.exports = Marionette.ItemView.extend({
   2674   className: 'elementor-tag-controls-stack-empty',
   2675   template: '#tmpl-elementor-tag-controls-stack-empty'
   2676 });
   2677 
   2678 /***/ }),
   2679 
   2680 /***/ "../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack.js":
   2681 /*!*****************************************************************************!*\
   2682   !*** ../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack.js ***!
   2683   \*****************************************************************************/
   2684 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   2685 
   2686 "use strict";
   2687 
   2688 
   2689 var EmptyView = __webpack_require__(/*! elementor-dynamic-tags/tag-controls-stack-empty */ "../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack-empty.js");
   2690 
   2691 module.exports = elementorModules.editor.views.ControlsStack.extend({
   2692   activeTab: 'content',
   2693   template: _.noop,
   2694   emptyView: EmptyView,
   2695   isEmpty: function isEmpty() {
   2696     // Ignore the section control
   2697     return this.collection.length < 2;
   2698   },
   2699   childViewOptions: function childViewOptions() {
   2700     return {
   2701       container: this.options.container
   2702     };
   2703   },
   2704   getNamespaceArray: function getNamespaceArray() {
   2705     var currentPageView = elementor.getPanelView().getCurrentPageView(),
   2706         eventNamespace = currentPageView.getNamespaceArray();
   2707     eventNamespace.push(currentPageView.activeSection);
   2708     eventNamespace.push(this.getOption('controlName'));
   2709     eventNamespace.push(this.getOption('name'));
   2710     return eventNamespace;
   2711   },
   2712   onRenderTemplate: function onRenderTemplate() {
   2713     this.activateFirstSection();
   2714   }
   2715 });
   2716 
   2717 /***/ }),
   2718 
   2719 /***/ "../assets/dev/js/editor/components/dynamic-tags/tag-panel-view.js":
   2720 /*!*************************************************************************!*\
   2721   !*** ../assets/dev/js/editor/components/dynamic-tags/tag-panel-view.js ***!
   2722   \*************************************************************************/
   2723 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   2724 
   2725 "use strict";
   2726 
   2727 
   2728 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   2729 
   2730 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
   2731 
   2732 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
   2733 
   2734 var TagControlsStack = __webpack_require__(/*! elementor-dynamic-tags/tag-controls-stack */ "../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack.js");
   2735 
   2736 module.exports = Marionette.ItemView.extend({
   2737   className: 'elementor-dynamic-cover elementor-input-style',
   2738   tagControlsStack: null,
   2739   templateHelpers: function templateHelpers() {
   2740     var helpers = {};
   2741 
   2742     if (this.model) {
   2743       helpers.controls = this.model.options.controls;
   2744     }
   2745 
   2746     return helpers;
   2747   },
   2748   ui: {
   2749     remove: '.elementor-dynamic-cover__remove'
   2750   },
   2751   events: function events() {
   2752     var events = {
   2753       'click @ui.remove': 'onRemoveClick'
   2754     };
   2755 
   2756     if (this.hasSettings()) {
   2757       events.click = 'onClick';
   2758     }
   2759 
   2760     return events;
   2761   },
   2762   getTemplate: function getTemplate() {
   2763     var config = this.getTagConfig(),
   2764         templateFunction = Marionette.TemplateCache.get('#tmpl-elementor-control-dynamic-cover'),
   2765         renderedTemplate = Marionette.Renderer.render(templateFunction, {
   2766       hasSettings: this.hasSettings(),
   2767       isRemovable: !this.getOption('dynamicSettings').default,
   2768       title: config.title,
   2769       content: config.panel_template
   2770     });
   2771     return Marionette.TemplateCache.prototype.compileTemplate(renderedTemplate.trim());
   2772   },
   2773   getTagConfig: function getTagConfig() {
   2774     return elementor.dynamicTags.getConfig('tags.' + this.getOption('name'));
   2775   },
   2776   initSettingsPopup: function initSettingsPopup() {
   2777     var settingsPopupOptions = {
   2778       className: 'elementor-tag-settings-popup',
   2779       position: {
   2780         my: 'left top+5',
   2781         at: 'left bottom',
   2782         of: this.$el,
   2783         autoRefresh: true
   2784       },
   2785       hide: {
   2786         ignore: '.select2-container'
   2787       }
   2788     };
   2789     var settingsPopup = elementorCommon.dialogsManager.createWidget('buttons', settingsPopupOptions);
   2790 
   2791     this.getSettingsPopup = function () {
   2792       return settingsPopup;
   2793     };
   2794   },
   2795   hasSettings: function hasSettings() {
   2796     return !!(0, _values.default)(this.getTagConfig().controls).length;
   2797   },
   2798   showSettingsPopup: function showSettingsPopup() {
   2799     if (!this.tagControlsStack) {
   2800       this.initTagControlsStack();
   2801     }
   2802 
   2803     var settingsPopup = this.getSettingsPopup();
   2804 
   2805     if (settingsPopup.isVisible()) {
   2806       return;
   2807     }
   2808 
   2809     settingsPopup.show();
   2810   },
   2811   initTagControlsStack: function initTagControlsStack() {
   2812     this.tagControlsStack = new TagControlsStack({
   2813       model: this.model,
   2814       controls: this.model.controls,
   2815       name: this.options.name,
   2816       controlName: this.options.controlName,
   2817       container: this.options.container,
   2818       el: this.getSettingsPopup().getElements('message')[0]
   2819     });
   2820     this.tagControlsStack.render();
   2821   },
   2822   initModel: function initModel() {
   2823     this.model = new elementorModules.editor.elements.models.BaseSettings(this.getOption('settings'), {
   2824       controls: this.getTagConfig().controls
   2825     });
   2826   },
   2827   initialize: function initialize() {
   2828     // The `model` should always be available.
   2829     this.initModel();
   2830 
   2831     if (!this.hasSettings()) {
   2832       return;
   2833     }
   2834 
   2835     this.initSettingsPopup();
   2836     this.listenTo(this.model, 'change', this.render);
   2837   },
   2838   onClick: function onClick() {
   2839     this.showSettingsPopup();
   2840   },
   2841   onRemoveClick: function onRemoveClick(event) {
   2842     event.stopPropagation();
   2843     this.destroy();
   2844     this.trigger('remove');
   2845   },
   2846   onDestroy: function onDestroy() {
   2847     if (this.hasSettings()) {
   2848       this.getSettingsPopup().destroy();
   2849     }
   2850 
   2851     if (this.tagControlsStack) {
   2852       this.tagControlsStack.destroy();
   2853     }
   2854   }
   2855 });
   2856 
   2857 /***/ }),
   2858 
   2859 /***/ "../assets/dev/js/editor/components/dynamic-tags/tag.js":
   2860 /*!**************************************************************!*\
   2861   !*** ../assets/dev/js/editor/components/dynamic-tags/tag.js ***!
   2862   \**************************************************************/
   2863 /***/ ((module) => {
   2864 
   2865 "use strict";
   2866 
   2867 
   2868 module.exports = Marionette.ItemView.extend({
   2869   hasTemplate: true,
   2870   tagName: 'span',
   2871   className: function className() {
   2872     return 'elementor-tag';
   2873   },
   2874   getTemplate: function getTemplate() {
   2875     if (!this.hasTemplate) {
   2876       return false;
   2877     }
   2878 
   2879     return Marionette.TemplateCache.get('#tmpl-elementor-tag-' + this.getOption('name') + '-content');
   2880   },
   2881   initialize: function initialize() {
   2882     try {
   2883       this.getTemplate();
   2884     } catch (e) {
   2885       this.hasTemplate = false;
   2886     }
   2887   },
   2888   getConfig: function getConfig(key) {
   2889     var config = elementor.dynamicTags.getConfig('tags.' + this.getOption('name'));
   2890 
   2891     if (key) {
   2892       return config[key];
   2893     }
   2894 
   2895     return config;
   2896   },
   2897   getContent: function getContent() {
   2898     var contentType = this.getConfig('content_type'),
   2899         data;
   2900 
   2901     if (!this.hasTemplate) {
   2902       data = elementor.dynamicTags.loadTagDataFromCache(this);
   2903 
   2904       if (undefined === data) {
   2905         throw new Error(elementor.dynamicTags.CACHE_KEY_NOT_FOUND_ERROR);
   2906       }
   2907     }
   2908 
   2909     if ('ui' === contentType) {
   2910       this.render();
   2911 
   2912       if (this.hasTemplate) {
   2913         return this.el.outerHTML;
   2914       }
   2915 
   2916       if (this.getConfig('wrapped_tag')) {
   2917         data = jQuery(data).html();
   2918       }
   2919 
   2920       this.$el.html(data);
   2921     }
   2922 
   2923     return data;
   2924   },
   2925   onRender: function onRender() {
   2926     this.el.id = 'elementor-tag-' + this.getOption('id');
   2927   }
   2928 });
   2929 
   2930 /***/ }),
   2931 
   2932 /***/ "../assets/dev/js/editor/components/hotkeys/component.js":
   2933 /*!***************************************************************!*\
   2934   !*** ../assets/dev/js/editor/components/hotkeys/component.js ***!
   2935   \***************************************************************/
   2936 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   2937 
   2938 "use strict";
   2939 
   2940 
   2941 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   2942 
   2943 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   2944 
   2945 _Object$defineProperty(exports, "__esModule", {
   2946   value: true
   2947 });
   2948 
   2949 exports.default = void 0;
   2950 
   2951 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   2952 
   2953 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   2954 
   2955 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   2956 
   2957 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   2958 
   2959 var _componentModalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-modal-base */ "../core/common/assets/js/api/modules/component-modal-base.js"));
   2960 
   2961 var _modalLayout = _interopRequireDefault(__webpack_require__(/*! ./modal-layout */ "../assets/dev/js/editor/components/hotkeys/modal-layout.js"));
   2962 
   2963 var Component = /*#__PURE__*/function (_ComponentModalBase) {
   2964   (0, _inherits2.default)(Component, _ComponentModalBase);
   2965 
   2966   var _super = (0, _createSuper2.default)(Component);
   2967 
   2968   function Component() {
   2969     (0, _classCallCheck2.default)(this, Component);
   2970     return _super.apply(this, arguments);
   2971   }
   2972 
   2973   (0, _createClass2.default)(Component, [{
   2974     key: "getNamespace",
   2975     value: function getNamespace() {
   2976       return 'shortcuts';
   2977     }
   2978   }, {
   2979     key: "defaultShortcuts",
   2980     value: function defaultShortcuts() {
   2981       return {
   2982         '': {
   2983           keys: 'ctrl+?, shift+?',
   2984           exclude: ['input']
   2985         }
   2986       };
   2987     }
   2988   }, {
   2989     key: "getModalLayout",
   2990     value: function getModalLayout() {
   2991       return _modalLayout.default;
   2992     }
   2993   }]);
   2994   return Component;
   2995 }(_componentModalBase.default);
   2996 
   2997 exports.default = Component;
   2998 
   2999 /***/ }),
   3000 
   3001 /***/ "../assets/dev/js/editor/components/hotkeys/hotkeys.js":
   3002 /*!*************************************************************!*\
   3003   !*** ../assets/dev/js/editor/components/hotkeys/hotkeys.js ***!
   3004   \*************************************************************/
   3005 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   3006 
   3007 "use strict";
   3008 
   3009 
   3010 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   3011 
   3012 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   3013 
   3014 _Object$defineProperty(exports, "__esModule", {
   3015   value: true
   3016 });
   3017 
   3018 exports.default = void 0;
   3019 
   3020 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   3021 
   3022 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   3023 
   3024 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   3025 
   3026 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   3027 
   3028 var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../assets/dev/js/editor/components/hotkeys/component.js"));
   3029 
   3030 var _default = /*#__PURE__*/function (_elementorModules$Mod) {
   3031   (0, _inherits2.default)(_default, _elementorModules$Mod);
   3032 
   3033   var _super = (0, _createSuper2.default)(_default);
   3034 
   3035   function _default() {
   3036     (0, _classCallCheck2.default)(this, _default);
   3037     return _super.apply(this, arguments);
   3038   }
   3039 
   3040   (0, _createClass2.default)(_default, [{
   3041     key: "onInit",
   3042     value: function onInit() {
   3043       $e.components.register(new _component.default({
   3044         manager: this
   3045       }));
   3046     }
   3047   }]);
   3048   return _default;
   3049 }(elementorModules.Module);
   3050 
   3051 exports.default = _default;
   3052 
   3053 /***/ }),
   3054 
   3055 /***/ "../assets/dev/js/editor/components/hotkeys/modal-content.js":
   3056 /*!*******************************************************************!*\
   3057   !*** ../assets/dev/js/editor/components/hotkeys/modal-content.js ***!
   3058   \*******************************************************************/
   3059 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   3060 
   3061 "use strict";
   3062 
   3063 
   3064 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   3065 
   3066 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   3067 
   3068 _Object$defineProperty(exports, "__esModule", {
   3069   value: true
   3070 });
   3071 
   3072 exports.default = void 0;
   3073 
   3074 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   3075 
   3076 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   3077 
   3078 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   3079 
   3080 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   3081 
   3082 var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));
   3083 
   3084 var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
   3085   (0, _inherits2.default)(_default, _Marionette$LayoutVie);
   3086 
   3087   var _super = (0, _createSuper2.default)(_default);
   3088 
   3089   function _default() {
   3090     (0, _classCallCheck2.default)(this, _default);
   3091     return _super.apply(this, arguments);
   3092   }
   3093 
   3094   (0, _createClass2.default)(_default, [{
   3095     key: "id",
   3096     value: function id() {
   3097       return 'elementor-hotkeys';
   3098     }
   3099   }, {
   3100     key: "templateHelpers",
   3101     value: function templateHelpers() {
   3102       return {
   3103         environment: _environment.default
   3104       };
   3105     }
   3106   }, {
   3107     key: "getTemplate",
   3108     value: function getTemplate() {
   3109       return '#tmpl-elementor-hotkeys';
   3110     }
   3111   }]);
   3112   return _default;
   3113 }(Marionette.LayoutView);
   3114 
   3115 exports.default = _default;
   3116 
   3117 /***/ }),
   3118 
   3119 /***/ "../assets/dev/js/editor/components/hotkeys/modal-layout.js":
   3120 /*!******************************************************************!*\
   3121   !*** ../assets/dev/js/editor/components/hotkeys/modal-layout.js ***!
   3122   \******************************************************************/
   3123 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   3124 
   3125 "use strict";
   3126 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   3127 
   3128 
   3129 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   3130 
   3131 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   3132 
   3133 _Object$defineProperty(exports, "__esModule", {
   3134   value: true
   3135 });
   3136 
   3137 exports.default = void 0;
   3138 
   3139 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   3140 
   3141 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   3142 
   3143 var _get3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
   3144 
   3145 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
   3146 
   3147 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   3148 
   3149 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   3150 
   3151 var _modalContent = _interopRequireDefault(__webpack_require__(/*! ./modal-content */ "../assets/dev/js/editor/components/hotkeys/modal-content.js"));
   3152 
   3153 var _default = /*#__PURE__*/function (_elementorModules$com) {
   3154   (0, _inherits2.default)(_default, _elementorModules$com);
   3155 
   3156   var _super = (0, _createSuper2.default)(_default);
   3157 
   3158   function _default() {
   3159     (0, _classCallCheck2.default)(this, _default);
   3160     return _super.apply(this, arguments);
   3161   }
   3162 
   3163   (0, _createClass2.default)(_default, [{
   3164     key: "getModalOptions",
   3165     value: function getModalOptions() {
   3166       return {
   3167         id: 'elementor-hotkeys__modal'
   3168       };
   3169     }
   3170   }, {
   3171     key: "getLogoOptions",
   3172     value: function getLogoOptions() {
   3173       return {
   3174         title: __('Keyboard Shortcuts', 'elementor')
   3175       };
   3176     }
   3177   }, {
   3178     key: "initialize",
   3179     value: function initialize() {
   3180       var _get2;
   3181 
   3182       for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
   3183         args[_key] = arguments[_key];
   3184       }
   3185 
   3186       (_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(_default.prototype), "initialize", this)).call.apply(_get2, [this].concat(args));
   3187 
   3188       this.showLogo();
   3189       this.showContentView();
   3190     }
   3191   }, {
   3192     key: "showContentView",
   3193     value: function showContentView() {
   3194       this.modalContent.show(new _modalContent.default());
   3195     }
   3196   }]);
   3197   return _default;
   3198 }(elementorModules.common.views.modal.Layout);
   3199 
   3200 exports.default = _default;
   3201 
   3202 /***/ }),
   3203 
   3204 /***/ "../assets/dev/js/editor/components/icons-manager/classes/icon-library.js":
   3205 /*!********************************************************************************!*\
   3206   !*** ../assets/dev/js/editor/components/icons-manager/classes/icon-library.js ***!
   3207   \********************************************************************************/
   3208 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   3209 
   3210 "use strict";
   3211 
   3212 
   3213 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   3214 
   3215 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   3216 
   3217 _Object$defineProperty(exports, "__esModule", {
   3218   value: true
   3219 });
   3220 
   3221 exports.default = void 0;
   3222 
   3223 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
   3224 
   3225 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
   3226 
   3227 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
   3228 
   3229 __webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");
   3230 
   3231 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
   3232 
   3233 var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));
   3234 
   3235 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   3236 
   3237 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   3238 
   3239 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
   3240 
   3241 var _default = /*#__PURE__*/function () {
   3242   function _default() {
   3243     var _this = this;
   3244 
   3245     (0, _classCallCheck2.default)(this, _default);
   3246     (0, _defineProperty2.default)(this, "loaded", {});
   3247     (0, _defineProperty2.default)(this, "notifyCallback", null);
   3248     (0, _defineProperty2.default)(this, "fetchIcons", function (library) {
   3249       fetch(library.fetchJson, {
   3250         mode: 'cors'
   3251       }).then(function (res) {
   3252         return res.json();
   3253       }).then(function (json) {
   3254         library.icons = json.icons;
   3255         return _this.normalizeIconList(library);
   3256       });
   3257     });
   3258     (0, _defineProperty2.default)(this, "runCallback", function (library) {
   3259       if ('function' !== typeof _this.notifyCallback) {
   3260         return library;
   3261       }
   3262 
   3263       return _this.notifyCallback(library);
   3264     });
   3265     (0, _defineProperty2.default)(this, "initIconType", function (libraryConfig, callback) {
   3266       _this.notifyCallback = callback;
   3267       var store = elementor.iconManager.store;
   3268 
   3269       if (_this.loaded[libraryConfig.name]) {
   3270         libraryConfig.icons = store.getIcons(libraryConfig);
   3271         return _this.runCallback(libraryConfig);
   3272       } // Enqueue CSS
   3273 
   3274 
   3275       if (libraryConfig.enqueue) {
   3276         libraryConfig.enqueue.forEach(function (assetURL) {
   3277           elementor.helpers.enqueueEditorStylesheet(assetURL);
   3278         });
   3279       }
   3280 
   3281       if (libraryConfig.url) {
   3282         elementor.helpers.enqueueEditorStylesheet(libraryConfig.url);
   3283       } //already saved an stored
   3284 
   3285 
   3286       if (store.isValid(libraryConfig)) {
   3287         var data = store.get(store.getKey(libraryConfig));
   3288         return _this.normalizeIconList(data);
   3289       } // comes with icons
   3290 
   3291 
   3292       if (libraryConfig.icons && libraryConfig.icons.length) {
   3293         return _this.normalizeIconList(libraryConfig);
   3294       } // Get icons from via ajax
   3295 
   3296 
   3297       if (libraryConfig.fetchJson) {
   3298         return _this.fetchIcons(libraryConfig);
   3299       } // @todo: error handling
   3300 
   3301     });
   3302   }
   3303 
   3304   (0, _createClass2.default)(_default, [{
   3305     key: "normalizeIconList",
   3306     value: function normalizeIconList(library) {
   3307       var icons = {};
   3308       var name;
   3309       jQuery.each(library.icons, function (index, icon) {
   3310         name = icon;
   3311 
   3312         if ('object' === (0, _typeof2.default)(name)) {
   3313           name = (0, _entries.default)(name)[0][0];
   3314         }
   3315 
   3316         if (!name) {
   3317           return;
   3318         }
   3319 
   3320         icons[name] = {
   3321           prefix: library.prefix,
   3322           selector: library.prefix + name.trim(':'),
   3323           name: elementorCommon.helpers.upperCaseWords(name).trim(':').split('-').join(' '),
   3324           filter: name.trim(':'),
   3325           displayPrefix: library.displayPrefix || library.prefix.replace('-', '')
   3326         };
   3327       });
   3328 
   3329       if ((0, _keys.default)(icons).length) {
   3330         library.icons = icons;
   3331         this.loaded[library.name] = true;
   3332         elementor.iconManager.store.save(library);
   3333         this.runCallback(library);
   3334       }
   3335     }
   3336   }]);
   3337   return _default;
   3338 }();
   3339 
   3340 exports.default = _default;
   3341 
   3342 /***/ }),
   3343 
   3344 /***/ "../assets/dev/js/editor/components/icons-manager/classes/store.js":
   3345 /*!*************************************************************************!*\
   3346   !*** ../assets/dev/js/editor/components/icons-manager/classes/store.js ***!
   3347   \*************************************************************************/
   3348 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   3349 
   3350 "use strict";
   3351 
   3352 
   3353 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   3354 
   3355 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   3356 
   3357 _Object$defineProperty(exports, "__esModule", {
   3358   value: true
   3359 });
   3360 
   3361 exports.default = void 0;
   3362 
   3363 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
   3364 
   3365 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   3366 
   3367 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   3368 
   3369 var Store = /*#__PURE__*/function () {
   3370   function Store() {
   3371     (0, _classCallCheck2.default)(this, Store);
   3372   }
   3373 
   3374   (0, _createClass2.default)(Store, [{
   3375     key: "save",
   3376     value: function save(library) {
   3377       elementorCommon.storage.set(Store.getKey(library), library);
   3378     }
   3379   }, {
   3380     key: "getIcons",
   3381     value: function getIcons(library) {
   3382       var data = this.get(Store.getKey(library));
   3383 
   3384       if (data && data.icons) {
   3385         return data.icons;
   3386       }
   3387 
   3388       return false;
   3389     }
   3390   }, {
   3391     key: "get",
   3392     value: function get(key) {
   3393       return elementorCommon.storage.get(key);
   3394     }
   3395   }, {
   3396     key: "isValid",
   3397     value: function isValid(library) {
   3398       var saved = this.get(Store.getKey(library));
   3399 
   3400       if (!saved) {
   3401         return false;
   3402       }
   3403 
   3404       if (saved.ver !== library.ver) {
   3405         // @todo: delete from localStorage if version is invalid
   3406         return false;
   3407       }
   3408 
   3409       return saved.icons && saved.icons.length;
   3410     }
   3411   }], [{
   3412     key: "getKey",
   3413     value: function getKey(library) {
   3414       var name = library.name ? library.name : library;
   3415       return "elementor_".concat(name, "_icons");
   3416     }
   3417   }]);
   3418   return Store;
   3419 }();
   3420 
   3421 var _default = Store;
   3422 exports.default = _default;
   3423 
   3424 /***/ }),
   3425 
   3426 /***/ "../assets/dev/js/editor/components/icons-manager/components/icon-list.js":
   3427 /*!********************************************************************************!*\
   3428   !*** ../assets/dev/js/editor/components/icons-manager/components/icon-list.js ***!
   3429   \********************************************************************************/
   3430 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   3431 
   3432 "use strict";
   3433 
   3434 
   3435 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   3436 
   3437 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
   3438 
   3439 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   3440 
   3441 _Object$defineProperty(exports, "__esModule", {
   3442   value: true
   3443 });
   3444 
   3445 exports.default = void 0;
   3446 
   3447 __webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");
   3448 
   3449 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   3450 
   3451 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   3452 
   3453 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
   3454 
   3455 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   3456 
   3457 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   3458 
   3459 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
   3460 
   3461 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
   3462 
   3463 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
   3464 
   3465 var LazyIconList = /*#__PURE__*/function (_Component) {
   3466   (0, _inherits2.default)(LazyIconList, _Component);
   3467 
   3468   var _super = (0, _createSuper2.default)(LazyIconList);
   3469 
   3470   function LazyIconList() {
   3471     var _this;
   3472 
   3473     (0, _classCallCheck2.default)(this, LazyIconList);
   3474 
   3475     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
   3476       args[_key] = arguments[_key];
   3477     }
   3478 
   3479     _this = _super.call.apply(_super, [this].concat(args));
   3480     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {
   3481       itemSize: {
   3482         width: 0,
   3483         height: 0
   3484       },
   3485       wrapperSize: {
   3486         width: 0,
   3487         height: 0
   3488       },
   3489       firstRowInView: 0
   3490     });
   3491     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "selectors", {
   3492       item: '.elementor-icons-manager__tab__item',
   3493       wrapper: 'elementor-icons-manager__tab__wrapper'
   3494     });
   3495     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "attachScrollListener", function () {
   3496       var element = document.getElementById(_this.selectors.wrapper);
   3497 
   3498       if (element) {
   3499         element.addEventListener('scroll', _this.handleScroll);
   3500       }
   3501     });
   3502     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "maybeMeasureItem", function () {
   3503       if (_this.state.itemSize.width) {
   3504         return;
   3505       } // CSS Item Padding
   3506 
   3507 
   3508       var itemPadding = 20,
   3509           wrapper = document.getElementById(_this.selectors.wrapper),
   3510           testElement = document.querySelector(_this.selectors.item);
   3511 
   3512       if (!testElement) {
   3513         return;
   3514       }
   3515 
   3516       var newState = {
   3517         itemSize: {
   3518           width: testElement.offsetWidth + itemPadding,
   3519           height: testElement.offsetHeight + itemPadding
   3520         },
   3521         wrapperSize: {
   3522           width: wrapper.offsetWidth,
   3523           height: wrapper.clientHeight
   3524         }
   3525       };
   3526       return _this.setState(newState, function () {
   3527         _this.maybeScrollToSelected();
   3528       });
   3529     });
   3530     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "maybeScrollToSelected", function () {
   3531       if (!_this.hasSelected()) {
   3532         return;
   3533       }
   3534 
   3535       var selectedIndex = _this.props.selectedIndex,
   3536           _this$state = _this.state,
   3537           wrapperSize = _this$state.wrapperSize,
   3538           itemSize = _this$state.itemSize,
   3539           itemsInRow = Math.floor(wrapperSize.width / itemSize.width),
   3540           selectedItemRow = Math.ceil(selectedIndex / itemsInRow) - 1,
   3541           scrollTop = selectedItemRow * itemSize.height;
   3542       setTimeout(function () {
   3543         _this.props.parentRef.current.scrollTo({
   3544           top: scrollTop,
   3545           left: 0,
   3546           behavior: 'auto'
   3547         });
   3548       }, 0);
   3549     });
   3550     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleScroll", function () {
   3551       _this.clearDebounceScrollCallback();
   3552 
   3553       _this._debounce = setTimeout(function () {
   3554         var element = document.getElementById(_this.selectors.wrapper);
   3555         var itemSize = _this.state.itemSize;
   3556 
   3557         _this.setState({
   3558           firstRowInView: Math.floor(element.scrollTop / itemSize.height)
   3559         });
   3560       }, 10);
   3561     });
   3562     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "render", function () {
   3563       var _this$state2 = _this.state,
   3564           itemSize = _this$state2.itemSize,
   3565           wrapperSize = _this$state2.wrapperSize;
   3566       var firstRowInView = _this.state.firstRowInView;
   3567 
   3568       if (!itemSize.width) {
   3569         return _this.renderFirstElementForMeasurement();
   3570       }
   3571 
   3572       var items = _this.props.items,
   3573           itemsInRow = Math.floor(wrapperSize.width / itemSize.width),
   3574           totalRows = Math.ceil(items.length / itemsInRow),
   3575           spareRows = 4;
   3576       var rowsInView = Math.ceil(wrapperSize.height / itemSize.height) + spareRows;
   3577 
   3578       if (rowsInView > totalRows) {
   3579         rowsInView = totalRows;
   3580       } // Prevent scroll overflow
   3581 
   3582 
   3583       if (firstRowInView > totalRows - rowsInView) {
   3584         firstRowInView = totalRows - rowsInView;
   3585       }
   3586 
   3587       var tailRows = totalRows - firstRowInView - rowsInView,
   3588           firstItemIndexInWindow = firstRowInView * itemsInRow,
   3589           lastItemIndexInWindow = (firstRowInView + rowsInView) * itemsInRow - 1,
   3590           itemsInView = items.slice(firstItemIndexInWindow, lastItemIndexInWindow + 1),
   3591           offsetStyle = {
   3592         height: "".concat(firstRowInView * itemSize.height, "px")
   3593       },
   3594           tailStyle = {
   3595         height: "".concat(tailRows * itemSize.height, "px")
   3596       };
   3597       return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
   3598         className: 'elementor-icons-manager__tab__content__offset',
   3599         style: offsetStyle
   3600       }), /*#__PURE__*/_react.default.createElement("div", {
   3601         id: 'elementor-icons-manager__tab__content'
   3602       }, itemsInView), /*#__PURE__*/_react.default.createElement("div", {
   3603         className: 'elementor-icons-manager__tab__content__tail',
   3604         style: tailStyle
   3605       }));
   3606     });
   3607     return _this;
   3608   }
   3609 
   3610   (0, _createClass2.default)(LazyIconList, [{
   3611     key: "componentDidMount",
   3612     value: function componentDidMount() {
   3613       this.attachScrollListener();
   3614       this.maybeMeasureItem();
   3615     }
   3616   }, {
   3617     key: "componentWillUnmount",
   3618     value: function componentWillUnmount() {
   3619       this.clearDebounceScrollCallback();
   3620       var element = document.getElementById(this.selectors.wrapper);
   3621 
   3622       if (element) {
   3623         element.removeEventListener('scroll', this.handleScroll);
   3624       }
   3625     }
   3626   }, {
   3627     key: "clearDebounceScrollCallback",
   3628     value: function clearDebounceScrollCallback() {
   3629       clearTimeout(this._debounce);
   3630     }
   3631   }, {
   3632     key: "renderFirstElementForMeasurement",
   3633     value: function renderFirstElementForMeasurement() {
   3634       return /*#__PURE__*/_react.default.createElement("div", {
   3635         id: 'elementor-icons-manager__tab__content'
   3636       }, this.props.items[0]);
   3637     }
   3638   }, {
   3639     key: "hasSelected",
   3640     value: function hasSelected() {
   3641       return -1 !== this.props.selectedIndex;
   3642     }
   3643   }]);
   3644   return LazyIconList;
   3645 }(_react.Component);
   3646 
   3647 var _default = LazyIconList;
   3648 exports.default = _default;
   3649 LazyIconList.propTypes = {
   3650   items: _propTypes.default.array,
   3651   selectedIndex: _propTypes.default.number,
   3652   parentRef: _propTypes.default.any
   3653 };
   3654 
   3655 /***/ }),
   3656 
   3657 /***/ "../assets/dev/js/editor/components/icons-manager/components/icon-manager.js":
   3658 /*!***********************************************************************************!*\
   3659   !*** ../assets/dev/js/editor/components/icons-manager/components/icon-manager.js ***!
   3660   \***********************************************************************************/
   3661 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   3662 
   3663 "use strict";
   3664 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   3665 
   3666 
   3667 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   3668 
   3669 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   3670 
   3671 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
   3672 
   3673 _Object$defineProperty(exports, "__esModule", {
   3674   value: true
   3675 });
   3676 
   3677 exports.renderIconManager = exports.default = void 0;
   3678 
   3679 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
   3680 
   3681 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
   3682 
   3683 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   3684 
   3685 __webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");
   3686 
   3687 var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));
   3688 
   3689 var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));
   3690 
   3691 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   3692 
   3693 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   3694 
   3695 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
   3696 
   3697 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   3698 
   3699 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   3700 
   3701 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
   3702 
   3703 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
   3704 
   3705 var _reactDom = __webpack_require__(/*! react-dom */ "react-dom");
   3706 
   3707 var _tab = _interopRequireDefault(__webpack_require__(/*! ./tab */ "../assets/dev/js/editor/components/icons-manager/components/tab.js"));
   3708 
   3709 var _iconsGoPro = _interopRequireDefault(__webpack_require__(/*! ./icons-go-pro */ "../assets/dev/js/editor/components/icons-manager/components/icons-go-pro.js"));
   3710 
   3711 var IconsManager = /*#__PURE__*/function (_Component) {
   3712   (0, _inherits2.default)(IconsManager, _Component);
   3713 
   3714   var _super = (0, _createSuper2.default)(IconsManager);
   3715 
   3716   function IconsManager() {
   3717     var _this;
   3718 
   3719     (0, _classCallCheck2.default)(this, IconsManager);
   3720 
   3721     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
   3722       args[_key] = arguments[_key];
   3723     }
   3724 
   3725     _this = _super.call.apply(_super, [this].concat(args));
   3726     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "scrollViewRef", (0, _react.createRef)());
   3727     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {
   3728       activeTab: _this.props.activeTab,
   3729       selected: {
   3730         library: '',
   3731         value: ''
   3732       },
   3733       iconTabs: elementor.config.icons.libraries,
   3734       loaded: _this.props.loaded,
   3735       filter: ''
   3736     });
   3737     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "cache", {});
   3738     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "loadAllTabs", function () {
   3739       var loaded = _this.state.loaded;
   3740       var icons = _this.props.icons;
   3741       icons.forEach(function (tabSettings) {
   3742         if (loaded[tabSettings.name]) {
   3743           return;
   3744         }
   3745 
   3746         if (-1 < ['all', 'recommended'].indexOf(tabSettings.name)) {
   3747           return;
   3748         }
   3749 
   3750         elementor.iconManager.library.initIconType((0, _objectSpread2.default)({}, tabSettings), function (library) {
   3751           _this.cache[library.name] = library;
   3752           loaded[tabSettings.name] = true;
   3753         });
   3754       });
   3755       loaded.all = true;
   3756       loaded.recommended = true;
   3757 
   3758       _this.setState({
   3759         loaded: loaded
   3760       });
   3761     });
   3762     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getActiveTab", function () {
   3763       var activeTab = _this.state.activeTab;
   3764       var loaded = _this.state.loaded,
   3765           icons = _this.props.icons;
   3766 
   3767       if (!activeTab) {
   3768         if (_this.props.activeTab) {
   3769           activeTab = _this.props.activeTab;
   3770         }
   3771       }
   3772 
   3773       if ('GoPro' === activeTab) {
   3774         return activeTab;
   3775       }
   3776 
   3777       if (!loaded[activeTab]) {
   3778         return false;
   3779       }
   3780 
   3781       var tabSettings = (0, _objectSpread2.default)({}, icons.filter(function (tab) {
   3782         return tab.name === activeTab;
   3783       })[0]);
   3784 
   3785       if (loaded[activeTab]) {
   3786         return (0, _objectSpread2.default)({}, tabSettings);
   3787       }
   3788 
   3789       if ('all' === tabSettings.name && !loaded.all) {
   3790         return _this.loadAllTabs();
   3791       }
   3792 
   3793       elementor.iconManager.library.initIconType((0, _objectSpread2.default)({}, tabSettings), function (library) {
   3794         _this.cache[library.name] = library;
   3795 
   3796         _this.updateLoaded(library.name);
   3797       });
   3798       return false;
   3799     });
   3800     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getIconTabsLinks", function () {
   3801       var native = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
   3802       return _this.props.icons.map(function (tab) {
   3803         if (native ^ _this.isNativeTab(tab)) {
   3804           return '';
   3805         }
   3806 
   3807         var isCurrentTab = tab.name === _this.state.activeTab;
   3808         var className = 'elementor-icons-manager__tab-link';
   3809 
   3810         if (isCurrentTab) {
   3811           className += ' elementor-active';
   3812         }
   3813 
   3814         return /*#__PURE__*/_react.default.createElement("div", {
   3815           className: className,
   3816           key: tab.name,
   3817           onClick: function onClick() {
   3818             if (isCurrentTab) {
   3819               return;
   3820             }
   3821 
   3822             _this.setState({
   3823               activeTab: tab.name
   3824             });
   3825           }
   3826         }, /*#__PURE__*/_react.default.createElement("i", {
   3827           className: tab.labelIcon
   3828         }), tab.label);
   3829       });
   3830     });
   3831     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getActiveTabIcons", function (activeTab) {
   3832       if (activeTab.name) {
   3833         return _this.getActiveTabIcons(activeTab.name);
   3834       }
   3835 
   3836       if (_this.cache[activeTab]) {
   3837         return _this.cache[activeTab].icons;
   3838       }
   3839 
   3840       if ('recommended' === activeTab) {
   3841         return _this.state.iconTabs[0].icons;
   3842       }
   3843 
   3844       if ('all' === activeTab) {
   3845         return _this.getAllIcons();
   3846       }
   3847 
   3848       if (!_this.state.loaded[activeTab]) {
   3849         var librarySettings = _this.props.icons.filter(function (library) {
   3850           return activeTab === library.name;
   3851         });
   3852 
   3853         return elementor.iconManager.library.initIconType((0, _objectSpread2.default)({}, librarySettings[0]), function (library) {
   3854           _this.cache[library.name] = library;
   3855 
   3856           _this.updateLoaded(library.name);
   3857         });
   3858       }
   3859 
   3860       return elementor.iconManager.store.getIcons(activeTab);
   3861     });
   3862     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getAllIcons", function () {
   3863       if (_this.cache.all) {
   3864         return _this.cache.all.icons;
   3865       }
   3866 
   3867       var icons = {};
   3868 
   3869       _this.props.icons.forEach(function (tabSettings) {
   3870         if ('all' === tabSettings.name || 'recommended' === tabSettings.name) {
   3871           return;
   3872         }
   3873 
   3874         icons[tabSettings.name] = _this.getActiveTabIcons(tabSettings.name);
   3875       });
   3876 
   3877       _this.cache.all = {
   3878         icons: icons
   3879       };
   3880       return icons;
   3881     });
   3882     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleSearch", function (event) {
   3883       var filter = event.target.value;
   3884 
   3885       if (filter && '' !== filter) {
   3886         filter = filter.toLocaleLowerCase();
   3887 
   3888         if (_this.state.filter === filter) {
   3889           return;
   3890         }
   3891       } else {
   3892         filter = '';
   3893       }
   3894 
   3895       _this.setState({
   3896         filter: filter
   3897       });
   3898     });
   3899     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setSelected", function (selected) {
   3900       elementor.iconManager.setSettings('selectedIcon', selected);
   3901 
   3902       _this.setState({
   3903         selected: selected
   3904       });
   3905     });
   3906     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getSelected", function () {
   3907       var selected = _this.state.selected;
   3908 
   3909       if ('' === selected.value && _this.props.selected && _this.props.selected.value) {
   3910         selected = {
   3911           value: _this.props.selected.value,
   3912           library: _this.props.selected.library
   3913         };
   3914       }
   3915 
   3916       return selected;
   3917     });
   3918     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "render", function () {
   3919       var activeTab = _this.getActiveTab(),
   3920           activeTabName = activeTab.name ? activeTab.name : activeTab,
   3921           _this$props$showSearc = _this.props.showSearch,
   3922           showSearch = _this$props$showSearc === void 0 ? true : _this$props$showSearc,
   3923           filter = _this.state.filter,
   3924           selected = _this.getSelected();
   3925 
   3926       if ('GoPro' !== activeTab) {
   3927         if (!activeTabName || !_this.state.loaded[activeTabName]) {
   3928           return 'Loading';
   3929         }
   3930 
   3931         if (activeTab) {
   3932           activeTab.icons = _this.getActiveTabIcons(activeTab);
   3933         }
   3934       }
   3935 
   3936       return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
   3937         id: "elementor-icons-manager__sidebar",
   3938         className: 'elementor-templates-modal__sidebar'
   3939       }, /*#__PURE__*/_react.default.createElement("div", {
   3940         id: "elementor-icons-manager__tab-links"
   3941       }, _this.getIconTabsLinks(), _this.getUploadCustomButton(), _this.getIconTabsLinks(false))), /*#__PURE__*/_react.default.createElement("div", {
   3942         id: "elementor-icons-manager__main",
   3943         className: 'elementor-templates-modal__content'
   3944       }, 'GoPro' === activeTabName ? /*#__PURE__*/_react.default.createElement(_iconsGoPro.default, null) : /*#__PURE__*/_react.default.createElement(_react.Fragment, null, showSearch ? _this.getSearchHTML() : '', /*#__PURE__*/_react.default.createElement("div", {
   3945         id: "elementor-icons-manager__tab__wrapper",
   3946         ref: _this.scrollViewRef
   3947       }, /*#__PURE__*/_react.default.createElement("div", {
   3948         id: "elementor-icons-manager__tab__title"
   3949       }, activeTab.label), /*#__PURE__*/_react.default.createElement("div", {
   3950         id: "elementor-icons-manager__tab__content_wrapper"
   3951       }, /*#__PURE__*/_react.default.createElement("input", {
   3952         type: "hidden",
   3953         name: "icon_value",
   3954         id: "icon_value",
   3955         value: selected.value
   3956       }), /*#__PURE__*/_react.default.createElement("input", {
   3957         type: "hidden",
   3958         name: "icon_type",
   3959         id: "icon_type",
   3960         value: selected.library
   3961       }), _this.state.loaded[activeTab.name] ? /*#__PURE__*/_react.default.createElement(_tab.default, (0, _extends2.default)({
   3962         setSelected: _this.setSelected,
   3963         selected: selected,
   3964         filter: filter,
   3965         key: activeTab.name,
   3966         parentRef: _this.scrollViewRef
   3967       }, activeTab)) : 'Loading')))));
   3968     });
   3969     return _this;
   3970   }
   3971 
   3972   (0, _createClass2.default)(IconsManager, [{
   3973     key: "updateLoaded",
   3974     value: function updateLoaded(libraryName) {
   3975       var loaded = this.state.loaded;
   3976       loaded[libraryName] = true;
   3977       this.setState({
   3978         loaded: loaded
   3979       });
   3980     }
   3981   }, {
   3982     key: "isNativeTab",
   3983     value: function isNativeTab(tab) {
   3984       return ('all' === tab.name || 'recommended' === tab.name || 'fa-' === tab.name.substr(0, 3)) && tab.native;
   3985     }
   3986   }, {
   3987     key: "getUploadCustomButton",
   3988     value: function getUploadCustomButton() {
   3989       var _this2 = this;
   3990 
   3991       var onClick = function onClick() {
   3992         if ('GoPro' === _this2.state.activeTab) {
   3993           return;
   3994         }
   3995 
   3996         _this2.setState({
   3997           activeTab: 'GoPro'
   3998         });
   3999       };
   4000 
   4001       if (this.props.customIconsURL) {
   4002         onClick = function onClick() {
   4003           window.open(_this2.props.customIconsURL, '_blank');
   4004         };
   4005       }
   4006 
   4007       return /*#__PURE__*/_react.default.createElement("div", {
   4008         id: "elementor-icons-manager__upload"
   4009       }, /*#__PURE__*/_react.default.createElement("div", {
   4010         id: "elementor-icons-manager__upload__title"
   4011       }, __('My Libraries', 'elementor')), /*#__PURE__*/_react.default.createElement("button", {
   4012         id: "elementor-icons-manager__upload__button",
   4013         className: "elementor-button elementor-button-default",
   4014         onClick: onClick
   4015       }, __('Upload', 'elementor')));
   4016     }
   4017   }, {
   4018     key: "getSearchHTML",
   4019     value: function getSearchHTML() {
   4020       return /*#__PURE__*/_react.default.createElement("div", {
   4021         id: "elementor-icons-manager__search"
   4022       }, /*#__PURE__*/_react.default.createElement("input", {
   4023         placeholder: 'Filter by name...',
   4024         onInput: this.handleSearch
   4025       }), /*#__PURE__*/_react.default.createElement("i", {
   4026         className: 'eicon-search'
   4027       }));
   4028     }
   4029   }]);
   4030   return IconsManager;
   4031 }(_react.Component);
   4032 
   4033 var _default = IconsManager;
   4034 exports.default = _default;
   4035 
   4036 var renderIconManager = function renderIconManager(props) {
   4037   var containerElement = document.querySelector('#elementor-icons-manager-modal .dialog-content');
   4038   return (0, _reactDom.render)( /*#__PURE__*/_react.default.createElement(IconsManager, (0, _extends2.default)({}, props, {
   4039     containerElement: containerElement
   4040   })), containerElement);
   4041 };
   4042 
   4043 exports.renderIconManager = renderIconManager;
   4044 IconsManager.propTypes = {
   4045   activeTab: _propTypes.default.any,
   4046   customIconsURL: _propTypes.default.string,
   4047   icons: _propTypes.default.any,
   4048   loaded: _propTypes.default.any,
   4049   modalView: _propTypes.default.any,
   4050   recommended: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.object]),
   4051   selected: _propTypes.default.any,
   4052   showSearch: _propTypes.default.bool
   4053 };
   4054 
   4055 /***/ }),
   4056 
   4057 /***/ "../assets/dev/js/editor/components/icons-manager/components/icon.js":
   4058 /*!***************************************************************************!*\
   4059   !*** ../assets/dev/js/editor/components/icons-manager/components/icon.js ***!
   4060   \***************************************************************************/
   4061 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   4062 
   4063 "use strict";
   4064 
   4065 
   4066 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   4067 
   4068 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   4069 
   4070 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
   4071 
   4072 _Object$defineProperty(exports, "__esModule", {
   4073   value: true
   4074 });
   4075 
   4076 exports.default = void 0;
   4077 
   4078 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
   4079 
   4080 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   4081 
   4082 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
   4083 
   4084 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   4085 
   4086 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
   4087 
   4088 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   4089 
   4090 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   4091 
   4092 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
   4093 
   4094 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
   4095 
   4096 var Icon = /*#__PURE__*/function (_Component) {
   4097   (0, _inherits2.default)(Icon, _Component);
   4098 
   4099   var _super = (0, _createSuper2.default)(Icon);
   4100 
   4101   function Icon() {
   4102     var _this;
   4103 
   4104     (0, _classCallCheck2.default)(this, Icon);
   4105 
   4106     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
   4107       args[_key] = arguments[_key];
   4108     }
   4109 
   4110     _this = _super.call.apply(_super, [this].concat(args));
   4111     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setSelected", function () {
   4112       _this.props.setSelectedHandler({
   4113         value: _this.props.data.displayPrefix + ' ' + _this.props.data.selector,
   4114         library: _this.props.library
   4115       });
   4116     });
   4117     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "render", function () {
   4118       return /*#__PURE__*/_react.default.createElement("div", {
   4119         className: _this.props.containerClass,
   4120         key: _this.props.keyID,
   4121         onClick: _this.setSelected,
   4122         filter: _this.props.data.filter
   4123       }, /*#__PURE__*/_react.default.createElement("div", {
   4124         className: "elementor-icons-manager__tab__item__content"
   4125       }, /*#__PURE__*/_react.default.createElement("i", {
   4126         className: 'elementor-icons-manager__tab__item__icon ' + _this.props.className
   4127       }), /*#__PURE__*/_react.default.createElement("div", {
   4128         className: 'elementor-icons-manager__tab__item__name',
   4129         title: _this.props.data.name
   4130       }, _this.props.data.name)));
   4131     });
   4132     return _this;
   4133   }
   4134 
   4135   return Icon;
   4136 }(_react.Component);
   4137 
   4138 exports.default = Icon;
   4139 Icon.propTypes = {
   4140   className: _propTypes.default.string,
   4141   containerClass: _propTypes.default.string,
   4142   data: _propTypes.default.object,
   4143   keyID: _propTypes.default.string,
   4144   library: _propTypes.default.string,
   4145   selector: _propTypes.default.string,
   4146   setSelectedHandler: _propTypes.default.func
   4147 };
   4148 
   4149 /***/ }),
   4150 
   4151 /***/ "../assets/dev/js/editor/components/icons-manager/components/icons-go-pro.js":
   4152 /*!***********************************************************************************!*\
   4153   !*** ../assets/dev/js/editor/components/icons-manager/components/icons-go-pro.js ***!
   4154   \***********************************************************************************/
   4155 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   4156 
   4157 "use strict";
   4158 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   4159 
   4160 
   4161 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   4162 
   4163 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   4164 
   4165 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
   4166 
   4167 _Object$defineProperty(exports, "__esModule", {
   4168   value: true
   4169 });
   4170 
   4171 exports.default = void 0;
   4172 
   4173 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
   4174 
   4175 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   4176 
   4177 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
   4178 
   4179 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   4180 
   4181 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   4182 
   4183 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
   4184 
   4185 var IconsGoPro = /*#__PURE__*/function (_Component) {
   4186   (0, _inherits2.default)(IconsGoPro, _Component);
   4187 
   4188   var _super = (0, _createSuper2.default)(IconsGoPro);
   4189 
   4190   function IconsGoPro() {
   4191     var _this;
   4192 
   4193     (0, _classCallCheck2.default)(this, IconsGoPro);
   4194 
   4195     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
   4196       args[_key] = arguments[_key];
   4197     }
   4198 
   4199     _this = _super.call.apply(_super, [this].concat(args));
   4200     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "render", function () {
   4201       return /*#__PURE__*/_react.default.createElement("div", {
   4202         id: "elementor-icons-manager__promotion"
   4203       }, /*#__PURE__*/_react.default.createElement("i", {
   4204         id: "elementor-icons-manager__promotion__icon",
   4205         className: "eicon-nerd"
   4206       }), /*#__PURE__*/_react.default.createElement("div", {
   4207         id: "elementor-icons-manager__promotion__text"
   4208       }, __('Become a Pro user to upload unlimited font icon folders to your website.', 'elementor')), /*#__PURE__*/_react.default.createElement("a", {
   4209         href: elementor.config.icons.goProURL,
   4210         id: "elementor-icons-manager__promotion__link",
   4211         className: "elementor-button elementor-button-default elementor-button-go-pro",
   4212         target: "_blank",
   4213         rel: "noopener noreferrer"
   4214       }, __('Go Pro', 'elementor')));
   4215     });
   4216     return _this;
   4217   }
   4218 
   4219   return IconsGoPro;
   4220 }(_react.Component);
   4221 
   4222 var _default = IconsGoPro;
   4223 exports.default = _default;
   4224 
   4225 /***/ }),
   4226 
   4227 /***/ "../assets/dev/js/editor/components/icons-manager/components/tab.js":
   4228 /*!**************************************************************************!*\
   4229   !*** ../assets/dev/js/editor/components/icons-manager/components/tab.js ***!
   4230   \**************************************************************************/
   4231 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   4232 
   4233 "use strict";
   4234 
   4235 
   4236 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   4237 
   4238 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   4239 
   4240 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
   4241 
   4242 _Object$defineProperty(exports, "__esModule", {
   4243   value: true
   4244 });
   4245 
   4246 exports.default = void 0;
   4247 
   4248 var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
   4249 
   4250 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   4251 
   4252 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
   4253 
   4254 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
   4255 
   4256 __webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");
   4257 
   4258 __webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");
   4259 
   4260 __webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");
   4261 
   4262 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
   4263 
   4264 __webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");
   4265 
   4266 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
   4267 
   4268 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
   4269 
   4270 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
   4271 
   4272 var _createForOfIteratorHelper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createForOfIteratorHelper */ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js"));
   4273 
   4274 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));
   4275 
   4276 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   4277 
   4278 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   4279 
   4280 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
   4281 
   4282 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   4283 
   4284 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   4285 
   4286 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
   4287 
   4288 var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
   4289 
   4290 var _iconList = _interopRequireDefault(__webpack_require__(/*! ./icon-list */ "../assets/dev/js/editor/components/icons-manager/components/icon-list.js"));
   4291 
   4292 var _icon = _interopRequireDefault(__webpack_require__(/*! ./icon */ "../assets/dev/js/editor/components/icons-manager/components/icon.js"));
   4293 
   4294 var Tab = /*#__PURE__*/function (_Component) {
   4295   (0, _inherits2.default)(Tab, _Component);
   4296 
   4297   var _super = (0, _createSuper2.default)(Tab);
   4298 
   4299   function Tab() {
   4300     var _this;
   4301 
   4302     (0, _classCallCheck2.default)(this, Tab);
   4303 
   4304     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
   4305       args[_key] = arguments[_key];
   4306     }
   4307 
   4308     _this = _super.call.apply(_super, [this].concat(args));
   4309     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "componentDidMount", function () {
   4310       if (_this.props.selected && _this.props.selected.value) {
   4311         setTimeout(function () {
   4312           var element = document.querySelector('.elementor-selected');
   4313 
   4314           if (element) {
   4315             element.scrollIntoView(false);
   4316           }
   4317         }, 0);
   4318       }
   4319     });
   4320     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleFullIconList", function () {
   4321       var fullIconList = [];
   4322       (0, _entries.default)(_this.props.icons).forEach(function (library) {
   4323         if ('recommended' !== library[0]) {
   4324           fullIconList = [].concat((0, _toConsumableArray2.default)(fullIconList), (0, _toConsumableArray2.default)(_this.getIconsOfType(library[0], library[1])));
   4325         }
   4326       });
   4327       return fullIconList.sort(function (a, b) {
   4328         return a.filter === b.filter ? 0 : +(a.filter > b.filter) || -1;
   4329       });
   4330     });
   4331     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getLibrary", function (libraryName) {
   4332       var icons = elementor.config.icons.libraries.filter(function (library) {
   4333         return libraryName === library.name;
   4334       });
   4335       return icons;
   4336     });
   4337     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleRecommendedList", function () {
   4338       var recommendedIconList = [];
   4339       (0, _entries.default)(_this.props.icons).forEach(function (library) {
   4340         var iconLibrary = _this.getLibrary(library[0]),
   4341             iconsOfType = iconLibrary[0].icons,
   4342             recommendedIconsOfType = {};
   4343 
   4344         library[1].forEach(function (iconName) {
   4345           if (iconsOfType[iconName]) {
   4346             recommendedIconsOfType[iconName] = iconsOfType[iconName];
   4347           }
   4348         });
   4349         recommendedIconList = [].concat((0, _toConsumableArray2.default)(recommendedIconList), (0, _toConsumableArray2.default)(_this.getIconsOfType(library[0], recommendedIconsOfType)));
   4350       });
   4351       return recommendedIconList;
   4352     });
   4353     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getIconsComponentList", function () {
   4354       var iconsToShow = [];
   4355       var _this$props = _this.props,
   4356           name = _this$props.name,
   4357           icons = _this$props.icons,
   4358           filter = _this$props.filter;
   4359 
   4360       switch (name) {
   4361         case 'all':
   4362           iconsToShow = _this.handleFullIconList();
   4363           break;
   4364 
   4365         case 'recommended':
   4366           iconsToShow = _this.handleRecommendedList();
   4367           break;
   4368 
   4369         default:
   4370           iconsToShow = _this.getIconsOfType(name, icons);
   4371           break;
   4372       }
   4373 
   4374       if (filter) {
   4375         iconsToShow = (0, _values.default)(iconsToShow).filter(function (icon) {
   4376           return icon.props.data.name.toLowerCase().indexOf(filter) > -1;
   4377         });
   4378       }
   4379 
   4380       return iconsToShow;
   4381     });
   4382     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "render", function () {
   4383       var icons = _this.getIconsComponentList();
   4384 
   4385       var selectedIndex = -1;
   4386 
   4387       var _iterator = (0, _createForOfIteratorHelper2.default)(icons.entries()),
   4388           _step;
   4389 
   4390       try {
   4391         for (_iterator.s(); !(_step = _iterator.n()).done;) {
   4392           var _step$value = (0, _slicedToArray2.default)(_step.value, 2),
   4393               index = _step$value[0],
   4394               icon = _step$value[1];
   4395 
   4396           if (icon.props.containerClass.includes('elementor-selected')) {
   4397             selectedIndex = index;
   4398             break;
   4399           }
   4400         }
   4401       } catch (err) {
   4402         _iterator.e(err);
   4403       } finally {
   4404         _iterator.f();
   4405       }
   4406 
   4407       return /*#__PURE__*/_react.default.createElement(_iconList.default, {
   4408         selectedIndex: selectedIndex,
   4409         items: icons,
   4410         parentRef: _this.props.parentRef
   4411       });
   4412     });
   4413     return _this;
   4414   }
   4415 
   4416   (0, _createClass2.default)(Tab, [{
   4417     key: "getIconsOfType",
   4418     value: function getIconsOfType(type, icons) {
   4419       var _this2 = this;
   4420 
   4421       var _this$props2 = this.props,
   4422           selected = _this$props2.selected,
   4423           filter = _this$props2.filter;
   4424       return (0, _entries.default)(icons).map(function (icon) {
   4425         var iconData = icon[1],
   4426             iconName = icon[0],
   4427             className = iconData.displayPrefix + ' ' + iconData.selector;
   4428         var containerClass = 'elementor-icons-manager__tab__item';
   4429 
   4430         if (selected.value === className) {
   4431           containerClass += ' elementor-selected';
   4432         }
   4433 
   4434         var key = containerClass + type + '-' + iconName + filter;
   4435         return /*#__PURE__*/_react.default.createElement(_icon.default, {
   4436           key: key,
   4437           library: type,
   4438           keyID: iconName,
   4439           containerClass: containerClass,
   4440           className: className,
   4441           setSelectedHandler: _this2.props.setSelected,
   4442           data: iconData
   4443         });
   4444       });
   4445     }
   4446   }]);
   4447   return Tab;
   4448 }(_react.Component);
   4449 
   4450 Tab.propTypes = {
   4451   data: _propTypes.default.any,
   4452   filter: _propTypes.default.any,
   4453   icons: _propTypes.default.object,
   4454   name: _propTypes.default.string,
   4455   selected: _propTypes.default.object,
   4456   setSelected: _propTypes.default.func,
   4457   parentRef: _propTypes.default.any
   4458 };
   4459 var _default = Tab;
   4460 exports.default = _default;
   4461 
   4462 /***/ }),
   4463 
   4464 /***/ "../assets/dev/js/editor/components/icons-manager/icons-manager.js":
   4465 /*!*************************************************************************!*\
   4466   !*** ../assets/dev/js/editor/components/icons-manager/icons-manager.js ***!
   4467   \*************************************************************************/
   4468 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   4469 
   4470 "use strict";
   4471 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   4472 
   4473 
   4474 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   4475 
   4476 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   4477 
   4478 _Object$defineProperty(exports, "__esModule", {
   4479   value: true
   4480 });
   4481 
   4482 exports.default = void 0;
   4483 
   4484 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
   4485 
   4486 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
   4487 
   4488 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   4489 
   4490 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
   4491 
   4492 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   4493 
   4494 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   4495 
   4496 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   4497 
   4498 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   4499 
   4500 var _modalLayout = _interopRequireDefault(__webpack_require__(/*! ./modal-layout */ "../assets/dev/js/editor/components/icons-manager/modal-layout.js"));
   4501 
   4502 var _iconManager = __webpack_require__(/*! ./components/icon-manager */ "../assets/dev/js/editor/components/icons-manager/components/icon-manager.js");
   4503 
   4504 var _iconLibrary = _interopRequireDefault(__webpack_require__(/*! ./classes/icon-library */ "../assets/dev/js/editor/components/icons-manager/classes/icon-library.js"));
   4505 
   4506 var _store = _interopRequireDefault(__webpack_require__(/*! ./classes/store */ "../assets/dev/js/editor/components/icons-manager/classes/store.js"));
   4507 
   4508 var _reactDom = __webpack_require__(/*! react-dom */ "react-dom");
   4509 
   4510 var _default = /*#__PURE__*/function (_elementorModules$Mod) {
   4511   (0, _inherits2.default)(_default, _elementorModules$Mod);
   4512 
   4513   var _super = (0, _createSuper2.default)(_default);
   4514 
   4515   function _default() {
   4516     (0, _classCallCheck2.default)(this, _default);
   4517     return _super.apply(this, arguments);
   4518   }
   4519 
   4520   (0, _createClass2.default)(_default, [{
   4521     key: "onInit",
   4522     value: function onInit() {
   4523       // Init icon library helper
   4524       this.library = new _iconLibrary.default(); // Init Icon library Storage helper
   4525 
   4526       this.store = new _store.default(); // Fetch fa4 to fa5 migration data
   4527 
   4528       elementor.helpers.fetchFa4ToFa5Mapping();
   4529       this.cache = {};
   4530     }
   4531   }, {
   4532     key: "getLayout",
   4533     value: function getLayout() {
   4534       var _this = this;
   4535 
   4536       if (!this.layout) {
   4537         this.layout = new _modalLayout.default();
   4538         var layoutModal = this.layout.getModal();
   4539         layoutModal.addButton({
   4540           name: 'insert_icon',
   4541           text: __('Insert', 'elementor'),
   4542           classes: 'elementor-button elementor-button-success',
   4543           callback: function callback() {
   4544             _this.updateControlValue();
   4545 
   4546             _this.unMountIconManager();
   4547           }
   4548         });
   4549         layoutModal.on('show', this.onPickerShow.bind(this)).on('hide', this.unMountIconManager);
   4550       }
   4551 
   4552       return this.layout;
   4553     }
   4554   }, {
   4555     key: "getDefaultSettings",
   4556     value: function getDefaultSettings() {
   4557       return {
   4558         selectedIcon: {}
   4559       };
   4560     }
   4561   }, {
   4562     key: "unMountIconManager",
   4563     value: function unMountIconManager() {
   4564       var containerElement = document.querySelector('#elementor-icons-manager-modal .dialog-content');
   4565       (0, _reactDom.unmountComponentAtNode)(containerElement);
   4566     }
   4567   }, {
   4568     key: "loadIconLibraries",
   4569     value: function loadIconLibraries() {
   4570       if (!this.cache.loaded) {
   4571         elementor.config.icons.libraries.forEach(function (library) {
   4572           if ('all' === library.name) {
   4573             return;
   4574           }
   4575 
   4576           elementor.iconManager.library.initIconType(library);
   4577         });
   4578         this.cache.loaded = true;
   4579       }
   4580     }
   4581   }, {
   4582     key: "onPickerShow",
   4583     value: function onPickerShow() {
   4584       var controlView = this.getSettings('controlView'),
   4585           loaded = {
   4586         GoPro: true
   4587       },
   4588           iconManagerConfig = {
   4589         recommended: controlView.model.get('recommended') || false
   4590       };
   4591       var selected = controlView.getControlValue(),
   4592           icons = elementor.config.icons.libraries;
   4593 
   4594       if (!selected.library || !selected.value) {
   4595         selected = {
   4596           value: '',
   4597           library: ''
   4598         };
   4599       }
   4600 
   4601       iconManagerConfig.selected = selected;
   4602       this.setSettings('selectedIcon', selected);
   4603 
   4604       if (iconManagerConfig.recommended) {
   4605         var hasRecommended = false;
   4606         icons.forEach(function (library, index) {
   4607           if ('recommended' === library.name) {
   4608             hasRecommended = true;
   4609             icons[index].icons = iconManagerConfig.recommended;
   4610           }
   4611         });
   4612 
   4613         if (!hasRecommended) {
   4614           icons.unshift({
   4615             name: 'recommended',
   4616             label: 'Recommended',
   4617             icons: iconManagerConfig.recommended,
   4618             labelIcon: 'eicon-star-o',
   4619             native: true
   4620           });
   4621         }
   4622       } else {
   4623         icons = icons.filter(function (library) {
   4624           return 'recommended' !== library.name;
   4625         });
   4626       }
   4627 
   4628       icons.forEach(function (tab, index) {
   4629         if (-1 === ['all', 'recommended'].indexOf(tab.name)) {
   4630           elementor.iconManager.library.initIconType(tab, function (lib) {
   4631             icons[index] = lib;
   4632           });
   4633         }
   4634 
   4635         loaded[tab.name] = true;
   4636       });
   4637       iconManagerConfig.loaded = loaded;
   4638       iconManagerConfig.icons = icons; // Set active tab
   4639 
   4640       var activeTab = selected.library || icons[0].name;
   4641 
   4642       if ('svg' === selected.library) {
   4643         activeTab = icons[0].name;
   4644       } // selected Library exists
   4645 
   4646 
   4647       if (!(0, _keys.default)(icons).some(function (library) {
   4648         return library === activeTab;
   4649       })) {
   4650         activeTab = icons[0].name;
   4651       } // Show recommended tab if selected from it
   4652 
   4653 
   4654       if (iconManagerConfig.recommended && '' !== selected.library && '' !== selected.value && iconManagerConfig.recommended.hasOwnProperty(selected.library)) {
   4655         var iconLibrary = icons.filter(function (library) {
   4656           return selected.library === library.name;
   4657         });
   4658         var selectedIconName = selected.value.replace(iconLibrary[0].displayPrefix + ' ' + iconLibrary[0].prefix, '');
   4659 
   4660         if (iconManagerConfig.recommended[selected.library].some(function (icon) {
   4661           return -1 < icon.indexOf(selectedIconName);
   4662         })) {
   4663           activeTab = icons[0].name;
   4664         }
   4665       }
   4666 
   4667       iconManagerConfig.customIconsURL = elementor.config.customIconsURL;
   4668       iconManagerConfig.activeTab = activeTab;
   4669       return (0, _iconManager.renderIconManager)(iconManagerConfig);
   4670     }
   4671   }, {
   4672     key: "updateControlValue",
   4673     value: function updateControlValue() {
   4674       var settings = this.getSettings();
   4675       settings.controlView.setValue(settings.selectedIcon);
   4676       settings.controlView.applySavedValue();
   4677     }
   4678   }, {
   4679     key: "show",
   4680     value: function show(options) {
   4681       this.setSettings('controlView', options.view);
   4682       this.getLayout().showModal(options);
   4683     }
   4684   }]);
   4685   return _default;
   4686 }(elementorModules.Module);
   4687 
   4688 exports.default = _default;
   4689 
   4690 /***/ }),
   4691 
   4692 /***/ "../assets/dev/js/editor/components/icons-manager/modal-layout.js":
   4693 /*!************************************************************************!*\
   4694   !*** ../assets/dev/js/editor/components/icons-manager/modal-layout.js ***!
   4695   \************************************************************************/
   4696 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   4697 
   4698 "use strict";
   4699 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   4700 
   4701 
   4702 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   4703 
   4704 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   4705 
   4706 _Object$defineProperty(exports, "__esModule", {
   4707   value: true
   4708 });
   4709 
   4710 exports.default = void 0;
   4711 
   4712 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   4713 
   4714 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   4715 
   4716 var _get3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
   4717 
   4718 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
   4719 
   4720 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   4721 
   4722 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   4723 
   4724 var _layout = _interopRequireDefault(__webpack_require__(/*! elementor-common/views/modal/layout */ "../core/common/assets/js/views/modal/layout.js"));
   4725 
   4726 var _default = /*#__PURE__*/function (_BaseModalLayout) {
   4727   (0, _inherits2.default)(_default, _BaseModalLayout);
   4728 
   4729   var _super = (0, _createSuper2.default)(_default);
   4730 
   4731   function _default() {
   4732     (0, _classCallCheck2.default)(this, _default);
   4733     return _super.apply(this, arguments);
   4734   }
   4735 
   4736   (0, _createClass2.default)(_default, [{
   4737     key: "getModalOptions",
   4738     value: function getModalOptions() {
   4739       return {
   4740         id: 'elementor-icons-manager-modal'
   4741       };
   4742     }
   4743   }, {
   4744     key: "getLogoOptions",
   4745     value: function getLogoOptions() {
   4746       return {
   4747         title: __('Icon Library', 'elementor')
   4748       };
   4749     }
   4750   }, {
   4751     key: "initialize",
   4752     value: function initialize() {
   4753       var _get2;
   4754 
   4755       for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
   4756         args[_key] = arguments[_key];
   4757       }
   4758 
   4759       (_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(_default.prototype), "initialize", this)).call.apply(_get2, [this].concat(args));
   4760 
   4761       this.showLogo();
   4762     }
   4763   }]);
   4764   return _default;
   4765 }(_layout.default);
   4766 
   4767 exports.default = _default;
   4768 
   4769 /***/ }),
   4770 
   4771 /***/ "../assets/dev/js/editor/components/settings/base/manager.js":
   4772 /*!*******************************************************************!*\
   4773   !*** ../assets/dev/js/editor/components/settings/base/manager.js ***!
   4774   \*******************************************************************/
   4775 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   4776 
   4777 "use strict";
   4778 
   4779 
   4780 var ControlsCSSParser = __webpack_require__(/*! elementor-editor-utils/controls-css-parser */ "../assets/dev/js/editor/utils/controls-css-parser.js");
   4781 
   4782 module.exports = elementorModules.ViewModule.extend({
   4783   model: null,
   4784   hasChange: false,
   4785   changeCallbacks: {},
   4786   addChangeCallback: function addChangeCallback(attribute, callback) {
   4787     this.changeCallbacks[attribute] = callback;
   4788   },
   4789   bindEvents: function bindEvents() {
   4790     elementor.on('document:loaded', this.onElementorDocumentLoaded);
   4791     this.model.on('change', this.onModelChange);
   4792   },
   4793   unbindEvents: function unbindEvents() {
   4794     elementor.off('document:loaded', this.onElementorDocumentLoaded);
   4795   },
   4796   addPanelPage: function addPanelPage() {
   4797     var name = this.getSettings('name');
   4798     elementor.getPanelView().addPage(name + '_settings', {
   4799       view: elementor.settings.panelPages[name] || elementor.settings.panelPages.base,
   4800       title: this.getSettings('panelPage.title'),
   4801       options: {
   4802         editedView: this.getEditedView(),
   4803         model: this.model,
   4804         controls: this.model.controls,
   4805         name: name
   4806       }
   4807     });
   4808   },
   4809   getContainerId: function getContainerId() {
   4810     return this.getSettings('name') + '_settings';
   4811   },
   4812   // Emulate an element view/model structure with the parts needed for a container.
   4813   getEditedView: function getEditedView() {
   4814     var id = this.getContainerId(),
   4815         editModel = new Backbone.Model({
   4816       id: id,
   4817       elType: id,
   4818       settings: this.model
   4819     });
   4820     var container = new elementorModules.editor.Container({
   4821       type: id,
   4822       id: editModel.id,
   4823       model: editModel,
   4824       settings: editModel.get('settings'),
   4825       view: false,
   4826       label: this.getSettings('panelPage').title,
   4827       controls: this.model.controls,
   4828       document: this.getDocument(),
   4829       renderer: false
   4830     });
   4831     return {
   4832       getContainer: function getContainer() {
   4833         return container;
   4834       },
   4835       getEditModel: function getEditModel() {
   4836         return editModel;
   4837       },
   4838       model: editModel
   4839     };
   4840   },
   4841   getDocument: function getDocument() {
   4842     return false;
   4843   },
   4844   updateStylesheet: function updateStylesheet(keepOldEntries) {
   4845     var controlsCSS = this.getControlsCSS();
   4846 
   4847     if (!keepOldEntries) {
   4848       controlsCSS.stylesheet.empty();
   4849     }
   4850 
   4851     this.model.handleRepeaterData(this.model.attributes);
   4852     controlsCSS.addStyleRules(this.model.getStyleControls(), this.model.attributes, this.model.controls, [/{{WRAPPER}}/g], [this.getSettings('cssWrapperSelector')]);
   4853     controlsCSS.addStyleToDocument({
   4854       // Ensures we don't override default global style
   4855       at: 'before',
   4856       of: '#elementor-style-e-global-style'
   4857     });
   4858   },
   4859   initModel: function initModel() {
   4860     this.model = new elementorModules.editor.elements.models.BaseSettings(this.getSettings('settings'), {
   4861       controls: this.getSettings('controls')
   4862     });
   4863   },
   4864   getStyleId: function getStyleId() {
   4865     return this.getSettings('name');
   4866   },
   4867   initControlsCSSParser: function initControlsCSSParser() {
   4868     var controlsCSS;
   4869 
   4870     this.destroyControlsCSS = function () {
   4871       controlsCSS.removeStyleFromDocument();
   4872     };
   4873 
   4874     this.getControlsCSS = function () {
   4875       if (!controlsCSS) {
   4876         controlsCSS = new ControlsCSSParser({
   4877           id: this.getStyleId(),
   4878           settingsModel: this.model,
   4879           context: this.getEditedView()
   4880         });
   4881       }
   4882 
   4883       return controlsCSS;
   4884     };
   4885   },
   4886   getDataToSave: function getDataToSave(data) {
   4887     return data;
   4888   },
   4889   save: function save(callback) {
   4890     var self = this;
   4891 
   4892     if (!self.hasChange) {
   4893       return;
   4894     }
   4895 
   4896     var settings = this.model.toJSON({
   4897       remove: ['default']
   4898     }),
   4899         data = this.getDataToSave({
   4900       data: settings
   4901     });
   4902 
   4903     if (!elementorCommonConfig.isTesting) {
   4904       NProgress.start();
   4905     }
   4906 
   4907     elementorCommon.ajax.addRequest('save_' + this.getSettings('name') + '_settings', {
   4908       data: data,
   4909       success: function success() {
   4910         if (!elementorCommonConfig.isTesting) {
   4911           NProgress.done();
   4912         }
   4913 
   4914         self.setSettings('settings', settings);
   4915         self.hasChange = false;
   4916 
   4917         if (callback) {
   4918           callback.apply(self, arguments);
   4919         }
   4920       },
   4921       error: function error() {
   4922         alert('An error occurred');
   4923       }
   4924     });
   4925   },
   4926   onInit: function onInit() {
   4927     this.initModel();
   4928     this.initControlsCSSParser();
   4929     this.addPanelMenuItem();
   4930     this.debounceSave = _.debounce(this.save, 3000);
   4931     elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
   4932   },
   4933 
   4934   /**
   4935    * BC for custom settings without a JS component.
   4936    */
   4937   addPanelMenuItem: function addPanelMenuItem() {
   4938     var menuSettings = this.getSettings('panelPage.menu');
   4939 
   4940     if (!menuSettings) {
   4941       return;
   4942     }
   4943 
   4944     var namespace = 'panel/' + this.getSettings('name') + '-settings',
   4945         menuItemOptions = {
   4946       icon: menuSettings.icon,
   4947       title: this.getSettings('panelPage.title'),
   4948       type: 'page',
   4949       pageName: this.getSettings('name') + '_settings',
   4950       callback: function callback() {
   4951         return $e.route("".concat(namespace, "/settings"));
   4952       }
   4953     };
   4954     $e.bc.ensureTab(namespace, 'settings', menuItemOptions.pageName);
   4955     elementor.modules.layouts.panel.pages.menu.Menu.addItem(menuItemOptions, 'settings', menuSettings.beforeItem);
   4956   },
   4957   onModelChange: function onModelChange(model) {
   4958     var self = this;
   4959     self.hasChange = true;
   4960     this.getControlsCSS().stylesheet.empty();
   4961 
   4962     _.each(model.changed, function (value, key) {
   4963       if (self.changeCallbacks[key]) {
   4964         self.changeCallbacks[key].call(self, value);
   4965       }
   4966     });
   4967 
   4968     self.updateStylesheet(true);
   4969     self.debounceSave();
   4970   },
   4971   onElementorDocumentLoaded: function onElementorDocumentLoaded() {
   4972     this.updateStylesheet();
   4973     this.addPanelPage();
   4974   },
   4975   destroy: function destroy() {
   4976     this.unbindEvents();
   4977     this.model.destroy();
   4978   }
   4979 });
   4980 
   4981 /***/ }),
   4982 
   4983 /***/ "../assets/dev/js/editor/components/settings/base/panel.js":
   4984 /*!*****************************************************************!*\
   4985   !*** ../assets/dev/js/editor/components/settings/base/panel.js ***!
   4986   \*****************************************************************/
   4987 /***/ ((module) => {
   4988 
   4989 "use strict";
   4990 
   4991 
   4992 module.exports = elementorModules.editor.views.ControlsStack.extend({
   4993   id: function id() {
   4994     return 'elementor-panel-' + this.getOption('name') + '-settings';
   4995   },
   4996   getTemplate: function getTemplate() {
   4997     return '#tmpl-elementor-panel-' + this.getOption('name') + '-settings';
   4998   },
   4999   childViewContainer: function childViewContainer() {
   5000     return '#elementor-panel-' + this.getOption('name') + '-settings-controls';
   5001   },
   5002   childViewOptions: function childViewOptions() {
   5003     return {
   5004       container: this.getOption('editedView').getContainer()
   5005     };
   5006   }
   5007 });
   5008 
   5009 /***/ }),
   5010 
   5011 /***/ "../assets/dev/js/editor/components/settings/editor-preferences/manager.js":
   5012 /*!*********************************************************************************!*\
   5013   !*** ../assets/dev/js/editor/components/settings/editor-preferences/manager.js ***!
   5014   \*********************************************************************************/
   5015 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   5016 
   5017 "use strict";
   5018 
   5019 
   5020 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   5021 
   5022 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   5023 
   5024 _Object$defineProperty(exports, "__esModule", {
   5025   value: true
   5026 });
   5027 
   5028 exports.default = void 0;
   5029 
   5030 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   5031 
   5032 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   5033 
   5034 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   5035 
   5036 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   5037 
   5038 var _manager = _interopRequireDefault(__webpack_require__(/*! ../base/manager */ "../assets/dev/js/editor/components/settings/base/manager.js"));
   5039 
   5040 var _default = /*#__PURE__*/function (_BaseManager) {
   5041   (0, _inherits2.default)(_default, _BaseManager);
   5042 
   5043   var _super = (0, _createSuper2.default)(_default);
   5044 
   5045   function _default() {
   5046     var _this;
   5047 
   5048     (0, _classCallCheck2.default)(this, _default);
   5049 
   5050     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
   5051       args[_key] = arguments[_key];
   5052     }
   5053 
   5054     _this = _super.call.apply(_super, [this].concat(args));
   5055     _this.changeCallbacks = {
   5056       ui_theme: _this.onUIThemeChanged,
   5057       panel_width: _this.onPanelWidthChanged,
   5058       edit_buttons: _this.onEditButtonsChanged,
   5059       show_hidden_elements: _this.onShowHiddenElementsChange
   5060     };
   5061     return _this;
   5062   }
   5063 
   5064   (0, _createClass2.default)(_default, [{
   5065     key: "getDefaultSettings",
   5066     value: function getDefaultSettings() {
   5067       return {
   5068         darkModeLinkID: 'elementor-editor-dark-mode-css'
   5069       };
   5070     }
   5071   }, {
   5072     key: "createDarkModeStylesheetLink",
   5073     value: function createDarkModeStylesheetLink() {
   5074       var darkModeLinkID = this.getSettings('darkModeLinkID');
   5075       var $darkModeLink = jQuery('#' + darkModeLinkID);
   5076 
   5077       if (!$darkModeLink.length) {
   5078         $darkModeLink = jQuery('<link>', {
   5079           id: darkModeLinkID,
   5080           rel: 'stylesheet',
   5081           href: elementor.config.ui.darkModeStylesheetURL
   5082         });
   5083       }
   5084 
   5085       this.$link = $darkModeLink;
   5086     }
   5087   }, {
   5088     key: "getDarkModeStylesheetLink",
   5089     value: function getDarkModeStylesheetLink() {
   5090       if (!this.$link) {
   5091         this.createDarkModeStylesheetLink();
   5092       }
   5093 
   5094       return this.$link;
   5095     }
   5096   }, {
   5097     key: "onUIThemeChanged",
   5098     value: function onUIThemeChanged(newValue) {
   5099       var $link = this.getDarkModeStylesheetLink();
   5100 
   5101       if ('light' === newValue) {
   5102         $link.remove();
   5103         return;
   5104       }
   5105 
   5106       $link.attr('media', 'auto' === newValue ? '(prefers-color-scheme: dark)' : '').appendTo(elementorCommon.elements.$body);
   5107     }
   5108   }, {
   5109     key: "onPanelWidthChanged",
   5110     value: function onPanelWidthChanged(newValue) {
   5111       elementor.panel.saveSize({
   5112         width: newValue.size + newValue.unit
   5113       });
   5114       elementor.panel.setSize();
   5115     }
   5116   }, {
   5117     key: "onEditButtonsChanged",
   5118     value: function onEditButtonsChanged() {
   5119       // Let the button change before the high-performance action of rendering the entire page
   5120       setTimeout(function () {
   5121         return elementor.getPreviewView()._renderChildren();
   5122       }, 300);
   5123     }
   5124   }, {
   5125     key: "onShowHiddenElementsChange",
   5126     value: function onShowHiddenElementsChange() {
   5127       elementorFrontend.elements.$body.toggleClass('e-preview--show-hidden-elements');
   5128     }
   5129   }]);
   5130   return _default;
   5131 }(_manager.default);
   5132 
   5133 exports.default = _default;
   5134 
   5135 /***/ }),
   5136 
   5137 /***/ "../assets/dev/js/editor/components/settings/page/component.js":
   5138 /*!*********************************************************************!*\
   5139   !*** ../assets/dev/js/editor/components/settings/page/component.js ***!
   5140   \*********************************************************************/
   5141 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   5142 
   5143 "use strict";
   5144 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   5145 
   5146 
   5147 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   5148 
   5149 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   5150 
   5151 _Object$defineProperty(exports, "__esModule", {
   5152   value: true
   5153 });
   5154 
   5155 exports.default = void 0;
   5156 
   5157 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   5158 
   5159 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   5160 
   5161 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   5162 
   5163 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   5164 
   5165 var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));
   5166 
   5167 var Component = /*#__PURE__*/function (_ComponentBase) {
   5168   (0, _inherits2.default)(Component, _ComponentBase);
   5169 
   5170   var _super = (0, _createSuper2.default)(Component);
   5171 
   5172   function Component() {
   5173     (0, _classCallCheck2.default)(this, Component);
   5174     return _super.apply(this, arguments);
   5175   }
   5176 
   5177   (0, _createClass2.default)(Component, [{
   5178     key: "getNamespace",
   5179     value: function getNamespace() {
   5180       return 'panel/page-settings';
   5181     }
   5182   }, {
   5183     key: "defaultTabs",
   5184     value: function defaultTabs() {
   5185       return {
   5186         settings: {
   5187           title: __('Settings', 'elementor')
   5188         },
   5189         style: {
   5190           title: __('Style', 'elementor')
   5191         },
   5192         advanced: {
   5193           title: __('Advanced', 'elementor')
   5194         }
   5195       };
   5196     }
   5197   }, {
   5198     key: "renderTab",
   5199     value: function renderTab(tab) {
   5200       elementor.getPanelView().setPage('page_settings').activateTab(tab);
   5201     }
   5202   }, {
   5203     key: "getTabsWrapperSelector",
   5204     value: function getTabsWrapperSelector() {
   5205       return '.elementor-panel-navigation';
   5206     }
   5207   }]);
   5208   return Component;
   5209 }(_componentBase.default);
   5210 
   5211 exports.default = Component;
   5212 
   5213 /***/ }),
   5214 
   5215 /***/ "../assets/dev/js/editor/components/settings/page/manager.js":
   5216 /*!*******************************************************************!*\
   5217   !*** ../assets/dev/js/editor/components/settings/page/manager.js ***!
   5218   \*******************************************************************/
   5219 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   5220 
   5221 "use strict";
   5222 
   5223 
   5224 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   5225 
   5226 var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../assets/dev/js/editor/components/settings/page/component.js"));
   5227 
   5228 var BaseSettings = __webpack_require__(/*! elementor-editor/components/settings/base/manager */ "../assets/dev/js/editor/components/settings/base/manager.js");
   5229 
   5230 module.exports = BaseSettings.extend({
   5231   getStyleId: function getStyleId() {
   5232     return this.getSettings('name') + '-' + elementor.documents.getCurrent().id;
   5233   },
   5234   onInit: function onInit() {
   5235     BaseSettings.prototype.onInit.apply(this);
   5236     $e.components.register(new _component.default({
   5237       manager: this
   5238     }));
   5239   },
   5240   save: function save() {},
   5241   getDataToSave: function getDataToSave(data) {
   5242     data.id = elementor.config.document.id;
   5243     return data;
   5244   },
   5245   // Emulate an element view/model structure with the parts needed for a container.
   5246   getEditedView: function getEditedView() {
   5247     var _this = this;
   5248 
   5249     if (this.editedView) {
   5250       return this.editedView;
   5251     }
   5252 
   5253     var id = this.getContainerId(),
   5254         editModel = new Backbone.Model({
   5255       id: id,
   5256       elType: id,
   5257       settings: this.model,
   5258       elements: elementor.elements
   5259     });
   5260     var container = new elementorModules.editor.Container({
   5261       type: id,
   5262       id: editModel.id,
   5263       model: editModel,
   5264       settings: editModel.get('settings'),
   5265       label: elementor.config.document.panel.title,
   5266       controls: this.model.controls,
   5267       children: elementor.elements,
   5268       // Emulate a view that can render the style.
   5269       renderer: {
   5270         view: {
   5271           lookup: function lookup() {
   5272             return container;
   5273           },
   5274           renderOnChange: function renderOnChange() {
   5275             return _this.updateStylesheet();
   5276           },
   5277           renderUI: function renderUI() {
   5278             return _this.updateStylesheet();
   5279           }
   5280         }
   5281       }
   5282     });
   5283     this.editedView = {
   5284       getContainer: function getContainer() {
   5285         return container;
   5286       },
   5287       getEditModel: function getEditModel() {
   5288         return editModel;
   5289       },
   5290       model: editModel
   5291     };
   5292     return this.editedView;
   5293   },
   5294   getContainerId: function getContainerId() {
   5295     return 'document';
   5296   }
   5297 });
   5298 
   5299 /***/ }),
   5300 
   5301 /***/ "../assets/dev/js/editor/components/settings/settings.js":
   5302 /*!***************************************************************!*\
   5303   !*** ../assets/dev/js/editor/components/settings/settings.js ***!
   5304   \***************************************************************/
   5305 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   5306 
   5307 "use strict";
   5308 
   5309 
   5310 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   5311 
   5312 var _manager = _interopRequireDefault(__webpack_require__(/*! ./editor-preferences/manager */ "../assets/dev/js/editor/components/settings/editor-preferences/manager.js"));
   5313 
   5314 module.exports = elementorModules.Module.extend({
   5315   modules: {
   5316     base: __webpack_require__(/*! elementor-editor/components/settings/base/manager */ "../assets/dev/js/editor/components/settings/base/manager.js"),
   5317     page: __webpack_require__(/*! elementor-editor/components/settings/page/manager */ "../assets/dev/js/editor/components/settings/page/manager.js"),
   5318     editorPreferences: _manager.default
   5319   },
   5320   panelPages: {
   5321     base: __webpack_require__(/*! elementor-editor/components/settings/base/panel */ "../assets/dev/js/editor/components/settings/base/panel.js")
   5322   },
   5323   onInit: function onInit() {
   5324     this.initSettings();
   5325   },
   5326   initSettings: function initSettings() {
   5327     var self = this;
   5328 
   5329     _.each(elementor.config.settings, function (config, name) {
   5330       var Manager = self.modules[name] || self.modules.base;
   5331       self[name] = new Manager(config);
   5332     });
   5333   }
   5334 });
   5335 
   5336 /***/ }),
   5337 
   5338 /***/ "../assets/dev/js/editor/components/template-library/behaviors/insert-template.js":
   5339 /*!****************************************************************************************!*\
   5340   !*** ../assets/dev/js/editor/components/template-library/behaviors/insert-template.js ***!
   5341   \****************************************************************************************/
   5342 /***/ ((module) => {
   5343 
   5344 "use strict";
   5345 
   5346 
   5347 var InsertTemplateHandler;
   5348 InsertTemplateHandler = Marionette.Behavior.extend({
   5349   ui: {
   5350     insertButton: '.elementor-template-library-template-insert'
   5351   },
   5352   events: {
   5353     'click @ui.insertButton': 'onInsertButtonClick'
   5354   },
   5355   onInsertButtonClick: function onInsertButtonClick() {
   5356     var args = {
   5357       model: this.view.model
   5358     };
   5359 
   5360     if ('remote' === args.model.get('source') && !elementor.config.library_connect.is_connected) {
   5361       $e.route('library/connect', args);
   5362       return;
   5363     }
   5364 
   5365     $e.run('library/insert-template', args);
   5366   }
   5367 });
   5368 module.exports = InsertTemplateHandler;
   5369 
   5370 /***/ }),
   5371 
   5372 /***/ "../assets/dev/js/editor/components/template-library/collections/templates.js":
   5373 /*!************************************************************************************!*\
   5374   !*** ../assets/dev/js/editor/components/template-library/collections/templates.js ***!
   5375   \************************************************************************************/
   5376 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   5377 
   5378 "use strict";
   5379 
   5380 
   5381 var TemplateLibraryTemplateModel = __webpack_require__(/*! elementor-templates/models/template */ "../assets/dev/js/editor/components/template-library/models/template.js"),
   5382     TemplateLibraryCollection;
   5383 
   5384 TemplateLibraryCollection = Backbone.Collection.extend({
   5385   model: TemplateLibraryTemplateModel
   5386 });
   5387 module.exports = TemplateLibraryCollection;
   5388 
   5389 /***/ }),
   5390 
   5391 /***/ "../assets/dev/js/editor/components/template-library/commands/index.js":
   5392 /*!*****************************************************************************!*\
   5393   !*** ../assets/dev/js/editor/components/template-library/commands/index.js ***!
   5394   \*****************************************************************************/
   5395 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   5396 
   5397 "use strict";
   5398 
   5399 
   5400 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   5401 
   5402 _Object$defineProperty(exports, "__esModule", {
   5403   value: true
   5404 });
   5405 
   5406 _Object$defineProperty(exports, "InsertTemplate", {
   5407   enumerable: true,
   5408   get: function get() {
   5409     return _insertTemplate.InsertTemplate;
   5410   }
   5411 });
   5412 
   5413 _Object$defineProperty(exports, "Open", {
   5414   enumerable: true,
   5415   get: function get() {
   5416     return _open.Open;
   5417   }
   5418 });
   5419 
   5420 var _insertTemplate = __webpack_require__(/*! ./insert-template */ "../assets/dev/js/editor/components/template-library/commands/insert-template.js");
   5421 
   5422 var _open = __webpack_require__(/*! ./open */ "../assets/dev/js/editor/components/template-library/commands/open.js");
   5423 
   5424 /***/ }),
   5425 
   5426 /***/ "../assets/dev/js/editor/components/template-library/commands/insert-template.js":
   5427 /*!***************************************************************************************!*\
   5428   !*** ../assets/dev/js/editor/components/template-library/commands/insert-template.js ***!
   5429   \***************************************************************************************/
   5430 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   5431 
   5432 "use strict";
   5433 
   5434 
   5435 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   5436 
   5437 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   5438 
   5439 _Object$defineProperty(exports, "__esModule", {
   5440   value: true
   5441 });
   5442 
   5443 exports.default = exports.InsertTemplate = void 0;
   5444 
   5445 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   5446 
   5447 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   5448 
   5449 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   5450 
   5451 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   5452 
   5453 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
   5454 
   5455 var InsertTemplate = /*#__PURE__*/function (_CommandBase) {
   5456   (0, _inherits2.default)(InsertTemplate, _CommandBase);
   5457 
   5458   var _super = (0, _createSuper2.default)(InsertTemplate);
   5459 
   5460   function InsertTemplate() {
   5461     (0, _classCallCheck2.default)(this, InsertTemplate);
   5462     return _super.apply(this, arguments);
   5463   }
   5464 
   5465   (0, _createClass2.default)(InsertTemplate, [{
   5466     key: "apply",
   5467     value: function apply(args) {
   5468       return this.component.insertTemplate(args);
   5469     }
   5470   }]);
   5471   return InsertTemplate;
   5472 }(_commandBase.default);
   5473 
   5474 exports.InsertTemplate = InsertTemplate;
   5475 var _default = InsertTemplate;
   5476 exports.default = _default;
   5477 
   5478 /***/ }),
   5479 
   5480 /***/ "../assets/dev/js/editor/components/template-library/commands/open.js":
   5481 /*!****************************************************************************!*\
   5482   !*** ../assets/dev/js/editor/components/template-library/commands/open.js ***!
   5483   \****************************************************************************/
   5484 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   5485 
   5486 "use strict";
   5487 
   5488 
   5489 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   5490 
   5491 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   5492 
   5493 _Object$defineProperty(exports, "__esModule", {
   5494   value: true
   5495 });
   5496 
   5497 exports.default = exports.Open = void 0;
   5498 
   5499 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   5500 
   5501 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   5502 
   5503 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   5504 
   5505 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   5506 
   5507 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
   5508 
   5509 var Open = /*#__PURE__*/function (_CommandBase) {
   5510   (0, _inherits2.default)(Open, _CommandBase);
   5511 
   5512   var _super = (0, _createSuper2.default)(Open);
   5513 
   5514   function Open() {
   5515     (0, _classCallCheck2.default)(this, Open);
   5516     return _super.apply(this, arguments);
   5517   }
   5518 
   5519   (0, _createClass2.default)(Open, [{
   5520     key: "apply",
   5521     value: function apply(args) {
   5522       return this.component.show(args);
   5523     }
   5524   }]);
   5525   return Open;
   5526 }(_commandBase.default);
   5527 
   5528 exports.Open = Open;
   5529 var _default = Open;
   5530 exports.default = _default;
   5531 
   5532 /***/ }),
   5533 
   5534 /***/ "../assets/dev/js/editor/components/template-library/component.js":
   5535 /*!************************************************************************!*\
   5536   !*** ../assets/dev/js/editor/components/template-library/component.js ***!
   5537   \************************************************************************/
   5538 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   5539 
   5540 "use strict";
   5541 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   5542 
   5543 
   5544 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   5545 
   5546 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
   5547 
   5548 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   5549 
   5550 _Object$defineProperty(exports, "__esModule", {
   5551   value: true
   5552 });
   5553 
   5554 exports.default = void 0;
   5555 
   5556 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   5557 
   5558 var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));
   5559 
   5560 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   5561 
   5562 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   5563 
   5564 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
   5565 
   5566 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
   5567 
   5568 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   5569 
   5570 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   5571 
   5572 var _componentModalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-modal-base */ "../core/common/assets/js/api/modules/component-modal-base.js"));
   5573 
   5574 var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/components/template-library/commands/index.js"));
   5575 
   5576 var TemplateLibraryLayoutView = __webpack_require__(/*! elementor-templates/views/library-layout */ "../assets/dev/js/editor/components/template-library/views/library-layout.js");
   5577 
   5578 var Component = /*#__PURE__*/function (_ComponentModalBase) {
   5579   (0, _inherits2.default)(Component, _ComponentModalBase);
   5580 
   5581   var _super = (0, _createSuper2.default)(Component);
   5582 
   5583   function Component() {
   5584     (0, _classCallCheck2.default)(this, Component);
   5585     return _super.apply(this, arguments);
   5586   }
   5587 
   5588   (0, _createClass2.default)(Component, [{
   5589     key: "__construct",
   5590     value: function __construct(args) {
   5591       (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "__construct", this).call(this, args); // When switching documents update defaultTabs.
   5592 
   5593       elementor.on('document:loaded', this.onDocumentLoaded.bind(this));
   5594     }
   5595   }, {
   5596     key: "getNamespace",
   5597     value: function getNamespace() {
   5598       return 'library';
   5599     }
   5600   }, {
   5601     key: "defaultTabs",
   5602     value: function defaultTabs() {
   5603       return {
   5604         'templates/blocks': {
   5605           title: __('Blocks', 'elementor'),
   5606           getFilter: function getFilter() {
   5607             return {
   5608               source: 'remote',
   5609               type: 'block',
   5610               subtype: elementor.config.document.remoteLibrary.category
   5611             };
   5612           }
   5613         },
   5614         'templates/pages': {
   5615           title: __('Pages', 'elementor'),
   5616           filter: {
   5617             source: 'remote',
   5618             type: 'page'
   5619           }
   5620         },
   5621         'templates/my-templates': {
   5622           title: __('My Templates', 'elementor'),
   5623           filter: {
   5624             source: 'local'
   5625           }
   5626         }
   5627       };
   5628     }
   5629   }, {
   5630     key: "defaultRoutes",
   5631     value: function defaultRoutes() {
   5632       var _this = this;
   5633 
   5634       return {
   5635         import: function _import() {
   5636           _this.manager.layout.showImportView();
   5637         },
   5638         'save-template': function saveTemplate(args) {
   5639           _this.manager.layout.showSaveTemplateView(args.model);
   5640         },
   5641         preview: function preview(args) {
   5642           _this.manager.layout.showPreviewView(args.model);
   5643         },
   5644         connect: function connect(args) {
   5645           args.texts = {
   5646             title: __('Connect to Template Library', 'elementor'),
   5647             message: __('Access this template and our entire library by creating a free personal account', 'elementor'),
   5648             button: __('Get Started', 'elementor')
   5649           };
   5650 
   5651           _this.manager.layout.showConnectView(args);
   5652         }
   5653       };
   5654     }
   5655   }, {
   5656     key: "defaultCommands",
   5657     value: function defaultCommands() {
   5658       var modalCommands = (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "defaultCommands", this).call(this);
   5659       return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, modalCommands), this.importCommands(commands));
   5660     }
   5661   }, {
   5662     key: "defaultShortcuts",
   5663     value: function defaultShortcuts() {
   5664       return {
   5665         open: {
   5666           keys: 'ctrl+shift+l'
   5667         }
   5668       };
   5669     }
   5670   }, {
   5671     key: "onDocumentLoaded",
   5672     value: function onDocumentLoaded(document) {
   5673       this.setDefaultRoute(document.config.remoteLibrary.default_route);
   5674       this.maybeOpenLibrary();
   5675     }
   5676   }, {
   5677     key: "renderTab",
   5678     value: function renderTab(tab) {
   5679       var currentTab = this.tabs[tab],
   5680           filter = currentTab.getFilter ? currentTab.getFilter() : currentTab.filter;
   5681       this.manager.setScreen(filter);
   5682     }
   5683   }, {
   5684     key: "activateTab",
   5685     value: function activateTab(tab) {
   5686       $e.routes.saveState('library');
   5687       (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "activateTab", this).call(this, tab);
   5688     }
   5689   }, {
   5690     key: "open",
   5691     value: function open() {
   5692       (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "open", this).call(this);
   5693 
   5694       if (!this.manager.layout) {
   5695         this.manager.layout = this.layout;
   5696       }
   5697 
   5698       this.manager.layout.setHeaderDefaultParts();
   5699       return true;
   5700     }
   5701   }, {
   5702     key: "close",
   5703     value: function close() {
   5704       if (!(0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "close", this).call(this)) {
   5705         return false;
   5706       }
   5707 
   5708       this.manager.modalConfig = {};
   5709       return true;
   5710     }
   5711   }, {
   5712     key: "show",
   5713     value: function show(args) {
   5714       this.manager.modalConfig = args;
   5715 
   5716       if (args.toDefault || !$e.routes.restoreState('library')) {
   5717         $e.route(this.getDefaultRoute());
   5718       }
   5719     } // TODO: Move function to 'insert-template' command.
   5720 
   5721   }, {
   5722     key: "insertTemplate",
   5723     value: function insertTemplate(args) {
   5724       var _this2 = this;
   5725 
   5726       var autoImportSettings = elementor.config.document.remoteLibrary.autoImportSettings,
   5727           model = args.model;
   5728       var _args$withPageSetting = args.withPageSettings,
   5729           withPageSettings = _args$withPageSetting === void 0 ? null : _args$withPageSetting;
   5730 
   5731       if (autoImportSettings) {
   5732         withPageSettings = true;
   5733       }
   5734 
   5735       if (null === withPageSettings && model.get('hasPageSettings')) {
   5736         var insertTemplateHandler = this.getImportSettingsDialog();
   5737         insertTemplateHandler.showImportDialog(model);
   5738         return;
   5739       }
   5740 
   5741       this.manager.layout.showLoadingView();
   5742       this.manager.requestTemplateContent(model.get('source'), model.get('template_id'), {
   5743         data: {
   5744           with_page_settings: withPageSettings
   5745         },
   5746         success: function success(data) {
   5747           // Clone the `modalConfig.importOptions` because it deleted during the closing.
   5748           var importOptions = jQuery.extend({}, _this2.manager.modalConfig.importOptions);
   5749           importOptions.withPageSettings = withPageSettings; // Hide for next open.
   5750 
   5751           _this2.manager.layout.hideLoadingView();
   5752 
   5753           _this2.manager.layout.hideModal();
   5754 
   5755           $e.run('document/elements/import', {
   5756             model: model,
   5757             data: data,
   5758             options: importOptions
   5759           });
   5760         },
   5761         error: function error(data) {
   5762           _this2.manager.showErrorDialog(data);
   5763         },
   5764         complete: function complete() {
   5765           _this2.manager.layout.hideLoadingView();
   5766         }
   5767       });
   5768     }
   5769   }, {
   5770     key: "getImportSettingsDialog",
   5771     value: function getImportSettingsDialog() {
   5772       // Moved from ./behaviors/insert-template.js
   5773       var InsertTemplateHandler = {
   5774         dialog: null,
   5775         showImportDialog: function showImportDialog(model) {
   5776           var dialog = InsertTemplateHandler.getDialog();
   5777 
   5778           dialog.onConfirm = function () {
   5779             $e.run('library/insert-template', {
   5780               model: model,
   5781               withPageSettings: true
   5782             });
   5783           };
   5784 
   5785           dialog.onCancel = function () {
   5786             $e.run('library/insert-template', {
   5787               model: model,
   5788               withPageSettings: false
   5789             });
   5790           };
   5791 
   5792           dialog.show();
   5793         },
   5794         initDialog: function initDialog() {
   5795           InsertTemplateHandler.dialog = elementorCommon.dialogsManager.createWidget('confirm', {
   5796             id: 'elementor-insert-template-settings-dialog',
   5797             headerMessage: __('Import Document Settings', 'elementor'),
   5798             message: __('Do you want to also import the document settings of the template?', 'elementor') + '<br>' + __('Attention: Importing may override previous settings.', 'elementor'),
   5799             strings: {
   5800               confirm: __('Yes', 'elementor'),
   5801               cancel: __('No', 'elementor')
   5802             }
   5803           });
   5804         },
   5805         getDialog: function getDialog() {
   5806           if (!InsertTemplateHandler.dialog) {
   5807             InsertTemplateHandler.initDialog();
   5808           }
   5809 
   5810           return InsertTemplateHandler.dialog;
   5811         }
   5812       };
   5813       return InsertTemplateHandler;
   5814     }
   5815   }, {
   5816     key: "getTabsWrapperSelector",
   5817     value: function getTabsWrapperSelector() {
   5818       return '#elementor-template-library-header-menu';
   5819     }
   5820   }, {
   5821     key: "getModalLayout",
   5822     value: function getModalLayout() {
   5823       return TemplateLibraryLayoutView;
   5824     }
   5825   }, {
   5826     key: "maybeOpenLibrary",
   5827     value: function maybeOpenLibrary() {
   5828       if ('#library' === location.hash) {
   5829         $e.run('library/open');
   5830         location.hash = '';
   5831       }
   5832     }
   5833   }]);
   5834   return Component;
   5835 }(_componentModalBase.default);
   5836 
   5837 exports.default = Component;
   5838 
   5839 /***/ }),
   5840 
   5841 /***/ "../assets/dev/js/editor/components/template-library/manager.js":
   5842 /*!**********************************************************************!*\
   5843   !*** ../assets/dev/js/editor/components/template-library/manager.js ***!
   5844   \**********************************************************************/
   5845 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   5846 
   5847 "use strict";
   5848 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   5849 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
   5850 
   5851 
   5852 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   5853 
   5854 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   5855 
   5856 var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));
   5857 
   5858 var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));
   5859 
   5860 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
   5861 
   5862 var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../assets/dev/js/editor/components/template-library/component.js"));
   5863 
   5864 var TemplateLibraryCollection = __webpack_require__(/*! elementor-templates/collections/templates */ "../assets/dev/js/editor/components/template-library/collections/templates.js"),
   5865     TemplateLibraryManager;
   5866 
   5867 TemplateLibraryManager = function TemplateLibraryManager() {
   5868   this.modalConfig = {};
   5869   var self = this,
   5870       templateTypes = {};
   5871   var deleteDialog,
   5872       errorDialog,
   5873       templatesCollection,
   5874       config = {},
   5875       filterTerms = {};
   5876 
   5877   var registerDefaultTemplateTypes = function registerDefaultTemplateTypes() {
   5878     var data = {
   5879       saveDialog: {
   5880         description: __('Your designs will be available for export and reuse on any page or website', 'elementor')
   5881       },
   5882       ajaxParams: {
   5883         success: function success(successData) {
   5884           $e.route('library/templates/my-templates', {
   5885             onBefore: function onBefore() {
   5886               if (templatesCollection) {
   5887                 var itemExist = templatesCollection.findWhere({
   5888                   template_id: successData.template_id
   5889                 });
   5890 
   5891                 if (!itemExist) {
   5892                   templatesCollection.add(successData);
   5893                 }
   5894               }
   5895             }
   5896           });
   5897         },
   5898         error: function error(errorData) {
   5899           self.showErrorDialog(errorData);
   5900         }
   5901       }
   5902     };
   5903     var translationMap = (0, _defineProperty2.default)({
   5904       page: __('Page', 'elementor'),
   5905       section: __('Section', 'elementor')
   5906     }, elementor.config.document.type, elementor.config.document.panel.title);
   5907     jQuery.each(translationMap, function (type, title) {
   5908       var safeData = jQuery.extend(true, {}, data, {
   5909         saveDialog: {
   5910           /* translators: %s: Template type. */
   5911           title: sprintf(__('Save Your %s to Library', 'elementor'), title)
   5912         }
   5913       });
   5914       self.registerTemplateType(type, safeData);
   5915     });
   5916   };
   5917 
   5918   var registerDefaultFilterTerms = function registerDefaultFilterTerms() {
   5919     filterTerms = {
   5920       text: {
   5921         callback: function callback(value) {
   5922           value = value.toLowerCase();
   5923 
   5924           if (this.get('title').toLowerCase().indexOf(value) >= 0) {
   5925             return true;
   5926           }
   5927 
   5928           return _.any(this.get('tags'), function (tag) {
   5929             return tag.toLowerCase().indexOf(value) >= 0;
   5930           });
   5931         }
   5932       },
   5933       type: {},
   5934       subtype: {},
   5935       favorite: {}
   5936     };
   5937   };
   5938 
   5939   this.init = function () {
   5940     registerDefaultTemplateTypes();
   5941     registerDefaultFilterTerms();
   5942     this.component = $e.components.register(new _component.default({
   5943       manager: this
   5944     }));
   5945     elementor.addBackgroundClickListener('libraryToggleMore', {
   5946       element: '.elementor-template-library-template-more'
   5947     });
   5948   };
   5949 
   5950   this.getTemplateTypes = function (type) {
   5951     if (type) {
   5952       return templateTypes[type];
   5953     }
   5954 
   5955     return templateTypes;
   5956   };
   5957 
   5958   this.registerTemplateType = function (type, data) {
   5959     templateTypes[type] = data;
   5960   };
   5961 
   5962   this.deleteTemplate = function (templateModel, options) {
   5963     var dialog = self.getDeleteDialog();
   5964 
   5965     dialog.onConfirm = function () {
   5966       if (options.onConfirm) {
   5967         options.onConfirm();
   5968       }
   5969 
   5970       elementorCommon.ajax.addRequest('delete_template', {
   5971         data: {
   5972           source: templateModel.get('source'),
   5973           template_id: templateModel.get('template_id')
   5974         },
   5975         success: function success(response) {
   5976           templatesCollection.remove(templateModel, {
   5977             silent: true
   5978           });
   5979 
   5980           if (options.onSuccess) {
   5981             options.onSuccess(response);
   5982           }
   5983         }
   5984       });
   5985     };
   5986 
   5987     dialog.show();
   5988   };
   5989 
   5990   this.importTemplate = function (model) {
   5991     var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
   5992     elementorCommon.helpers.softDeprecated('importTemplate', '2.8.0', "$e.run( 'library/insert-template' )");
   5993     args.model = model;
   5994     $e.run('library/insert-template', args);
   5995   };
   5996 
   5997   this.saveTemplate = function (type, data) {
   5998     var templateType = templateTypes[type];
   5999 
   6000     _.extend(data, {
   6001       source: 'local',
   6002       type: type
   6003     });
   6004 
   6005     if (templateType.prepareSavedData) {
   6006       data = templateType.prepareSavedData(data);
   6007     }
   6008 
   6009     data.content = (0, _stringify.default)(data.content);
   6010     var ajaxParams = {
   6011       data: data
   6012     };
   6013 
   6014     if (templateType.ajaxParams) {
   6015       _.extend(ajaxParams, templateType.ajaxParams);
   6016     }
   6017 
   6018     elementorCommon.ajax.addRequest('save_template', ajaxParams);
   6019   };
   6020 
   6021   this.requestTemplateContent = function (source, id, ajaxOptions) {
   6022     var options = {
   6023       unique_id: id,
   6024       data: {
   6025         source: source,
   6026         edit_mode: true,
   6027         display: true,
   6028         template_id: id
   6029       }
   6030     };
   6031 
   6032     if (ajaxOptions) {
   6033       jQuery.extend(true, options, ajaxOptions);
   6034     }
   6035 
   6036     return elementorCommon.ajax.addRequest('get_template_data', options);
   6037   };
   6038 
   6039   this.markAsFavorite = function (templateModel, favorite) {
   6040     var options = {
   6041       data: {
   6042         source: templateModel.get('source'),
   6043         template_id: templateModel.get('template_id'),
   6044         favorite: favorite
   6045       }
   6046     };
   6047     return elementorCommon.ajax.addRequest('mark_template_as_favorite', options);
   6048   };
   6049 
   6050   this.getDeleteDialog = function () {
   6051     if (!deleteDialog) {
   6052       deleteDialog = elementorCommon.dialogsManager.createWidget('confirm', {
   6053         id: 'elementor-template-library-delete-dialog',
   6054         headerMessage: __('Delete Template', 'elementor'),
   6055         message: __('Are you sure you want to delete this template?', 'elementor'),
   6056         strings: {
   6057           confirm: __('Delete', 'elementor')
   6058         }
   6059       });
   6060     }
   6061 
   6062     return deleteDialog;
   6063   };
   6064 
   6065   this.getErrorDialog = function () {
   6066     if (!errorDialog) {
   6067       errorDialog = elementorCommon.dialogsManager.createWidget('alert', {
   6068         id: 'elementor-template-library-error-dialog',
   6069         headerMessage: __('An error occurred', 'elementor')
   6070       });
   6071     }
   6072 
   6073     return errorDialog;
   6074   };
   6075 
   6076   this.getTemplatesCollection = function () {
   6077     return templatesCollection;
   6078   };
   6079 
   6080   this.getConfig = function (item) {
   6081     if (item) {
   6082       return config[item] ? config[item] : {};
   6083     }
   6084 
   6085     return config;
   6086   };
   6087 
   6088   this.requestLibraryData = function (options) {
   6089     if (templatesCollection && !options.forceUpdate) {
   6090       if (options.onUpdate) {
   6091         options.onUpdate();
   6092       }
   6093 
   6094       return;
   6095     }
   6096 
   6097     if (options.onBeforeUpdate) {
   6098       options.onBeforeUpdate();
   6099     }
   6100 
   6101     var ajaxOptions = {
   6102       data: {},
   6103       success: function success(data) {
   6104         templatesCollection = new TemplateLibraryCollection(data.templates);
   6105 
   6106         if (data.config) {
   6107           config = data.config;
   6108         }
   6109 
   6110         if (options.onUpdate) {
   6111           options.onUpdate();
   6112         }
   6113       }
   6114     };
   6115 
   6116     if (options.forceSync) {
   6117       ajaxOptions.data.sync = true;
   6118     }
   6119 
   6120     elementorCommon.ajax.addRequest('get_library_data', ajaxOptions);
   6121   };
   6122 
   6123   this.getFilter = function (name) {
   6124     return elementor.channels.templates.request('filter:' + name);
   6125   };
   6126 
   6127   this.setFilter = function (name, value, silent) {
   6128     elementor.channels.templates.reply('filter:' + name, value);
   6129 
   6130     if (!silent) {
   6131       elementor.channels.templates.trigger('filter:change');
   6132     }
   6133   };
   6134 
   6135   this.getFilterTerms = function (termName) {
   6136     if (termName) {
   6137       return filterTerms[termName];
   6138     }
   6139 
   6140     return filterTerms;
   6141   };
   6142 
   6143   this.setScreen = function (args) {
   6144     elementor.channels.templates.stopReplying();
   6145     self.setFilter('source', args.source, true);
   6146     self.setFilter('type', args.type, true);
   6147     self.setFilter('subtype', args.subtype, true);
   6148     self.showTemplates();
   6149   };
   6150 
   6151   this.loadTemplates = function (_onUpdate) {
   6152     self.requestLibraryData({
   6153       onBeforeUpdate: self.layout.showLoadingView.bind(self.layout),
   6154       onUpdate: function onUpdate() {
   6155         self.layout.hideLoadingView();
   6156 
   6157         if (_onUpdate) {
   6158           _onUpdate();
   6159         }
   6160       }
   6161     });
   6162   };
   6163 
   6164   this.showTemplates = function () {
   6165     // The tabs should exist in DOM on loading.
   6166     self.layout.setHeaderDefaultParts();
   6167     self.loadTemplates(function () {
   6168       var templatesToShow = self.filterTemplates();
   6169       self.layout.showTemplatesView(new TemplateLibraryCollection(templatesToShow));
   6170     });
   6171   };
   6172 
   6173   this.filterTemplates = function () {
   6174     var activeSource = self.getFilter('source');
   6175     return templatesCollection.filter(function (model) {
   6176       if (activeSource !== model.get('source')) {
   6177         return false;
   6178       }
   6179 
   6180       var typeInfo = templateTypes[model.get('type')];
   6181       return !typeInfo || false !== typeInfo.showInLibrary;
   6182     });
   6183   };
   6184 
   6185   this.showErrorDialog = function (errorMessage) {
   6186     if ('object' === (0, _typeof2.default)(errorMessage)) {
   6187       var message = '';
   6188 
   6189       _.each(errorMessage, function (error) {
   6190         if (!(error !== null && error !== void 0 && error.message)) {
   6191           return;
   6192         }
   6193 
   6194         message += '<div>' + error.message + '.</div>';
   6195       });
   6196 
   6197       errorMessage = message;
   6198     } else if (errorMessage) {
   6199       errorMessage += '.';
   6200     }
   6201 
   6202     if (errorMessage) {
   6203       errorMessage = __('The following error(s) occurred while processing the request:', 'elementor') + '<div id="elementor-template-library-error-info">' + errorMessage + '</div>';
   6204     } else {
   6205       errorMessage = __('Please try again.', 'elementor');
   6206     }
   6207 
   6208     self.getErrorDialog().setMessage(errorMessage).show();
   6209   };
   6210 };
   6211 
   6212 module.exports = new TemplateLibraryManager();
   6213 
   6214 /***/ }),
   6215 
   6216 /***/ "../assets/dev/js/editor/components/template-library/models/template.js":
   6217 /*!******************************************************************************!*\
   6218   !*** ../assets/dev/js/editor/components/template-library/models/template.js ***!
   6219   \******************************************************************************/
   6220 /***/ ((module) => {
   6221 
   6222 "use strict";
   6223 
   6224 
   6225 module.exports = Backbone.Model.extend({
   6226   defaults: {
   6227     template_id: 0,
   6228     title: '',
   6229     source: '',
   6230     type: '',
   6231     subtype: '',
   6232     author: '',
   6233     thumbnail: '',
   6234     url: '',
   6235     export_link: '',
   6236     tags: []
   6237   }
   6238 });
   6239 
   6240 /***/ }),
   6241 
   6242 /***/ "../assets/dev/js/editor/components/template-library/views/library-layout.js":
   6243 /*!***********************************************************************************!*\
   6244   !*** ../assets/dev/js/editor/components/template-library/views/library-layout.js ***!
   6245   \***********************************************************************************/
   6246 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   6247 
   6248 "use strict";
   6249 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   6250 
   6251 
   6252 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   6253 
   6254 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
   6255 
   6256 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
   6257 
   6258 var TemplateLibraryHeaderActionsView = __webpack_require__(/*! elementor-templates/views/parts/header-parts/actions */ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/actions.js"),
   6259     TemplateLibraryHeaderMenuView = __webpack_require__(/*! elementor-templates/views/parts/header-parts/menu */ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/menu.js"),
   6260     TemplateLibraryHeaderPreviewView = __webpack_require__(/*! elementor-templates/views/parts/header-parts/preview */ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/preview.js"),
   6261     TemplateLibraryHeaderBackView = __webpack_require__(/*! elementor-templates/views/parts/header-parts/back */ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/back.js"),
   6262     TemplateLibraryCollectionView = __webpack_require__(/*! elementor-templates/views/parts/templates */ "../assets/dev/js/editor/components/template-library/views/parts/templates.js"),
   6263     TemplateLibrarySaveTemplateView = __webpack_require__(/*! elementor-templates/views/parts/save-template */ "../assets/dev/js/editor/components/template-library/views/parts/save-template.js"),
   6264     TemplateLibraryImportView = __webpack_require__(/*! elementor-templates/views/parts/import */ "../assets/dev/js/editor/components/template-library/views/parts/import.js"),
   6265     TemplateLibraryConnectView = __webpack_require__(/*! elementor-templates/views/parts/connect */ "../assets/dev/js/editor/components/template-library/views/parts/connect.js"),
   6266     TemplateLibraryPreviewView = __webpack_require__(/*! elementor-templates/views/parts/preview */ "../assets/dev/js/editor/components/template-library/views/parts/preview.js");
   6267 
   6268 module.exports = elementorModules.common.views.modal.Layout.extend({
   6269   getModalOptions: function getModalOptions() {
   6270     return {
   6271       id: 'elementor-template-library-modal'
   6272     };
   6273   },
   6274   getLogoOptions: function getLogoOptions() {
   6275     return {
   6276       title: __('Library', 'elementor'),
   6277       click: function click() {
   6278         $e.run('library/open', {
   6279           toDefault: true
   6280         });
   6281       }
   6282     };
   6283   },
   6284   getTemplateActionButton: function getTemplateActionButton(templateData) {
   6285     var subscriptionPlans = elementor.config.library_connect.subscription_plans,
   6286         baseAccessLevel = elementor.config.library_connect.base_access_level;
   6287     var viewId = '#tmpl-elementor-template-library-' + (baseAccessLevel !== templateData.accessLevel ? 'upgrade-plan-button' : 'insert-button');
   6288     viewId = elementor.hooks.applyFilters('elementor/editor/template-library/template/action-button', viewId, templateData);
   6289     var template = Marionette.TemplateCache.get(viewId); // In case the access level of the template is not one of the defined.
   6290     // it will find the next access level that was defined.
   6291     // Example: access_level = 15, and access_level 15 is not exists in the plans the button will be "Go Expert" which is 20
   6292 
   6293     var closestAccessLevel = (0, _keys.default)(subscriptionPlans).sort().find(function (accessLevel) {
   6294       return accessLevel >= templateData.accessLevel;
   6295     });
   6296     var subscriptionPlan = subscriptionPlans[closestAccessLevel];
   6297     return Marionette.Renderer.render(template, {
   6298       promotionText: "Go ".concat(subscriptionPlan.label),
   6299       promotionLink: subscriptionPlan.promotion_url
   6300     });
   6301   },
   6302   setHeaderDefaultParts: function setHeaderDefaultParts() {
   6303     var headerView = this.getHeaderView();
   6304     headerView.tools.show(new TemplateLibraryHeaderActionsView());
   6305     headerView.menuArea.show(new TemplateLibraryHeaderMenuView());
   6306     this.showLogo();
   6307   },
   6308   showTemplatesView: function showTemplatesView(templatesCollection) {
   6309     this.modalContent.show(new TemplateLibraryCollectionView({
   6310       collection: templatesCollection
   6311     }));
   6312   },
   6313   showImportView: function showImportView() {
   6314     var headerView = this.getHeaderView();
   6315     headerView.menuArea.reset();
   6316     this.modalContent.show(new TemplateLibraryImportView());
   6317     headerView.logoArea.show(new TemplateLibraryHeaderBackView());
   6318   },
   6319   showConnectView: function showConnectView(args) {
   6320     this.getHeaderView().menuArea.reset();
   6321     this.modalContent.show(new TemplateLibraryConnectView(args));
   6322   },
   6323   showSaveTemplateView: function showSaveTemplateView(elementModel) {
   6324     this.getHeaderView().menuArea.reset();
   6325     this.modalContent.show(new TemplateLibrarySaveTemplateView({
   6326       model: elementModel
   6327     }));
   6328   },
   6329   showPreviewView: function showPreviewView(templateModel) {
   6330     this.modalContent.show(new TemplateLibraryPreviewView({
   6331       url: templateModel.get('url')
   6332     }));
   6333     var headerView = this.getHeaderView();
   6334     headerView.menuArea.reset();
   6335     headerView.tools.show(new TemplateLibraryHeaderPreviewView({
   6336       model: templateModel
   6337     }));
   6338     headerView.logoArea.show(new TemplateLibraryHeaderBackView());
   6339   }
   6340 });
   6341 
   6342 /***/ }),
   6343 
   6344 /***/ "../assets/dev/js/editor/components/template-library/views/parts/connect.js":
   6345 /*!**********************************************************************************!*\
   6346   !*** ../assets/dev/js/editor/components/template-library/views/parts/connect.js ***!
   6347   \**********************************************************************************/
   6348 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   6349 
   6350 "use strict";
   6351 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   6352 
   6353 
   6354 module.exports = Marionette.ItemView.extend({
   6355   template: '#tmpl-elementor-template-library-connect',
   6356   id: 'elementor-template-library-connect',
   6357   ui: {
   6358     connect: '#elementor-template-library-connect__button',
   6359     thumbnails: '#elementor-template-library-connect-thumbnails'
   6360   },
   6361   templateHelpers: function templateHelpers() {
   6362     return this.getOption('texts');
   6363   },
   6364   onRender: function onRender() {
   6365     var _this = this;
   6366 
   6367     this.ui.connect.elementorConnect({
   6368       UTM: function UTM() {
   6369         return "&utm_source=editor-panel&utm_medium=wp-dash&utm_campaign=insert-".concat(_this.model.get('type'));
   6370       },
   6371       success: function success() {
   6372         elementor.config.library_connect.is_connected = true; // If is connecting during insert template.
   6373 
   6374         if (_this.getOption('model')) {
   6375           $e.run('library/insert-template', {
   6376             model: _this.getOption('model')
   6377           });
   6378         } else {
   6379           $e.run('library/close');
   6380           elementor.notifications.showToast({
   6381             message: __('Connected successfully', 'elementor')
   6382           });
   6383         }
   6384       },
   6385       error: function error() {
   6386         elementor.config.library_connect.is_connected = false;
   6387       }
   6388     });
   6389   }
   6390 });
   6391 
   6392 /***/ }),
   6393 
   6394 /***/ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/actions.js":
   6395 /*!***********************************************************************************************!*\
   6396   !*** ../assets/dev/js/editor/components/template-library/views/parts/header-parts/actions.js ***!
   6397   \***********************************************************************************************/
   6398 /***/ ((module) => {
   6399 
   6400 "use strict";
   6401 
   6402 
   6403 module.exports = Marionette.ItemView.extend({
   6404   template: '#tmpl-elementor-template-library-header-actions',
   6405   id: 'elementor-template-library-header-actions',
   6406   ui: {
   6407     import: '#elementor-template-library-header-import i',
   6408     sync: '#elementor-template-library-header-sync i',
   6409     save: '#elementor-template-library-header-save i'
   6410   },
   6411   events: {
   6412     'click @ui.import': 'onImportClick',
   6413     'click @ui.sync': 'onSyncClick',
   6414     'click @ui.save': 'onSaveClick'
   6415   },
   6416   onImportClick: function onImportClick() {
   6417     $e.route('library/import');
   6418   },
   6419   onSyncClick: function onSyncClick() {
   6420     var self = this;
   6421     self.ui.sync.addClass('eicon-animation-spin');
   6422     elementor.templates.requestLibraryData({
   6423       onUpdate: function onUpdate() {
   6424         self.ui.sync.removeClass('eicon-animation-spin');
   6425         $e.routes.refreshContainer('library');
   6426       },
   6427       forceUpdate: true,
   6428       forceSync: true
   6429     });
   6430   },
   6431   onSaveClick: function onSaveClick() {
   6432     $e.route('library/save-template');
   6433   }
   6434 });
   6435 
   6436 /***/ }),
   6437 
   6438 /***/ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/back.js":
   6439 /*!********************************************************************************************!*\
   6440   !*** ../assets/dev/js/editor/components/template-library/views/parts/header-parts/back.js ***!
   6441   \********************************************************************************************/
   6442 /***/ ((module) => {
   6443 
   6444 "use strict";
   6445 
   6446 
   6447 module.exports = Marionette.ItemView.extend({
   6448   template: '#tmpl-elementor-template-library-header-back',
   6449   id: 'elementor-template-library-header-preview-back',
   6450   events: {
   6451     click: 'onClick'
   6452   },
   6453   onClick: function onClick() {
   6454     $e.routes.restoreState('library');
   6455   }
   6456 });
   6457 
   6458 /***/ }),
   6459 
   6460 /***/ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/menu.js":
   6461 /*!********************************************************************************************!*\
   6462   !*** ../assets/dev/js/editor/components/template-library/views/parts/header-parts/menu.js ***!
   6463   \********************************************************************************************/
   6464 /***/ ((module) => {
   6465 
   6466 "use strict";
   6467 
   6468 
   6469 module.exports = Marionette.ItemView.extend({
   6470   template: '#tmpl-elementor-template-library-header-menu',
   6471   id: 'elementor-template-library-header-menu',
   6472   templateHelpers: function templateHelpers() {
   6473     return {
   6474       tabs: $e.components.get('library').getTabs()
   6475     };
   6476   }
   6477 });
   6478 
   6479 /***/ }),
   6480 
   6481 /***/ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/preview.js":
   6482 /*!***********************************************************************************************!*\
   6483   !*** ../assets/dev/js/editor/components/template-library/views/parts/header-parts/preview.js ***!
   6484   \***********************************************************************************************/
   6485 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   6486 
   6487 "use strict";
   6488 
   6489 
   6490 var TemplateLibraryInsertTemplateBehavior = __webpack_require__(/*! elementor-templates/behaviors/insert-template */ "../assets/dev/js/editor/components/template-library/behaviors/insert-template.js");
   6491 
   6492 module.exports = Marionette.ItemView.extend({
   6493   template: '#tmpl-elementor-template-library-header-preview',
   6494   id: 'elementor-template-library-header-preview',
   6495   behaviors: {
   6496     insertTemplate: {
   6497       behaviorClass: TemplateLibraryInsertTemplateBehavior
   6498     }
   6499   }
   6500 });
   6501 
   6502 /***/ }),
   6503 
   6504 /***/ "../assets/dev/js/editor/components/template-library/views/parts/import.js":
   6505 /*!*********************************************************************************!*\
   6506   !*** ../assets/dev/js/editor/components/template-library/views/parts/import.js ***!
   6507   \*********************************************************************************/
   6508 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   6509 
   6510 "use strict";
   6511 
   6512 
   6513 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
   6514 
   6515 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
   6516 
   6517 var TemplateLibraryImportView;
   6518 TemplateLibraryImportView = Marionette.ItemView.extend({
   6519   template: '#tmpl-elementor-template-library-import',
   6520   id: 'elementor-template-library-import',
   6521   ui: {
   6522     uploadForm: '#elementor-template-library-import-form',
   6523     fileInput: '#elementor-template-library-import-form-input'
   6524   },
   6525   events: {
   6526     'change @ui.fileInput': 'onFileInputChange'
   6527   },
   6528   droppedFiles: null,
   6529   submitForm: function submitForm() {
   6530     var _this = this;
   6531 
   6532     var file;
   6533 
   6534     if (this.droppedFiles) {
   6535       file = this.droppedFiles[0];
   6536       this.droppedFiles = null;
   6537     } else {
   6538       file = this.ui.fileInput[0].files[0];
   6539       this.ui.uploadForm[0].reset();
   6540     }
   6541 
   6542     var fileReader = new FileReader();
   6543 
   6544     fileReader.onload = function (event) {
   6545       return _this.importTemplate(file.name, event.target.result.replace(/^[^,]+,/, ''));
   6546     };
   6547 
   6548     fileReader.readAsDataURL(file);
   6549   },
   6550   importTemplate: function importTemplate(fileName, fileData) {
   6551     var layout = elementor.templates.layout;
   6552     var options = {
   6553       data: {
   6554         fileName: fileName,
   6555         fileData: fileData
   6556       },
   6557       success: function success(successData) {
   6558         elementor.templates.getTemplatesCollection().add(successData);
   6559         $e.route('library/templates/my-templates');
   6560       },
   6561       error: function error(errorData) {
   6562         elementor.templates.showErrorDialog(errorData);
   6563         layout.showImportView();
   6564       },
   6565       complete: function complete() {
   6566         layout.hideLoadingView();
   6567       }
   6568     };
   6569     elementorCommon.ajax.addRequest('import_template', options);
   6570     layout.showLoadingView();
   6571   },
   6572   onRender: function onRender() {
   6573     this.ui.uploadForm.on({
   6574       'drag dragstart dragend dragover dragenter dragleave drop': this.onFormActions.bind(this),
   6575       dragenter: this.onFormDragEnter.bind(this),
   6576       'dragleave drop': this.onFormDragLeave.bind(this),
   6577       drop: this.onFormDrop.bind(this)
   6578     });
   6579   },
   6580   onFormActions: function onFormActions(event) {
   6581     event.preventDefault();
   6582     event.stopPropagation();
   6583   },
   6584   onFormDragEnter: function onFormDragEnter() {
   6585     this.ui.uploadForm.addClass('elementor-drag-over');
   6586   },
   6587   onFormDragLeave: function onFormDragLeave(event) {
   6588     if (jQuery(event.relatedTarget).closest(this.ui.uploadForm).length) {
   6589       return;
   6590     }
   6591 
   6592     this.ui.uploadForm.removeClass('elementor-drag-over');
   6593   },
   6594   onFormDrop: function onFormDrop(event) {
   6595     this.droppedFiles = event.originalEvent.dataTransfer.files;
   6596     this.submitForm();
   6597   },
   6598   onFileInputChange: function onFileInputChange() {
   6599     this.submitForm();
   6600   }
   6601 });
   6602 module.exports = TemplateLibraryImportView;
   6603 
   6604 /***/ }),
   6605 
   6606 /***/ "../assets/dev/js/editor/components/template-library/views/parts/preview.js":
   6607 /*!**********************************************************************************!*\
   6608   !*** ../assets/dev/js/editor/components/template-library/views/parts/preview.js ***!
   6609   \**********************************************************************************/
   6610 /***/ ((module) => {
   6611 
   6612 "use strict";
   6613 
   6614 
   6615 var TemplateLibraryPreviewView;
   6616 TemplateLibraryPreviewView = Marionette.ItemView.extend({
   6617   template: '#tmpl-elementor-template-library-preview',
   6618   id: 'elementor-template-library-preview',
   6619   ui: {
   6620     iframe: '> iframe'
   6621   },
   6622   onRender: function onRender() {
   6623     this.ui.iframe.attr('src', this.getOption('url'));
   6624   }
   6625 });
   6626 module.exports = TemplateLibraryPreviewView;
   6627 
   6628 /***/ }),
   6629 
   6630 /***/ "../assets/dev/js/editor/components/template-library/views/parts/save-template.js":
   6631 /*!****************************************************************************************!*\
   6632   !*** ../assets/dev/js/editor/components/template-library/views/parts/save-template.js ***!
   6633   \****************************************************************************************/
   6634 /***/ ((module) => {
   6635 
   6636 "use strict";
   6637 
   6638 
   6639 var TemplateLibrarySaveTemplateView;
   6640 TemplateLibrarySaveTemplateView = Marionette.ItemView.extend({
   6641   id: 'elementor-template-library-save-template',
   6642   template: '#tmpl-elementor-template-library-save-template',
   6643   ui: {
   6644     form: '#elementor-template-library-save-template-form',
   6645     submitButton: '#elementor-template-library-save-template-submit'
   6646   },
   6647   events: {
   6648     'submit @ui.form': 'onFormSubmit'
   6649   },
   6650   getSaveType: function getSaveType() {
   6651     var type;
   6652 
   6653     if (this.model) {
   6654       type = this.model.get('elType');
   6655     } else if (elementor.config.document.library && elementor.config.document.library.save_as_same_type) {
   6656       type = elementor.config.document.type;
   6657     } else {
   6658       type = 'page';
   6659     }
   6660 
   6661     return type;
   6662   },
   6663   templateHelpers: function templateHelpers() {
   6664     var saveType = this.getSaveType(),
   6665         templateType = elementor.templates.getTemplateTypes(saveType);
   6666     return templateType.saveDialog;
   6667   },
   6668   onFormSubmit: function onFormSubmit(event) {
   6669     event.preventDefault();
   6670     var formData = this.ui.form.elementorSerializeObject(),
   6671         saveType = this.getSaveType(),
   6672         JSONParams = {
   6673       remove: ['default']
   6674     };
   6675     formData.content = this.model ? [this.model.toJSON(JSONParams)] : elementor.elements.toJSON(JSONParams);
   6676     this.ui.submitButton.addClass('elementor-button-state');
   6677     elementor.templates.saveTemplate(saveType, formData);
   6678   }
   6679 });
   6680 module.exports = TemplateLibrarySaveTemplateView;
   6681 
   6682 /***/ }),
   6683 
   6684 /***/ "../assets/dev/js/editor/components/template-library/views/parts/templates-empty.js":
   6685 /*!******************************************************************************************!*\
   6686   !*** ../assets/dev/js/editor/components/template-library/views/parts/templates-empty.js ***!
   6687   \******************************************************************************************/
   6688 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   6689 
   6690 "use strict";
   6691 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   6692 
   6693 
   6694 var TemplateLibraryTemplatesEmptyView;
   6695 TemplateLibraryTemplatesEmptyView = Marionette.ItemView.extend({
   6696   id: 'elementor-template-library-templates-empty',
   6697   template: '#tmpl-elementor-template-library-templates-empty',
   6698   ui: {
   6699     title: '.elementor-template-library-blank-title',
   6700     message: '.elementor-template-library-blank-message'
   6701   },
   6702   modesStrings: {
   6703     empty: {
   6704       title: __('Haven’t Saved Templates Yet?', 'elementor'),
   6705       message: __('This is where your templates should be. Design it. Save it. Reuse it.', 'elementor')
   6706     },
   6707     noResults: {
   6708       title: __('No Results Found', 'elementor'),
   6709       message: __('Please make sure your search is spelled correctly or try a different words.', 'elementor')
   6710     },
   6711     noFavorites: {
   6712       title: __('No Favorite Templates', 'elementor'),
   6713       message: __('You can mark any pre-designed template as a favorite.', 'elementor')
   6714     }
   6715   },
   6716   getCurrentMode: function getCurrentMode() {
   6717     if (elementor.templates.getFilter('text')) {
   6718       return 'noResults';
   6719     }
   6720 
   6721     if (elementor.templates.getFilter('favorite')) {
   6722       return 'noFavorites';
   6723     }
   6724 
   6725     return 'empty';
   6726   },
   6727   onRender: function onRender() {
   6728     var modeStrings = this.modesStrings[this.getCurrentMode()];
   6729     this.ui.title.html(modeStrings.title);
   6730     this.ui.message.html(modeStrings.message);
   6731   }
   6732 });
   6733 module.exports = TemplateLibraryTemplatesEmptyView;
   6734 
   6735 /***/ }),
   6736 
   6737 /***/ "../assets/dev/js/editor/components/template-library/views/parts/templates.js":
   6738 /*!************************************************************************************!*\
   6739   !*** ../assets/dev/js/editor/components/template-library/views/parts/templates.js ***!
   6740   \************************************************************************************/
   6741 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   6742 
   6743 "use strict";
   6744 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   6745 
   6746 
   6747 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   6748 
   6749 var _select = _interopRequireDefault(__webpack_require__(/*! elementor-editor-utils/select2.js */ "../assets/dev/js/editor/utils/select2.js"));
   6750 
   6751 var TemplateLibraryTemplateLocalView = __webpack_require__(/*! elementor-templates/views/template/local */ "../assets/dev/js/editor/components/template-library/views/template/local.js"),
   6752     TemplateLibraryTemplateRemoteView = __webpack_require__(/*! elementor-templates/views/template/remote */ "../assets/dev/js/editor/components/template-library/views/template/remote.js"),
   6753     TemplateLibraryCollectionView;
   6754 
   6755 TemplateLibraryCollectionView = Marionette.CompositeView.extend({
   6756   template: '#tmpl-elementor-template-library-templates',
   6757   id: 'elementor-template-library-templates',
   6758   childViewContainer: '#elementor-template-library-templates-container',
   6759   reorderOnSort: true,
   6760   emptyView: function emptyView() {
   6761     var EmptyView = __webpack_require__(/*! elementor-templates/views/parts/templates-empty */ "../assets/dev/js/editor/components/template-library/views/parts/templates-empty.js");
   6762 
   6763     return new EmptyView();
   6764   },
   6765   ui: {
   6766     textFilter: '#elementor-template-library-filter-text',
   6767     selectFilter: '.elementor-template-library-filter-select',
   6768     myFavoritesFilter: '#elementor-template-library-filter-my-favorites',
   6769     orderInputs: '.elementor-template-library-order-input',
   6770     orderLabels: 'label.elementor-template-library-order-label'
   6771   },
   6772   events: {
   6773     'input @ui.textFilter': 'onTextFilterInput',
   6774     'change @ui.selectFilter': 'onSelectFilterChange',
   6775     'change @ui.myFavoritesFilter': 'onMyFavoritesFilterChange',
   6776     'mousedown @ui.orderLabels': 'onOrderLabelsClick'
   6777   },
   6778   comparators: {
   6779     title: function title(model) {
   6780       return model.get('title').toLowerCase();
   6781     },
   6782     popularityIndex: function popularityIndex(model) {
   6783       var popularityIndex = model.get('popularityIndex');
   6784 
   6785       if (!popularityIndex) {
   6786         popularityIndex = model.get('date');
   6787       }
   6788 
   6789       return -popularityIndex;
   6790     },
   6791     trendIndex: function trendIndex(model) {
   6792       var trendIndex = model.get('trendIndex');
   6793 
   6794       if (!trendIndex) {
   6795         trendIndex = model.get('date');
   6796       }
   6797 
   6798       return -trendIndex;
   6799     }
   6800   },
   6801   getChildView: function getChildView(childModel) {
   6802     if ('remote' === childModel.get('source')) {
   6803       return TemplateLibraryTemplateRemoteView;
   6804     }
   6805 
   6806     return TemplateLibraryTemplateLocalView;
   6807   },
   6808   initialize: function initialize() {
   6809     this.listenTo(elementor.channels.templates, 'filter:change', this._renderChildren);
   6810   },
   6811   filter: function filter(childModel) {
   6812     var filterTerms = elementor.templates.getFilterTerms(),
   6813         passingFilter = true;
   6814     jQuery.each(filterTerms, function (filterTermName) {
   6815       var filterValue = elementor.templates.getFilter(filterTermName);
   6816 
   6817       if (!filterValue) {
   6818         return;
   6819       }
   6820 
   6821       if (this.callback) {
   6822         var callbackResult = this.callback.call(childModel, filterValue);
   6823 
   6824         if (!callbackResult) {
   6825           passingFilter = false;
   6826         }
   6827 
   6828         return callbackResult;
   6829       }
   6830 
   6831       var filterResult = filterValue === childModel.get(filterTermName);
   6832 
   6833       if (!filterResult) {
   6834         passingFilter = false;
   6835       }
   6836 
   6837       return filterResult;
   6838     });
   6839     return passingFilter;
   6840   },
   6841   order: function order(by, reverseOrder) {
   6842     var comparator = this.comparators[by] || by;
   6843 
   6844     if (reverseOrder) {
   6845       comparator = this.reverseOrder(comparator);
   6846     }
   6847 
   6848     this.collection.comparator = comparator;
   6849     this.collection.sort();
   6850   },
   6851   reverseOrder: function reverseOrder(comparator) {
   6852     if ('function' !== typeof comparator) {
   6853       var comparatorValue = comparator;
   6854 
   6855       comparator = function comparator(model) {
   6856         return model.get(comparatorValue);
   6857       };
   6858     }
   6859 
   6860     return function (left, right) {
   6861       var l = comparator(left),
   6862           r = comparator(right);
   6863 
   6864       if (undefined === l) {
   6865         return -1;
   6866       }
   6867 
   6868       if (undefined === r) {
   6869         return 1;
   6870       }
   6871 
   6872       if (l < r) {
   6873         return 1;
   6874       }
   6875 
   6876       if (l > r) {
   6877         return -1;
   6878       }
   6879 
   6880       return 0;
   6881     };
   6882   },
   6883   addSourceData: function addSourceData() {
   6884     var isEmpty = this.children.isEmpty();
   6885     this.$el.attr('data-template-source', isEmpty ? 'empty' : elementor.templates.getFilter('source'));
   6886   },
   6887   setFiltersUI: function setFiltersUI() {
   6888     if (!this.select2Instance) {
   6889       var $filters = this.$(this.ui.selectFilter),
   6890           select2Options = {
   6891         placeholder: __('Category', 'elementor'),
   6892         allowClear: true,
   6893         width: 150,
   6894         dropdownParent: this.$el
   6895       };
   6896       this.select2Instance = new _select.default({
   6897         $element: $filters,
   6898         options: select2Options
   6899       });
   6900     }
   6901   },
   6902   setMasonrySkin: function setMasonrySkin() {
   6903     var masonry = new elementorModules.utils.Masonry({
   6904       container: this.$childViewContainer,
   6905       items: this.$childViewContainer.children()
   6906     });
   6907     this.$childViewContainer.imagesLoaded(masonry.run.bind(masonry));
   6908   },
   6909   toggleFilterClass: function toggleFilterClass() {
   6910     this.$el.toggleClass('elementor-templates-filter-active', !!(elementor.templates.getFilter('text') || elementor.templates.getFilter('favorite')));
   6911   },
   6912   isPageOrLandingPageTemplates: function isPageOrLandingPageTemplates() {
   6913     var templatesType = elementor.templates.getFilter('type');
   6914     return 'page' === templatesType || 'lp' === templatesType;
   6915   },
   6916   onRender: function onRender() {
   6917     if ('remote' === elementor.templates.getFilter('source') && 'page' !== elementor.templates.getFilter('type')) {
   6918       this.setFiltersUI();
   6919     }
   6920   },
   6921   onRenderCollection: function onRenderCollection() {
   6922     this.addSourceData();
   6923     this.toggleFilterClass();
   6924 
   6925     if ('remote' === elementor.templates.getFilter('source') && !this.isPageOrLandingPageTemplates()) {
   6926       this.setMasonrySkin();
   6927     }
   6928   },
   6929   onBeforeRenderEmpty: function onBeforeRenderEmpty() {
   6930     this.addSourceData();
   6931   },
   6932   onTextFilterInput: function onTextFilterInput() {
   6933     elementor.templates.setFilter('text', this.ui.textFilter.val());
   6934   },
   6935   onSelectFilterChange: function onSelectFilterChange(event) {
   6936     var $select = jQuery(event.currentTarget),
   6937         filterName = $select.data('elementor-filter');
   6938     elementor.templates.setFilter(filterName, $select.val());
   6939   },
   6940   onMyFavoritesFilterChange: function onMyFavoritesFilterChange() {
   6941     elementor.templates.setFilter('favorite', this.ui.myFavoritesFilter[0].checked);
   6942   },
   6943   onOrderLabelsClick: function onOrderLabelsClick(event) {
   6944     var $clickedInput = jQuery(event.currentTarget.control),
   6945         toggle;
   6946 
   6947     if (!$clickedInput[0].checked) {
   6948       toggle = 'asc' !== $clickedInput.data('default-ordering-direction');
   6949     }
   6950 
   6951     $clickedInput.toggleClass('elementor-template-library-order-reverse', toggle);
   6952     this.order($clickedInput.val(), $clickedInput.hasClass('elementor-template-library-order-reverse'));
   6953   }
   6954 });
   6955 module.exports = TemplateLibraryCollectionView;
   6956 
   6957 /***/ }),
   6958 
   6959 /***/ "../assets/dev/js/editor/components/template-library/views/template/base.js":
   6960 /*!**********************************************************************************!*\
   6961   !*** ../assets/dev/js/editor/components/template-library/views/template/base.js ***!
   6962   \**********************************************************************************/
   6963 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   6964 
   6965 "use strict";
   6966 
   6967 
   6968 var TemplateLibraryInsertTemplateBehavior = __webpack_require__(/*! elementor-templates/behaviors/insert-template */ "../assets/dev/js/editor/components/template-library/behaviors/insert-template.js"),
   6969     TemplateLibraryTemplateView;
   6970 
   6971 TemplateLibraryTemplateView = Marionette.ItemView.extend({
   6972   className: function className() {
   6973     var classes = 'elementor-template-library-template',
   6974         source = this.model.get('source');
   6975     classes += ' elementor-template-library-template-' + source;
   6976 
   6977     if ('remote' === source) {
   6978       classes += ' elementor-template-library-template-' + this.model.get('type');
   6979     }
   6980 
   6981     if (elementor.config.library_connect.base_access_level !== this.model.get('accessLevel')) {
   6982       classes += ' elementor-template-library-pro-template';
   6983     }
   6984 
   6985     return classes;
   6986   },
   6987   attributes: function attributes() {
   6988     var subscriptionPlan = elementor.config.library_connect.subscription_plans[this.model.get('accessLevel')];
   6989 
   6990     if (!subscriptionPlan) {
   6991       return {};
   6992     }
   6993 
   6994     return {
   6995       style: "--elementor-template-library-subscription-plan-label: \"".concat(subscriptionPlan.label, "\";--elementor-template-library-subscription-plan-color: ").concat(subscriptionPlan.color, ";")
   6996     };
   6997   },
   6998   ui: function ui() {
   6999     return {
   7000       previewButton: '.elementor-template-library-template-preview'
   7001     };
   7002   },
   7003   events: function events() {
   7004     return {
   7005       'click @ui.previewButton': 'onPreviewButtonClick'
   7006     };
   7007   },
   7008   behaviors: {
   7009     insertTemplate: {
   7010       behaviorClass: TemplateLibraryInsertTemplateBehavior
   7011     }
   7012   }
   7013 });
   7014 module.exports = TemplateLibraryTemplateView;
   7015 
   7016 /***/ }),
   7017 
   7018 /***/ "../assets/dev/js/editor/components/template-library/views/template/local.js":
   7019 /*!***********************************************************************************!*\
   7020   !*** ../assets/dev/js/editor/components/template-library/views/template/local.js ***!
   7021   \***********************************************************************************/
   7022 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   7023 
   7024 "use strict";
   7025 
   7026 
   7027 var TemplateLibraryTemplateView = __webpack_require__(/*! elementor-templates/views/template/base */ "../assets/dev/js/editor/components/template-library/views/template/base.js"),
   7028     TemplateLibraryTemplateLocalView;
   7029 
   7030 TemplateLibraryTemplateLocalView = TemplateLibraryTemplateView.extend({
   7031   template: '#tmpl-elementor-template-library-template-local',
   7032   ui: function ui() {
   7033     return _.extend(TemplateLibraryTemplateView.prototype.ui.apply(this, arguments), {
   7034       deleteButton: '.elementor-template-library-template-delete',
   7035       morePopup: '.elementor-template-library-template-more',
   7036       toggleMore: '.elementor-template-library-template-more-toggle',
   7037       toggleMoreIcon: '.elementor-template-library-template-more-toggle i'
   7038     });
   7039   },
   7040   events: function events() {
   7041     return _.extend(TemplateLibraryTemplateView.prototype.events.apply(this, arguments), {
   7042       'click @ui.deleteButton': 'onDeleteButtonClick',
   7043       'click @ui.toggleMore': 'onToggleMoreClick'
   7044     });
   7045   },
   7046   onDeleteButtonClick: function onDeleteButtonClick() {
   7047     var toggleMoreIcon = this.ui.toggleMoreIcon;
   7048     elementor.templates.deleteTemplate(this.model, {
   7049       onConfirm: function onConfirm() {
   7050         toggleMoreIcon.removeClass('eicon-ellipsis-h').addClass('eicon-loading eicon-animation-spin');
   7051       },
   7052       onSuccess: function onSuccess() {
   7053         elementor.templates.showTemplates();
   7054       }
   7055     });
   7056   },
   7057   onToggleMoreClick: function onToggleMoreClick() {
   7058     this.ui.morePopup.show();
   7059   },
   7060   onPreviewButtonClick: function onPreviewButtonClick() {
   7061     open(this.model.get('url'), '_blank');
   7062   }
   7063 });
   7064 module.exports = TemplateLibraryTemplateLocalView;
   7065 
   7066 /***/ }),
   7067 
   7068 /***/ "../assets/dev/js/editor/components/template-library/views/template/remote.js":
   7069 /*!************************************************************************************!*\
   7070   !*** ../assets/dev/js/editor/components/template-library/views/template/remote.js ***!
   7071   \************************************************************************************/
   7072 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   7073 
   7074 "use strict";
   7075 
   7076 
   7077 var TemplateLibraryTemplateView = __webpack_require__(/*! elementor-templates/views/template/base */ "../assets/dev/js/editor/components/template-library/views/template/base.js"),
   7078     TemplateLibraryTemplateRemoteView;
   7079 
   7080 TemplateLibraryTemplateRemoteView = TemplateLibraryTemplateView.extend({
   7081   template: '#tmpl-elementor-template-library-template-remote',
   7082   ui: function ui() {
   7083     return jQuery.extend(TemplateLibraryTemplateView.prototype.ui.apply(this, arguments), {
   7084       favoriteCheckbox: '.elementor-template-library-template-favorite-input'
   7085     });
   7086   },
   7087   events: function events() {
   7088     return jQuery.extend(TemplateLibraryTemplateView.prototype.events.apply(this, arguments), {
   7089       'change @ui.favoriteCheckbox': 'onFavoriteCheckboxChange'
   7090     });
   7091   },
   7092   onPreviewButtonClick: function onPreviewButtonClick() {
   7093     $e.route('library/preview', {
   7094       model: this.model
   7095     });
   7096   },
   7097   onFavoriteCheckboxChange: function onFavoriteCheckboxChange() {
   7098     var isFavorite = this.ui.favoriteCheckbox[0].checked;
   7099     this.model.set('favorite', isFavorite);
   7100     elementor.templates.markAsFavorite(this.model, isFavorite);
   7101 
   7102     if (!isFavorite && elementor.templates.getFilter('favorite')) {
   7103       elementor.channels.templates.trigger('filter:change');
   7104     }
   7105   }
   7106 });
   7107 module.exports = TemplateLibraryTemplateRemoteView;
   7108 
   7109 /***/ }),
   7110 
   7111 /***/ "../assets/dev/js/editor/components/validator/base.js":
   7112 /*!************************************************************!*\
   7113   !*** ../assets/dev/js/editor/components/validator/base.js ***!
   7114   \************************************************************/
   7115 /***/ ((module) => {
   7116 
   7117 "use strict";
   7118 
   7119 
   7120 module.exports = elementorModules.Module.extend({
   7121   errors: [],
   7122   __construct: function __construct(settings) {
   7123     var customValidationMethod = settings.customValidationMethod;
   7124 
   7125     if (customValidationMethod) {
   7126       this.validationMethod = customValidationMethod;
   7127     }
   7128   },
   7129   getDefaultSettings: function getDefaultSettings() {
   7130     return {
   7131       validationTerms: {}
   7132     };
   7133   },
   7134   isValid: function isValid() {
   7135     var validationErrors = this.validationMethod.apply(this, arguments);
   7136 
   7137     if (validationErrors.length) {
   7138       this.errors = validationErrors;
   7139       return false;
   7140     }
   7141 
   7142     return true;
   7143   },
   7144   validationMethod: function validationMethod(newValue) {
   7145     var validationTerms = this.getSettings('validationTerms'),
   7146         errors = [];
   7147 
   7148     if (validationTerms.required) {
   7149       if (!('' + newValue).length) {
   7150         errors.push('Required value is empty');
   7151       }
   7152     }
   7153 
   7154     return errors;
   7155   }
   7156 });
   7157 
   7158 /***/ }),
   7159 
   7160 /***/ "../assets/dev/js/editor/components/validator/breakpoint.js":
   7161 /*!******************************************************************!*\
   7162   !*** ../assets/dev/js/editor/components/validator/breakpoint.js ***!
   7163   \******************************************************************/
   7164 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   7165 
   7166 "use strict";
   7167 
   7168 
   7169 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   7170 
   7171 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   7172 
   7173 _Object$defineProperty(exports, "__esModule", {
   7174   value: true
   7175 });
   7176 
   7177 exports.default = void 0;
   7178 
   7179 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
   7180 
   7181 __webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");
   7182 
   7183 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
   7184 
   7185 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   7186 
   7187 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   7188 
   7189 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   7190 
   7191 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   7192 
   7193 var NumberValidator = __webpack_require__(/*! elementor-validator/number */ "../assets/dev/js/editor/components/validator/number.js");
   7194 
   7195 var BreakpointValidator = /*#__PURE__*/function (_NumberValidator) {
   7196   (0, _inherits2.default)(BreakpointValidator, _NumberValidator);
   7197 
   7198   var _super = (0, _createSuper2.default)(BreakpointValidator);
   7199 
   7200   function BreakpointValidator() {
   7201     (0, _classCallCheck2.default)(this, BreakpointValidator);
   7202     return _super.apply(this, arguments);
   7203   }
   7204 
   7205   (0, _createClass2.default)(BreakpointValidator, [{
   7206     key: "getDefaultSettings",
   7207     value: function getDefaultSettings() {
   7208       return {
   7209         validationTerms: {
   7210           // Max width we allow in general
   7211           max: 5120
   7212         }
   7213       };
   7214     }
   7215     /**
   7216      * Get Panel Active Breakpoints
   7217      *
   7218      * Since the active kit used in the Site Settings panel could be a draft, we need to use the panel's active
   7219      * breakpoints settings and not the elementorFrontend.config values (which come from the DB).
   7220      *
   7221      * @returns Object
   7222      */
   7223 
   7224   }, {
   7225     key: "getPanelActiveBreakpoints",
   7226     value: function getPanelActiveBreakpoints() {
   7227       var panelBreakpoints = elementor.documents.currentDocument.config.settings.settings.active_breakpoints.map(function (breakpointName) {
   7228         return breakpointName.replace('viewport_', '');
   7229       }),
   7230           panelActiveBreakpoints = {};
   7231       panelBreakpoints.forEach(function (breakpointName) {
   7232         panelActiveBreakpoints[breakpointName] = elementorFrontend.config.responsive.breakpoints[breakpointName];
   7233       });
   7234       return panelActiveBreakpoints;
   7235     }
   7236   }, {
   7237     key: "initBreakpointProperties",
   7238     value: function initBreakpointProperties() {
   7239       var _activeBreakpoints$br, _activeBreakpoints$br2;
   7240 
   7241       var validationTerms = this.getSettings('validationTerms'),
   7242           activeBreakpoints = this.getPanelActiveBreakpoints(),
   7243           breakpointKeys = (0, _keys.default)(activeBreakpoints);
   7244       this.breakpointIndex = breakpointKeys.indexOf(validationTerms.breakpointName);
   7245       this.topBreakpoint = (_activeBreakpoints$br = activeBreakpoints[breakpointKeys[this.breakpointIndex + 1]]) === null || _activeBreakpoints$br === void 0 ? void 0 : _activeBreakpoints$br.value;
   7246       this.bottomBreakpoint = (_activeBreakpoints$br2 = activeBreakpoints[breakpointKeys[this.breakpointIndex - 1]]) === null || _activeBreakpoints$br2 === void 0 ? void 0 : _activeBreakpoints$br2.value;
   7247     }
   7248   }, {
   7249     key: "validationMethod",
   7250     value: function validationMethod(newValue) {
   7251       var validationTerms = this.getSettings('validationTerms'),
   7252           errors = NumberValidator.prototype.validationMethod.call(this, newValue); // Validate both numeric and empty values, since breakpoints utilize default values when empty.
   7253 
   7254       if (_.isFinite(newValue) || '' === newValue) {
   7255         if (!this.validateMinMaxForBreakpoint(newValue, validationTerms)) {
   7256           errors.push('Value is not between the breakpoints above or under the edited breakpoint');
   7257         }
   7258       }
   7259 
   7260       return errors;
   7261     }
   7262   }, {
   7263     key: "validateMinMaxForBreakpoint",
   7264     value: function validateMinMaxForBreakpoint(newValue, validationTerms) {
   7265       var breakpointDefaultValue = elementorFrontend.config.responsive.breakpoints[validationTerms.breakpointName].default_value;
   7266       var isValid = true;
   7267       this.initBreakpointProperties(); // Since the following comparison is <=, allow usage of the 320px value for the mobile breakpoint.
   7268 
   7269       if ('mobile' === validationTerms.breakpointName && 320 === this.bottomBreakpoint) {
   7270         this.bottomBreakpoint -= 1;
   7271       } // If there is a breakpoint below the currently edited breakpoint
   7272 
   7273 
   7274       if (this.bottomBreakpoint) {
   7275         // Check that the new value is not under the bottom breakpoint's value.
   7276         if ('' !== newValue && newValue <= this.bottomBreakpoint) {
   7277           isValid = false;
   7278         } // If the new value is empty, check that the default breakpoint value is not below the bottom breakpoint.
   7279 
   7280 
   7281         if ('' === newValue && breakpointDefaultValue <= this.bottomBreakpoint) {
   7282           isValid = false;
   7283         }
   7284       } // If there is a breakpoint above the currently edited breakpoint.
   7285 
   7286 
   7287       if (this.topBreakpoint) {
   7288         // Check that the value is not above the top breakpoint's value.
   7289         if ('' !== newValue && newValue >= this.topBreakpoint) {
   7290           isValid = false;
   7291         } // If the new value is empty, check that the default breakpoint value is not above the top breakpoint.
   7292 
   7293 
   7294         if ('' === newValue && breakpointDefaultValue >= this.topBreakpoint) {
   7295           isValid = false;
   7296         }
   7297       }
   7298 
   7299       return isValid;
   7300     }
   7301   }]);
   7302   return BreakpointValidator;
   7303 }(NumberValidator);
   7304 
   7305 exports.default = BreakpointValidator;
   7306 
   7307 /***/ }),
   7308 
   7309 /***/ "../assets/dev/js/editor/components/validator/number.js":
   7310 /*!**************************************************************!*\
   7311   !*** ../assets/dev/js/editor/components/validator/number.js ***!
   7312   \**************************************************************/
   7313 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   7314 
   7315 "use strict";
   7316 
   7317 
   7318 var Validator = __webpack_require__(/*! elementor-validator/base */ "../assets/dev/js/editor/components/validator/base.js");
   7319 
   7320 module.exports = Validator.extend({
   7321   validationMethod: function validationMethod(newValue) {
   7322     var validationTerms = this.getSettings('validationTerms'),
   7323         errors = [];
   7324 
   7325     if (_.isFinite(newValue)) {
   7326       if (undefined !== validationTerms.min && newValue < validationTerms.min) {
   7327         errors.push('Value is less than minimum');
   7328       }
   7329 
   7330       if (undefined !== validationTerms.max && newValue > validationTerms.max) {
   7331         errors.push('Value is greater than maximum');
   7332       }
   7333     }
   7334 
   7335     return errors;
   7336   }
   7337 });
   7338 
   7339 /***/ }),
   7340 
   7341 /***/ "../assets/dev/js/editor/controls/base-data.js":
   7342 /*!*****************************************************!*\
   7343   !*** ../assets/dev/js/editor/controls/base-data.js ***!
   7344   \*****************************************************/
   7345 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   7346 
   7347 "use strict";
   7348 
   7349 
   7350 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   7351 
   7352 var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));
   7353 
   7354 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
   7355 
   7356 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
   7357 
   7358 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
   7359 
   7360 var _createForOfIteratorHelper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createForOfIteratorHelper */ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js"));
   7361 
   7362 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
   7363 
   7364 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   7365 
   7366 __webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");
   7367 
   7368 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
   7369 
   7370 __webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");
   7371 
   7372 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
   7373 
   7374 var _breakpoint = _interopRequireDefault(__webpack_require__(/*! elementor-validator/breakpoint */ "../assets/dev/js/editor/components/validator/breakpoint.js"));
   7375 
   7376 var ControlBaseView = __webpack_require__(/*! elementor-controls/base */ "../assets/dev/js/editor/controls/base.js"),
   7377     TagsBehavior = __webpack_require__(/*! elementor-dynamic-tags/control-behavior */ "../assets/dev/js/editor/components/dynamic-tags/control-behavior.js"),
   7378     Validator = __webpack_require__(/*! elementor-validator/base */ "../assets/dev/js/editor/components/validator/base.js"),
   7379     NumberValidator = __webpack_require__(/*! elementor-validator/number */ "../assets/dev/js/editor/components/validator/number.js"),
   7380     ControlBaseDataView;
   7381 
   7382 ControlBaseDataView = ControlBaseView.extend({
   7383   validatorTypes: {
   7384     Base: Validator,
   7385     Number: NumberValidator,
   7386     Breakpoint: _breakpoint.default
   7387   },
   7388   ui: function ui() {
   7389     var ui = ControlBaseView.prototype.ui.apply(this, arguments);
   7390 
   7391     _.extend(ui, {
   7392       input: 'input[data-setting][type!="checkbox"][type!="radio"]',
   7393       checkbox: 'input[data-setting][type="checkbox"]',
   7394       radio: 'input[data-setting][type="radio"]',
   7395       select: 'select[data-setting]',
   7396       textarea: 'textarea[data-setting]',
   7397       responsiveSwitchers: '.elementor-responsive-switcher',
   7398       contentEditable: '[contenteditable="true"]'
   7399     });
   7400 
   7401     return ui;
   7402   },
   7403   templateHelpers: function templateHelpers() {
   7404     var controlData = ControlBaseView.prototype.templateHelpers.apply(this, arguments);
   7405     controlData.data.controlValue = this.getControlValue();
   7406     return controlData;
   7407   },
   7408   events: function events() {
   7409     return {
   7410       'input @ui.input': 'onBaseInputTextChange',
   7411       'change @ui.checkbox': 'onBaseInputChange',
   7412       'change @ui.radio': 'onBaseInputChange',
   7413       'input @ui.textarea': 'onBaseInputTextChange',
   7414       'change @ui.select': 'onBaseInputChange',
   7415       'input @ui.contentEditable': 'onBaseInputTextChange',
   7416       'click @ui.responsiveSwitchers': 'onResponsiveSwitchersClick'
   7417     };
   7418   },
   7419   behaviors: function behaviors() {
   7420     var behaviors = ControlBaseView.prototype.behaviors.apply(this, arguments),
   7421         dynamicSettings = this.options.model.get('dynamic');
   7422 
   7423     if (dynamicSettings && dynamicSettings.active) {
   7424       var tags = _.filter(elementor.dynamicTags.getConfig('tags'), function (tag) {
   7425         return tag.editable && _.intersection(tag.categories, dynamicSettings.categories).length;
   7426       });
   7427 
   7428       if (tags.length || elementor.config.user.is_administrator) {
   7429         behaviors.tags = {
   7430           behaviorClass: TagsBehavior,
   7431           tags: tags,
   7432           dynamicSettings: dynamicSettings
   7433         };
   7434       }
   7435     }
   7436 
   7437     return behaviors;
   7438   },
   7439   initialize: function initialize() {
   7440     ControlBaseView.prototype.initialize.apply(this, arguments);
   7441     this.registerValidators();
   7442 
   7443     if (this.model.get('responsive')) {
   7444       this.setPlaceholderFromParent();
   7445     } // TODO: this.elementSettingsModel is deprecated since 2.8.0.
   7446 
   7447 
   7448     var settings = this.container ? this.container.settings : this.elementSettingsModel;
   7449     this.listenTo(settings, 'change:external:' + this.model.get('name'), this.onAfterExternalChange);
   7450   },
   7451   getControlValue: function getControlValue() {
   7452     return this.container.settings.get(this.model.get('name'));
   7453   },
   7454   getGlobalKey: function getGlobalKey() {
   7455     return this.container.globals.get(this.model.get('name'));
   7456   },
   7457   getGlobalValue: function getGlobalValue() {
   7458     return this.globalValue;
   7459   },
   7460   getGlobalDefault: function getGlobalDefault() {
   7461     var controlGlobalArgs = this.model.get('global');
   7462 
   7463     if (controlGlobalArgs !== null && controlGlobalArgs !== void 0 && controlGlobalArgs.default) {
   7464       // If the control is a color/typography control and default colors/typography are disabled, don't return the global value.
   7465       if (!elementor.config.globals.defaults_enabled[this.getGlobalMeta().controlType]) {
   7466         return '';
   7467       }
   7468 
   7469       var _$e$data$commandExtra = $e.data.commandExtractArgs(controlGlobalArgs.default),
   7470           command = _$e$data$commandExtra.command,
   7471           args = _$e$data$commandExtra.args,
   7472           result = $e.data.getCache($e.components.get('globals'), command, args.query);
   7473 
   7474       return result === null || result === void 0 ? void 0 : result.value;
   7475     } // No global default.
   7476 
   7477 
   7478     return '';
   7479   },
   7480   getCurrentValue: function getCurrentValue() {
   7481     if (this.getGlobalKey() && !this.globalValue) {
   7482       return '';
   7483     }
   7484 
   7485     if (this.globalValue) {
   7486       return this.globalValue;
   7487     }
   7488 
   7489     var controlValue = this.getControlValue();
   7490 
   7491     if (controlValue) {
   7492       return controlValue;
   7493     }
   7494 
   7495     return this.getGlobalDefault();
   7496   },
   7497   isGlobalActive: function isGlobalActive() {
   7498     var _this$options$model$g;
   7499 
   7500     return (_this$options$model$g = this.options.model.get('global')) === null || _this$options$model$g === void 0 ? void 0 : _this$options$model$g.active;
   7501   },
   7502   setValue: function setValue(value) {
   7503     this.setSettingsModel(value);
   7504   },
   7505   setSettingsModel: function setSettingsModel(value) {
   7506     var key = this.model.get('name');
   7507     $e.run('document/elements/settings', {
   7508       container: this.options.container,
   7509       settings: (0, _defineProperty2.default)({}, key, value)
   7510     });
   7511     this.triggerMethod('settings:change');
   7512   },
   7513   applySavedValue: function applySavedValue() {
   7514     this.setInputValue('[data-setting="' + this.model.get('name') + '"]', this.getControlValue());
   7515   },
   7516   getEditSettings: function getEditSettings(setting) {
   7517     var settings = this.getOption('elementEditSettings').toJSON();
   7518 
   7519     if (setting) {
   7520       return settings[setting];
   7521     }
   7522 
   7523     return settings;
   7524   },
   7525   setEditSetting: function setEditSetting(settingKey, settingValue) {
   7526     var settings = this.getOption('elementEditSettings') || this.getOption('container').settings;
   7527     settings.set(settingKey, settingValue);
   7528   },
   7529 
   7530   /**
   7531    * Get the placeholder for the current control.
   7532    * @returns {*}
   7533    */
   7534   getControlPlaceholder: function getControlPlaceholder() {
   7535     var placeholder = this.model.get('placeholder');
   7536 
   7537     if (this.model.get('responsive')) {
   7538       placeholder = placeholder || this.container.placeholders[this.model.get('name')];
   7539     }
   7540 
   7541     return placeholder;
   7542   },
   7543 
   7544   /**
   7545    * Get the responsive parent view if exists.
   7546    *
   7547    * @returns {ControlBaseDataView|null}
   7548    */
   7549   getResponsiveParentView: function getResponsiveParentView() {
   7550     var parent = this.model.get('parent');
   7551 
   7552     try {
   7553       return parent && this.container.panel.getControlView(parent);
   7554     } catch (e) {}
   7555   },
   7556 
   7557   /**
   7558    * Get the responsive children views if exists.
   7559    *
   7560    * @returns {ControlBaseDataView|null}
   7561    */
   7562   getResponsiveChildrenViews: function getResponsiveChildrenViews() {
   7563     var children = this.model.get('inheritors'),
   7564         views = [];
   7565 
   7566     try {
   7567       var _iterator = (0, _createForOfIteratorHelper2.default)(children),
   7568           _step;
   7569 
   7570       try {
   7571         for (_iterator.s(); !(_step = _iterator.n()).done;) {
   7572           var child = _step.value;
   7573           views.push(this.container.panel.getControlView(child));
   7574         }
   7575       } catch (err) {
   7576         _iterator.e(err);
   7577       } finally {
   7578         _iterator.f();
   7579       }
   7580     } catch (e) {}
   7581 
   7582     return views;
   7583   },
   7584 
   7585   /**
   7586    * Get prepared placeholder from the responsive parent, and put it into current
   7587    * control model as placeholder.
   7588    */
   7589   setPlaceholderFromParent: function setPlaceholderFromParent() {
   7590     var parent = this.getResponsiveParentView();
   7591 
   7592     if (parent) {
   7593       this.container.placeholders[this.model.get('name')] = parent.preparePlaceholderForChildren();
   7594     }
   7595   },
   7596 
   7597   /**
   7598    * Returns the value of the current control if exists, or the parent value if not,
   7599    * so responsive children can set it as their placeholder. When there are multiple
   7600    * inputs, the inputs which are empty on this control will inherit their values
   7601    * from the responsive parent.
   7602    * For example, if on desktop the padding of all edges is 10, and on tablet only
   7603    * padding right and left is set to 15, the mobile control placeholder will
   7604    * eventually be: { top: 10, right: 15, left: 15, bottom: 10 }, because of the
   7605    * inheritance of multiple values.
   7606    *
   7607    * @returns {*}
   7608    */
   7609   preparePlaceholderForChildren: function preparePlaceholderForChildren() {
   7610     var _this$getResponsivePa;
   7611 
   7612     var cleanValue = this.getCleanControlValue(),
   7613         parentValue = (_this$getResponsivePa = this.getResponsiveParentView()) === null || _this$getResponsivePa === void 0 ? void 0 : _this$getResponsivePa.preparePlaceholderForChildren();
   7614 
   7615     if (cleanValue instanceof Object) {
   7616       return (0, _assign.default)({}, parentValue, cleanValue);
   7617     }
   7618 
   7619     return cleanValue || parentValue;
   7620   },
   7621 
   7622   /**
   7623    * Start the re-rendering recursive chain from the responsive child of this
   7624    * control. It's useful when the current control value is changed and we want
   7625    * to update all responsive children. In this case, the re-rendering is supposed
   7626    * to be applied only from the responsive child of this control and on.
   7627    */
   7628   propagatePlaceholder: function propagatePlaceholder() {
   7629     var children = this.getResponsiveChildrenViews();
   7630 
   7631     var _iterator2 = (0, _createForOfIteratorHelper2.default)(children),
   7632         _step2;
   7633 
   7634     try {
   7635       for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
   7636         var child = _step2.value;
   7637         child.renderWithChildren();
   7638       }
   7639     } catch (err) {
   7640       _iterator2.e(err);
   7641     } finally {
   7642       _iterator2.f();
   7643     }
   7644   },
   7645 
   7646   /**
   7647    * Re-render current control and trigger this method on the responsive child.
   7648    * The purpose of those actions is to recursively re-render all responsive
   7649    * children.
   7650    */
   7651   renderWithChildren: function renderWithChildren() {
   7652     this.render();
   7653     this.propagatePlaceholder();
   7654   },
   7655 
   7656   /**
   7657    * Get control value without empty properties, and without default values.
   7658    *
   7659    * @returns {{}}
   7660    */
   7661   getCleanControlValue: function getCleanControlValue() {
   7662     var value = this.getControlValue();
   7663     return value && value !== this.model.get('default') ? value : undefined;
   7664   },
   7665   onAfterChange: function onAfterChange(control) {
   7666     if ((0, _keys.default)(control.changed).includes(this.model.get('name'))) {
   7667       this.propagatePlaceholder();
   7668     }
   7669 
   7670     ControlBaseView.prototype.onAfterChange.apply(this, arguments);
   7671   },
   7672   getInputValue: function getInputValue(input) {
   7673     var $input = this.$(input);
   7674 
   7675     if ($input.is('[contenteditable="true"]')) {
   7676       return $input.html();
   7677     }
   7678 
   7679     var inputValue = $input.val(),
   7680         inputType = $input.attr('type');
   7681 
   7682     if (-1 !== ['radio', 'checkbox'].indexOf(inputType)) {
   7683       return $input.prop('checked') ? inputValue : '';
   7684     }
   7685 
   7686     if ('number' === inputType && _.isFinite(inputValue)) {
   7687       return +inputValue;
   7688     } // Temp fix for jQuery (< 3.0) that return null instead of empty array
   7689 
   7690 
   7691     if ('SELECT' === input.tagName && $input.prop('multiple') && null === inputValue) {
   7692       inputValue = [];
   7693     }
   7694 
   7695     return inputValue;
   7696   },
   7697   setInputValue: function setInputValue(input, value) {
   7698     var $input = this.$(input),
   7699         inputType = $input.attr('type');
   7700 
   7701     if ('checkbox' === inputType) {
   7702       $input.prop('checked', !!value);
   7703     } else if ('radio' === inputType) {
   7704       $input.filter('[value="' + value + '"]').prop('checked', true);
   7705     } else {
   7706       $input.val(value);
   7707     }
   7708   },
   7709   addValidator: function addValidator(validator) {
   7710     this.validators.push(validator);
   7711   },
   7712   registerValidators: function registerValidators() {
   7713     var _this = this;
   7714 
   7715     this.validators = [];
   7716     var validationTerms = {};
   7717 
   7718     if (this.model.get('required')) {
   7719       validationTerms.required = true;
   7720     }
   7721 
   7722     if (!jQuery.isEmptyObject(validationTerms)) {
   7723       this.addValidator(new this.validatorTypes.Base({
   7724         validationTerms: validationTerms
   7725       }));
   7726     }
   7727 
   7728     var validators = this.model.get('validators');
   7729 
   7730     if (validators) {
   7731       (0, _entries.default)(validators).forEach(function (_ref) {
   7732         var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
   7733             key = _ref2[0],
   7734             args = _ref2[1];
   7735 
   7736         _this.addValidator(new _this.validatorTypes[key]({
   7737           validationTerms: args
   7738         }));
   7739       });
   7740     }
   7741   },
   7742   onBeforeRender: function onBeforeRender() {
   7743     this.setPlaceholderFromParent();
   7744   },
   7745   onRender: function onRender() {
   7746     ControlBaseView.prototype.onRender.apply(this, arguments);
   7747 
   7748     if (this.model.get('responsive')) {
   7749       this.renderResponsiveSwitchers();
   7750     }
   7751 
   7752     this.applySavedValue();
   7753     this.triggerMethod('ready');
   7754     this.toggleControlVisibility();
   7755     this.addTooltip();
   7756   },
   7757   onBaseInputTextChange: function onBaseInputTextChange(event) {
   7758     this.onBaseInputChange(event);
   7759   },
   7760   onBaseInputChange: function onBaseInputChange(event) {
   7761     clearTimeout(this.correctionTimeout);
   7762     var input = event.currentTarget,
   7763         value = this.getInputValue(input),
   7764         validators = this.validators.slice(0),
   7765         settingsValidators = this.container.settings.validators[this.model.get('name')];
   7766 
   7767     if (settingsValidators) {
   7768       validators = validators.concat(settingsValidators);
   7769     }
   7770 
   7771     if (validators) {
   7772       var oldValue = this.getControlValue(input.dataset.setting);
   7773       var isValidValue = validators.every(function (validator) {
   7774         return validator.isValid(value, oldValue);
   7775       });
   7776 
   7777       if (!isValidValue) {
   7778         this.correctionTimeout = setTimeout(this.setInputValue.bind(this, input, oldValue), 1200);
   7779         return;
   7780       }
   7781     }
   7782 
   7783     this.updateElementModel(value, input);
   7784     this.triggerMethod('input:change', event);
   7785   },
   7786   onResponsiveSwitchersClick: function onResponsiveSwitchersClick(event) {
   7787     var $switcher = jQuery(event.currentTarget),
   7788         device = $switcher.data('device'),
   7789         $switchersWrapper = this.ui.responsiveSwitchersWrapper,
   7790         selectedOption = $switcher.index();
   7791     $switchersWrapper.toggleClass('elementor-responsive-switchers-open');
   7792     $switchersWrapper[0].style.setProperty('--selected-option', selectedOption);
   7793     this.triggerMethod('responsive:switcher:click', device);
   7794     elementor.changeDeviceMode(device);
   7795   },
   7796   renderResponsiveSwitchers: function renderResponsiveSwitchers() {
   7797     var templateHtml = Marionette.Renderer.render('#tmpl-elementor-control-responsive-switchers', this.model.attributes);
   7798     this.ui.controlTitle.after(templateHtml);
   7799     this.ui.responsiveSwitchersWrapper = this.$el.find('.elementor-control-responsive-switchers');
   7800   },
   7801   onAfterExternalChange: function onAfterExternalChange() {
   7802     this.hideTooltip();
   7803     this.applySavedValue();
   7804   },
   7805   addTooltip: function addTooltip() {
   7806     this.ui.tooltipTargets = this.$el.find('.tooltip-target');
   7807 
   7808     if (!this.ui.tooltipTargets.length) {
   7809       return;
   7810     } // Create tooltip on controls
   7811 
   7812 
   7813     this.ui.tooltipTargets.tipsy({
   7814       gravity: function gravity() {
   7815         // `n` for down, `s` for up
   7816         var gravity = jQuery(this).data('tooltip-pos');
   7817 
   7818         if (undefined !== gravity) {
   7819           return gravity;
   7820         }
   7821 
   7822         return 's';
   7823       },
   7824       title: function title() {
   7825         return this.getAttribute('data-tooltip');
   7826       }
   7827     });
   7828   },
   7829   hideTooltip: function hideTooltip() {
   7830     if (this.ui.tooltipTargets.length) {
   7831       this.ui.tooltipTargets.tipsy('hide');
   7832     }
   7833   },
   7834   updateElementModel: function updateElementModel(value) {
   7835     this.setValue(value);
   7836   }
   7837 }, {
   7838   // Static methods
   7839   getStyleValue: function getStyleValue(placeholder, controlValue, controlData) {
   7840     if ('DEFAULT' === placeholder) {
   7841       return controlData.default;
   7842     }
   7843 
   7844     return controlValue;
   7845   },
   7846   onPasteStyle: function onPasteStyle() {
   7847     return true;
   7848   }
   7849 });
   7850 module.exports = ControlBaseDataView;
   7851 
   7852 /***/ }),
   7853 
   7854 /***/ "../assets/dev/js/editor/controls/base-multiple.js":
   7855 /*!*********************************************************!*\
   7856   !*** ../assets/dev/js/editor/controls/base-multiple.js ***!
   7857   \*********************************************************/
   7858 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   7859 
   7860 "use strict";
   7861 
   7862 
   7863 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   7864 
   7865 var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));
   7866 
   7867 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
   7868 
   7869 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
   7870 
   7871 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
   7872 
   7873 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   7874 
   7875 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
   7876     ControlBaseMultipleItemView;
   7877 
   7878 ControlBaseMultipleItemView = ControlBaseDataView.extend({
   7879   applySavedValue: function applySavedValue() {
   7880     var values = this.getControlValue(),
   7881         $inputs = this.$('[data-setting]'),
   7882         self = this;
   7883 
   7884     _.each(values, function (value, key) {
   7885       var $input = $inputs.filter(function () {
   7886         return key === this.dataset.setting;
   7887       });
   7888       self.setInputValue($input, value);
   7889     });
   7890   },
   7891   getControlValue: function getControlValue(key) {
   7892     var values = this.container.settings.get(this.model.get('name'));
   7893 
   7894     if (!jQuery.isPlainObject(values)) {
   7895       return {};
   7896     }
   7897 
   7898     if (key) {
   7899       var value = values[key];
   7900 
   7901       if (undefined === value) {
   7902         value = '';
   7903       }
   7904 
   7905       return value;
   7906     }
   7907 
   7908     return elementorCommon.helpers.cloneObject(values);
   7909   },
   7910 
   7911   /**
   7912    * @inheritDoc
   7913    */
   7914   getCleanControlValue: function getCleanControlValue(key) {
   7915     var _this = this;
   7916 
   7917     var values = Object.fromEntries((0, _entries.default)(this.getControlValue()).filter(function (_ref) {
   7918       var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
   7919           k = _ref2[0],
   7920           v = _ref2[1];
   7921 
   7922       return v && _this.model.get('default')[k] !== v;
   7923     }));
   7924 
   7925     if (key) {
   7926       return values === null || values === void 0 ? void 0 : values[key];
   7927     }
   7928 
   7929     return (0, _keys.default)(values).length ? values : undefined;
   7930   },
   7931   setValue: function setValue(key, value) {
   7932     var values = this.getControlValue();
   7933 
   7934     if ('object' === (0, _typeof2.default)(key)) {
   7935       _.each(key, function (internalValue, internalKey) {
   7936         values[internalKey] = internalValue;
   7937       });
   7938     } else {
   7939       values[key] = value;
   7940     }
   7941 
   7942     this.setSettingsModel(values);
   7943   },
   7944   updateElementModel: function updateElementModel(value, input) {
   7945     var key = input.dataset.setting;
   7946     this.setValue(key, value);
   7947   }
   7948 }, {
   7949   // Static methods
   7950   getStyleValue: function getStyleValue(placeholder, controlValue) {
   7951     if (!_.isObject(controlValue)) {
   7952       return ''; // invalid
   7953     }
   7954 
   7955     return controlValue[placeholder.toLowerCase()];
   7956   }
   7957 });
   7958 module.exports = ControlBaseMultipleItemView;
   7959 
   7960 /***/ }),
   7961 
   7962 /***/ "../assets/dev/js/editor/controls/base-units.js":
   7963 /*!******************************************************!*\
   7964   !*** ../assets/dev/js/editor/controls/base-units.js ***!
   7965   \******************************************************/
   7966 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   7967 
   7968 "use strict";
   7969 
   7970 
   7971 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   7972 
   7973 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   7974 
   7975 var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));
   7976 
   7977 var ControlBaseMultipleItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
   7978     ControlBaseUnitsItemView;
   7979 
   7980 ControlBaseUnitsItemView = ControlBaseMultipleItemView.extend({
   7981   ui: function ui() {
   7982     return (0, _assign.default)(ControlBaseMultipleItemView.prototype.ui.apply(this, arguments), {
   7983       units: '.elementor-units-choices>input'
   7984     });
   7985   },
   7986   events: function events() {
   7987     return (0, _assign.default)(ControlBaseMultipleItemView.prototype.events.apply(this, arguments), {
   7988       'change @ui.units': 'onUnitChange'
   7989     });
   7990   },
   7991   updatePlaceholder: function updatePlaceholder() {
   7992     var _this$getControlPlace;
   7993 
   7994     var placeholder = (_this$getControlPlace = this.getControlPlaceholder()) === null || _this$getControlPlace === void 0 ? void 0 : _this$getControlPlace.unit;
   7995     this.ui.units.removeClass('e-units-placeholder');
   7996 
   7997     if (placeholder) {
   7998       this.ui.units.filter("[value=\"".concat(placeholder, "\"]")).addClass('e-units-placeholder');
   7999     }
   8000   },
   8001   onRender: function onRender() {
   8002     ControlBaseMultipleItemView.prototype.onRender.apply(this, arguments);
   8003     this.updatePlaceholder();
   8004   },
   8005   onUnitChange: function onUnitChange() {
   8006     this.updatePlaceholder();
   8007   },
   8008   getCurrentRange: function getCurrentRange() {
   8009     return this.getUnitRange(this.getControlValue('unit'));
   8010   },
   8011   getUnitRange: function getUnitRange(unit) {
   8012     var ranges = this.model.get('range');
   8013 
   8014     if (!ranges || !ranges[unit]) {
   8015       return false;
   8016     }
   8017 
   8018     return ranges[unit];
   8019   }
   8020 });
   8021 module.exports = ControlBaseUnitsItemView;
   8022 
   8023 /***/ }),
   8024 
   8025 /***/ "../assets/dev/js/editor/controls/base.js":
   8026 /*!************************************************!*\
   8027   !*** ../assets/dev/js/editor/controls/base.js ***!
   8028   \************************************************/
   8029 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   8030 
   8031 "use strict";
   8032 
   8033 
   8034 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   8035 
   8036 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
   8037 
   8038 var _defineProperty = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js"));
   8039 
   8040 var ControlBaseView;
   8041 ControlBaseView = Marionette.CompositeView.extend({
   8042   ui: function ui() {
   8043     return {
   8044       controlTitle: '.elementor-control-title'
   8045     };
   8046   },
   8047   behaviors: function behaviors() {
   8048     var behaviors = {};
   8049     return elementor.hooks.applyFilters('controls/base/behaviors', behaviors, this);
   8050   },
   8051   getBehavior: function getBehavior(name) {
   8052     return this._behaviors[(0, _keys.default)(this.behaviors()).indexOf(name)];
   8053   },
   8054   className: function className() {
   8055     // TODO: Any better classes for that?
   8056     var classes = 'elementor-control elementor-control-' + this.model.get('name') + ' elementor-control-type-' + this.model.get('type'),
   8057         modelClasses = this.model.get('classes'),
   8058         responsive = this.model.get('responsive');
   8059 
   8060     if (!_.isEmpty(modelClasses)) {
   8061       classes += ' ' + modelClasses;
   8062     }
   8063 
   8064     if (!_.isEmpty(responsive)) {
   8065       var responsiveControlName = responsive.max || responsive.min;
   8066       classes += ' elementor-control-responsive-' + responsiveControlName;
   8067     }
   8068 
   8069     return classes;
   8070   },
   8071   templateHelpers: function templateHelpers() {
   8072     var controlData = {
   8073       _cid: this.model.cid
   8074     };
   8075     return {
   8076       view: this,
   8077       data: _.extend({}, this.model.toJSON(), controlData)
   8078     };
   8079   },
   8080   getTemplate: function getTemplate() {
   8081     return Marionette.TemplateCache.get('#tmpl-elementor-control-' + this.model.get('type') + '-content');
   8082   },
   8083   initialize: function initialize(options) {
   8084     var label = this.model.get('label'); // TODO: Temp backwards compatibility. since 2.8.0.
   8085 
   8086     (0, _defineProperty.default)(this, 'container', {
   8087       get: function get() {
   8088         if (!options.container) {
   8089           var settingsModel = options.elementSettingsModel,
   8090               view = $e.components.get('document').utils.findViewById(settingsModel.id); // Element control.
   8091 
   8092           if (view && view.getContainer) {
   8093             options.container = view.getContainer();
   8094           } else {
   8095             if (!settingsModel.id) {
   8096               settingsModel.id = 'bc-' + elementorCommon.helpers.getUniqueId();
   8097             } // Document/General/Other control.
   8098 
   8099 
   8100             options.container = new elementorModules.editor.Container({
   8101               type: 'bc-container',
   8102               id: settingsModel.id,
   8103               model: settingsModel,
   8104               settings: settingsModel,
   8105               label: label,
   8106               view: false,
   8107               renderer: false,
   8108               controls: settingsModel.options.controls
   8109             });
   8110           }
   8111         }
   8112 
   8113         return options.container;
   8114       }
   8115     }); // Use `defineProperty` because `get elementSettingsModel()` fails during the `Marionette.CompositeView.extend`.
   8116 
   8117     (0, _defineProperty.default)(this, 'elementSettingsModel', {
   8118       get: function get() {
   8119         elementorCommon.helpers.softDeprecated('elementSettingsModel', '2.8.0', 'container.settings');
   8120         return options.container ? options.container.settings : options.elementSettingsModel;
   8121       }
   8122     });
   8123     var controlType = this.model.get('type'),
   8124         controlSettings = jQuery.extend(true, {}, elementor.config.controls[controlType], this.model.attributes);
   8125     this.model.set(controlSettings); // TODO: this.elementSettingsModel is deprecated since 2.8.0.
   8126 
   8127     var settings = this.container ? this.container.settings : this.elementSettingsModel;
   8128     this.listenTo(settings, 'change', this.onAfterChange);
   8129   },
   8130   onAfterChange: function onAfterChange() {
   8131     this.toggleControlVisibility();
   8132   },
   8133   toggleControlVisibility: function toggleControlVisibility() {
   8134     // TODO: this.elementSettingsModel is deprecated since 2.8.0.
   8135     var settings = this.container ? this.container.settings : this.elementSettingsModel;
   8136     var isVisible = elementor.helpers.isActiveControl(this.model, settings.attributes);
   8137     this.$el.toggleClass('elementor-hidden-control', !isVisible);
   8138     elementor.getPanelView().updateScrollbar();
   8139   },
   8140   onRender: function onRender() {
   8141     var layoutType = this.model.get('label_block') ? 'block' : 'inline',
   8142         showLabel = this.model.get('show_label'),
   8143         elClasses = 'elementor-label-' + layoutType;
   8144     elClasses += ' elementor-control-separator-' + this.model.get('separator');
   8145 
   8146     if (!showLabel) {
   8147       elClasses += ' elementor-control-hidden-label';
   8148     }
   8149 
   8150     this.$el.addClass(elClasses);
   8151     this.toggleControlVisibility();
   8152   }
   8153 });
   8154 module.exports = ControlBaseView;
   8155 
   8156 /***/ }),
   8157 
   8158 /***/ "../assets/dev/js/editor/controls/box-shadow.js":
   8159 /*!******************************************************!*\
   8160   !*** ../assets/dev/js/editor/controls/box-shadow.js ***!
   8161   \******************************************************/
   8162 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   8163 
   8164 "use strict";
   8165 
   8166 
   8167 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   8168 
   8169 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
   8170 
   8171 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   8172 
   8173 var _colorPicker = _interopRequireDefault(__webpack_require__(/*! ../utils/color-picker */ "../assets/dev/js/editor/utils/color-picker.js"));
   8174 
   8175 var ControlMultipleBaseItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
   8176     ControlBoxShadowItemView;
   8177 
   8178 ControlBoxShadowItemView = ControlMultipleBaseItemView.extend({
   8179   ui: function ui() {
   8180     var ui = ControlMultipleBaseItemView.prototype.ui.apply(this, arguments);
   8181     ui.sliders = '.elementor-slider';
   8182     ui.colorPickerPlaceholder = '.elementor-color-picker-placeholder';
   8183     return ui;
   8184   },
   8185   initSliders: function initSliders() {
   8186     var _this = this;
   8187 
   8188     var value = this.getControlValue();
   8189     this.ui.sliders.each(function (index, slider) {
   8190       var $input = jQuery(slider).next('.elementor-slider-input').find('input');
   8191       var sliderInstance = noUiSlider.create(slider, {
   8192         start: [value[slider.dataset.input]],
   8193         step: 1,
   8194         range: {
   8195           min: +$input.attr('min'),
   8196           max: +$input.attr('max')
   8197         },
   8198         format: {
   8199           to: function to(sliderValue) {
   8200             return +sliderValue.toFixed(1);
   8201           },
   8202           from: function from(sliderValue) {
   8203             return +sliderValue;
   8204           }
   8205         }
   8206       });
   8207       sliderInstance.on('slide', function (values) {
   8208         var type = sliderInstance.target.dataset.input;
   8209         $input.val(values[0]);
   8210 
   8211         _this.setValue(type, values[0]);
   8212       });
   8213     });
   8214   },
   8215   initColors: function initColors() {
   8216     var _this2 = this;
   8217 
   8218     this.colorPicker = new _colorPicker.default({
   8219       picker: {
   8220         el: this.ui.colorPickerPlaceholder[0],
   8221         default: this.getControlValue('color')
   8222       },
   8223       onChange: function onChange() {
   8224         _this2.setValue('color', _this2.colorPicker.getColor());
   8225       },
   8226       onClear: function onClear() {
   8227         _this2.setValue('color', '');
   8228       }
   8229     });
   8230   },
   8231   onInputChange: function onInputChange(event) {
   8232     var type = event.currentTarget.dataset.setting,
   8233         $slider = this.ui.sliders.filter('[data-input="' + type + '"]');
   8234     $slider[0].noUiSlider.set(this.getControlValue(type));
   8235   },
   8236   onReady: function onReady() {
   8237     this.initSliders();
   8238     this.initColors();
   8239   },
   8240   onBeforeDestroy: function onBeforeDestroy() {
   8241     this.colorPicker.destroy();
   8242   }
   8243 });
   8244 module.exports = ControlBoxShadowItemView;
   8245 
   8246 /***/ }),
   8247 
   8248 /***/ "../assets/dev/js/editor/controls/button.js":
   8249 /*!**************************************************!*\
   8250   !*** ../assets/dev/js/editor/controls/button.js ***!
   8251   \**************************************************/
   8252 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   8253 
   8254 "use strict";
   8255 
   8256 
   8257 var ControlBaseView = __webpack_require__(/*! elementor-controls/base */ "../assets/dev/js/editor/controls/base.js");
   8258 
   8259 module.exports = ControlBaseView.extend({
   8260   ui: function ui() {
   8261     var ui = ControlBaseView.prototype.ui.apply(this, arguments);
   8262     ui.button = 'button';
   8263     return ui;
   8264   },
   8265   events: {
   8266     'click @ui.button': 'onButtonClick'
   8267   },
   8268   onButtonClick: function onButtonClick() {
   8269     var eventName = this.model.get('event');
   8270     elementor.channels.editor.trigger(eventName, this);
   8271   }
   8272 });
   8273 
   8274 /***/ }),
   8275 
   8276 /***/ "../assets/dev/js/editor/controls/choose.js":
   8277 /*!**************************************************!*\
   8278   !*** ../assets/dev/js/editor/controls/choose.js ***!
   8279   \**************************************************/
   8280 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   8281 
   8282 "use strict";
   8283 
   8284 
   8285 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   8286 
   8287 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
   8288     ControlChooseItemView;
   8289 
   8290 ControlChooseItemView = ControlBaseDataView.extend({
   8291   ui: function ui() {
   8292     var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
   8293     ui.inputs = '[type="radio"]';
   8294     return ui;
   8295   },
   8296   events: function events() {
   8297     return _.extend(ControlBaseDataView.prototype.events.apply(this, arguments), {
   8298       'mousedown label': 'onMouseDownLabel',
   8299       'click @ui.inputs': 'onClickInput',
   8300       'change @ui.inputs': 'onBaseInputChange'
   8301     });
   8302   },
   8303   updatePlaceholder: function updatePlaceholder() {
   8304     var placeholder = this.getControlPlaceholder();
   8305 
   8306     if (!this.getControlValue() && placeholder) {
   8307       // Find the input which has value equals to the placeholder (which is the parent's value),
   8308       // and add it a placeholder class, to indicate which value is selected in the parent.
   8309       this.ui.inputs.filter("[value=\"".concat(this.getControlPlaceholder(), "\"]")).addClass('e-choose-placeholder');
   8310     } else {
   8311       this.ui.inputs.removeClass('e-choose-placeholder');
   8312     }
   8313   },
   8314   onReady: function onReady() {
   8315     this.updatePlaceholder();
   8316   },
   8317   applySavedValue: function applySavedValue() {
   8318     var currentValue = this.getControlValue();
   8319 
   8320     if (currentValue) {
   8321       this.ui.inputs.filter('[value="' + currentValue + '"]').prop('checked', true);
   8322     } else {
   8323       this.ui.inputs.filter(':checked').prop('checked', false);
   8324     }
   8325   },
   8326   onMouseDownLabel: function onMouseDownLabel(event) {
   8327     var $clickedLabel = this.$(event.currentTarget),
   8328         $selectedInput = this.$('#' + $clickedLabel.attr('for'));
   8329     $selectedInput.data('checked', $selectedInput.prop('checked'));
   8330   },
   8331   onClickInput: function onClickInput(event) {
   8332     if (!this.model.get('toggle')) {
   8333       return;
   8334     }
   8335 
   8336     var $selectedInput = this.$(event.currentTarget);
   8337 
   8338     if ($selectedInput.data('checked')) {
   8339       $selectedInput.prop('checked', false).trigger('change');
   8340     }
   8341   },
   8342   onBaseInputChange: function onBaseInputChange(event) {
   8343     ControlBaseDataView.prototype.onBaseInputChange.apply(this, arguments);
   8344     this.updatePlaceholder();
   8345   }
   8346 }, {
   8347   onPasteStyle: function onPasteStyle(control, clipboardValue) {
   8348     return '' === clipboardValue || undefined !== control.options[clipboardValue];
   8349   }
   8350 });
   8351 module.exports = ControlChooseItemView;
   8352 
   8353 /***/ }),
   8354 
   8355 /***/ "../assets/dev/js/editor/controls/code.js":
   8356 /*!************************************************!*\
   8357   !*** ../assets/dev/js/editor/controls/code.js ***!
   8358   \************************************************/
   8359 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   8360 
   8361 "use strict";
   8362 
   8363 
   8364 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
   8365     ControlCodeEditorItemView;
   8366 
   8367 ControlCodeEditorItemView = ControlBaseDataView.extend({
   8368   ui: function ui() {
   8369     var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
   8370     ui.editor = '.elementor-code-editor';
   8371     return ui;
   8372   },
   8373   onReady: function onReady() {
   8374     var self = this;
   8375 
   8376     if ('undefined' === typeof ace) {
   8377       return;
   8378     }
   8379 
   8380     var langTools = ace.require('ace/ext/language_tools'),
   8381         uiTheme = elementor.settings.editorPreferences.model.get('ui_theme'),
   8382         userPrefersDark = matchMedia('(prefers-color-scheme: dark)').matches;
   8383 
   8384     self.editor = ace.edit(this.ui.editor[0]); // Since the code control is wrapped with a dynamic div, the class elementor-control-tag-area need to be had dynamically to handle the dynamic tag functionality.
   8385 
   8386     jQuery(self.editor.container).addClass('elementor-input-style elementor-code-editor elementor-control-tag-area');
   8387     self.editor.setOptions({
   8388       mode: 'ace/mode/' + self.model.attributes.language,
   8389       minLines: 10,
   8390       maxLines: Infinity,
   8391       showGutter: true,
   8392       useWorker: true,
   8393       enableBasicAutocompletion: true,
   8394       enableLiveAutocompletion: true
   8395     });
   8396 
   8397     if ('dark' === uiTheme || 'auto' === uiTheme && userPrefersDark) {
   8398       self.editor.setTheme('ace/theme/merbivore_soft');
   8399     }
   8400 
   8401     self.editor.getSession().setUseWrapMode(true);
   8402     elementor.panel.$el.on('resize.aceEditor', self.onResize.bind(this));
   8403 
   8404     if ('css' === self.model.attributes.language) {
   8405       var selectorCompleter = {
   8406         getCompletions: function getCompletions(editor, session, pos, prefix, callback) {
   8407           var list = [],
   8408               token = session.getTokenAt(pos.row, pos.column);
   8409 
   8410           if (0 < prefix.length && 'selector'.match(prefix) && 'constant' === token.type) {
   8411             list = [{
   8412               name: 'selector',
   8413               value: 'selector',
   8414               score: 1,
   8415               meta: 'Elementor'
   8416             }];
   8417           }
   8418 
   8419           callback(null, list);
   8420         }
   8421       };
   8422       langTools.addCompleter(selectorCompleter);
   8423     }
   8424 
   8425     self.editor.setValue(self.getControlValue(), -1); // -1 =  move cursor to the start
   8426 
   8427     self.editor.on('change', function () {
   8428       self.setValue(self.editor.getValue());
   8429     });
   8430 
   8431     if ('html' === self.model.attributes.language) {
   8432       // Remove the `doctype` annotation
   8433       var session = self.editor.getSession();
   8434       session.on('changeAnnotation', function () {
   8435         var annotations = session.getAnnotations() || [],
   8436             annotationsLength = annotations.length,
   8437             index = annotations.length;
   8438 
   8439         while (index--) {
   8440           if (/doctype first\. Expected/.test(annotations[index].text)) {
   8441             annotations.splice(index, 1);
   8442           }
   8443         }
   8444 
   8445         if (annotationsLength > annotations.length) {
   8446           session.setAnnotations(annotations);
   8447         }
   8448       });
   8449     }
   8450   },
   8451   onResize: function onResize() {
   8452     this.editor.resize();
   8453   },
   8454   onDestroy: function onDestroy() {
   8455     elementor.panel.$el.off('resize.aceEditor');
   8456   }
   8457 });
   8458 module.exports = ControlCodeEditorItemView;
   8459 
   8460 /***/ }),
   8461 
   8462 /***/ "../assets/dev/js/editor/controls/color.js":
   8463 /*!*************************************************!*\
   8464   !*** ../assets/dev/js/editor/controls/color.js ***!
   8465   \*************************************************/
   8466 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   8467 
   8468 "use strict";
   8469 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   8470 
   8471 
   8472 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   8473 
   8474 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   8475 
   8476 _Object$defineProperty(exports, "__esModule", {
   8477   value: true
   8478 });
   8479 
   8480 exports.default = void 0;
   8481 
   8482 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
   8483 
   8484 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
   8485 
   8486 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
   8487 
   8488 __webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");
   8489 
   8490 __webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");
   8491 
   8492 __webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");
   8493 
   8494 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));
   8495 
   8496 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));
   8497 
   8498 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   8499 
   8500 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   8501 
   8502 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
   8503 
   8504 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
   8505 
   8506 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   8507 
   8508 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   8509 
   8510 var _baseData = _interopRequireDefault(__webpack_require__(/*! ./base-data */ "../assets/dev/js/editor/controls/base-data.js"));
   8511 
   8512 var _colorPicker = _interopRequireDefault(__webpack_require__(/*! ../utils/color-picker */ "../assets/dev/js/editor/utils/color-picker.js"));
   8513 
   8514 var _default = /*#__PURE__*/function (_ControlBaseDataView) {
   8515   (0, _inherits2.default)(_default, _ControlBaseDataView);
   8516 
   8517   var _super = (0, _createSuper2.default)(_default);
   8518 
   8519   function _default() {
   8520     (0, _classCallCheck2.default)(this, _default);
   8521     return _super.apply(this, arguments);
   8522   }
   8523 
   8524   (0, _createClass2.default)(_default, [{
   8525     key: "ui",
   8526     value: function ui() {
   8527       var ui = (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "ui", this).call(this);
   8528       ui.pickerContainer = '.elementor-color-picker-placeholder';
   8529       return ui;
   8530     }
   8531   }, {
   8532     key: "applySavedValue",
   8533     value: function applySavedValue() {
   8534       // Gets the current OR default value of the control.
   8535       var currentValue = this.getCurrentValue();
   8536 
   8537       if (this.colorPicker) {
   8538         // When there is a global set on the control but there is no value/it doesn't exist, don't show a value.
   8539         if (currentValue) {
   8540           var _this$colorPicker$pic;
   8541 
   8542           // Set the picker color without triggering the 'onChange' event.
   8543           var parsedColor = this.colorPicker.picker._parseLocalColor(currentValue);
   8544 
   8545           (_this$colorPicker$pic = this.colorPicker.picker).setHSVA.apply(_this$colorPicker$pic, (0, _toConsumableArray2.default)(parsedColor.values).concat([false]));
   8546         } else {
   8547           this.colorPicker.picker._clearColor(true);
   8548         }
   8549       } else {
   8550         this.initPicker();
   8551       }
   8552 
   8553       this.$el.toggleClass('e-control-color--no-value', !currentValue);
   8554     }
   8555   }, {
   8556     key: "initPicker",
   8557     value: function initPicker() {
   8558       var _this$model$get,
   8559           _this = this;
   8560 
   8561       var options = {
   8562         picker: {
   8563           el: this.ui.pickerContainer[0],
   8564           default: this.getCurrentValue(),
   8565           components: {
   8566             opacity: this.model.get('alpha')
   8567           },
   8568           defaultRepresentation: 'HEX'
   8569         },
   8570         // Don't create the add button in the Global Settings color pickers.
   8571         addButton: (_this$model$get = this.model.get('global')) === null || _this$model$get === void 0 ? void 0 : _this$model$get.active,
   8572         onChange: function onChange() {
   8573           return _this.onPickerChange();
   8574         },
   8575         onClear: function onClear() {
   8576           return _this.onPickerClear();
   8577         },
   8578         onAddButtonClick: function onAddButtonClick() {
   8579           return _this.onAddGlobalButtonClick();
   8580         }
   8581       };
   8582       this.colorPicker = new _colorPicker.default(options);
   8583       this.$pickerButton = jQuery(this.colorPicker.picker.getRoot().button);
   8584       this.addTipsyToPickerButton();
   8585       this.addEyedropper();
   8586       this.$pickerButton.on('click', function () {
   8587         return _this.onPickerButtonClick();
   8588       });
   8589       jQuery(this.colorPicker.picker.getRoot().root).addClass('elementor-control-unit-1 elementor-control-tag-area');
   8590     }
   8591   }, {
   8592     key: "addTipsyToPickerButton",
   8593     value: function addTipsyToPickerButton() {
   8594       var _this2 = this;
   8595 
   8596       this.$pickerButton.tipsy({
   8597         title: function title() {
   8598           var currentValue = _this2.getCurrentValue(); // If there is a global enabled for the control, but the global has no value.
   8599 
   8600 
   8601           if (_this2.getGlobalKey() && !currentValue) {
   8602             currentValue = "".concat(__('Invalid Global Color', 'elementor'));
   8603           }
   8604 
   8605           return currentValue || '';
   8606         },
   8607         offset: 4,
   8608         gravity: function gravity() {
   8609           return 's';
   8610         }
   8611       });
   8612     }
   8613   }, {
   8614     key: "addEyedropper",
   8615     value: function addEyedropper() {
   8616       var _this3 = this;
   8617 
   8618       if (!elementorCommon.config.experimentalFeatures['elements-color-picker']) {
   8619         return;
   8620       }
   8621 
   8622       var $colorPicker = jQuery(Marionette.Renderer.render('#tmpl-elementor-control-element-color-picker')),
   8623           $colorPickerToolsContainer = this.colorPicker.$pickerToolsContainer,
   8624           container = this.getOption('container');
   8625       var kit = null; // When it's a kit (i.e "Site Settings").
   8626 
   8627       if ('kit' === container.document.config.type) {
   8628         kit = container.document;
   8629       } // Add a tooltip to the Eye Dropper.
   8630 
   8631 
   8632       $colorPicker.tipsy({
   8633         title: function title() {
   8634           return __('Color Sampler', 'elementor');
   8635         },
   8636         gravity: 's'
   8637       });
   8638       $colorPicker.on('click', function () {
   8639         $e.run('elements-color-picker/start', {
   8640           container: container,
   8641           kit: kit,
   8642           control: _this3.model.get('name'),
   8643           trigger: $colorPicker[0]
   8644         });
   8645       });
   8646       $colorPickerToolsContainer.append($colorPicker);
   8647     }
   8648   }, {
   8649     key: "getGlobalMeta",
   8650     value: function getGlobalMeta() {
   8651       return {
   8652         commandName: this.getGlobalCommand(),
   8653         key: this.model.get('name'),
   8654         controlType: 'colors',
   8655         route: 'panel/global/global-colors'
   8656       };
   8657     }
   8658   }, {
   8659     key: "getNameAlreadyExistsMessage",
   8660     value: function getNameAlreadyExistsMessage() {
   8661       return '<i class="eicon-info-circle"></i> ' + __('Please note that the same exact color already exists in your Global Colors list. Are you sure you want to create it?', 'elementor');
   8662     }
   8663   }, {
   8664     key: "getConfirmTextMessage",
   8665     value: function getConfirmTextMessage() {
   8666       return __('Are you sure you want to create a new Global Color?', 'elementor');
   8667     }
   8668   }, {
   8669     key: "getAddGlobalConfirmMessage",
   8670     value: function getAddGlobalConfirmMessage(globalColors) {
   8671       var colorTitle = __('New Global Color', 'elementor'),
   8672           currentValue = this.getCurrentValue(),
   8673           $message = jQuery('<div>', {
   8674         class: 'e-global__confirm-message'
   8675       }),
   8676           $messageText = jQuery('<div>', {
   8677         class: 'e-global__confirm-message-text'
   8678       }),
   8679           $inputWrapper = jQuery('<div>', {
   8680         class: 'e-global__confirm-input-wrapper'
   8681       }),
   8682           $colorPreview = this.createColorPreviewBox(currentValue),
   8683           $input = jQuery('<input>', {
   8684         type: 'text',
   8685         name: 'global-name',
   8686         placeholder: colorTitle
   8687       }).val(colorTitle);
   8688 
   8689       var messageContent; // Check if the color already exists in the global colors, and display an appropriate message.
   8690 
   8691       for (var _i = 0, _Object$values = (0, _values.default)(globalColors); _i < _Object$values.length; _i++) {
   8692         var globalColor = _Object$values[_i];
   8693 
   8694         if (currentValue === globalColor.value) {
   8695           messageContent = this.getNameAlreadyExistsMessage();
   8696           break;
   8697         } else if (colorTitle === globalColor.title) {
   8698           messageContent = this.getConfirmTextMessage();
   8699           break;
   8700         } else {
   8701           messageContent = __('Are you sure you want to create a new Global Color?', 'elementor');
   8702         }
   8703       }
   8704 
   8705       $messageText.html(messageContent);
   8706       $inputWrapper.append($colorPreview, $input);
   8707       $message.append($messageText, $inputWrapper);
   8708       return $message;
   8709     }
   8710   }, {
   8711     key: "getGlobalCommand",
   8712     value: function getGlobalCommand() {
   8713       return 'globals/colors';
   8714     } // The globalData parameter is received from the Data API.
   8715 
   8716   }, {
   8717     key: "createGlobalItemMarkup",
   8718     value: function createGlobalItemMarkup(globalData) {
   8719       var $color = jQuery('<div>', {
   8720         class: 'e-global__preview-item e-global__color',
   8721         'data-global-id': globalData.id
   8722       }),
   8723           $colorPreview = this.createColorPreviewBox(globalData.value),
   8724           $colorTitle = jQuery('<span>', {
   8725         class: 'e-global__color-title'
   8726       }).html(globalData.title),
   8727           $colorHex = jQuery('<span>', {
   8728         class: 'e-global__color-hex'
   8729       }).html(globalData.value);
   8730       $color.append($colorPreview, $colorTitle, $colorHex);
   8731       return $color;
   8732     }
   8733   }, {
   8734     key: "createColorPreviewBox",
   8735     value: function createColorPreviewBox(color) {
   8736       var $colorPreviewContainer = jQuery('<div>', {
   8737         class: 'e-global__color-preview-container'
   8738       }),
   8739           $colorPreviewColor = jQuery('<div>', {
   8740         class: 'e-global__color-preview-color',
   8741         style: 'background-color: ' + color
   8742       }),
   8743           $colorPreviewBg = jQuery('<div>', {
   8744         class: 'e-global__color-preview-transparent-bg'
   8745       });
   8746       $colorPreviewContainer.append($colorPreviewBg, $colorPreviewColor);
   8747       return $colorPreviewContainer;
   8748     }
   8749   }, {
   8750     key: "getGlobalsList",
   8751     value: function () {
   8752       var _getGlobalsList = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
   8753         var result;
   8754         return _regenerator.default.wrap(function _callee$(_context) {
   8755           while (1) {
   8756             switch (_context.prev = _context.next) {
   8757               case 0:
   8758                 _context.next = 2;
   8759                 return $e.data.get(this.getGlobalCommand());
   8760 
   8761               case 2:
   8762                 result = _context.sent;
   8763                 return _context.abrupt("return", result.data);
   8764 
   8765               case 4:
   8766               case "end":
   8767                 return _context.stop();
   8768             }
   8769           }
   8770         }, _callee, this);
   8771       }));
   8772 
   8773       function getGlobalsList() {
   8774         return _getGlobalsList.apply(this, arguments);
   8775       }
   8776 
   8777       return getGlobalsList;
   8778     }() // Create the markup for the colors in the global select dropdown.
   8779 
   8780   }, {
   8781     key: "buildGlobalsList",
   8782     value: function buildGlobalsList(globalColors, $globalPreviewItemsContainer) {
   8783       var _this4 = this;
   8784 
   8785       (0, _values.default)(globalColors).forEach(function (color) {
   8786         if (!color.value) {
   8787           return;
   8788         }
   8789 
   8790         var $color = _this4.createGlobalItemMarkup(color);
   8791 
   8792         $globalPreviewItemsContainer.append($color);
   8793       });
   8794     }
   8795   }, {
   8796     key: "onPickerChange",
   8797     value: function onPickerChange() {
   8798       this.setValue(this.colorPicker.picker.getColor().toHEXA().toString());
   8799 
   8800       if (!this.isCustom) {
   8801         this.triggerMethod('value:type:change');
   8802         this.colorPicker.toggleClearButtonState(true);
   8803 
   8804         if (this.$el.hasClass('e-control-color--no-value')) {
   8805           this.$el.removeClass('e-control-color--no-value');
   8806         }
   8807 
   8808         this.isCustom = true;
   8809       }
   8810     }
   8811   }, {
   8812     key: "onPickerClear",
   8813     value: function onPickerClear() {
   8814       this.isCustom = false; // Empty the value saved in the control.
   8815 
   8816       this.setValue(''); // Adjust the Global select box text according to the cleared value.
   8817 
   8818       this.triggerMethod('value:type:change');
   8819       this.applySavedValue();
   8820       this.colorPicker.toggleClearButtonState(false);
   8821     }
   8822   }, {
   8823     key: "onPickerButtonClick",
   8824     value: function onPickerButtonClick() {
   8825       if (this.getGlobalKey()) {
   8826         this.triggerMethod('unset:global:value');
   8827       } else if (this.isGlobalActive() && !this.getControlValue() && this.getGlobalDefault()) {
   8828         this.triggerMethod('unlink:global:default');
   8829       } // If there is a value in the control, set the clear button to active, if not, deactivate it.
   8830 
   8831 
   8832       this.colorPicker.toggleClearButtonState(!!this.getCurrentValue());
   8833     }
   8834   }, {
   8835     key: "onAddGlobalButtonClick",
   8836     value: function onAddGlobalButtonClick() {
   8837       var _this5 = this;
   8838 
   8839       this.getGlobalsList().then(function (globalsList) {
   8840         _this5.globalsList = globalsList;
   8841 
   8842         _this5.triggerMethod('add:global:to:list', _this5.getAddGlobalConfirmMessage(globalsList));
   8843       });
   8844     }
   8845   }, {
   8846     key: "onBeforeDestroy",
   8847     value: function onBeforeDestroy() {
   8848       if (this.colorPicker) {
   8849         this.colorPicker.destroy();
   8850       }
   8851     }
   8852   }]);
   8853   return _default;
   8854 }(_baseData.default);
   8855 
   8856 exports.default = _default;
   8857 
   8858 /***/ }),
   8859 
   8860 /***/ "../assets/dev/js/editor/controls/date-time.js":
   8861 /*!*****************************************************!*\
   8862   !*** ../assets/dev/js/editor/controls/date-time.js ***!
   8863   \*****************************************************/
   8864 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
   8865 
   8866 "use strict";
   8867 
   8868 
   8869 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
   8870 
   8871 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   8872 
   8873 _Object$defineProperty(exports, "__esModule", {
   8874   value: true
   8875 });
   8876 
   8877 exports.default = void 0;
   8878 
   8879 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   8880 
   8881 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   8882 
   8883 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   8884 
   8885 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   8886 
   8887 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js");
   8888 
   8889 var _default = /*#__PURE__*/function (_ControlBaseDataView) {
   8890   (0, _inherits2.default)(_default, _ControlBaseDataView);
   8891 
   8892   var _super = (0, _createSuper2.default)(_default);
   8893 
   8894   function _default() {
   8895     (0, _classCallCheck2.default)(this, _default);
   8896     return _super.apply(this, arguments);
   8897   }
   8898 
   8899   (0, _createClass2.default)(_default, [{
   8900     key: "onReady",
   8901     value: function onReady() {
   8902       var options = _.extend({
   8903         enableTime: true,
   8904         minuteIncrement: 1
   8905       }, this.model.get('picker_options'));
   8906 
   8907       this.ui.input.flatpickr(options);
   8908     }
   8909   }, {
   8910     key: "onBeforeDestroy",
   8911     value: function onBeforeDestroy() {
   8912       this.ui.input.flatpickr().destroy();
   8913     }
   8914   }]);
   8915   return _default;
   8916 }(ControlBaseDataView);
   8917 
   8918 exports.default = _default;
   8919 
   8920 /***/ }),
   8921 
   8922 /***/ "../assets/dev/js/editor/controls/dimensions.js":
   8923 /*!******************************************************!*\
   8924   !*** ../assets/dev/js/editor/controls/dimensions.js ***!
   8925   \******************************************************/
   8926 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   8927 
   8928 "use strict";
   8929 
   8930 
   8931 __webpack_require__(/*! core-js/modules/es6.string.link.js */ "../node_modules/core-js/modules/es6.string.link.js");
   8932 
   8933 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   8934 
   8935 var ControlBaseUnitsItemView = __webpack_require__(/*! elementor-controls/base-units */ "../assets/dev/js/editor/controls/base-units.js"),
   8936     ControlDimensionsItemView;
   8937 
   8938 ControlDimensionsItemView = ControlBaseUnitsItemView.extend({
   8939   ui: function ui() {
   8940     var ui = ControlBaseUnitsItemView.prototype.ui.apply(this, arguments);
   8941     ui.controls = '.elementor-control-dimension > input:enabled';
   8942     ui.link = 'button.elementor-link-dimensions';
   8943     return ui;
   8944   },
   8945   events: function events() {
   8946     return _.extend(ControlBaseUnitsItemView.prototype.events.apply(this, arguments), {
   8947       'click @ui.link': 'onLinkDimensionsClicked'
   8948     });
   8949   },
   8950   defaultDimensionValue: 0,
   8951   initialize: function initialize() {
   8952     ControlBaseUnitsItemView.prototype.initialize.apply(this, arguments); // TODO: Need to be in helpers, and not in variable
   8953 
   8954     this.model.set('allowed_dimensions', this.filterDimensions(this.model.get('allowed_dimensions')));
   8955   },
   8956   getPossibleDimensions: function getPossibleDimensions() {
   8957     return ['top', 'right', 'bottom', 'left'];
   8958   },
   8959   filterDimensions: function filterDimensions(filter) {
   8960     filter = filter || 'all';
   8961     var dimensions = this.getPossibleDimensions();
   8962 
   8963     if ('all' === filter) {
   8964       return dimensions;
   8965     }
   8966 
   8967     if (!_.isArray(filter)) {
   8968       if ('horizontal' === filter) {
   8969         filter = ['right', 'left'];
   8970       } else if ('vertical' === filter) {
   8971         filter = ['top', 'bottom'];
   8972       }
   8973     }
   8974 
   8975     return filter;
   8976   },
   8977   onReady: function onReady() {
   8978     var self = this,
   8979         currentValue = self.getControlValue();
   8980 
   8981     if (!self.isLinkedDimensions()) {
   8982       self.ui.link.addClass('unlinked');
   8983       self.ui.controls.each(function (index, element) {
   8984         var value = currentValue[element.dataset.setting];
   8985 
   8986         if (_.isEmpty(value)) {
   8987           value = self.defaultDimensionValue;
   8988         }
   8989 
   8990         self.$(element).val(value);
   8991       });
   8992     }
   8993 
   8994     self.fillEmptyDimensions();
   8995   },
   8996   updateDimensionsValue: function updateDimensionsValue() {
   8997     var currentValue = {},
   8998         dimensions = this.getPossibleDimensions(),
   8999         $controls = this.ui.controls,
   9000         defaultDimensionValue = this.defaultDimensionValue;
   9001     dimensions.forEach(function (dimension) {
   9002       var $element = $controls.filter('[data-setting="' + dimension + '"]');
   9003       currentValue[dimension] = $element.length ? $element.val() : defaultDimensionValue;
   9004     });
   9005     this.setValue(currentValue);
   9006   },
   9007   fillEmptyDimensions: function fillEmptyDimensions() {
   9008     var dimensions = this.getPossibleDimensions(),
   9009         allowedDimensions = this.model.get('allowed_dimensions'),
   9010         $controls = this.ui.controls,
   9011         defaultDimensionValue = this.defaultDimensionValue;
   9012 
   9013     if (this.isLinkedDimensions()) {
   9014       return;
   9015     }
   9016 
   9017     dimensions.forEach(function (dimension) {
   9018       var $element = $controls.filter('[data-setting="' + dimension + '"]'),
   9019           isAllowedDimension = -1 !== _.indexOf(allowedDimensions, dimension);
   9020 
   9021       if (isAllowedDimension && $element.length && _.isEmpty($element.val())) {
   9022         $element.val(defaultDimensionValue);
   9023       }
   9024     });
   9025   },
   9026   updateDimensions: function updateDimensions() {
   9027     this.fillEmptyDimensions();
   9028     this.updateDimensionsValue();
   9029   },
   9030   resetDimensions: function resetDimensions() {
   9031     this.ui.controls.val('');
   9032     this.updateDimensionsValue();
   9033   },
   9034   onInputChange: function onInputChange(event) {
   9035     var inputSetting = event.target.dataset.setting;
   9036 
   9037     if ('unit' === inputSetting) {
   9038       this.resetDimensions();
   9039     }
   9040 
   9041     if (!_.contains(this.getPossibleDimensions(), inputSetting)) {
   9042       return;
   9043     }
   9044 
   9045     if (this.isLinkedDimensions()) {
   9046       var $thisControl = this.$(event.target);
   9047       this.ui.controls.val($thisControl.val());
   9048     }
   9049 
   9050     this.updateDimensions();
   9051   },
   9052   onLinkDimensionsClicked: function onLinkDimensionsClicked(event) {
   9053     event.preventDefault();
   9054     event.stopPropagation();
   9055     this.ui.link.toggleClass('unlinked');
   9056     this.setValue('isLinked', !this.ui.link.hasClass('unlinked'));
   9057 
   9058     if (this.isLinkedDimensions()) {
   9059       // Set all controls value from the first control.
   9060       this.ui.controls.val(this.ui.controls.eq(0).val());
   9061     }
   9062 
   9063     this.updateDimensions();
   9064   },
   9065   isLinkedDimensions: function isLinkedDimensions() {
   9066     return this.getControlValue('isLinked');
   9067   }
   9068 });
   9069 module.exports = ControlDimensionsItemView;
   9070 
   9071 /***/ }),
   9072 
   9073 /***/ "../assets/dev/js/editor/controls/font.js":
   9074 /*!************************************************!*\
   9075   !*** ../assets/dev/js/editor/controls/font.js ***!
   9076   \************************************************/
   9077 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   9078 
   9079 "use strict";
   9080 
   9081 
   9082 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
   9083 
   9084 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
   9085 
   9086 __webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");
   9087 
   9088 var ControlSelect2View = __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js");
   9089 
   9090 module.exports = ControlSelect2View.extend({
   9091   $previewContainer: null,
   9092   getSelect2Options: function getSelect2Options() {
   9093     return {
   9094       dir: elementorCommon.config.isRTL ? 'rtl' : 'ltr',
   9095       templateSelection: this.fontPreviewTemplate,
   9096       templateResult: this.fontPreviewTemplate
   9097     };
   9098   },
   9099   onReady: function onReady() {
   9100     var self = this;
   9101     this.ui.select.select2(this.getSelect2Options());
   9102     this.ui.select.on('select2:open', function () {
   9103       self.$previewContainer = jQuery('.select2-results__options[role="tree"]:visible'); // load initial?
   9104 
   9105       setTimeout(function () {
   9106         self.enqueueFontsInView();
   9107       }, 100); // On search
   9108 
   9109       jQuery('input.select2-search__field:visible').on('keyup', function () {
   9110         self.typeStopDetection.action.apply(self);
   9111       }); // On scroll
   9112 
   9113       self.$previewContainer.on('scroll', function () {
   9114         self.scrollStopDetection.onScroll.apply(self);
   9115       });
   9116     });
   9117   },
   9118   typeStopDetection: {
   9119     idle: 350,
   9120     timeOut: null,
   9121     action: function action() {
   9122       var parent = this,
   9123           self = this.typeStopDetection;
   9124       clearTimeout(self.timeOut);
   9125       self.timeOut = setTimeout(function () {
   9126         parent.enqueueFontsInView();
   9127       }, self.idle);
   9128     }
   9129   },
   9130   scrollStopDetection: {
   9131     idle: 350,
   9132     timeOut: null,
   9133     onScroll: function onScroll() {
   9134       var parent = this,
   9135           self = this.scrollStopDetection;
   9136       clearTimeout(self.timeOut);
   9137       self.timeOut = setTimeout(function () {
   9138         parent.enqueueFontsInView();
   9139       }, self.idle);
   9140     }
   9141   },
   9142   enqueueFontsInView: function enqueueFontsInView() {
   9143     var self = this,
   9144         containerOffset = this.$previewContainer.offset(),
   9145         top = containerOffset.top,
   9146         bottom = top + this.$previewContainer.innerHeight(),
   9147         fontsInView = [];
   9148     this.$previewContainer.children().find('li:visible').each(function (index, font) {
   9149       var $font = jQuery(font),
   9150           offset = $font.offset();
   9151 
   9152       if (offset && offset.top > top && offset.top < bottom) {
   9153         fontsInView.push($font);
   9154       }
   9155     });
   9156     fontsInView.forEach(function (font) {
   9157       var fontFamily = jQuery(font).find('span').html();
   9158       elementor.helpers.enqueueFont(fontFamily, 'editor');
   9159     });
   9160   },
   9161   fontPreviewTemplate: function fontPreviewTemplate(state) {
   9162     if (!state.id) {
   9163       return state.text;
   9164     }
   9165 
   9166     return jQuery('<span>', {
   9167       text: state.text,
   9168       css: {
   9169         'font-family': state.element.value.toString()
   9170       }
   9171     });
   9172   },
   9173   templateHelpers: function templateHelpers() {
   9174     var helpers = ControlSelect2View.prototype.templateHelpers.apply(this, arguments),
   9175         fonts = this.model.get('options');
   9176 
   9177     helpers.getFontsByGroups = function (groups) {
   9178       var filteredFonts = {};
   9179 
   9180       _.each(fonts, function (fontType, fontName) {
   9181         if (_.isArray(groups) && _.contains(groups, fontType) || fontType === groups) {
   9182           filteredFonts[fontName] = fontName;
   9183         }
   9184       });
   9185 
   9186       return filteredFonts;
   9187     };
   9188 
   9189     return helpers;
   9190   }
   9191 });
   9192 
   9193 /***/ }),
   9194 
   9195 /***/ "../assets/dev/js/editor/controls/gallery.js":
   9196 /*!***************************************************!*\
   9197   !*** ../assets/dev/js/editor/controls/gallery.js ***!
   9198   \***************************************************/
   9199 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   9200 
   9201 "use strict";
   9202 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
   9203 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   9204 
   9205 
   9206 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   9207 
   9208 var _filesUploadHandler = _interopRequireDefault(__webpack_require__(/*! ../utils/files-upload-handler */ "../assets/dev/js/editor/utils/files-upload-handler.js"));
   9209 
   9210 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
   9211     ControlMediaItemView;
   9212 
   9213 ControlMediaItemView = ControlBaseDataView.extend({
   9214   ui: function ui() {
   9215     var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
   9216     ui.addImages = '.elementor-control-gallery-add';
   9217     ui.clearGallery = '.elementor-control-gallery-clear';
   9218     ui.galleryThumbnails = '.elementor-control-gallery-thumbnails';
   9219     ui.status = '.elementor-control-gallery-status-title';
   9220     return ui;
   9221   },
   9222   events: function events() {
   9223     return _.extend(ControlBaseDataView.prototype.events.apply(this, arguments), {
   9224       'click @ui.addImages': 'onAddImagesClick',
   9225       'click @ui.clearGallery': 'onClearGalleryClick',
   9226       'click @ui.galleryThumbnails': 'onGalleryThumbnailsClick'
   9227     });
   9228   },
   9229   onReady: function onReady() {
   9230     this.initRemoveDialog();
   9231   },
   9232   applySavedValue: function applySavedValue() {
   9233     var images = this.getControlValue(),
   9234         imagesCount = images.length,
   9235         hasImages = !!imagesCount;
   9236     this.$el.toggleClass('elementor-gallery-has-images', hasImages).toggleClass('elementor-gallery-empty', !hasImages);
   9237     var $galleryThumbnails = this.ui.galleryThumbnails;
   9238     $galleryThumbnails.empty();
   9239     this.ui.status.text(hasImages ? sprintf('%s Images Selected', imagesCount) : __('No Images Selected', 'elementor'));
   9240 
   9241     if (!hasImages) {
   9242       return;
   9243     }
   9244 
   9245     this.getControlValue().forEach(function (image) {
   9246       var $thumbnail = jQuery('<div>', {
   9247         class: 'elementor-control-gallery-thumbnail'
   9248       });
   9249       $thumbnail.css('background-image', 'url(' + image.url + ')');
   9250       $galleryThumbnails.append($thumbnail);
   9251     });
   9252   },
   9253   hasImages: function hasImages() {
   9254     return !!this.getControlValue().length;
   9255   },
   9256   openFrame: function openFrame(action) {
   9257     this.initFrame(action);
   9258     this.frame.open(); // Set params to trigger sanitizer
   9259 
   9260     if (_filesUploadHandler.default.isUploadEnabled('svg')) {
   9261       _filesUploadHandler.default.setUploadTypeCaller(this.frame);
   9262     }
   9263   },
   9264   initFrame: function initFrame(action) {
   9265     var frameStates = {
   9266       create: 'gallery',
   9267       add: 'gallery-library',
   9268       edit: 'gallery-edit'
   9269     };
   9270     var options = {
   9271       frame: 'post',
   9272       multiple: true,
   9273       state: frameStates[action],
   9274       button: {
   9275         text: __('Insert Media', 'elementor')
   9276       }
   9277     };
   9278 
   9279     if (this.hasImages()) {
   9280       options.selection = this.fetchSelection();
   9281     }
   9282 
   9283     this.frame = wp.media(options);
   9284     this.addSvgMimeType(); // When a file is selected, run a callback.
   9285 
   9286     this.frame.on({
   9287       update: this.select,
   9288       'menu:render:default': this.menuRender,
   9289       'content:render:browse': this.gallerySettings
   9290     }, this);
   9291   },
   9292   addSvgMimeType: function addSvgMimeType() {
   9293     if (!_filesUploadHandler.default.isUploadEnabled('svg')) {
   9294       return;
   9295     } // Add the SVG to the currently allowed extensions
   9296 
   9297 
   9298     var oldExtensions = _wpPluploadSettings.defaults.filters.mime_types[0].extensions;
   9299     this.frame.on('ready', function () {
   9300       _wpPluploadSettings.defaults.filters.mime_types[0].extensions = oldExtensions + ',svg';
   9301     }); // restore allowed upload extensions
   9302 
   9303     this.frame.on('close', function () {
   9304       _wpPluploadSettings.defaults.filters.mime_types[0].extensions = oldExtensions;
   9305     });
   9306   },
   9307   menuRender: function menuRender(view) {
   9308     view.unset('insert');
   9309     view.unset('featured-image');
   9310   },
   9311   gallerySettings: function gallerySettings(browser) {
   9312     browser.sidebar.on('ready', function () {
   9313       browser.sidebar.unset('gallery');
   9314     });
   9315   },
   9316   fetchSelection: function fetchSelection() {
   9317     var attachments = wp.media.query({
   9318       orderby: 'post__in',
   9319       order: 'ASC',
   9320       type: 'image',
   9321       perPage: -1,
   9322       post__in: _.pluck(this.getControlValue(), 'id')
   9323     });
   9324     return new wp.media.model.Selection(attachments.models, {
   9325       props: attachments.props.toJSON(),
   9326       multiple: true
   9327     });
   9328   },
   9329 
   9330   /**
   9331    * Callback handler for when an attachment is selected in the media modal.
   9332    * Gets the selected image information, and sets it within the control.
   9333    */
   9334   select: function select(selection) {
   9335     var images = [];
   9336     selection.each(function (image) {
   9337       images.push({
   9338         id: image.get('id'),
   9339         url: image.get('url')
   9340       });
   9341     });
   9342     this.setValue(images);
   9343     this.applySavedValue();
   9344   },
   9345   onBeforeDestroy: function onBeforeDestroy() {
   9346     if (this.frame) {
   9347       this.frame.off();
   9348     }
   9349 
   9350     this.$el.remove();
   9351   },
   9352   resetGallery: function resetGallery() {
   9353     this.setValue([]);
   9354     this.applySavedValue();
   9355   },
   9356   initRemoveDialog: function initRemoveDialog() {
   9357     var removeDialog;
   9358 
   9359     this.getRemoveDialog = function () {
   9360       if (!removeDialog) {
   9361         removeDialog = elementorCommon.dialogsManager.createWidget('confirm', {
   9362           message: __('Are you sure you want to reset this gallery?', 'elementor'),
   9363           headerMessage: __('Reset Gallery', 'elementor'),
   9364           strings: {
   9365             confirm: __('Delete', 'elementor'),
   9366             cancel: __('Cancel', 'elementor')
   9367           },
   9368           defaultOption: 'confirm',
   9369           onConfirm: this.resetGallery.bind(this)
   9370         });
   9371       }
   9372 
   9373       return removeDialog;
   9374     };
   9375   },
   9376   onAddImagesClick: function onAddImagesClick() {
   9377     this.openFrame(this.hasImages() ? 'add' : 'create');
   9378   },
   9379   onClearGalleryClick: function onClearGalleryClick() {
   9380     this.getRemoveDialog().show();
   9381   },
   9382   onGalleryThumbnailsClick: function onGalleryThumbnailsClick() {
   9383     this.openFrame('edit');
   9384   }
   9385 });
   9386 module.exports = ControlMediaItemView;
   9387 
   9388 /***/ }),
   9389 
   9390 /***/ "../assets/dev/js/editor/controls/hidden.js":
   9391 /*!**************************************************!*\
   9392   !*** ../assets/dev/js/editor/controls/hidden.js ***!
   9393   \**************************************************/
   9394 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   9395 
   9396 "use strict";
   9397 
   9398 
   9399 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   9400 
   9401 var _baseData = _interopRequireDefault(__webpack_require__(/*! ./base-data */ "../assets/dev/js/editor/controls/base-data.js"));
   9402 
   9403 module.exports = _baseData.default.extend({}, {
   9404   onPasteStyle: function onPasteStyle() {
   9405     return false;
   9406   }
   9407 });
   9408 
   9409 /***/ }),
   9410 
   9411 /***/ "../assets/dev/js/editor/controls/icon.js":
   9412 /*!************************************************!*\
   9413   !*** ../assets/dev/js/editor/controls/icon.js ***!
   9414   \************************************************/
   9415 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   9416 
   9417 "use strict";
   9418 
   9419 
   9420 var ControlSelect2View = __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js"),
   9421     ControlIconView;
   9422 
   9423 ControlIconView = ControlSelect2View.extend({
   9424   initialize: function initialize() {
   9425     ControlSelect2View.prototype.initialize.apply(this, arguments);
   9426     this.filterIcons();
   9427   },
   9428   filterIcons: function filterIcons() {
   9429     var icons = this.model.get('options'),
   9430         include = this.model.get('include'),
   9431         exclude = this.model.get('exclude');
   9432 
   9433     if (include) {
   9434       var filteredIcons = {};
   9435 
   9436       _.each(include, function (iconKey) {
   9437         filteredIcons[iconKey] = icons[iconKey];
   9438       });
   9439 
   9440       this.model.set('options', filteredIcons);
   9441       return;
   9442     }
   9443 
   9444     if (exclude) {
   9445       _.each(exclude, function (iconKey) {
   9446         delete icons[iconKey];
   9447       });
   9448     }
   9449   },
   9450   iconsList: function iconsList(icon) {
   9451     if (!icon.id) {
   9452       return icon.text;
   9453     }
   9454 
   9455     return jQuery('<span><i class="' + icon.id + '"></i> ' + icon.text + '</span>');
   9456   },
   9457   getSelect2Options: function getSelect2Options() {
   9458     return {
   9459       allowClear: true,
   9460       templateResult: this.iconsList.bind(this),
   9461       templateSelection: this.iconsList.bind(this)
   9462     };
   9463   }
   9464 });
   9465 module.exports = ControlIconView;
   9466 
   9467 /***/ }),
   9468 
   9469 /***/ "../assets/dev/js/editor/controls/icons.js":
   9470 /*!*************************************************!*\
   9471   !*** ../assets/dev/js/editor/controls/icons.js ***!
   9472   \*************************************************/
   9473 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   9474 
   9475 "use strict";
   9476 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   9477 
   9478 
   9479 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   9480 
   9481 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
   9482 
   9483 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
   9484 
   9485 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
   9486 
   9487 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
   9488 
   9489 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
   9490 
   9491 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
   9492 
   9493 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
   9494 
   9495 var _filesUploadHandler = _interopRequireDefault(__webpack_require__(/*! ../utils/files-upload-handler */ "../assets/dev/js/editor/utils/files-upload-handler.js"));
   9496 
   9497 var ControlMultipleBaseItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js");
   9498 
   9499 var ControlIconsView = /*#__PURE__*/function (_ControlMultipleBaseI) {
   9500   (0, _inherits2.default)(ControlIconsView, _ControlMultipleBaseI);
   9501 
   9502   var _super = (0, _createSuper2.default)(ControlIconsView);
   9503 
   9504   function ControlIconsView() {
   9505     var _this;
   9506 
   9507     (0, _classCallCheck2.default)(this, ControlIconsView);
   9508 
   9509     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
   9510       args[_key] = arguments[_key];
   9511     }
   9512 
   9513     _this = _super.call.apply(_super, [this].concat(args));
   9514     _this.cache = {
   9515       loaded: false,
   9516       dialog: false,
   9517       enableClicked: false,
   9518       fa4Mapping: false,
   9519       migratedFlag: {}
   9520     };
   9521     _this.dataKeys = {
   9522       migratedKey: '__fa4_migrated',
   9523       fa4MigrationFlag: 'fa4compatibility'
   9524     };
   9525     return _this;
   9526   }
   9527 
   9528   (0, _createClass2.default)(ControlIconsView, [{
   9529     key: "enqueueIconFonts",
   9530     value: function enqueueIconFonts(iconType) {
   9531       var iconSetting = elementor.helpers.getIconLibrarySettings(iconType);
   9532 
   9533       if (false === iconSetting || !this.isMigrationAllowed()) {
   9534         return;
   9535       }
   9536 
   9537       if (iconSetting.enqueue) {
   9538         iconSetting.enqueue.forEach(function (assetURL) {
   9539           elementor.helpers.enqueueEditorStylesheet(assetURL);
   9540           elementor.helpers.enqueuePreviewStylesheet(assetURL);
   9541         });
   9542       }
   9543 
   9544       if (iconSetting.url) {
   9545         elementor.helpers.enqueueEditorStylesheet(iconSetting.url);
   9546         elementor.helpers.enqueuePreviewStylesheet(iconSetting.url);
   9547       }
   9548     }
   9549   }, {
   9550     key: "ui",
   9551     value: function ui() {
   9552       var ui = (0, _get2.default)((0, _getPrototypeOf2.default)(ControlIconsView.prototype), "ui", this).call(this),
   9553           skin = this.model.get('skin');
   9554       ui.controlMedia = '.elementor-control-media';
   9555       ui.svgUploader = 'media' === skin ? '.elementor-control-svg-uploader' : '.elementor-control-icons--inline__svg';
   9556       ui.iconPickers = 'media' === skin ? '.elementor-control-icon-picker, .elementor-control-media__preview, .elementor-control-media-upload-button' : '.elementor-control-icons--inline__icon';
   9557       ui.deleteButton = 'media' === skin ? '.elementor-control-media__remove' : '.elementor-control-icons--inline__none';
   9558       ui.previewPlaceholder = '.elementor-control-media__preview';
   9559       ui.previewContainer = '.elementor-control-preview-area';
   9560       ui.inlineIconContainer = '.elementor-control-inline-icon';
   9561       ui.inlineDisplayedIcon = '.elementor-control-icons--inline__displayed-icon';
   9562       ui.radioInputs = '[type="radio"]';
   9563       return ui;
   9564     }
   9565   }, {
   9566     key: "events",
   9567     value: function events() {
   9568       return jQuery.extend(ControlMultipleBaseItemView.prototype.events.apply(this, arguments), {
   9569         'click @ui.iconPickers': 'openPicker',
   9570         'click @ui.svgUploader': 'openFrame',
   9571         'click @ui.radioInputs': 'onClickInput',
   9572         'click @ui.deleteButton': 'deleteIcon'
   9573       });
   9574     }
   9575   }, {
   9576     key: "getControlValue",
   9577     value: function getControlValue() {
   9578       var value = (0, _get2.default)((0, _getPrototypeOf2.default)(ControlIconsView.prototype), "getControlValue", this).call(this),
   9579           model = this.model,
   9580           valueToMigrate = this.getValueToMigrate();
   9581 
   9582       if (!this.isMigrationAllowed()) {
   9583         return valueToMigrate;
   9584       } // Bail if no migration flag or no value to migrate
   9585 
   9586 
   9587       if (!valueToMigrate) {
   9588         return value;
   9589       }
   9590 
   9591       var didMigration = this.elementSettingsModel.get(this.dataKeys.migratedKey),
   9592           controlName = model.get('name'); // Check if migration had been done and is stored locally
   9593 
   9594       if (this.cache.migratedFlag[controlName]) {
   9595         return this.cache.migratedFlag[controlName];
   9596       } // Check if already migrated
   9597 
   9598 
   9599       if (didMigration && didMigration[controlName]) {
   9600         return value;
   9601       } // Do migration
   9602 
   9603 
   9604       return this.migrateFa4toFa5(valueToMigrate);
   9605     }
   9606   }, {
   9607     key: "migrateFa4toFa5",
   9608     value: function migrateFa4toFa5(fa4Value) {
   9609       var fa5Value = elementor.helpers.mapFa4ToFa5(fa4Value);
   9610       this.cache.migratedFlag[this.model.get('name')] = fa5Value;
   9611       this.enqueueIconFonts(fa5Value.library);
   9612       return fa5Value;
   9613     }
   9614   }, {
   9615     key: "setControlAsMigrated",
   9616     value: function setControlAsMigrated(controlName) {
   9617       var didMigration = this.elementSettingsModel.get(this.dataKeys.migratedKey) || {};
   9618       didMigration[controlName] = true;
   9619       this.elementSettingsModel.set(this.dataKeys.migratedKey, didMigration, {
   9620         silent: true
   9621       });
   9622     }
   9623   }, {
   9624     key: "isMigrationAllowed",
   9625     value: function isMigrationAllowed() {
   9626       return !elementor.config['icons_update_needed'];
   9627     }
   9628   }, {
   9629     key: "getValueToMigrate",
   9630     value: function getValueToMigrate() {
   9631       var controlToMigrate = this.model.get(this.dataKeys.fa4MigrationFlag);
   9632 
   9633       if (!controlToMigrate) {
   9634         return false;
   9635       } // Check if there is a value to migrate
   9636 
   9637 
   9638       var valueToMigrate = this.container.settings.get(controlToMigrate);
   9639 
   9640       if (valueToMigrate) {
   9641         return valueToMigrate;
   9642       }
   9643 
   9644       return false;
   9645     }
   9646   }, {
   9647     key: "onReady",
   9648     value: function onReady() {
   9649       var _this2 = this;
   9650 
   9651       // is migration allowed from fa4
   9652       if (!this.isMigrationAllowed()) {
   9653         var migrationPopupTrigger = 'media' === this.model.get('skin') ? this.ui.previewContainer[0] : this.ui.inlineIconContainer[0];
   9654         migrationPopupTrigger.addEventListener('click', function (event) {
   9655           // Prevent default to prevent marking the inline icons as selected on click when migration is not allowed
   9656           event.preventDefault();
   9657           event.stopPropagation();
   9658 
   9659           var onConfirm = function onConfirm() {
   9660             window.location.href = elementor.config.tools_page_link + '&redirect_to=' + encodeURIComponent(document.location.href) + '#tab-fontawesome4_migration';
   9661           };
   9662 
   9663           var enableMigrationDialog = elementor.helpers.getSimpleDialog('elementor-enable-fa5-dialog', __('Elementor\'s New Icon Library', 'elementor'), __('Elementor v2.6 includes an upgrade from Font Awesome 4 to 5. In order to continue using icons, be sure to click "Update".', 'elementor') + ' <a href="https://go.elementor.com/fontawesome-migration/" target="_blank">' + __('Learn More', 'elementor') + '</a>', __('Update', 'elementor'), onConfirm);
   9664           enableMigrationDialog.show();
   9665           return false;
   9666         }, true);
   9667       }
   9668 
   9669       var controlName = this.model.get('name');
   9670 
   9671       if (this.cache.migratedFlag[controlName]) {
   9672         this.setControlAsMigrated(controlName);
   9673         setTimeout(function () {
   9674           _this2.setValue(_this2.cache.migratedFlag[controlName]);
   9675         }, 10);
   9676       }
   9677     }
   9678   }, {
   9679     key: "onRender",
   9680     value: function onRender() {
   9681       (0, _get2.default)((0, _getPrototypeOf2.default)(ControlIconsView.prototype), "onRender", this).call(this);
   9682 
   9683       if (this.isMigrationAllowed()) {
   9684         elementor.iconManager.loadIconLibraries();
   9685       }
   9686     }
   9687   }, {
   9688     key: "initFrame",
   9689     value: function initFrame() {
   9690       var _this3 = this;
   9691 
   9692       // Set current doc id to attach uploaded images.
   9693       wp.media.view.settings.post.id = elementor.config.document.id;
   9694       this.frame = wp.media({
   9695         button: {
   9696           text: __('Insert Media', 'elementor')
   9697         },
   9698         library: {
   9699           type: ['image/svg+xml']
   9700         },
   9701         states: [new wp.media.controller.Library({
   9702           title: __('Insert Media', 'elementor'),
   9703           library: wp.media.query({
   9704             type: ['image/svg+xml']
   9705           }),
   9706           multiple: false,
   9707           date: false
   9708         })]
   9709       });
   9710 
   9711       var handleSelect = function handleSelect() {
   9712         return _this3.selectSvg();
   9713       }; // When a file is selected, run a callback.
   9714 
   9715 
   9716       this.frame.on('insert select', handleSelect);
   9717       this.setUploadMimeType(this.frame, 'svg');
   9718     }
   9719   }, {
   9720     key: "setUploadMimeType",
   9721     value: function setUploadMimeType(frame, ext) {
   9722       // Set svg as only allowed upload extensions
   9723       var oldExtensions = _wpPluploadSettings.defaults.filters.mime_types[0].extensions;
   9724       frame.on('ready', function () {
   9725         _wpPluploadSettings.defaults.filters.mime_types[0].extensions = ext;
   9726       });
   9727       this.frame.on('close', function () {
   9728         // restore allowed upload extensions
   9729         _wpPluploadSettings.defaults.filters.mime_types[0].extensions = oldExtensions;
   9730       });
   9731     }
   9732     /**
   9733      * Callback handler for when an attachment is selected in the media modal.
   9734      * Gets the selected image information, and sets it within the control.
   9735      */
   9736 
   9737   }, {
   9738     key: "selectSvg",
   9739     value: function selectSvg() {
   9740       this.trigger('before:select'); // Get the attachment from the modal frame.
   9741 
   9742       var attachment = this.frame.state().get('selection').first().toJSON();
   9743 
   9744       if (attachment.url) {
   9745         this.setValue({
   9746           value: {
   9747             url: attachment.url,
   9748             id: attachment.id
   9749           },
   9750           library: 'svg'
   9751         });
   9752         this.applySavedValue();
   9753       }
   9754 
   9755       this.trigger('after:select');
   9756     }
   9757   }, {
   9758     key: "openFrame",
   9759     value: function openFrame() {
   9760       var _this4 = this;
   9761 
   9762       if (!_filesUploadHandler.default.isUploadEnabled('svg')) {
   9763         _filesUploadHandler.default.getUnfilteredFilesNotEnabledDialog(function () {
   9764           return _this4.openFrame();
   9765         }).show();
   9766 
   9767         return false;
   9768       }
   9769 
   9770       if (!this.frame) {
   9771         this.initFrame();
   9772       }
   9773 
   9774       this.frame.open(); // Set params to trigger sanitizer
   9775 
   9776       _filesUploadHandler.default.setUploadTypeCaller(this.frame);
   9777 
   9778       var selectedId = this.getControlValue('id');
   9779 
   9780       if (!selectedId) {
   9781         return;
   9782       }
   9783 
   9784       var selection = this.frame.state().get('selection');
   9785       selection.add(wp.media.attachment(selectedId));
   9786     }
   9787   }, {
   9788     key: "openPicker",
   9789     value: function openPicker() {
   9790       elementor.iconManager.show({
   9791         view: this
   9792       });
   9793     }
   9794   }, {
   9795     key: "applySavedValue",
   9796     value: function applySavedValue() {
   9797       var _this5 = this;
   9798 
   9799       var controlValue = this.getControlValue(),
   9800           skin = this.model.get('skin'),
   9801           iconContainer = 'inline' === skin ? this.ui.inlineDisplayedIcon : this.ui.previewPlaceholder,
   9802           defaultIcon = this.model.get('default');
   9803       var iconValue = controlValue.value,
   9804           iconType = controlValue.library;
   9805 
   9806       if (!this.isMigrationAllowed() && !iconValue && this.getValueToMigrate()) {
   9807         iconValue = this.getControlValue();
   9808         iconType = '';
   9809       }
   9810 
   9811       if ('media' === skin) {
   9812         this.ui.controlMedia.toggleClass('elementor-media-empty', !iconValue);
   9813       } else {
   9814         this.markChecked(iconType);
   9815       }
   9816 
   9817       if (!iconValue) {
   9818         if ('inline' === skin) {
   9819           this.setDefaultIconLibraryLabel(defaultIcon, iconContainer);
   9820           return;
   9821         }
   9822 
   9823         this.ui.previewPlaceholder.html('');
   9824         return;
   9825       }
   9826 
   9827       if ('svg' === iconType && 'inline' !== skin) {
   9828         return elementor.helpers.fetchInlineSvg(iconValue.url, function (data) {
   9829           _this5.ui.previewPlaceholder.html(data);
   9830         });
   9831       }
   9832 
   9833       if ('media' === skin || 'svg' !== iconType) {
   9834         var previewHTML = '<i class="' + iconValue + '"></i>';
   9835         iconContainer.html(previewHTML);
   9836       }
   9837 
   9838       this.enqueueIconFonts(iconType);
   9839     }
   9840   }, {
   9841     key: "setDefaultIconLibraryLabel",
   9842     value: function setDefaultIconLibraryLabel(defaultIcon, iconContainer) {
   9843       // Check if the control has a default icon
   9844       if ('' !== defaultIcon.value && 'svg' !== defaultIcon.library) {
   9845         // If the default icon is not an SVG, set the icon-library label's icon to the default icon
   9846         iconContainer.html('<i class="' + defaultIcon.value + '"></i>');
   9847       } else {
   9848         // If (1) the control does NOT have a default icon,
   9849         // OR (2) the control DOES have a default icon BUT the default icon is an SVG,
   9850         // set the default icon-library label's icon to a simple circle
   9851         iconContainer.html('<i class="eicon-circle"></i>');
   9852       }
   9853     }
   9854   }, {
   9855     key: "markChecked",
   9856     value: function markChecked(iconType) {
   9857       this.ui.radioInputs.filter(':checked').prop('checked', false);
   9858 
   9859       if (!iconType) {
   9860         return this.ui.radioInputs.filter('[value="none"]').prop('checked', true);
   9861       }
   9862 
   9863       if ('svg' !== iconType) {
   9864         iconType = 'icon';
   9865       }
   9866 
   9867       this.ui.radioInputs.filter('[value="' + iconType + '"]').prop('checked', true);
   9868     }
   9869   }, {
   9870     key: "onClickInput",
   9871     value: function onClickInput() {
   9872       this.markChecked(this.getControlValue().library);
   9873     }
   9874   }, {
   9875     key: "deleteIcon",
   9876     value: function deleteIcon(event) {
   9877       event.stopPropagation();
   9878       this.setValue({
   9879         value: '',
   9880         library: ''
   9881       });
   9882       this.applySavedValue();
   9883     }
   9884   }, {
   9885     key: "onBeforeDestroy",
   9886     value: function onBeforeDestroy() {
   9887       this.$el.remove();
   9888     }
   9889   }]);
   9890   return ControlIconsView;
   9891 }(ControlMultipleBaseItemView);
   9892 
   9893 module.exports = ControlIconsView;
   9894 
   9895 /***/ }),
   9896 
   9897 /***/ "../assets/dev/js/editor/controls/image-dimensions.js":
   9898 /*!************************************************************!*\
   9899   !*** ../assets/dev/js/editor/controls/image-dimensions.js ***!
   9900   \************************************************************/
   9901 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   9902 
   9903 "use strict";
   9904 
   9905 
   9906 var ControlMultipleBaseItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
   9907     ControlImageDimensionsItemView;
   9908 
   9909 ControlImageDimensionsItemView = ControlMultipleBaseItemView.extend({
   9910   ui: function ui() {
   9911     return {
   9912       inputWidth: 'input[data-setting="width"]',
   9913       inputHeight: 'input[data-setting="height"]',
   9914       btnApply: 'button.elementor-image-dimensions-apply-button'
   9915     };
   9916   },
   9917   // Override the base events
   9918   events: function events() {
   9919     return {
   9920       'click @ui.btnApply': 'onApplyClicked',
   9921       'keyup @ui.inputWidth': 'onDimensionKeyUp',
   9922       'keyup @ui.inputHeight': 'onDimensionKeyUp'
   9923     };
   9924   },
   9925   onDimensionKeyUp: function onDimensionKeyUp(event) {
   9926     var ENTER_KEY = 13;
   9927 
   9928     if (ENTER_KEY === event.keyCode) {
   9929       this.onApplyClicked(event);
   9930     }
   9931   },
   9932   onApplyClicked: function onApplyClicked(event) {
   9933     event.preventDefault();
   9934     this.setValue({
   9935       width: this.ui.inputWidth.val(),
   9936       height: this.ui.inputHeight.val()
   9937     });
   9938   }
   9939 });
   9940 module.exports = ControlImageDimensionsItemView;
   9941 
   9942 /***/ }),
   9943 
   9944 /***/ "../assets/dev/js/editor/controls/media.js":
   9945 /*!*************************************************!*\
   9946   !*** ../assets/dev/js/editor/controls/media.js ***!
   9947   \*************************************************/
   9948 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
   9949 
   9950 "use strict";
   9951 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
   9952 
   9953 
   9954 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
   9955 
   9956 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
   9957 
   9958 __webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");
   9959 
   9960 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
   9961 
   9962 var _filesUploadHandler = _interopRequireDefault(__webpack_require__(/*! ../utils/files-upload-handler */ "../assets/dev/js/editor/utils/files-upload-handler.js"));
   9963 
   9964 var ControlMultipleBaseItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
   9965     ControlMediaItemView;
   9966 
   9967 ControlMediaItemView = ControlMultipleBaseItemView.extend({
   9968   ui: function ui() {
   9969     var ui = ControlMultipleBaseItemView.prototype.ui.apply(this, arguments);
   9970     ui.controlMedia = '.elementor-control-media';
   9971     ui.mediaImage = '.elementor-control-media__preview';
   9972     ui.mediaVideo = '.elementor-control-media-video';
   9973     ui.frameOpeners = '.elementor-control-preview-area';
   9974     ui.removeButton = '.elementor-control-media__remove';
   9975     ui.fileName = '.elementor-control-media__file__content__info__name';
   9976     return ui;
   9977   },
   9978   events: function events() {
   9979     return _.extend(ControlMultipleBaseItemView.prototype.events.apply(this, arguments), {
   9980       'click @ui.frameOpeners': 'openFrame',
   9981       'click @ui.removeButton': 'deleteImage'
   9982     });
   9983   },
   9984   getMediaType: function getMediaType() {
   9985     // `get( 'media_type' )` is for BC.
   9986     return this.mediaType || this.model.get('media_type') || this.model.get('media_types')[0];
   9987   },
   9988 
   9989   /**
   9990    * Get library type for `wp.media` using a given media type.
   9991    *
   9992    * @param {String} mediaType - The media type to get the library for.
   9993    * @returns {String}
   9994    */
   9995   getLibraryType: function getLibraryType(mediaType) {
   9996     if (!mediaType) {
   9997       mediaType = this.getMediaType();
   9998     }
   9999 
  10000     return 'svg' === mediaType ? 'image/svg+xml' : mediaType;
  10001   },
  10002   applySavedValue: function applySavedValue() {
  10003     var _this$getControlPlace;
  10004 
  10005     var value = this.getControlValue('url'),
  10006         url = value || ((_this$getControlPlace = this.getControlPlaceholder()) === null || _this$getControlPlace === void 0 ? void 0 : _this$getControlPlace.url),
  10007         mediaType = this.getMediaType();
  10008 
  10009     if (['image', 'svg'].includes(mediaType)) {
  10010       this.ui.mediaImage.css('background-image', url ? 'url(' + url + ')' : '');
  10011 
  10012       if (!value && url) {
  10013         this.ui.mediaImage.css('opacity', 0.5);
  10014       }
  10015     } else if ('video' === mediaType) {
  10016       this.ui.mediaVideo.attr('src', url);
  10017     } else {
  10018       var fileName = url ? url.split('/').pop() : '';
  10019       this.ui.fileName.text(fileName);
  10020     }
  10021 
  10022     this.ui.controlMedia.toggleClass('elementor-media-empty', !value);
  10023   },
  10024   openFrame: function openFrame(e) {
  10025     var _e$target,
  10026         _e$target$dataset,
  10027         _this = this;
  10028 
  10029     var mediaType = (e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : (_e$target$dataset = _e$target.dataset) === null || _e$target$dataset === void 0 ? void 0 : _e$target$dataset.mediaType) || this.getMediaType();
  10030     this.mediaType = mediaType;
  10031 
  10032     if (!mediaType) {
  10033       return;
  10034     }
  10035 
  10036     if (!_filesUploadHandler.default.isUploadEnabled(mediaType)) {
  10037       _filesUploadHandler.default.getUnfilteredFilesNotEnabledDialog(function () {
  10038         return _this.openFrame(e);
  10039       }).show();
  10040 
  10041       return false;
  10042     } // If there is no frame, or the current initialized frame contains a different library than
  10043     // the `data-media-type` of the clicked button, (re)initialize the frame.
  10044 
  10045 
  10046     if (!this.frame || this.getLibraryType(mediaType) !== this.currentLibraryType) {
  10047       this.initFrame();
  10048     }
  10049 
  10050     this.frame.open(); // Set params to trigger sanitizer
  10051 
  10052     _filesUploadHandler.default.setUploadTypeCaller(this.frame);
  10053 
  10054     var selectedId = this.getControlValue('id');
  10055 
  10056     if (!selectedId) {
  10057       return;
  10058     }
  10059 
  10060     this.frame.state().get('selection').add(wp.media.attachment(selectedId));
  10061   },
  10062   deleteImage: function deleteImage(event) {
  10063     event.stopPropagation();
  10064     this.setValue({
  10065       url: '',
  10066       id: ''
  10067     });
  10068     this.applySavedValue();
  10069   },
  10070 
  10071   /**
  10072    * Create a media modal select frame, and store it so the instance can be reused when needed.
  10073    */
  10074   initFrame: function initFrame() {
  10075     var mediaType = this.getMediaType();
  10076     this.currentLibraryType = this.getLibraryType(mediaType); // Set current doc id to attach uploaded images.
  10077 
  10078     wp.media.view.settings.post.id = elementor.config.document.id;
  10079     this.frame = wp.media({
  10080       frame: 'post',
  10081       type: 'image',
  10082       multiple: false,
  10083       states: [new wp.media.controller.Library({
  10084         title: __('Insert Media', 'elementor'),
  10085         library: wp.media.query({
  10086           type: this.currentLibraryType
  10087         }),
  10088         multiple: false,
  10089         date: false
  10090       })]
  10091     }); // Remove unwanted elements when frame is opened.
  10092 
  10093     this.frame.on('ready open', this.onFrameReady.bind(this)); // When a file is selected, run a callback.
  10094 
  10095     this.frame.on('insert select', this.select.bind(this));
  10096 
  10097     if (elementor.config.filesUpload.unfilteredFiles) {
  10098       this.setUploadMimeType(this.frame, mediaType);
  10099     }
  10100   },
  10101 
  10102   /**
  10103    * Hack to remove unwanted elements from modal & Open the `Insert from URL` tab.
  10104    */
  10105   onFrameReady: function onFrameReady() {
  10106     var $frame = this.frame.$el;
  10107     var elementsToRemove = ['#menu-item-insert', '#menu-item-gallery', '#menu-item-playlist', '#menu-item-video-playlist', '.embed-link-settings'];
  10108     $frame.find(elementsToRemove.join(',')).remove(); // Change the default button text using CSS by passing the text as a variable.
  10109 
  10110     $frame.css('--button-text', "'".concat(__('Insert Media', 'elementor'), "'")); // Remove elements from the URL upload tab.
  10111 
  10112     $frame.addClass('e-wp-media-elements-removed');
  10113 
  10114     if ('url' === this.getControlValue('source')) {
  10115       // Go to the url tab.
  10116       $frame.find('#menu-item-embed').trigger('click'); // Hide the top media tabs ( WordPress does that automatically if a real user clicks the url tab ).
  10117 
  10118       $frame.addClass('hide-router'); // Load the image URL.
  10119 
  10120       this.frame.views.get('.media-frame-content')[0].url.model.set({
  10121         url: this.getControlValue('url'),
  10122         alt: this.getControlValue('alt')
  10123       });
  10124     } else {
  10125       // Go to the upload tab.
  10126       $frame.find('#menu-item-library').trigger('click');
  10127     }
  10128   },
  10129   setUploadMimeType: function setUploadMimeType(frame, ext) {
  10130     // Add unfiltered files to the allowed upload extensions
  10131     var oldExtensions = _wpPluploadSettings.defaults.filters.mime_types[0].extensions;
  10132     frame.on('ready', function () {
  10133       _wpPluploadSettings.defaults.filters.mime_types[0].extensions = 'application/json' === ext ? 'json' : oldExtensions + ',svg';
  10134     });
  10135     this.frame.on('close', function () {
  10136       // Restore allowed upload extensions
  10137       _wpPluploadSettings.defaults.filters.mime_types[0].extensions = oldExtensions;
  10138     });
  10139   },
  10140 
  10141   /**
  10142    * Callback handler for when an attachment is selected in the media modal.
  10143    * Gets the selected image information, and sets it within the control.
  10144    */
  10145   select: function select() {
  10146     this.trigger('before:select');
  10147     var state = this.frame.state();
  10148     var attachment;
  10149 
  10150     if ('embed' === state.get('id')) {
  10151       // Insert from URL.
  10152       attachment = {
  10153         url: state.props.get('url'),
  10154         id: '',
  10155         alt: state.props.get('alt'),
  10156         source: 'url'
  10157       };
  10158     } else {
  10159       // Get the attachment from the modal frame.
  10160       attachment = this.frame.state().get('selection').first().toJSON();
  10161       attachment.source = 'library';
  10162     }
  10163 
  10164     if (attachment.url) {
  10165       this.setValue({
  10166         url: attachment.url,
  10167         id: attachment.id,
  10168         alt: attachment.alt,
  10169         source: attachment.source
  10170       });
  10171 
  10172       if (this.model.get('responsive')) {
  10173         // Render is already calls `applySavedValue`, therefore there's no need for it in this case.
  10174         this.renderWithChildren();
  10175       } else {
  10176         this.applySavedValue();
  10177       }
  10178     }
  10179 
  10180     this.trigger('after:select');
  10181   },
  10182   onBeforeDestroy: function onBeforeDestroy() {
  10183     this.$el.remove();
  10184   }
  10185 });
  10186 module.exports = ControlMediaItemView;
  10187 
  10188 /***/ }),
  10189 
  10190 /***/ "../assets/dev/js/editor/controls/number.js":
  10191 /*!**************************************************!*\
  10192   !*** ../assets/dev/js/editor/controls/number.js ***!
  10193   \**************************************************/
  10194 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  10195 
  10196 "use strict";
  10197 
  10198 
  10199 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
  10200     ControlNumberItemView;
  10201 
  10202 ControlNumberItemView = ControlBaseDataView.extend({
  10203   registerValidators: function registerValidators() {
  10204     ControlBaseDataView.prototype.registerValidators.apply(this, arguments);
  10205     var validationTerms = {},
  10206         model = this.model;
  10207     ['min', 'max'].forEach(function (term) {
  10208       var termValue = model.get(term);
  10209 
  10210       if (_.isFinite(termValue)) {
  10211         validationTerms[term] = termValue;
  10212       }
  10213     });
  10214 
  10215     if (!jQuery.isEmptyObject(validationTerms)) {
  10216       this.addValidator(new this.validatorTypes.Number({
  10217         validationTerms: validationTerms
  10218       }));
  10219     }
  10220   }
  10221 });
  10222 module.exports = ControlNumberItemView;
  10223 
  10224 /***/ }),
  10225 
  10226 /***/ "../assets/dev/js/editor/controls/order.js":
  10227 /*!*************************************************!*\
  10228   !*** ../assets/dev/js/editor/controls/order.js ***!
  10229   \*************************************************/
  10230 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  10231 
  10232 "use strict";
  10233 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  10234 
  10235 
  10236 var ControlMultipleBaseItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
  10237     ControlOrderItemView;
  10238 
  10239 ControlOrderItemView = ControlMultipleBaseItemView.extend({
  10240   ui: function ui() {
  10241     var ui = ControlMultipleBaseItemView.prototype.ui.apply(this, arguments);
  10242     ui.reverseOrderLabel = '.elementor-control-order-label';
  10243     return ui;
  10244   },
  10245   changeLabelTitle: function changeLabelTitle() {
  10246     var reverseOrder = this.getControlValue('reverse_order');
  10247     this.ui.reverseOrderLabel.attr('title', reverseOrder ? __('Ascending order', 'elementor') : __('Descending order', 'elementor'));
  10248   },
  10249   onRender: function onRender() {
  10250     ControlMultipleBaseItemView.prototype.onRender.apply(this, arguments);
  10251     this.changeLabelTitle();
  10252   },
  10253   onInputChange: function onInputChange() {
  10254     this.changeLabelTitle();
  10255   }
  10256 });
  10257 module.exports = ControlOrderItemView;
  10258 
  10259 /***/ }),
  10260 
  10261 /***/ "../assets/dev/js/editor/controls/popover-toggle.js":
  10262 /*!**********************************************************!*\
  10263   !*** ../assets/dev/js/editor/controls/popover-toggle.js ***!
  10264   \**********************************************************/
  10265 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  10266 
  10267 "use strict";
  10268 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  10269 
  10270 
  10271 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  10272 
  10273 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  10274 
  10275 _Object$defineProperty(exports, "__esModule", {
  10276   value: true
  10277 });
  10278 
  10279 exports.default = void 0;
  10280 
  10281 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
  10282 
  10283 __webpack_require__(/*! core-js/modules/es6.string.starts-with.js */ "../node_modules/core-js/modules/es6.string.starts-with.js");
  10284 
  10285 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  10286 
  10287 __webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");
  10288 
  10289 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
  10290 
  10291 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  10292 
  10293 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
  10294 
  10295 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));
  10296 
  10297 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  10298 
  10299 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  10300 
  10301 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  10302 
  10303 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  10304 
  10305 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  10306 
  10307 var ControlChooseView = __webpack_require__(/*! elementor-controls/choose */ "../assets/dev/js/editor/controls/choose.js");
  10308 
  10309 var ControlPopoverStarterView = /*#__PURE__*/function (_ControlChooseView) {
  10310   (0, _inherits2.default)(ControlPopoverStarterView, _ControlChooseView);
  10311 
  10312   var _super = (0, _createSuper2.default)(ControlPopoverStarterView);
  10313 
  10314   function ControlPopoverStarterView() {
  10315     (0, _classCallCheck2.default)(this, ControlPopoverStarterView);
  10316     return _super.apply(this, arguments);
  10317   }
  10318 
  10319   (0, _createClass2.default)(ControlPopoverStarterView, [{
  10320     key: "ui",
  10321     value: function ui() {
  10322       var ui = ControlChooseView.prototype.ui.apply(this, arguments);
  10323       ui.popoverToggle = '.elementor-control-popover-toggle-toggle';
  10324       ui.resetInput = '.elementor-control-popover-toggle-reset';
  10325       return ui;
  10326     }
  10327   }, {
  10328     key: "events",
  10329     value: function events() {
  10330       return _.extend(ControlChooseView.prototype.events.apply(this, arguments), {
  10331         'click @ui.popoverToggle': 'onPopoverToggleClick',
  10332         'click @ui.resetInput': 'onResetInputClick'
  10333       });
  10334     }
  10335   }, {
  10336     key: "onResetInputClick",
  10337     value: function onResetInputClick() {
  10338       var globalData = this.model.get('global');
  10339 
  10340       if (globalData !== null && globalData !== void 0 && globalData.active) {
  10341         this.triggerMethod('value:type:change');
  10342       }
  10343     }
  10344   }, {
  10345     key: "onInputChange",
  10346     value: function onInputChange(event) {
  10347       if (event.currentTarget !== this.ui.popoverToggle[0]) {
  10348         return;
  10349       } // If the control has a global value, unset the global.
  10350 
  10351 
  10352       if (this.getGlobalKey()) {
  10353         this.triggerMethod('unset:global:value');
  10354       } else if (this.isGlobalActive()) {
  10355         this.triggerMethod('value:type:change');
  10356       }
  10357     }
  10358   }, {
  10359     key: "onPopoverToggleClick",
  10360     value: function onPopoverToggleClick() {
  10361       if (this.isGlobalActive() && !this.getControlValue() && !this.getGlobalKey() && this.getGlobalDefault()) {
  10362         this.triggerMethod('unlink:global:default');
  10363       }
  10364 
  10365       this.$el.next('.elementor-controls-popover').toggle();
  10366     }
  10367   }, {
  10368     key: "getGlobalCommand",
  10369     value: function getGlobalCommand() {
  10370       return 'globals/typography';
  10371     }
  10372   }, {
  10373     key: "buildPreviewItemCSS",
  10374     value: function buildPreviewItemCSS(globalValue) {
  10375       var cssObject = {};
  10376       (0, _entries.default)(globalValue).forEach(function (_ref) {
  10377         var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  10378             property = _ref2[0],
  10379             value = _ref2[1];
  10380 
  10381         // If a control value is empty, ignore it.
  10382         if (!value || '' === value.size) {
  10383           return;
  10384         }
  10385 
  10386         if (property.startsWith('typography_')) {
  10387           property = property.replace('typography_', '');
  10388         }
  10389 
  10390         if ('font_family' === property) {
  10391           elementor.helpers.enqueueFont(value, 'editor');
  10392         }
  10393 
  10394         if ('font_size' === property) {
  10395           // Set max size for Typography previews in the select popover so it isn't too big.
  10396           if (value.size > 40) {
  10397             value.size = 40;
  10398           }
  10399 
  10400           cssObject.fontSize = value.size + value.unit;
  10401         } else {
  10402           // Convert the snake case property names into camel case to match their corresponding CSS property names.
  10403           if (property.includes('_')) {
  10404             property = property.replace(/([_][a-z])/g, function (result) {
  10405               return result.toUpperCase().replace('_', '');
  10406             });
  10407           }
  10408 
  10409           cssObject[property] = value;
  10410         }
  10411       });
  10412       return cssObject;
  10413     }
  10414   }, {
  10415     key: "createGlobalItemMarkup",
  10416     value: function createGlobalItemMarkup(globalData) {
  10417       var $typographyPreview = jQuery('<div>', {
  10418         class: 'e-global__preview-item e-global__typography',
  10419         'data-global-id': globalData.id
  10420       });
  10421       $typographyPreview.html(globalData.title).css(this.buildPreviewItemCSS(globalData.value));
  10422       return $typographyPreview;
  10423     }
  10424   }, {
  10425     key: "getGlobalMeta",
  10426     value: function getGlobalMeta() {
  10427       return {
  10428         commandName: this.getGlobalCommand(),
  10429         key: this.model.get('name'),
  10430         title: __('New Typography Setting', 'elementor'),
  10431         controlType: 'typography',
  10432         route: 'panel/global/global-typography'
  10433       };
  10434     }
  10435   }, {
  10436     key: "getAddGlobalConfirmMessage",
  10437     value: function getAddGlobalConfirmMessage() {
  10438       var globalData = this.getGlobalMeta(),
  10439           $message = jQuery('<div>', {
  10440         class: 'e-global__confirm-message'
  10441       }),
  10442           $messageText = jQuery('<div>').html(__('Are you sure you want to create a new Global Font setting?', 'elementor')),
  10443           $inputWrapper = jQuery('<div>', {
  10444         class: 'e-global__confirm-input-wrapper'
  10445       }),
  10446           $input = jQuery('<input>', {
  10447         type: 'text',
  10448         name: 'global-name',
  10449         placeholder: globalData.title
  10450       }).val(globalData.title);
  10451       $inputWrapper.append($input);
  10452       $message.append($messageText, $inputWrapper);
  10453       return $message;
  10454     }
  10455   }, {
  10456     key: "getGlobalsList",
  10457     value: function () {
  10458       var _getGlobalsList = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
  10459         var result;
  10460         return _regenerator.default.wrap(function _callee$(_context) {
  10461           while (1) {
  10462             switch (_context.prev = _context.next) {
  10463               case 0:
  10464                 _context.next = 2;
  10465                 return $e.data.get(this.getGlobalCommand());
  10466 
  10467               case 2:
  10468                 result = _context.sent;
  10469                 return _context.abrupt("return", result.data);
  10470 
  10471               case 4:
  10472               case "end":
  10473                 return _context.stop();
  10474             }
  10475           }
  10476         }, _callee, this);
  10477       }));
  10478 
  10479       function getGlobalsList() {
  10480         return _getGlobalsList.apply(this, arguments);
  10481       }
  10482 
  10483       return getGlobalsList;
  10484     }()
  10485   }, {
  10486     key: "buildGlobalsList",
  10487     value: function buildGlobalsList(globalTypographies, $globalPreviewItemsContainer) {
  10488       var _this = this;
  10489 
  10490       (0, _values.default)(globalTypographies).forEach(function (typography) {
  10491         // Only build markup if the typography is valid.
  10492         if (typography) {
  10493           var $typographyPreview = _this.createGlobalItemMarkup(typography);
  10494 
  10495           $globalPreviewItemsContainer.append($typographyPreview);
  10496         }
  10497       });
  10498     }
  10499   }, {
  10500     key: "onAddGlobalButtonClick",
  10501     value: function onAddGlobalButtonClick() {
  10502       this.triggerMethod('add:global:to:list', this.getAddGlobalConfirmMessage());
  10503     }
  10504   }]);
  10505   return ControlPopoverStarterView;
  10506 }(ControlChooseView);
  10507 
  10508 exports.default = ControlPopoverStarterView;
  10509 
  10510 ControlPopoverStarterView.onPasteStyle = function (control, clipboardValue) {
  10511   return !clipboardValue || clipboardValue === control.return_value;
  10512 };
  10513 
  10514 /***/ }),
  10515 
  10516 /***/ "../assets/dev/js/editor/controls/repeater-row.js":
  10517 /*!********************************************************!*\
  10518   !*** ../assets/dev/js/editor/controls/repeater-row.js ***!
  10519   \********************************************************/
  10520 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  10521 
  10522 "use strict";
  10523 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
  10524 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  10525 
  10526 
  10527 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  10528 
  10529 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
  10530 
  10531 __webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");
  10532 
  10533 __webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");
  10534 
  10535 var _controlsStack = _interopRequireDefault(__webpack_require__(/*! elementor-views/controls-stack */ "../assets/dev/js/editor/views/controls-stack.js"));
  10536 
  10537 module.exports = Marionette.CompositeView.extend({
  10538   template: Marionette.TemplateCache.get('#tmpl-elementor-repeater-row'),
  10539   className: 'elementor-repeater-fields',
  10540   ui: {
  10541     duplicateButton: '.elementor-repeater-tool-duplicate',
  10542     editButton: '.elementor-repeater-tool-edit',
  10543     removeButton: '.elementor-repeater-tool-remove',
  10544     itemTitle: '.elementor-repeater-row-item-title'
  10545   },
  10546   behaviors: {
  10547     HandleInnerTabs: {
  10548       behaviorClass: __webpack_require__(/*! elementor-behaviors/inner-tabs */ "../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js")
  10549     }
  10550   },
  10551   triggers: {
  10552     'click @ui.removeButton': 'click:remove',
  10553     'click @ui.duplicateButton': 'click:duplicate',
  10554     'click @ui.itemTitle': 'click:edit'
  10555   },
  10556   modelEvents: {
  10557     change: 'onModelChange'
  10558   },
  10559   templateHelpers: function templateHelpers() {
  10560     return {
  10561       itemIndex: this.getOption('itemIndex'),
  10562       itemActions: this.getOption('itemActions')
  10563     };
  10564   },
  10565   childViewContainer: '.elementor-repeater-row-controls',
  10566   getChildView: function getChildView(item) {
  10567     var controlType = item.get('type');
  10568     return elementor.getControlView(controlType);
  10569   },
  10570   childViewOptions: function childViewOptions() {
  10571     return {
  10572       container: this.options.container
  10573     };
  10574   },
  10575   updateIndex: function updateIndex(newIndex) {
  10576     this.itemIndex = newIndex;
  10577   },
  10578   setTitle: function setTitle() {
  10579     var titleField = this.getOption('titleField');
  10580     var title = '';
  10581 
  10582     if (titleField) {
  10583       title = Marionette.TemplateCache.prototype.compileTemplate(titleField)(this.model.parseDynamicSettings());
  10584     }
  10585 
  10586     if (!title) {
  10587       /* translators: %s: Item Index (number). */
  10588       title = sprintf(__('Item #%s', 'elementor'), this.getOption('itemIndex'));
  10589     }
  10590 
  10591     this.ui.itemTitle.html(title);
  10592   },
  10593   toggleSort: function toggleSort(enable) {
  10594     this.$el.toggleClass('elementor-repeater-row--disable-sort', !enable);
  10595   },
  10596   initialize: function initialize(options) {
  10597     this.itemIndex = 0; // Collection for Controls list
  10598 
  10599     this.collection = new Backbone.Collection(_.values(elementor.mergeControlsSettings(options.controlFields)));
  10600   },
  10601   onRender: function onRender() {
  10602     this.setTitle();
  10603 
  10604     _controlsStack.default.handlePopovers(this);
  10605   },
  10606   onModelChange: function onModelChange() {
  10607     if (this.getOption('titleField')) {
  10608       this.setTitle();
  10609     }
  10610   },
  10611   onChildviewResponsiveSwitcherClick: function onChildviewResponsiveSwitcherClick(childView, device) {
  10612     if ('desktop' === device) {
  10613       elementor.getPanelView().getCurrentPageView().$el.toggleClass('elementor-responsive-switchers-open');
  10614     }
  10615   }
  10616 });
  10617 
  10618 /***/ }),
  10619 
  10620 /***/ "../assets/dev/js/editor/controls/repeater.js":
  10621 /*!****************************************************!*\
  10622   !*** ../assets/dev/js/editor/controls/repeater.js ***!
  10623   \****************************************************/
  10624 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  10625 
  10626 "use strict";
  10627 
  10628 
  10629 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  10630 
  10631 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  10632 
  10633 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  10634 
  10635 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
  10636     RepeaterRowView = __webpack_require__(/*! elementor-controls/repeater-row */ "../assets/dev/js/editor/controls/repeater-row.js"),
  10637     ControlRepeaterItemView;
  10638 
  10639 ControlRepeaterItemView = ControlBaseDataView.extend({
  10640   ui: {
  10641     btnAddRow: '.elementor-repeater-add',
  10642     fieldContainer: '.elementor-repeater-fields-wrapper'
  10643   },
  10644   events: function events() {
  10645     return {
  10646       'click @ui.btnAddRow': 'onButtonAddRowClick',
  10647       'sortstart @ui.fieldContainer': 'onSortStart',
  10648       'sortupdate @ui.fieldContainer': 'onSortUpdate',
  10649       'sortstop @ui.fieldContainer': 'onSortStop'
  10650     };
  10651   },
  10652   childView: RepeaterRowView,
  10653   childViewContainer: '.elementor-repeater-fields-wrapper',
  10654   templateHelpers: function templateHelpers() {
  10655     return {
  10656       itemActions: this.model.get('item_actions'),
  10657       data: _.extend({}, this.model.toJSON(), {
  10658         controlValue: []
  10659       })
  10660     };
  10661   },
  10662   childViewOptions: function childViewOptions(rowModel, index) {
  10663     var elementContainer = this.getOption('container');
  10664     return {
  10665       container: elementContainer.repeaters[this.model.get('name')].children[index],
  10666       controlFields: this.model.get('fields'),
  10667       titleField: this.model.get('title_field'),
  10668       itemActions: this.model.get('item_actions')
  10669     };
  10670   },
  10671   createItemModel: function createItemModel(attrs, options, controlView) {
  10672     options.controls = controlView.model.get('fields');
  10673     return new elementorModules.editor.elements.models.BaseSettings(attrs, options);
  10674   },
  10675   fillCollection: function fillCollection() {
  10676     // TODO: elementSettingsModel is deprecated since 2.8.0.
  10677     var settings = this.container ? this.container.settings : this.elementSettingsModel;
  10678     var controlName = this.model.get('name');
  10679     this.collection = settings.get(controlName); // Hack for history redo/undo
  10680 
  10681     if (!(this.collection instanceof Backbone.Collection)) {
  10682       this.collection = new Backbone.Collection(this.collection, {
  10683         // Use `partial` to supply the `this` as an argument, but not as context
  10684         // the `_` is a place holder for original arguments: `attrs` & `options`
  10685         model: _.partial(this.createItemModel, _, _, this)
  10686       }); // Set the value silent
  10687 
  10688       settings.set(controlName, this.collection, {
  10689         silent: true
  10690       });
  10691     }
  10692   },
  10693   initialize: function initialize() {
  10694     ControlBaseDataView.prototype.initialize.apply(this, arguments);
  10695     this.fillCollection();
  10696     this.listenTo(this.collection, 'reset', this.resetContainer.bind(this));
  10697     this.listenTo(this.collection, 'add', this.updateContainer.bind(this));
  10698   },
  10699   editRow: function editRow(rowView) {
  10700     if (this.currentEditableChild) {
  10701       var currentEditable = this.currentEditableChild.getChildViewContainer(this.currentEditableChild);
  10702       currentEditable.removeClass('editable'); // If the repeater contains TinyMCE editors, fire the `hide` trigger to hide floated toolbars
  10703 
  10704       currentEditable.find('.elementor-wp-editor').each(function () {
  10705         tinymce.get(this.id).fire('hide');
  10706       });
  10707     }
  10708 
  10709     if (this.currentEditableChild === rowView) {
  10710       delete this.currentEditableChild;
  10711       return;
  10712     }
  10713 
  10714     rowView.getChildViewContainer(rowView).addClass('editable');
  10715     this.currentEditableChild = rowView;
  10716     this.updateActiveRow();
  10717   },
  10718   toggleMinRowsClass: function toggleMinRowsClass() {
  10719     if (!this.model.get('prevent_empty')) {
  10720       return;
  10721     }
  10722 
  10723     this.$el.toggleClass('elementor-repeater-has-minimum-rows', 1 >= this.collection.length);
  10724   },
  10725   updateActiveRow: function updateActiveRow() {
  10726     var activeItemIndex = 1;
  10727 
  10728     if (this.currentEditableChild) {
  10729       activeItemIndex = this.currentEditableChild.itemIndex;
  10730     }
  10731 
  10732     this.setEditSetting('activeItemIndex', activeItemIndex);
  10733   },
  10734   updateChildIndexes: function updateChildIndexes() {
  10735     var collection = this.collection;
  10736     this.children.each(function (view) {
  10737       view.updateIndex(collection.indexOf(view.model) + 1);
  10738       view.setTitle();
  10739     });
  10740   },
  10741   onRender: function onRender() {
  10742     ControlBaseDataView.prototype.onRender.apply(this, arguments);
  10743 
  10744     if (this.model.get('item_actions').sort) {
  10745       this.ui.fieldContainer.sortable({
  10746         axis: 'y',
  10747         handle: '.elementor-repeater-row-tools',
  10748         items: ' > :not(.elementor-repeater-row--disable-sort)'
  10749       });
  10750     }
  10751 
  10752     this.toggleMinRowsClass();
  10753   },
  10754   onSortStart: function onSortStart(event, ui) {
  10755     ui.item.data('oldIndex', ui.item.index());
  10756   },
  10757   onSortStop: function onSortStop(event, ui) {
  10758     // Reload TinyMCE editors (if exist), it's a bug that TinyMCE content is missing after stop dragging
  10759     var self = this,
  10760         sortedIndex = ui.item.index();
  10761 
  10762     if (-1 === sortedIndex) {
  10763       return;
  10764     }
  10765 
  10766     var sortedRowView = self.children.findByIndex(ui.item.index()),
  10767         rowControls = sortedRowView.children._views;
  10768     jQuery.each(rowControls, function () {
  10769       if ('wysiwyg' === this.model.get('type')) {
  10770         sortedRowView.render();
  10771         delete self.currentEditableChild;
  10772         return false;
  10773       }
  10774     });
  10775   },
  10776   onSortUpdate: function onSortUpdate(event, ui) {
  10777     var oldIndex = ui.item.data('oldIndex'),
  10778         newIndex = ui.item.index();
  10779     $e.run('document/repeater/move', {
  10780       container: this.options.container,
  10781       name: this.model.get('name'),
  10782       sourceIndex: oldIndex,
  10783       targetIndex: newIndex
  10784     });
  10785   },
  10786   onAddChild: function onAddChild() {
  10787     this.updateChildIndexes();
  10788     this.updateActiveRow();
  10789   },
  10790   // BC since 3.0.0, ensure a new child is appear in container children.
  10791   updateContainer: function updateContainer(model) {
  10792     var container = this.options.container.repeaters[this.model.get('name')],
  10793         isInChildren = container.children.filter(function (child) {
  10794       return child.id === model.get('_id');
  10795     });
  10796 
  10797     if (!isInChildren.length) {
  10798       elementorCommon.helpers.softDeprecated('Don\'t add models directly to the repeater.', '3.0.0', '$e.run( \'document/repeater/insert\' )');
  10799       this.options.container.addRepeaterItem(this.model.get('name'), model, model.collection.indexOf(model));
  10800     }
  10801   },
  10802   // BC since 3.0.0, ensure a container children are reset on collection reset.
  10803   resetContainer: function resetContainer() {
  10804     elementorCommon.helpers.softDeprecated('Don\'t reset repeater collection directly.', '3.0.0', '$e.run( \'document/repeater/remove\' )');
  10805     this.options.container.repeaters[this.model.get('name')].children = [];
  10806   },
  10807   getDefaults: function getDefaults() {
  10808     var defaults = {}; // Get default fields.
  10809 
  10810     _.each(this.model.get('fields'), function (field) {
  10811       defaults[field.name] = field.default;
  10812     });
  10813 
  10814     return defaults;
  10815   },
  10816   onButtonAddRowClick: function onButtonAddRowClick() {
  10817     var newModel = $e.run('document/repeater/insert', {
  10818       container: this.options.container,
  10819       name: this.model.get('name'),
  10820       model: this.getDefaults()
  10821     });
  10822     var newChild = this.children.findByModel(newModel);
  10823     this.editRow(newChild);
  10824     this.toggleMinRowsClass();
  10825   },
  10826   onChildviewClickRemove: function onChildviewClickRemove(childView) {
  10827     if (childView === this.currentEditableChild) {
  10828       delete this.currentEditableChild;
  10829     }
  10830 
  10831     $e.run('document/repeater/remove', {
  10832       container: this.options.container,
  10833       name: this.model.get('name'),
  10834       index: childView._index
  10835     });
  10836     this.updateActiveRow();
  10837     this.updateChildIndexes();
  10838     this.toggleMinRowsClass();
  10839   },
  10840   onChildviewClickDuplicate: function onChildviewClickDuplicate(childView) {
  10841     $e.run('document/repeater/duplicate', {
  10842       container: this.options.container,
  10843       name: this.model.get('name'),
  10844       index: childView._index
  10845     });
  10846     this.toggleMinRowsClass();
  10847   },
  10848   onChildviewClickEdit: function onChildviewClickEdit(childView) {
  10849     this.editRow(childView);
  10850   },
  10851   onAfterExternalChange: function onAfterExternalChange() {
  10852     // Update the collection with current value
  10853     this.fillCollection();
  10854     ControlBaseDataView.prototype.onAfterExternalChange.apply(this, arguments);
  10855   }
  10856 });
  10857 module.exports = ControlRepeaterItemView;
  10858 
  10859 /***/ }),
  10860 
  10861 /***/ "../assets/dev/js/editor/controls/section.js":
  10862 /*!***************************************************!*\
  10863   !*** ../assets/dev/js/editor/controls/section.js ***!
  10864   \***************************************************/
  10865 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  10866 
  10867 "use strict";
  10868 
  10869 
  10870 var ControlBaseView = __webpack_require__(/*! elementor-controls/base */ "../assets/dev/js/editor/controls/base.js"),
  10871     ControlSectionItemView;
  10872 
  10873 ControlSectionItemView = ControlBaseView.extend({
  10874   ui: function ui() {
  10875     var ui = ControlBaseView.prototype.ui.apply(this, arguments);
  10876     ui.heading = '.elementor-panel-heading';
  10877     return ui;
  10878   },
  10879   triggers: {
  10880     click: 'control:section:clicked'
  10881   }
  10882 });
  10883 module.exports = ControlSectionItemView;
  10884 
  10885 /***/ }),
  10886 
  10887 /***/ "../assets/dev/js/editor/controls/select.js":
  10888 /*!**************************************************!*\
  10889   !*** ../assets/dev/js/editor/controls/select.js ***!
  10890   \**************************************************/
  10891 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  10892 
  10893 "use strict";
  10894 
  10895 
  10896 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  10897 
  10898 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
  10899     ControlSelectItemView;
  10900 
  10901 ControlSelectItemView = ControlBaseDataView.extend({
  10902   updatePlaceholder: function updatePlaceholder() {
  10903     var select = this.ui.select;
  10904     var selected = select.find('option:selected'); // When option with an empty value ('') selected, and it's not the placeholder option,
  10905     // set the selected option to the placeholder.
  10906 
  10907     if ('' === selected.val() && !selected.hasClass('e-option-placeholder')) {
  10908       selected = select.find('.e-option-placeholder');
  10909       selected.prop('selected', true);
  10910     }
  10911 
  10912     if (selected.hasClass('e-option-placeholder')) {
  10913       select.addClass('e-select-placeholder');
  10914     } else {
  10915       select.removeClass('e-select-placeholder');
  10916     }
  10917   },
  10918   onReady: function onReady() {
  10919     var placeholder = this.getControlPlaceholder();
  10920 
  10921     if (placeholder) {
  10922       jQuery('<option>').val('').text(this.model.get('options')[placeholder]).addClass('e-option-placeholder').prependTo(this.ui.select);
  10923     }
  10924 
  10925     this.updatePlaceholder();
  10926   },
  10927   onInputChange: function onInputChange() {
  10928     this.updatePlaceholder();
  10929   }
  10930 }, {
  10931   onPasteStyle: function onPasteStyle(control, clipboardValue) {
  10932     if (control.groups) {
  10933       return control.groups.some(function (group) {
  10934         return ControlSelectItemView.onPasteStyle(group, clipboardValue);
  10935       });
  10936     }
  10937 
  10938     return undefined !== control.options[clipboardValue];
  10939   }
  10940 });
  10941 module.exports = ControlSelectItemView;
  10942 
  10943 /***/ }),
  10944 
  10945 /***/ "../assets/dev/js/editor/controls/select2.js":
  10946 /*!***************************************************!*\
  10947   !*** ../assets/dev/js/editor/controls/select2.js ***!
  10948   \***************************************************/
  10949 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  10950 
  10951 "use strict";
  10952 
  10953 
  10954 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  10955 
  10956 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  10957 
  10958 __webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");
  10959 
  10960 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
  10961 
  10962 var _select = _interopRequireDefault(__webpack_require__(/*! elementor-editor-utils/select2.js */ "../assets/dev/js/editor/utils/select2.js"));
  10963 
  10964 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
  10965     ControlSelect2ItemView;
  10966 
  10967 ControlSelect2ItemView = ControlBaseDataView.extend({
  10968   getSelect2Placeholder: function getSelect2Placeholder() {
  10969     return this.ui.select.find("[value=\"".concat(this.getControlPlaceholder(), "\"]")).text() || this.ui.select.children('option:first[value=""]').text();
  10970   },
  10971   getSelect2DefaultOptions: function getSelect2DefaultOptions() {
  10972     var defaultOptions = {
  10973       allowClear: true,
  10974       placeholder: this.getSelect2Placeholder(),
  10975       dir: elementorCommon.config.isRTL ? 'rtl' : 'ltr'
  10976     },
  10977         lockedOptions = this.model.get('lockedOptions'); // If any non-deletable options are passed, remove the 'x' element from the template for selected items.
  10978 
  10979     if (lockedOptions) {
  10980       defaultOptions.templateSelection = function (data, container) {
  10981         if (lockedOptions.includes(data.id)) {
  10982           jQuery(container).addClass('e-non-deletable').find('.select2-selection__choice__remove').remove();
  10983         }
  10984 
  10985         return data.text;
  10986       };
  10987     }
  10988 
  10989     return defaultOptions;
  10990   },
  10991   getSelect2Options: function getSelect2Options() {
  10992     return jQuery.extend(this.getSelect2DefaultOptions(), this.model.get('select2options'));
  10993   },
  10994   updatePlaceholder: function updatePlaceholder() {
  10995     if (this.getControlPlaceholder()) {
  10996       this.select2Instance.elements.$container.find('.select2-selection__placeholder').addClass('e-select2-placeholder');
  10997     }
  10998   },
  10999   applySavedValue: function applySavedValue() {
  11000     ControlBaseDataView.prototype.applySavedValue.apply(this, arguments);
  11001     var elementSelect2Data = this.ui.select.data('select2'); // Checking if the element itself was initiated with select2 functionality in case of multiple renders.
  11002 
  11003     if (!elementSelect2Data) {
  11004       this.select2Instance = new _select.default({
  11005         $element: this.ui.select,
  11006         options: this.getSelect2Options()
  11007       });
  11008       this.updatePlaceholder();
  11009       this.handleLockedOptions();
  11010     } else {
  11011       this.ui.select.trigger('change');
  11012     }
  11013   },
  11014   handleLockedOptions: function handleLockedOptions() {
  11015     var lockedOptions = this.model.get('lockedOptions');
  11016 
  11017     if (lockedOptions) {
  11018       this.ui.select.on('select2:unselecting', function (event) {
  11019         if (lockedOptions.includes(event.params.args.data.id)) {
  11020           event.preventDefault();
  11021         }
  11022       });
  11023     }
  11024   },
  11025   onReady: function onReady() {
  11026     elementorCommon.helpers.softDeprecated('onReady', '3.0.0');
  11027   },
  11028   onBaseInputChange: function onBaseInputChange() {
  11029     ControlBaseDataView.prototype.onBaseInputChange.apply(this, arguments);
  11030     this.updatePlaceholder();
  11031   },
  11032   onBeforeDestroy: function onBeforeDestroy() {
  11033     // We always destroy the select2 instance because there are cases where the DOM element's data cache
  11034     // itself has been destroyed but the select2 instance on it still exists
  11035     this.select2Instance.destroy();
  11036     this.$el.remove();
  11037   }
  11038 });
  11039 module.exports = ControlSelect2ItemView;
  11040 
  11041 /***/ }),
  11042 
  11043 /***/ "../assets/dev/js/editor/controls/slider.js":
  11044 /*!**************************************************!*\
  11045   !*** ../assets/dev/js/editor/controls/slider.js ***!
  11046   \**************************************************/
  11047 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  11048 
  11049 "use strict";
  11050 
  11051 
  11052 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  11053 
  11054 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
  11055 
  11056 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  11057 
  11058 var ControlBaseUnitsItemView = __webpack_require__(/*! elementor-controls/base-units */ "../assets/dev/js/editor/controls/base-units.js"),
  11059     ControlSliderItemView;
  11060 
  11061 ControlSliderItemView = ControlBaseUnitsItemView.extend({
  11062   ui: function ui() {
  11063     var ui = ControlBaseUnitsItemView.prototype.ui.apply(this, arguments);
  11064     ui.slider = '.elementor-slider';
  11065     return ui;
  11066   },
  11067   templateHelpers: function templateHelpers() {
  11068     var templateHelpers = ControlBaseUnitsItemView.prototype.templateHelpers.apply(this, arguments);
  11069     templateHelpers.isMultiple = this.isMultiple();
  11070     return templateHelpers;
  11071   },
  11072   isMultiple: function isMultiple() {
  11073     var sizes = this.getControlValue('sizes');
  11074     return !jQuery.isEmptyObject(sizes);
  11075   },
  11076   initSlider: function initSlider() {
  11077     // Slider does not exist in tests.
  11078     if (!this.ui.slider[0]) {
  11079       return;
  11080     }
  11081 
  11082     this.destroySlider();
  11083     var isMultiple = this.isMultiple(),
  11084         unitRange = elementorCommon.helpers.cloneObject(this.getCurrentRange()),
  11085         step = unitRange.step;
  11086     var sizes = this.getSize();
  11087 
  11088     if (isMultiple) {
  11089       sizes = (0, _values.default)(sizes);
  11090     } else {
  11091       sizes = [sizes];
  11092       this.ui.input.attr(unitRange);
  11093     }
  11094 
  11095     delete unitRange.step;
  11096     var tooltips;
  11097     var self = this;
  11098 
  11099     if (isMultiple) {
  11100       tooltips = [];
  11101       sizes.forEach(function () {
  11102         return tooltips.push({
  11103           to: function to(value) {
  11104             return value + self.getControlValue('unit');
  11105           }
  11106         });
  11107       });
  11108     }
  11109 
  11110     var sliderInstance = noUiSlider.create(this.ui.slider[0], {
  11111       start: sizes,
  11112       range: unitRange,
  11113       step: step,
  11114       tooltips: tooltips,
  11115       connect: isMultiple,
  11116       format: {
  11117         to: function to(value) {
  11118           return Math.round(value * 1000) / 1000;
  11119         },
  11120         from: function from(value) {
  11121           return +value;
  11122         }
  11123       }
  11124     });
  11125     sliderInstance.on('slide', this.onSlideChange.bind(this));
  11126   },
  11127   applySavedValue: function applySavedValue() {
  11128     ControlBaseUnitsItemView.prototype.applySavedValue.apply(this, arguments); // Slider does not exist in tests.
  11129 
  11130     if (this.ui.slider[0] && this.ui.slider[0].noUiSlider) {
  11131       this.ui.slider[0].noUiSlider.set(this.getSize());
  11132     }
  11133   },
  11134   getSize: function getSize() {
  11135     var _this$getControlPlace, _this$model$get;
  11136 
  11137     var property = this.isMultiple() ? 'sizes' : 'size',
  11138         value = this.getControlValue(property);
  11139     return value || ((_this$getControlPlace = this.getControlPlaceholder()) === null || _this$getControlPlace === void 0 ? void 0 : _this$getControlPlace[property]) || ((_this$model$get = this.model.get('default')) === null || _this$model$get === void 0 ? void 0 : _this$model$get[property]);
  11140   },
  11141   resetSize: function resetSize() {
  11142     if (this.isMultiple()) {
  11143       this.setValue('sizes', {});
  11144     } else {
  11145       this.setValue('size', '');
  11146     }
  11147 
  11148     this.initSlider();
  11149   },
  11150   destroySlider: function destroySlider() {
  11151     // Slider does not exist in tests.
  11152     if (this.ui.slider[0] && this.ui.slider[0].noUiSlider) {
  11153       this.ui.slider[0].noUiSlider.destroy();
  11154     }
  11155   },
  11156   onReady: function onReady() {
  11157     if (this.isMultiple()) {
  11158       this.$el.addClass('elementor-control-type-slider--multiple elementor-control-type-slider--handles-' + this.model.get('handles'));
  11159     }
  11160 
  11161     this.initSlider();
  11162   },
  11163   onSlideChange: function onSlideChange(values, index) {
  11164     if (this.isMultiple()) {
  11165       var sizes = elementorCommon.helpers.cloneObject(this.getSize()),
  11166           key = (0, _keys.default)(sizes)[index];
  11167       sizes[key] = values[index];
  11168       this.setValue('sizes', sizes);
  11169     } else {
  11170       this.setValue('size', values[0]);
  11171       this.ui.input.val(values[0]);
  11172     }
  11173   },
  11174   onInputChange: function onInputChange(event) {
  11175     var dataChanged = event.currentTarget.dataset.setting;
  11176 
  11177     if ('size' === dataChanged) {
  11178       this.ui.slider[0].noUiSlider.set(this.getSize());
  11179     } else if ('unit' === dataChanged) {
  11180       this.resetSize();
  11181     }
  11182   },
  11183   onBeforeDestroy: function onBeforeDestroy() {
  11184     this.destroySlider();
  11185     this.$el.remove();
  11186   }
  11187 });
  11188 module.exports = ControlSliderItemView;
  11189 
  11190 /***/ }),
  11191 
  11192 /***/ "../assets/dev/js/editor/controls/structure.js":
  11193 /*!*****************************************************!*\
  11194   !*** ../assets/dev/js/editor/controls/structure.js ***!
  11195   \*****************************************************/
  11196 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  11197 
  11198 "use strict";
  11199 
  11200 
  11201 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
  11202     ControlStructureItemView;
  11203 
  11204 ControlStructureItemView = ControlBaseDataView.extend({
  11205   ui: function ui() {
  11206     var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
  11207     ui.resetStructure = '.elementor-control-structure-reset';
  11208     return ui;
  11209   },
  11210   events: function events() {
  11211     return _.extend(ControlBaseDataView.prototype.events.apply(this, arguments), {
  11212       'click @ui.resetStructure': 'onResetStructureClick'
  11213     });
  11214   },
  11215   templateHelpers: function templateHelpers() {
  11216     var helpers = ControlBaseDataView.prototype.templateHelpers.apply(this, arguments);
  11217     helpers.getMorePresets = this.getMorePresets.bind(this);
  11218     return helpers;
  11219   },
  11220   getCurrentEditedSection: function getCurrentEditedSection() {
  11221     var editor = elementor.getPanelView().getCurrentPageView();
  11222     return editor.getOption('editedElementView');
  11223   },
  11224   getMorePresets: function getMorePresets() {
  11225     var parsedStructure = elementor.presetsFactory.getParsedStructure(this.getControlValue());
  11226     return elementor.presetsFactory.getPresets(parsedStructure.columnsCount);
  11227   },
  11228   onResetStructureClick: function onResetStructureClick() {
  11229     this.getCurrentEditedSection().resetColumnsCustomSize();
  11230   }
  11231 });
  11232 module.exports = ControlStructureItemView;
  11233 
  11234 /***/ }),
  11235 
  11236 /***/ "../assets/dev/js/editor/controls/switcher.js":
  11237 /*!****************************************************!*\
  11238   !*** ../assets/dev/js/editor/controls/switcher.js ***!
  11239   \****************************************************/
  11240 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  11241 
  11242 "use strict";
  11243 
  11244 
  11245 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js");
  11246 
  11247 module.exports = ControlBaseDataView.extend({
  11248   setInputValue: function setInputValue(input, value) {
  11249     this.$(input).prop('checked', this.model.get('return_value') === value);
  11250   }
  11251 }, {
  11252   onPasteStyle: function onPasteStyle(control, clipboardValue) {
  11253     return !clipboardValue || clipboardValue === control.return_value;
  11254   }
  11255 });
  11256 
  11257 /***/ }),
  11258 
  11259 /***/ "../assets/dev/js/editor/controls/tab.js":
  11260 /*!***********************************************!*\
  11261   !*** ../assets/dev/js/editor/controls/tab.js ***!
  11262   \***********************************************/
  11263 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  11264 
  11265 "use strict";
  11266 
  11267 
  11268 var ControlBaseView = __webpack_require__(/*! elementor-controls/base */ "../assets/dev/js/editor/controls/base.js"),
  11269     ControlTabItemView;
  11270 
  11271 ControlTabItemView = ControlBaseView.extend({
  11272   triggers: {
  11273     click: {
  11274       event: 'control:tab:clicked',
  11275       stopPropagation: false
  11276     }
  11277   }
  11278 });
  11279 module.exports = ControlTabItemView;
  11280 
  11281 /***/ }),
  11282 
  11283 /***/ "../assets/dev/js/editor/controls/url.js":
  11284 /*!***********************************************!*\
  11285   !*** ../assets/dev/js/editor/controls/url.js ***!
  11286   \***********************************************/
  11287 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  11288 
  11289 "use strict";
  11290 
  11291 
  11292 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  11293 
  11294 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  11295 
  11296 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  11297 
  11298 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  11299 
  11300 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  11301 
  11302 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  11303 
  11304 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  11305 
  11306 var BaseMultiple = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js");
  11307 
  11308 var URL = /*#__PURE__*/function (_BaseMultiple) {
  11309   (0, _inherits2.default)(URL, _BaseMultiple);
  11310 
  11311   var _super = (0, _createSuper2.default)(URL);
  11312 
  11313   function URL() {
  11314     (0, _classCallCheck2.default)(this, URL);
  11315     return _super.apply(this, arguments);
  11316   }
  11317 
  11318   (0, _createClass2.default)(URL, [{
  11319     key: "ui",
  11320     value: function ui() {
  11321       var ui = (0, _get2.default)((0, _getPrototypeOf2.default)(URL.prototype), "ui", this).call(this);
  11322       ui.mainInput = '.elementor-input';
  11323       ui.moreOptionsToggle = '.elementor-control-url-more';
  11324       ui.moreOptions = '.elementor-control-url-more-options';
  11325       return ui;
  11326     }
  11327   }, {
  11328     key: "events",
  11329     value: function events() {
  11330       var events = (0, _get2.default)((0, _getPrototypeOf2.default)(URL.prototype), "events", this).call(this);
  11331       events['click @ui.moreOptionsToggle'] = 'onMoreOptionsToggleClick';
  11332       return events;
  11333     }
  11334   }, {
  11335     key: "autoComplete",
  11336     value: function autoComplete() {
  11337       var _this = this;
  11338 
  11339       var $mainInput = this.ui.mainInput,
  11340           positionBase = elementorCommon.config.isRTL ? 'right' : 'left';
  11341       var last, cache; // Based on /wp-includes/js/tinymce/plugins/wplink/plugin.js.
  11342 
  11343       $mainInput.autocomplete({
  11344         source: function source(request, response) {
  11345           if (!_this.options.model.attributes.autocomplete) {
  11346             return;
  11347           }
  11348 
  11349           if (last === request.term) {
  11350             response(cache);
  11351             return;
  11352           }
  11353 
  11354           if (/^https?:/.test(request.term) || request.term.indexOf('.') !== -1) {
  11355             return response();
  11356           } // Show Spinner.
  11357 
  11358 
  11359           $mainInput.prev().show();
  11360           jQuery.post(window.ajaxurl, {
  11361             editor: 'elementor',
  11362             action: 'wp-link-ajax',
  11363             page: 1,
  11364             search: request.term,
  11365             _ajax_linking_nonce: jQuery('#_ajax_linking_nonce').val()
  11366           }, function (data) {
  11367             cache = data;
  11368             response(data);
  11369           }, 'json').always(function () {
  11370             return $mainInput.prev().hide();
  11371           });
  11372           last = request.term;
  11373         },
  11374         focus: function focus(event) {
  11375           /*
  11376            * Don't empty the URL input field, when using the arrow keys to
  11377            * highlight items. See api.jqueryui.com/autocomplete/#event-focus
  11378            */
  11379           event.preventDefault();
  11380         },
  11381         select: function select(event, ui) {
  11382           $mainInput.val(ui.item.permalink);
  11383 
  11384           _this.setValue('url', ui.item.permalink);
  11385 
  11386           return false;
  11387         },
  11388         open: function open(event) {
  11389           jQuery(event.target).data('uiAutocomplete').menu.activeMenu.addClass('elementor-autocomplete-menu');
  11390         },
  11391         minLength: 2,
  11392         position: {
  11393           my: positionBase + ' top+2',
  11394           at: positionBase + ' bottom'
  11395         }
  11396       }); // The `_renderItem` cannot be override via the arguments.
  11397 
  11398       $mainInput.autocomplete('instance')._renderItem = function (ul, item) {
  11399         var fallbackTitle = window.wpLinkL10n ? window.wpLinkL10n.noTitle : '',
  11400             title = item.title ? item.title : fallbackTitle;
  11401         return jQuery('<li role="option" id="mce-wp-autocomplete-' + item.ID + '">').append('<span>' + title + '</span>&nbsp;<span class="elementor-autocomplete-item-info">' + item.info + '</span>').appendTo(ul);
  11402       };
  11403     }
  11404   }, {
  11405     key: "onReady",
  11406     value: function onReady() {
  11407       this.autoComplete();
  11408     }
  11409   }, {
  11410     key: "onMoreOptionsToggleClick",
  11411     value: function onMoreOptionsToggleClick() {
  11412       this.ui.moreOptions.slideToggle();
  11413     }
  11414   }, {
  11415     key: "onBeforeDestroy",
  11416     value: function onBeforeDestroy() {
  11417       if (this.ui.mainInput.data('autocomplete')) {
  11418         this.ui.mainInput.autocomplete('destroy');
  11419       }
  11420 
  11421       this.$el.remove();
  11422     }
  11423   }]);
  11424   return URL;
  11425 }(BaseMultiple);
  11426 
  11427 module.exports = URL;
  11428 
  11429 /***/ }),
  11430 
  11431 /***/ "../assets/dev/js/editor/controls/wp_widget.js":
  11432 /*!*****************************************************!*\
  11433   !*** ../assets/dev/js/editor/controls/wp_widget.js ***!
  11434   \*****************************************************/
  11435 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  11436 
  11437 "use strict";
  11438 
  11439 
  11440 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
  11441     ControlWPWidgetItemView;
  11442 
  11443 ControlWPWidgetItemView = ControlBaseDataView.extend({
  11444   ui: function ui() {
  11445     var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
  11446     ui.form = 'form';
  11447     ui.loading = '.wp-widget-form-loading';
  11448     return ui;
  11449   },
  11450   events: function events() {
  11451     return {
  11452       'keyup @ui.form :input': 'onFormChanged',
  11453       'change @ui.form :input': 'onFormChanged'
  11454     };
  11455   },
  11456   onFormChanged: function onFormChanged() {
  11457     var idBase = 'widget-' + this.model.get('id_base'),
  11458         settings = this.ui.form.elementorSerializeObject()[idBase].REPLACE_TO_ID;
  11459     this.setValue(settings);
  11460   },
  11461   onReady: function onReady() {
  11462     var self = this;
  11463     elementorCommon.ajax.addRequest('editor_get_wp_widget_form', {
  11464       data: {
  11465         // Fake Widget ID
  11466         id: self.model.cid,
  11467         widget_type: self.model.get('widget'),
  11468         data: self.container.settings.toJSON()
  11469       },
  11470       success: function success(data) {
  11471         self.ui.form.html(data); // WP >= 4.8
  11472 
  11473         if (wp.textWidgets) {
  11474           self.ui.form.addClass('open');
  11475           var event = new jQuery.Event('widget-added');
  11476           wp.textWidgets.handleWidgetAdded(event, self.ui.form);
  11477           wp.mediaWidgets.handleWidgetAdded(event, self.ui.form); // WP >= 4.9
  11478 
  11479           if (wp.customHtmlWidgets) {
  11480             wp.customHtmlWidgets.handleWidgetAdded(event, self.ui.form);
  11481           }
  11482         }
  11483 
  11484         var widgetType = self.model.get('widget');
  11485         elementor.hooks.doAction("panel/widgets/".concat(widgetType, "/controls/wp_widget/loaded"), self);
  11486       }
  11487     });
  11488   }
  11489 });
  11490 module.exports = ControlWPWidgetItemView;
  11491 
  11492 /***/ }),
  11493 
  11494 /***/ "../assets/dev/js/editor/controls/wysiwyg.js":
  11495 /*!***************************************************!*\
  11496   !*** ../assets/dev/js/editor/controls/wysiwyg.js ***!
  11497   \***************************************************/
  11498 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  11499 
  11500 "use strict";
  11501 
  11502 
  11503 __webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");
  11504 
  11505 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  11506 
  11507 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  11508 
  11509 var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
  11510     ControlWysiwygItemView;
  11511 
  11512 ControlWysiwygItemView = ControlBaseDataView.extend({
  11513   editor: null,
  11514   ui: function ui() {
  11515     var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
  11516     jQuery.extend(ui, {
  11517       inputWrapper: '.elementor-control-input-wrapper'
  11518     });
  11519     return ui;
  11520   },
  11521   events: function events() {
  11522     return _.extend(ControlBaseDataView.prototype.events.apply(this, arguments), {
  11523       'keyup textarea.elementor-wp-editor': 'onBaseInputChange'
  11524     });
  11525   },
  11526   // List of buttons to move {buttonToMove: afterButton}
  11527   buttons: {
  11528     addToBasic: {
  11529       underline: 'italic'
  11530     },
  11531     addToAdvanced: {},
  11532     moveToAdvanced: {
  11533       blockquote: 'removeformat',
  11534       alignleft: 'blockquote',
  11535       aligncenter: 'alignleft',
  11536       alignright: 'aligncenter'
  11537     },
  11538     moveToBasic: {},
  11539     removeFromBasic: ['unlink', 'wp_more'],
  11540     removeFromAdvanced: []
  11541   },
  11542   initialize: function initialize() {
  11543     ControlBaseDataView.prototype.initialize.apply(this, arguments);
  11544     var self = this;
  11545     self.editorID = 'elementorwpeditor' + self.cid; // Wait a cycle before initializing the editors.
  11546 
  11547     _.defer(function () {
  11548       if (self.isDestroyed) {
  11549         return;
  11550       } // Initialize QuickTags, and set as the default mode.
  11551 
  11552 
  11553       quicktags({
  11554         buttons: 'strong,em,del,link,img,close',
  11555         id: self.editorID
  11556       });
  11557 
  11558       if (elementor.config.rich_editing_enabled) {
  11559         switchEditors.go(self.editorID, 'tmce');
  11560       }
  11561 
  11562       delete QTags.instances[0];
  11563     });
  11564 
  11565     if (!elementor.config.rich_editing_enabled) {
  11566       self.$el.addClass('elementor-rich-editing-disabled');
  11567       return;
  11568     }
  11569 
  11570     var editorConfig = {
  11571       id: self.editorID,
  11572       selector: '#' + self.editorID,
  11573       setup: function setup(editor) {
  11574         self.editor = editor;
  11575       }
  11576     };
  11577     tinyMCEPreInit.mceInit[self.editorID] = _.extend(_.clone(tinyMCEPreInit.mceInit.elementorwpeditor), editorConfig);
  11578 
  11579     if (!elementor.config.tinymceHasCustomConfig) {
  11580       self.rearrangeButtons();
  11581     }
  11582   },
  11583   applySavedValue: function applySavedValue() {
  11584     if (!this.editor) {
  11585       return;
  11586     }
  11587 
  11588     var controlValue = this.getControlValue();
  11589     this.editor.setContent(controlValue); // Update also the plain textarea
  11590 
  11591     jQuery('#' + this.editorID).val(controlValue);
  11592   },
  11593   saveEditor: function saveEditor() {
  11594     this.setValue(this.editor.getContent());
  11595   },
  11596   moveButtons: function moveButtons(buttonsToMove, from, to) {
  11597     if (!to) {
  11598       to = from;
  11599       from = null;
  11600     }
  11601 
  11602     _.each(buttonsToMove, function (afterButton, button) {
  11603       var afterButtonIndex = to.indexOf(afterButton);
  11604 
  11605       if (from) {
  11606         var buttonIndex = from.indexOf(button);
  11607 
  11608         if (-1 === buttonIndex) {
  11609           throw new ReferenceError('Trying to move non-existing button `' + button + '`');
  11610         }
  11611 
  11612         from.splice(buttonIndex, 1);
  11613       }
  11614 
  11615       if (-1 === afterButtonIndex) {
  11616         throw new ReferenceError('Trying to move button after non-existing button `' + afterButton + '`');
  11617       }
  11618 
  11619       to.splice(afterButtonIndex + 1, 0, button);
  11620     });
  11621   },
  11622   rearrangeButtons: function rearrangeButtons() {
  11623     var editorProps = tinyMCEPreInit.mceInit[this.editorID],
  11624         editorBasicToolbarButtons = editorProps.toolbar1.split(','),
  11625         editorAdvancedToolbarButtons = editorProps.toolbar2.split(',');
  11626     editorBasicToolbarButtons = _.difference(editorBasicToolbarButtons, this.buttons.removeFromBasic);
  11627     editorAdvancedToolbarButtons = _.difference(editorAdvancedToolbarButtons, this.buttons.removeFromAdvanced);
  11628     this.moveButtons(this.buttons.moveToBasic, editorAdvancedToolbarButtons, editorBasicToolbarButtons);
  11629     this.moveButtons(this.buttons.moveToAdvanced, editorBasicToolbarButtons, editorAdvancedToolbarButtons);
  11630     this.moveButtons(this.buttons.addToBasic, editorBasicToolbarButtons);
  11631     this.moveButtons(this.buttons.addToAdvanced, editorAdvancedToolbarButtons);
  11632     editorProps.toolbar1 = editorBasicToolbarButtons.join(',');
  11633     editorProps.toolbar2 = editorAdvancedToolbarButtons.join(',');
  11634   },
  11635   onReady: function onReady() {
  11636     var _this = this;
  11637 
  11638     var $editor = jQuery(elementor.config.wp_editor.replace(/elementorwpeditor/g, this.editorID).replace('%%EDITORCONTENT%%', this.getControlValue()));
  11639     $editor.find(".wp-editor-tabs").addClass('elementor-control-dynamic-switcher-wrapper');
  11640     this.ui.inputWrapper.html($editor);
  11641     setTimeout(function () {
  11642       if (!_this.isDestroyed && _this.editor) {
  11643         _this.editor.on('keyup change undo redo', _this.saveEditor.bind(_this));
  11644       }
  11645     }, 100);
  11646   },
  11647   onBeforeDestroy: function onBeforeDestroy() {
  11648     // Remove TinyMCE and QuickTags instances
  11649     delete QTags.instances[this.editorID];
  11650 
  11651     if (!elementor.config.rich_editing_enabled) {
  11652       return;
  11653     }
  11654 
  11655     tinymce.EditorManager.execCommand('mceRemoveEditor', true, this.editorID); // Cleanup PreInit data
  11656 
  11657     delete tinyMCEPreInit.mceInit[this.editorID];
  11658     delete tinyMCEPreInit.qtInit[this.editorID];
  11659   }
  11660 });
  11661 module.exports = ControlWysiwygItemView;
  11662 
  11663 /***/ }),
  11664 
  11665 /***/ "../assets/dev/js/editor/document.js":
  11666 /*!*******************************************!*\
  11667   !*** ../assets/dev/js/editor/document.js ***!
  11668   \*******************************************/
  11669 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  11670 
  11671 "use strict";
  11672 
  11673 
  11674 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  11675 
  11676 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  11677 
  11678 _Object$defineProperty(exports, "__esModule", {
  11679   value: true
  11680 });
  11681 
  11682 exports.default = void 0;
  11683 
  11684 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  11685 
  11686 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  11687 
  11688 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  11689 
  11690 var _manager = _interopRequireDefault(__webpack_require__(/*! elementor/modules/history/assets/js/history/manager */ "../modules/history/assets/js/history/manager.js"));
  11691 
  11692 var _manager2 = _interopRequireDefault(__webpack_require__(/*! elementor/modules/history/assets/js/revisions/manager */ "../modules/history/assets/js/revisions/manager.js"));
  11693 
  11694 /**
  11695  * TODO: Wrong class name + location, conflict with 'editor.js'.
  11696  */
  11697 var Editor = function Editor() {
  11698   (0, _classCallCheck2.default)(this, Editor);
  11699   (0, _defineProperty2.default)(this, "status", 'closed');
  11700   (0, _defineProperty2.default)(this, "isSaving", false);
  11701   (0, _defineProperty2.default)(this, "isChanged", false);
  11702   (0, _defineProperty2.default)(this, "isChangedDuringSave", false);
  11703   (0, _defineProperty2.default)(this, "isSaved", true);
  11704   (0, _defineProperty2.default)(this, "lastSaveHistoryId", 0);
  11705 };
  11706 
  11707 var Document = /*#__PURE__*/function () {
  11708   /**
  11709    * Document id.
  11710    *
  11711    * @type {number|null}
  11712    */
  11713 
  11714   /**
  11715    * History of the document.
  11716    *
  11717    * @type {HistoryManager}
  11718    */
  11719 
  11720   /**
  11721    * Revisions of the document.
  11722    *
  11723    * @type {RevisionsManager}
  11724    */
  11725 
  11726   /**
  11727    * Current container.
  11728    *
  11729    * @type {Container}
  11730    */
  11731 
  11732   /**
  11733    * Editor Settings.
  11734    *
  11735    * @type {Editor}
  11736    */
  11737 
  11738   /**
  11739    * Function constructor().
  11740    *
  11741    * Create document.
  11742    *
  11743    * @param {{}} config
  11744    */
  11745   function Document(config) {
  11746     (0, _classCallCheck2.default)(this, Document);
  11747     (0, _defineProperty2.default)(this, "id", null);
  11748     (0, _defineProperty2.default)(this, "history", null);
  11749     (0, _defineProperty2.default)(this, "revisions", null);
  11750     (0, _defineProperty2.default)(this, "container", null);
  11751     (0, _defineProperty2.default)(this, "editor", new Editor());
  11752     this.config = config;
  11753     this.id = config.id;
  11754     this.history = new _manager.default(this);
  11755     this.revisions = new _manager2.default(this);
  11756   }
  11757 
  11758   (0, _createClass2.default)(Document, [{
  11759     key: "isDraft",
  11760     value: function isDraft() {
  11761       return this.config.revisions.current_id !== this.config.id;
  11762     }
  11763   }]);
  11764   return Document;
  11765 }();
  11766 
  11767 exports.default = Document;
  11768 
  11769 /***/ }),
  11770 
  11771 /***/ "../assets/dev/js/editor/document/helper-bc.js":
  11772 /*!*****************************************************!*\
  11773   !*** ../assets/dev/js/editor/document/helper-bc.js ***!
  11774   \*****************************************************/
  11775 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  11776 
  11777 "use strict";
  11778 
  11779 
  11780 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  11781 
  11782 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  11783 
  11784 _Object$defineProperty(exports, "__esModule", {
  11785   value: true
  11786 });
  11787 
  11788 exports.default = void 0;
  11789 
  11790 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  11791 
  11792 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  11793 
  11794 var BackwardsCompatibility = /*#__PURE__*/function () {
  11795   function BackwardsCompatibility() {
  11796     (0, _classCallCheck2.default)(this, BackwardsCompatibility);
  11797   }
  11798 
  11799   (0, _createClass2.default)(BackwardsCompatibility, null, [{
  11800     key: "findViewRecursive",
  11801     value: function findViewRecursive(parent, key, value) {
  11802       var multiple = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
  11803       elementorCommon.helpers.softDeprecated('findViewRecursive', '2.9.0', "$e.components.get( 'document' ).utils.findViewRecursive( parent, key, value, multiple )");
  11804       return $e.components.get('document').utils.findViewRecursive(parent, key, value, multiple);
  11805     }
  11806   }, {
  11807     key: "findViewById",
  11808     value: function findViewById(id) {
  11809       elementorCommon.helpers.softDeprecated('findViewById', '2.9.0', "$e.components.get( 'document' ).utils.findViewById( id )");
  11810       return $e.components.get('document').utils.findViewById(id);
  11811     }
  11812   }, {
  11813     key: "findContainerById",
  11814     value: function findContainerById(id) {
  11815       elementorCommon.helpers.softDeprecated('findContainerById', '2.9.0', "$e.components.get( 'document' ).utils.findContainerById( id )");
  11816       return $e.components.get('document').utils.findContainerById(id);
  11817     }
  11818   }, {
  11819     key: "isValidChild",
  11820     value: function isValidChild(childModel, parentModel) {
  11821       elementorCommon.helpers.softDeprecated('isValidChild', '3.4.0', "$e.components.get( 'document/elements' ).utils.isValidChild( childModel, parentModel )");
  11822       return $e.components.get('document/elements').utils.isValidChild(childModel, parentModel);
  11823     }
  11824   }, {
  11825     key: "isValidGrandChild",
  11826     value: function isValidGrandChild(childModel, targetContainer) {
  11827       elementorCommon.helpers.softDeprecated('isValidGrandChild', '3.4.0', "$e.components.get( 'document/elements' ).utils.isValidGrandChild( childModel, targetContainer )");
  11828       return $e.components.get('document/elements').utils.isValidGrandChild(childModel, targetContainer);
  11829     }
  11830   }, {
  11831     key: "isSameElement",
  11832     value: function isSameElement(sourceModel, targetContainer) {
  11833       elementorCommon.helpers.softDeprecated('isSameElement', '3.4.0', "$e.components.get( 'document/elements' ).utils.isSameElement( sourceModel, targetContainer )");
  11834       return $e.components.get('document/elements').utils.isSameElement(sourceModel, targetContainer);
  11835     }
  11836   }, {
  11837     key: "getPasteOptions",
  11838     value: function getPasteOptions(sourceModel, targetContainer) {
  11839       elementorCommon.helpers.softDeprecated('getPasteOptions', '3.4.0', "$e.components.get( 'document/elements' ).utils.getPasteOptions( sourceModel, targetContainer )");
  11840       return $e.components.get('document/elements').utils.getPasteOptions(sourceModel, targetContainer);
  11841     }
  11842   }, {
  11843     key: "isPasteEnabled",
  11844     value: function isPasteEnabled(targetContainer) {
  11845       elementorCommon.helpers.softDeprecated('isPasteEnabled', '3.4.0', "$e.components.get( 'document/elements' ).utils.isPasteEnabled( targetContainer )");
  11846       return $e.components.get('document/elements').utils.isPasteEnabled(targetContainer);
  11847     }
  11848   }]);
  11849   return BackwardsCompatibility;
  11850 }();
  11851 
  11852 exports.default = BackwardsCompatibility;
  11853 
  11854 /***/ }),
  11855 
  11856 /***/ "../assets/dev/js/editor/document/history/commands/do.js":
  11857 /*!***************************************************************!*\
  11858   !*** ../assets/dev/js/editor/document/history/commands/do.js ***!
  11859   \***************************************************************/
  11860 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  11861 
  11862 "use strict";
  11863 
  11864 
  11865 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  11866 
  11867 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  11868 
  11869 _Object$defineProperty(exports, "__esModule", {
  11870   value: true
  11871 });
  11872 
  11873 exports.default = exports.Do = void 0;
  11874 
  11875 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  11876 
  11877 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  11878 
  11879 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  11880 
  11881 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  11882 
  11883 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  11884 
  11885 var Do = /*#__PURE__*/function (_CommandBase) {
  11886   (0, _inherits2.default)(Do, _CommandBase);
  11887 
  11888   var _super = (0, _createSuper2.default)(Do);
  11889 
  11890   function Do() {
  11891     (0, _classCallCheck2.default)(this, Do);
  11892     return _super.apply(this, arguments);
  11893   }
  11894 
  11895   (0, _createClass2.default)(Do, [{
  11896     key: "apply",
  11897     value: function apply(args) {
  11898       var index = args.index;
  11899       return elementor.documents.getCurrent().history.doItem(index);
  11900     }
  11901   }]);
  11902   return Do;
  11903 }(_commandBase.default);
  11904 
  11905 exports.Do = Do;
  11906 var _default = Do;
  11907 exports.default = _default;
  11908 
  11909 /***/ }),
  11910 
  11911 /***/ "../assets/dev/js/editor/document/history/commands/index.js":
  11912 /*!******************************************************************!*\
  11913   !*** ../assets/dev/js/editor/document/history/commands/index.js ***!
  11914   \******************************************************************/
  11915 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  11916 
  11917 "use strict";
  11918 
  11919 
  11920 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  11921 
  11922 _Object$defineProperty(exports, "__esModule", {
  11923   value: true
  11924 });
  11925 
  11926 _Object$defineProperty(exports, "Do", {
  11927   enumerable: true,
  11928   get: function get() {
  11929     return _do.Do;
  11930   }
  11931 });
  11932 
  11933 _Object$defineProperty(exports, "Redo", {
  11934   enumerable: true,
  11935   get: function get() {
  11936     return _redo.Redo;
  11937   }
  11938 });
  11939 
  11940 _Object$defineProperty(exports, "Undo", {
  11941   enumerable: true,
  11942   get: function get() {
  11943     return _undo.Undo;
  11944   }
  11945 });
  11946 
  11947 _Object$defineProperty(exports, "UndoAll", {
  11948   enumerable: true,
  11949   get: function get() {
  11950     return _undoAll.UndoAll;
  11951   }
  11952 });
  11953 
  11954 var _do = __webpack_require__(/*! ./do */ "../assets/dev/js/editor/document/history/commands/do.js");
  11955 
  11956 var _redo = __webpack_require__(/*! ./redo */ "../assets/dev/js/editor/document/history/commands/redo.js");
  11957 
  11958 var _undo = __webpack_require__(/*! ./undo */ "../assets/dev/js/editor/document/history/commands/undo.js");
  11959 
  11960 var _undoAll = __webpack_require__(/*! ./undo-all */ "../assets/dev/js/editor/document/history/commands/undo-all.js");
  11961 
  11962 /***/ }),
  11963 
  11964 /***/ "../assets/dev/js/editor/document/history/commands/redo.js":
  11965 /*!*****************************************************************!*\
  11966   !*** ../assets/dev/js/editor/document/history/commands/redo.js ***!
  11967   \*****************************************************************/
  11968 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  11969 
  11970 "use strict";
  11971 
  11972 
  11973 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  11974 
  11975 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  11976 
  11977 _Object$defineProperty(exports, "__esModule", {
  11978   value: true
  11979 });
  11980 
  11981 exports.default = exports.Redo = void 0;
  11982 
  11983 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  11984 
  11985 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  11986 
  11987 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  11988 
  11989 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  11990 
  11991 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  11992 
  11993 var Redo = /*#__PURE__*/function (_CommandBase) {
  11994   (0, _inherits2.default)(Redo, _CommandBase);
  11995 
  11996   var _super = (0, _createSuper2.default)(Redo);
  11997 
  11998   function Redo() {
  11999     (0, _classCallCheck2.default)(this, Redo);
  12000     return _super.apply(this, arguments);
  12001   }
  12002 
  12003   (0, _createClass2.default)(Redo, [{
  12004     key: "apply",
  12005     value: function apply() {
  12006       elementor.documents.getCurrent().history.navigate(true);
  12007     }
  12008   }]);
  12009   return Redo;
  12010 }(_commandBase.default);
  12011 
  12012 exports.Redo = Redo;
  12013 var _default = Redo;
  12014 exports.default = _default;
  12015 
  12016 /***/ }),
  12017 
  12018 /***/ "../assets/dev/js/editor/document/history/commands/undo-all.js":
  12019 /*!*********************************************************************!*\
  12020   !*** ../assets/dev/js/editor/document/history/commands/undo-all.js ***!
  12021   \*********************************************************************/
  12022 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  12023 
  12024 "use strict";
  12025 
  12026 
  12027 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  12028 
  12029 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  12030 
  12031 _Object$defineProperty(exports, "__esModule", {
  12032   value: true
  12033 });
  12034 
  12035 exports.default = exports.UndoAll = void 0;
  12036 
  12037 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  12038 
  12039 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  12040 
  12041 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  12042 
  12043 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  12044 
  12045 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  12046 
  12047 var UndoAll = /*#__PURE__*/function (_CommandBase) {
  12048   (0, _inherits2.default)(UndoAll, _CommandBase);
  12049 
  12050   var _super = (0, _createSuper2.default)(UndoAll);
  12051 
  12052   function UndoAll() {
  12053     (0, _classCallCheck2.default)(this, UndoAll);
  12054     return _super.apply(this, arguments);
  12055   }
  12056 
  12057   (0, _createClass2.default)(UndoAll, [{
  12058     key: "apply",
  12059     value: function apply(args) {
  12060       var document = args.document;
  12061       document.history.doItem(document.history.getItems().length - 1);
  12062     }
  12063   }]);
  12064   return UndoAll;
  12065 }(_commandBase.default);
  12066 
  12067 exports.UndoAll = UndoAll;
  12068 var _default = UndoAll;
  12069 exports.default = _default;
  12070 
  12071 /***/ }),
  12072 
  12073 /***/ "../assets/dev/js/editor/document/history/commands/undo.js":
  12074 /*!*****************************************************************!*\
  12075   !*** ../assets/dev/js/editor/document/history/commands/undo.js ***!
  12076   \*****************************************************************/
  12077 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  12078 
  12079 "use strict";
  12080 
  12081 
  12082 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  12083 
  12084 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  12085 
  12086 _Object$defineProperty(exports, "__esModule", {
  12087   value: true
  12088 });
  12089 
  12090 exports.default = exports.Undo = void 0;
  12091 
  12092 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  12093 
  12094 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  12095 
  12096 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  12097 
  12098 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  12099 
  12100 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  12101 
  12102 var Undo = /*#__PURE__*/function (_CommandBase) {
  12103   (0, _inherits2.default)(Undo, _CommandBase);
  12104 
  12105   var _super = (0, _createSuper2.default)(Undo);
  12106 
  12107   function Undo() {
  12108     (0, _classCallCheck2.default)(this, Undo);
  12109     return _super.apply(this, arguments);
  12110   }
  12111 
  12112   (0, _createClass2.default)(Undo, [{
  12113     key: "apply",
  12114     value: function apply() {
  12115       elementor.documents.getCurrent().history.navigate();
  12116     }
  12117   }]);
  12118   return Undo;
  12119 }(_commandBase.default);
  12120 
  12121 exports.Undo = Undo;
  12122 var _default = Undo;
  12123 exports.default = _default;
  12124 
  12125 /***/ }),
  12126 
  12127 /***/ "../assets/dev/js/editor/document/save/behaviors/footer-saver.js":
  12128 /*!***********************************************************************!*\
  12129   !*** ../assets/dev/js/editor/document/save/behaviors/footer-saver.js ***!
  12130   \***********************************************************************/
  12131 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  12132 
  12133 "use strict";
  12134 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  12135 
  12136 
  12137 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  12138 
  12139 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  12140 
  12141 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  12142 
  12143 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  12144 
  12145 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
  12146 
  12147 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  12148 
  12149 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  12150 
  12151 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  12152 
  12153 module.exports = /*#__PURE__*/function (_Marionette$Behavior) {
  12154   (0, _inherits2.default)(FooterSaver, _Marionette$Behavior);
  12155 
  12156   var _super = (0, _createSuper2.default)(FooterSaver);
  12157 
  12158   function FooterSaver() {
  12159     var _this;
  12160 
  12161     (0, _classCallCheck2.default)(this, FooterSaver);
  12162 
  12163     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  12164       args[_key] = arguments[_key];
  12165     }
  12166 
  12167     _this = _super.call.apply(_super, [this].concat(args));
  12168     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "previewWindow", null);
  12169     return _this;
  12170   }
  12171 
  12172   (0, _createClass2.default)(FooterSaver, [{
  12173     key: "ui",
  12174     value: function ui() {
  12175       return {
  12176         buttonPreview: '#elementor-panel-footer-saver-preview',
  12177         buttonPublish: '#elementor-panel-saver-button-publish',
  12178         buttonSaveOptions: '#elementor-panel-saver-button-save-options',
  12179         buttonPublishLabel: '#elementor-panel-saver-button-publish-label',
  12180         menuSaveDraft: '#elementor-panel-footer-sub-menu-item-save-draft',
  12181         lastEditedWrapper: '.elementor-last-edited-wrapper'
  12182       };
  12183     }
  12184   }, {
  12185     key: "events",
  12186     value: function events() {
  12187       return {
  12188         'click @ui.buttonPreview': 'onClickButtonPreview',
  12189         'click @ui.buttonPublish': 'onClickButtonPublish',
  12190         'click @ui.menuSaveDraft': 'onClickMenuSaveDraft'
  12191       };
  12192     }
  12193   }, {
  12194     key: "initialize",
  12195     value: function initialize(options) {
  12196       var _this2 = this;
  12197 
  12198       this.document = options.document || elementor.documents.getCurrent();
  12199       elementor.on('document:loaded', function (document) {
  12200         _this2.setMenuItems(document);
  12201 
  12202         _this2.setLastEdited(document.config.last_edited);
  12203       }); // TODO: Temp, footerSaver should be removed.
  12204 
  12205       $e.components.get('document/save').footerSaver = this;
  12206     }
  12207   }, {
  12208     key: "activateSaveButtons",
  12209     value: function activateSaveButtons(document, status) {
  12210       var hasChanges = status || 'draft' === document.container.settings.get('post_status');
  12211       this.ui.buttonPublish.add(this.ui.menuSaveDraft).toggleClass('elementor-disabled', !hasChanges);
  12212       this.ui.buttonSaveOptions.toggleClass('elementor-disabled', !hasChanges);
  12213     }
  12214   }, {
  12215     key: "onRender",
  12216     value: function onRender() {
  12217       this.addTooltip();
  12218     }
  12219   }, {
  12220     key: "setLastEdited",
  12221     value: function setLastEdited(lastEdited) {
  12222       this.ui.lastEditedWrapper.removeClass('elementor-button-state').find('.elementor-last-edited').html(lastEdited);
  12223     }
  12224   }, {
  12225     key: "onClickButtonPreview",
  12226     value: function onClickButtonPreview() {
  12227       $e.run('editor/documents/preview', {
  12228         id: elementor.documents.getCurrent().id
  12229       });
  12230     }
  12231   }, {
  12232     key: "onClickButtonPublish",
  12233     value: function onClickButtonPublish() {
  12234       if (this.ui.buttonPublish.hasClass('elementor-disabled')) {
  12235         return;
  12236       }
  12237 
  12238       $e.run('document/save/default');
  12239     }
  12240   }, {
  12241     key: "onClickMenuSaveDraft",
  12242     value: function onClickMenuSaveDraft() {
  12243       $e.run('document/save/draft');
  12244     }
  12245   }, {
  12246     key: "setMenuItems",
  12247     value: function setMenuItems(document) {
  12248       var postStatus = document.container.settings.get('post_status'),
  12249           translationMap = {
  12250         publish: __('Publish', 'elementor'),
  12251         update: __('Update', 'elementor'),
  12252         submit: __('Submit', 'elementor')
  12253       };
  12254       var publishLabel = 'publish';
  12255 
  12256       switch (postStatus) {
  12257         case 'publish':
  12258         case 'private':
  12259           publishLabel = 'update';
  12260 
  12261           if (document.config.revisions.current_id !== document.id) {
  12262             this.activateSaveButtons(document, true);
  12263           }
  12264 
  12265           break;
  12266 
  12267         case 'draft':
  12268           if (!document.config.user.can_publish) {
  12269             publishLabel = 'submit';
  12270           }
  12271 
  12272           this.activateSaveButtons(document, true);
  12273           break;
  12274 
  12275         case 'pending': // User cannot change post status
  12276 
  12277         case undefined:
  12278           // TODO: as a contributor it's undefined instead of 'pending'.
  12279           if (!document.config.user.can_publish) {
  12280             publishLabel = 'update';
  12281           }
  12282 
  12283           break;
  12284       }
  12285 
  12286       this.ui.buttonPublishLabel.html(translationMap[publishLabel]);
  12287     }
  12288   }, {
  12289     key: "addTooltip",
  12290     value: function addTooltip() {
  12291       // Create tooltip on controls
  12292       this.$el.find('.tooltip-target').each(function (index, button) {
  12293         var $button = jQuery(button);
  12294         $button.tipsy({
  12295           // `n` for down, `s` for up
  12296           gravity: 's',
  12297           offset: $button.data('tooltip-offset'),
  12298           title: function title() {
  12299             return this.getAttribute('data-tooltip');
  12300           }
  12301         });
  12302       });
  12303     } // TODO: Consider $e.internal( 'editor/documents/preview-refresh' ); ?.
  12304 
  12305   }, {
  12306     key: "refreshWpPreview",
  12307     value: function refreshWpPreview() {
  12308       if (this.previewWindow) {
  12309         // Refresh URL form updated config.
  12310         try {
  12311           this.previewWindow.location.href = elementor.config.document.urls.wp_preview;
  12312         } catch (e) {// If the this.previewWindow is closed or it's domain was changed.
  12313           // Do nothing.
  12314         }
  12315       }
  12316     }
  12317   }]);
  12318   return FooterSaver;
  12319 }(Marionette.Behavior);
  12320 
  12321 /***/ }),
  12322 
  12323 /***/ "../assets/dev/js/editor/editor-base.js":
  12324 /*!**********************************************!*\
  12325   !*** ../assets/dev/js/editor/editor-base.js ***!
  12326   \**********************************************/
  12327 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  12328 
  12329 "use strict";
  12330 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  12331 
  12332 
  12333 var _Object$defineProperty2 = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  12334 
  12335 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  12336 
  12337 _Object$defineProperty2(exports, "__esModule", {
  12338   value: true
  12339 });
  12340 
  12341 exports.default = void 0;
  12342 
  12343 var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));
  12344 
  12345 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  12346 
  12347 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  12348 
  12349 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js"));
  12350 
  12351 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  12352 
  12353 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  12354 
  12355 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  12356 
  12357 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  12358 
  12359 var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));
  12360 
  12361 var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));
  12362 
  12363 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  12364 
  12365 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  12366 
  12367 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
  12368 
  12369 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  12370 
  12371 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  12372 
  12373 var _defineProperty3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  12374 
  12375 var _color = _interopRequireDefault(__webpack_require__(/*! ./controls/color */ "../assets/dev/js/editor/controls/color.js"));
  12376 
  12377 var _dateTime = _interopRequireDefault(__webpack_require__(/*! elementor-controls/date-time */ "../assets/dev/js/editor/controls/date-time.js"));
  12378 
  12379 var _component = _interopRequireDefault(__webpack_require__(/*! elementor-editor/component */ "../assets/dev/js/editor/component.js"));
  12380 
  12381 var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));
  12382 
  12383 var _module = _interopRequireDefault(__webpack_require__(/*! elementor/modules/history/assets/js/module */ "../modules/history/assets/js/module.js"));
  12384 
  12385 var _hotkeys = _interopRequireDefault(__webpack_require__(/*! ./components/hotkeys/hotkeys */ "../assets/dev/js/editor/components/hotkeys/hotkeys.js"));
  12386 
  12387 var _iconsManager = _interopRequireDefault(__webpack_require__(/*! ./components/icons-manager/icons-manager */ "../assets/dev/js/editor/components/icons-manager/icons-manager.js"));
  12388 
  12389 var _menu = _interopRequireDefault(__webpack_require__(/*! elementor-panel/pages/menu/menu */ "../assets/dev/js/editor/regions/panel/pages/menu/menu.js"));
  12390 
  12391 var _promotion = _interopRequireDefault(__webpack_require__(/*! ./utils/promotion */ "../assets/dev/js/editor/utils/promotion.js"));
  12392 
  12393 var _manager = _interopRequireDefault(__webpack_require__(/*! ../../../../core/kits/assets/js/manager.js */ "../core/kits/assets/js/manager.js"));
  12394 
  12395 var _navigator = _interopRequireDefault(__webpack_require__(/*! ./regions/navigator/navigator */ "../assets/dev/js/editor/regions/navigator/navigator.js"));
  12396 
  12397 var _noticeBar = _interopRequireDefault(__webpack_require__(/*! ./utils/notice-bar */ "../assets/dev/js/editor/utils/notice-bar.js"));
  12398 
  12399 var _preview = _interopRequireDefault(__webpack_require__(/*! elementor-views/preview */ "../assets/dev/js/editor/views/preview.js"));
  12400 
  12401 var _popoverToggle = _interopRequireDefault(__webpack_require__(/*! elementor-controls/popover-toggle */ "../assets/dev/js/editor/controls/popover-toggle.js"));
  12402 
  12403 var _responsiveBar = _interopRequireDefault(__webpack_require__(/*! ./regions/responsive-bar/responsive-bar */ "../assets/dev/js/editor/regions/responsive-bar/responsive-bar.js"));
  12404 
  12405 var _devTools = _interopRequireDefault(__webpack_require__(/*! elementor/modules/dev-tools/assets/js/editor/dev-tools */ "../modules/dev-tools/assets/js/editor/dev-tools.js"));
  12406 
  12407 var _module2 = _interopRequireDefault(__webpack_require__(/*! elementor/modules/landing-pages/assets/js/editor/module */ "../modules/landing-pages/assets/js/editor/module.js"));
  12408 
  12409 var _module3 = _interopRequireDefault(__webpack_require__(/*! elementor/modules/elements-color-picker/assets/js/editor/module */ "../modules/elements-color-picker/assets/js/editor/module.js"));
  12410 
  12411 var _breakpoints = _interopRequireDefault(__webpack_require__(/*! elementor-utils/breakpoints */ "../assets/dev/js/utils/breakpoints.js"));
  12412 
  12413 /* global ElementorConfig */
  12414 var EditorBase = /*#__PURE__*/function (_Marionette$Applicati) {
  12415   (0, _inherits2.default)(EditorBase, _Marionette$Applicati);
  12416 
  12417   var _super = (0, _createSuper2.default)(EditorBase);
  12418 
  12419   function EditorBase() {
  12420     var _this;
  12421 
  12422     (0, _classCallCheck2.default)(this, EditorBase);
  12423 
  12424     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  12425       args[_key] = arguments[_key];
  12426     }
  12427 
  12428     _this = _super.call.apply(_super, [this].concat(args));
  12429     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "widgetsCache", {});
  12430     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "config", {});
  12431     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "loaded", false);
  12432     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "previewLoadedOnce", false);
  12433     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "activeBreakpointsUpdated", false);
  12434     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "helpers", __webpack_require__(/*! elementor-editor-utils/helpers */ "../assets/dev/js/editor/utils/helpers.js"));
  12435     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "imagesManager", __webpack_require__(/*! elementor-editor-utils/images-manager */ "../assets/dev/js/editor/utils/images-manager.js"));
  12436     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "schemes", __webpack_require__(/*! elementor-editor-utils/schemes */ "../assets/dev/js/editor/utils/schemes.js"));
  12437     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "presetsFactory", __webpack_require__(/*! elementor-editor-utils/presets-factory */ "../assets/dev/js/editor/utils/presets-factory.js"));
  12438     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "templates", __webpack_require__(/*! elementor-templates/manager */ "../assets/dev/js/editor/components/template-library/manager.js"));
  12439     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "ajax", elementorCommon.ajax);
  12440     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "conditions", __webpack_require__(/*! elementor-editor-utils/conditions */ "../assets/dev/js/editor/utils/conditions.js"));
  12441     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "history", __webpack_require__(/*! elementor/modules/history/assets/js/module */ "../modules/history/assets/js/module.js"));
  12442     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "channels", {
  12443       editor: Backbone.Radio.channel('ELEMENTOR:editor'),
  12444       data: Backbone.Radio.channel('ELEMENTOR:data'),
  12445       panelElements: Backbone.Radio.channel('ELEMENTOR:panelElements'),
  12446       dataEditMode: Backbone.Radio.channel('ELEMENTOR:editmode'),
  12447       deviceMode: Backbone.Radio.channel('ELEMENTOR:deviceMode'),
  12448       templates: Backbone.Radio.channel('ELEMENTOR:templates'),
  12449       responsivePreview: Backbone.Radio.channel('ELEMENTOR:responsivePreview')
  12450     });
  12451     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "backgroundClickListeners", {
  12452       popover: {
  12453         element: '.elementor-controls-popover',
  12454         ignore: '.elementor-control-popover-toggle-toggle, .elementor-control-popover-toggle-toggle-label, .select2-container, .pcr-app'
  12455       },
  12456       globalControlsSelect: {
  12457         element: '.e-global__popover',
  12458         ignore: '.e-global__popover-toggle'
  12459       },
  12460       tagsList: {
  12461         element: '.elementor-tags-list',
  12462         ignore: '.elementor-control-dynamic-switcher'
  12463       },
  12464       panelFooterSubMenus: {
  12465         element: '.elementor-panel-footer-tool.elementor-toggle-state',
  12466         ignore: '.elementor-panel-footer-tool.elementor-toggle-state, #elementor-panel-saver-button-publish-label',
  12467         callback: function callback($elementsToHide) {
  12468           $elementsToHide.removeClass('elementor-open');
  12469         }
  12470       },
  12471       panelResponsiveSwitchers: {
  12472         element: '.elementor-control-responsive-switchers',
  12473         callback: function callback($elementsToHide) {
  12474           $elementsToHide.removeClass('elementor-responsive-switchers-open');
  12475         }
  12476       },
  12477       promotion: {
  12478         ignore: '.elementor-responsive-panel',
  12479         callback: function callback() {
  12480           var dialog = elementor.promotion.dialog;
  12481 
  12482           if (dialog) {
  12483             dialog.hide();
  12484           }
  12485         }
  12486       }
  12487     });
  12488     (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "modules", {
  12489       // TODO: Deprecated alias since 2.3.0
  12490       get Module() {
  12491         elementorCommon.helpers.hardDeprecated('elementor.modules.Module', '2.3.0', 'elementorModules.Module');
  12492         return elementorModules.Module;
  12493       },
  12494 
  12495       components: {
  12496         templateLibrary: {
  12497           views: {
  12498             // TODO: Deprecated alias since 2.4.0
  12499             get BaseModalLayout() {
  12500               elementorCommon.helpers.hardDeprecated('elementor.modules.components.templateLibrary.views.BaseModalLayout', '2.4.0', 'elementorModules.common.views.modal.Layout');
  12501               return elementorModules.common.views.modal.Layout;
  12502             }
  12503 
  12504           }
  12505         },
  12506         saver: {
  12507           behaviors: {
  12508             FooterSaver: __webpack_require__(/*! ./document/save/behaviors/footer-saver */ "../assets/dev/js/editor/document/save/behaviors/footer-saver.js")
  12509           }
  12510         }
  12511       },
  12512       saver: {
  12513         get footerBehavior() {
  12514           elementorCommon.helpers.softDeprecated('elementor.modules.saver.footerBehavior.', '2.9.0', 'elementor.modules.components.saver.behaviors.FooterSaver');
  12515           return elementor.modules.components.saver.behaviors.FooterSaver;
  12516         }
  12517 
  12518       },
  12519       controls: {
  12520         Animation: __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js"),
  12521         Base: __webpack_require__(/*! elementor-controls/base */ "../assets/dev/js/editor/controls/base.js"),
  12522         BaseData: __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
  12523         BaseMultiple: __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
  12524         Box_shadow: __webpack_require__(/*! elementor-controls/box-shadow */ "../assets/dev/js/editor/controls/box-shadow.js"),
  12525         Button: __webpack_require__(/*! elementor-controls/button */ "../assets/dev/js/editor/controls/button.js"),
  12526         Choose: __webpack_require__(/*! elementor-controls/choose */ "../assets/dev/js/editor/controls/choose.js"),
  12527         Code: __webpack_require__(/*! elementor-controls/code */ "../assets/dev/js/editor/controls/code.js"),
  12528         Color: _color.default,
  12529         Date_time: _dateTime.default,
  12530         Dimensions: __webpack_require__(/*! elementor-controls/dimensions */ "../assets/dev/js/editor/controls/dimensions.js"),
  12531         Exit_animation: __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js"),
  12532         Font: __webpack_require__(/*! elementor-controls/font */ "../assets/dev/js/editor/controls/font.js"),
  12533         Gallery: __webpack_require__(/*! elementor-controls/gallery */ "../assets/dev/js/editor/controls/gallery.js"),
  12534         Hidden: __webpack_require__(/*! elementor-controls/hidden */ "../assets/dev/js/editor/controls/hidden.js"),
  12535         Hover_animation: __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js"),
  12536         Icon: __webpack_require__(/*! elementor-controls/icon */ "../assets/dev/js/editor/controls/icon.js"),
  12537         Icons: __webpack_require__(/*! elementor-controls/icons */ "../assets/dev/js/editor/controls/icons.js"),
  12538         Image_dimensions: __webpack_require__(/*! elementor-controls/image-dimensions */ "../assets/dev/js/editor/controls/image-dimensions.js"),
  12539         Media: __webpack_require__(/*! elementor-controls/media */ "../assets/dev/js/editor/controls/media.js"),
  12540         Number: __webpack_require__(/*! elementor-controls/number */ "../assets/dev/js/editor/controls/number.js"),
  12541         Order: __webpack_require__(/*! elementor-controls/order */ "../assets/dev/js/editor/controls/order.js"),
  12542         Popover_toggle: _popoverToggle.default,
  12543         Repeater: __webpack_require__(/*! elementor-controls/repeater */ "../assets/dev/js/editor/controls/repeater.js"),
  12544         RepeaterRow: __webpack_require__(/*! elementor-controls/repeater-row */ "../assets/dev/js/editor/controls/repeater-row.js"),
  12545         Section: __webpack_require__(/*! elementor-controls/section */ "../assets/dev/js/editor/controls/section.js"),
  12546         Select: __webpack_require__(/*! elementor-controls/select */ "../assets/dev/js/editor/controls/select.js"),
  12547         Select2: __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js"),
  12548         Slider: __webpack_require__(/*! elementor-controls/slider */ "../assets/dev/js/editor/controls/slider.js"),
  12549         Structure: __webpack_require__(/*! elementor-controls/structure */ "../assets/dev/js/editor/controls/structure.js"),
  12550         Switcher: __webpack_require__(/*! elementor-controls/switcher */ "../assets/dev/js/editor/controls/switcher.js"),
  12551         Tab: __webpack_require__(/*! elementor-controls/tab */ "../assets/dev/js/editor/controls/tab.js"),
  12552         Text_shadow: __webpack_require__(/*! elementor-controls/box-shadow */ "../assets/dev/js/editor/controls/box-shadow.js"),
  12553         Url: __webpack_require__(/*! elementor-controls/url */ "../assets/dev/js/editor/controls/url.js"),
  12554         Wp_widget: __webpack_require__(/*! elementor-controls/wp_widget */ "../assets/dev/js/editor/controls/wp_widget.js"),
  12555         Wysiwyg: __webpack_require__(/*! elementor-controls/wysiwyg */ "../assets/dev/js/editor/controls/wysiwyg.js")
  12556       },
  12557       elements: {
  12558         models: {
  12559           // TODO: Deprecated alias since 2.4.0
  12560           get BaseSettings() {
  12561             elementorCommon.helpers.hardDeprecated('elementor.modules.elements.models.BaseSettings', '2.4.0', 'elementorModules.editor.elements.models.BaseSettings');
  12562             return elementorModules.editor.elements.models.BaseSettings;
  12563           },
  12564 
  12565           Element: __webpack_require__(/*! elementor-elements/models/element */ "../assets/dev/js/editor/elements/models/element.js")
  12566         },
  12567         views: {
  12568           Widget: __webpack_require__(/*! elementor-elements/views/widget */ "../assets/dev/js/editor/elements/views/widget.js")
  12569         }
  12570       },
  12571       layouts: {
  12572         panel: {
  12573           pages: {
  12574             elements: {
  12575               views: {
  12576                 Global: __webpack_require__(/*! elementor-panel/pages/elements/views/global */ "../assets/dev/js/editor/regions/panel/pages/elements/views/global.js"),
  12577                 Elements: __webpack_require__(/*! elementor-panel/pages/elements/views/elements */ "../assets/dev/js/editor/regions/panel/pages/elements/views/elements.js")
  12578               }
  12579             },
  12580             menu: {
  12581               Menu: _menu.default
  12582             }
  12583           }
  12584         }
  12585       },
  12586       views: {
  12587         // TODO: Deprecated alias since 2.4.0
  12588         get ControlsStack() {
  12589           elementorCommon.helpers.hardDeprecated('elementor.modules.views.ControlsStack', '2.4.0', 'elementorModules.editor.views.ControlsStack');
  12590           return elementorModules.editor.views.ControlsStack;
  12591         }
  12592 
  12593       }
  12594     });
  12595     return _this;
  12596   }
  12597 
  12598   (0, _createClass2.default)(EditorBase, [{
  12599     key: "debug",
  12600     get: function get() {
  12601       elementorCommon.helpers.softDeprecated('elementor.debug', '3.0.0', 'elementorCommon.debug');
  12602       return elementorCommon.debug;
  12603     }
  12604   }, {
  12605     key: "userCan",
  12606     value: function userCan(capability) {
  12607       return -1 === this.config.user.restrictions.indexOf(capability);
  12608     }
  12609   }, {
  12610     key: "addControlView",
  12611     value: function addControlView(controlID, ControlView) {
  12612       this.modules.controls[elementorCommon.helpers.upperCaseWords(controlID)] = ControlView;
  12613     }
  12614   }, {
  12615     key: "checkEnvCompatibility",
  12616     value: function checkEnvCompatibility() {
  12617       return _environment.default.firefox || _environment.default.webkit;
  12618     }
  12619   }, {
  12620     key: "getElementData",
  12621     value: function getElementData(model) {
  12622       var elType = model.get('elType');
  12623 
  12624       if ('widget' === elType) {
  12625         var widgetType = model.get('widgetType');
  12626 
  12627         if (!this.widgetsCache[widgetType]) {
  12628           return false;
  12629         }
  12630 
  12631         if (!this.widgetsCache[widgetType].commonMerged) {
  12632           jQuery.extend(this.widgetsCache[widgetType].controls, this.widgetsCache.common.controls);
  12633           this.widgetsCache[widgetType].commonMerged = true;
  12634         }
  12635 
  12636         return this.widgetsCache[widgetType];
  12637       }
  12638 
  12639       if (!this.config.elements[elType]) {
  12640         return false;
  12641       }
  12642 
  12643       var elementConfig = elementorCommon.helpers.cloneObject(this.config.elements[elType]);
  12644 
  12645       if ('section' === elType && model.get('isInner')) {
  12646         elementConfig.title = __('Inner Section', 'elementor');
  12647       }
  12648 
  12649       return elementConfig;
  12650     }
  12651   }, {
  12652     key: "getElementControls",
  12653     value: function getElementControls(modelElement) {
  12654       var elementData = this.getElementData(modelElement);
  12655 
  12656       if (!elementData) {
  12657         return false;
  12658       }
  12659 
  12660       var isInner = modelElement.get('isInner'),
  12661           controls = {};
  12662 
  12663       _.each(elementData.controls, function (controlData, controlKey) {
  12664         if (isInner && controlData.hide_in_inner || !isInner && controlData.hide_in_top) {
  12665           return;
  12666         }
  12667 
  12668         controls[controlKey] = controlData;
  12669       });
  12670 
  12671       return controls;
  12672     }
  12673   }, {
  12674     key: "mergeControlsSettings",
  12675     value: function mergeControlsSettings(controls) {
  12676       var _this2 = this;
  12677 
  12678       _.each(controls, function (controlData, controlKey) {
  12679         controls[controlKey] = jQuery.extend(true, {}, _this2.config.controls[controlData.type], controlData);
  12680       });
  12681 
  12682       return controls;
  12683     }
  12684   }, {
  12685     key: "getControlView",
  12686     value: function getControlView(controlID) {
  12687       var capitalizedControlName = elementorCommon.helpers.upperCaseWords(controlID);
  12688       var View = this.modules.controls[capitalizedControlName];
  12689 
  12690       if (!View) {
  12691         var controlData = this.config.controls[controlID],
  12692             isUIControl = controlData && -1 !== controlData.features.indexOf('ui');
  12693         View = this.modules.controls[isUIControl ? 'Base' : 'BaseData'];
  12694       }
  12695 
  12696       return View;
  12697     }
  12698   }, {
  12699     key: "getPanelView",
  12700     value: function getPanelView() {
  12701       return this.panel.currentView;
  12702     }
  12703   }, {
  12704     key: "getPreviewView",
  12705     value: function getPreviewView() {
  12706       return this.previewView;
  12707     }
  12708     /**
  12709      * @returns {Container}
  12710      */
  12711 
  12712   }, {
  12713     key: "getPreviewContainer",
  12714     value: function getPreviewContainer() {
  12715       return this.getPreviewView().getContainer();
  12716     }
  12717   }, {
  12718     key: "getContainer",
  12719     value: function getContainer(id) {
  12720       if ('document' === id) {
  12721         return this.getPreviewContainer();
  12722       }
  12723 
  12724       return $e.components.get('document').utils.findContainerById(id);
  12725     }
  12726   }, {
  12727     key: "initComponents",
  12728     value: function initComponents() {
  12729       var EventManager = __webpack_require__(/*! elementor-utils/hooks */ "../assets/dev/js/utils/hooks.js"),
  12730           DynamicTags = __webpack_require__(/*! elementor-dynamic-tags/manager */ "../assets/dev/js/editor/components/dynamic-tags/manager.js"),
  12731           Settings = __webpack_require__(/*! elementor-editor/components/settings/settings */ "../assets/dev/js/editor/components/settings/settings.js"),
  12732           Notifications = __webpack_require__(/*! elementor-editor-utils/notifications */ "../assets/dev/js/editor/utils/notifications.js");
  12733 
  12734       this.hooks = new EventManager();
  12735       this.settings = new Settings();
  12736       this.dynamicTags = new DynamicTags();
  12737       this.initDialogsManager();
  12738       this.notifications = new Notifications();
  12739       this.kitManager = new _manager.default();
  12740       this.hotkeysScreen = new _hotkeys.default();
  12741       this.iconManager = new _iconsManager.default();
  12742       this.noticeBar = new _noticeBar.default();
  12743       this.history = new _module.default();
  12744       this.promotion = new _promotion.default();
  12745       this.devTools = new _devTools.default();
  12746       this.documents = $e.components.register(new _component.default()); // Adds the Landing Page tab to the Template library modal when editing Landing Pages.
  12747 
  12748       if (elementorCommon.config.experimentalFeatures['landing-pages']) {
  12749         this.modules.landingLibraryPageModule = new _module2.default();
  12750       }
  12751 
  12752       if (elementorCommon.config.experimentalFeatures['elements-color-picker']) {
  12753         this.modules.elementsColorPicker = new _module3.default();
  12754       }
  12755 
  12756       elementorCommon.elements.$window.trigger('elementor:init-components');
  12757     } // TODO: BC method since 2.3.0
  12758 
  12759   }, {
  12760     key: "initDialogsManager",
  12761     value: function initDialogsManager() {
  12762       this.dialogsManager = elementorCommon.dialogsManager;
  12763     }
  12764   }, {
  12765     key: "initElements",
  12766     value: function initElements() {
  12767       var ElementCollection = __webpack_require__(/*! elementor-elements/collections/elements */ "../assets/dev/js/editor/elements/collections/elements.js");
  12768 
  12769       var config = this.config.document.elements; // If it's an reload, use the not-saved data
  12770 
  12771       if (this.elements && this.elements.length && this.config.document.id === this.config.initial_document.id) {
  12772         config = this.elements.toJSON();
  12773       }
  12774 
  12775       this.elements = new ElementCollection(config);
  12776       this.elementsModel = new Backbone.Model({
  12777         elements: this.elements
  12778       });
  12779     }
  12780   }, {
  12781     key: "initPreview",
  12782     value: function initPreview() {
  12783       var $ = jQuery,
  12784           previewIframeId = 'elementor-preview-iframe';
  12785       this.$previewWrapper = $('#elementor-preview');
  12786       this.$previewResponsiveWrapper = $('#elementor-preview-responsive-wrapper'); // Make sure the iFrame does not exist.
  12787 
  12788       if (!this.$preview) {
  12789         this.$preview = $('<iframe>', {
  12790           id: previewIframeId,
  12791           src: this.config.initial_document.urls.preview,
  12792           allowfullscreen: 1
  12793         });
  12794         this.$previewResponsiveWrapper.append(this.$preview);
  12795       }
  12796 
  12797       this.$preview.on('load', this.onPreviewLoaded.bind(this));
  12798     }
  12799   }, {
  12800     key: "initPreviewView",
  12801     value: function initPreviewView(document) {
  12802       elementor.trigger('document:before:preview', document);
  12803       var preview = new _preview.default({
  12804         el: document.$element[0],
  12805         model: elementor.elementsModel
  12806       });
  12807       preview.$el.empty(); // In order to force rendering of children
  12808 
  12809       preview.isRendered = true;
  12810 
  12811       preview._renderChildren();
  12812 
  12813       preview.triggerMethod('render');
  12814       this.previewView = preview;
  12815     }
  12816   }, {
  12817     key: "initFrontend",
  12818     value: function initFrontend() {
  12819       var frontendWindow = this.$preview[0].contentWindow;
  12820       window.elementorFrontend = frontendWindow.elementorFrontend;
  12821       frontendWindow.elementor = this;
  12822       frontendWindow.elementorCommon = elementorCommon;
  12823       elementorFrontend.init();
  12824       this.trigger('frontend:init');
  12825     }
  12826   }, {
  12827     key: "initClearPageDialog",
  12828     value: function initClearPageDialog() {
  12829       var dialog;
  12830 
  12831       this.getClearPageDialog = function () {
  12832         if (dialog) {
  12833           return dialog;
  12834         }
  12835 
  12836         dialog = elementorCommon.dialogsManager.createWidget('confirm', {
  12837           id: 'elementor-clear-page-dialog',
  12838           headerMessage: __('Delete All Content', 'elementor'),
  12839           message: __('Attention: We are going to DELETE ALL CONTENT from this page. Are you sure you want to do that?', 'elementor'),
  12840           position: {
  12841             my: 'center center',
  12842             at: 'center center'
  12843           },
  12844           strings: {
  12845             confirm: __('Delete', 'elementor'),
  12846             cancel: __('Cancel', 'elementor')
  12847           },
  12848           onConfirm: function onConfirm() {
  12849             return $e.run('document/elements/empty', {
  12850               force: true
  12851             });
  12852           }
  12853         });
  12854         return dialog;
  12855       };
  12856     }
  12857   }, {
  12858     key: "getCurrentElement",
  12859     value: function getCurrentElement() {
  12860       var isPreview = -1 !== ['BODY', 'IFRAME'].indexOf(document.activeElement.tagName) && 'BODY' === elementorFrontend.elements.window.document.activeElement.tagName;
  12861 
  12862       if (!isPreview && !elementorCommonConfig.isTesting) {
  12863         return false;
  12864       }
  12865 
  12866       var targetElement = elementor.channels.editor.request('contextMenu:targetView');
  12867 
  12868       if (!targetElement) {
  12869         var panel = elementor.getPanelView();
  12870 
  12871         if ($e.routes.isPartOf('panel/editor')) {
  12872           targetElement = panel.getCurrentPageView().getOption('editedElementView');
  12873         }
  12874       }
  12875 
  12876       if (!targetElement) {
  12877         targetElement = elementor.getPreviewView();
  12878       }
  12879 
  12880       return targetElement;
  12881     }
  12882   }, {
  12883     key: "initPanel",
  12884     value: function initPanel() {
  12885       this.addRegions({
  12886         panel: __webpack_require__(/*! elementor-regions/panel/panel */ "../assets/dev/js/editor/regions/panel/panel.js")
  12887       });
  12888       this.trigger('panel:init');
  12889     }
  12890   }, {
  12891     key: "initResponsiveBar",
  12892     value: function initResponsiveBar() {
  12893       this.addRegions({
  12894         responsiveBar: {
  12895           el: '#elementor-responsive-bar',
  12896           regionClass: _responsiveBar.default
  12897         }
  12898       });
  12899       this.trigger('responsiveBar:init');
  12900     }
  12901   }, {
  12902     key: "initNavigator",
  12903     value: function initNavigator() {
  12904       this.addRegions({
  12905         navigator: {
  12906           el: '#elementor-navigator',
  12907           regionClass: _navigator.default
  12908         }
  12909       });
  12910       this.trigger('navigator:init');
  12911     }
  12912   }, {
  12913     key: "setAjax",
  12914     value: function setAjax() {
  12915       elementorCommon.ajax.addRequestConstant('editor_post_id', this.config.document.id);
  12916       elementorCommon.ajax.addRequestConstant('initial_document_id', this.config.initial_document.id);
  12917       elementorCommon.ajax.on('request:unhandledError', function (xmlHttpRequest) {
  12918         elementor.notifications.showToast({
  12919           message: elementor.createAjaxErrorMessage(xmlHttpRequest)
  12920         });
  12921       });
  12922     }
  12923   }, {
  12924     key: "createAjaxErrorMessage",
  12925     value: function createAjaxErrorMessage(xmlHttpRequest) {
  12926       var message;
  12927 
  12928       if (4 === xmlHttpRequest.readyState) {
  12929         message = __('Server Error', 'elementor');
  12930 
  12931         if (200 !== xmlHttpRequest.status) {
  12932           message += ' (' + xmlHttpRequest.status + ' ' + xmlHttpRequest.statusText + ')';
  12933         }
  12934       } else if (0 === xmlHttpRequest.readyState) {
  12935         message = __('Connection Lost', 'elementor');
  12936       } else {
  12937         message = __('Unknown Error', 'elementor');
  12938       }
  12939 
  12940       return message + '.';
  12941     }
  12942   }, {
  12943     key: "activatePreviewResizable",
  12944     value: function activatePreviewResizable() {
  12945       var $responsiveWrapper = this.$previewResponsiveWrapper;
  12946 
  12947       if ($responsiveWrapper.resizable('instance')) {
  12948         return;
  12949       }
  12950 
  12951       $responsiveWrapper.resizable({
  12952         handles: 'e, s, w',
  12953         stop: function stop() {
  12954           $responsiveWrapper.css({
  12955             width: '',
  12956             height: '',
  12957             left: '',
  12958             right: '',
  12959             top: '',
  12960             bottom: ''
  12961           });
  12962         },
  12963         resize: function resize(event, ui) {
  12964           $responsiveWrapper.css({
  12965             right: '0',
  12966             left: '0',
  12967             top: '0',
  12968             bottom: '0'
  12969           }); // Old versions of jQuery don't support custom properties
  12970 
  12971           var style = $responsiveWrapper[0].style;
  12972           style.setProperty('--e-editor-preview-width', ui.size.width + 'px');
  12973           style.setProperty('--e-editor-preview-height', ui.size.height + 'px');
  12974         }
  12975       });
  12976     }
  12977   }, {
  12978     key: "destroyPreviewResizable",
  12979     value: function destroyPreviewResizable() {
  12980       if (this.$previewResponsiveWrapper.resizable('instance')) {
  12981         this.$previewResponsiveWrapper.resizable('destroy');
  12982       }
  12983     }
  12984   }, {
  12985     key: "broadcastPreviewResize",
  12986     value: function broadcastPreviewResize() {
  12987       this.channels.responsivePreview.reply('size', {
  12988         width: this.$preview.innerWidth(),
  12989         height: this.$preview.innerHeight()
  12990       }).trigger('resize');
  12991     }
  12992   }, {
  12993     key: "getCurrentDeviceConstrains",
  12994     value: function getCurrentDeviceConstrains() {
  12995       var currentBreakpoint = elementor.channels.deviceMode.request('currentMode'),
  12996           activeBreakpoints = elementorFrontend.config.responsive.activeBreakpoints,
  12997           currentBreakpointData = activeBreakpoints[currentBreakpoint],
  12998           currentBreakpointMaxPoint = 'widescreen' === currentBreakpoint ? 9999 : currentBreakpointData.value;
  12999       var currentBreakpointMinPoint = this.breakpoints.getDeviceMinBreakpoint(currentBreakpoint); // If the device under the current device mode's breakpoint has a larger max value - use the current device's
  13000       // value as the min width point.
  13001 
  13002       if (currentBreakpointMinPoint > currentBreakpointData.value) {
  13003         currentBreakpointMinPoint = currentBreakpointData.value;
  13004       }
  13005 
  13006       return {
  13007         maxWidth: currentBreakpointMaxPoint,
  13008         minWidth: currentBreakpointMinPoint
  13009       };
  13010     }
  13011   }, {
  13012     key: "getBreakpointResizeOptions",
  13013     value: function getBreakpointResizeOptions(currentBreakpoint) {
  13014       var previewHeight = elementor.$previewWrapper.height() - 80,
  13015           // 80 = responsive bar height + ui-resizable-handle
  13016       specialBreakpointsHeights = {
  13017         mobile: {
  13018           minHeight: 480,
  13019           height: 736,
  13020           width: 360,
  13021           maxHeight: 896
  13022         },
  13023         mobile_extra: {
  13024           minHeight: 320,
  13025           height: 736,
  13026           maxHeight: 896
  13027         },
  13028         tablet: {
  13029           minHeight: 768,
  13030           height: previewHeight,
  13031           maxHeight: 1024
  13032         },
  13033         tablet_extra: {
  13034           minHeight: 768,
  13035           height: previewHeight,
  13036           maxHeight: 1024
  13037         },
  13038         laptop: {
  13039           minHeight: 768,
  13040           height: previewHeight,
  13041           maxHeight: 1024
  13042         },
  13043         widescreen: {
  13044           minHeight: 768,
  13045           height: previewHeight,
  13046           maxHeight: 1200
  13047         }
  13048       };
  13049       var deviceConstrains = this.getCurrentDeviceConstrains();
  13050 
  13051       if (specialBreakpointsHeights[currentBreakpoint]) {
  13052         deviceConstrains = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, deviceConstrains), specialBreakpointsHeights[currentBreakpoint]);
  13053       }
  13054 
  13055       return deviceConstrains;
  13056     }
  13057   }, {
  13058     key: "updatePreviewResizeOptions",
  13059     value: function updatePreviewResizeOptions() {
  13060       var preserveCurrentSize = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
  13061       var $responsiveWrapper = this.$previewResponsiveWrapper,
  13062           currentBreakpoint = elementor.channels.deviceMode.request('currentMode');
  13063 
  13064       if ('desktop' === currentBreakpoint) {
  13065         this.destroyPreviewResizable(); // Old versions of jQuery don't support custom properties
  13066 
  13067         var style = $responsiveWrapper[0].style;
  13068         style.setProperty('--e-editor-preview-width', '');
  13069         style.setProperty('--e-editor-preview-height', '');
  13070       } else {
  13071         var _breakpointResizeOpti;
  13072 
  13073         this.activatePreviewResizable();
  13074         var breakpointResizeOptions = this.getBreakpointResizeOptions(currentBreakpoint);
  13075         var widthToShow = (_breakpointResizeOpti = breakpointResizeOptions.width) !== null && _breakpointResizeOpti !== void 0 ? _breakpointResizeOpti : breakpointResizeOptions.minWidth;
  13076 
  13077         if (preserveCurrentSize) {
  13078           var currentSize = elementor.channels.responsivePreview.request('size');
  13079 
  13080           if (currentSize.width > breakpointResizeOptions.maxWidth) {
  13081             widthToShow = breakpointResizeOptions.maxWidth;
  13082           } else if (currentSize.width >= breakpointResizeOptions.minWidth) {
  13083             widthToShow = currentSize.width;
  13084           }
  13085         }
  13086 
  13087         $responsiveWrapper.resizable('option', (0, _objectSpread2.default)({}, breakpointResizeOptions)); // Old versions of jQuery don't support custom properties
  13088 
  13089         var _style = $responsiveWrapper[0].style;
  13090 
  13091         _style.setProperty('--e-editor-preview-width', widthToShow + 'px');
  13092 
  13093         _style.setProperty('--e-editor-preview-height', breakpointResizeOptions.height + 'px');
  13094       }
  13095     }
  13096   }, {
  13097     key: "preventClicksInsideEditor",
  13098     value: function preventClicksInsideEditor() {
  13099       this.$previewContents.on('submit', function (event) {
  13100         return event.preventDefault();
  13101       }); // Cannot use arrow function here since it use `this.contains`.
  13102 
  13103       this.$previewContents.on('click', function (event) {
  13104         var _elementor$documents$;
  13105 
  13106         var $target = jQuery(event.target),
  13107             isClickInsideElementor = !!$target.closest('.elementor-edit-area, .pen-menu').length,
  13108             isTargetInsideDocument = this.contains($target[0]);
  13109 
  13110         if ($target.closest('a:not(.elementor-clickable)').length) {
  13111           event.preventDefault();
  13112         }
  13113 
  13114         if (isClickInsideElementor && elementor.getPreviewContainer().isEditable() || !isTargetInsideDocument) {
  13115           return;
  13116         } // It's a click on the preview area, not in the edit area,
  13117         // and a document is open and has an edit area.
  13118 
  13119 
  13120         if (!isClickInsideElementor && (_elementor$documents$ = elementor.documents.getCurrent()) !== null && _elementor$documents$ !== void 0 && _elementor$documents$.$element) {
  13121           $e.internal('panel/open-default');
  13122         }
  13123       });
  13124     }
  13125   }, {
  13126     key: "addBackgroundClickArea",
  13127     value: function addBackgroundClickArea(element) {
  13128       element.addEventListener('click', this.onBackgroundClick.bind(this), true);
  13129     }
  13130   }, {
  13131     key: "addBackgroundClickListener",
  13132     value: function addBackgroundClickListener(key, listener) {
  13133       this.backgroundClickListeners[key] = listener;
  13134     }
  13135   }, {
  13136     key: "removeBackgroundClickListener",
  13137     value: function removeBackgroundClickListener(key) {
  13138       delete this.backgroundClickListeners[key];
  13139     }
  13140   }, {
  13141     key: "showFatalErrorDialog",
  13142     value: function showFatalErrorDialog(options) {
  13143       var defaultOptions = {
  13144         id: 'elementor-fatal-error-dialog',
  13145         headerMessage: '',
  13146         message: '',
  13147         position: {
  13148           my: 'center center',
  13149           at: 'center center'
  13150         },
  13151         strings: {
  13152           confirm: __('Learn More', 'elementor'),
  13153           cancel: __('Go Back', 'elementor')
  13154         },
  13155         onConfirm: null,
  13156         onCancel: function onCancel() {
  13157           return parent.history.go(-1);
  13158         },
  13159         hide: {
  13160           onBackgroundClick: false,
  13161           onButtonClick: false
  13162         }
  13163       };
  13164       options = jQuery.extend(true, defaultOptions, options);
  13165       elementorCommon.dialogsManager.createWidget('confirm', options).show();
  13166     }
  13167   }, {
  13168     key: "showFlexBoxAttentionDialog",
  13169     value: function showFlexBoxAttentionDialog() {
  13170       var _this3 = this;
  13171 
  13172       var introduction = new elementorModules.editor.utils.Introduction({
  13173         introductionKey: 'flexbox',
  13174         dialogType: 'confirm',
  13175         dialogOptions: {
  13176           id: 'elementor-flexbox-attention-dialog',
  13177           headerMessage: __('Note: Flexbox Changes', 'elementor'),
  13178           message: __('Elementor 2.5 introduces key changes to the layout using CSS Flexbox. Your existing pages might have been affected, please review your page before publishing.', 'elementor'),
  13179           position: {
  13180             my: 'center center',
  13181             at: 'center center'
  13182           },
  13183           strings: {
  13184             confirm: __('Learn More', 'elementor'),
  13185             cancel: __('Got It', 'elementor')
  13186           },
  13187           hide: {
  13188             onButtonClick: false
  13189           },
  13190           onCancel: function onCancel() {
  13191             introduction.setViewed();
  13192             introduction.getDialog().hide();
  13193           },
  13194           onConfirm: function onConfirm() {
  13195             return open(_this3.config.help_flexbox_bc_url, '_blank');
  13196           }
  13197         }
  13198       });
  13199       introduction.show();
  13200     }
  13201   }, {
  13202     key: "checkPageStatus",
  13203     value: function checkPageStatus() {
  13204       if (elementor.documents.getCurrent().isDraft()) {
  13205         this.notifications.showToast({
  13206           message: __('This is just a draft. Play around and when you\'re done - click update.', 'elementor'),
  13207           buttons: [{
  13208             name: 'view_revisions',
  13209             text: __('View All Revisions', 'elementor'),
  13210             callback: function callback() {
  13211               return $e.route('panel/history/revisions');
  13212             }
  13213           }]
  13214         });
  13215       }
  13216     }
  13217   }, {
  13218     key: "enterDeviceMode",
  13219     value: function enterDeviceMode() {
  13220       var _this4 = this;
  13221 
  13222       elementorCommon.elements.$body.addClass('e-is-device-mode');
  13223       this.activatePreviewResizable();
  13224       this.resizeListenerThrottled = false;
  13225       this.broadcastPreviewResize();
  13226       elementorFrontend.elements.$window.on('resize.deviceModeDesktop', function () {
  13227         if (_this4.resizeListenerThrottled) {
  13228           return;
  13229         }
  13230 
  13231         _this4.resizeListenerThrottled = true;
  13232 
  13233         _this4.broadcastPreviewResize();
  13234 
  13235         setTimeout(function () {
  13236           _this4.resizeListenerThrottled = false;
  13237 
  13238           _this4.broadcastPreviewResize();
  13239         }, 300);
  13240       });
  13241     }
  13242   }, {
  13243     key: "exitDeviceMode",
  13244     value: function exitDeviceMode() {
  13245       elementorCommon.elements.$body.removeClass('e-is-device-mode');
  13246       this.destroyPreviewResizable();
  13247       elementorCommon.elements.$window.off('resize.deviceModeDesktop');
  13248       this.channels.deviceMode.trigger('close');
  13249     }
  13250   }, {
  13251     key: "isDeviceModeActive",
  13252     value: function isDeviceModeActive() {
  13253       return elementorCommon.elements.$body.hasClass('e-is-device-mode');
  13254     }
  13255   }, {
  13256     key: "updatePreviewSize",
  13257     value: function updatePreviewSize(size) {
  13258       // Old versions of jQuery don't support custom properties
  13259       var style = this.$previewResponsiveWrapper[0].style;
  13260       style.setProperty('--e-editor-preview-width', size.width + 'px');
  13261       style.setProperty('--e-editor-preview-height', size.height + 'px');
  13262     }
  13263   }, {
  13264     key: "enterPreviewMode",
  13265     value: function enterPreviewMode(hidePanel) {
  13266       var $elements = elementorFrontend.elements.$body;
  13267 
  13268       if (hidePanel) {
  13269         $elements = $elements.add(elementorCommon.elements.$body);
  13270       }
  13271 
  13272       $elements.removeClass('elementor-editor-active').addClass('elementor-editor-preview');
  13273       var $element = this.documents.getCurrent().$element;
  13274 
  13275       if ($element) {
  13276         $element.removeClass('elementor-edit-area-active');
  13277       }
  13278     }
  13279   }, {
  13280     key: "exitPreviewMode",
  13281     value: function exitPreviewMode() {
  13282       elementorFrontend.elements.$body.add(elementorCommon.elements.$body).removeClass('elementor-editor-preview').addClass('elementor-editor-active');
  13283 
  13284       if (elementor.config.document.panel.has_elements) {
  13285         this.documents.getCurrent().$element.addClass('elementor-edit-area-active');
  13286       }
  13287     }
  13288   }, {
  13289     key: "changeEditMode",
  13290     value: function changeEditMode(newMode) {
  13291       var dataEditMode = elementor.channels.dataEditMode,
  13292           oldEditMode = dataEditMode.request('activeMode');
  13293       dataEditMode.reply('activeMode', newMode);
  13294 
  13295       if (newMode !== oldEditMode) {
  13296         dataEditMode.trigger('switch', newMode);
  13297       }
  13298     }
  13299   }, {
  13300     key: "reloadPreview",
  13301     value: function reloadPreview() {
  13302       // TODO: Should be command?
  13303       jQuery('#elementor-preview-loading').show();
  13304       this.$preview[0].contentWindow.location.reload(true);
  13305     }
  13306   }, {
  13307     key: "changeDeviceMode",
  13308     value: function changeDeviceMode(newDeviceMode) {
  13309       var hideBarOnDesktop = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  13310       var oldDeviceMode = this.channels.deviceMode.request('currentMode');
  13311 
  13312       if (oldDeviceMode === newDeviceMode) {
  13313         return;
  13314       }
  13315 
  13316       elementorCommon.elements.$body.removeClass('elementor-device-' + oldDeviceMode).addClass('elementor-device-' + newDeviceMode);
  13317       this.channels.deviceMode.reply('previousMode', oldDeviceMode).reply('currentMode', newDeviceMode).trigger('change');
  13318 
  13319       if (this.isDeviceModeActive() && hideBarOnDesktop) {
  13320         if ('desktop' === newDeviceMode) {
  13321           this.exitDeviceMode();
  13322         }
  13323       } else if ('desktop' !== newDeviceMode) {
  13324         this.enterDeviceMode();
  13325       }
  13326     }
  13327   }, {
  13328     key: "translate",
  13329     value: function translate(stringKey, templateArgs, i18nStack) {
  13330       // TODO: BC since 2.3.0, it always should be `this.config.i18n`
  13331       if (!i18nStack) {
  13332         i18nStack = this.config.i18n;
  13333       }
  13334 
  13335       return elementorCommon.translate(stringKey, null, templateArgs, i18nStack);
  13336     }
  13337   }, {
  13338     key: "logSite",
  13339     value: function logSite() {
  13340       var text = '',
  13341           style = '';
  13342 
  13343       if (_environment.default.firefox) {
  13344         var asciiText = [' ;;;;;;;;;;;;;;; ', ';;;  ;;       ;;;', ';;;  ;;;;;;;;;;;;', ';;;  ;;;;;;;;;;;;', ';;;  ;;       ;;;', ';;;  ;;;;;;;;;;;;', ';;;  ;;;;;;;;;;;;', ';;;  ;;       ;;;', ' ;;;;;;;;;;;;;;; '];
  13345         text += '%c' + asciiText.join('\n') + '\n';
  13346         style = 'color: #C42961';
  13347       } else {
  13348         text += '%c00';
  13349         style = 'font-size: 22px; background-image: url("' + elementorCommon.config.urls.assets + 'images/logo-icon.png"); color: transparent; background-repeat: no-repeat';
  13350       }
  13351 
  13352       setTimeout(console.log.bind(console, text, style)); // eslint-disable-line
  13353 
  13354       text = '%cLove using Elementor? Join our growing community of Elementor developers: %chttps://github.com/elementor/elementor';
  13355       setTimeout(console.log.bind(console, text, 'color: #9B0A46', '')); // eslint-disable-line
  13356     }
  13357   }, {
  13358     key: "requestWidgetsConfig",
  13359     value: function requestWidgetsConfig() {
  13360       var _this5 = this;
  13361 
  13362       var excludeWidgets = {};
  13363       jQuery.each(this.widgetsCache, function (widgetName, widgetConfig) {
  13364         if (widgetConfig.controls) {
  13365           excludeWidgets[widgetName] = true;
  13366         }
  13367       });
  13368       elementorCommon.ajax.addRequest('get_widgets_config', {
  13369         data: {
  13370           exclude: excludeWidgets
  13371         },
  13372         success: function success(data) {
  13373           _this5.addWidgetsCache(data);
  13374 
  13375           if (_this5.loaded) {
  13376             _this5.kitManager.renderGlobalsDefaultCSS();
  13377 
  13378             $e.internal('panel/state-ready');
  13379           } else {
  13380             _this5.once('panel:init', function () {
  13381               $e.internal('panel/state-ready');
  13382             });
  13383           }
  13384         }
  13385       });
  13386     }
  13387   }, {
  13388     key: "getPreferences",
  13389     value: function getPreferences(key) {
  13390       var settings = elementor.settings.editorPreferences.model.attributes;
  13391 
  13392       if (key) {
  13393         return settings[key];
  13394       }
  13395 
  13396       return settings;
  13397     }
  13398   }, {
  13399     key: "getConfig",
  13400     value: function getConfig() {
  13401       return ElementorConfig;
  13402     }
  13403   }, {
  13404     key: "onStart",
  13405     value: function onStart() {
  13406       var _this6 = this;
  13407 
  13408       this.config = this.getConfig();
  13409       Backbone.Radio.DEBUG = false;
  13410       Backbone.Radio.tuneIn('ELEMENTOR');
  13411       this.populateActiveBreakpointsConfig();
  13412       this.breakpoints = new _breakpoints.default(this.config.responsive);
  13413 
  13414       if (elementorCommon.config.experimentalFeatures.additional_custom_breakpoints) {
  13415         // Duplicate responsive controls for section and column default configs.
  13416         this.generateResponsiveControlsForElements();
  13417       }
  13418 
  13419       this.initComponents();
  13420 
  13421       if (!this.checkEnvCompatibility()) {
  13422         this.onEnvNotCompatible();
  13423       }
  13424 
  13425       this.initPreview();
  13426       this.requestWidgetsConfig();
  13427       this.channels.dataEditMode.reply('activeMode', 'edit');
  13428       this.listenTo(this.channels.dataEditMode, 'switch', this.onEditModeSwitched);
  13429       this.listenTo(elementor.channels.deviceMode, 'change', this.updatePreviewResizeOptions);
  13430       this.initClearPageDialog();
  13431       this.addBackgroundClickArea(document);
  13432       this.addDeprecatedConfigProperties();
  13433       elementorCommon.elements.$window.trigger('elementor:loaded');
  13434       $e.run('editor/documents/open', {
  13435         id: this.config.initial_document.id
  13436       }).then(function () {
  13437         elementorCommon.elements.$window.trigger('elementor:init');
  13438 
  13439         _this6.initNavigator();
  13440       });
  13441       this.logSite();
  13442     }
  13443   }, {
  13444     key: "onPreviewLoaded",
  13445     value: function onPreviewLoaded() {
  13446       var previewWindow = this.$preview[0].contentWindow;
  13447 
  13448       if (!previewWindow.elementorFrontend) {
  13449         this.onPreviewLoadingError();
  13450         return;
  13451       } // Cannot load editor without kit.
  13452 
  13453 
  13454       if (!elementor.config.kit_id) {
  13455         this.kitNotExistsError();
  13456         return;
  13457       }
  13458 
  13459       this.$previewContents = this.$preview.contents();
  13460       this.initFrontend();
  13461       this.schemes.init();
  13462       this.preventClicksInsideEditor();
  13463       this.addBackgroundClickArea(elementorFrontend.elements.window.document);
  13464 
  13465       if (!this.previewLoadedOnce) {
  13466         this.onFirstPreviewLoaded();
  13467       }
  13468 
  13469       this.$previewContents.children().addClass('elementor-html');
  13470       var $frontendBody = elementorFrontend.elements.$body;
  13471       $frontendBody.addClass('elementor-editor-active');
  13472 
  13473       if (!elementor.userCan('design')) {
  13474         $frontendBody.addClass('elementor-editor-content-only');
  13475       }
  13476 
  13477       this.changeDeviceMode('desktop');
  13478 
  13479       _.defer(function () {
  13480         elementorFrontend.elements.window.jQuery.holdReady(false);
  13481       });
  13482 
  13483       $e.shortcuts.bindListener(elementorFrontend.elements.$window);
  13484       this.trigger('preview:loaded', !this.loaded
  13485       /* isFirst */
  13486       );
  13487       $e.internal('editor/documents/attach-preview').then(function () {
  13488         return jQuery('#elementor-loading, #elementor-preview-loading').fadeOut(600);
  13489       });
  13490       this.loaded = true;
  13491     }
  13492   }, {
  13493     key: "onFirstPreviewLoaded",
  13494     value: function onFirstPreviewLoaded() {
  13495       this.initPanel();
  13496       this.initResponsiveBar();
  13497       this.previewLoadedOnce = true;
  13498     }
  13499   }, {
  13500     key: "onEditModeSwitched",
  13501     value: function onEditModeSwitched() {
  13502       var activeMode = this.channels.dataEditMode.request('activeMode');
  13503 
  13504       if ('edit' === activeMode) {
  13505         this.exitPreviewMode();
  13506       } else {
  13507         this.enterPreviewMode('preview' === activeMode);
  13508       }
  13509     }
  13510   }, {
  13511     key: "onEnvNotCompatible",
  13512     value: function onEnvNotCompatible() {
  13513       var _this7 = this;
  13514 
  13515       this.showFatalErrorDialog({
  13516         headerMessage: __('Your browser isn\'t compatible', 'elementor'),
  13517         message: __('Your browser isn\'t compatible with all of Elementor\'s editing features. We recommend you switch to another browser like Chrome or Firefox.', 'elementor'),
  13518         strings: {
  13519           confirm: __('Proceed Anyway', 'elementor')
  13520         },
  13521         hide: {
  13522           onButtonClick: true
  13523         },
  13524         onConfirm: function onConfirm() {
  13525           return _this7.hide();
  13526         }
  13527       });
  13528     }
  13529   }, {
  13530     key: "kitNotExistsError",
  13531     value: function kitNotExistsError() {
  13532       this.showFatalErrorDialog({
  13533         className: 'elementor-preview-loading-error',
  13534         headerMessage: __('Your site doesn\'t have a default kit', 'elementor'),
  13535         message: __('Seems like your kit was deleted, please create new one or try restore it from trash.', 'elementor'),
  13536         strings: {
  13537           confirm: __('Recreate Kit', 'elementor'),
  13538           cancel: __('Go Back', 'elementor')
  13539         },
  13540         onConfirm: function onConfirm() {
  13541           return open(elementor.config.admin_tools_url, '_blank');
  13542         }
  13543       });
  13544     }
  13545   }, {
  13546     key: "onPreviewLoadingError",
  13547     value: function onPreviewLoadingError() {
  13548       var _this8 = this;
  13549 
  13550       var debugUrl = this.config.document.urls.preview + '&preview-debug',
  13551           previewDebugLinkText = __('Click here for preview debug', 'elementor'),
  13552           previewDebugLink = '<div id="elementor-preview-debug-link-text"><a href="' + debugUrl + '" target="_blank">' + previewDebugLinkText + '</a></div>',
  13553           debugData = elementor.config.preview.debug_data,
  13554           dialogOptions = {
  13555         className: 'elementor-preview-loading-error',
  13556         headerMessage: debugData.header,
  13557         message: debugData.message + previewDebugLink,
  13558         onConfirm: function onConfirm() {
  13559           return open(debugData.doc_url, '_blank');
  13560         }
  13561       };
  13562 
  13563       if (debugData.error) {
  13564         this.showFatalErrorDialog(dialogOptions);
  13565         return;
  13566       }
  13567 
  13568       jQuery.get(debugUrl, function () {
  13569         _this8.showFatalErrorDialog(dialogOptions);
  13570       }).fail(function (response) {
  13571         //Iframe can't be loaded
  13572         _this8.showFatalErrorDialog({
  13573           className: 'elementor-preview-loading-error',
  13574           headerMessage: debugData.header,
  13575           message: response.statusText + ' ' + response.status + ' ' + previewDebugLink,
  13576           onConfirm: function onConfirm() {
  13577             var url = 500 <= response.status ? elementor.config.preview.help_preview_http_error_500_url : elementor.config.preview.help_preview_http_error_url;
  13578             open(url, '_blank');
  13579           }
  13580         });
  13581       });
  13582     }
  13583   }, {
  13584     key: "onPreviewElNotFound",
  13585     value: function onPreviewElNotFound() {
  13586       var args = this.$preview[0].contentWindow.elementorPreviewErrorArgs;
  13587 
  13588       if (!args) {
  13589         args = {
  13590           headerMessage: __('Sorry, the content area was not found in your page.', 'elementor'),
  13591           message: __('You must call \'the_content\' function in the current template, in order for Elementor to work on this page.', 'elementor'),
  13592           confirmURL: elementor.config.help_the_content_url
  13593         };
  13594       }
  13595 
  13596       args.onConfirm = function () {
  13597         return open(args.confirmURL, '_blank');
  13598       };
  13599 
  13600       this.showFatalErrorDialog(args);
  13601     }
  13602   }, {
  13603     key: "onBackgroundClick",
  13604     value: function onBackgroundClick(event) {
  13605       jQuery.each(this.backgroundClickListeners, function (index, config) {
  13606         var $clickedTarget = jQuery(event.target); // If it's a label that associated with an input
  13607 
  13608         if ($clickedTarget[0].control) {
  13609           $clickedTarget = $clickedTarget.add($clickedTarget[0].control);
  13610         }
  13611 
  13612         if (config.ignore && $clickedTarget.closest(config.ignore).length) {
  13613           return;
  13614         }
  13615 
  13616         var $clickedTargetClosestElement = $clickedTarget.closest(config.element),
  13617             $elementsToHide = jQuery(config.element).not($clickedTargetClosestElement);
  13618 
  13619         if (config.callback) {
  13620           config.callback($elementsToHide);
  13621           return;
  13622         }
  13623 
  13624         $elementsToHide.hide();
  13625       });
  13626     }
  13627   }, {
  13628     key: "compileTemplate",
  13629     value: function compileTemplate(template, data) {
  13630       return Marionette.TemplateCache.prototype.compileTemplate(template)(data);
  13631     }
  13632   }, {
  13633     key: "addWidgetsCache",
  13634     value: function addWidgetsCache(widgets) {
  13635       var _this9 = this;
  13636 
  13637       jQuery.each(widgets, function (widgetName, widgetConfig) {
  13638         if (elementorCommon.config.experimentalFeatures.additional_custom_breakpoints) {
  13639           // When the Responsive Optimization experiment is active, the responsive controls are generated on the
  13640           // JS side instead of the PHP.
  13641           widgetConfig.controls = _this9.generateResponsiveControls(widgetConfig.controls);
  13642         }
  13643 
  13644         _this9.widgetsCache[widgetName] = jQuery.extend(true, {}, _this9.widgetsCache[widgetName], widgetConfig);
  13645       });
  13646     }
  13647   }, {
  13648     key: "generateResponsiveControls",
  13649     value: function generateResponsiveControls(controls) {
  13650       var _this10 = this;
  13651 
  13652       var activeBreakpoints = this.config.responsive.activeBreakpoints,
  13653           devices = this.breakpoints.getActiveBreakpointsList({
  13654         largeToSmall: true,
  13655         withDesktop: true
  13656       }),
  13657           newControlsStack = {},
  13658           secondDesktopChild = devices[devices.indexOf('desktop') + 1]; // Set the desktop to be the fist device, so desktop will the the parent of all devices.
  13659 
  13660       devices.unshift(devices.splice(devices.indexOf('desktop'), 1)[0]);
  13661       jQuery.each(controls, function (controlName, controlConfig) {
  13662         var _controlConfig$popove;
  13663 
  13664         var responsiveControlName; // Handle repeater controls.
  13665 
  13666         if ('object' === (0, _typeof2.default)(controlConfig.fields)) {
  13667           controlConfig.fields = _this10.generateResponsiveControls(controlConfig.fields);
  13668         } // Only handle responsive controls in this loop.
  13669 
  13670 
  13671         if (!controlConfig.is_responsive) {
  13672           newControlsStack[controlName] = controlConfig;
  13673           return;
  13674         }
  13675 
  13676         var popoverEndProperty = (_controlConfig$popove = controlConfig.popover) === null || _controlConfig$popove === void 0 ? void 0 : _controlConfig$popove.end; // Since the `popoverEndProperty` variable now holds the value, we want to prevent this property from
  13677         // being duplicated to all responsive control instances. It should only be applied in the LAST responsive
  13678         // control.
  13679 
  13680         if (popoverEndProperty) {
  13681           var _controlConfig$popove2;
  13682 
  13683           (_controlConfig$popove2 = controlConfig.popover) === null || _controlConfig$popove2 === void 0 ? true : delete _controlConfig$popove2.end;
  13684         } // Move the control's default to the desktop control
  13685 
  13686 
  13687         if (controlConfig.default) {
  13688           controlConfig.desktop_default = controlConfig.default;
  13689         }
  13690 
  13691         var multipleDefaultValue = _this10.config.controls[controlConfig.type].default_value;
  13692         var deleteControlDefault = true; // For multiple controls that implement get_default_value() in the control class, make sure the duplicated
  13693         // controls receive that default value.
  13694 
  13695         if (multipleDefaultValue) {
  13696           controlConfig.default = multipleDefaultValue;
  13697           deleteControlDefault = false;
  13698         }
  13699 
  13700         devices.forEach(function (device, index) {
  13701           var _controlArgs$popover;
  13702 
  13703           var controlArgs = elementorCommon.helpers.cloneObject(controlConfig);
  13704 
  13705           if (controlArgs.device_args) {
  13706             if (controlArgs.device_args[device]) {
  13707               controlArgs = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, controlArgs), controlArgs.device_args[device]);
  13708             }
  13709 
  13710             delete controlArgs.device_args;
  13711           } // If there is a prefix class with a device modifier in it, add in the device modifier.
  13712 
  13713 
  13714           if (controlArgs.prefix_class && -1 !== controlArgs.prefix_class.indexOf('%s')) {
  13715             var deviceModifier = 'desktop' === device ? '' : '-' + device;
  13716             controlArgs.prefix_class = controlArgs.prefix_class.replace('%s', deviceModifier);
  13717           } // If the 'responsive' property is empty, it is transferred from the PHP to JS as an array and not an
  13718           // object.
  13719 
  13720 
  13721           if ((0, _isArray.default)(controlArgs.responsive)) {
  13722             controlArgs.responsive = {};
  13723           }
  13724 
  13725           var direction = 'max';
  13726           controlArgs.parent = null;
  13727 
  13728           if ('desktop' !== device) {
  13729             direction = activeBreakpoints[device].direction; // Set the parent to be the previous device
  13730 
  13731             controlArgs.parent = device === secondDesktopChild ? controlName : responsiveControlName;
  13732           }
  13733 
  13734           controlArgs.responsive[direction] = device;
  13735 
  13736           if (controlArgs.min_affected_device) {
  13737             if (controlArgs.min_affected_device[device]) {
  13738               controlArgs.responsive.min = controlArgs.min_affected_device[device];
  13739             }
  13740 
  13741             delete controlArgs.min_affected_device;
  13742           }
  13743 
  13744           if (controlArgs[device + '_default']) {
  13745             if ('object' === (0, _typeof2.default)(controlArgs[device + '_default'])) {
  13746               controlArgs.default = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, controlArgs.default), controlArgs[device + '_default']);
  13747             } else {
  13748               controlArgs.default = controlArgs[device + '_default'];
  13749             }
  13750           } else if (deleteControlDefault) {
  13751             // In the Editor, controls without default values should have an empty string as the default value.
  13752             controlArgs.default = '';
  13753           } // If the control is the first inside a popover, only the first device starts the popover,
  13754           // so the 'start' property has to be deleted from all other devices.
  13755 
  13756 
  13757           if (0 !== index && (_controlArgs$popover = controlArgs.popover) !== null && _controlArgs$popover !== void 0 && _controlArgs$popover.start) {
  13758             delete controlArgs.popover.start;
  13759           } // If the control is inside a popover, AND this control is the last one in the popover, AND this is the
  13760           // last device in the devices array - add the 'popover.end = true' value to it to make sure it closes
  13761           // the popover.
  13762 
  13763 
  13764           if (index === devices.length - 1 && popoverEndProperty) {
  13765             controlArgs.popover = {
  13766               end: true
  13767             };
  13768           } // For each new responsive control, delete the responsive defaults
  13769 
  13770 
  13771           devices.forEach(function (breakpoint) {
  13772             delete controlArgs[breakpoint + '_default'];
  13773           });
  13774           delete controlArgs.is_responsive;
  13775           responsiveControlName = 'desktop' === device ? controlName : controlName + '_' + device;
  13776 
  13777           if (controlArgs.parent) {
  13778             var parentControlArgs = newControlsStack[controlArgs.parent];
  13779 
  13780             if (!parentControlArgs.inheritors) {
  13781               parentControlArgs.inheritors = [];
  13782             }
  13783 
  13784             parentControlArgs.inheritors.push(responsiveControlName);
  13785           }
  13786 
  13787           controlArgs.name = responsiveControlName;
  13788           newControlsStack[responsiveControlName] = controlArgs;
  13789         });
  13790       });
  13791       return newControlsStack;
  13792     }
  13793   }, {
  13794     key: "generateResponsiveControlsForElements",
  13795     value: function generateResponsiveControlsForElements() {
  13796       var _this11 = this;
  13797 
  13798       // Handle the default config for section and column.
  13799       var elementNames = (0, _keys.default)(this.config.elements);
  13800       elementNames.forEach(function (elementName) {
  13801         _this11.config.elements[elementName].controls = _this11.generateResponsiveControls(_this11.config.elements[elementName].controls);
  13802       });
  13803     }
  13804   }, {
  13805     key: "populateActiveBreakpointsConfig",
  13806     value: function populateActiveBreakpointsConfig() {
  13807       var _this12 = this;
  13808 
  13809       this.config.responsive.activeBreakpoints = {};
  13810       (0, _entries.default)(this.config.responsive.breakpoints).forEach(function (_ref) {
  13811         var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  13812             breakpointKey = _ref2[0],
  13813             breakpointData = _ref2[1];
  13814 
  13815         if (breakpointData.is_enabled) {
  13816           _this12.config.responsive.activeBreakpoints[breakpointKey] = breakpointData;
  13817         }
  13818       });
  13819     }
  13820   }, {
  13821     key: "addDeprecatedConfigProperties",
  13822     value: function addDeprecatedConfigProperties() {
  13823       var _this13 = this;
  13824 
  13825       var map = {
  13826         data: {
  13827           replacement: 'elements',
  13828           value: function value() {
  13829             return elementor.config.document.elements;
  13830           }
  13831         },
  13832         current_user_can_publish: {
  13833           replacement: 'user.can_publish',
  13834           value: function value() {
  13835             return elementor.config.document.user.can_publish;
  13836           }
  13837         },
  13838         locked_user: {
  13839           replacement: '',
  13840           value: function value() {
  13841             return elementor.config.document.user.locked;
  13842           }
  13843         },
  13844         revisions_enabled: {
  13845           replacement: 'revisions.enabled',
  13846           value: function value() {
  13847             return elementor.config.document.revisions.enabled;
  13848           }
  13849         },
  13850         current_revision_id: {
  13851           replacement: 'revisions.current_id',
  13852           value: function value() {
  13853             return elementor.config.document.revisions.current_id;
  13854           }
  13855         }
  13856       };
  13857       jQuery.each(map, function (key, data) {
  13858         // Use `defineProperty` because `get property()` fails during the `Marionette...extend`.
  13859         (0, _defineProperty2.default)(_this13.config, key, {
  13860           get: function get() {
  13861             var replacement = data.replacement ? 'elementor.config.document.' + data.replacement : '';
  13862             elementorCommon.helpers.softDeprecated('elementor.config.' + key, '2.9.0', replacement); // return from current document.
  13863 
  13864             return data.value();
  13865           },
  13866           set: function set() {
  13867             elementorCommon.helpers.softDeprecated('elementor.config.' + key, '2.9.0', 'elementor.config.document.' + data.replacement);
  13868             throw Error('Deprecated');
  13869           }
  13870         });
  13871       });
  13872       (0, _defineProperty2.default)(this.config.settings, 'page', {
  13873         get: function get() {
  13874           elementorCommon.helpers.softDeprecated('elementor.config.settings.page', '2.9.0', 'elementor.config.document.settings');
  13875           return elementor.config.document.settings;
  13876         }
  13877       });
  13878       (0, _defineProperty2.default)(this.config, 'widgets', {
  13879         get: function get() {
  13880           elementorCommon.helpers.softDeprecated('elementor.config.widgets', '2.9.0', 'elementor.widgetsCache');
  13881           return elementor.widgetsCache;
  13882         }
  13883       });
  13884       (0, _defineProperty2.default)(this, '$previewElementorEl', {
  13885         get: function get() {
  13886           elementorCommon.helpers.softDeprecated('elementor.$previewElementorEl', '2.9.4', 'elementor.documents.getCurrent().$element');
  13887           return elementor.documents.getCurrent().$element;
  13888         }
  13889       });
  13890     }
  13891   }, {
  13892     key: "toggleDocumentCssFiles",
  13893     value: function toggleDocumentCssFiles(document, state) {
  13894       var selectors = ["#elementor-post-".concat(document.config.id, "-css"), "#elementor-preview-".concat(document.config.revisions.current_id)],
  13895           $files = this.$previewContents.find(selectors.join(',')),
  13896           type = state ? 'text/css' : 'elementor/disabled-css';
  13897       $files.attr({
  13898         type: type
  13899       });
  13900     }
  13901   }]);
  13902   return EditorBase;
  13903 }(Marionette.Application);
  13904 
  13905 exports.default = EditorBase;
  13906 
  13907 /***/ }),
  13908 
  13909 /***/ "../assets/dev/js/editor/editor.js":
  13910 /*!*****************************************!*\
  13911   !*** ../assets/dev/js/editor/editor.js ***!
  13912   \*****************************************/
  13913 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  13914 
  13915 "use strict";
  13916 
  13917 
  13918 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  13919 
  13920 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  13921 
  13922 _Object$defineProperty(exports, "__esModule", {
  13923   value: true
  13924 });
  13925 
  13926 exports.Editor = void 0;
  13927 
  13928 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  13929 
  13930 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  13931 
  13932 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  13933 
  13934 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  13935 
  13936 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  13937 
  13938 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  13939 
  13940 var _editorBase = _interopRequireDefault(__webpack_require__(/*! ./editor-base */ "../assets/dev/js/editor/editor-base.js"));
  13941 
  13942 var Editor = /*#__PURE__*/function (_EditorBase) {
  13943   (0, _inherits2.default)(Editor, _EditorBase);
  13944 
  13945   var _super = (0, _createSuper2.default)(Editor);
  13946 
  13947   function Editor() {
  13948     (0, _classCallCheck2.default)(this, Editor);
  13949     return _super.apply(this, arguments);
  13950   }
  13951 
  13952   (0, _createClass2.default)(Editor, [{
  13953     key: "onStart",
  13954     value: function onStart(options) {
  13955       NProgress.start();
  13956       NProgress.inc(0.2);
  13957       (0, _get2.default)((0, _getPrototypeOf2.default)(Editor.prototype), "onStart", this).call(this, options);
  13958     }
  13959   }, {
  13960     key: "onPreviewLoaded",
  13961     value: function onPreviewLoaded() {
  13962       NProgress.done();
  13963       (0, _get2.default)((0, _getPrototypeOf2.default)(Editor.prototype), "onPreviewLoaded", this).call(this);
  13964     }
  13965   }]);
  13966   return Editor;
  13967 }(_editorBase.default);
  13968 
  13969 exports.Editor = Editor;
  13970 window.elementor = new Editor();
  13971 elementor.start();
  13972 
  13973 /***/ }),
  13974 
  13975 /***/ "../assets/dev/js/editor/elements/collections/elements.js":
  13976 /*!****************************************************************!*\
  13977   !*** ../assets/dev/js/editor/elements/collections/elements.js ***!
  13978   \****************************************************************/
  13979 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  13980 
  13981 "use strict";
  13982 
  13983 
  13984 var ElementModel = __webpack_require__(/*! elementor-elements/models/element */ "../assets/dev/js/editor/elements/models/element.js");
  13985 
  13986 var ElementsCollection = Backbone.Collection.extend({
  13987   add: function add(models, options, isCorrectSet) {
  13988     if ((!options || !options.silent) && !isCorrectSet) {
  13989       throw 'Call Error: Adding model to element collection is allowed only by the dedicated addChildModel() method.';
  13990     }
  13991 
  13992     return Backbone.Collection.prototype.add.call(this, models, options);
  13993   },
  13994   model: function model(attrs, options) {
  13995     var ModelClass = Backbone.Model;
  13996 
  13997     if (attrs.elType) {
  13998       ModelClass = elementor.hooks.applyFilters('element/model', ElementModel, attrs);
  13999     }
  14000 
  14001     return new ModelClass(attrs, options);
  14002   },
  14003   clone: function clone() {
  14004     var tempCollection = Backbone.Collection.prototype.clone.apply(this, arguments),
  14005         newCollection = new ElementsCollection();
  14006     tempCollection.forEach(function (model) {
  14007       newCollection.add(model.clone(), null, true);
  14008     });
  14009     return newCollection;
  14010   }
  14011 });
  14012 ElementsCollection.prototype.sync = ElementsCollection.prototype.fetch = ElementsCollection.prototype.save = _.noop;
  14013 module.exports = ElementsCollection;
  14014 
  14015 /***/ }),
  14016 
  14017 /***/ "../assets/dev/js/editor/elements/models/column-settings.js":
  14018 /*!******************************************************************!*\
  14019   !*** ../assets/dev/js/editor/elements/models/column-settings.js ***!
  14020   \******************************************************************/
  14021 /***/ ((module) => {
  14022 
  14023 "use strict";
  14024 
  14025 
  14026 module.exports = elementorModules.editor.elements.models.BaseSettings.extend({
  14027   defaults: {
  14028     _column_size: 100
  14029   }
  14030 });
  14031 
  14032 /***/ }),
  14033 
  14034 /***/ "../assets/dev/js/editor/elements/models/element.js":
  14035 /*!**********************************************************!*\
  14036   !*** ../assets/dev/js/editor/elements/models/element.js ***!
  14037   \**********************************************************/
  14038 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  14039 
  14040 "use strict";
  14041 
  14042 
  14043 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  14044 
  14045 __webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");
  14046 
  14047 var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));
  14048 
  14049 var ColumnSettingsModel = __webpack_require__(/*! elementor-elements/models/column-settings */ "../assets/dev/js/editor/elements/models/column-settings.js"),
  14050     ElementModel;
  14051 
  14052 ElementModel = Backbone.Model.extend({
  14053   defaults: {
  14054     id: '',
  14055     elType: '',
  14056     isInner: false,
  14057     settings: {},
  14058     defaultEditSettings: {
  14059       defaultEditRoute: 'content'
  14060     }
  14061   },
  14062   remoteRender: false,
  14063   _htmlCache: null,
  14064   _jqueryXhr: null,
  14065   renderOnLeave: false,
  14066   initialize: function initialize(options) {
  14067     var elType = this.get('elType'),
  14068         elements = this.get('elements');
  14069 
  14070     if (undefined !== elements) {
  14071       var ElementsCollection = __webpack_require__(/*! elementor-elements/collections/elements */ "../assets/dev/js/editor/elements/collections/elements.js");
  14072 
  14073       this.set('elements', new ElementsCollection(elements));
  14074     }
  14075 
  14076     if ('widget' === elType) {
  14077       this.remoteRender = true;
  14078       this.setHtmlCache(options.htmlCache || '');
  14079     } // No need this variable anymore
  14080 
  14081 
  14082     delete options.htmlCache; // Make call to remote server as throttle function
  14083 
  14084     this.renderRemoteServer = _.throttle(this.renderRemoteServer, 1000);
  14085     this.initSettings();
  14086     this.initEditSettings();
  14087     this.on({
  14088       destroy: this.onDestroy,
  14089       'editor:close': this.onCloseEditor
  14090     });
  14091   },
  14092   initSettings: function initSettings() {
  14093     var elType = this.get('elType'),
  14094         settings = this.get('settings'),
  14095         settingModels = {
  14096       column: ColumnSettingsModel
  14097     },
  14098         SettingsModel = settingModels[elType] || elementorModules.editor.elements.models.BaseSettings;
  14099 
  14100     if (jQuery.isEmptyObject(settings)) {
  14101       settings = elementorCommon.helpers.cloneObject(settings);
  14102     }
  14103 
  14104     if ('widget' === elType) {
  14105       settings.widgetType = this.get('widgetType');
  14106     }
  14107 
  14108     settings.elType = elType;
  14109     settings.isInner = this.get('isInner');
  14110     settings = new SettingsModel(settings, {
  14111       controls: elementor.getElementControls(this)
  14112     });
  14113     this.set('settings', settings);
  14114     elementorFrontend.config.elements.data[this.cid] = settings;
  14115   },
  14116   initEditSettings: function initEditSettings() {
  14117     var editSettings = new Backbone.Model(this.get('defaultEditSettings'));
  14118     this.set('editSettings', editSettings);
  14119     elementorFrontend.config.elements.editSettings[this.cid] = editSettings;
  14120   },
  14121   setSetting: function setSetting(key, value) {
  14122     var settings = this.get('settings');
  14123 
  14124     if ('object' !== (0, _typeof2.default)(key)) {
  14125       var keyParts = key.split('.'),
  14126           isRepeaterKey = 3 === keyParts.length;
  14127       key = keyParts[0];
  14128 
  14129       if (isRepeaterKey) {
  14130         settings = settings.get(key).models[keyParts[1]];
  14131         key = keyParts[2];
  14132       }
  14133     }
  14134 
  14135     settings.setExternalChange(key, value);
  14136   },
  14137   getSetting: function getSetting(key) {
  14138     var keyParts = key.split('.'),
  14139         isRepeaterKey = 3 === keyParts.length,
  14140         settings = this.get('settings');
  14141     key = keyParts[0];
  14142     var value = settings.get(key);
  14143 
  14144     if (undefined === value) {
  14145       return '';
  14146     }
  14147 
  14148     if (isRepeaterKey) {
  14149       value = value.models[keyParts[1]].get(keyParts[2]);
  14150     }
  14151 
  14152     return value;
  14153   },
  14154   setHtmlCache: function setHtmlCache(htmlCache) {
  14155     this._htmlCache = htmlCache;
  14156   },
  14157   getHtmlCache: function getHtmlCache() {
  14158     return this._htmlCache;
  14159   },
  14160   getDefaultTitle: function getDefaultTitle() {
  14161     return elementor.getElementData(this).title;
  14162   },
  14163   getTitle: function getTitle() {
  14164     var title = this.getSetting('_title');
  14165 
  14166     if (!title) {
  14167       title = this.getDefaultTitle();
  14168     }
  14169 
  14170     return title;
  14171   },
  14172   getIcon: function getIcon() {
  14173     return elementor.getElementData(this).icon;
  14174   },
  14175   createRemoteRenderRequest: function createRemoteRenderRequest() {
  14176     var data = this.toJSON();
  14177     return elementorCommon.ajax.addRequest('render_widget', {
  14178       unique_id: this.cid,
  14179       data: {
  14180         data: data
  14181       },
  14182       success: this.onRemoteGetHtml.bind(this)
  14183     }, true).jqXhr;
  14184   },
  14185   renderRemoteServer: function renderRemoteServer() {
  14186     if (!this.remoteRender) {
  14187       return;
  14188     }
  14189 
  14190     this.renderOnLeave = false;
  14191     this.trigger('before:remote:render');
  14192 
  14193     if (this.isRemoteRequestActive()) {
  14194       this._jqueryXhr.abort();
  14195     }
  14196 
  14197     this._jqueryXhr = this.createRemoteRenderRequest();
  14198   },
  14199   isRemoteRequestActive: function isRemoteRequestActive() {
  14200     return this._jqueryXhr && 4 !== this._jqueryXhr.readyState;
  14201   },
  14202   onRemoteGetHtml: function onRemoteGetHtml(data) {
  14203     this.setHtmlCache(data.render);
  14204     this.trigger('remote:render');
  14205   },
  14206   clone: function clone() {
  14207     var newModel = new this.constructor(elementorCommon.helpers.cloneObject(this.attributes));
  14208     newModel.set('id', elementorCommon.helpers.getUniqueId());
  14209     newModel.setHtmlCache(this.getHtmlCache());
  14210     var elements = this.get('elements');
  14211 
  14212     if (!_.isEmpty(elements)) {
  14213       newModel.set('elements', elements.clone());
  14214     }
  14215 
  14216     return newModel;
  14217   },
  14218   toJSON: function toJSON(options) {
  14219     options = options || {}; // Call parent's toJSON method
  14220 
  14221     var data = Backbone.Model.prototype.toJSON.call(this);
  14222 
  14223     _.each(data, function (attribute, key) {
  14224       if (attribute && attribute.toJSON) {
  14225         data[key] = attribute.toJSON(options);
  14226       }
  14227     });
  14228 
  14229     if (options.copyHtmlCache) {
  14230       data.htmlCache = this.getHtmlCache();
  14231     } else {
  14232       delete data.htmlCache;
  14233     }
  14234 
  14235     if (options.remove) {
  14236       options.remove.forEach(function (key) {
  14237         return delete data[key];
  14238       });
  14239     }
  14240 
  14241     return data;
  14242   },
  14243   onCloseEditor: function onCloseEditor() {
  14244     if (this.renderOnLeave) {
  14245       this.renderRemoteServer();
  14246     }
  14247   },
  14248   onDestroy: function onDestroy() {
  14249     // Clean the memory for all use instances
  14250     var settings = this.get('settings'),
  14251         elements = this.get('elements');
  14252 
  14253     if (undefined !== elements) {
  14254       _.each(_.clone(elements.models), function (model) {
  14255         model.destroy();
  14256       });
  14257     }
  14258 
  14259     settings.destroy();
  14260   }
  14261 });
  14262 ElementModel.prototype.sync = ElementModel.prototype.fetch = ElementModel.prototype.save = _.noop;
  14263 module.exports = ElementModel;
  14264 
  14265 /***/ }),
  14266 
  14267 /***/ "../assets/dev/js/editor/elements/views/base.js":
  14268 /*!******************************************************!*\
  14269   !*** ../assets/dev/js/editor/elements/views/base.js ***!
  14270   \******************************************************/
  14271 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  14272 
  14273 "use strict";
  14274 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
  14275 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  14276 
  14277 
  14278 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  14279 
  14280 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  14281 
  14282 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  14283 
  14284 var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));
  14285 
  14286 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  14287 
  14288 var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));
  14289 
  14290 var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));
  14291 
  14292 var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));
  14293 
  14294 var ControlsCSSParser = __webpack_require__(/*! elementor-editor-utils/controls-css-parser */ "../assets/dev/js/editor/utils/controls-css-parser.js"),
  14295     Validator = __webpack_require__(/*! elementor-validator/base */ "../assets/dev/js/editor/components/validator/base.js"),
  14296     BaseContainer = __webpack_require__(/*! elementor-views/base-container */ "../assets/dev/js/editor/views/base-container.js"),
  14297     BaseElementView;
  14298 
  14299 BaseElementView = BaseContainer.extend({
  14300   tagName: 'div',
  14301   controlsCSSParser: null,
  14302   allowRender: true,
  14303   toggleEditTools: false,
  14304   renderAttributes: {},
  14305   className: function className() {
  14306     var classes = 'elementor-element elementor-element-edit-mode ' + this.getElementUniqueID();
  14307 
  14308     if (this.toggleEditTools) {
  14309       classes += ' elementor-element--toggle-edit-tools';
  14310     }
  14311 
  14312     return classes;
  14313   },
  14314   attributes: function attributes() {
  14315     return {
  14316       'data-id': this.getID(),
  14317       'data-element_type': this.model.get('elType')
  14318     };
  14319   },
  14320   ui: function ui() {
  14321     return {
  14322       tools: '> .elementor-element-overlay > .elementor-editor-element-settings',
  14323       editButton: '> .elementor-element-overlay .elementor-editor-element-edit',
  14324       duplicateButton: '> .elementor-element-overlay .elementor-editor-element-duplicate',
  14325       addButton: '> .elementor-element-overlay .elementor-editor-element-add',
  14326       removeButton: '> .elementor-element-overlay .elementor-editor-element-remove'
  14327     };
  14328   },
  14329   behaviors: function behaviors() {
  14330     var elementType = this.options.model.get('elType');
  14331     var groups = elementor.hooks.applyFilters("elements/".concat(elementType, "/contextMenuGroups"), this.getContextMenuGroups(), this);
  14332     var behaviors = {
  14333       contextMenu: {
  14334         behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
  14335         groups: groups
  14336       }
  14337     };
  14338     return elementor.hooks.applyFilters('elements/base/behaviors', behaviors, this);
  14339   },
  14340   getBehavior: function getBehavior(name) {
  14341     return this._behaviors[(0, _keys.default)(this.behaviors()).indexOf(name)];
  14342   },
  14343   events: function events() {
  14344     return {
  14345       mousedown: 'onMouseDown',
  14346       'click @ui.editButton': 'onEditButtonClick',
  14347       'click @ui.duplicateButton': 'onDuplicateButtonClick',
  14348       'click @ui.addButton': 'onAddButtonClick',
  14349       'click @ui.removeButton': 'onRemoveButtonClick'
  14350     };
  14351   },
  14352   getElementType: function getElementType() {
  14353     return this.model.get('elType');
  14354   },
  14355   getIDInt: function getIDInt() {
  14356     return (0, _parseInt2.default)(this.getID(), 16);
  14357   },
  14358   getChildType: function getChildType() {
  14359     return elementor.helpers.getElementChildType(this.getElementType());
  14360   },
  14361   getChildView: function getChildView(model) {
  14362     var ChildView;
  14363     var elType = model.get('elType');
  14364 
  14365     if ('section' === elType) {
  14366       ChildView = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js");
  14367     } else if ('column' === elType) {
  14368       ChildView = __webpack_require__(/*! elementor-elements/views/column */ "../assets/dev/js/editor/elements/views/column.js");
  14369     } else {
  14370       ChildView = elementor.modules.elements.views.Widget;
  14371     }
  14372 
  14373     return elementor.hooks.applyFilters('element/view', ChildView, model, this);
  14374   },
  14375   getTemplateType: function getTemplateType() {
  14376     return 'js';
  14377   },
  14378   getEditModel: function getEditModel() {
  14379     return this.model;
  14380   },
  14381   getContainer: function getContainer() {
  14382     if (!this.container) {
  14383       var settingsModel = this.model.get('settings');
  14384       this.container = new elementorModules.editor.Container({
  14385         type: this.model.get('elType'),
  14386         id: this.model.id,
  14387         model: this.model,
  14388         settings: settingsModel,
  14389         view: this,
  14390         parent: this._parent ? this._parent.getContainer() : {},
  14391         children: [],
  14392         label: elementor.helpers.getModelLabel(this.model),
  14393         controls: settingsModel.options.controls
  14394       });
  14395     }
  14396 
  14397     return this.container;
  14398   },
  14399   getContextMenuGroups: function getContextMenuGroups() {
  14400     var _this = this;
  14401 
  14402     var controlSign = _environment.default.mac ? '⌘' : '^';
  14403     return [{
  14404       name: 'general',
  14405       actions: [{
  14406         name: 'edit',
  14407         icon: 'eicon-edit',
  14408 
  14409         /* translators: %s: Element Name. */
  14410         title: sprintf(__('Edit %s', 'elementor'), this.options.model.getTitle()),
  14411         callback: function callback() {
  14412           return $e.run('panel/editor/open', {
  14413             model: _this.options.model,
  14414             // Todo: remove on merge router
  14415             view: _this,
  14416             // Todo: remove on merge router
  14417             container: _this.getContainer()
  14418           });
  14419         }
  14420       }, {
  14421         name: 'duplicate',
  14422         icon: 'eicon-clone',
  14423         title: __('Duplicate', 'elementor'),
  14424         shortcut: controlSign + '+D',
  14425         callback: function callback() {
  14426           return $e.run('document/elements/duplicate', {
  14427             container: _this.getContainer()
  14428           });
  14429         }
  14430       }]
  14431     }, {
  14432       name: 'clipboard',
  14433       actions: [{
  14434         name: 'copy',
  14435         title: __('Copy', 'elementor'),
  14436         shortcut: controlSign + '+C',
  14437         callback: function callback() {
  14438           return $e.run('document/elements/copy', {
  14439             container: _this.getContainer()
  14440           });
  14441         }
  14442       }, {
  14443         name: 'paste',
  14444         title: __('Paste', 'elementor'),
  14445         shortcut: controlSign + '+V',
  14446         isEnabled: function isEnabled() {
  14447           return $e.components.get('document/elements').utils.isPasteEnabled(_this.getContainer());
  14448         },
  14449         callback: function callback() {
  14450           return $e.run('document/ui/paste', {
  14451             container: _this.getContainer()
  14452           });
  14453         }
  14454       }, {
  14455         name: 'pasteStyle',
  14456         title: __('Paste Style', 'elementor'),
  14457         shortcut: controlSign + '+⇧+V',
  14458         isEnabled: function isEnabled() {
  14459           return !!elementorCommon.storage.get('clipboard');
  14460         },
  14461         callback: function callback() {
  14462           return $e.run('document/elements/paste-style', {
  14463             container: _this.getContainer()
  14464           });
  14465         }
  14466       }, {
  14467         name: 'resetStyle',
  14468         title: __('Reset Style', 'elementor'),
  14469         callback: function callback() {
  14470           return $e.run('document/elements/reset-style', {
  14471             container: _this.getContainer()
  14472           });
  14473         }
  14474       }]
  14475     }, {
  14476       name: 'delete',
  14477       actions: [{
  14478         name: 'delete',
  14479         icon: 'eicon-trash',
  14480         title: __('Delete', 'elementor'),
  14481         shortcut: '⌦',
  14482         callback: function callback() {
  14483           return $e.run('document/elements/delete', {
  14484             container: _this.getContainer()
  14485           });
  14486         }
  14487       }]
  14488     }];
  14489   },
  14490   getEditButtons: function getEditButtons() {
  14491     return {};
  14492   },
  14493   initialize: function initialize() {
  14494     var _this2 = this;
  14495 
  14496     BaseContainer.prototype.initialize.apply(this, arguments);
  14497     var editModel = this.getEditModel();
  14498 
  14499     if (this.collection && this.onCollectionChanged) {
  14500       elementorCommon.helpers.softDeprecated('onCollectionChanged', '2.8.0', '$e.hooks');
  14501       this.listenTo(this.collection, 'add remove reset', this.onCollectionChanged, this);
  14502     }
  14503 
  14504     if (this.onSettingsChanged) {
  14505       elementorCommon.helpers.softDeprecated('onSettingsChanged', '2.8.0', '$e.hooks');
  14506       this.listenTo(editModel.get('settings'), 'change', this.onSettingsChanged);
  14507     }
  14508 
  14509     this.listenTo(editModel.get('editSettings'), 'change', this.onEditSettingsChanged).listenTo(this.model, 'request:edit', this.onEditRequest).listenTo(this.model, 'request:toggleVisibility', this.toggleVisibility);
  14510     this.initControlsCSSParser();
  14511 
  14512     _.defer(function () {
  14513       // Init container. Defer - in order to init the container after the element is fully initialized, and properties like `_parent` are available.
  14514       _this2.getContainer();
  14515     });
  14516   },
  14517   getHandlesOverlay: function getHandlesOverlay() {
  14518     var $handlesOverlay = jQuery('<div>', {
  14519       class: 'elementor-element-overlay'
  14520     }),
  14521         $overlayList = jQuery('<ul>', {
  14522       class: "elementor-editor-element-settings elementor-editor-".concat(this.getElementType(), "-settings")
  14523     });
  14524     jQuery.each(this.getEditButtons(), function (toolName, tool) {
  14525       var $item = jQuery('<li>', {
  14526         class: "elementor-editor-element-setting elementor-editor-element-".concat(toolName),
  14527         title: tool.title
  14528       }),
  14529           $icon = jQuery('<i>', {
  14530         class: "eicon-".concat(tool.icon),
  14531         'aria-hidden': true
  14532       }),
  14533           $a11y = jQuery('<span>', {
  14534         class: 'elementor-screen-only'
  14535       });
  14536       $a11y.text(tool.title);
  14537       $item.append($icon, $a11y);
  14538       $overlayList.append($item);
  14539     });
  14540     $handlesOverlay.append($overlayList);
  14541     return $handlesOverlay;
  14542   },
  14543   attachElContent: function attachElContent(html) {
  14544     this.$el.empty().append(this.getHandlesOverlay(), html);
  14545   },
  14546   startTransport: function startTransport() {
  14547     elementorCommon.helpers.softDeprecated('element.startTransport', '2.8.0', "$e.run( 'document/elements/copy' )");
  14548     $e.run('document/elements/copy', {
  14549       container: this.getContainer()
  14550     });
  14551   },
  14552   copy: function copy() {
  14553     elementorCommon.helpers.softDeprecated('element.copy', '2.8.0', "$e.run( 'document/elements/copy' )");
  14554     $e.run('document/elements/copy', {
  14555       container: this.getContainer()
  14556     });
  14557   },
  14558   cut: function cut() {
  14559     elementorCommon.helpers.softDeprecated('element.cut', '2.8.0');
  14560   },
  14561   paste: function paste() {
  14562     elementorCommon.helpers.softDeprecated('element.paste', '2.8.0', "$e.run( 'document/elements/paste' )");
  14563     $e.run('document/elements/paste', {
  14564       container: this.getContainer(),
  14565       at: this._parent.collection.indexOf(this.model)
  14566     });
  14567   },
  14568   duplicate: function duplicate() {
  14569     elementorCommon.helpers.softDeprecated('element.duplicate', '2.8.0', "$e.run( 'document/elements/duplicate' )");
  14570     $e.run('document/elements/duplicate', {
  14571       container: this.getContainer()
  14572     });
  14573   },
  14574   pasteStyle: function pasteStyle() {
  14575     elementorCommon.helpers.softDeprecated('element.pasteStyle', '2.8.0', "$e.run( 'document/elements/paste-style' )");
  14576     $e.run('document/elements/paste-style', {
  14577       container: this.getContainer()
  14578     });
  14579   },
  14580   resetStyle: function resetStyle() {
  14581     elementorCommon.helpers.softDeprecated('element.resetStyle', '2.8.0', "$e.run( 'document/elements/reset-style' )");
  14582     $e.run('document/elements/reset-style', {
  14583       container: this.getContainer()
  14584     });
  14585   },
  14586   isStyleTransferControl: function isStyleTransferControl(control) {
  14587     if (undefined !== control.style_transfer) {
  14588       return control.style_transfer;
  14589     }
  14590 
  14591     return 'content' !== control.tab || control.selectors || control.prefix_class;
  14592   },
  14593   toggleVisibility: function toggleVisibility() {
  14594     this.model.set('hidden', !this.model.get('hidden'));
  14595     this.toggleVisibilityClass();
  14596   },
  14597   toggleVisibilityClass: function toggleVisibilityClass() {
  14598     this.$el.toggleClass('elementor-edit-hidden', !!this.model.get('hidden'));
  14599   },
  14600   addElementFromPanel: function addElementFromPanel(options) {
  14601     options = options || {};
  14602     var elementView = elementor.channels.panelElements.request('element:selected'),
  14603         model = {
  14604       elType: elementView.model.get('elType')
  14605     };
  14606 
  14607     if (elementor.helpers.maybeDisableWidget()) {
  14608       return;
  14609     }
  14610 
  14611     if ('widget' === model.elType) {
  14612       model.widgetType = elementView.model.get('widgetType');
  14613     } else if ('section' === model.elType) {
  14614       model.isInner = true;
  14615     } else {
  14616       return;
  14617     }
  14618 
  14619     var customData = elementView.model.get('custom');
  14620 
  14621     if (customData) {
  14622       jQuery.extend(model, customData);
  14623     }
  14624 
  14625     return $e.run('document/elements/create', {
  14626       container: this.getContainer(),
  14627       model: model,
  14628       options: options
  14629     });
  14630   },
  14631   // TODO: Unused function.
  14632   addControlValidator: function addControlValidator(controlName, validationCallback) {
  14633     validationCallback = validationCallback.bind(this);
  14634     var validator = new Validator({
  14635       customValidationMethod: validationCallback
  14636     }),
  14637         validators = this.getEditModel().get('settings').validators;
  14638 
  14639     if (!validators[controlName]) {
  14640       validators[controlName] = [];
  14641     }
  14642 
  14643     validators[controlName].push(validator);
  14644   },
  14645   addRenderAttribute: function addRenderAttribute(element, key, value, overwrite) {
  14646     var self = this;
  14647 
  14648     if ('object' === (0, _typeof2.default)(element)) {
  14649       jQuery.each(element, function (elementKey, elementValue) {
  14650         self.addRenderAttribute(elementKey, elementValue, null, overwrite);
  14651       });
  14652       return self;
  14653     }
  14654 
  14655     if ('object' === (0, _typeof2.default)(key)) {
  14656       jQuery.each(key, function (attributeKey, attributeValue) {
  14657         self.addRenderAttribute(element, attributeKey, attributeValue, overwrite);
  14658       });
  14659       return self;
  14660     }
  14661 
  14662     if (!self.renderAttributes[element]) {
  14663       self.renderAttributes[element] = {};
  14664     }
  14665 
  14666     if (!self.renderAttributes[element][key]) {
  14667       self.renderAttributes[element][key] = [];
  14668     }
  14669 
  14670     if (!(0, _isArray.default)(value)) {
  14671       value = [value];
  14672     }
  14673 
  14674     if (overwrite) {
  14675       self.renderAttributes[element][key] = value;
  14676     } else {
  14677       self.renderAttributes[element][key] = self.renderAttributes[element][key].concat(value);
  14678     }
  14679   },
  14680   getRenderAttributeString: function getRenderAttributeString(element) {
  14681     if (!this.renderAttributes[element]) {
  14682       return '';
  14683     }
  14684 
  14685     var renderAttributes = this.renderAttributes[element],
  14686         attributes = [];
  14687     jQuery.each(renderAttributes, function (attributeKey, attributeValue) {
  14688       attributes.push(attributeKey + '="' + _.escape(attributeValue.join(' ')) + '"');
  14689     });
  14690     return attributes.join(' ');
  14691   },
  14692   isInner: function isInner() {
  14693     return !!this.model.get('isInner');
  14694   },
  14695   initControlsCSSParser: function initControlsCSSParser() {
  14696     this.controlsCSSParser = new ControlsCSSParser({
  14697       id: this.model.get('id'),
  14698       context: this,
  14699       settingsModel: this.getEditModel().get('settings'),
  14700       dynamicParsing: this.getDynamicParsingSettings()
  14701     });
  14702   },
  14703   enqueueFonts: function enqueueFonts() {
  14704     var editModel = this.getEditModel(),
  14705         settings = editModel.get('settings'); // Enqueue Icon Fonts
  14706 
  14707     jQuery.each(settings.getIconsControls(), function (index, control) {
  14708       var iconType = editModel.getSetting(control.name);
  14709 
  14710       if (!iconType || !iconType.library) {
  14711         return;
  14712       }
  14713 
  14714       elementor.helpers.enqueueIconFonts(iconType.library);
  14715     });
  14716   },
  14717   renderStyles: function renderStyles(settings) {
  14718     if (!settings) {
  14719       settings = this.getEditModel().get('settings');
  14720     }
  14721 
  14722     this.controlsCSSParser.stylesheet.empty();
  14723     this.controlsCSSParser.addStyleRules(settings.getStyleControls(), settings.attributes, this.getEditModel().get('settings').controls, [/{{ID}}/g, /{{WRAPPER}}/g], [this.getID(), '.elementor-' + elementor.config.document.id + ' .elementor-element.' + this.getElementUniqueID()]);
  14724     this.controlsCSSParser.addStyleToDocument();
  14725   },
  14726   renderCustomClasses: function renderCustomClasses() {
  14727     var self = this;
  14728     var settings = self.getEditModel().get('settings'),
  14729         classControls = settings.getClassControls(); // Remove all previous classes
  14730 
  14731     _.each(classControls, function (control) {
  14732       var previousClassValue = settings.previous(control.name);
  14733 
  14734       if (control.classes_dictionary) {
  14735         if (undefined !== control.classes_dictionary[previousClassValue]) {
  14736           previousClassValue = control.classes_dictionary[previousClassValue];
  14737         }
  14738       }
  14739 
  14740       self.$el.removeClass(control.prefix_class + previousClassValue);
  14741     }); // Add new classes
  14742 
  14743 
  14744     _.each(classControls, function (control) {
  14745       var value = settings.attributes[control.name];
  14746       var classValue = value;
  14747 
  14748       if (control.classes_dictionary) {
  14749         if (undefined !== control.classes_dictionary[value]) {
  14750           classValue = control.classes_dictionary[value];
  14751         }
  14752       }
  14753 
  14754       var isVisible = elementor.helpers.isActiveControl(control, settings.attributes);
  14755 
  14756       if (isVisible && (classValue || 0 === classValue)) {
  14757         self.$el.addClass(control.prefix_class + classValue);
  14758       }
  14759     });
  14760 
  14761     self.$el.addClass(_.result(self, 'className'));
  14762     self.toggleVisibilityClass();
  14763   },
  14764   renderCustomElementID: function renderCustomElementID() {
  14765     var customElementID = this.getEditModel().get('settings').get('_element_id');
  14766     this.$el.attr('id', customElementID);
  14767   },
  14768   renderUI: function renderUI() {
  14769     this.renderStyles();
  14770     this.renderCustomClasses();
  14771     this.renderCustomElementID();
  14772     this.enqueueFonts();
  14773   },
  14774   runReadyTrigger: function runReadyTrigger() {
  14775     var self = this;
  14776 
  14777     _.defer(function () {
  14778       elementorFrontend.elementsHandler.runReadyTrigger(self.el);
  14779 
  14780       if (!elementorFrontend.isEditMode()) {
  14781         return;
  14782       } // In edit mode - handle an external elements that loaded by another elements like shortcode etc.
  14783 
  14784 
  14785       self.$el.find('.elementor-element.elementor-' + self.model.get('elType') + ':not(.elementor-element-edit-mode)').each(function () {
  14786         elementorFrontend.elementsHandler.runReadyTrigger(this);
  14787       });
  14788     });
  14789   },
  14790   getID: function getID() {
  14791     return this.model.get('id');
  14792   },
  14793   getElementUniqueID: function getElementUniqueID() {
  14794     return 'elementor-element-' + this.getID();
  14795   },
  14796   renderHTML: function renderHTML() {
  14797     var templateType = this.getTemplateType(),
  14798         editModel = this.getEditModel();
  14799 
  14800     if ('js' === templateType) {
  14801       this.getEditModel().setHtmlCache();
  14802       this.render();
  14803       editModel.renderOnLeave = true;
  14804     } else {
  14805       editModel.renderRemoteServer();
  14806     }
  14807   },
  14808   renderOnChange: function renderOnChange(settings) {
  14809     if (!this.allowRender) {
  14810       return;
  14811     } // Make sure is correct model
  14812 
  14813 
  14814     if (settings instanceof elementorModules.editor.elements.models.BaseSettings) {
  14815       var hasChanged = settings.hasChanged();
  14816       var isContentChanged = !hasChanged,
  14817           isRenderRequired = !hasChanged;
  14818 
  14819       _.each(settings.changedAttributes(), function (settingValue, settingKey) {
  14820         var control = settings.getControl(settingKey);
  14821 
  14822         if ('_column_size' === settingKey) {
  14823           isRenderRequired = true;
  14824           return;
  14825         }
  14826 
  14827         if (!control) {
  14828           isRenderRequired = true;
  14829           isContentChanged = true;
  14830           return;
  14831         }
  14832 
  14833         if ('none' !== control.render_type) {
  14834           isRenderRequired = true;
  14835         }
  14836 
  14837         if (-1 !== ['none', 'ui'].indexOf(control.render_type)) {
  14838           return;
  14839         }
  14840 
  14841         if ('template' === control.render_type || !settings.isStyleControl(settingKey) && !settings.isClassControl(settingKey) && '_element_id' !== settingKey) {
  14842           isContentChanged = true;
  14843         }
  14844       });
  14845 
  14846       if (!isRenderRequired) {
  14847         return;
  14848       }
  14849 
  14850       if (!isContentChanged) {
  14851         this.renderUI();
  14852         return;
  14853       }
  14854     } // Re-render the template
  14855 
  14856 
  14857     this.renderHTML();
  14858   },
  14859   getDynamicParsingSettings: function getDynamicParsingSettings() {
  14860     var self = this;
  14861     return {
  14862       onServerRequestStart: function onServerRequestStart() {
  14863         self.$el.addClass('elementor-loading');
  14864       },
  14865       onServerRequestEnd: function onServerRequestEnd() {
  14866         self.render();
  14867         self.$el.removeClass('elementor-loading');
  14868       }
  14869     };
  14870   },
  14871   serializeData: function serializeData() {
  14872     var data = BaseContainer.prototype.serializeData.apply(this, arguments);
  14873     data.settings = this.getEditModel().get('settings').parseDynamicSettings(data.settings, this.getDynamicParsingSettings());
  14874     return data;
  14875   },
  14876   save: function save() {
  14877     $e.route('library/save-template', {
  14878       model: this.model
  14879     });
  14880   },
  14881   onBeforeRender: function onBeforeRender() {
  14882     this.renderAttributes = {};
  14883   },
  14884   onRender: function onRender() {
  14885     this.renderUI();
  14886     this.runReadyTrigger();
  14887 
  14888     if (this.toggleEditTools) {
  14889       var editButton = this.ui.editButton; // Since this.ui.tools does not exist while testing.
  14890 
  14891       if (this.ui.tools) {
  14892         this.ui.tools.hoverIntent(function () {
  14893           editButton.addClass('elementor-active');
  14894         }, function () {
  14895           editButton.removeClass('elementor-active');
  14896         }, {
  14897           timeout: 500
  14898         });
  14899       }
  14900     }
  14901   },
  14902   onEditSettingsChanged: function onEditSettingsChanged(changedModel) {
  14903     elementor.channels.editor.trigger('change:editSettings', changedModel, this);
  14904   },
  14905   onEditButtonClick: function onEditButtonClick() {
  14906     this.model.trigger('request:edit');
  14907   },
  14908   onEditRequest: function onEditRequest() {
  14909     var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  14910 
  14911     if (!this.container.isEditable()) {
  14912       return;
  14913     }
  14914 
  14915     var model = this.getEditModel(),
  14916         panel = elementor.getPanelView();
  14917 
  14918     if ($e.routes.isPartOf('panel/editor') && panel.getCurrentPageView().model === model) {
  14919       return;
  14920     }
  14921 
  14922     if (options.scrollIntoView) {
  14923       elementor.helpers.scrollToView(this.$el, 200);
  14924     }
  14925 
  14926     $e.run('panel/editor/open', {
  14927       model: model,
  14928       view: this
  14929     });
  14930   },
  14931   onDuplicateButtonClick: function onDuplicateButtonClick(event) {
  14932     event.stopPropagation();
  14933     $e.run('document/elements/duplicate', {
  14934       container: this.getContainer()
  14935     });
  14936   },
  14937   onRemoveButtonClick: function onRemoveButtonClick(event) {
  14938     event.stopPropagation();
  14939     $e.run('document/elements/delete', {
  14940       container: this.getContainer()
  14941     });
  14942   },
  14943 
  14944   /* jQuery ui sortable preventing any `mousedown` event above any element, and as a result is preventing the `blur`
  14945    * event on the currently active element. Therefor, we need to blur the active element manually.
  14946    */
  14947   onMouseDown: function onMouseDown(event) {
  14948     if (jQuery(event.target).closest('.elementor-inline-editing').length) {
  14949       return;
  14950     }
  14951 
  14952     elementorFrontend.elements.window.document.activeElement.blur();
  14953   },
  14954   onDestroy: function onDestroy() {
  14955     this.controlsCSSParser.removeStyleFromDocument();
  14956     this.getEditModel().get('settings').validators = {};
  14957     elementor.channels.data.trigger('element:destroy', this.model);
  14958   }
  14959 });
  14960 module.exports = BaseElementView;
  14961 
  14962 /***/ }),
  14963 
  14964 /***/ "../assets/dev/js/editor/elements/views/behaviors/column-resizable.js":
  14965 /*!****************************************************************************!*\
  14966   !*** ../assets/dev/js/editor/elements/views/behaviors/column-resizable.js ***!
  14967   \****************************************************************************/
  14968 /***/ ((module) => {
  14969 
  14970 "use strict";
  14971 
  14972 
  14973 var ResizableBehavior;
  14974 ResizableBehavior = Marionette.Behavior.extend({
  14975   defaults: {
  14976     handles: elementorCommon.config.isRTL ? 'w' : 'e'
  14977   },
  14978   events: {
  14979     resizestart: 'onResizeStart',
  14980     resizestop: 'onResizeStop',
  14981     resize: 'onResize'
  14982   },
  14983   initialize: function initialize() {
  14984     Marionette.Behavior.prototype.initialize.apply(this, arguments);
  14985     this.listenTo(elementor.channels.dataEditMode, 'switch', this.onEditModeSwitched);
  14986   },
  14987   active: function active() {
  14988     if (!elementor.userCan('design')) {
  14989       return;
  14990     }
  14991 
  14992     this.deactivate();
  14993 
  14994     var options = _.clone(this.options);
  14995 
  14996     delete options.behaviorClass;
  14997 
  14998     var $childViewContainer = this.getChildViewContainer(),
  14999         defaultResizableOptions = {},
  15000         resizableOptions = _.extend(defaultResizableOptions, options);
  15001 
  15002     $childViewContainer.resizable(resizableOptions);
  15003   },
  15004   deactivate: function deactivate() {
  15005     if (this.getChildViewContainer().resizable('instance')) {
  15006       this.getChildViewContainer().resizable('destroy');
  15007     }
  15008   },
  15009   onEditModeSwitched: function onEditModeSwitched(activeMode) {
  15010     if ('edit' === activeMode) {
  15011       this.active();
  15012     } else {
  15013       this.deactivate();
  15014     }
  15015   },
  15016   onRender: function onRender() {
  15017     var self = this;
  15018 
  15019     _.defer(function () {
  15020       self.onEditModeSwitched(elementor.channels.dataEditMode.request('activeMode'));
  15021     });
  15022   },
  15023   onDestroy: function onDestroy() {
  15024     this.deactivate();
  15025   },
  15026   onResizeStart: function onResizeStart(event) {
  15027     event.stopPropagation();
  15028     this.view.$el.data('originalWidth', this.view.el.getBoundingClientRect().width);
  15029     this.view.triggerMethod('request:resize:start', event);
  15030   },
  15031   onResizeStop: function onResizeStop(event) {
  15032     event.stopPropagation();
  15033     this.view.triggerMethod('request:resize:stop');
  15034   },
  15035   onResize: function onResize(event, ui) {
  15036     event.stopPropagation();
  15037     this.view.triggerMethod('request:resize', ui, event);
  15038   },
  15039   getChildViewContainer: function getChildViewContainer() {
  15040     return this.$el;
  15041   }
  15042 });
  15043 module.exports = ResizableBehavior;
  15044 
  15045 /***/ }),
  15046 
  15047 /***/ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js":
  15048 /*!************************************************************************!*\
  15049   !*** ../assets/dev/js/editor/elements/views/behaviors/context-menu.js ***!
  15050   \************************************************************************/
  15051 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  15052 
  15053 "use strict";
  15054 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  15055 
  15056 
  15057 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  15058 
  15059 var _base = _interopRequireDefault(__webpack_require__(/*! elementor-views/add-section/base */ "../assets/dev/js/editor/views/add-section/base.js"));
  15060 
  15061 var ContextMenu = __webpack_require__(/*! elementor-editor-utils/context-menu */ "../assets/dev/js/editor/utils/context-menu.js");
  15062 
  15063 module.exports = Marionette.Behavior.extend({
  15064   defaults: {
  15065     groups: [],
  15066     eventTargets: ['el']
  15067   },
  15068   events: function events() {
  15069     var events = {};
  15070     this.getOption('eventTargets').forEach(function (eventTarget) {
  15071       var eventName = 'contextmenu';
  15072 
  15073       if ('el' !== eventTarget) {
  15074         eventName += ' ' + eventTarget;
  15075       }
  15076 
  15077       events[eventName] = 'onContextMenu';
  15078     });
  15079     return events;
  15080   },
  15081   initialize: function initialize() {
  15082     this.listenTo(this.view.options.model, 'request:contextmenu', this.onRequestContextMenu);
  15083   },
  15084   initContextMenu: function initContextMenu() {
  15085     var _this = this;
  15086 
  15087     var contextMenuGroups = this.getOption('groups'),
  15088         deleteGroup = _.findWhere(contextMenuGroups, {
  15089       name: 'delete'
  15090     }),
  15091         afterGroupIndex = contextMenuGroups.indexOf(deleteGroup);
  15092 
  15093     if (-1 === afterGroupIndex) {
  15094       afterGroupIndex = contextMenuGroups.length;
  15095     }
  15096 
  15097     contextMenuGroups.splice(afterGroupIndex, 0, {
  15098       name: 'tools',
  15099       actions: [{
  15100         name: 'navigator',
  15101         title: __('Navigator', 'elementor'),
  15102         callback: function callback() {
  15103           return $e.route('navigator', {
  15104             reOpen: true,
  15105             model: _this.view.model
  15106           });
  15107         }
  15108       }]
  15109     });
  15110     this.contextMenu = new ContextMenu({
  15111       groups: contextMenuGroups
  15112     });
  15113     this.contextMenu.getModal().on('hide', this.onContextMenuHide);
  15114   },
  15115   getContextMenu: function getContextMenu() {
  15116     if (!this.contextMenu) {
  15117       this.initContextMenu();
  15118     }
  15119 
  15120     return this.contextMenu;
  15121   },
  15122   onContextMenu: function onContextMenu(event) {
  15123     if ($e.shortcuts.isControlEvent(event)) {
  15124       return;
  15125     }
  15126 
  15127     var isAddSectionView = this.view instanceof _base.default;
  15128 
  15129     if (!isAddSectionView && (!this.view.container || !this.view.container.isDesignable())) {
  15130       return;
  15131     }
  15132 
  15133     event.preventDefault();
  15134     event.stopPropagation();
  15135     this.getContextMenu().show(event);
  15136     elementor.channels.editor.reply('contextMenu:targetView', this.view);
  15137   },
  15138   onRequestContextMenu: function onRequestContextMenu(event) {
  15139     var modal = this.getContextMenu().getModal(),
  15140         iframe = modal.getSettings('iframe'),
  15141         toolsGroup = _.findWhere(this.contextMenu.getSettings('groups'), {
  15142       name: 'tools'
  15143     });
  15144 
  15145     toolsGroup.isVisible = false;
  15146     modal.setSettings('iframe', null);
  15147     this.onContextMenu(event);
  15148     toolsGroup.isVisible = true;
  15149     modal.setSettings('iframe', iframe);
  15150   },
  15151   onContextMenuHide: function onContextMenuHide() {
  15152     elementor.channels.editor.reply('contextMenu:targetView', null);
  15153   },
  15154   onDestroy: function onDestroy() {
  15155     if (this.contextMenu) {
  15156       this.contextMenu.destroy();
  15157     }
  15158   }
  15159 });
  15160 
  15161 /***/ }),
  15162 
  15163 /***/ "../assets/dev/js/editor/elements/views/behaviors/inline-editing.js":
  15164 /*!**************************************************************************!*\
  15165   !*** ../assets/dev/js/editor/elements/views/behaviors/inline-editing.js ***!
  15166   \**************************************************************************/
  15167 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  15168 
  15169 "use strict";
  15170 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  15171 
  15172 
  15173 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  15174 
  15175 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  15176 
  15177 __webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");
  15178 
  15179 var InlineEditingBehavior;
  15180 InlineEditingBehavior = Marionette.Behavior.extend({
  15181   editing: false,
  15182   $currentEditingArea: null,
  15183   ui: function ui() {
  15184     return {
  15185       inlineEditingArea: '.' + this.getOption('inlineEditingClass')
  15186     };
  15187   },
  15188   events: function events() {
  15189     return {
  15190       'click @ui.inlineEditingArea': 'onInlineEditingClick',
  15191       'input @ui.inlineEditingArea': 'onInlineEditingUpdate'
  15192     };
  15193   },
  15194   initialize: function initialize() {
  15195     this.onInlineEditingBlur = this.onInlineEditingBlur.bind(this);
  15196   },
  15197   getEditingSettingKey: function getEditingSettingKey() {
  15198     return this.$currentEditingArea.data().elementorSettingKey;
  15199   },
  15200   startEditing: function startEditing($element) {
  15201     if (this.editing || !this.view.container.isEditable() || this.view.model.isRemoteRequestActive()) {
  15202       return;
  15203     }
  15204 
  15205     var elementorSettingKey = $element.data().elementorSettingKey,
  15206         settingKey = elementorSettingKey,
  15207         keyParts = elementorSettingKey.split('.'),
  15208         isRepeaterKey = 3 === keyParts.length,
  15209         settingsModel = this.view.getEditModel().get('settings');
  15210 
  15211     if (isRepeaterKey) {
  15212       settingsModel = settingsModel.get(keyParts[0]).models[keyParts[1]];
  15213       settingKey = keyParts[2];
  15214     }
  15215 
  15216     var dynamicSettings = settingsModel.get('__dynamic__'),
  15217         isDynamic = dynamicSettings && dynamicSettings[settingKey];
  15218 
  15219     if (isDynamic) {
  15220       return;
  15221     }
  15222 
  15223     this.$currentEditingArea = $element;
  15224     var elementData = this.$currentEditingArea.data(),
  15225         elementDataToolbar = elementData.elementorInlineEditingToolbar,
  15226         mode = 'advanced' === elementDataToolbar ? 'advanced' : 'basic',
  15227         editModel = this.view.getEditModel(),
  15228         inlineEditingConfig = elementor.config.inlineEditing,
  15229         contentHTML = editModel.getSetting(this.getEditingSettingKey());
  15230 
  15231     if ('advanced' === mode) {
  15232       contentHTML = wp.editor.autop(contentHTML);
  15233     }
  15234     /**
  15235      *  Replace rendered content with unrendered content.
  15236      *  This way the user can edit the original content, before shortcodes and oEmbeds are fired.
  15237      */
  15238 
  15239 
  15240     this.$currentEditingArea.html(contentHTML);
  15241     var ElementorInlineEditor = elementorFrontend.elements.window.ElementorInlineEditor;
  15242     this.editing = true;
  15243     this.view.allowRender = false; // Avoid retrieving of old content (e.g. in case of sorting)
  15244 
  15245     this.view.model.setHtmlCache('');
  15246     this.editor = new ElementorInlineEditor({
  15247       linksInNewWindow: true,
  15248       stay: false,
  15249       editor: this.$currentEditingArea[0],
  15250       mode: mode,
  15251       list: 'none' === elementDataToolbar ? [] : inlineEditingConfig.toolbar[elementDataToolbar || 'basic'],
  15252       cleanAttrs: ['id', 'class', 'name'],
  15253       placeholder: __('Type Here', 'elementor') + '...',
  15254       toolbarIconsPrefix: 'eicon-editor-',
  15255       toolbarIconsDictionary: {
  15256         externalLink: {
  15257           className: 'eicon-editor-external-link'
  15258         },
  15259         list: {
  15260           className: 'eicon-editor-list-ul'
  15261         },
  15262         insertOrderedList: {
  15263           className: 'eicon-editor-list-ol'
  15264         },
  15265         insertUnorderedList: {
  15266           className: 'eicon-editor-list-ul'
  15267         },
  15268         createlink: {
  15269           className: 'eicon-editor-link'
  15270         },
  15271         unlink: {
  15272           className: 'eicon-editor-unlink'
  15273         },
  15274         blockquote: {
  15275           className: 'eicon-editor-quote'
  15276         },
  15277         p: {
  15278           className: 'eicon-editor-paragraph'
  15279         },
  15280         pre: {
  15281           className: 'eicon-editor-code'
  15282         }
  15283       }
  15284     });
  15285     var $menuItems = jQuery(this.editor._menu).children();
  15286     /**
  15287      * When the edit area is not focused (on blur) the inline editing is stopped.
  15288      * In order to prevent blur event when the user clicks on toolbar buttons while editing the
  15289      * content, we need the prevent their mousedown event. This also prevents the blur event.
  15290      */
  15291 
  15292     $menuItems.on('mousedown', function (event) {
  15293       event.preventDefault();
  15294     });
  15295     this.$currentEditingArea.on('blur', this.onInlineEditingBlur);
  15296     elementorCommon.elements.$body.on('mousedown', this.onInlineEditingBlur);
  15297   },
  15298   stopEditing: function stopEditing() {
  15299     this.editing = false;
  15300     this.$currentEditingArea.off('blur', this.onInlineEditingBlur);
  15301     elementorCommon.elements.$body.off('mousedown', this.onInlineEditingBlur);
  15302     this.editor.destroy();
  15303     this.view.allowRender = true;
  15304     /**
  15305      * Inline editing has several toolbar types (advanced, basic and none). When editing is stopped,
  15306      * we need to rerender the area. To prevent multiple renderings, we will render only areas that
  15307      * use advanced toolbars.
  15308      */
  15309 
  15310     if ('advanced' === this.$currentEditingArea.data().elementorInlineEditingToolbar) {
  15311       this.view.getEditModel().renderRemoteServer();
  15312     }
  15313   },
  15314   onInlineEditingClick: function onInlineEditingClick(event) {
  15315     var self = this,
  15316         $targetElement = jQuery(event.currentTarget);
  15317     /**
  15318      * When starting inline editing we need to set timeout, this allows other inline items to finish
  15319      * their operations before focusing new editing area.
  15320      */
  15321 
  15322     setTimeout(function () {
  15323       self.startEditing($targetElement);
  15324     }, 30);
  15325   },
  15326   onInlineEditingBlur: function onInlineEditingBlur(event) {
  15327     var _this = this;
  15328 
  15329     if ('mousedown' === event.type) {
  15330       this.stopEditing();
  15331       return;
  15332     }
  15333     /**
  15334      * When exiting inline editing we need to set timeout, to make sure there is no focus on internal
  15335      * toolbar action. This prevent the blur and allows the user to continue the inline editing.
  15336      */
  15337 
  15338 
  15339     setTimeout(function () {
  15340       var selection = elementorFrontend.elements.window.getSelection(),
  15341           $focusNode = jQuery(selection.focusNode);
  15342 
  15343       if ($focusNode.closest('.pen-input-wrapper').length) {
  15344         return;
  15345       }
  15346 
  15347       _this.stopEditing();
  15348     }, 20);
  15349   },
  15350   onInlineEditingUpdate: function onInlineEditingUpdate() {
  15351     var key = this.getEditingSettingKey(),
  15352         container = this.view.getContainer();
  15353     var parts = key.split('.'); // Is it repeater?
  15354 
  15355     if (3 === parts.length) {
  15356       container = container.children[parts[1]];
  15357       key = parts[2];
  15358     }
  15359 
  15360     $e.run('document/elements/settings', {
  15361       container: container,
  15362       settings: (0, _defineProperty2.default)({}, key, this.editor.getContent()),
  15363       options: {
  15364         external: true
  15365       }
  15366     });
  15367   }
  15368 });
  15369 module.exports = InlineEditingBehavior;
  15370 
  15371 /***/ }),
  15372 
  15373 /***/ "../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js":
  15374 /*!**********************************************************************!*\
  15375   !*** ../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js ***!
  15376   \**********************************************************************/
  15377 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  15378 
  15379 "use strict";
  15380 
  15381 
  15382 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  15383 
  15384 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  15385 
  15386 var InnerTabsBehavior;
  15387 InnerTabsBehavior = Marionette.Behavior.extend({
  15388   onRenderCollection: function onRenderCollection() {
  15389     this.handleInnerTabs(this.view);
  15390   },
  15391   handleInnerTabs: function handleInnerTabs(parent) {
  15392     var closedClass = 'elementor-tab-close',
  15393         activeClass = 'elementor-tab-active',
  15394         tabsWrappers = parent.children.filter(function (view) {
  15395       return 'tabs' === view.model.get('type');
  15396     });
  15397 
  15398     _.each(tabsWrappers, function (view) {
  15399       view.$el.find('.elementor-control-content').remove();
  15400       var tabsId = view.model.get('name'),
  15401           tabs = parent.children.filter(function (childView) {
  15402         return 'tab' === childView.model.get('type') && childView.model.get('tabs_wrapper') === tabsId;
  15403       });
  15404 
  15405       _.each(tabs, function (childView, index) {
  15406         view._addChildView(childView);
  15407 
  15408         var tabId = childView.model.get('name'),
  15409             controlsUnderTab = parent.children.filter(function (controlView) {
  15410           return tabId === controlView.model.get('inner_tab');
  15411         });
  15412 
  15413         if (0 === index) {
  15414           childView.$el.addClass(activeClass);
  15415         } else {
  15416           _.each(controlsUnderTab, function (controlView) {
  15417             controlView.$el.addClass(closedClass);
  15418           });
  15419         }
  15420       });
  15421     });
  15422   },
  15423   onChildviewControlTabClicked: function onChildviewControlTabClicked(childView) {
  15424     var closedClass = 'elementor-tab-close',
  15425         activeClass = 'elementor-tab-active',
  15426         tabClicked = childView.model.get('name'),
  15427         childrenUnderTab = this.view.children.filter(function (view) {
  15428       return 'tab' !== view.model.get('type') && childView.model.get('tabs_wrapper') === view.model.get('tabs_wrapper');
  15429     }),
  15430         siblingTabs = this.view.children.filter(function (view) {
  15431       return 'tab' === view.model.get('type') && childView.model.get('tabs_wrapper') === view.model.get('tabs_wrapper');
  15432     });
  15433 
  15434     _.each(siblingTabs, function (view) {
  15435       view.$el.removeClass(activeClass);
  15436     });
  15437 
  15438     childView.$el.addClass(activeClass);
  15439 
  15440     _.each(childrenUnderTab, function (view) {
  15441       if (view.model.get('inner_tab') === tabClicked) {
  15442         view.$el.removeClass(closedClass);
  15443       } else {
  15444         view.$el.addClass(closedClass);
  15445       }
  15446     });
  15447 
  15448     elementor.getPanelView().updateScrollbar();
  15449   }
  15450 });
  15451 module.exports = InnerTabsBehavior;
  15452 
  15453 /***/ }),
  15454 
  15455 /***/ "../assets/dev/js/editor/elements/views/behaviors/sortable.js":
  15456 /*!********************************************************************!*\
  15457   !*** ../assets/dev/js/editor/elements/views/behaviors/sortable.js ***!
  15458   \********************************************************************/
  15459 /***/ ((module) => {
  15460 
  15461 "use strict";
  15462 
  15463 
  15464 var SortableBehavior;
  15465 SortableBehavior = Marionette.Behavior.extend({
  15466   defaults: {
  15467     elChildType: 'widget'
  15468   },
  15469   events: {
  15470     sortstart: 'onSortStart',
  15471     sortreceive: 'onSortReceive',
  15472     sortupdate: 'onSortUpdate',
  15473     sortover: 'onSortOver',
  15474     sortout: 'onSortOut'
  15475   },
  15476   initialize: function initialize() {
  15477     this.listenTo(elementor.channels.dataEditMode, 'switch', this.onEditModeSwitched).listenTo(this.view.options.model, 'request:sort:start', this.startSort).listenTo(this.view.options.model, 'request:sort:update', this.updateSort).listenTo(this.view.options.model, 'request:sort:receive', this.receiveSort);
  15478   },
  15479   onEditModeSwitched: function onEditModeSwitched(activeMode) {
  15480     if ('edit' === activeMode) {
  15481       this.activate();
  15482     } else {
  15483       this.deactivate();
  15484     }
  15485   },
  15486   onRender: function onRender() {
  15487     var self = this;
  15488 
  15489     _.defer(function () {
  15490       self.onEditModeSwitched(elementor.channels.dataEditMode.request('activeMode'));
  15491     });
  15492   },
  15493   onDestroy: function onDestroy() {
  15494     this.deactivate();
  15495   },
  15496   activate: function activate() {
  15497     if (!elementor.userCan('design')) {
  15498       return;
  15499     }
  15500 
  15501     if (this.getChildViewContainer().sortable('instance')) {
  15502       return;
  15503     }
  15504 
  15505     var $childViewContainer = this.getChildViewContainer(),
  15506         defaultSortableOptions = {
  15507       placeholder: 'elementor-sortable-placeholder elementor-' + this.getOption('elChildType') + '-placeholder',
  15508       cursorAt: {
  15509         top: 20,
  15510         left: 25
  15511       },
  15512       helper: this._getSortableHelper.bind(this),
  15513       cancel: 'input, textarea, button, select, option, .elementor-inline-editing, .elementor-tab-title',
  15514       // Fix: Sortable - Unable to drag and drop sections with huge height.
  15515       start: function start() {
  15516         $childViewContainer.sortable('refreshPositions');
  15517       }
  15518     },
  15519         sortableOptions = _.extend(defaultSortableOptions, this.view.getSortableOptions());
  15520 
  15521     $childViewContainer.sortable(sortableOptions);
  15522   },
  15523   _getSortableHelper: function _getSortableHelper(event, $item) {
  15524     var model = this.view.collection.get({
  15525       cid: $item.data('model-cid')
  15526     });
  15527     return '<div style="height: 84px; width: 125px;" class="elementor-sortable-helper elementor-sortable-helper-' + model.get('elType') + '"><div class="icon"><i class="' + model.getIcon() + '"></i></div><div class="elementor-element-title-wrapper"><div class="title">' + model.getTitle() + '</div></div></div>';
  15528   },
  15529   getChildViewContainer: function getChildViewContainer() {
  15530     return this.view.getChildViewContainer(this.view);
  15531   },
  15532   // This method is used to fix widgets index detection when dragging or sorting using the preview interface,
  15533   // The natural widget index in the column is wrong, since there is a `.elementor-background-overlay` element
  15534   // at the beginning of the column
  15535   getSortedElementNewIndex: function getSortedElementNewIndex($element) {
  15536     var draggedModel = elementor.channels.data.request('dragging:model'),
  15537         draggedElType = draggedModel.get('elType');
  15538     var newIndex = $element.index();
  15539 
  15540     if ('widget' === draggedElType && elementorCommon.config.experimentalFeatures['e_dom_optimization']) {
  15541       newIndex--;
  15542     }
  15543 
  15544     return newIndex;
  15545   },
  15546   deactivate: function deactivate() {
  15547     var childViewContainer = this.getChildViewContainer();
  15548 
  15549     if (childViewContainer.sortable('instance')) {
  15550       childViewContainer.sortable('destroy');
  15551     }
  15552   },
  15553   startSort: function startSort(event, ui) {
  15554     event.stopPropagation();
  15555     var container = elementor.getContainer(ui.item.attr('data-id'));
  15556     elementor.channels.data.reply('dragging:model', container.model).reply('dragging:view', container.view).reply('dragging:parent:view', this.view).trigger('drag:start', container.model).trigger(container.model.get('elType') + ':drag:start');
  15557   },
  15558   // On sorting element
  15559   updateSort: function updateSort(ui, newIndex) {
  15560     if (undefined === newIndex) {
  15561       newIndex = ui.item.index();
  15562     }
  15563 
  15564     $e.run('document/elements/move', {
  15565       container: elementor.channels.data.request('dragging:view').getContainer(),
  15566       target: this.view.getContainer(),
  15567       options: {
  15568         at: newIndex
  15569       }
  15570     });
  15571   },
  15572   // On receiving element from another container
  15573   receiveSort: function receiveSort(event, ui, newIndex) {
  15574     event.stopPropagation();
  15575 
  15576     if (this.view.isCollectionFilled()) {
  15577       jQuery(ui.sender).sortable('cancel');
  15578       return;
  15579     }
  15580 
  15581     var model = elementor.channels.data.request('dragging:model'),
  15582         draggedElType = model.get('elType'),
  15583         draggedIsInnerSection = 'section' === draggedElType && model.get('isInner'),
  15584         targetIsInnerColumn = 'column' === this.view.getElementType() && this.view.isInner();
  15585 
  15586     if (draggedIsInnerSection && targetIsInnerColumn) {
  15587       jQuery(ui.sender).sortable('cancel');
  15588       return;
  15589     }
  15590 
  15591     if (undefined === newIndex) {
  15592       newIndex = ui.item.index();
  15593     }
  15594 
  15595     $e.run('document/elements/move', {
  15596       container: elementor.channels.data.request('dragging:view').getContainer(),
  15597       target: this.view.getContainer(),
  15598       options: {
  15599         at: newIndex
  15600       }
  15601     });
  15602   },
  15603   onSortStart: function onSortStart(event, ui) {
  15604     if ('column' === this.options.elChildType) {
  15605       var uiData = ui.item.data('sortableItem'),
  15606           uiItems = uiData.items,
  15607           itemHeight = 0;
  15608       uiItems.forEach(function (item) {
  15609         if (item.item[0] === ui.item[0]) {
  15610           itemHeight = item.height;
  15611           return false;
  15612         }
  15613       });
  15614       ui.placeholder.height(itemHeight);
  15615     }
  15616 
  15617     this.startSort(event, ui);
  15618   },
  15619   onSortOver: function onSortOver(event) {
  15620     event.stopPropagation();
  15621     var model = elementor.channels.data.request('dragging:model');
  15622     jQuery(event.target).addClass('elementor-draggable-over').attr({
  15623       'data-dragged-element': model.get('elType'),
  15624       'data-dragged-is-inner': model.get('isInner')
  15625     });
  15626     this.$el.addClass('elementor-dragging-on-child');
  15627   },
  15628   onSortOut: function onSortOut(event) {
  15629     event.stopPropagation();
  15630     jQuery(event.target).removeClass('elementor-draggable-over').removeAttr('data-dragged-element data-dragged-is-inner');
  15631     this.$el.removeClass('elementor-dragging-on-child');
  15632   },
  15633   onSortReceive: function onSortReceive(event, ui) {
  15634     this.receiveSort(event, ui, this.getSortedElementNewIndex(ui.item));
  15635   },
  15636   onSortUpdate: function onSortUpdate(event, ui) {
  15637     event.stopPropagation();
  15638 
  15639     if (this.getChildViewContainer()[0] !== ui.item.parent()[0]) {
  15640       return;
  15641     }
  15642 
  15643     this.updateSort(ui, this.getSortedElementNewIndex(ui.item));
  15644   },
  15645   onAddChild: function onAddChild(view) {
  15646     view.$el.attr('data-model-cid', view.model.cid);
  15647   }
  15648 });
  15649 module.exports = SortableBehavior;
  15650 
  15651 /***/ }),
  15652 
  15653 /***/ "../assets/dev/js/editor/elements/views/behaviors/widget-draggable.js":
  15654 /*!****************************************************************************!*\
  15655   !*** ../assets/dev/js/editor/elements/views/behaviors/widget-draggable.js ***!
  15656   \****************************************************************************/
  15657 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  15658 
  15659 "use strict";
  15660 
  15661 
  15662 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  15663 
  15664 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  15665 
  15666 _Object$defineProperty(exports, "__esModule", {
  15667   value: true
  15668 });
  15669 
  15670 exports.default = void 0;
  15671 
  15672 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  15673 
  15674 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  15675 
  15676 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  15677 
  15678 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  15679 
  15680 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  15681 
  15682 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  15683 
  15684 var _default = /*#__PURE__*/function (_Marionette$Behavior) {
  15685   (0, _inherits2.default)(_default, _Marionette$Behavior);
  15686 
  15687   var _super = (0, _createSuper2.default)(_default);
  15688 
  15689   function _default() {
  15690     (0, _classCallCheck2.default)(this, _default);
  15691     return _super.apply(this, arguments);
  15692   }
  15693 
  15694   (0, _createClass2.default)(_default, [{
  15695     key: "events",
  15696     value: function events() {
  15697       return {
  15698         dragstart: 'onDragStart',
  15699         dragstop: 'onDragStop'
  15700       };
  15701     }
  15702   }, {
  15703     key: "initialize",
  15704     value: function initialize() {
  15705       (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "initialize", this).call(this);
  15706       this.listenTo(elementor.channels.dataEditMode, 'switch', this.toggle); // Save this instance for external use eg: ( hooks ).
  15707 
  15708       this.view.options.draggable = this;
  15709     }
  15710   }, {
  15711     key: "activate",
  15712     value: function activate() {
  15713       this.$el.draggable({
  15714         addClasses: false
  15715       });
  15716     }
  15717   }, {
  15718     key: "deactivate",
  15719     value: function deactivate() {
  15720       if (!this.$el.draggable('instance')) {
  15721         return;
  15722       }
  15723 
  15724       this.$el.draggable('destroy');
  15725     }
  15726   }, {
  15727     key: "toggle",
  15728     value: function toggle() {
  15729       var isAbsolute = this.view.getEditModel().getSetting('_position');
  15730       this.deactivate();
  15731 
  15732       if (isAbsolute && this.view.getContainer().isDesignable()) {
  15733         this.activate();
  15734       }
  15735     }
  15736   }, {
  15737     key: "onRender",
  15738     value: function onRender() {
  15739       var _this = this;
  15740 
  15741       _.defer(function () {
  15742         return _this.toggle();
  15743       });
  15744     }
  15745   }, {
  15746     key: "onDestroy",
  15747     value: function onDestroy() {
  15748       this.deactivate();
  15749     }
  15750   }, {
  15751     key: "onDragStart",
  15752     value: function onDragStart(event) {
  15753       event.stopPropagation();
  15754       this.view.model.trigger('request:edit');
  15755     }
  15756   }, {
  15757     key: "onDragStop",
  15758     value: function onDragStop(event, ui) {
  15759       var _this2 = this;
  15760 
  15761       event.stopPropagation();
  15762       var currentDeviceMode = elementorFrontend.getCurrentDeviceMode(),
  15763           deviceSuffix = 'desktop' === currentDeviceMode ? '' : '_' + currentDeviceMode,
  15764           editModel = this.view.getEditModel(),
  15765           hOrientation = editModel.getSetting('_offset_orientation_h'),
  15766           vOrientation = editModel.getSetting('_offset_orientation_v'),
  15767           settingToChange = {},
  15768           isRTL = elementorFrontend.config.is_rtl;
  15769       var parentWidth = this.$el.offsetParent().width(),
  15770           elementWidth = this.$el.outerWidth(true),
  15771           left = ui.position.left,
  15772           right = parentWidth - left - elementWidth;
  15773       var xPos = isRTL ? right : left,
  15774           yPos = ui.position.top,
  15775           offsetX = '_offset_x',
  15776           offsetY = '_offset_y';
  15777 
  15778       if ('end' === hOrientation) {
  15779         xPos = parentWidth - xPos - elementWidth;
  15780         offsetX = '_offset_x_end';
  15781       }
  15782 
  15783       var offsetXUnit = editModel.getSetting(offsetX + deviceSuffix).unit;
  15784       xPos = elementor.helpers.elementSizeToUnit(this.$el, xPos, offsetXUnit);
  15785       var parentHeight = this.$el.offsetParent().height(),
  15786           elementHeight = this.$el.outerHeight(true);
  15787 
  15788       if ('end' === vOrientation) {
  15789         yPos = parentHeight - yPos - elementHeight;
  15790         offsetY = '_offset_y_end';
  15791       }
  15792 
  15793       var offsetYUnit = editModel.getSetting(offsetY + deviceSuffix).unit;
  15794       yPos = elementor.helpers.elementSizeToUnit(this.$el, yPos, offsetYUnit);
  15795       settingToChange[offsetX + deviceSuffix] = {
  15796         size: xPos,
  15797         unit: offsetXUnit
  15798       };
  15799       settingToChange[offsetY + deviceSuffix] = {
  15800         size: yPos,
  15801         unit: offsetYUnit
  15802       };
  15803       $e.run('document/elements/settings', {
  15804         container: this.view.container,
  15805         settings: settingToChange,
  15806         options: {
  15807           external: true
  15808         }
  15809       });
  15810       setTimeout(function () {
  15811         _this2.$el.css({
  15812           top: '',
  15813           left: '',
  15814           right: '',
  15815           bottom: '',
  15816           width: '',
  15817           height: ''
  15818         });
  15819       }, 250);
  15820     }
  15821   }]);
  15822   return _default;
  15823 }(Marionette.Behavior);
  15824 
  15825 exports.default = _default;
  15826 
  15827 /***/ }),
  15828 
  15829 /***/ "../assets/dev/js/editor/elements/views/behaviors/widget-resizeable.js":
  15830 /*!*****************************************************************************!*\
  15831   !*** ../assets/dev/js/editor/elements/views/behaviors/widget-resizeable.js ***!
  15832   \*****************************************************************************/
  15833 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  15834 
  15835 "use strict";
  15836 
  15837 
  15838 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  15839 
  15840 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  15841 
  15842 _Object$defineProperty(exports, "__esModule", {
  15843   value: true
  15844 });
  15845 
  15846 exports.default = void 0;
  15847 
  15848 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  15849 
  15850 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  15851 
  15852 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  15853 
  15854 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  15855 
  15856 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  15857 
  15858 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  15859 
  15860 var _default = /*#__PURE__*/function (_Marionette$Behavior) {
  15861   (0, _inherits2.default)(_default, _Marionette$Behavior);
  15862 
  15863   var _super = (0, _createSuper2.default)(_default);
  15864 
  15865   function _default() {
  15866     (0, _classCallCheck2.default)(this, _default);
  15867     return _super.apply(this, arguments);
  15868   }
  15869 
  15870   (0, _createClass2.default)(_default, [{
  15871     key: "events",
  15872     value: function events() {
  15873       return {
  15874         resizestart: 'onResizeStart',
  15875         resizestop: 'onResizeStop',
  15876         resize: 'onResize'
  15877       };
  15878     }
  15879   }, {
  15880     key: "initialize",
  15881     value: function initialize() {
  15882       (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "initialize", this).call(this);
  15883       this.listenTo(elementor.channels.dataEditMode, 'switch', this.toggle); // Save this instance for external use eg: ( hooks ).
  15884 
  15885       this.view.options.resizeable = this;
  15886     }
  15887   }, {
  15888     key: "activate",
  15889     value: function activate() {
  15890       this.$el.resizable({
  15891         handles: 'e, w'
  15892       });
  15893     }
  15894   }, {
  15895     key: "deactivate",
  15896     value: function deactivate() {
  15897       if (!this.$el.resizable('instance')) {
  15898         return;
  15899       }
  15900 
  15901       this.$el.resizable('destroy');
  15902     }
  15903   }, {
  15904     key: "toggle",
  15905     value: function toggle() {
  15906       var editModel = this.view.getEditModel(),
  15907           isAbsolute = editModel.getSetting('_position'),
  15908           isInline = 'initial' === editModel.getSetting('_element_width');
  15909       this.deactivate();
  15910 
  15911       if ((isAbsolute || isInline) && this.view.container.isDesignable()) {
  15912         this.activate();
  15913       }
  15914     }
  15915   }, {
  15916     key: "onRender",
  15917     value: function onRender() {
  15918       var _this = this;
  15919 
  15920       _.defer(function () {
  15921         return _this.toggle();
  15922       });
  15923     }
  15924   }, {
  15925     key: "onDestroy",
  15926     value: function onDestroy() {
  15927       this.deactivate();
  15928     }
  15929   }, {
  15930     key: "onResizeStart",
  15931     value: function onResizeStart(event) {
  15932       event.stopPropagation();
  15933       this.view.model.trigger('request:edit');
  15934     }
  15935   }, {
  15936     key: "onResizeStop",
  15937     value: function onResizeStop(event, ui) {
  15938       event.stopPropagation();
  15939       var currentDeviceMode = elementorFrontend.getCurrentDeviceMode(),
  15940           deviceSuffix = 'desktop' === currentDeviceMode ? '' : '_' + currentDeviceMode,
  15941           editModel = this.view.getEditModel(),
  15942           unit = editModel.getSetting('_element_custom_width' + deviceSuffix).unit,
  15943           width = elementor.helpers.elementSizeToUnit(this.$el, ui.size.width, unit),
  15944           settingToChange = {};
  15945       settingToChange['_element_width' + deviceSuffix] = 'initial';
  15946       settingToChange['_element_custom_width' + deviceSuffix] = {
  15947         unit: unit,
  15948         size: width
  15949       };
  15950       $e.run('document/elements/settings', {
  15951         container: this.view.container,
  15952         settings: settingToChange,
  15953         options: {
  15954           external: true
  15955         }
  15956       });
  15957       this.$el.css({
  15958         width: '',
  15959         height: '',
  15960         left: ''
  15961       });
  15962     }
  15963   }, {
  15964     key: "onResize",
  15965     value: function onResize(event) {
  15966       event.stopPropagation();
  15967     }
  15968   }]);
  15969   return _default;
  15970 }(Marionette.Behavior);
  15971 
  15972 exports.default = _default;
  15973 
  15974 /***/ }),
  15975 
  15976 /***/ "../assets/dev/js/editor/elements/views/column-empty.js":
  15977 /*!**************************************************************!*\
  15978   !*** ../assets/dev/js/editor/elements/views/column-empty.js ***!
  15979   \**************************************************************/
  15980 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  15981 
  15982 "use strict";
  15983 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  15984 
  15985 
  15986 module.exports = Marionette.ItemView.extend({
  15987   template: '#tmpl-elementor-empty-preview',
  15988   className: 'elementor-empty-view',
  15989   events: {
  15990     click: 'onClickAdd'
  15991   },
  15992   behaviors: function behaviors() {
  15993     return {
  15994       contextMenu: {
  15995         behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
  15996         groups: this.getContextMenuGroups()
  15997       }
  15998     };
  15999   },
  16000   getContextMenuGroups: function getContextMenuGroups() {
  16001     var _this = this;
  16002 
  16003     return [{
  16004       name: 'general',
  16005       actions: [{
  16006         name: 'paste',
  16007         title: __('Paste', 'elementor'),
  16008         isEnabled: function isEnabled() {
  16009           return $e.components.get('document/elements').utils.isPasteEnabled(_this._parent.getContainer());
  16010         },
  16011         callback: function callback() {
  16012           return $e.run('document/ui/paste', {
  16013             container: _this._parent.getContainer()
  16014           });
  16015         }
  16016       }]
  16017     }];
  16018   },
  16019   onClickAdd: function onClickAdd() {
  16020     $e.route('panel/elements/categories');
  16021   }
  16022 });
  16023 
  16024 /***/ }),
  16025 
  16026 /***/ "../assets/dev/js/editor/elements/views/column.js":
  16027 /*!********************************************************!*\
  16028   !*** ../assets/dev/js/editor/elements/views/column.js ***!
  16029   \********************************************************/
  16030 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  16031 
  16032 "use strict";
  16033 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
  16034 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  16035 
  16036 
  16037 var _section = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js");
  16038 
  16039 var BaseElementView = __webpack_require__(/*! elementor-elements/views/base */ "../assets/dev/js/editor/elements/views/base.js"),
  16040     ColumnEmptyView = __webpack_require__(/*! elementor-elements/views/column-empty */ "../assets/dev/js/editor/elements/views/column-empty.js"),
  16041     ColumnView;
  16042 
  16043 ColumnView = BaseElementView.extend({
  16044   template: Marionette.TemplateCache.get('#tmpl-elementor-column-content'),
  16045   emptyView: ColumnEmptyView,
  16046   childViewContainer: elementorCommon.config.experimentalFeatures['e_dom_optimization'] ? '> .elementor-widget-wrap' : '> .elementor-column-wrap > .elementor-widget-wrap',
  16047   toggleEditTools: true,
  16048   behaviors: function behaviors() {
  16049     var behaviors = BaseElementView.prototype.behaviors.apply(this, arguments);
  16050 
  16051     _.extend(behaviors, {
  16052       Sortable: {
  16053         behaviorClass: __webpack_require__(/*! elementor-behaviors/sortable */ "../assets/dev/js/editor/elements/views/behaviors/sortable.js"),
  16054         elChildType: 'widget'
  16055       },
  16056       Resizable: {
  16057         behaviorClass: __webpack_require__(/*! elementor-behaviors/column-resizable */ "../assets/dev/js/editor/elements/views/behaviors/column-resizable.js")
  16058       }
  16059     });
  16060 
  16061     return elementor.hooks.applyFilters('elements/column/behaviors', behaviors, this);
  16062   },
  16063   className: function className() {
  16064     var classes = BaseElementView.prototype.className.apply(this, arguments),
  16065         type = this.isInner() ? 'inner' : 'top';
  16066     return classes + ' elementor-column elementor-' + type + '-column';
  16067   },
  16068   tagName: function tagName() {
  16069     return this.model.getSetting('html_tag') || 'div';
  16070   },
  16071   ui: function ui() {
  16072     var ui = BaseElementView.prototype.ui.apply(this, arguments);
  16073     ui.columnInner = elementorCommon.config.experimentalFeatures['e_dom_optimization'] ? '> .elementor-widget-wrap' : '> .elementor-column-wrap';
  16074     ui.percentsTooltip = '> .elementor-element-overlay .elementor-column-percents-tooltip';
  16075     return ui;
  16076   },
  16077   getEditButtons: function getEditButtons() {
  16078     var elementData = elementor.getElementData(this.model),
  16079         editTools = {};
  16080     editTools.edit = {
  16081       /* translators: %s: Element Name. */
  16082       title: sprintf(__('Edit %s', 'elementor'), elementData.title),
  16083       icon: 'column'
  16084     };
  16085 
  16086     if (elementor.getPreferences('edit_buttons')) {
  16087       editTools.duplicate = {
  16088         /* translators: %s: Element Name. */
  16089         title: sprintf(__('Duplicate %s', 'elementor'), elementData.title),
  16090         icon: 'clone'
  16091       };
  16092       editTools.add = {
  16093         /* translators: %s: Element Name. */
  16094         title: sprintf(__('Add %s', 'elementor'), elementData.title),
  16095         icon: 'plus'
  16096       };
  16097       editTools.remove = {
  16098         /* translators: %s: Element Name. */
  16099         title: sprintf(__('Delete %s', 'elementor'), elementData.title),
  16100         icon: 'close'
  16101       };
  16102     }
  16103 
  16104     return editTools;
  16105   },
  16106   initialize: function initialize() {
  16107     BaseElementView.prototype.initialize.apply(this, arguments);
  16108     this.model.get('editSettings').set('defaultEditRoute', 'layout');
  16109   },
  16110   attachElContent: function attachElContent() {
  16111     BaseElementView.prototype.attachElContent.apply(this, arguments);
  16112     var $tooltip = jQuery('<div>', {
  16113       class: 'elementor-column-percents-tooltip'
  16114     });
  16115     this.$el.children('.elementor-element-overlay').append($tooltip);
  16116   },
  16117   getContextMenuGroups: function getContextMenuGroups() {
  16118     var self = this,
  16119         groups = BaseElementView.prototype.getContextMenuGroups.apply(this, arguments),
  16120         generalGroupIndex = groups.indexOf(_.findWhere(groups, {
  16121       name: 'general'
  16122     }));
  16123     groups.splice(generalGroupIndex + 1, 0, {
  16124       name: 'addNew',
  16125       actions: [{
  16126         name: 'addNew',
  16127         icon: 'eicon-plus',
  16128         title: __('Add New Column', 'elementor'),
  16129         callback: this.addNewColumn.bind(this),
  16130         isEnabled: function isEnabled() {
  16131           return self.model.collection.length < _section.DEFAULT_MAX_COLUMNS;
  16132         }
  16133       }]
  16134     });
  16135     return groups;
  16136   },
  16137   isDroppingAllowed: function isDroppingAllowed() {
  16138     // Don't allow dragging items to document which is not editable.
  16139     if (!this.getContainer().isEditable()) {
  16140       return false;
  16141     }
  16142 
  16143     var elementView = elementor.channels.panelElements.request('element:selected');
  16144 
  16145     if (!elementView) {
  16146       return false;
  16147     }
  16148 
  16149     var elType = elementView.model.get('elType');
  16150 
  16151     if ('section' === elType) {
  16152       return !this.isInner();
  16153     }
  16154 
  16155     return 'widget' === elType;
  16156   },
  16157   getPercentsForDisplay: function getPercentsForDisplay() {
  16158     var inlineSize = +this.model.getSetting('_inline_size') || this.getPercentSize();
  16159     return inlineSize.toFixed(1) + '%';
  16160   },
  16161   changeSizeUI: function changeSizeUI() {
  16162     var self = this,
  16163         columnSize = self.model.getSetting('_column_size');
  16164     self.$el.attr('data-col', columnSize);
  16165 
  16166     _.defer(function () {
  16167       // Wait for the column size to be applied
  16168       if (self.ui.percentsTooltip) {
  16169         self.ui.percentsTooltip.text(self.getPercentsForDisplay());
  16170       }
  16171     });
  16172   },
  16173   getPercentSize: function getPercentSize(size) {
  16174     if (!size) {
  16175       size = this.el.getBoundingClientRect().width;
  16176     }
  16177 
  16178     return +(size / this.$el.parent().width() * 100).toFixed(3);
  16179   },
  16180   getSortableOptions: function getSortableOptions() {
  16181     return {
  16182       connectWith: '.elementor-widget-wrap',
  16183       items: '> .elementor-element'
  16184     };
  16185   },
  16186   changeChildContainerClasses: function changeChildContainerClasses() {
  16187     var emptyClass = 'elementor-element-empty',
  16188         populatedClass = 'elementor-element-populated';
  16189 
  16190     if (this.ui.columnInner) {
  16191       if (this.collection.isEmpty()) {
  16192         this.ui.columnInner.removeClass(populatedClass).addClass(emptyClass);
  16193       } else {
  16194         this.ui.columnInner.removeClass(emptyClass).addClass(populatedClass);
  16195       }
  16196     }
  16197   },
  16198   addNewColumn: function addNewColumn() {
  16199     $e.run('document/elements/create', {
  16200       model: {
  16201         elType: 'column'
  16202       },
  16203       container: this.getContainer().parent,
  16204       options: {
  16205         at: this.$el.index() + 1
  16206       }
  16207     });
  16208   },
  16209   onRender: function onRender() {
  16210     var _this = this;
  16211 
  16212     var isDomOptimizationActive = elementorCommon.config.experimentalFeatures['e_dom_optimization'];
  16213     var itemsClasses = '';
  16214 
  16215     if (isDomOptimizationActive) {
  16216       itemsClasses = ' > .elementor-widget-wrap > .elementor-element, >.elementor-widget-wrap > .elementor-empty-view > .elementor-first-add';
  16217     } else {
  16218       itemsClasses = ' > .elementor-column-wrap > .elementor-widget-wrap > .elementor-element, >.elementor-column-wrap > .elementor-widget-wrap > .elementor-empty-view > .elementor-first-add';
  16219     }
  16220 
  16221     BaseElementView.prototype.onRender.apply(this, arguments);
  16222     this.changeChildContainerClasses();
  16223     this.changeSizeUI();
  16224     this.$el.html5Droppable({
  16225       items: itemsClasses,
  16226       axis: ['vertical'],
  16227       groups: ['elementor-element'],
  16228       isDroppingAllowed: this.isDroppingAllowed.bind(this),
  16229       currentElementClass: 'elementor-html5dnd-current-element',
  16230       placeholderClass: 'elementor-sortable-placeholder elementor-widget-placeholder',
  16231       hasDraggingOnChildClass: 'elementor-dragging-on-child',
  16232       onDropping: function onDropping(side, event) {
  16233         event.stopPropagation(); // Triggering drag end manually, since it won't fired above iframe
  16234 
  16235         elementor.getPreviewView().onPanelElementDragEnd();
  16236         var newIndex = jQuery(event.currentTarget).index(); // Since 3.0.0, the `.elementor-background-overlay` element sit at the same level as widgets
  16237 
  16238         if ('bottom' === side && !isDomOptimizationActive) {
  16239           newIndex++;
  16240         } else if ('top' === side && isDomOptimizationActive) {
  16241           newIndex--;
  16242         }
  16243 
  16244         _this.addElementFromPanel({
  16245           at: newIndex
  16246         });
  16247       }
  16248     });
  16249   },
  16250   onAddButtonClick: function onAddButtonClick(event) {
  16251     event.stopPropagation();
  16252     this.addNewColumn();
  16253   }
  16254 });
  16255 module.exports = ColumnView;
  16256 
  16257 /***/ }),
  16258 
  16259 /***/ "../assets/dev/js/editor/elements/views/section.js":
  16260 /*!*********************************************************!*\
  16261   !*** ../assets/dev/js/editor/elements/views/section.js ***!
  16262   \*********************************************************/
  16263 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  16264 
  16265 "use strict";
  16266 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
  16267 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  16268 
  16269 
  16270 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  16271 
  16272 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  16273 
  16274 var _inline = _interopRequireDefault(__webpack_require__(/*! ../../views/add-section/inline */ "../assets/dev/js/editor/views/add-section/inline.js"));
  16275 
  16276 var BaseElementView = __webpack_require__(/*! elementor-elements/views/base */ "../assets/dev/js/editor/elements/views/base.js");
  16277 
  16278 var DEFAULT_INNER_SECTION_COLUMNS = 2,
  16279     DEFAULT_MIN_COLUMN_SIZE = 2,
  16280     DEFAULT_MAX_COLUMNS = 10;
  16281 var SectionView = BaseElementView.extend({
  16282   childViewContainer: function childViewContainer() {
  16283     var containerSelector = '> .elementor-container';
  16284 
  16285     if (!elementorCommon.config.experimentalFeatures['e_dom_optimization']) {
  16286       containerSelector += ' > .elementor-row';
  16287     }
  16288 
  16289     return containerSelector;
  16290   },
  16291   template: Marionette.TemplateCache.get('#tmpl-elementor-section-content'),
  16292   addSectionView: null,
  16293   _checkIsFull: function _checkIsFull() {
  16294     this.toggleSectionIsFull();
  16295     elementorCommon.helpers.softDeprecated('_checkIsFull', '2.9.0', 'toggleSectionIsFull()');
  16296   },
  16297   toggleSectionIsFull: function toggleSectionIsFull() {
  16298     this.$el.toggleClass('elementor-section-filled', this.isCollectionFilled());
  16299   },
  16300   addChildModel: function addChildModel(model) {
  16301     /// TODO: maybe should be part of $e.hooks.
  16302     var isModelInstance = model instanceof Backbone.Model,
  16303         isInner = this.isInner();
  16304 
  16305     if (isModelInstance) {
  16306       // TODO: change to command.
  16307       model.set('isInner', isInner);
  16308     } else {
  16309       model.isInner = isInner;
  16310     }
  16311 
  16312     return BaseElementView.prototype.addChildModel.apply(this, arguments);
  16313   },
  16314   className: function className() {
  16315     var classes = BaseElementView.prototype.className.apply(this, arguments),
  16316         type = this.isInner() ? 'inner' : 'top';
  16317     return classes + ' elementor-section elementor-' + type + '-section';
  16318   },
  16319   tagName: function tagName() {
  16320     return this.model.getSetting('html_tag') || 'section';
  16321   },
  16322   behaviors: function behaviors() {
  16323     var behaviors = BaseElementView.prototype.behaviors.apply(this, arguments);
  16324 
  16325     _.extend(behaviors, {
  16326       Sortable: {
  16327         behaviorClass: __webpack_require__(/*! elementor-behaviors/sortable */ "../assets/dev/js/editor/elements/views/behaviors/sortable.js"),
  16328         elChildType: 'column'
  16329       }
  16330     });
  16331 
  16332     return elementor.hooks.applyFilters('elements/section/behaviors', behaviors, this);
  16333   },
  16334   initialize: function initialize() {
  16335     BaseElementView.prototype.initialize.apply(this, arguments);
  16336     this.model.get('editSettings').set('defaultEditRoute', 'layout');
  16337   },
  16338   getEditButtons: function getEditButtons() {
  16339     var elementData = elementor.getElementData(this.model),
  16340         editTools = {};
  16341 
  16342     if (!this.isInner()) {
  16343       editTools.add = {
  16344         /* translators: %s: Element Name. */
  16345         title: sprintf(__('Add %s', 'elementor'), elementData.title),
  16346         icon: 'plus'
  16347       };
  16348     }
  16349 
  16350     editTools.edit = {
  16351       /* translators: %s: Element Name. */
  16352       title: sprintf(__('Edit %s', 'elementor'), elementData.title),
  16353       icon: 'handle'
  16354     };
  16355 
  16356     if (elementor.getPreferences('edit_buttons')) {
  16357       editTools.duplicate = {
  16358         /* translators: %s: Element Name. */
  16359         title: sprintf(__('Duplicate %s', 'elementor'), elementData.title),
  16360         icon: 'clone'
  16361       };
  16362     }
  16363 
  16364     editTools.remove = {
  16365       /* translators: %s: Element Name. */
  16366       title: sprintf(__('Delete %s', 'elementor'), elementData.title),
  16367       icon: 'close'
  16368     };
  16369     return editTools;
  16370   },
  16371   getContextMenuGroups: function getContextMenuGroups() {
  16372     var groups = BaseElementView.prototype.getContextMenuGroups.apply(this, arguments),
  16373         transferGroupIndex = groups.indexOf(_.findWhere(groups, {
  16374       name: 'clipboard'
  16375     }));
  16376     groups.splice(transferGroupIndex + 1, 0, {
  16377       name: 'save',
  16378       actions: [{
  16379         name: 'save',
  16380         title: __('Save as Template', 'elementor'),
  16381         callback: this.save.bind(this)
  16382       }]
  16383     });
  16384     return groups;
  16385   },
  16386   getSortableOptions: function getSortableOptions() {
  16387     var sectionConnectClass = this.isInner() ? '.elementor-inner-section' : '.elementor-top-section';
  16388     return {
  16389       connectWith: sectionConnectClass + this.childViewContainer(),
  16390       handle: '> .elementor-element-overlay .elementor-editor-element-edit',
  16391       items: '> .elementor-column',
  16392       forcePlaceholderSize: true,
  16393       tolerance: 'pointer'
  16394     };
  16395   },
  16396   getColumnPercentSize: function getColumnPercentSize(element, size) {
  16397     return +(size / element.parent().width() * 100).toFixed(3);
  16398   },
  16399   getDefaultStructure: function getDefaultStructure() {
  16400     return this.collection.length + '0';
  16401   },
  16402   getStructure: function getStructure() {
  16403     return this.model.getSetting('structure');
  16404   },
  16405   getColumnAt: function getColumnAt(index) {
  16406     var model = this.collection.at(index);
  16407     return model ? this.children.findByModelCid(model.cid) : null;
  16408   },
  16409   getNextColumn: function getNextColumn(columnView) {
  16410     return this.getColumnAt(this.collection.indexOf(columnView.model) + 1);
  16411   },
  16412   getPreviousColumn: function getPreviousColumn(columnView) {
  16413     return this.getColumnAt(this.collection.indexOf(columnView.model) - 1);
  16414   },
  16415   getNeighborContainer: function getNeighborContainer(container) {
  16416     var parentView = container.parent.view,
  16417         nextView = parentView.getNextColumn(container.view) || parentView.getPreviousColumn(container.view);
  16418 
  16419     if (!nextView) {
  16420       return false;
  16421     }
  16422 
  16423     return nextView.getContainer();
  16424   },
  16425   setStructure: function setStructure(structure) {
  16426     var shouldAdjustColumns = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  16427     var parsedStructure = elementor.presetsFactory.getParsedStructure(structure);
  16428 
  16429     if (+parsedStructure.columnsCount !== this.collection.length) {
  16430       throw new TypeError('The provided structure doesn\'t match the columns count.');
  16431     }
  16432 
  16433     $e.run('document/elements/settings', {
  16434       container: this.getContainer(),
  16435       settings: {
  16436         structure: structure
  16437       },
  16438       options: {
  16439         external: true
  16440       }
  16441     });
  16442 
  16443     if (shouldAdjustColumns) {
  16444       this.adjustColumns();
  16445     }
  16446   },
  16447   adjustColumns: function adjustColumns() {
  16448     var preset = elementor.presetsFactory.getPresetByStructure(this.getStructure());
  16449     this.children.each(function (columnView, index) {
  16450       var container = columnView.getContainer();
  16451       $e.run('document/elements/settings', {
  16452         container: container,
  16453         settings: {
  16454           _column_size: preset.preset[index],
  16455           _inline_size: null
  16456         }
  16457       });
  16458     });
  16459   },
  16460   resetLayout: function resetLayout() {
  16461     var shouldAdjustColumns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
  16462     this.setStructure(this.getDefaultStructure(), shouldAdjustColumns);
  16463   },
  16464   resetColumnsCustomSize: function resetColumnsCustomSize() {
  16465     this.children.each(function (columnView) {
  16466       $e.run('document/elements/settings', {
  16467         container: columnView.getContainer(),
  16468         settings: {
  16469           _inline_size: null
  16470         },
  16471         options: {
  16472           external: true
  16473         }
  16474       });
  16475     });
  16476   },
  16477   isCollectionFilled: function isCollectionFilled() {
  16478     return DEFAULT_MAX_COLUMNS <= this.collection.length;
  16479   },
  16480   showChildrenPercentsTooltip: function showChildrenPercentsTooltip(columnView, nextColumnView) {
  16481     columnView.ui.percentsTooltip.show();
  16482     columnView.ui.percentsTooltip.attr('data-side', elementorCommon.config.isRTL ? 'right' : 'left');
  16483     nextColumnView.ui.percentsTooltip.show();
  16484     nextColumnView.ui.percentsTooltip.attr('data-side', elementorCommon.config.isRTL ? 'left' : 'right');
  16485   },
  16486   hideChildrenPercentsTooltip: function hideChildrenPercentsTooltip(columnView, nextColumnView) {
  16487     columnView.ui.percentsTooltip.hide();
  16488     nextColumnView.ui.percentsTooltip.hide();
  16489   },
  16490   destroyAddSectionView: function destroyAddSectionView() {
  16491     if (this.addSectionView && !this.addSectionView.isDestroyed) {
  16492       this.addSectionView.destroy();
  16493     }
  16494   },
  16495   onRender: function onRender() {
  16496     BaseElementView.prototype.onRender.apply(this, arguments);
  16497     this.toggleSectionIsFull();
  16498   },
  16499   onAddButtonClick: function onAddButtonClick() {
  16500     if (this.addSectionView && !this.addSectionView.isDestroyed) {
  16501       this.addSectionView.fadeToDeath();
  16502       return;
  16503     }
  16504 
  16505     var addSectionView = new _inline.default({
  16506       at: this.model.collection.indexOf(this.model)
  16507     });
  16508     addSectionView.render();
  16509     this.$el.before(addSectionView.$el);
  16510     addSectionView.$el.hide(); // Delaying the slide down for slow-render browsers (such as FF)
  16511 
  16512     setTimeout(function () {
  16513       addSectionView.$el.slideDown(null, function () {
  16514         // Remove inline style, for preview mode.
  16515         jQuery(this).css('display', '');
  16516       });
  16517     });
  16518     this.addSectionView = addSectionView;
  16519   },
  16520   onChildviewRequestResizeStart: function onChildviewRequestResizeStart(columnView) {
  16521     var nextColumnView = this.getNextColumn(columnView);
  16522 
  16523     if (!nextColumnView) {
  16524       return;
  16525     }
  16526 
  16527     this.showChildrenPercentsTooltip(columnView, nextColumnView);
  16528     var $iframes = columnView.$el.find('iframe').add(nextColumnView.$el.find('iframe'));
  16529     elementor.helpers.disableElementEvents($iframes);
  16530   },
  16531   onChildviewRequestResizeStop: function onChildviewRequestResizeStop(columnView) {
  16532     var nextColumnView = this.getNextColumn(columnView);
  16533 
  16534     if (!nextColumnView) {
  16535       return;
  16536     }
  16537 
  16538     this.hideChildrenPercentsTooltip(columnView, nextColumnView);
  16539     var $iframes = columnView.$el.find('iframe').add(nextColumnView.$el.find('iframe'));
  16540     elementor.helpers.enableElementEvents($iframes);
  16541   },
  16542   onChildviewRequestResize: function onChildviewRequestResize(columnView, ui) {
  16543     ui.element.css({
  16544       width: '',
  16545       left: 'initial' // Fix for RTL resizing
  16546 
  16547     });
  16548     $e.run('document/elements/settings', {
  16549       container: columnView.getContainer(),
  16550       settings: {
  16551         _inline_size: this.getColumnPercentSize(ui.element, ui.size.width)
  16552       }
  16553     });
  16554   },
  16555   onDestroy: function onDestroy() {
  16556     BaseElementView.prototype.onDestroy.apply(this, arguments);
  16557     this.destroyAddSectionView();
  16558   }
  16559 });
  16560 module.exports = SectionView;
  16561 module.exports.DEFAULT_INNER_SECTION_COLUMNS = DEFAULT_INNER_SECTION_COLUMNS;
  16562 module.exports.DEFAULT_MIN_COLUMN_SIZE = DEFAULT_MIN_COLUMN_SIZE;
  16563 module.exports.DEFAULT_MAX_COLUMNS = DEFAULT_MAX_COLUMNS;
  16564 
  16565 /***/ }),
  16566 
  16567 /***/ "../assets/dev/js/editor/elements/views/widget.js":
  16568 /*!********************************************************!*\
  16569   !*** ../assets/dev/js/editor/elements/views/widget.js ***!
  16570   \********************************************************/
  16571 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  16572 
  16573 "use strict";
  16574 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
  16575 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  16576 
  16577 
  16578 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  16579 
  16580 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  16581 
  16582 var _widgetDraggable = _interopRequireDefault(__webpack_require__(/*! ./behaviors/widget-draggable */ "../assets/dev/js/editor/elements/views/behaviors/widget-draggable.js"));
  16583 
  16584 var _widgetResizeable = _interopRequireDefault(__webpack_require__(/*! ./behaviors/widget-resizeable */ "../assets/dev/js/editor/elements/views/behaviors/widget-resizeable.js"));
  16585 
  16586 var BaseElementView = __webpack_require__(/*! elementor-elements/views/base */ "../assets/dev/js/editor/elements/views/base.js"),
  16587     WidgetView;
  16588 
  16589 WidgetView = BaseElementView.extend({
  16590   _templateType: null,
  16591   toggleEditTools: true,
  16592   getTemplate: function getTemplate() {
  16593     var editModel = this.getEditModel();
  16594 
  16595     if ('remote' !== this.getTemplateType()) {
  16596       return Marionette.TemplateCache.get('#tmpl-elementor-' + editModel.get('widgetType') + '-content');
  16597     }
  16598 
  16599     return _.template('');
  16600   },
  16601   className: function className() {
  16602     var baseClasses = BaseElementView.prototype.className.apply(this, arguments);
  16603     return baseClasses + ' elementor-widget ' + elementor.getElementData(this.getEditModel()).html_wrapper_class;
  16604   },
  16605   events: function events() {
  16606     var events = BaseElementView.prototype.events.apply(this, arguments);
  16607     events.click = 'onClickEdit';
  16608     return events;
  16609   },
  16610   behaviors: function behaviors() {
  16611     var behaviors = BaseElementView.prototype.behaviors.apply(this, arguments);
  16612 
  16613     _.extend(behaviors, {
  16614       InlineEditing: {
  16615         behaviorClass: __webpack_require__(/*! elementor-behaviors/inline-editing */ "../assets/dev/js/editor/elements/views/behaviors/inline-editing.js"),
  16616         inlineEditingClass: 'elementor-inline-editing'
  16617       },
  16618       Draggable: {
  16619         behaviorClass: _widgetDraggable.default
  16620       },
  16621       Resizable: {
  16622         behaviorClass: _widgetResizeable.default
  16623       }
  16624     });
  16625 
  16626     return elementor.hooks.applyFilters('elements/widget/behaviors', behaviors, this);
  16627   },
  16628   getEditButtons: function getEditButtons() {
  16629     var elementData = elementor.getElementData(this.model),
  16630         editTools = {};
  16631     editTools.edit = {
  16632       /* translators: %s: Element Name. */
  16633       title: sprintf(__('Edit %s', 'elementor'), elementData.title),
  16634       icon: 'edit'
  16635     };
  16636 
  16637     if (elementor.getPreferences('edit_buttons')) {
  16638       editTools.duplicate = {
  16639         /* translators: %s: Element Name. */
  16640         title: sprintf(__('Duplicate %s', 'elementor'), elementData.title),
  16641         icon: 'clone'
  16642       };
  16643       editTools.remove = {
  16644         /* translators: %s: Element Name. */
  16645         title: sprintf(__('Delete %s', 'elementor'), elementData.title),
  16646         icon: 'close'
  16647       };
  16648     }
  16649 
  16650     return editTools;
  16651   },
  16652   initialize: function initialize() {
  16653     var _this = this;
  16654 
  16655     BaseElementView.prototype.initialize.apply(this, arguments);
  16656     var editModel = this.getEditModel();
  16657     editModel.on({
  16658       'before:remote:render': this.onModelBeforeRemoteRender.bind(this),
  16659       'remote:render': this.onModelRemoteRender.bind(this),
  16660       'settings:loaded': function settingsLoaded() {
  16661         return setTimeout(_this.render.bind(_this));
  16662       }
  16663     });
  16664 
  16665     if ('remote' === this.getTemplateType() && !this.getEditModel().getHtmlCache()) {
  16666       editModel.renderRemoteServer();
  16667     }
  16668 
  16669     var onRenderMethod = this.onRender;
  16670     this.render = _.throttle(this.render, 300);
  16671 
  16672     this.onRender = function () {
  16673       _.defer(onRenderMethod.bind(this));
  16674     };
  16675   },
  16676   getContextMenuGroups: function getContextMenuGroups() {
  16677     var _this2 = this;
  16678 
  16679     var groups = BaseElementView.prototype.getContextMenuGroups.apply(this, arguments),
  16680         transferGroupIndex = groups.indexOf(_.findWhere(groups, {
  16681       name: 'clipboard'
  16682     }));
  16683     groups.splice(transferGroupIndex + 1, 0, {
  16684       name: 'save',
  16685       actions: [{
  16686         name: 'save',
  16687         title: __('Save as a Global', 'elementor'),
  16688         shortcut: jQuery('<i>', {
  16689           class: 'eicon-pro-icon'
  16690         }),
  16691         isEnabled: function isEnabled() {
  16692           return 'global' !== _this2.options.model.get('widgetType');
  16693         }
  16694       }]
  16695     });
  16696     return groups;
  16697   },
  16698   render: function render() {
  16699     if (this.model.isRemoteRequestActive()) {
  16700       this.handleEmptyWidget();
  16701       this.$el.addClass('elementor-element');
  16702       return;
  16703     }
  16704 
  16705     if (elementorCommonConfig.isTesting && this.isDestroyed) {
  16706       return;
  16707     }
  16708 
  16709     Marionette.CompositeView.prototype.render.apply(this, arguments);
  16710   },
  16711   handleEmptyWidget: function handleEmptyWidget() {
  16712     this.$el.addClass('elementor-widget-empty').append('<i class="elementor-widget-empty-icon ' + this.getEditModel().getIcon() + '"></i>');
  16713   },
  16714   getTemplateType: function getTemplateType() {
  16715     if (null === this._templateType) {
  16716       var editModel = this.getEditModel(),
  16717           $template = jQuery('#tmpl-elementor-' + editModel.get('widgetType') + '-content');
  16718       this._templateType = $template.length ? 'js' : 'remote';
  16719     }
  16720 
  16721     return this._templateType;
  16722   },
  16723   getHTMLContent: function getHTMLContent(html) {
  16724     var htmlCache = this.getEditModel().getHtmlCache();
  16725     return htmlCache || html;
  16726   },
  16727   attachElContent: function attachElContent(html) {
  16728     var _this3 = this;
  16729 
  16730     _.defer(function () {
  16731       elementorFrontend.elements.window.jQuery(_this3.el).empty().append(_this3.getHandlesOverlay(), _this3.getHTMLContent(html));
  16732 
  16733       _this3.bindUIElements(); // Build again the UI elements since the content attached just now
  16734 
  16735     });
  16736 
  16737     return this;
  16738   },
  16739   addInlineEditingAttributes: function addInlineEditingAttributes(key, toolbar) {
  16740     this.addRenderAttribute(key, {
  16741       class: 'elementor-inline-editing',
  16742       'data-elementor-setting-key': key
  16743     });
  16744 
  16745     if (toolbar) {
  16746       this.addRenderAttribute(key, {
  16747         'data-elementor-inline-editing-toolbar': toolbar
  16748       });
  16749     }
  16750   },
  16751   getRepeaterSettingKey: function getRepeaterSettingKey(settingKey, repeaterKey, repeaterItemIndex) {
  16752     return [repeaterKey, repeaterItemIndex, settingKey].join('.');
  16753   },
  16754   onModelBeforeRemoteRender: function onModelBeforeRemoteRender() {
  16755     this.$el.addClass('elementor-loading');
  16756   },
  16757   onBeforeDestroy: function onBeforeDestroy() {
  16758     // Remove old style from the DOM.
  16759     elementor.$previewContents.find('#elementor-style-' + this.model.get('id')).remove();
  16760   },
  16761   onModelRemoteRender: function onModelRemoteRender() {
  16762     if (this.isDestroyed) {
  16763       return;
  16764     }
  16765 
  16766     this.$el.removeClass('elementor-loading'); // If container document has been changed during the remote request, don't render.
  16767 
  16768     if (this.getContainer().document.id !== elementor.documents.getCurrent().id) {
  16769       return;
  16770     }
  16771 
  16772     this.render();
  16773   },
  16774   onRender: function onRender() {
  16775     var self = this;
  16776     BaseElementView.prototype.onRender.apply(self, arguments);
  16777     var editModel = self.getEditModel(),
  16778         skinType = editModel.getSetting('_skin') || 'default';
  16779     self.$el.attr('data-widget_type', editModel.get('widgetType') + '.' + skinType).removeClass('elementor-widget-empty').children('.elementor-widget-empty-icon').remove(); // TODO: Find a better way to detect if all the images have been loaded
  16780 
  16781     self.$el.imagesLoaded().always(function () {
  16782       setTimeout(function () {
  16783         if (!self.$el.children('.elementor-widget-container').outerHeight()) {
  16784           self.handleEmptyWidget();
  16785         }
  16786       }, 200); // Is element empty?
  16787     });
  16788   },
  16789   onClickEdit: function onClickEdit() {
  16790     if (this.container.isEditable()) {
  16791       this.model.trigger('request:edit');
  16792     }
  16793   }
  16794 });
  16795 module.exports = WidgetView;
  16796 
  16797 /***/ }),
  16798 
  16799 /***/ "../assets/dev/js/editor/regions/base.js":
  16800 /*!***********************************************!*\
  16801   !*** ../assets/dev/js/editor/regions/base.js ***!
  16802   \***********************************************/
  16803 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  16804 
  16805 "use strict";
  16806 
  16807 
  16808 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  16809 
  16810 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  16811 
  16812 module.exports = Marionette.Region.extend({
  16813   storage: null,
  16814   storageSizeKeys: null,
  16815   constructor: function constructor() {
  16816     Marionette.Region.prototype.constructor.apply(this, arguments);
  16817     var savedStorage = elementorCommon.storage.get(this.getStorageKey());
  16818     this.storage = savedStorage ? savedStorage : this.getDefaultStorage();
  16819     this.storageSizeKeys = (0, _keys.default)(this.storage.size);
  16820   },
  16821   saveStorage: function saveStorage(key, value) {
  16822     this.storage[key] = value;
  16823     elementorCommon.storage.set(this.getStorageKey(), this.storage);
  16824   },
  16825   saveSize: function saveSize(size) {
  16826     if (!size) {
  16827       size = elementor.helpers.getElementInlineStyle(this.$el, this.storageSizeKeys);
  16828     }
  16829 
  16830     this.saveStorage('size', size);
  16831   }
  16832 });
  16833 
  16834 /***/ }),
  16835 
  16836 /***/ "../assets/dev/js/editor/regions/navigator/commands/close.js":
  16837 /*!*******************************************************************!*\
  16838   !*** ../assets/dev/js/editor/regions/navigator/commands/close.js ***!
  16839   \*******************************************************************/
  16840 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  16841 
  16842 "use strict";
  16843 
  16844 
  16845 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  16846 
  16847 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  16848 
  16849 _Object$defineProperty(exports, "__esModule", {
  16850   value: true
  16851 });
  16852 
  16853 exports.default = exports.Close = void 0;
  16854 
  16855 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  16856 
  16857 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  16858 
  16859 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  16860 
  16861 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  16862 
  16863 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  16864 
  16865 var Close = /*#__PURE__*/function (_CommandBase) {
  16866   (0, _inherits2.default)(Close, _CommandBase);
  16867 
  16868   var _super = (0, _createSuper2.default)(Close);
  16869 
  16870   function Close() {
  16871     (0, _classCallCheck2.default)(this, Close);
  16872     return _super.apply(this, arguments);
  16873   }
  16874 
  16875   (0, _createClass2.default)(Close, [{
  16876     key: "apply",
  16877     value: function apply() {
  16878       return this.component.close();
  16879     }
  16880   }]);
  16881   return Close;
  16882 }(_commandBase.default);
  16883 
  16884 exports.Close = Close;
  16885 var _default = Close;
  16886 exports.default = _default;
  16887 
  16888 /***/ }),
  16889 
  16890 /***/ "../assets/dev/js/editor/regions/navigator/commands/index.js":
  16891 /*!*******************************************************************!*\
  16892   !*** ../assets/dev/js/editor/regions/navigator/commands/index.js ***!
  16893   \*******************************************************************/
  16894 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  16895 
  16896 "use strict";
  16897 
  16898 
  16899 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  16900 
  16901 _Object$defineProperty(exports, "__esModule", {
  16902   value: true
  16903 });
  16904 
  16905 _Object$defineProperty(exports, "Close", {
  16906   enumerable: true,
  16907   get: function get() {
  16908     return _close.Close;
  16909   }
  16910 });
  16911 
  16912 _Object$defineProperty(exports, "Open", {
  16913   enumerable: true,
  16914   get: function get() {
  16915     return _open.Open;
  16916   }
  16917 });
  16918 
  16919 _Object$defineProperty(exports, "Toggle", {
  16920   enumerable: true,
  16921   get: function get() {
  16922     return _toggle.Toggle;
  16923   }
  16924 });
  16925 
  16926 var _close = __webpack_require__(/*! ./close */ "../assets/dev/js/editor/regions/navigator/commands/close.js");
  16927 
  16928 var _open = __webpack_require__(/*! ./open */ "../assets/dev/js/editor/regions/navigator/commands/open.js");
  16929 
  16930 var _toggle = __webpack_require__(/*! ./toggle */ "../assets/dev/js/editor/regions/navigator/commands/toggle.js");
  16931 
  16932 /***/ }),
  16933 
  16934 /***/ "../assets/dev/js/editor/regions/navigator/commands/open.js":
  16935 /*!******************************************************************!*\
  16936   !*** ../assets/dev/js/editor/regions/navigator/commands/open.js ***!
  16937   \******************************************************************/
  16938 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  16939 
  16940 "use strict";
  16941 
  16942 
  16943 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  16944 
  16945 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  16946 
  16947 _Object$defineProperty(exports, "__esModule", {
  16948   value: true
  16949 });
  16950 
  16951 exports.default = exports.Open = void 0;
  16952 
  16953 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  16954 
  16955 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  16956 
  16957 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  16958 
  16959 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  16960 
  16961 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  16962 
  16963 var Open = /*#__PURE__*/function (_CommandBase) {
  16964   (0, _inherits2.default)(Open, _CommandBase);
  16965 
  16966   var _super = (0, _createSuper2.default)(Open);
  16967 
  16968   function Open() {
  16969     (0, _classCallCheck2.default)(this, Open);
  16970     return _super.apply(this, arguments);
  16971   }
  16972 
  16973   (0, _createClass2.default)(Open, [{
  16974     key: "apply",
  16975     value: function apply() {
  16976       $e.route(this.component.getNamespace());
  16977     }
  16978   }]);
  16979   return Open;
  16980 }(_commandBase.default);
  16981 
  16982 exports.Open = Open;
  16983 var _default = Open;
  16984 exports.default = _default;
  16985 
  16986 /***/ }),
  16987 
  16988 /***/ "../assets/dev/js/editor/regions/navigator/commands/toggle.js":
  16989 /*!********************************************************************!*\
  16990   !*** ../assets/dev/js/editor/regions/navigator/commands/toggle.js ***!
  16991   \********************************************************************/
  16992 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  16993 
  16994 "use strict";
  16995 
  16996 
  16997 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  16998 
  16999 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  17000 
  17001 _Object$defineProperty(exports, "__esModule", {
  17002   value: true
  17003 });
  17004 
  17005 exports.default = exports.Toggle = void 0;
  17006 
  17007 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  17008 
  17009 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  17010 
  17011 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  17012 
  17013 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  17014 
  17015 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  17016 
  17017 var Toggle = /*#__PURE__*/function (_CommandBase) {
  17018   (0, _inherits2.default)(Toggle, _CommandBase);
  17019 
  17020   var _super = (0, _createSuper2.default)(Toggle);
  17021 
  17022   function Toggle() {
  17023     (0, _classCallCheck2.default)(this, Toggle);
  17024     return _super.apply(this, arguments);
  17025   }
  17026 
  17027   (0, _createClass2.default)(Toggle, [{
  17028     key: "apply",
  17029     value: function apply() {
  17030       if (this.component.isOpen) {
  17031         $e.run('navigator/close');
  17032       } else {
  17033         $e.run('navigator/open');
  17034       }
  17035     }
  17036   }]);
  17037   return Toggle;
  17038 }(_commandBase.default);
  17039 
  17040 exports.Toggle = Toggle;
  17041 var _default = Toggle;
  17042 exports.default = _default;
  17043 
  17044 /***/ }),
  17045 
  17046 /***/ "../assets/dev/js/editor/regions/navigator/component.js":
  17047 /*!**************************************************************!*\
  17048   !*** ../assets/dev/js/editor/regions/navigator/component.js ***!
  17049   \**************************************************************/
  17050 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  17051 
  17052 "use strict";
  17053 
  17054 
  17055 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  17056 
  17057 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
  17058 
  17059 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  17060 
  17061 _Object$defineProperty(exports, "__esModule", {
  17062   value: true
  17063 });
  17064 
  17065 exports.default = void 0;
  17066 
  17067 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  17068 
  17069 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  17070 
  17071 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  17072 
  17073 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  17074 
  17075 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  17076 
  17077 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  17078 
  17079 var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));
  17080 
  17081 var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/regions/navigator/commands/index.js"));
  17082 
  17083 var Component = /*#__PURE__*/function (_ComponentBase) {
  17084   (0, _inherits2.default)(Component, _ComponentBase);
  17085 
  17086   var _super = (0, _createSuper2.default)(Component);
  17087 
  17088   function Component() {
  17089     (0, _classCallCheck2.default)(this, Component);
  17090     return _super.apply(this, arguments);
  17091   }
  17092 
  17093   (0, _createClass2.default)(Component, [{
  17094     key: "getNamespace",
  17095     value: function getNamespace() {
  17096       return 'navigator';
  17097     }
  17098   }, {
  17099     key: "defaultRoutes",
  17100     value: function defaultRoutes() {
  17101       return {
  17102         '': function _() {}
  17103       };
  17104     }
  17105   }, {
  17106     key: "defaultCommands",
  17107     value: function defaultCommands() {
  17108       return this.importCommands(commands);
  17109     }
  17110   }, {
  17111     key: "defaultShortcuts",
  17112     value: function defaultShortcuts() {
  17113       return {
  17114         toggle: {
  17115           keys: 'ctrl+i',
  17116           dependency: function dependency() {
  17117             return elementor.getPreviewContainer().isEditable();
  17118           }
  17119         }
  17120       };
  17121     }
  17122   }, {
  17123     key: "open",
  17124     value: function open(args) {
  17125       var _args$model = args.model,
  17126           model = _args$model === void 0 ? false : _args$model;
  17127       this.manager.open(model);
  17128       return true;
  17129     }
  17130   }, {
  17131     key: "close",
  17132     value: function close(silent) {
  17133       if (!(0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "close", this).call(this)) {
  17134         return false;
  17135       }
  17136 
  17137       this.manager.close(silent);
  17138       return true;
  17139     }
  17140   }]);
  17141   return Component;
  17142 }(_componentBase.default);
  17143 
  17144 exports.default = Component;
  17145 
  17146 /***/ }),
  17147 
  17148 /***/ "../assets/dev/js/editor/regions/navigator/element-empty.js":
  17149 /*!******************************************************************!*\
  17150   !*** ../assets/dev/js/editor/regions/navigator/element-empty.js ***!
  17151   \******************************************************************/
  17152 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  17153 
  17154 "use strict";
  17155 
  17156 
  17157 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  17158 
  17159 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  17160 
  17161 _Object$defineProperty(exports, "__esModule", {
  17162   value: true
  17163 });
  17164 
  17165 exports.default = void 0;
  17166 
  17167 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  17168 
  17169 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  17170 
  17171 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  17172 
  17173 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  17174 
  17175 var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  17176   (0, _inherits2.default)(_default, _Marionette$ItemView);
  17177 
  17178   var _super = (0, _createSuper2.default)(_default);
  17179 
  17180   function _default() {
  17181     (0, _classCallCheck2.default)(this, _default);
  17182     return _super.apply(this, arguments);
  17183   }
  17184 
  17185   (0, _createClass2.default)(_default, [{
  17186     key: "getTemplate",
  17187     value: function getTemplate() {
  17188       return '#tmpl-elementor-navigator__elements--empty';
  17189     }
  17190   }, {
  17191     key: "className",
  17192     value: function className() {
  17193       return 'elementor-empty-view';
  17194     }
  17195   }, {
  17196     key: "onRendr",
  17197     value: function onRendr() {
  17198       this.$el.css('padding-' + (elementorCommon.config.isRTL ? 'right' : 'left'), this.getOption('indent'));
  17199     }
  17200   }]);
  17201   return _default;
  17202 }(Marionette.ItemView);
  17203 
  17204 exports.default = _default;
  17205 
  17206 /***/ }),
  17207 
  17208 /***/ "../assets/dev/js/editor/regions/navigator/element.js":
  17209 /*!************************************************************!*\
  17210   !*** ../assets/dev/js/editor/regions/navigator/element.js ***!
  17211   \************************************************************/
  17212 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  17213 
  17214 "use strict";
  17215 
  17216 
  17217 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  17218 
  17219 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  17220 
  17221 _Object$defineProperty(exports, "__esModule", {
  17222   value: true
  17223 });
  17224 
  17225 exports.default = void 0;
  17226 
  17227 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  17228 
  17229 __webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");
  17230 
  17231 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
  17232 
  17233 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
  17234 
  17235 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  17236 
  17237 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  17238 
  17239 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  17240 
  17241 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  17242 
  17243 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  17244 
  17245 var _elementEmpty = _interopRequireDefault(__webpack_require__(/*! ./element-empty */ "../assets/dev/js/editor/regions/navigator/element-empty.js"));
  17246 
  17247 var _rootEmpty = _interopRequireDefault(__webpack_require__(/*! ./root-empty */ "../assets/dev/js/editor/regions/navigator/root-empty.js"));
  17248 
  17249 var _default = /*#__PURE__*/function (_Marionette$Composite) {
  17250   (0, _inherits2.default)(_default, _Marionette$Composite);
  17251 
  17252   var _super = (0, _createSuper2.default)(_default);
  17253 
  17254   function _default() {
  17255     (0, _classCallCheck2.default)(this, _default);
  17256     return _super.apply(this, arguments);
  17257   }
  17258 
  17259   (0, _createClass2.default)(_default, [{
  17260     key: "getTemplate",
  17261     value: function getTemplate() {
  17262       return '#tmpl-elementor-navigator__elements';
  17263     }
  17264   }, {
  17265     key: "ui",
  17266     value: function ui() {
  17267       return {
  17268         item: '> .elementor-navigator__item',
  17269         title: '> .elementor-navigator__item .elementor-navigator__element__title__text',
  17270         toggle: '> .elementor-navigator__item > .elementor-navigator__element__toggle',
  17271         toggleList: '> .elementor-navigator__item > .elementor-navigator__element__list-toggle',
  17272         indicators: '> .elementor-navigator__item > .elementor-navigator__element__indicators',
  17273         indicator: '> .elementor-navigator__item > .elementor-navigator__element__indicators > .elementor-navigator__element__indicator',
  17274         elements: '> .elementor-navigator__elements'
  17275       };
  17276     }
  17277   }, {
  17278     key: "events",
  17279     value: function events() {
  17280       return {
  17281         contextmenu: 'onContextMenu',
  17282         'click @ui.item': 'onItemClick',
  17283         'click @ui.toggle': 'onToggleClick',
  17284         'click @ui.toggleList': 'onToggleListClick',
  17285         'click @ui.indicator': 'onIndicatorClick',
  17286         'dblclick @ui.title': 'onTitleDoubleClick',
  17287         'keydown @ui.title': 'onTitleKeyDown',
  17288         'paste @ui.title': 'onTitlePaste',
  17289         'sortstart @ui.elements': 'onSortStart',
  17290         'sortover @ui.elements': 'onSortOver',
  17291         'sortout @ui.elements': 'onSortOut',
  17292         'sortstop @ui.elements': 'onSortStop',
  17293         'sortupdate @ui.elements': 'onSortUpdate',
  17294         'sortreceive @ui.elements': 'onSortReceive'
  17295       };
  17296     }
  17297   }, {
  17298     key: "getEmptyView",
  17299     value: function getEmptyView() {
  17300       if (this.isRoot()) {
  17301         return _rootEmpty.default;
  17302       }
  17303 
  17304       if (this.hasChildren()) {
  17305         return _elementEmpty.default;
  17306       }
  17307 
  17308       return null;
  17309     }
  17310   }, {
  17311     key: "childViewOptions",
  17312     value: function childViewOptions() {
  17313       return {
  17314         indent: this.getIndent() + 10
  17315       };
  17316     }
  17317   }, {
  17318     key: "className",
  17319     value: function className() {
  17320       var elType = this.model.get('elType');
  17321       var classes = 'elementor-navigator__element';
  17322 
  17323       if (elType) {
  17324         classes += ' elementor-navigator__element-' + elType;
  17325       }
  17326 
  17327       if (this.hasChildren()) {
  17328         classes += ' elementor-navigator__element--has-children';
  17329       }
  17330 
  17331       return classes;
  17332     }
  17333   }, {
  17334     key: "attributes",
  17335     value: function attributes() {
  17336       return {
  17337         'data-id': this.model.id,
  17338         'data-model-cid': this.model.cid
  17339       };
  17340     }
  17341   }, {
  17342     key: "templateHelpers",
  17343     value: function templateHelpers() {
  17344       var helpers = {};
  17345 
  17346       if (!this.isRoot()) {
  17347         helpers.title = this.model.getTitle();
  17348         helpers.icon = 'section' === this.model.get('elType') ? '' : this.model.getIcon();
  17349       }
  17350 
  17351       return helpers;
  17352     }
  17353   }, {
  17354     key: "initialize",
  17355     value: function initialize() {
  17356       this.collection = this.model.get('elements');
  17357       this.childViewContainer = '.elementor-navigator__elements';
  17358       this.listenTo(this.model, 'request:edit', this.onEditRequest).listenTo(this.model, 'change', this.onModelChange).listenTo(this.model.get('settings'), 'change', this.onModelSettingsChange);
  17359     }
  17360   }, {
  17361     key: "getIndent",
  17362     value: function getIndent() {
  17363       return this.getOption('indent') || 0;
  17364     }
  17365   }, {
  17366     key: "isRoot",
  17367     value: function isRoot() {
  17368       return !this.model.get('elType');
  17369     }
  17370   }, {
  17371     key: "hasChildren",
  17372     value: function hasChildren() {
  17373       return 'widget' !== this.model.get('elType');
  17374     }
  17375   }, {
  17376     key: "toggleList",
  17377     value: function toggleList(state, callback) {
  17378       if (!this.hasChildren() || this.isRoot()) {
  17379         return;
  17380       }
  17381 
  17382       var isActive = this.ui.item.hasClass('elementor-active');
  17383 
  17384       if (isActive === state) {
  17385         return;
  17386       }
  17387 
  17388       this.ui.item.toggleClass('elementor-active', state);
  17389       var slideMethod = 'slideToggle';
  17390 
  17391       if (undefined !== state) {
  17392         slideMethod = 'slide' + (state ? 'Down' : 'Up');
  17393       }
  17394 
  17395       this.ui.elements[slideMethod](300, callback);
  17396     }
  17397   }, {
  17398     key: "toggleHiddenClass",
  17399     value: function toggleHiddenClass() {
  17400       this.$el.toggleClass('elementor-navigator__element--hidden', !!this.model.get('hidden'));
  17401     }
  17402   }, {
  17403     key: "recursiveChildInvoke",
  17404     value: function recursiveChildInvoke(method) {
  17405       var _arguments = arguments,
  17406           _this = this;
  17407 
  17408       for (var _len = arguments.length, restArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
  17409         restArgs[_key - 1] = arguments[_key];
  17410       }
  17411 
  17412       this[method].apply(this, restArgs);
  17413       this.children.each(function (child) {
  17414         if (!(child instanceof _this.constructor)) {
  17415           return;
  17416         }
  17417 
  17418         child.recursiveChildInvoke.apply(child, _arguments);
  17419       });
  17420     }
  17421   }, {
  17422     key: "recursiveParentInvoke",
  17423     value: function recursiveParentInvoke(method) {
  17424       for (var _len2 = arguments.length, restArgs = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
  17425         restArgs[_key2 - 1] = arguments[_key2];
  17426       }
  17427 
  17428       if (!(this._parent instanceof this.constructor)) {
  17429         return;
  17430       }
  17431 
  17432       this._parent[method].apply(this._parent, restArgs);
  17433 
  17434       this._parent.recursiveParentInvoke.apply(this._parent, arguments);
  17435     }
  17436   }, {
  17437     key: "recursiveChildAgreement",
  17438     value: function recursiveChildAgreement(method) {
  17439       for (var _len3 = arguments.length, restArgs = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
  17440         restArgs[_key3 - 1] = arguments[_key3];
  17441       }
  17442 
  17443       if (!this[method].apply(this, restArgs)) {
  17444         return false;
  17445       }
  17446 
  17447       var hasAgreement = true;
  17448 
  17449       for (var _i = 0, _Object$values = (0, _values.default)(this.children._views); _i < _Object$values.length; _i++) {
  17450         var child = _Object$values[_i];
  17451 
  17452         if (!(child instanceof this.constructor)) {
  17453           continue;
  17454         }
  17455 
  17456         if (!child.recursiveChildAgreement.apply(child, arguments)) {
  17457           hasAgreement = false;
  17458           break;
  17459         }
  17460       }
  17461 
  17462       return hasAgreement;
  17463     }
  17464   }, {
  17465     key: "activateMouseInteraction",
  17466     value: function activateMouseInteraction() {
  17467       this.$el.on({
  17468         mouseenter: this.onMouseEnter.bind(this),
  17469         mouseleave: this.onMouseLeave.bind(this)
  17470       });
  17471     }
  17472   }, {
  17473     key: "deactivateMouseInteraction",
  17474     value: function deactivateMouseInteraction() {
  17475       this.$el.off('mouseenter mouseleave');
  17476     }
  17477   }, {
  17478     key: "dragShouldBeIgnored",
  17479     value: function dragShouldBeIgnored(draggedModel) {
  17480       return !$e.components.get('document/elements').utils.isValidChild(draggedModel, this.model);
  17481     }
  17482   }, {
  17483     key: "addEditingClass",
  17484     value: function addEditingClass() {
  17485       this.ui.item.addClass('elementor-editing');
  17486     }
  17487   }, {
  17488     key: "removeEditingClass",
  17489     value: function removeEditingClass() {
  17490       this.ui.item.removeClass('elementor-editing');
  17491     }
  17492   }, {
  17493     key: "enterTitleEditing",
  17494     value: function enterTitleEditing() {
  17495       this.ui.title.attr('contenteditable', true).focus();
  17496       document.execCommand('selectAll');
  17497       elementor.addBackgroundClickListener('navigator', {
  17498         ignore: this.ui.title,
  17499         callback: this.exitTitleEditing.bind(this)
  17500       });
  17501     }
  17502   }, {
  17503     key: "exitTitleEditing",
  17504     value: function exitTitleEditing() {
  17505       this.ui.title.attr('contenteditable', false);
  17506       var settingsModel = this.model.get('settings'),
  17507           oldTitle = settingsModel.get('_title'),
  17508           newTitle = this.ui.title.text().trim(); // When there isn't an old title and a new title, allow backbone to recognize the `set` as a change
  17509 
  17510       if (!oldTitle) {
  17511         settingsModel.unset('_title', {
  17512           silent: true
  17513         });
  17514       }
  17515 
  17516       settingsModel.set('_title', newTitle); // TODO: Remove - After merge pull request #13605.
  17517 
  17518       $e.internal('document/save/set-is-modified', {
  17519         status: true
  17520       });
  17521       elementor.removeBackgroundClickListener('navigator');
  17522     }
  17523   }, {
  17524     key: "activateSortable",
  17525     value: function activateSortable() {
  17526       if (!elementor.userCan('design')) {
  17527         return;
  17528       }
  17529 
  17530       this.ui.elements.sortable({
  17531         items: '> .elementor-navigator__element',
  17532         placeholder: 'ui-sortable-placeholder',
  17533         axis: 'y',
  17534         forcePlaceholderSize: true,
  17535         connectWith: '.elementor-navigator__element-' + this.model.get('elType') + ' > .elementor-navigator__elements',
  17536         cancel: '[contenteditable="true"]'
  17537       });
  17538     }
  17539   }, {
  17540     key: "renderIndicators",
  17541     value: function renderIndicators() {
  17542       var _this2 = this;
  17543 
  17544       var settings = this.model.get('settings').attributes;
  17545       this.ui.indicators.empty();
  17546       jQuery.each(elementor.navigator.indicators, function (indicatorName, indicatorSettings) {
  17547         var isShouldBeIndicated = indicatorSettings.settingKeys.some(function (key) {
  17548           return settings[key];
  17549         });
  17550 
  17551         if (!isShouldBeIndicated) {
  17552           return;
  17553         }
  17554 
  17555         var $indicator = jQuery('<div>', {
  17556           class: 'elementor-navigator__element__indicator',
  17557           title: indicatorSettings.title
  17558         }).attr('data-section', indicatorSettings.section).html("<i class=\"eicon-".concat(indicatorSettings.icon, "\"></i>"));
  17559 
  17560         _this2.ui.indicators.append($indicator); // Added delay of 500ms because the indicators bar has a CSS transition attribute of .5s
  17561 
  17562 
  17563         $indicator.tipsy({
  17564           delayIn: 300,
  17565           gravity: 's'
  17566         });
  17567       });
  17568     }
  17569   }, {
  17570     key: "onRender",
  17571     value: function onRender() {
  17572       this.activateSortable();
  17573 
  17574       if (this.isRoot()) {
  17575         return;
  17576       }
  17577 
  17578       this.ui.item.css('padding-' + (elementorCommon.config.isRTL ? 'right' : 'left'), this.getIndent());
  17579       this.toggleHiddenClass();
  17580       this.renderIndicators();
  17581     }
  17582   }, {
  17583     key: "onModelChange",
  17584     value: function onModelChange() {
  17585       if (undefined !== this.model.changed.hidden) {
  17586         this.toggleHiddenClass();
  17587       }
  17588     }
  17589   }, {
  17590     key: "onModelSettingsChange",
  17591     value: function onModelSettingsChange(settingsModel) {
  17592       var _this3 = this;
  17593 
  17594       if (undefined !== settingsModel.changed._title) {
  17595         this.ui.title.text(this.model.getTitle());
  17596       }
  17597 
  17598       jQuery.each(elementor.navigator.indicators, function (indicatorName, indicatorSettings) {
  17599         if ((0, _keys.default)(settingsModel.changed).filter(function (key) {
  17600           return indicatorSettings.settingKeys.includes(key);
  17601         }).length) {
  17602           _this3.renderIndicators();
  17603 
  17604           return false;
  17605         }
  17606       });
  17607     }
  17608   }, {
  17609     key: "onItemClick",
  17610     value: function onItemClick() {
  17611       this.model.trigger('request:edit', {
  17612         scrollIntoView: true
  17613       });
  17614     }
  17615   }, {
  17616     key: "onToggleClick",
  17617     value: function onToggleClick(event) {
  17618       event.stopPropagation();
  17619       this.model.trigger('request:toggleVisibility');
  17620     }
  17621   }, {
  17622     key: "onTitleDoubleClick",
  17623     value: function onTitleDoubleClick() {
  17624       this.enterTitleEditing();
  17625     }
  17626   }, {
  17627     key: "onTitleKeyDown",
  17628     value: function onTitleKeyDown(event) {
  17629       var ENTER_KEY = 13;
  17630 
  17631       if (ENTER_KEY === event.which) {
  17632         event.preventDefault();
  17633         this.exitTitleEditing();
  17634       }
  17635     }
  17636   }, {
  17637     key: "onTitlePaste",
  17638     value: function onTitlePaste(event) {
  17639       event.preventDefault();
  17640       document.execCommand('insertHTML', false, event.originalEvent.clipboardData.getData('text/plain'));
  17641     }
  17642   }, {
  17643     key: "onToggleListClick",
  17644     value: function onToggleListClick(event) {
  17645       event.stopPropagation();
  17646       this.toggleList();
  17647     }
  17648   }, {
  17649     key: "onSortStart",
  17650     value: function onSortStart(event, ui) {
  17651       this.model.trigger('request:sort:start', event, ui);
  17652       jQuery(ui.item).children('.elementor-navigator__item').trigger('click');
  17653       elementor.navigator.getLayout().activateElementsMouseInteraction();
  17654     }
  17655   }, {
  17656     key: "onSortStop",
  17657     value: function onSortStop() {
  17658       elementor.navigator.getLayout().deactivateElementsMouseInteraction();
  17659     }
  17660   }, {
  17661     key: "onSortOver",
  17662     value: function onSortOver(event) {
  17663       event.stopPropagation();
  17664       this.$el.addClass('elementor-dragging-on-child');
  17665     }
  17666   }, {
  17667     key: "onSortOut",
  17668     value: function onSortOut(event) {
  17669       event.stopPropagation();
  17670       this.$el.removeClass('elementor-dragging-on-child');
  17671     }
  17672   }, {
  17673     key: "onSortUpdate",
  17674     value: function onSortUpdate(event, ui) {
  17675       event.stopPropagation();
  17676 
  17677       if (!this.ui.elements.is(ui.item.parent())) {
  17678         return;
  17679       }
  17680 
  17681       this.model.trigger('request:sort:update', ui);
  17682     }
  17683   }, {
  17684     key: "onSortReceive",
  17685     value: function onSortReceive(event, ui) {
  17686       this.model.trigger('request:sort:receive', event, ui);
  17687     }
  17688   }, {
  17689     key: "onMouseEnter",
  17690     value: function onMouseEnter(event) {
  17691       var _this4 = this;
  17692 
  17693       event.stopPropagation();
  17694       var dragShouldBeIgnored = this.recursiveChildAgreement('dragShouldBeIgnored', elementor.channels.data.request('dragging:model'));
  17695 
  17696       if (dragShouldBeIgnored) {
  17697         return;
  17698       }
  17699 
  17700       this.autoExpandTimeout = setTimeout(function () {
  17701         _this4.toggleList(true, function () {
  17702           _this4.ui.elements.sortable('refreshPositions');
  17703         });
  17704       }, 500);
  17705     }
  17706   }, {
  17707     key: "onMouseLeave",
  17708     value: function onMouseLeave(event) {
  17709       event.stopPropagation();
  17710       clearTimeout(this.autoExpandTimeout);
  17711     }
  17712   }, {
  17713     key: "onContextMenu",
  17714     value: function onContextMenu(event) {
  17715       this.model.trigger('request:contextmenu', event);
  17716     }
  17717   }, {
  17718     key: "onEditRequest",
  17719     value: function onEditRequest() {
  17720       this.recursiveParentInvoke('toggleList', true);
  17721       elementor.navigator.getLayout().elements.currentView.recursiveChildInvoke('removeEditingClass');
  17722       this.addEditingClass();
  17723       elementor.helpers.scrollToView(this.$el, 400, elementor.navigator.getLayout().elements.$el);
  17724     }
  17725   }, {
  17726     key: "onIndicatorClick",
  17727     value: function onIndicatorClick(event) {
  17728       var section = event.currentTarget.dataset.section;
  17729       setTimeout(function () {
  17730         var editor = elementor.getPanelView().currentPageView,
  17731             tab = editor.getControlModel(section).get('tab');
  17732         editor.activateSection(section);
  17733         editor.activateTab(tab);
  17734         editor.render();
  17735       });
  17736     }
  17737   }]);
  17738   return _default;
  17739 }(Marionette.CompositeView);
  17740 
  17741 exports.default = _default;
  17742 
  17743 /***/ }),
  17744 
  17745 /***/ "../assets/dev/js/editor/regions/navigator/layout.js":
  17746 /*!***********************************************************!*\
  17747   !*** ../assets/dev/js/editor/regions/navigator/layout.js ***!
  17748   \***********************************************************/
  17749 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  17750 
  17751 "use strict";
  17752 
  17753 
  17754 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  17755 
  17756 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  17757 
  17758 _Object$defineProperty(exports, "__esModule", {
  17759   value: true
  17760 });
  17761 
  17762 exports.default = void 0;
  17763 
  17764 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  17765 
  17766 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  17767 
  17768 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  17769 
  17770 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  17771 
  17772 var _element = _interopRequireDefault(__webpack_require__(/*! ./element */ "../assets/dev/js/editor/regions/navigator/element.js"));
  17773 
  17774 var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
  17775   (0, _inherits2.default)(_default, _Marionette$LayoutVie);
  17776 
  17777   var _super = (0, _createSuper2.default)(_default);
  17778 
  17779   function _default() {
  17780     (0, _classCallCheck2.default)(this, _default);
  17781     return _super.apply(this, arguments);
  17782   }
  17783 
  17784   (0, _createClass2.default)(_default, [{
  17785     key: "getTemplate",
  17786     value: function getTemplate() {
  17787       return '#tmpl-elementor-navigator';
  17788     }
  17789   }, {
  17790     key: "id",
  17791     value: function id() {
  17792       return 'elementor-navigator__inner';
  17793     }
  17794   }, {
  17795     key: "ui",
  17796     value: function ui() {
  17797       return {
  17798         toggleAll: '#elementor-navigator__toggle-all',
  17799         close: '#elementor-navigator__close'
  17800       };
  17801     }
  17802   }, {
  17803     key: "events",
  17804     value: function events() {
  17805       return {
  17806         'click @ui.toggleAll': 'toggleAll',
  17807         'click @ui.close': 'onCloseClick'
  17808       };
  17809     }
  17810   }, {
  17811     key: "regions",
  17812     value: function regions() {
  17813       return {
  17814         elements: '#elementor-navigator__elements'
  17815       };
  17816     }
  17817   }, {
  17818     key: "toggleAll",
  17819     value: function toggleAll() {
  17820       var state = 'expand' === this.ui.toggleAll.data('elementor-action'),
  17821           classes = ['eicon-collapse', 'eicon-expand'];
  17822       this.ui.toggleAll.data('elementor-action', state ? 'collapse' : 'expand').removeClass(classes[+state]).addClass(classes[+!state]);
  17823       this.elements.currentView.recursiveChildInvoke('toggleList', state);
  17824     }
  17825   }, {
  17826     key: "activateElementsMouseInteraction",
  17827     value: function activateElementsMouseInteraction() {
  17828       this.elements.currentView.recursiveChildInvoke('activateMouseInteraction');
  17829     }
  17830   }, {
  17831     key: "deactivateElementsMouseInteraction",
  17832     value: function deactivateElementsMouseInteraction() {
  17833       this.elements.currentView.recursiveChildInvoke('deactivateMouseInteraction');
  17834     }
  17835   }, {
  17836     key: "onShow",
  17837     value: function onShow() {
  17838       this.elements.show(new _element.default({
  17839         model: elementor.elementsModel
  17840       }));
  17841     }
  17842   }, {
  17843     key: "onCloseClick",
  17844     value: function onCloseClick() {
  17845       $e.components.get('navigator').close();
  17846     }
  17847   }]);
  17848   return _default;
  17849 }(Marionette.LayoutView);
  17850 
  17851 exports.default = _default;
  17852 
  17853 /***/ }),
  17854 
  17855 /***/ "../assets/dev/js/editor/regions/navigator/navigator.js":
  17856 /*!**************************************************************!*\
  17857   !*** ../assets/dev/js/editor/regions/navigator/navigator.js ***!
  17858   \**************************************************************/
  17859 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  17860 
  17861 "use strict";
  17862 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  17863 
  17864 
  17865 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  17866 
  17867 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  17868 
  17869 _Object$defineProperty(exports, "__esModule", {
  17870   value: true
  17871 });
  17872 
  17873 exports.default = void 0;
  17874 
  17875 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
  17876 
  17877 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  17878 
  17879 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  17880 
  17881 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
  17882 
  17883 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  17884 
  17885 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  17886 
  17887 var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../assets/dev/js/editor/regions/navigator/component.js"));
  17888 
  17889 var _layout = _interopRequireDefault(__webpack_require__(/*! ./layout */ "../assets/dev/js/editor/regions/navigator/layout.js"));
  17890 
  17891 var BaseRegion = __webpack_require__(/*! elementor-regions/base */ "../assets/dev/js/editor/regions/base.js");
  17892 
  17893 var _default = /*#__PURE__*/function (_BaseRegion) {
  17894   (0, _inherits2.default)(_default, _BaseRegion);
  17895 
  17896   var _super = (0, _createSuper2.default)(_default);
  17897 
  17898   function _default(options) {
  17899     var _this;
  17900 
  17901     (0, _classCallCheck2.default)(this, _default);
  17902     _this = _super.call(this, options);
  17903     _this.component = $e.components.register(new _component.default({
  17904       manager: (0, _assertThisInitialized2.default)(_this)
  17905     }));
  17906     _this.isDocked = false;
  17907 
  17908     _this.setSize();
  17909 
  17910     _this.indicators = {
  17911       customPosition: {
  17912         title: __('Custom Positioning', 'elementor'),
  17913         icon: 'cursor-move',
  17914         settingKeys: ['_position', '_element_width'],
  17915         section: '_section_position'
  17916       }
  17917     };
  17918     _this.ensurePosition = _this.ensurePosition.bind((0, _assertThisInitialized2.default)(_this));
  17919 
  17920     _this.listenTo(elementor.channels.dataEditMode, 'switch', _this.onEditModeSwitched); // TODO: Move to hook on 'editor/documents/load'.
  17921 
  17922 
  17923     elementor.on('document:loaded', _this.onDocumentLoaded.bind((0, _assertThisInitialized2.default)(_this)));
  17924     elementor.on('document:unloaded', _this.onDocumentUnloaded.bind((0, _assertThisInitialized2.default)(_this)));
  17925     return _this;
  17926   }
  17927 
  17928   (0, _createClass2.default)(_default, [{
  17929     key: "getStorageKey",
  17930     value: function getStorageKey() {
  17931       return 'navigator';
  17932     }
  17933   }, {
  17934     key: "getDefaultStorage",
  17935     value: function getDefaultStorage() {
  17936       return {
  17937         visible: false,
  17938         size: {
  17939           width: '',
  17940           height: '',
  17941           top: '',
  17942           bottom: '',
  17943           right: '',
  17944           left: ''
  17945         }
  17946       };
  17947     }
  17948   }, {
  17949     key: "getLayout",
  17950     value: function getLayout() {
  17951       return this.currentView;
  17952     }
  17953   }, {
  17954     key: "getDraggableOptions",
  17955     value: function getDraggableOptions() {
  17956       return {
  17957         iframeFix: true,
  17958         handle: '#elementor-navigator__header',
  17959         drag: this.onDrag.bind(this),
  17960         stop: this.onDragStop.bind(this)
  17961       };
  17962     }
  17963   }, {
  17964     key: "getResizableOptions",
  17965     value: function getResizableOptions() {
  17966       var _this2 = this;
  17967 
  17968       return {
  17969         handles: 'all',
  17970         containment: 'document',
  17971         minWidth: 150,
  17972         maxWidth: 500,
  17973         minHeight: 240,
  17974         start: function start() {
  17975           elementor.$previewWrapper.addClass('ui-resizable-resizing');
  17976         },
  17977         stop: function stop() {
  17978           elementor.$previewWrapper.removeClass('ui-resizable-resizing');
  17979 
  17980           if (_this2.isDocked) {
  17981             _this2.storage.size.width = elementor.helpers.getElementInlineStyle(_this2.$el, ['width']).width;
  17982             elementorCommon.storage.set('navigator', _this2.storage);
  17983           } else {
  17984             _this2.saveSize();
  17985           }
  17986         },
  17987         resize: function resize(event, ui) {
  17988           _this2.setSize(ui.size.width + 'px');
  17989         }
  17990       };
  17991     }
  17992   }, {
  17993     key: "initLayout",
  17994     value: function initLayout() {
  17995       this.show(new _layout.default());
  17996       this.$el.draggable(this.getDraggableOptions());
  17997       this.$el.resizable(this.getResizableOptions());
  17998     }
  17999   }, {
  18000     key: "open",
  18001     value: function open(model) {
  18002       this.$el.show();
  18003       this.setSize();
  18004 
  18005       if (this.storage.docked) {
  18006         this.dock();
  18007       }
  18008 
  18009       if (model) {
  18010         model.trigger('request:edit');
  18011       }
  18012 
  18013       this.saveStorage('visible', true);
  18014       this.ensurePosition();
  18015       elementorCommon.elements.$window.on('resize', this.ensurePosition);
  18016     }
  18017   }, {
  18018     key: "close",
  18019     value: function close(silent) {
  18020       this.$el.hide();
  18021 
  18022       if (this.isDocked) {
  18023         this.undock(true);
  18024       }
  18025 
  18026       if (!silent) {
  18027         this.saveStorage('visible', false);
  18028       }
  18029 
  18030       if (this.$el.resizable('instance')) {
  18031         this.$el.resizable('destroy');
  18032       }
  18033 
  18034       elementorCommon.elements.$window.off('resize', this.ensurePosition);
  18035     }
  18036   }, {
  18037     key: "isOpen",
  18038     value: function isOpen() {
  18039       return this.$el.is(':visible');
  18040     }
  18041   }, {
  18042     key: "dock",
  18043     value: function dock() {
  18044       elementorCommon.elements.$body.addClass('elementor-navigator-docked');
  18045       this.setSize();
  18046       var resizableOptions = this.getResizableOptions();
  18047       this.$el.css({
  18048         height: '',
  18049         top: '',
  18050         bottom: '',
  18051         left: '',
  18052         right: ''
  18053       });
  18054 
  18055       if (this.$el.resizable('instance')) {
  18056         this.$el.resizable('destroy');
  18057       }
  18058 
  18059       resizableOptions.handles = elementorCommon.config.isRTL ? 'e' : 'w';
  18060       this.$el.resizable(resizableOptions);
  18061       this.isDocked = true;
  18062       this.saveStorage('docked', true);
  18063     }
  18064   }, {
  18065     key: "undock",
  18066     value: function undock(silent) {
  18067       elementorCommon.elements.$body.removeClass('elementor-navigator-docked');
  18068       this.setSize();
  18069       elementor.$previewWrapper.css(elementorCommon.config.isRTL ? 'left' : 'right', '');
  18070 
  18071       if (this.$el.resizable('instance')) {
  18072         this.$el.resizable('destroy');
  18073         this.$el.resizable(this.getResizableOptions());
  18074       }
  18075 
  18076       this.isDocked = false;
  18077 
  18078       if (!silent) {
  18079         this.saveStorage('docked', false);
  18080       }
  18081     }
  18082     /**
  18083      * Set the navigator size to a specific value or default to the storage-saved value.
  18084      *
  18085      * @param {String} size A specific new size.
  18086      */
  18087 
  18088   }, {
  18089     key: "setSize",
  18090     value: function setSize() {
  18091       var size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
  18092 
  18093       if (size) {
  18094         this.storage.size.width = size;
  18095       } else {
  18096         this.storage.size.width = this.storage.size.width || elementorCommon.elements.$body.css('--e-editor-navigator-width');
  18097       } // Set the navigator size using a CSS variable, and remove the inline CSS that was set by jQuery Resizeable.
  18098 
  18099 
  18100       elementorCommon.elements.$body.css('--e-editor-navigator-width', this.storage.size.width);
  18101       this.$el.css('width', '');
  18102     }
  18103   }, {
  18104     key: "ensurePosition",
  18105     value: function ensurePosition() {
  18106       if (this.isDocked) {
  18107         return;
  18108       }
  18109 
  18110       var offset = this.$el.offset();
  18111 
  18112       if (offset.left > innerWidth) {
  18113         this.$el.css({
  18114           left: '',
  18115           right: ''
  18116         });
  18117       }
  18118 
  18119       if (offset.top > innerHeight) {
  18120         this.$el.css({
  18121           top: '',
  18122           bottom: ''
  18123         });
  18124       }
  18125     }
  18126   }, {
  18127     key: "onDrag",
  18128     value: function onDrag(event, ui) {
  18129       if (this.isDocked) {
  18130         if (ui.position.left === ui.originalPosition.left) {
  18131           if (ui.position.top !== ui.originalPosition.top) {
  18132             return false;
  18133           }
  18134         } else {
  18135           this.undock();
  18136         }
  18137 
  18138         return;
  18139       }
  18140 
  18141       if (0 > ui.position.top) {
  18142         ui.position.top = 0;
  18143       }
  18144 
  18145       var isOutOfLeft = 0 > ui.position.left,
  18146           isOutOfRight = ui.position.left + this.el.offsetWidth > innerWidth;
  18147 
  18148       if (elementorCommon.config.isRTL) {
  18149         if (isOutOfRight) {
  18150           ui.position.left = innerWidth - this.el.offsetWidth;
  18151         }
  18152       } else if (isOutOfLeft) {
  18153         ui.position.left = 0;
  18154       }
  18155 
  18156       elementorCommon.elements.$body.toggleClass('elementor-navigator--dock-hint', elementorCommon.config.isRTL ? isOutOfLeft : isOutOfRight);
  18157     }
  18158   }, {
  18159     key: "onDragStop",
  18160     value: function onDragStop(event, ui) {
  18161       if (this.isDocked) {
  18162         return;
  18163       }
  18164 
  18165       this.saveSize();
  18166       var elementRight = ui.position.left + this.el.offsetWidth;
  18167 
  18168       if (0 > ui.position.left || elementRight > innerWidth) {
  18169         this.dock();
  18170       }
  18171 
  18172       elementorCommon.elements.$body.removeClass('elementor-navigator--dock-hint');
  18173     }
  18174   }, {
  18175     key: "onEditModeSwitched",
  18176     value: function onEditModeSwitched(activeMode) {
  18177       // Determine when the navigator should be visible.
  18178       var visibleModes = ['edit', 'picker'];
  18179 
  18180       if (visibleModes.includes(activeMode) && this.storage.visible) {
  18181         this.open();
  18182       } else {
  18183         this.close(true);
  18184       }
  18185     }
  18186   }, {
  18187     key: "onDocumentLoaded",
  18188     value: function onDocumentLoaded(document) {
  18189       if (document.config.panel.has_elements) {
  18190         this.initLayout();
  18191 
  18192         if (this.storage.visible) {
  18193           $e.route('navigator');
  18194         }
  18195       }
  18196     }
  18197   }, {
  18198     key: "onDocumentUnloaded",
  18199     value: function onDocumentUnloaded() {
  18200       if (this.component.isOpen) {
  18201         this.component.close(true);
  18202       }
  18203     }
  18204   }]);
  18205   return _default;
  18206 }(BaseRegion);
  18207 
  18208 exports.default = _default;
  18209 
  18210 /***/ }),
  18211 
  18212 /***/ "../assets/dev/js/editor/regions/navigator/root-empty.js":
  18213 /*!***************************************************************!*\
  18214   !*** ../assets/dev/js/editor/regions/navigator/root-empty.js ***!
  18215   \***************************************************************/
  18216 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18217 
  18218 "use strict";
  18219 
  18220 
  18221 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18222 
  18223 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18224 
  18225 _Object$defineProperty(exports, "__esModule", {
  18226   value: true
  18227 });
  18228 
  18229 exports.default = void 0;
  18230 
  18231 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18232 
  18233 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18234 
  18235 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18236 
  18237 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18238 
  18239 var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  18240   (0, _inherits2.default)(_default, _Marionette$ItemView);
  18241 
  18242   var _super = (0, _createSuper2.default)(_default);
  18243 
  18244   function _default() {
  18245     (0, _classCallCheck2.default)(this, _default);
  18246     return _super.apply(this, arguments);
  18247   }
  18248 
  18249   (0, _createClass2.default)(_default, [{
  18250     key: "getTemplate",
  18251     value: function getTemplate() {
  18252       return '#tmpl-elementor-navigator__root--empty';
  18253     }
  18254   }, {
  18255     key: "className",
  18256     value: function className() {
  18257       return 'elementor-nerd-box';
  18258     }
  18259   }]);
  18260   return _default;
  18261 }(Marionette.ItemView);
  18262 
  18263 exports.default = _default;
  18264 
  18265 /***/ }),
  18266 
  18267 /***/ "../assets/dev/js/editor/regions/panel/commands/change-device-mode.js":
  18268 /*!****************************************************************************!*\
  18269   !*** ../assets/dev/js/editor/regions/panel/commands/change-device-mode.js ***!
  18270   \****************************************************************************/
  18271 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18272 
  18273 "use strict";
  18274 
  18275 
  18276 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18277 
  18278 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18279 
  18280 _Object$defineProperty(exports, "__esModule", {
  18281   value: true
  18282 });
  18283 
  18284 exports.default = exports.ChangeDeviceMode = void 0;
  18285 
  18286 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18287 
  18288 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18289 
  18290 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18291 
  18292 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18293 
  18294 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  18295 
  18296 var ChangeDeviceMode = /*#__PURE__*/function (_CommandBase) {
  18297   (0, _inherits2.default)(ChangeDeviceMode, _CommandBase);
  18298 
  18299   var _super = (0, _createSuper2.default)(ChangeDeviceMode);
  18300 
  18301   function ChangeDeviceMode() {
  18302     (0, _classCallCheck2.default)(this, ChangeDeviceMode);
  18303     return _super.apply(this, arguments);
  18304   }
  18305 
  18306   (0, _createClass2.default)(ChangeDeviceMode, [{
  18307     key: "apply",
  18308     value: function apply() {
  18309       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  18310       var devices = elementor.breakpoints.getActiveBreakpointsList({
  18311         largeToSmall: true,
  18312         withDesktop: true
  18313       });
  18314       var device = args.device;
  18315 
  18316       if (!device) {
  18317         var currentDeviceMode = elementor.channels.deviceMode.request('currentMode');
  18318         var modeIndex = devices.indexOf(currentDeviceMode);
  18319         modeIndex++;
  18320 
  18321         if (modeIndex >= devices.length) {
  18322           modeIndex = 0;
  18323         }
  18324 
  18325         device = devices[modeIndex];
  18326       }
  18327 
  18328       elementor.changeDeviceMode(device);
  18329     }
  18330   }]);
  18331   return ChangeDeviceMode;
  18332 }(_commandBase.default);
  18333 
  18334 exports.ChangeDeviceMode = ChangeDeviceMode;
  18335 var _default = ChangeDeviceMode;
  18336 exports.default = _default;
  18337 
  18338 /***/ }),
  18339 
  18340 /***/ "../assets/dev/js/editor/regions/panel/commands/close.js":
  18341 /*!***************************************************************!*\
  18342   !*** ../assets/dev/js/editor/regions/panel/commands/close.js ***!
  18343   \***************************************************************/
  18344 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18345 
  18346 "use strict";
  18347 
  18348 
  18349 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18350 
  18351 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18352 
  18353 _Object$defineProperty(exports, "__esModule", {
  18354   value: true
  18355 });
  18356 
  18357 exports.default = exports.Close = void 0;
  18358 
  18359 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18360 
  18361 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18362 
  18363 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18364 
  18365 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18366 
  18367 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  18368 
  18369 var Close = /*#__PURE__*/function (_CommandBase) {
  18370   (0, _inherits2.default)(Close, _CommandBase);
  18371 
  18372   var _super = (0, _createSuper2.default)(Close);
  18373 
  18374   function Close() {
  18375     (0, _classCallCheck2.default)(this, Close);
  18376     return _super.apply(this, arguments);
  18377   }
  18378 
  18379   (0, _createClass2.default)(Close, [{
  18380     key: "apply",
  18381     value: function apply() {
  18382       elementor.changeEditMode('preview');
  18383     }
  18384   }]);
  18385   return Close;
  18386 }(_commandBase.default);
  18387 
  18388 exports.Close = Close;
  18389 var _default = Close;
  18390 exports.default = _default;
  18391 
  18392 /***/ }),
  18393 
  18394 /***/ "../assets/dev/js/editor/regions/panel/commands/exit.js":
  18395 /*!**************************************************************!*\
  18396   !*** ../assets/dev/js/editor/regions/panel/commands/exit.js ***!
  18397   \**************************************************************/
  18398 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18399 
  18400 "use strict";
  18401 
  18402 
  18403 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18404 
  18405 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18406 
  18407 _Object$defineProperty(exports, "__esModule", {
  18408   value: true
  18409 });
  18410 
  18411 exports.default = exports.Exit = void 0;
  18412 
  18413 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18414 
  18415 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18416 
  18417 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18418 
  18419 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18420 
  18421 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  18422 
  18423 var Exit = /*#__PURE__*/function (_CommandBase) {
  18424   (0, _inherits2.default)(Exit, _CommandBase);
  18425 
  18426   var _super = (0, _createSuper2.default)(Exit);
  18427 
  18428   function Exit() {
  18429     (0, _classCallCheck2.default)(this, Exit);
  18430     return _super.apply(this, arguments);
  18431   }
  18432 
  18433   (0, _createClass2.default)(Exit, [{
  18434     key: "apply",
  18435     value: function apply() {
  18436       $e.route('panel/menu');
  18437     }
  18438   }]);
  18439   return Exit;
  18440 }(_commandBase.default);
  18441 
  18442 exports.Exit = Exit;
  18443 var _default = Exit;
  18444 exports.default = _default;
  18445 
  18446 /***/ }),
  18447 
  18448 /***/ "../assets/dev/js/editor/regions/panel/commands/index.js":
  18449 /*!***************************************************************!*\
  18450   !*** ../assets/dev/js/editor/regions/panel/commands/index.js ***!
  18451   \***************************************************************/
  18452 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18453 
  18454 "use strict";
  18455 
  18456 
  18457 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18458 
  18459 _Object$defineProperty(exports, "__esModule", {
  18460   value: true
  18461 });
  18462 
  18463 _Object$defineProperty(exports, "ChangeDeviceMode", {
  18464   enumerable: true,
  18465   get: function get() {
  18466     return _changeDeviceMode.ChangeDeviceMode;
  18467   }
  18468 });
  18469 
  18470 _Object$defineProperty(exports, "Close", {
  18471   enumerable: true,
  18472   get: function get() {
  18473     return _close.Close;
  18474   }
  18475 });
  18476 
  18477 _Object$defineProperty(exports, "Exit", {
  18478   enumerable: true,
  18479   get: function get() {
  18480     return _exit.Exit;
  18481   }
  18482 });
  18483 
  18484 _Object$defineProperty(exports, "Open", {
  18485   enumerable: true,
  18486   get: function get() {
  18487     return _open.Open;
  18488   }
  18489 });
  18490 
  18491 _Object$defineProperty(exports, "Publish", {
  18492   enumerable: true,
  18493   get: function get() {
  18494     return _publish.Publish;
  18495   }
  18496 });
  18497 
  18498 _Object$defineProperty(exports, "Save", {
  18499   enumerable: true,
  18500   get: function get() {
  18501     return _save.Save;
  18502   }
  18503 });
  18504 
  18505 _Object$defineProperty(exports, "Toggle", {
  18506   enumerable: true,
  18507   get: function get() {
  18508     return _toggle.Toggle;
  18509   }
  18510 });
  18511 
  18512 var _changeDeviceMode = __webpack_require__(/*! ./change-device-mode */ "../assets/dev/js/editor/regions/panel/commands/change-device-mode.js");
  18513 
  18514 var _close = __webpack_require__(/*! ./close */ "../assets/dev/js/editor/regions/panel/commands/close.js");
  18515 
  18516 var _exit = __webpack_require__(/*! ./exit */ "../assets/dev/js/editor/regions/panel/commands/exit.js");
  18517 
  18518 var _open = __webpack_require__(/*! ./open */ "../assets/dev/js/editor/regions/panel/commands/open.js");
  18519 
  18520 var _publish = __webpack_require__(/*! ./publish */ "../assets/dev/js/editor/regions/panel/commands/publish.js");
  18521 
  18522 var _save = __webpack_require__(/*! ./save */ "../assets/dev/js/editor/regions/panel/commands/save.js");
  18523 
  18524 var _toggle = __webpack_require__(/*! ./toggle */ "../assets/dev/js/editor/regions/panel/commands/toggle.js");
  18525 
  18526 /***/ }),
  18527 
  18528 /***/ "../assets/dev/js/editor/regions/panel/commands/internal/index.js":
  18529 /*!************************************************************************!*\
  18530   !*** ../assets/dev/js/editor/regions/panel/commands/internal/index.js ***!
  18531   \************************************************************************/
  18532 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18533 
  18534 "use strict";
  18535 
  18536 
  18537 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18538 
  18539 _Object$defineProperty(exports, "__esModule", {
  18540   value: true
  18541 });
  18542 
  18543 _Object$defineProperty(exports, "OpenDefault", {
  18544   enumerable: true,
  18545   get: function get() {
  18546     return _openDefault.OpenDefault;
  18547   }
  18548 });
  18549 
  18550 _Object$defineProperty(exports, "StateLoading", {
  18551   enumerable: true,
  18552   get: function get() {
  18553     return _stateLoading.StateLoading;
  18554   }
  18555 });
  18556 
  18557 _Object$defineProperty(exports, "StateReady", {
  18558   enumerable: true,
  18559   get: function get() {
  18560     return _stateReady.StateReady;
  18561   }
  18562 });
  18563 
  18564 var _openDefault = __webpack_require__(/*! ./open-default */ "../assets/dev/js/editor/regions/panel/commands/internal/open-default.js");
  18565 
  18566 var _stateLoading = __webpack_require__(/*! ./state-loading */ "../assets/dev/js/editor/regions/panel/commands/internal/state-loading.js");
  18567 
  18568 var _stateReady = __webpack_require__(/*! ./state-ready */ "../assets/dev/js/editor/regions/panel/commands/internal/state-ready.js");
  18569 
  18570 /***/ }),
  18571 
  18572 /***/ "../assets/dev/js/editor/regions/panel/commands/internal/open-default.js":
  18573 /*!*******************************************************************************!*\
  18574   !*** ../assets/dev/js/editor/regions/panel/commands/internal/open-default.js ***!
  18575   \*******************************************************************************/
  18576 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18577 
  18578 "use strict";
  18579 
  18580 
  18581 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18582 
  18583 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18584 
  18585 _Object$defineProperty(exports, "__esModule", {
  18586   value: true
  18587 });
  18588 
  18589 exports.default = exports.OpenDefault = void 0;
  18590 
  18591 var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));
  18592 
  18593 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18594 
  18595 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18596 
  18597 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18598 
  18599 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18600 
  18601 var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));
  18602 
  18603 var OpenDefault = /*#__PURE__*/function (_CommandInternalBase) {
  18604   (0, _inherits2.default)(OpenDefault, _CommandInternalBase);
  18605 
  18606   var _super = (0, _createSuper2.default)(OpenDefault);
  18607 
  18608   function OpenDefault() {
  18609     (0, _classCallCheck2.default)(this, OpenDefault);
  18610     return _super.apply(this, arguments);
  18611   }
  18612 
  18613   (0, _createClass2.default)(OpenDefault, [{
  18614     key: "apply",
  18615     value: function apply() {
  18616       $e.route(elementor.documents.getCurrent().config.panel.default_route);
  18617       return _promise.default.resolve();
  18618     }
  18619   }]);
  18620   return OpenDefault;
  18621 }(_commandInternalBase.default);
  18622 
  18623 exports.OpenDefault = OpenDefault;
  18624 var _default = OpenDefault;
  18625 exports.default = _default;
  18626 
  18627 /***/ }),
  18628 
  18629 /***/ "../assets/dev/js/editor/regions/panel/commands/internal/state-loading.js":
  18630 /*!********************************************************************************!*\
  18631   !*** ../assets/dev/js/editor/regions/panel/commands/internal/state-loading.js ***!
  18632   \********************************************************************************/
  18633 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18634 
  18635 "use strict";
  18636 
  18637 
  18638 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18639 
  18640 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18641 
  18642 _Object$defineProperty(exports, "__esModule", {
  18643   value: true
  18644 });
  18645 
  18646 exports.default = exports.StateLoading = void 0;
  18647 
  18648 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18649 
  18650 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18651 
  18652 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18653 
  18654 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18655 
  18656 var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));
  18657 
  18658 var StateLoading = /*#__PURE__*/function (_CommandInternalBase) {
  18659   (0, _inherits2.default)(StateLoading, _CommandInternalBase);
  18660 
  18661   var _super = (0, _createSuper2.default)(StateLoading);
  18662 
  18663   function StateLoading() {
  18664     (0, _classCallCheck2.default)(this, StateLoading);
  18665     return _super.apply(this, arguments);
  18666   }
  18667 
  18668   (0, _createClass2.default)(StateLoading, [{
  18669     key: "apply",
  18670     value: function apply() {
  18671       elementorCommon.elements.$body.addClass('elementor-panel-loading');
  18672     }
  18673   }]);
  18674   return StateLoading;
  18675 }(_commandInternalBase.default);
  18676 
  18677 exports.StateLoading = StateLoading;
  18678 var _default = StateLoading;
  18679 exports.default = _default;
  18680 
  18681 /***/ }),
  18682 
  18683 /***/ "../assets/dev/js/editor/regions/panel/commands/internal/state-ready.js":
  18684 /*!******************************************************************************!*\
  18685   !*** ../assets/dev/js/editor/regions/panel/commands/internal/state-ready.js ***!
  18686   \******************************************************************************/
  18687 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18688 
  18689 "use strict";
  18690 
  18691 
  18692 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18693 
  18694 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18695 
  18696 _Object$defineProperty(exports, "__esModule", {
  18697   value: true
  18698 });
  18699 
  18700 exports.default = exports.StateReady = void 0;
  18701 
  18702 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18703 
  18704 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18705 
  18706 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18707 
  18708 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18709 
  18710 var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));
  18711 
  18712 var StateReady = /*#__PURE__*/function (_CommandInternalBase) {
  18713   (0, _inherits2.default)(StateReady, _CommandInternalBase);
  18714 
  18715   var _super = (0, _createSuper2.default)(StateReady);
  18716 
  18717   function StateReady() {
  18718     (0, _classCallCheck2.default)(this, StateReady);
  18719     return _super.apply(this, arguments);
  18720   }
  18721 
  18722   (0, _createClass2.default)(StateReady, [{
  18723     key: "apply",
  18724     value: function apply() {
  18725       elementorCommon.elements.$body.removeClass('elementor-panel-loading'); // Cannot be hook because not sure if it affects UI or data.
  18726 
  18727       if (!this.component.stateReadyOnce) {
  18728         this.component.stateReadyOnce = true;
  18729         $e.extras.hashCommands.runOnce();
  18730       }
  18731     }
  18732   }]);
  18733   return StateReady;
  18734 }(_commandInternalBase.default);
  18735 
  18736 exports.StateReady = StateReady;
  18737 var _default = StateReady;
  18738 exports.default = _default;
  18739 
  18740 /***/ }),
  18741 
  18742 /***/ "../assets/dev/js/editor/regions/panel/commands/open.js":
  18743 /*!**************************************************************!*\
  18744   !*** ../assets/dev/js/editor/regions/panel/commands/open.js ***!
  18745   \**************************************************************/
  18746 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18747 
  18748 "use strict";
  18749 
  18750 
  18751 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18752 
  18753 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18754 
  18755 _Object$defineProperty(exports, "__esModule", {
  18756   value: true
  18757 });
  18758 
  18759 exports.default = exports.Open = void 0;
  18760 
  18761 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18762 
  18763 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18764 
  18765 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18766 
  18767 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18768 
  18769 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  18770 
  18771 var Open = /*#__PURE__*/function (_CommandBase) {
  18772   (0, _inherits2.default)(Open, _CommandBase);
  18773 
  18774   var _super = (0, _createSuper2.default)(Open);
  18775 
  18776   function Open() {
  18777     (0, _classCallCheck2.default)(this, Open);
  18778     return _super.apply(this, arguments);
  18779   }
  18780 
  18781   (0, _createClass2.default)(Open, [{
  18782     key: "apply",
  18783     value: function apply() {
  18784       elementor.changeEditMode('edit');
  18785     }
  18786   }]);
  18787   return Open;
  18788 }(_commandBase.default);
  18789 
  18790 exports.Open = Open;
  18791 var _default = Open;
  18792 exports.default = _default;
  18793 
  18794 /***/ }),
  18795 
  18796 /***/ "../assets/dev/js/editor/regions/panel/commands/publish.js":
  18797 /*!*****************************************************************!*\
  18798   !*** ../assets/dev/js/editor/regions/panel/commands/publish.js ***!
  18799   \*****************************************************************/
  18800 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18801 
  18802 "use strict";
  18803 
  18804 
  18805 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18806 
  18807 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18808 
  18809 _Object$defineProperty(exports, "__esModule", {
  18810   value: true
  18811 });
  18812 
  18813 exports.default = exports.Publish = void 0;
  18814 
  18815 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18816 
  18817 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18818 
  18819 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18820 
  18821 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18822 
  18823 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  18824 
  18825 var Publish = /*#__PURE__*/function (_CommandBase) {
  18826   (0, _inherits2.default)(Publish, _CommandBase);
  18827 
  18828   var _super = (0, _createSuper2.default)(Publish);
  18829 
  18830   function Publish() {
  18831     (0, _classCallCheck2.default)(this, Publish);
  18832     return _super.apply(this, arguments);
  18833   }
  18834 
  18835   (0, _createClass2.default)(Publish, [{
  18836     key: "apply",
  18837     value: function apply() {
  18838       $e.run('document/save/publish');
  18839     }
  18840   }]);
  18841   return Publish;
  18842 }(_commandBase.default);
  18843 
  18844 exports.Publish = Publish;
  18845 var _default = Publish;
  18846 exports.default = _default;
  18847 
  18848 /***/ }),
  18849 
  18850 /***/ "../assets/dev/js/editor/regions/panel/commands/save.js":
  18851 /*!**************************************************************!*\
  18852   !*** ../assets/dev/js/editor/regions/panel/commands/save.js ***!
  18853   \**************************************************************/
  18854 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18855 
  18856 "use strict";
  18857 
  18858 
  18859 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18860 
  18861 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18862 
  18863 _Object$defineProperty(exports, "__esModule", {
  18864   value: true
  18865 });
  18866 
  18867 exports.default = exports.Save = void 0;
  18868 
  18869 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18870 
  18871 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18872 
  18873 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18874 
  18875 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18876 
  18877 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  18878 
  18879 var Save = /*#__PURE__*/function (_CommandBase) {
  18880   (0, _inherits2.default)(Save, _CommandBase);
  18881 
  18882   var _super = (0, _createSuper2.default)(Save);
  18883 
  18884   function Save() {
  18885     (0, _classCallCheck2.default)(this, Save);
  18886     return _super.apply(this, arguments);
  18887   }
  18888 
  18889   (0, _createClass2.default)(Save, [{
  18890     key: "apply",
  18891     value: function apply() {
  18892       $e.run('document/save/draft');
  18893     }
  18894   }]);
  18895   return Save;
  18896 }(_commandBase.default);
  18897 
  18898 exports.Save = Save;
  18899 var _default = Save;
  18900 exports.default = _default;
  18901 
  18902 /***/ }),
  18903 
  18904 /***/ "../assets/dev/js/editor/regions/panel/commands/toggle.js":
  18905 /*!****************************************************************!*\
  18906   !*** ../assets/dev/js/editor/regions/panel/commands/toggle.js ***!
  18907   \****************************************************************/
  18908 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18909 
  18910 "use strict";
  18911 
  18912 
  18913 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18914 
  18915 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18916 
  18917 _Object$defineProperty(exports, "__esModule", {
  18918   value: true
  18919 });
  18920 
  18921 exports.default = exports.Toggle = void 0;
  18922 
  18923 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18924 
  18925 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18926 
  18927 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18928 
  18929 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18930 
  18931 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  18932 
  18933 var Toggle = /*#__PURE__*/function (_CommandBase) {
  18934   (0, _inherits2.default)(Toggle, _CommandBase);
  18935 
  18936   var _super = (0, _createSuper2.default)(Toggle);
  18937 
  18938   function Toggle() {
  18939     (0, _classCallCheck2.default)(this, Toggle);
  18940     return _super.apply(this, arguments);
  18941   }
  18942 
  18943   (0, _createClass2.default)(Toggle, [{
  18944     key: "apply",
  18945     value: function apply() {
  18946       elementor.getPanelView().modeSwitcher.currentView.toggleMode();
  18947     }
  18948   }]);
  18949   return Toggle;
  18950 }(_commandBase.default);
  18951 
  18952 exports.Toggle = Toggle;
  18953 var _default = Toggle;
  18954 exports.default = _default;
  18955 
  18956 /***/ }),
  18957 
  18958 /***/ "../assets/dev/js/editor/regions/panel/component.js":
  18959 /*!**********************************************************!*\
  18960   !*** ../assets/dev/js/editor/regions/panel/component.js ***!
  18961   \**********************************************************/
  18962 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  18963 
  18964 "use strict";
  18965 
  18966 
  18967 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  18968 
  18969 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
  18970 
  18971 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  18972 
  18973 _Object$defineProperty(exports, "__esModule", {
  18974   value: true
  18975 });
  18976 
  18977 exports.default = void 0;
  18978 
  18979 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  18980 
  18981 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  18982 
  18983 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
  18984 
  18985 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  18986 
  18987 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  18988 
  18989 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  18990 
  18991 var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));
  18992 
  18993 var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/regions/panel/commands/index.js"));
  18994 
  18995 var commandsInternal = _interopRequireWildcard(__webpack_require__(/*! ./commands/internal/ */ "../assets/dev/js/editor/regions/panel/commands/internal/index.js"));
  18996 
  18997 var Component = /*#__PURE__*/function (_ComponentBase) {
  18998   (0, _inherits2.default)(Component, _ComponentBase);
  18999 
  19000   var _super = (0, _createSuper2.default)(Component);
  19001 
  19002   function Component() {
  19003     var _this;
  19004 
  19005     (0, _classCallCheck2.default)(this, Component);
  19006 
  19007     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  19008       args[_key] = arguments[_key];
  19009     }
  19010 
  19011     _this = _super.call.apply(_super, [this].concat(args));
  19012     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "stateReadyOnce", false);
  19013     return _this;
  19014   }
  19015 
  19016   (0, _createClass2.default)(Component, [{
  19017     key: "getNamespace",
  19018     value: function getNamespace() {
  19019       return 'panel';
  19020     }
  19021   }, {
  19022     key: "defaultRoutes",
  19023     value: function defaultRoutes() {
  19024       var _this2 = this;
  19025 
  19026       return {
  19027         menu: function menu() {
  19028           return _this2.manager.setPage('menu');
  19029         },
  19030         'global-colors': function globalColors() {
  19031           return _this2.manager.setPage('colorScheme');
  19032         },
  19033         'global-fonts': function globalFonts() {
  19034           return _this2.manager.setPage('typographyScheme');
  19035         },
  19036         'editor-preferences': function editorPreferences() {
  19037           return _this2.manager.setPage('editorPreferences_settings').activateTab('settings');
  19038         }
  19039       };
  19040     }
  19041   }, {
  19042     key: "defaultCommandsInternal",
  19043     value: function defaultCommandsInternal() {
  19044       return this.importCommands(commandsInternal);
  19045     }
  19046   }, {
  19047     key: "defaultCommands",
  19048     value: function defaultCommands() {
  19049       return this.importCommands(commands);
  19050     }
  19051   }, {
  19052     key: "defaultShortcuts",
  19053     value: function defaultShortcuts() {
  19054       return {
  19055         toggle: {
  19056           keys: 'ctrl+p'
  19057         },
  19058         save: {
  19059           keys: 'ctrl+s'
  19060         },
  19061         exit: {
  19062           keys: 'esc',
  19063           // TODO: replace dependency with scopes.
  19064           dependency: function dependency() {
  19065             return !jQuery('.dialog-widget:visible').length;
  19066           },
  19067           scopes: ['panel', 'preview']
  19068         },
  19069         'change-device-mode': {
  19070           keys: 'ctrl+shift+m'
  19071         }
  19072       };
  19073     }
  19074   }]);
  19075   return Component;
  19076 }(_componentBase.default);
  19077 
  19078 exports.default = Component;
  19079 
  19080 /***/ }),
  19081 
  19082 /***/ "../assets/dev/js/editor/regions/panel/edit-mode.js":
  19083 /*!**********************************************************!*\
  19084   !*** ../assets/dev/js/editor/regions/panel/edit-mode.js ***!
  19085   \**********************************************************/
  19086 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  19087 
  19088 "use strict";
  19089 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  19090 
  19091 
  19092 var EditModeItemView;
  19093 EditModeItemView = Marionette.ItemView.extend({
  19094   template: '#tmpl-elementor-mode-switcher-content',
  19095   id: 'elementor-mode-switcher-inner',
  19096   ui: {
  19097     previewButton: '#elementor-mode-switcher-preview-input',
  19098     previewLabel: '#elementor-mode-switcher-preview',
  19099     previewLabelA11y: '#elementor-mode-switcher-preview .elementor-screen-only'
  19100   },
  19101   events: {
  19102     'change @ui.previewButton': 'onPreviewButtonChange'
  19103   },
  19104   initialize: function initialize() {
  19105     this.listenTo(elementor.channels.dataEditMode, 'switch', this.onEditModeChanged);
  19106   },
  19107   getCurrentMode: function getCurrentMode() {
  19108     return this.ui.previewButton.is(':checked') ? 'preview' : 'edit';
  19109   },
  19110   setMode: function setMode(mode) {
  19111     this.ui.previewButton.prop('checked', 'preview' === mode).trigger('change');
  19112   },
  19113   toggleMode: function toggleMode() {
  19114     this.setMode(this.ui.previewButton.prop('checked') ? 'edit' : 'preview');
  19115   },
  19116   onRender: function onRender() {
  19117     this.onEditModeChanged();
  19118   },
  19119   onPreviewButtonChange: function onPreviewButtonChange() {
  19120     var mode = this.getCurrentMode();
  19121 
  19122     if ('edit' === mode) {
  19123       $e.run('panel/open');
  19124     } else if ('preview' === mode) {
  19125       $e.run('panel/close');
  19126     } else {
  19127       throw Error("Invalid mode: '".concat(mode, "'"));
  19128     }
  19129   },
  19130   onEditModeChanged: function onEditModeChanged(activeMode) {
  19131     var title = 'preview' === activeMode ? __('Back to Editor', 'elementor') : __('Preview', 'elementor');
  19132     this.ui.previewLabel.attr('title', title);
  19133     this.ui.previewLabelA11y.text(title);
  19134   }
  19135 });
  19136 module.exports = EditModeItemView;
  19137 
  19138 /***/ }),
  19139 
  19140 /***/ "../assets/dev/js/editor/regions/panel/footer.js":
  19141 /*!*******************************************************!*\
  19142   !*** ../assets/dev/js/editor/regions/panel/footer.js ***!
  19143   \*******************************************************/
  19144 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  19145 
  19146 "use strict";
  19147 
  19148 
  19149 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  19150 
  19151 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  19152 
  19153 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  19154 
  19155 module.exports = Marionette.ItemView.extend({
  19156   template: '#tmpl-elementor-panel-footer-content',
  19157   tagName: 'nav',
  19158   id: 'elementor-panel-footer-tools',
  19159   possibleRotateModes: ['portrait', 'landscape'],
  19160   ui: {
  19161     menuButtons: '.elementor-panel-footer-tool',
  19162     settings: '#elementor-panel-footer-settings',
  19163     deviceModeIcon: '#elementor-panel-footer-responsive > i',
  19164     saveTemplate: '#elementor-panel-footer-sub-menu-item-save-template',
  19165     history: '#elementor-panel-footer-history',
  19166     navigator: '#elementor-panel-footer-navigator'
  19167   },
  19168   events: {
  19169     'click @ui.menuButtons': 'onMenuButtonsClick',
  19170     'click @ui.settings': 'onSettingsClick',
  19171     'click @ui.deviceModeIcon': 'onDeviceModeIconClick',
  19172     'click @ui.saveTemplate': 'onSaveTemplateClick',
  19173     'click @ui.history': 'onHistoryClick',
  19174     'click @ui.navigator': 'onNavigatorClick'
  19175   },
  19176   behaviors: function behaviors() {
  19177     var behaviors = {
  19178       saver: {
  19179         behaviorClass: elementor.modules.components.saver.behaviors.FooterSaver
  19180       }
  19181     };
  19182     return elementor.hooks.applyFilters('panel/footer/behaviors', behaviors, this);
  19183   },
  19184   initialize: function initialize() {
  19185     this.listenTo(elementor.channels.deviceMode, 'change', this.onDeviceModeChange);
  19186   },
  19187   addSubMenuItem: function addSubMenuItem(subMenuName, itemData) {
  19188     var $newItem = jQuery('<div>', {
  19189       id: 'elementor-panel-footer-sub-menu-item-' + itemData.name,
  19190       class: 'elementor-panel-footer-sub-menu-item'
  19191     }),
  19192         $itemIcon = jQuery('<i>', {
  19193       class: 'elementor-icon ' + itemData.icon,
  19194       'aria-hidden': true
  19195     }),
  19196         $itemTitle = jQuery('<div>', {
  19197       class: 'elementor-title'
  19198     }).text(itemData.title);
  19199     $newItem.append($itemIcon, $itemTitle);
  19200 
  19201     if (itemData.description) {
  19202       var $itemDescription = jQuery('<div>', {
  19203         class: 'elementor-description'
  19204       }).text(itemData.description);
  19205       $newItem.append($itemDescription);
  19206     }
  19207 
  19208     if (itemData.callback) {
  19209       $newItem.on('click', itemData.callback);
  19210     }
  19211 
  19212     var $menuTool = this.ui.menuButtons.filter('#elementor-panel-footer-' + subMenuName);
  19213 
  19214     if (itemData.before) {
  19215       var $beforeItem = $menuTool.find('#elementor-panel-footer-sub-menu-item-' + itemData.before);
  19216 
  19217       if ($beforeItem.length) {
  19218         return $newItem.insertBefore($beforeItem);
  19219       }
  19220     }
  19221 
  19222     var $subMenu = $menuTool.find('.elementor-panel-footer-sub-menu');
  19223     return $newItem.appendTo($subMenu);
  19224   },
  19225   removeSubMenuItem: function removeSubMenuItem(subMenuName, itemData) {
  19226     var $item = jQuery('#elementor-panel-footer-sub-menu-item-' + itemData.name);
  19227     return $item.remove();
  19228   },
  19229   showSettingsPage: function showSettingsPage() {
  19230     $e.route('panel/page-settings/settings');
  19231   },
  19232   onMenuButtonsClick: function onMenuButtonsClick(event) {
  19233     var $tool = jQuery(event.currentTarget); // If the tool is not toggleable or the click is inside of a tool
  19234 
  19235     if (!$tool.hasClass('elementor-toggle-state') || jQuery(event.target).closest('.elementor-panel-footer-sub-menu-item').length) {
  19236       return;
  19237     }
  19238 
  19239     var isOpen = $tool.hasClass('elementor-open');
  19240     this.ui.menuButtons.not('.elementor-leave-open').removeClass('elementor-open');
  19241 
  19242     if (!isOpen) {
  19243       $tool.addClass('elementor-open');
  19244     }
  19245   },
  19246   onSettingsClick: function onSettingsClick() {
  19247     $e.route('panel/page-settings/settings');
  19248   },
  19249   onDeviceModeIconClick: function onDeviceModeIconClick() {
  19250     if (elementor.isDeviceModeActive()) {
  19251       elementor.changeDeviceMode('desktop'); // Force exit if device mode is already desktop
  19252 
  19253       elementor.exitDeviceMode();
  19254     } else {
  19255       var deviceView = 'default' === elementor.getPreferences('default_device_view') ? 'desktop' : elementor.getPreferences('default_device_view');
  19256       elementor.changeDeviceMode(deviceView);
  19257 
  19258       if ('desktop' === deviceView) {
  19259         elementor.enterDeviceMode();
  19260       }
  19261     }
  19262   },
  19263   onSaveTemplateClick: function onSaveTemplateClick() {
  19264     $e.route('library/save-template');
  19265   },
  19266   onHistoryClick: function onHistoryClick() {
  19267     $e.route('panel/history/actions');
  19268   },
  19269   onNavigatorClick: function onNavigatorClick() {
  19270     $e.run('navigator/toggle');
  19271   }
  19272 });
  19273 
  19274 /***/ }),
  19275 
  19276 /***/ "../assets/dev/js/editor/regions/panel/header.js":
  19277 /*!*******************************************************!*\
  19278   !*** ../assets/dev/js/editor/regions/panel/header.js ***!
  19279   \*******************************************************/
  19280 /***/ ((module) => {
  19281 
  19282 "use strict";
  19283 
  19284 
  19285 var PanelHeaderItemView;
  19286 PanelHeaderItemView = Marionette.ItemView.extend({
  19287   template: '#tmpl-elementor-panel-header',
  19288   id: 'elementor-panel-header',
  19289   ui: {
  19290     menuButton: '#elementor-panel-header-menu-button',
  19291     menuIcon: '#elementor-panel-header-menu-button i',
  19292     title: '#elementor-panel-header-title',
  19293     addButton: '#elementor-panel-header-add-button'
  19294   },
  19295   events: {
  19296     'click @ui.addButton': 'onClickAdd',
  19297     'click @ui.menuButton': 'onClickMenu'
  19298   },
  19299   behaviors: function behaviors() {
  19300     return elementor.hooks.applyFilters('panel/header/behaviors', {}, this);
  19301   },
  19302   setTitle: function setTitle(title) {
  19303     this.ui.title.html(title);
  19304   },
  19305   onClickAdd: function onClickAdd() {
  19306     $e.route('panel/elements/categories');
  19307   },
  19308   onClickMenu: function onClickMenu() {
  19309     if ($e.routes.is('panel/menu')) {
  19310       $e.route('panel/elements/categories');
  19311     } else {
  19312       $e.route('panel/menu');
  19313     }
  19314   }
  19315 });
  19316 module.exports = PanelHeaderItemView;
  19317 
  19318 /***/ }),
  19319 
  19320 /***/ "../assets/dev/js/editor/regions/panel/layout.js":
  19321 /*!*******************************************************!*\
  19322   !*** ../assets/dev/js/editor/regions/panel/layout.js ***!
  19323   \*******************************************************/
  19324 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  19325 
  19326 "use strict";
  19327 
  19328 
  19329 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  19330 
  19331 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  19332 
  19333 var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../assets/dev/js/editor/regions/panel/component.js"));
  19334 
  19335 var _component2 = _interopRequireDefault(__webpack_require__(/*! ./pages/elements/component */ "../assets/dev/js/editor/regions/panel/pages/elements/component.js"));
  19336 
  19337 var _component3 = _interopRequireDefault(__webpack_require__(/*! ./pages/editor/component */ "../assets/dev/js/editor/regions/panel/pages/editor/component.js"));
  19338 
  19339 var EditModeItemView = __webpack_require__(/*! elementor-regions/panel/edit-mode */ "../assets/dev/js/editor/regions/panel/edit-mode.js"),
  19340     PanelLayoutView;
  19341 
  19342 PanelLayoutView = Marionette.LayoutView.extend({
  19343   template: '#tmpl-elementor-panel',
  19344   id: 'elementor-panel-inner',
  19345   regions: {
  19346     content: '#elementor-panel-content-wrapper',
  19347     header: '#elementor-panel-header-wrapper',
  19348     footer: '#elementor-panel-footer',
  19349     modeSwitcher: '#elementor-mode-switcher'
  19350   },
  19351   pages: {},
  19352   childEvents: {
  19353     'click:add': function clickAdd() {
  19354       $e.route('panel/elements/categories');
  19355     },
  19356     'editor:destroy': function editorDestroy() {
  19357       $e.route('panel/elements/categories', {
  19358         autoFocusSearch: false
  19359       });
  19360     }
  19361   },
  19362   currentPageName: null,
  19363   currentPageView: null,
  19364   perfectScrollbar: null,
  19365   initialize: function initialize() {
  19366     $e.components.register(new _component.default({
  19367       manager: this
  19368     }));
  19369     $e.internal('panel/state-loading');
  19370     $e.components.register(new _component2.default({
  19371       manager: this
  19372     }));
  19373     $e.components.register(new _component3.default({
  19374       manager: this
  19375     }));
  19376     this.initPages();
  19377   },
  19378   buildPages: function buildPages() {
  19379     var pages = {
  19380       elements: {
  19381         view: __webpack_require__(/*! elementor-panel/pages/elements/elements */ "../assets/dev/js/editor/regions/panel/pages/elements/elements.js"),
  19382         title: '<img src="' + elementorCommon.config.urls.assets + 'images/logo-panel.svg">'
  19383       },
  19384       editor: {
  19385         view: __webpack_require__(/*! elementor-panel/pages/editor */ "../assets/dev/js/editor/regions/panel/pages/editor.js")
  19386       },
  19387       menu: {
  19388         view: elementor.modules.layouts.panel.pages.menu.Menu,
  19389         title: '<img src="' + elementorCommon.config.urls.assets + 'images/logo-panel.svg">'
  19390       },
  19391       colorScheme: {
  19392         view: __webpack_require__(/*! elementor-panel/pages/schemes/colors */ "../assets/dev/js/editor/regions/panel/pages/schemes/colors.js")
  19393       },
  19394       typographyScheme: {
  19395         view: __webpack_require__(/*! elementor-panel/pages/schemes/typography */ "../assets/dev/js/editor/regions/panel/pages/schemes/typography.js")
  19396       }
  19397     };
  19398 
  19399     var schemesTypes = (0, _keys.default)(elementor.schemes.getSchemes()),
  19400         disabledSchemes = _.difference(schemesTypes, elementor.schemes.getEnabledSchemesTypes());
  19401 
  19402     _.each(disabledSchemes, function (schemeType) {
  19403       var scheme = elementor.schemes.getScheme(schemeType);
  19404       pages[schemeType + 'Scheme'].view = __webpack_require__(/*! elementor-panel/pages/schemes/disabled */ "../assets/dev/js/editor/regions/panel/pages/schemes/disabled.js").extend({
  19405         disabledTitle: scheme.disabled_title
  19406       });
  19407     });
  19408 
  19409     return pages;
  19410   },
  19411   initPages: function initPages() {
  19412     var pages;
  19413 
  19414     this.getPages = function (page) {
  19415       if (!pages) {
  19416         pages = this.buildPages();
  19417       }
  19418 
  19419       return page ? pages[page] : pages;
  19420     };
  19421 
  19422     this.addPage = function (pageName, pageData) {
  19423       if (!pages) {
  19424         pages = this.buildPages();
  19425       }
  19426 
  19427       pages[pageName] = pageData;
  19428     };
  19429   },
  19430   getHeaderView: function getHeaderView() {
  19431     return this.getChildView('header');
  19432   },
  19433   getFooterView: function getFooterView() {
  19434     return this.getChildView('footer');
  19435   },
  19436   getCurrentPageName: function getCurrentPageName() {
  19437     return this.currentPageName;
  19438   },
  19439   getCurrentPageView: function getCurrentPageView() {
  19440     return this.currentPageView;
  19441   },
  19442   setPage: function setPage(page, title, viewOptions) {
  19443     var pages = this.getPages();
  19444 
  19445     if ('elements' === page && !elementor.userCan('design')) {
  19446       if (pages.page_settings) {
  19447         page = 'page_settings';
  19448       }
  19449     }
  19450 
  19451     var pageData = pages[page];
  19452 
  19453     if (!pageData) {
  19454       throw new ReferenceError('Elementor panel doesn\'t have page named \'' + page + '\'');
  19455     }
  19456 
  19457     if (pageData.options) {
  19458       viewOptions = _.extend(pageData.options, viewOptions);
  19459     }
  19460 
  19461     var View = pageData.view;
  19462 
  19463     if (pageData.getView) {
  19464       View = pageData.getView();
  19465     }
  19466 
  19467     this.currentPageName = page;
  19468     this.currentPageView = new View(viewOptions);
  19469     this.showChildView('content', this.currentPageView);
  19470     this.getHeaderView().setTitle(title || pageData.title);
  19471     this.trigger('set:page', this.currentPageView).trigger('set:page:' + page, this.currentPageView);
  19472 
  19473     if (elementor.promotion.dialog) {
  19474       elementor.promotion.dialog.hide();
  19475     }
  19476 
  19477     return this.currentPageView;
  19478   },
  19479   onBeforeShow: function onBeforeShow() {
  19480     var PanelFooterItemView = __webpack_require__(/*! elementor-regions/panel/footer */ "../assets/dev/js/editor/regions/panel/footer.js"),
  19481         PanelHeaderItemView = __webpack_require__(/*! elementor-regions/panel/header */ "../assets/dev/js/editor/regions/panel/header.js"); // Edit Mode
  19482 
  19483 
  19484     this.showChildView('modeSwitcher', new EditModeItemView()); // Header
  19485 
  19486     this.showChildView('header', new PanelHeaderItemView()); // Footer
  19487 
  19488     this.showChildView('footer', new PanelFooterItemView()); // Added Editor events
  19489 
  19490     this.updateScrollbar = _.throttle(this.updateScrollbar, 100);
  19491     this.getRegion('content').on('before:show', this.onEditorBeforeShow.bind(this)).on('empty', this.onEditorEmpty.bind(this)).on('show', this.updateScrollbar.bind(this));
  19492   },
  19493   onEditorBeforeShow: function onEditorBeforeShow() {
  19494     _.defer(this.updateScrollbar.bind(this));
  19495   },
  19496   onEditorEmpty: function onEditorEmpty() {
  19497     this.updateScrollbar();
  19498   },
  19499   updateScrollbar: function updateScrollbar() {
  19500     if (!this.perfectScrollbar) {
  19501       this.perfectScrollbar = new PerfectScrollbar(this.content.el, {
  19502         suppressScrollX: true
  19503       }); // The RTL is buggy, so always keep it LTR.
  19504 
  19505       this.perfectScrollbar.isRtl = false;
  19506       return;
  19507     }
  19508 
  19509     this.perfectScrollbar.update();
  19510   }
  19511 });
  19512 module.exports = PanelLayoutView;
  19513 
  19514 /***/ }),
  19515 
  19516 /***/ "../assets/dev/js/editor/regions/panel/pages/editor.js":
  19517 /*!*************************************************************!*\
  19518   !*** ../assets/dev/js/editor/regions/panel/pages/editor.js ***!
  19519   \*************************************************************/
  19520 /***/ ((module) => {
  19521 
  19522 "use strict";
  19523 
  19524 
  19525 var ControlsStack = elementorModules.editor.views.ControlsStack,
  19526     EditorView;
  19527 EditorView = ControlsStack.extend({
  19528   template: Marionette.TemplateCache.get('#tmpl-editor-content'),
  19529   id: 'elementor-panel-page-editor',
  19530   childViewContainer: '#elementor-controls',
  19531   childViewOptions: function childViewOptions() {
  19532     return {
  19533       element: this.getOption('editedElementView'),
  19534       container: this.getOption('editedElementView').getContainer(),
  19535       // TODO: elementSettingsModel is deprecated since 2.8.0.
  19536       elementSettingsModel: this.model.get('settings'),
  19537       elementEditSettings: this.model.get('editSettings')
  19538     };
  19539   },
  19540   getNamespaceArray: function getNamespaceArray() {
  19541     var eventNamespace = elementorModules.editor.views.ControlsStack.prototype.getNamespaceArray();
  19542     var model = this.getOption('editedElementView').getEditModel(),
  19543         currentElementType = model.get('elType'); // Element Type: section / column / widget.
  19544 
  19545     eventNamespace.push(currentElementType);
  19546 
  19547     if ('widget' === currentElementType) {
  19548       // Widget Type: heading / button and etc.
  19549       eventNamespace.push(model.get('widgetType'));
  19550     }
  19551 
  19552     return eventNamespace;
  19553   },
  19554   initialize: function initialize() {
  19555     ControlsStack.prototype.initialize.apply(this, arguments);
  19556     var editSettings = this.model.get('editSettings');
  19557 
  19558     if (editSettings) {
  19559       var panelSettings = editSettings.get('panel');
  19560 
  19561       if (panelSettings) {
  19562         this.activeTab = panelSettings.activeTab;
  19563         this.activeSection = panelSettings.activeSection;
  19564       }
  19565     }
  19566   },
  19567   activateSection: function activateSection() {
  19568     ControlsStack.prototype.activateSection.apply(this, arguments);
  19569     this.model.get('editSettings').set('panel', {
  19570       activeTab: this.activeTab,
  19571       activeSection: this.activeSection
  19572     });
  19573     return this;
  19574   },
  19575   openActiveSection: function openActiveSection() {
  19576     ControlsStack.prototype.openActiveSection.apply(this, arguments);
  19577     elementor.channels.editor.trigger('section:activated', this.activeSection, this);
  19578   },
  19579   isVisibleSectionControl: function isVisibleSectionControl(sectionControlModel) {
  19580     return ControlsStack.prototype.isVisibleSectionControl.apply(this, arguments) && elementor.helpers.isActiveControl(sectionControlModel, this.model.get('settings').attributes);
  19581   },
  19582   scrollToEditedElement: function scrollToEditedElement() {
  19583     elementor.helpers.scrollToView(this.getOption('editedElementView').$el);
  19584   },
  19585   onDestroy: function onDestroy() {
  19586     var editedElementView = this.getOption('editedElementView');
  19587 
  19588     if (editedElementView) {
  19589       editedElementView.$el.removeClass('elementor-element-editable');
  19590     }
  19591 
  19592     this.model.trigger('editor:close');
  19593     this.triggerMethod('editor:destroy');
  19594   },
  19595   onRender: function onRender() {
  19596     var editedElementView = this.getOption('editedElementView');
  19597 
  19598     if (editedElementView) {
  19599       editedElementView.$el.addClass('elementor-element-editable');
  19600     }
  19601   },
  19602   onDeviceModeChange: function onDeviceModeChange() {
  19603     ControlsStack.prototype.onDeviceModeChange.apply(this, arguments);
  19604     this.scrollToEditedElement();
  19605   },
  19606   onChildviewSettingsChange: function onChildviewSettingsChange(childView) {
  19607     var editedElementView = this.getOption('editedElementView'),
  19608         editedElementType = editedElementView.model.get('elType');
  19609 
  19610     if ('widget' === editedElementType) {
  19611       editedElementType = editedElementView.model.get('widgetType');
  19612     }
  19613 
  19614     elementor.channels.editor.trigger('change', childView, editedElementView).trigger('change:' + editedElementType, childView, editedElementView).trigger('change:' + editedElementType + ':' + childView.model.get('name'), childView, editedElementView);
  19615   }
  19616 });
  19617 module.exports = EditorView;
  19618 
  19619 /***/ }),
  19620 
  19621 /***/ "../assets/dev/js/editor/regions/panel/pages/editor/commands/index.js":
  19622 /*!****************************************************************************!*\
  19623   !*** ../assets/dev/js/editor/regions/panel/pages/editor/commands/index.js ***!
  19624   \****************************************************************************/
  19625 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  19626 
  19627 "use strict";
  19628 
  19629 
  19630 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  19631 
  19632 _Object$defineProperty(exports, "__esModule", {
  19633   value: true
  19634 });
  19635 
  19636 _Object$defineProperty(exports, "Open", {
  19637   enumerable: true,
  19638   get: function get() {
  19639     return _open.Open;
  19640   }
  19641 });
  19642 
  19643 var _open = __webpack_require__(/*! ./open */ "../assets/dev/js/editor/regions/panel/pages/editor/commands/open.js");
  19644 
  19645 /***/ }),
  19646 
  19647 /***/ "../assets/dev/js/editor/regions/panel/pages/editor/commands/open.js":
  19648 /*!***************************************************************************!*\
  19649   !*** ../assets/dev/js/editor/regions/panel/pages/editor/commands/open.js ***!
  19650   \***************************************************************************/
  19651 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  19652 
  19653 "use strict";
  19654 
  19655 
  19656 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  19657 
  19658 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  19659 
  19660 _Object$defineProperty(exports, "__esModule", {
  19661   value: true
  19662 });
  19663 
  19664 exports.default = exports.Open = void 0;
  19665 
  19666 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  19667 
  19668 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  19669 
  19670 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  19671 
  19672 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  19673 
  19674 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  19675 
  19676 var Open = /*#__PURE__*/function (_CommandBase) {
  19677   (0, _inherits2.default)(Open, _CommandBase);
  19678 
  19679   var _super = (0, _createSuper2.default)(Open);
  19680 
  19681   function Open() {
  19682     (0, _classCallCheck2.default)(this, Open);
  19683     return _super.apply(this, arguments);
  19684   }
  19685 
  19686   (0, _createClass2.default)(Open, [{
  19687     key: "apply",
  19688     value: function apply(args) {
  19689       if (!this.component.setDefaultTab(args)) {
  19690         elementorCommon.helpers.softDeprecated("model.trigger( 'request:edit' )", '2.9.0', 'editSettings.defaultEditRoute');
  19691         args.model.trigger('request:edit');
  19692       } else {
  19693         $e.route(this.component.getDefaultRoute(), args);
  19694       } // BC: Run hooks after the route render's the view
  19695 
  19696 
  19697       var elementType = args.model.get('elType'),
  19698           widgetType = args.model.get('widgetType'); // Example: panel/open_editor/widget
  19699 
  19700       elementor.hooks.doAction("panel/open_editor/".concat(elementType), this.component.manager, args.model, args.view); // Example: panel/open_editor/widget/heading
  19701 
  19702       elementor.hooks.doAction("panel/open_editor/".concat(elementType, "/").concat(widgetType), this.component.manager, args.model, args.view);
  19703     }
  19704   }]);
  19705   return Open;
  19706 }(_commandBase.default);
  19707 
  19708 exports.Open = Open;
  19709 var _default = Open;
  19710 exports.default = _default;
  19711 
  19712 /***/ }),
  19713 
  19714 /***/ "../assets/dev/js/editor/regions/panel/pages/editor/component.js":
  19715 /*!***********************************************************************!*\
  19716   !*** ../assets/dev/js/editor/regions/panel/pages/editor/component.js ***!
  19717   \***********************************************************************/
  19718 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  19719 
  19720 "use strict";
  19721 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  19722 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
  19723 
  19724 
  19725 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  19726 
  19727 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
  19728 
  19729 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  19730 
  19731 _Object$defineProperty(exports, "__esModule", {
  19732   value: true
  19733 });
  19734 
  19735 exports.default = void 0;
  19736 
  19737 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  19738 
  19739 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  19740 
  19741 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  19742 
  19743 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  19744 
  19745 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  19746 
  19747 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  19748 
  19749 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  19750 
  19751 var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));
  19752 
  19753 var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/regions/panel/pages/editor/commands/index.js"));
  19754 
  19755 var Component = /*#__PURE__*/function (_ComponentBase) {
  19756   (0, _inherits2.default)(Component, _ComponentBase);
  19757 
  19758   var _super = (0, _createSuper2.default)(Component);
  19759 
  19760   function Component() {
  19761     (0, _classCallCheck2.default)(this, Component);
  19762     return _super.apply(this, arguments);
  19763   }
  19764 
  19765   (0, _createClass2.default)(Component, [{
  19766     key: "__construct",
  19767     value: function __construct(args) {
  19768       (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "__construct", this).call(this, args); // Remember last used tab.
  19769 
  19770       this.activeTabs = {};
  19771     }
  19772   }, {
  19773     key: "getNamespace",
  19774     value: function getNamespace() {
  19775       return 'panel/editor';
  19776     }
  19777   }, {
  19778     key: "defaultTabs",
  19779     value: function defaultTabs() {
  19780       return {
  19781         content: {
  19782           title: __('Content', 'elementor')
  19783         },
  19784         style: {
  19785           title: __('Style', 'elementor')
  19786         },
  19787         advanced: {
  19788           title: __('Advanced', 'elementor')
  19789         },
  19790         layout: {
  19791           title: __('Layout', 'elementor')
  19792         }
  19793       };
  19794     }
  19795   }, {
  19796     key: "defaultCommands",
  19797     value: function defaultCommands() {
  19798       return this.importCommands(commands);
  19799     }
  19800   }, {
  19801     key: "getTabsWrapperSelector",
  19802     value: function getTabsWrapperSelector() {
  19803       return '.elementor-panel-navigation';
  19804     }
  19805   }, {
  19806     key: "renderTab",
  19807     value: function renderTab(tab, args) {
  19808       var model = args.model,
  19809           view = args.view,
  19810           title = sprintf(__('Edit %s', 'elementor'), elementor.getElementData(model).title);
  19811       elementor.getPanelView().setPage('editor', title, {
  19812         tab: tab,
  19813         model: model,
  19814         controls: elementor.getElementControls(model),
  19815         editedElementView: view
  19816       });
  19817     }
  19818   }, {
  19819     key: "activateTab",
  19820     value: function activateTab(tab, args) {
  19821       this.activeTabs[args.model.id] = tab;
  19822       (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "activateTab", this).call(this, tab, args);
  19823     }
  19824   }, {
  19825     key: "setDefaultTab",
  19826     value: function setDefaultTab(args) {
  19827       var defaultTab;
  19828       var editSettings = args.model.get('editSettings');
  19829 
  19830       if (this.activeTabs[args.model.id]) {
  19831         defaultTab = this.activeTabs[args.model.id];
  19832       } else if (editSettings && editSettings.get('defaultEditRoute')) {
  19833         defaultTab = editSettings.get('defaultEditRoute');
  19834       }
  19835 
  19836       if (defaultTab) {
  19837         // Ensure tab is exist.
  19838         var controlsTabs = elementor.getElementData(args.model).tabs_controls; // Fallback to first tab.
  19839 
  19840         if (!controlsTabs[defaultTab]) {
  19841           defaultTab = (0, _keys.default)(controlsTabs)[0];
  19842         }
  19843 
  19844         this.setDefaultRoute(defaultTab);
  19845         return true;
  19846       }
  19847 
  19848       return false;
  19849     }
  19850   }]);
  19851   return Component;
  19852 }(_componentBase.default);
  19853 
  19854 exports.default = Component;
  19855 
  19856 /***/ }),
  19857 
  19858 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/collections/categories.js":
  19859 /*!**************************************************************************************!*\
  19860   !*** ../assets/dev/js/editor/regions/panel/pages/elements/collections/categories.js ***!
  19861   \**************************************************************************************/
  19862 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  19863 
  19864 "use strict";
  19865 
  19866 
  19867 var PanelElementsCategory = __webpack_require__(/*! ../models/element */ "../assets/dev/js/editor/regions/panel/pages/elements/models/element.js"),
  19868     PanelElementsCategoriesCollection;
  19869 
  19870 PanelElementsCategoriesCollection = Backbone.Collection.extend({
  19871   model: PanelElementsCategory
  19872 });
  19873 module.exports = PanelElementsCategoriesCollection;
  19874 
  19875 /***/ }),
  19876 
  19877 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/collections/elements.js":
  19878 /*!************************************************************************************!*\
  19879   !*** ../assets/dev/js/editor/regions/panel/pages/elements/collections/elements.js ***!
  19880   \************************************************************************************/
  19881 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  19882 
  19883 "use strict";
  19884 
  19885 
  19886 var PanelElementsElementModel = __webpack_require__(/*! ../models/element */ "../assets/dev/js/editor/regions/panel/pages/elements/models/element.js"),
  19887     PanelElementsElementsCollection;
  19888 
  19889 PanelElementsElementsCollection = Backbone.Collection.extend({
  19890   model: PanelElementsElementModel
  19891   /*,
  19892   comparator: 'title'*/
  19893 
  19894 });
  19895 module.exports = PanelElementsElementsCollection;
  19896 
  19897 /***/ }),
  19898 
  19899 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/component.js":
  19900 /*!*************************************************************************!*\
  19901   !*** ../assets/dev/js/editor/regions/panel/pages/elements/component.js ***!
  19902   \*************************************************************************/
  19903 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  19904 
  19905 "use strict";
  19906 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  19907 
  19908 
  19909 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  19910 
  19911 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  19912 
  19913 _Object$defineProperty(exports, "__esModule", {
  19914   value: true
  19915 });
  19916 
  19917 exports.default = void 0;
  19918 
  19919 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  19920 
  19921 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  19922 
  19923 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  19924 
  19925 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  19926 
  19927 var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));
  19928 
  19929 var Component = /*#__PURE__*/function (_ComponentBase) {
  19930   (0, _inherits2.default)(Component, _ComponentBase);
  19931 
  19932   var _super = (0, _createSuper2.default)(Component);
  19933 
  19934   function Component() {
  19935     (0, _classCallCheck2.default)(this, Component);
  19936     return _super.apply(this, arguments);
  19937   }
  19938 
  19939   (0, _createClass2.default)(Component, [{
  19940     key: "getNamespace",
  19941     value: function getNamespace() {
  19942       return 'panel/elements';
  19943     }
  19944   }, {
  19945     key: "defaultTabs",
  19946     value: function defaultTabs() {
  19947       return {
  19948         categories: {
  19949           title: __('Elements', 'elementor')
  19950         },
  19951         global: {
  19952           title: __('Global', 'elementor')
  19953         }
  19954       };
  19955     }
  19956   }, {
  19957     key: "getTabsWrapperSelector",
  19958     value: function getTabsWrapperSelector() {
  19959       return '#elementor-panel-elements-navigation';
  19960     }
  19961   }, {
  19962     key: "renderTab",
  19963     value: function renderTab(tab) {
  19964       this.manager.setPage('elements').showView(tab);
  19965     }
  19966   }]);
  19967   return Component;
  19968 }(_componentBase.default);
  19969 
  19970 exports.default = Component;
  19971 
  19972 /***/ }),
  19973 
  19974 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/elements.js":
  19975 /*!************************************************************************!*\
  19976   !*** ../assets/dev/js/editor/regions/panel/pages/elements/elements.js ***!
  19977   \************************************************************************/
  19978 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  19979 
  19980 "use strict";
  19981 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  19982 
  19983 
  19984 __webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");
  19985 
  19986 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  19987 
  19988 var PanelElementsCategoriesCollection = __webpack_require__(/*! ./collections/categories */ "../assets/dev/js/editor/regions/panel/pages/elements/collections/categories.js"),
  19989     PanelElementsElementsCollection = __webpack_require__(/*! ./collections/elements */ "../assets/dev/js/editor/regions/panel/pages/elements/collections/elements.js"),
  19990     PanelElementsCategoriesView = __webpack_require__(/*! ./views/categories */ "../assets/dev/js/editor/regions/panel/pages/elements/views/categories.js"),
  19991     PanelElementsElementsView = elementor.modules.layouts.panel.pages.elements.views.Elements,
  19992     PanelElementsSearchView = __webpack_require__(/*! ./views/search */ "../assets/dev/js/editor/regions/panel/pages/elements/views/search.js"),
  19993     PanelElementsGlobalView = __webpack_require__(/*! ./views/global */ "../assets/dev/js/editor/regions/panel/pages/elements/views/global.js"),
  19994     PanelElementsLayoutView;
  19995 
  19996 PanelElementsLayoutView = Marionette.LayoutView.extend({
  19997   template: '#tmpl-elementor-panel-elements',
  19998   id: 'elementor-panel-page-elements',
  19999   options: {
  20000     autoFocusSearch: true
  20001   },
  20002   regions: {
  20003     elements: '#elementor-panel-elements-wrapper',
  20004     search: '#elementor-panel-elements-search-area'
  20005   },
  20006   regionViews: {},
  20007   elementsCollection: null,
  20008   categoriesCollection: null,
  20009   initialize: function initialize() {
  20010     this.listenTo(elementor.channels.panelElements, 'element:selected', this.destroy);
  20011     this.initElementsCollection();
  20012     this.initCategoriesCollection();
  20013     this.initRegionViews();
  20014   },
  20015   initRegionViews: function initRegionViews() {
  20016     var regionViews = {
  20017       elements: {
  20018         region: this.elements,
  20019         view: PanelElementsElementsView,
  20020         options: {
  20021           collection: this.elementsCollection
  20022         }
  20023       },
  20024       categories: {
  20025         region: this.elements,
  20026         view: PanelElementsCategoriesView,
  20027         options: {
  20028           collection: this.categoriesCollection
  20029         }
  20030       },
  20031       search: {
  20032         region: this.search,
  20033         view: PanelElementsSearchView
  20034       },
  20035       global: {
  20036         region: this.elements,
  20037         view: PanelElementsGlobalView
  20038       }
  20039     };
  20040     this.regionViews = elementor.hooks.applyFilters('panel/elements/regionViews', regionViews);
  20041   },
  20042   initElementsCollection: function initElementsCollection() {
  20043     var elementsCollection = new PanelElementsElementsCollection(),
  20044         sectionConfig = elementor.config.elements.section;
  20045     elementsCollection.add({
  20046       title: __('Inner Section', 'elementor'),
  20047       elType: 'section',
  20048       categories: ['basic'],
  20049       keywords: ['row', 'columns', 'nested'],
  20050       icon: sectionConfig.icon
  20051     }); // TODO: Change the array from server syntax, and no need each loop for initialize
  20052 
  20053     _.each(elementor.widgetsCache, function (widget) {
  20054       if (elementor.config.document.panel.widgets_settings[widget.widget_type]) {
  20055         widget = _.extend(widget, elementor.config.document.panel.widgets_settings[widget.widget_type]);
  20056       }
  20057 
  20058       if (!widget.show_in_panel) {
  20059         return;
  20060       }
  20061 
  20062       elementsCollection.add({
  20063         title: widget.title,
  20064         elType: widget.elType,
  20065         categories: widget.categories,
  20066         keywords: widget.keywords,
  20067         icon: widget.icon,
  20068         widgetType: widget.widget_type,
  20069         custom: widget.custom,
  20070         editable: widget.editable
  20071       });
  20072     });
  20073 
  20074     jQuery.each(elementor.config.promotionWidgets, function (index, widget) {
  20075       elementsCollection.add({
  20076         name: widget.name,
  20077         title: widget.title,
  20078         icon: widget.icon,
  20079         categories: JSON.parse(widget.categories),
  20080         editable: false
  20081       });
  20082     });
  20083     this.elementsCollection = elementsCollection;
  20084   },
  20085   initCategoriesCollection: function initCategoriesCollection() {
  20086     var categories = {};
  20087     this.elementsCollection.each(function (element) {
  20088       _.each(element.get('categories'), function (category) {
  20089         if (!categories[category]) {
  20090           categories[category] = [];
  20091         }
  20092 
  20093         categories[category].push(element);
  20094       });
  20095     });
  20096     var categoriesCollection = new PanelElementsCategoriesCollection();
  20097 
  20098     _.each(elementor.config.document.panel.elements_categories, function (categoryConfig, categoryName) {
  20099       if (!categories[categoryName]) {
  20100         return;
  20101       } // Set defaults.
  20102 
  20103 
  20104       if ('undefined' === typeof categoryConfig.active) {
  20105         categoryConfig.active = true;
  20106       }
  20107 
  20108       if ('undefined' === typeof categoryConfig.icon) {
  20109         categoryConfig.icon = 'font';
  20110       }
  20111 
  20112       categoriesCollection.add({
  20113         name: categoryName,
  20114         title: categoryConfig.title,
  20115         icon: categoryConfig.icon,
  20116         defaultActive: categoryConfig.active,
  20117         items: categories[categoryName]
  20118       });
  20119     });
  20120 
  20121     this.categoriesCollection = categoriesCollection;
  20122   },
  20123   showView: function showView(viewName) {
  20124     var viewDetails = this.regionViews[viewName],
  20125         options = viewDetails.options || {};
  20126     viewDetails.region.show(new viewDetails.view(options));
  20127   },
  20128   clearSearchInput: function clearSearchInput() {
  20129     this.getChildView('search').clearInput();
  20130   },
  20131   changeFilter: function changeFilter(filterValue) {
  20132     elementor.channels.panelElements.reply('filter:value', filterValue).trigger('filter:change');
  20133   },
  20134   clearFilters: function clearFilters() {
  20135     this.changeFilter(null);
  20136     this.clearSearchInput();
  20137   },
  20138   focusSearch: function focusSearch() {
  20139     if (!elementor.userCan('design') || !this.search
  20140     /* default panel is not elements */
  20141     || !this.search.currentView
  20142     /* on global elements empty */
  20143     ) {
  20144       return;
  20145     }
  20146 
  20147     this.search.currentView.ui.input.focus();
  20148   },
  20149   onChildviewChildrenRender: function onChildviewChildrenRender() {
  20150     elementor.getPanelView().updateScrollbar();
  20151   },
  20152   onChildviewSearchChangeInput: function onChildviewSearchChangeInput(child) {
  20153     this.changeFilter(child.ui.input.val(), 'search');
  20154   },
  20155   onDestroy: function onDestroy() {
  20156     elementor.channels.panelElements.reply('filter:value', null);
  20157   },
  20158   onShow: function onShow() {
  20159     this.showView('search');
  20160 
  20161     if (this.options.autoFocusSearch) {
  20162       setTimeout(this.focusSearch.bind(this));
  20163     }
  20164   }
  20165 });
  20166 module.exports = PanelElementsLayoutView;
  20167 
  20168 /***/ }),
  20169 
  20170 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/models/element.js":
  20171 /*!******************************************************************************!*\
  20172   !*** ../assets/dev/js/editor/regions/panel/pages/elements/models/element.js ***!
  20173   \******************************************************************************/
  20174 /***/ ((module) => {
  20175 
  20176 "use strict";
  20177 
  20178 
  20179 var PanelElementsElementModel;
  20180 PanelElementsElementModel = Backbone.Model.extend({
  20181   defaults: {
  20182     title: '',
  20183     categories: [],
  20184     keywords: [],
  20185     icon: '',
  20186     elType: 'widget',
  20187     widgetType: ''
  20188   }
  20189 });
  20190 module.exports = PanelElementsElementModel;
  20191 
  20192 /***/ }),
  20193 
  20194 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/categories.js":
  20195 /*!********************************************************************************!*\
  20196   !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/categories.js ***!
  20197   \********************************************************************************/
  20198 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  20199 
  20200 "use strict";
  20201 
  20202 
  20203 var PanelElementsCategoryView = __webpack_require__(/*! ./category */ "../assets/dev/js/editor/regions/panel/pages/elements/views/category.js"),
  20204     PanelElementsCategoriesView;
  20205 
  20206 PanelElementsCategoriesView = Marionette.CompositeView.extend({
  20207   template: '#tmpl-elementor-panel-categories',
  20208   childView: PanelElementsCategoryView,
  20209   childViewContainer: '#elementor-panel-categories',
  20210   id: 'elementor-panel-elements-categories',
  20211   initialize: function initialize() {
  20212     this.listenTo(elementor.channels.panelElements, 'filter:change', this.onPanelElementsFilterChange);
  20213   },
  20214   onPanelElementsFilterChange: function onPanelElementsFilterChange() {
  20215     if (elementor.channels.panelElements.request('filter:value')) {
  20216       elementor.getPanelView().getCurrentPageView().showView('elements');
  20217     }
  20218   }
  20219 });
  20220 module.exports = PanelElementsCategoriesView;
  20221 
  20222 /***/ }),
  20223 
  20224 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/category.js":
  20225 /*!******************************************************************************!*\
  20226   !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/category.js ***!
  20227   \******************************************************************************/
  20228 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  20229 
  20230 "use strict";
  20231 
  20232 
  20233 var PanelElementsElementsCollection = __webpack_require__(/*! ../collections/elements */ "../assets/dev/js/editor/regions/panel/pages/elements/collections/elements.js"),
  20234     PanelElementsCategoryView;
  20235 
  20236 PanelElementsCategoryView = Marionette.CompositeView.extend({
  20237   template: '#tmpl-elementor-panel-elements-category',
  20238   className: 'elementor-panel-category',
  20239   ui: {
  20240     title: '.elementor-panel-category-title',
  20241     items: '.elementor-panel-category-items'
  20242   },
  20243   events: {
  20244     'click @ui.title': 'onTitleClick'
  20245   },
  20246   id: function id() {
  20247     return 'elementor-panel-category-' + this.model.get('name');
  20248   },
  20249   childView: __webpack_require__(/*! elementor-panel/pages/elements/views/element */ "../assets/dev/js/editor/regions/panel/pages/elements/views/element.js"),
  20250   childViewContainer: '.elementor-panel-category-items',
  20251   initialize: function initialize() {
  20252     this.collection = new PanelElementsElementsCollection(this.model.get('items'));
  20253   },
  20254   onRender: function onRender() {
  20255     var isActive = elementor.channels.panelElements.request('category:' + this.model.get('name') + ':active');
  20256 
  20257     if (undefined === isActive) {
  20258       isActive = this.model.get('defaultActive');
  20259     }
  20260 
  20261     if (isActive) {
  20262       this.$el.addClass('elementor-active');
  20263     } else {
  20264       this.ui.items.css('display', 'none');
  20265     }
  20266   },
  20267   onTitleClick: function onTitleClick() {
  20268     var $items = this.ui.items,
  20269         activeClass = 'elementor-active',
  20270         isActive = this.$el.hasClass(activeClass),
  20271         slideFn = isActive ? 'slideUp' : 'slideDown';
  20272     elementor.channels.panelElements.reply('category:' + this.model.get('name') + ':active', !isActive);
  20273     this.$el.toggleClass(activeClass, !isActive);
  20274     $items[slideFn](300, function () {
  20275       elementor.getPanelView().updateScrollbar();
  20276     });
  20277   }
  20278 });
  20279 module.exports = PanelElementsCategoryView;
  20280 
  20281 /***/ }),
  20282 
  20283 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/element.js":
  20284 /*!*****************************************************************************!*\
  20285   !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/element.js ***!
  20286   \*****************************************************************************/
  20287 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  20288 
  20289 "use strict";
  20290 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
  20291 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  20292 
  20293 
  20294 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  20295 
  20296 module.exports = Marionette.ItemView.extend({
  20297   template: '#tmpl-elementor-element-library-element',
  20298   className: function className() {
  20299     var className = 'elementor-element-wrapper';
  20300 
  20301     if (!this.isEditable()) {
  20302       className += ' elementor-element--promotion';
  20303     }
  20304 
  20305     return className;
  20306   },
  20307   events: function events() {
  20308     var events = {};
  20309 
  20310     if (!this.isEditable()) {
  20311       events.mousedown = 'onMouseDown';
  20312     }
  20313 
  20314     return events;
  20315   },
  20316   ui: {
  20317     element: '.elementor-element'
  20318   },
  20319   isEditable: function isEditable() {
  20320     return false !== this.model.get('editable');
  20321   },
  20322   onRender: function onRender() {
  20323     var _this = this;
  20324 
  20325     if (!elementor.userCan('design') || !this.isEditable()) {
  20326       return;
  20327     }
  20328 
  20329     this.ui.element.html5Draggable({
  20330       onDragStart: function onDragStart() {
  20331         elementor.channels.panelElements.reply('element:selected', _this).trigger('element:drag:start');
  20332       },
  20333       onDragEnd: function onDragEnd() {
  20334         elementor.channels.panelElements.trigger('element:drag:end');
  20335       },
  20336       groups: ['elementor-element']
  20337     });
  20338   },
  20339   onMouseDown: function onMouseDown() {
  20340     var title = this.model.get('title');
  20341     elementor.promotion.showDialog({
  20342       /* translators: %s: Widget Title. */
  20343       headerMessage: sprintf(__('%s Widget', 'elementor'), title),
  20344 
  20345       /* translators: %s: Widget Title. */
  20346       message: sprintf(__('Use %s widget and dozens more pro features to extend your toolbox and build sites faster and better.', 'elementor'), title),
  20347       top: '-7',
  20348       element: this.el,
  20349       actionURL: elementor.config.elementPromotionURL.replace('%s', this.model.get('name'))
  20350     });
  20351   }
  20352 });
  20353 
  20354 /***/ }),
  20355 
  20356 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/elements.js":
  20357 /*!******************************************************************************!*\
  20358   !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/elements.js ***!
  20359   \******************************************************************************/
  20360 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  20361 
  20362 "use strict";
  20363 
  20364 
  20365 var PanelElementsElementsView;
  20366 PanelElementsElementsView = Marionette.CollectionView.extend({
  20367   childView: __webpack_require__(/*! elementor-panel/pages/elements/views/element */ "../assets/dev/js/editor/regions/panel/pages/elements/views/element.js"),
  20368   id: 'elementor-panel-elements',
  20369   className: 'elementor-responsive-panel',
  20370   initialize: function initialize() {
  20371     this.listenTo(elementor.channels.panelElements, 'filter:change', this.onFilterChanged);
  20372   },
  20373   filter: function filter(childModel) {
  20374     var filterValue = elementor.channels.panelElements.request('filter:value');
  20375 
  20376     if (!filterValue) {
  20377       return true;
  20378     }
  20379 
  20380     if (-1 !== childModel.get('title').toLowerCase().indexOf(filterValue.toLowerCase())) {
  20381       return true;
  20382     } // Get the filter input localized value.
  20383 
  20384 
  20385     var localized = elementor.channels.panelElements.request('filter:localized') || '';
  20386     return _.any(childModel.get('keywords'), function (keyword) {
  20387       keyword = keyword.toLowerCase();
  20388       var regularFilter = -1 !== keyword.indexOf(filterValue.toLowerCase()),
  20389           localizedFilter = localized && -1 !== keyword.indexOf(localized.toLowerCase());
  20390       return regularFilter || localizedFilter;
  20391     });
  20392   },
  20393   onFilterChanged: function onFilterChanged() {
  20394     var filterValue = elementor.channels.panelElements.request('filter:value');
  20395 
  20396     if (!filterValue) {
  20397       this.onFilterEmpty();
  20398     }
  20399 
  20400     this._renderChildren();
  20401 
  20402     this.triggerMethod('children:render');
  20403   },
  20404   onFilterEmpty: function onFilterEmpty() {
  20405     $e.routes.refreshContainer('panel');
  20406   }
  20407 });
  20408 module.exports = PanelElementsElementsView;
  20409 
  20410 /***/ }),
  20411 
  20412 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/global.js":
  20413 /*!****************************************************************************!*\
  20414   !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/global.js ***!
  20415   \****************************************************************************/
  20416 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  20417 
  20418 "use strict";
  20419 
  20420 
  20421 __webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");
  20422 
  20423 module.exports = Marionette.ItemView.extend({
  20424   template: '#tmpl-elementor-panel-global',
  20425   id: 'elementor-panel-global',
  20426   initialize: function initialize() {
  20427     elementor.getPanelView().getCurrentPageView().search.reset();
  20428   }
  20429 });
  20430 
  20431 /***/ }),
  20432 
  20433 /***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/search.js":
  20434 /*!****************************************************************************!*\
  20435   !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/search.js ***!
  20436   \****************************************************************************/
  20437 /***/ ((module) => {
  20438 
  20439 "use strict";
  20440 
  20441 
  20442 var PanelElementsSearchView;
  20443 PanelElementsSearchView = Marionette.ItemView.extend({
  20444   template: '#tmpl-elementor-panel-element-search',
  20445   localizedValue: '',
  20446   id: 'elementor-panel-elements-search-wrapper',
  20447   ui: {
  20448     input: 'input'
  20449   },
  20450   events: {
  20451     'keyup @ui.input': 'onInputChanged',
  20452     'input @ui.input': 'onInputChanged'
  20453   },
  20454   clearInput: function clearInput() {
  20455     this.ui.input.val('');
  20456   },
  20457   onInputChanged: function onInputChanged(event) {
  20458     var ESC_KEY = 27;
  20459 
  20460     if (ESC_KEY === event.keyCode) {
  20461       this.clearInput();
  20462     } // Don't catch keyboard shortcut.
  20463 
  20464 
  20465     if (event.shiftKey || event.ctrlKey || event.altKey) {
  20466       this.triggerMethod('search:change:input');
  20467       return;
  20468     } // Reset localized value if the input is empty or some chars were deleted.
  20469 
  20470 
  20471     if (!event.target.value || event.target.value.length < this.localizedValue.length) {
  20472       this.localizedValue = '';
  20473     }
  20474 
  20475     var isLetter = event.keyCode >= 65 && event.keyCode <= 90,
  20476         isSpace = 32 === event.keyCode;
  20477 
  20478     if (isLetter || isSpace) {
  20479       this.localizedValue += String.fromCharCode(event.keyCode);
  20480     } // Broadcast the localized value.
  20481 
  20482 
  20483     elementor.channels.panelElements.reply('filter:localized', this.localizedValue);
  20484     this.triggerMethod('search:change:input');
  20485   }
  20486 });
  20487 module.exports = PanelElementsSearchView;
  20488 
  20489 /***/ }),
  20490 
  20491 /***/ "../assets/dev/js/editor/regions/panel/pages/menu/base.js":
  20492 /*!****************************************************************!*\
  20493   !*** ../assets/dev/js/editor/regions/panel/pages/menu/base.js ***!
  20494   \****************************************************************/
  20495 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  20496 
  20497 "use strict";
  20498 
  20499 
  20500 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  20501 
  20502 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  20503 
  20504 _Object$defineProperty(exports, "__esModule", {
  20505   value: true
  20506 });
  20507 
  20508 exports.default = void 0;
  20509 
  20510 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  20511 
  20512 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  20513 
  20514 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  20515 
  20516 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  20517 
  20518 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  20519 
  20520 var _group = _interopRequireDefault(__webpack_require__(/*! elementor-panel/pages/menu/views/group */ "../assets/dev/js/editor/regions/panel/pages/menu/views/group.js"));
  20521 
  20522 var MenuPageView = /*#__PURE__*/function (_Marionette$Composite) {
  20523   (0, _inherits2.default)(MenuPageView, _Marionette$Composite);
  20524 
  20525   var _super = (0, _createSuper2.default)(MenuPageView);
  20526 
  20527   function MenuPageView() {
  20528     (0, _classCallCheck2.default)(this, MenuPageView);
  20529     return _super.apply(this, arguments);
  20530   }
  20531 
  20532   (0, _createClass2.default)(MenuPageView, [{
  20533     key: "id",
  20534     value: function id() {
  20535       return 'elementor-panel-page-menu';
  20536     }
  20537   }, {
  20538     key: "getTemplate",
  20539     value: function getTemplate() {
  20540       return '#tmpl-elementor-panel-menu';
  20541     }
  20542   }, {
  20543     key: "getChildView",
  20544     value: function getChildView() {
  20545       return _group.default;
  20546     }
  20547   }, {
  20548     key: "childViewContainer",
  20549     value: function childViewContainer() {
  20550       return '#elementor-panel-page-menu-content';
  20551     } // Remove empty groups that exist for BC.
  20552 
  20553   }, {
  20554     key: "filter",
  20555     value: function filter(child) {
  20556       return child.get('items').length;
  20557     }
  20558   }]);
  20559   return MenuPageView;
  20560 }(Marionette.CompositeView);
  20561 
  20562 exports.default = MenuPageView;
  20563 
  20564 MenuPageView.addItem = function (groups, itemData, groupName, before) {
  20565   var group = groups.findWhere({
  20566     name: groupName
  20567   });
  20568 
  20569   if (!group) {
  20570     return;
  20571   }
  20572 
  20573   var items = group.get('items'),
  20574       exists = _.findWhere(items, {
  20575     name: itemData.name
  20576   }); // Remove if exist.
  20577 
  20578 
  20579   var beforeItem;
  20580 
  20581   if (exists) {
  20582     items.splice(items.indexOf(exists), 1);
  20583   }
  20584 
  20585   if (before) {
  20586     beforeItem = _.findWhere(items, {
  20587       name: before
  20588     });
  20589   }
  20590 
  20591   if (beforeItem) {
  20592     items.splice(items.indexOf(beforeItem), 0, itemData);
  20593   } else {
  20594     items.push(itemData);
  20595   }
  20596 };
  20597 
  20598 /***/ }),
  20599 
  20600 /***/ "../assets/dev/js/editor/regions/panel/pages/menu/menu.js":
  20601 /*!****************************************************************!*\
  20602   !*** ../assets/dev/js/editor/regions/panel/pages/menu/menu.js ***!
  20603   \****************************************************************/
  20604 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  20605 
  20606 "use strict";
  20607 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  20608 
  20609 
  20610 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  20611 
  20612 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  20613 
  20614 _Object$defineProperty(exports, "__esModule", {
  20615   value: true
  20616 });
  20617 
  20618 exports.default = void 0;
  20619 
  20620 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  20621 
  20622 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  20623 
  20624 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  20625 
  20626 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  20627 
  20628 var _base = _interopRequireDefault(__webpack_require__(/*! elementor-panel/pages/menu/base */ "../assets/dev/js/editor/regions/panel/pages/menu/base.js"));
  20629 
  20630 var PanelMenu = /*#__PURE__*/function (_MenuPageView) {
  20631   (0, _inherits2.default)(PanelMenu, _MenuPageView);
  20632 
  20633   var _super = (0, _createSuper2.default)(PanelMenu);
  20634 
  20635   function PanelMenu() {
  20636     (0, _classCallCheck2.default)(this, PanelMenu);
  20637     return _super.apply(this, arguments);
  20638   }
  20639 
  20640   (0, _createClass2.default)(PanelMenu, [{
  20641     key: "initialize",
  20642     value: function initialize() {
  20643       this.collection = PanelMenu.getGroups();
  20644     }
  20645   }, {
  20646     key: "getArrowClass",
  20647     value: function getArrowClass() {
  20648       return 'eicon-chevron-' + (elementorCommon.config.isRTL ? 'right' : 'left');
  20649     }
  20650   }, {
  20651     key: "onRender",
  20652     value: function onRender() {
  20653       elementor.getPanelView().getHeaderView().ui.menuIcon.removeClass('eicon-menu-bar').addClass(this.getArrowClass());
  20654     }
  20655   }, {
  20656     key: "onDestroy",
  20657     value: function onDestroy() {
  20658       elementor.getPanelView().getHeaderView().ui.menuIcon.removeClass(this.getArrowClass()).addClass('eicon-menu-bar');
  20659     }
  20660   }]);
  20661   return PanelMenu;
  20662 }(_base.default);
  20663 
  20664 exports.default = PanelMenu;
  20665 PanelMenu.groups = null;
  20666 
  20667 PanelMenu.initGroups = function () {
  20668   PanelMenu.groups = new Backbone.Collection([]); // Keep the old `more` for BC, since 3.0.0.
  20669 
  20670   PanelMenu.groups.add({
  20671     name: 'more',
  20672     title: __('More', 'elementor'),
  20673     items: []
  20674   });
  20675   PanelMenu.groups.add({
  20676     name: 'navigate_from_page',
  20677     title: __('Navigate From Page', 'elementor'),
  20678     items: [// Todo: internal command.
  20679     {
  20680       name: 'view-page',
  20681       icon: 'eicon-preview-thin',
  20682       title: __('View Page', 'elementor'),
  20683       type: 'link',
  20684       link: elementor.config.document.urls.permalink
  20685     }, // Todo: internal command.
  20686     {
  20687       name: 'exit-to-dashboard',
  20688       icon: 'eicon-wordpress-light',
  20689       title: __('Exit To Dashboard', 'elementor'),
  20690       type: 'link',
  20691       link: elementor.config.document.urls.exit_to_dashboard
  20692     }]
  20693   });
  20694 
  20695   if (elementor.config.user.is_administrator) {
  20696     PanelMenu.addAdminMenu();
  20697   }
  20698 };
  20699 
  20700 PanelMenu.addAdminMenu = function () {
  20701   PanelMenu.groups.add({
  20702     name: 'style',
  20703     title: __('Settings', 'elementor'),
  20704     items: [{
  20705       name: 'editor-preferences',
  20706       icon: 'eicon-user-preferences',
  20707       title: __('User Preferences', 'elementor'),
  20708       type: 'page',
  20709       callback: function callback() {
  20710         return $e.route('panel/editor-preferences');
  20711       }
  20712     }]
  20713   }, {
  20714     at: 0
  20715   });
  20716   PanelMenu.addItem({
  20717     name: 'finder',
  20718     icon: 'eicon-search',
  20719     title: __('Finder', 'elementor'),
  20720     callback: function callback() {
  20721       return $e.route('finder');
  20722     }
  20723   }, 'navigate_from_page', 'view-page');
  20724 };
  20725 
  20726 PanelMenu.getGroups = function () {
  20727   if (!PanelMenu.groups) {
  20728     PanelMenu.initGroups();
  20729   }
  20730 
  20731   return PanelMenu.groups;
  20732 };
  20733 
  20734 PanelMenu.addItem = function (itemData, groupName, before) {
  20735   _base.default.addItem(PanelMenu.getGroups(), itemData, groupName, before);
  20736 };
  20737 
  20738 /***/ }),
  20739 
  20740 /***/ "../assets/dev/js/editor/regions/panel/pages/menu/views/group.js":
  20741 /*!***********************************************************************!*\
  20742   !*** ../assets/dev/js/editor/regions/panel/pages/menu/views/group.js ***!
  20743   \***********************************************************************/
  20744 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  20745 
  20746 "use strict";
  20747 
  20748 
  20749 var PanelMenuItemView = __webpack_require__(/*! elementor-panel/pages/menu/views/item */ "../assets/dev/js/editor/regions/panel/pages/menu/views/item.js");
  20750 
  20751 module.exports = Marionette.CompositeView.extend({
  20752   template: '#tmpl-elementor-panel-menu-group',
  20753   className: 'elementor-panel-menu-group',
  20754   childView: PanelMenuItemView,
  20755   childViewContainer: '.elementor-panel-menu-items',
  20756   initialize: function initialize() {
  20757     this.collection = new Backbone.Collection(this.model.get('items'));
  20758   },
  20759   onChildviewClick: function onChildviewClick(childView) {
  20760     var callback = childView.model.get('callback');
  20761 
  20762     if (_.isFunction(callback)) {
  20763       callback.call(childView);
  20764     }
  20765   }
  20766 });
  20767 
  20768 /***/ }),
  20769 
  20770 /***/ "../assets/dev/js/editor/regions/panel/pages/menu/views/item.js":
  20771 /*!**********************************************************************!*\
  20772   !*** ../assets/dev/js/editor/regions/panel/pages/menu/views/item.js ***!
  20773   \**********************************************************************/
  20774 /***/ ((module) => {
  20775 
  20776 "use strict";
  20777 
  20778 
  20779 module.exports = Marionette.ItemView.extend({
  20780   template: '#tmpl-elementor-panel-menu-item',
  20781   className: function className() {
  20782     return 'elementor-panel-menu-item elementor-panel-menu-item-' + this.model.get('name');
  20783   },
  20784   triggers: {
  20785     click: {
  20786       event: 'click',
  20787       preventDefault: false
  20788     }
  20789   }
  20790 });
  20791 
  20792 /***/ }),
  20793 
  20794 /***/ "../assets/dev/js/editor/regions/panel/pages/schemes/base.js":
  20795 /*!*******************************************************************!*\
  20796   !*** ../assets/dev/js/editor/regions/panel/pages/schemes/base.js ***!
  20797   \*******************************************************************/
  20798 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  20799 
  20800 "use strict";
  20801 
  20802 
  20803 var childViewTypes = {
  20804   color: __webpack_require__(/*! elementor-panel/pages/schemes/items/color */ "../assets/dev/js/editor/regions/panel/pages/schemes/items/color.js"),
  20805   typography: __webpack_require__(/*! elementor-panel/pages/schemes/items/typography */ "../assets/dev/js/editor/regions/panel/pages/schemes/items/typography.js")
  20806 },
  20807     PanelSchemeBaseView;
  20808 PanelSchemeBaseView = Marionette.CompositeView.extend({
  20809   id: function id() {
  20810     return 'elementor-panel-scheme-' + this.getType();
  20811   },
  20812   className: function className() {
  20813     return 'elementor-panel-scheme elementor-panel-scheme-' + this.getUIType();
  20814   },
  20815   childViewContainer: '.elementor-panel-scheme-items',
  20816   getTemplate: function getTemplate() {
  20817     return Marionette.TemplateCache.get('#tmpl-elementor-panel-schemes-' + this.getType());
  20818   },
  20819   getChildView: function getChildView() {
  20820     return childViewTypes[this.getUIType()];
  20821   },
  20822   getUIType: function getUIType() {
  20823     return this.getType();
  20824   },
  20825   ui: function ui() {
  20826     return {
  20827       saveButton: '.elementor-panel-scheme-save .elementor-button',
  20828       discardButton: '.elementor-panel-scheme-discard .elementor-button',
  20829       resetButton: '.elementor-panel-scheme-reset .elementor-button'
  20830     };
  20831   },
  20832   events: function events() {
  20833     return {
  20834       'click @ui.saveButton': 'saveScheme',
  20835       'click @ui.discardButton': 'discardScheme',
  20836       'click @ui.resetButton': 'setDefaultScheme'
  20837     };
  20838   },
  20839   initialize: function initialize() {
  20840     this.model = new Backbone.Model();
  20841     this.resetScheme();
  20842   },
  20843   getType: function getType() {},
  20844   getScheme: function getScheme() {
  20845     return elementor.schemes.getScheme(this.getType());
  20846   },
  20847   changeChildrenUIValues: function changeChildrenUIValues(schemeItems) {
  20848     var self = this;
  20849 
  20850     _.each(schemeItems, function (value, key) {
  20851       var model = self.collection.findWhere({
  20852         key: key
  20853       }),
  20854           childView = self.children.findByModelCid(model.cid);
  20855       childView.changeUIValue(value);
  20856     });
  20857   },
  20858   discardScheme: function discardScheme() {
  20859     elementor.schemes.resetSchemes(this.getType());
  20860     this.onSchemeChange();
  20861     this.ui.saveButton.prop('disabled', true);
  20862 
  20863     this._renderChildren();
  20864   },
  20865   setSchemeValue: function setSchemeValue(key, value) {
  20866     elementor.schemes.setSchemeValue(this.getType(), key, value);
  20867     this.onSchemeChange();
  20868   },
  20869   saveScheme: function saveScheme() {
  20870     NProgress.start();
  20871     elementor.schemes.saveScheme(this.getType()).done(NProgress.done);
  20872     this.ui.saveButton.prop('disabled', true);
  20873     this.resetScheme();
  20874 
  20875     this._renderChildren();
  20876   },
  20877   setDefaultScheme: function setDefaultScheme() {
  20878     var defaultScheme = elementor.config.default_schemes[this.getType()].items;
  20879     this.changeChildrenUIValues(defaultScheme);
  20880   },
  20881   resetItems: function resetItems() {
  20882     this.model.set('items', this.getScheme().items);
  20883   },
  20884   resetCollection: function resetCollection() {
  20885     var self = this,
  20886         items = self.model.get('items');
  20887     self.collection = new Backbone.Collection();
  20888 
  20889     _.each(items, function (item, key) {
  20890       item.type = self.getType();
  20891       item.key = key;
  20892       self.collection.add(item);
  20893     });
  20894   },
  20895   resetScheme: function resetScheme() {
  20896     this.resetItems();
  20897     this.resetCollection();
  20898   },
  20899   onSchemeChange: function onSchemeChange() {
  20900     elementor.schemes.printSchemesStyle();
  20901   },
  20902   onChildviewValueChange: function onChildviewValueChange(childView, newValue) {
  20903     this.ui.saveButton.removeProp('disabled');
  20904     this.setSchemeValue(childView.model.get('key'), newValue);
  20905   }
  20906 });
  20907 module.exports = PanelSchemeBaseView;
  20908 
  20909 /***/ }),
  20910 
  20911 /***/ "../assets/dev/js/editor/regions/panel/pages/schemes/colors.js":
  20912 /*!*********************************************************************!*\
  20913   !*** ../assets/dev/js/editor/regions/panel/pages/schemes/colors.js ***!
  20914   \*********************************************************************/
  20915 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  20916 
  20917 "use strict";
  20918 
  20919 
  20920 var PanelSchemeBaseView = __webpack_require__(/*! elementor-panel/pages/schemes/base */ "../assets/dev/js/editor/regions/panel/pages/schemes/base.js"),
  20921     PanelSchemeColorsView;
  20922 
  20923 PanelSchemeColorsView = PanelSchemeBaseView.extend({
  20924   ui: function ui() {
  20925     var ui = PanelSchemeBaseView.prototype.ui.apply(this, arguments);
  20926     ui.systemSchemes = '.elementor-panel-scheme-color-system-scheme';
  20927     return ui;
  20928   },
  20929   events: function events() {
  20930     var events = PanelSchemeBaseView.prototype.events.apply(this, arguments);
  20931     events['click @ui.systemSchemes'] = 'onSystemSchemeClick';
  20932     return events;
  20933   },
  20934   getType: function getType() {
  20935     return 'color';
  20936   },
  20937   onSystemSchemeClick: function onSystemSchemeClick(event) {
  20938     var $schemeClicked = jQuery(event.currentTarget),
  20939         schemeName = $schemeClicked.data('schemeName'),
  20940         scheme = elementor.config.system_schemes[this.getType()][schemeName].items;
  20941     this.changeChildrenUIValues(scheme);
  20942   }
  20943 });
  20944 module.exports = PanelSchemeColorsView;
  20945 
  20946 /***/ }),
  20947 
  20948 /***/ "../assets/dev/js/editor/regions/panel/pages/schemes/disabled.js":
  20949 /*!***********************************************************************!*\
  20950   !*** ../assets/dev/js/editor/regions/panel/pages/schemes/disabled.js ***!
  20951   \***********************************************************************/
  20952 /***/ ((module) => {
  20953 
  20954 "use strict";
  20955 
  20956 
  20957 var PanelSchemeDisabledView;
  20958 PanelSchemeDisabledView = Marionette.ItemView.extend({
  20959   template: '#tmpl-elementor-panel-schemes-disabled',
  20960   id: 'elementor-panel-schemes-disabled',
  20961   className: 'elementor-nerd-box',
  20962   disabledTitle: '',
  20963   templateHelpers: function templateHelpers() {
  20964     return {
  20965       disabledTitle: this.disabledTitle
  20966     };
  20967   }
  20968 });
  20969 module.exports = PanelSchemeDisabledView;
  20970 
  20971 /***/ }),
  20972 
  20973 /***/ "../assets/dev/js/editor/regions/panel/pages/schemes/items/base.js":
  20974 /*!*************************************************************************!*\
  20975   !*** ../assets/dev/js/editor/regions/panel/pages/schemes/items/base.js ***!
  20976   \*************************************************************************/
  20977 /***/ ((module) => {
  20978 
  20979 "use strict";
  20980 
  20981 
  20982 var PanelSchemeItemView;
  20983 PanelSchemeItemView = Marionette.ItemView.extend({
  20984   getTemplate: function getTemplate() {
  20985     return Marionette.TemplateCache.get('#tmpl-elementor-panel-scheme-' + this.getUIType() + '-item');
  20986   },
  20987   className: function className() {
  20988     return 'elementor-panel-scheme-item';
  20989   }
  20990 });
  20991 module.exports = PanelSchemeItemView;
  20992 
  20993 /***/ }),
  20994 
  20995 /***/ "../assets/dev/js/editor/regions/panel/pages/schemes/items/color.js":
  20996 /*!**************************************************************************!*\
  20997   !*** ../assets/dev/js/editor/regions/panel/pages/schemes/items/color.js ***!
  20998   \**************************************************************************/
  20999 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  21000 
  21001 "use strict";
  21002 
  21003 
  21004 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  21005 
  21006 var _colorPicker = _interopRequireDefault(__webpack_require__(/*! elementor-editor/utils/color-picker */ "../assets/dev/js/editor/utils/color-picker.js"));
  21007 
  21008 var PanelSchemeItemView = __webpack_require__(/*! elementor-panel/pages/schemes/items/base */ "../assets/dev/js/editor/regions/panel/pages/schemes/items/base.js");
  21009 
  21010 module.exports = PanelSchemeItemView.extend({
  21011   getUIType: function getUIType() {
  21012     return 'color';
  21013   },
  21014   ui: {
  21015     pickerPlaceholder: '.elementor-panel-scheme-color-picker-placeholder'
  21016   },
  21017   changeUIValue: function changeUIValue(newValue) {
  21018     this.colorPicker.picker.setColor(newValue);
  21019   },
  21020   onRender: function onRender() {
  21021     var _this = this;
  21022 
  21023     this.colorPicker = new _colorPicker.default({
  21024       picker: {
  21025         el: this.ui.pickerPlaceholder[0],
  21026         default: this.model.get('value')
  21027       },
  21028       onChange: function onChange() {
  21029         _this.triggerMethod('value:change', _this.colorPicker.getColor());
  21030       },
  21031       onClear: function onClear() {
  21032         _this.triggerMethod('value:change', '');
  21033       }
  21034     });
  21035   },
  21036   onBeforeDestroy: function onBeforeDestroy() {
  21037     this.colorPicker.destroy();
  21038   }
  21039 });
  21040 
  21041 /***/ }),
  21042 
  21043 /***/ "../assets/dev/js/editor/regions/panel/pages/schemes/items/typography.js":
  21044 /*!*******************************************************************************!*\
  21045   !*** ../assets/dev/js/editor/regions/panel/pages/schemes/items/typography.js ***!
  21046   \*******************************************************************************/
  21047 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  21048 
  21049 "use strict";
  21050 
  21051 
  21052 var PanelSchemeItemView = __webpack_require__(/*! elementor-panel/pages/schemes/items/base */ "../assets/dev/js/editor/regions/panel/pages/schemes/items/base.js"),
  21053     PanelSchemeTypographyView;
  21054 
  21055 PanelSchemeTypographyView = PanelSchemeItemView.extend({
  21056   getUIType: function getUIType() {
  21057     return 'typography';
  21058   },
  21059   className: function className() {
  21060     var classes = PanelSchemeItemView.prototype.className.apply(this, arguments);
  21061     return classes + ' elementor-panel-box';
  21062   },
  21063   ui: {
  21064     heading: '.elementor-panel-heading',
  21065     allFields: '.elementor-panel-scheme-typography-item-field',
  21066     inputFields: 'input.elementor-panel-scheme-typography-item-field',
  21067     selectFields: 'select.elementor-panel-scheme-typography-item-field',
  21068     selectFamilyFields: 'select.elementor-panel-scheme-typography-item-field[name="font_family"]'
  21069   },
  21070   events: {
  21071     'input @ui.inputFields': 'onFieldChange',
  21072     'change @ui.selectFields': 'onFieldChange',
  21073     'click @ui.heading': 'toggleVisibility'
  21074   },
  21075   onRender: function onRender() {
  21076     var self = this;
  21077     this.ui.inputFields.add(this.ui.selectFields).each(function () {
  21078       var $this = jQuery(this),
  21079           name = $this.attr('name'),
  21080           value = self.model.get('value')[name];
  21081       $this.val(value);
  21082     });
  21083     this.ui.selectFamilyFields.select2({
  21084       dir: elementorCommon.config.isRTL ? 'rtl' : 'ltr'
  21085     });
  21086   },
  21087   toggleVisibility: function toggleVisibility() {
  21088     this.$el.toggleClass('elementor-open');
  21089   },
  21090   changeUIValue: function changeUIValue(newValue) {
  21091     this.ui.allFields.each(function () {
  21092       var $this = jQuery(this),
  21093           thisName = $this.attr('name'),
  21094           newFieldValue = newValue[thisName];
  21095       $this.val(newFieldValue).trigger('change');
  21096     });
  21097   },
  21098   onFieldChange: function onFieldChange() {
  21099     var currentValue = elementor.schemes.getSchemeValue('typography', this.model.get('key')).value;
  21100     this.triggerMethod('value:change', currentValue);
  21101   }
  21102 });
  21103 module.exports = PanelSchemeTypographyView;
  21104 
  21105 /***/ }),
  21106 
  21107 /***/ "../assets/dev/js/editor/regions/panel/pages/schemes/typography.js":
  21108 /*!*************************************************************************!*\
  21109   !*** ../assets/dev/js/editor/regions/panel/pages/schemes/typography.js ***!
  21110   \*************************************************************************/
  21111 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  21112 
  21113 "use strict";
  21114 
  21115 
  21116 var PanelSchemeBaseView = __webpack_require__(/*! elementor-panel/pages/schemes/base */ "../assets/dev/js/editor/regions/panel/pages/schemes/base.js"),
  21117     PanelSchemeTypographyView;
  21118 
  21119 PanelSchemeTypographyView = PanelSchemeBaseView.extend({
  21120   getType: function getType() {
  21121     return 'typography';
  21122   }
  21123 });
  21124 module.exports = PanelSchemeTypographyView;
  21125 
  21126 /***/ }),
  21127 
  21128 /***/ "../assets/dev/js/editor/regions/panel/panel.js":
  21129 /*!******************************************************!*\
  21130   !*** ../assets/dev/js/editor/regions/panel/panel.js ***!
  21131   \******************************************************/
  21132 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  21133 
  21134 "use strict";
  21135 
  21136 
  21137 var BaseRegion = __webpack_require__(/*! elementor-regions/base */ "../assets/dev/js/editor/regions/base.js");
  21138 
  21139 module.exports = BaseRegion.extend({
  21140   el: '#elementor-panel',
  21141   getStorageKey: function getStorageKey() {
  21142     return 'panel';
  21143   },
  21144   getDefaultStorage: function getDefaultStorage() {
  21145     return {
  21146       size: {
  21147         width: ''
  21148       }
  21149     };
  21150   },
  21151   constructor: function constructor() {
  21152     BaseRegion.prototype.constructor.apply(this, arguments);
  21153 
  21154     var PanelLayoutView = __webpack_require__(/*! elementor-regions/panel/layout */ "../assets/dev/js/editor/regions/panel/layout.js");
  21155 
  21156     this.show(new PanelLayoutView());
  21157     this.resizable();
  21158     this.setSize();
  21159     this.listenTo(elementor.channels.dataEditMode, 'switch', this.onEditModeSwitched);
  21160   },
  21161   setSize: function setSize() {
  21162     var savedWidth = this.storage.size.width;
  21163     elementorCommon.elements.$body.css('--e-editor-panel-width', savedWidth);
  21164   },
  21165   resizable: function resizable() {
  21166     var self = this;
  21167     self.$el.resizable({
  21168       handles: elementorCommon.config.isRTL ? 'w' : 'e',
  21169       minWidth: 200,
  21170       maxWidth: 680,
  21171       start: function start() {
  21172         elementor.$previewWrapper.addClass('ui-resizable-resizing');
  21173       },
  21174       stop: function stop(event, ui) {
  21175         elementor.$previewWrapper.removeClass('ui-resizable-resizing');
  21176         elementor.getPanelView().updateScrollbar();
  21177         self.saveSize({
  21178           width: ui.size.width + 'px'
  21179         });
  21180       },
  21181       resize: function resize(event, ui) {
  21182         elementorCommon.elements.$body.css('--e-editor-panel-width', ui.size.width + 'px');
  21183         self.$el.css({
  21184           width: '',
  21185           // For RTL
  21186           left: ''
  21187         });
  21188       }
  21189     });
  21190   },
  21191   onEditModeSwitched: function onEditModeSwitched(activeMode) {
  21192     if ('edit' !== activeMode) {
  21193       return;
  21194     }
  21195 
  21196     this.setSize();
  21197   }
  21198 });
  21199 
  21200 /***/ }),
  21201 
  21202 /***/ "../assets/dev/js/editor/regions/responsive-bar/responsive-bar.js":
  21203 /*!************************************************************************!*\
  21204   !*** ../assets/dev/js/editor/regions/responsive-bar/responsive-bar.js ***!
  21205   \************************************************************************/
  21206 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  21207 
  21208 "use strict";
  21209 
  21210 
  21211 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  21212 
  21213 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  21214 
  21215 _Object$defineProperty(exports, "__esModule", {
  21216   value: true
  21217 });
  21218 
  21219 exports.default = void 0;
  21220 
  21221 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  21222 
  21223 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  21224 
  21225 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  21226 
  21227 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  21228 
  21229 var _view = _interopRequireDefault(__webpack_require__(/*! ./view */ "../assets/dev/js/editor/regions/responsive-bar/view.js"));
  21230 
  21231 var _default = /*#__PURE__*/function (_Marionette$Region) {
  21232   (0, _inherits2.default)(_default, _Marionette$Region);
  21233 
  21234   var _super = (0, _createSuper2.default)(_default);
  21235 
  21236   function _default() {
  21237     (0, _classCallCheck2.default)(this, _default);
  21238     return _super.apply(this, arguments);
  21239   }
  21240 
  21241   (0, _createClass2.default)(_default, [{
  21242     key: "initialize",
  21243     value: function initialize() {
  21244       var _this = this;
  21245 
  21246       this.show(new _view.default());
  21247       elementor.panel.$el.on({
  21248         resizestart: function resizestart() {
  21249           return _this.onPanelResizeStart();
  21250         },
  21251         resizestop: function resizestop() {
  21252           return _this.onPanelResizeStop();
  21253         }
  21254       });
  21255     }
  21256   }, {
  21257     key: "onPanelResizeStart",
  21258     value: function onPanelResizeStart() {
  21259       this.$el.addClass('ui-resizable-resizing');
  21260     }
  21261   }, {
  21262     key: "onPanelResizeStop",
  21263     value: function onPanelResizeStop() {
  21264       this.$el.removeClass('ui-resizable-resizing');
  21265     }
  21266   }]);
  21267   return _default;
  21268 }(Marionette.Region);
  21269 
  21270 exports.default = _default;
  21271 
  21272 /***/ }),
  21273 
  21274 /***/ "../assets/dev/js/editor/regions/responsive-bar/view.js":
  21275 /*!**************************************************************!*\
  21276   !*** ../assets/dev/js/editor/regions/responsive-bar/view.js ***!
  21277   \**************************************************************/
  21278 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  21279 
  21280 "use strict";
  21281 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  21282 
  21283 
  21284 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  21285 
  21286 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  21287 
  21288 _Object$defineProperty(exports, "__esModule", {
  21289   value: true
  21290 });
  21291 
  21292 exports.default = void 0;
  21293 
  21294 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  21295 
  21296 var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));
  21297 
  21298 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  21299 
  21300 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  21301 
  21302 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  21303 
  21304 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  21305 
  21306 var View = /*#__PURE__*/function (_Marionette$ItemView) {
  21307   (0, _inherits2.default)(View, _Marionette$ItemView);
  21308 
  21309   var _super = (0, _createSuper2.default)(View);
  21310 
  21311   function View() {
  21312     (0, _classCallCheck2.default)(this, View);
  21313     return _super.apply(this, arguments);
  21314   }
  21315 
  21316   (0, _createClass2.default)(View, [{
  21317     key: "getTemplate",
  21318     value: function getTemplate() {
  21319       return '#tmpl-elementor-templates-responsive-bar';
  21320     }
  21321   }, {
  21322     key: "id",
  21323     value: function id() {
  21324       return 'e-responsive-bar';
  21325     }
  21326   }, {
  21327     key: "ui",
  21328     value: function ui() {
  21329       var prefix = '#' + this.id();
  21330       return {
  21331         switcherInput: '.e-responsive-bar-switcher__option input',
  21332         switcherLabel: '.e-responsive-bar-switcher__option',
  21333         switcher: prefix + '-switcher',
  21334         sizeInputWidth: prefix + '__input-width',
  21335         sizeInputHeight: prefix + '__input-height',
  21336         scaleValue: prefix + '-scale__value',
  21337         scalePlusButton: prefix + '-scale__plus',
  21338         scaleMinusButton: prefix + '-scale__minus',
  21339         scaleResetButton: prefix + '-scale__reset',
  21340         closeButton: prefix + '__close-button',
  21341         breakpointSettingsButton: prefix + '__settings-button'
  21342       };
  21343     }
  21344   }, {
  21345     key: "events",
  21346     value: function events() {
  21347       return {
  21348         'change @ui.switcherInput': 'onBreakpointSelected',
  21349         'input @ui.sizeInputWidth': 'onSizeInputChange',
  21350         'input @ui.sizeInputHeight': 'onSizeInputChange',
  21351         'click @ui.scalePlusButton': 'onScalePlusButtonClick',
  21352         'click @ui.scaleMinusButton': 'onScaleMinusButtonClick',
  21353         'click @ui.scaleResetButton': 'onScaleResetButtonClick',
  21354         'click @ui.closeButton': 'onCloseButtonClick',
  21355         'click @ui.breakpointSettingsButton': 'onBreakpointSettingsOpen'
  21356       };
  21357     }
  21358   }, {
  21359     key: "initialize",
  21360     value: function initialize() {
  21361       this.listenTo(elementor.channels.deviceMode, 'change', this.onDeviceModeChange);
  21362       this.listenTo(elementor.channels.responsivePreview, 'resize', this.onPreviewResize);
  21363       this.listenTo(elementor.channels.deviceMode, 'close', this.resetScale);
  21364     }
  21365   }, {
  21366     key: "addTipsyToIconButtons",
  21367     value: function addTipsyToIconButtons() {
  21368       this.ui.switcherLabel.add(this.ui.closeButton).add(this.ui.breakpointSettingsButton).tipsy({
  21369         html: true,
  21370         gravity: 'n',
  21371         title: function title() {
  21372           return jQuery(this).data('tooltip');
  21373         }
  21374       });
  21375     }
  21376   }, {
  21377     key: "restoreLastValidPreviewSize",
  21378     value: function restoreLastValidPreviewSize() {
  21379       var lastSize = elementor.channels.responsivePreview.request('size');
  21380       this.ui.sizeInputWidth.val(lastSize.width).tipsy({
  21381         html: true,
  21382         trigger: 'manual',
  21383         gravity: 'n',
  21384         title: function title() {
  21385           return __('The value inserted isn\'t in the breakpoint boundaries', 'elementor');
  21386         }
  21387       });
  21388       var tipsy = this.ui.sizeInputWidth.data('tipsy');
  21389       tipsy.show();
  21390       setTimeout(function () {
  21391         return tipsy.hide();
  21392       }, 3000);
  21393     }
  21394   }, {
  21395     key: "autoScale",
  21396     value: function autoScale() {
  21397       var handlesWidth = 40 * this.scalePercentage / 100,
  21398           previewWidth = elementor.$previewWrapper.width() - handlesWidth,
  21399           iframeWidth = (0, _parseInt2.default)(elementor.$preview.css('--e-editor-preview-width')),
  21400           iframeScaleWidth = iframeWidth * this.scalePercentage / 100;
  21401 
  21402       if (iframeScaleWidth > previewWidth) {
  21403         var scalePercentage = previewWidth / iframeWidth * 100;
  21404         this.setScalePercentage(scalePercentage);
  21405       } else {
  21406         this.setScalePercentage();
  21407       }
  21408 
  21409       this.scalePreview();
  21410     }
  21411   }, {
  21412     key: "scalePreview",
  21413     value: function scalePreview() {
  21414       var scale = this.scalePercentage / 100;
  21415       elementor.$previewWrapper.css('--e-preview-scale', scale);
  21416     }
  21417   }, {
  21418     key: "resetScale",
  21419     value: function resetScale() {
  21420       this.setScalePercentage();
  21421       this.scalePreview();
  21422     }
  21423   }, {
  21424     key: "setScalePercentage",
  21425     value: function setScalePercentage() {
  21426       var scalePercentage = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 100;
  21427       this.scalePercentage = scalePercentage;
  21428       this.ui.scaleValue.text((0, _parseInt2.default)(this.scalePercentage));
  21429     }
  21430   }, {
  21431     key: "onRender",
  21432     value: function onRender() {
  21433       this.addTipsyToIconButtons();
  21434       this.setScalePercentage();
  21435     }
  21436   }, {
  21437     key: "onDeviceModeChange",
  21438     value: function onDeviceModeChange() {
  21439       var currentDeviceMode = elementor.channels.deviceMode.request('currentMode'),
  21440           $currentDeviceSwitcherInput = this.ui.switcherInput.filter('[value=' + currentDeviceMode + ']');
  21441       this.ui.switcherLabel.attr('aria-selected', false);
  21442       $currentDeviceSwitcherInput.closest('label').attr('aria-selected', true);
  21443 
  21444       if (!$currentDeviceSwitcherInput.prop('checked')) {
  21445         $currentDeviceSwitcherInput.prop('checked', true);
  21446       }
  21447     }
  21448   }, {
  21449     key: "onBreakpointSelected",
  21450     value: function onBreakpointSelected(e) {
  21451       var selectedDeviceMode = e.target.value;
  21452       elementor.changeDeviceMode(selectedDeviceMode, false);
  21453       this.autoScale();
  21454     }
  21455   }, {
  21456     key: "onBreakpointSettingsOpen",
  21457     value: function onBreakpointSettingsOpen() {
  21458       var isWPPreviewMode = elementorCommon.elements.$body.hasClass('elementor-editor-preview');
  21459 
  21460       if (isWPPreviewMode) {
  21461         elementor.exitPreviewMode();
  21462       }
  21463 
  21464       var isInSettingsPanelActive = 'panel/global/menu' === elementor.documents.currentDocument.config.panel.default_route;
  21465 
  21466       if (isInSettingsPanelActive) {
  21467         $e.run('panel/global/close');
  21468         return;
  21469       } //  Open Settings Panel for Global/Layout/Breakpoints Settings
  21470 
  21471 
  21472       $e.run('editor/documents/switch', {
  21473         id: elementor.config.kit_id,
  21474         mode: 'autosave'
  21475       }).then(function () {
  21476         return $e.route('panel/global/settings-layout');
  21477       }) // TODO: Replace with a standard routing solution once one is available
  21478       .then(function () {
  21479         return jQuery('.elementor-control-section_breakpoints').trigger('click');
  21480       });
  21481     }
  21482   }, {
  21483     key: "onPreviewResize",
  21484     value: function onPreviewResize() {
  21485       if (this.updatingPreviewSize) {
  21486         return;
  21487       }
  21488 
  21489       var size = elementor.channels.responsivePreview.request('size');
  21490       this.ui.sizeInputWidth.val(Math.round(size.width));
  21491       this.ui.sizeInputHeight.val(Math.round(size.height));
  21492     }
  21493   }, {
  21494     key: "onCloseButtonClick",
  21495     value: function onCloseButtonClick() {
  21496       elementor.changeDeviceMode('desktop'); // Force exit if device mode is already desktop
  21497 
  21498       elementor.exitDeviceMode();
  21499     }
  21500   }, {
  21501     key: "onSizeInputChange",
  21502     value: function onSizeInputChange() {
  21503       var _this = this;
  21504 
  21505       clearTimeout(this.restorePreviewSizeTimeout);
  21506       var size = {
  21507         width: this.ui.sizeInputWidth.val(),
  21508         height: this.ui.sizeInputHeight.val()
  21509       };
  21510       var currentDeviceConstrains = elementor.getCurrentDeviceConstrains();
  21511 
  21512       if (size.width < currentDeviceConstrains.minWidth || size.width > currentDeviceConstrains.maxWidth) {
  21513         this.restorePreviewSizeTimeout = setTimeout(function () {
  21514           return _this.restoreLastValidPreviewSize();
  21515         }, 1500);
  21516         return;
  21517       }
  21518 
  21519       this.updatingPreviewSize = true;
  21520       setTimeout(function () {
  21521         return _this.updatingPreviewSize = false;
  21522       }, 300);
  21523       elementor.updatePreviewSize(size);
  21524       this.autoScale();
  21525     }
  21526   }, {
  21527     key: "onScalePlusButtonClick",
  21528     value: function onScalePlusButtonClick() {
  21529       var scaleUp = 0 === this.scalePercentage % 10 ? this.scalePercentage + 10 : Math.ceil(this.scalePercentage / 10) * 10;
  21530 
  21531       if (scaleUp > 200) {
  21532         return;
  21533       }
  21534 
  21535       this.setScalePercentage(scaleUp);
  21536       this.scalePreview();
  21537     }
  21538   }, {
  21539     key: "onScaleMinusButtonClick",
  21540     value: function onScaleMinusButtonClick() {
  21541       var scaleDown = 0 === this.scalePercentage % 10 ? this.scalePercentage - 10 : Math.floor(this.scalePercentage / 10) * 10;
  21542 
  21543       if (scaleDown < 50) {
  21544         return;
  21545       }
  21546 
  21547       this.setScalePercentage(scaleDown);
  21548       this.scalePreview();
  21549     }
  21550   }, {
  21551     key: "onScaleResetButtonClick",
  21552     value: function onScaleResetButtonClick() {
  21553       this.resetScale();
  21554     }
  21555   }]);
  21556   return View;
  21557 }(Marionette.ItemView);
  21558 
  21559 exports.default = View;
  21560 
  21561 /***/ }),
  21562 
  21563 /***/ "../assets/dev/js/editor/utils/color-picker.js":
  21564 /*!*****************************************************!*\
  21565   !*** ../assets/dev/js/editor/utils/color-picker.js ***!
  21566   \*****************************************************/
  21567 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  21568 
  21569 "use strict";
  21570 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  21571 
  21572 
  21573 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  21574 
  21575 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  21576 
  21577 _Object$defineProperty(exports, "__esModule", {
  21578   value: true
  21579 });
  21580 
  21581 exports.default = void 0;
  21582 
  21583 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
  21584 
  21585 __webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");
  21586 
  21587 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  21588 
  21589 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  21590 
  21591 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  21592 
  21593 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  21594 
  21595 var ColorPicker = /*#__PURE__*/function (_elementorModules$Mod) {
  21596   (0, _inherits2.default)(ColorPicker, _elementorModules$Mod);
  21597 
  21598   var _super = (0, _createSuper2.default)(ColorPicker);
  21599 
  21600   function ColorPicker() {
  21601     var _this;
  21602 
  21603     (0, _classCallCheck2.default)(this, ColorPicker);
  21604 
  21605     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  21606       args[_key] = arguments[_key];
  21607     }
  21608 
  21609     _this = _super.call.apply(_super, [this].concat(args));
  21610 
  21611     _this.createPicker();
  21612 
  21613     return _this;
  21614   }
  21615 
  21616   (0, _createClass2.default)(ColorPicker, [{
  21617     key: "getDefaultSettings",
  21618     value: function getDefaultSettings() {
  21619       return {
  21620         picker: {
  21621           theme: 'monolith',
  21622           position: 'bottom-' + (elementorCommon.config.isRTL ? 'end' : 'start'),
  21623           components: {
  21624             opacity: true,
  21625             hue: true,
  21626             interaction: {
  21627               input: true
  21628             }
  21629           }
  21630         },
  21631         classes: {
  21632           active: 'elementor-active',
  21633           pickerHeader: 'elementor-color-picker__header',
  21634           pickerToolsContainer: 'e-color-picker__tools',
  21635           pickerTool: 'e-control-tool',
  21636           clearButton: 'e-color-picker__clear',
  21637           plusIcon: 'eicon-plus'
  21638         }
  21639       };
  21640     }
  21641   }, {
  21642     key: "createPicker",
  21643     value: function createPicker() {
  21644       var _this2 = this;
  21645 
  21646       var pickerSettings = this.getSettings('picker');
  21647       pickerSettings.default = pickerSettings.default || null;
  21648       this.picker = new Pickr(pickerSettings); // Set a default palette. It doesn't affect the selected value.
  21649 
  21650       this.picker.setColor(pickerSettings.default || '#020101');
  21651       this.color = this.processColor();
  21652       this.picker.on('change', function () {
  21653         return _this2.onPickerChange();
  21654       }).on('clear', function () {
  21655         return _this2.onPickerClear();
  21656       }).on('show', function () {
  21657         return _this2.onPickerShow();
  21658       });
  21659       this.$pickerAppContainer = jQuery(this.picker.getRoot().app);
  21660       this.createPickerHeader();
  21661     }
  21662   }, {
  21663     key: "addTipsyToClearButton",
  21664     value: function addTipsyToClearButton() {
  21665       this.$clearButton.tipsy({
  21666         title: function title() {
  21667           return __('Clear', 'elementor');
  21668         },
  21669         gravity: function gravity() {
  21670           return 's';
  21671         }
  21672       });
  21673     }
  21674   }, {
  21675     key: "processColor",
  21676     value: function processColor() {
  21677       var color = this.picker.getColor();
  21678       var colorRepresentation;
  21679 
  21680       if (1 === color.a) {
  21681         colorRepresentation = color.toHEXA();
  21682       } else {
  21683         colorRepresentation = color.toRGBA();
  21684       }
  21685 
  21686       return colorRepresentation.toString();
  21687     }
  21688   }, {
  21689     key: "getColor",
  21690     value: function getColor() {
  21691       return this.color;
  21692     }
  21693   }, {
  21694     key: "createPickerHeader",
  21695     value: function createPickerHeader() {
  21696       var _this$getSettings = this.getSettings(),
  21697           classes = _this$getSettings.classes,
  21698           $pickerHeader = jQuery('<div>', {
  21699         class: classes.pickerHeader
  21700       }).text(__('Color Picker', 'elementor')),
  21701           $pickerToolsContainer = jQuery('<div>', {
  21702         class: classes.pickerToolsContainer
  21703       }),
  21704           addButton = this.getSettings('addButton');
  21705 
  21706       this.$pickerToolsContainer = $pickerToolsContainer;
  21707 
  21708       if (addButton) {
  21709         this.createAddButton();
  21710       }
  21711 
  21712       this.createClearButton();
  21713       $pickerToolsContainer.append(this.$clearButton, this.$addButton);
  21714       $pickerHeader.append($pickerToolsContainer);
  21715       this.$pickerAppContainer.prepend($pickerHeader);
  21716     }
  21717   }, {
  21718     key: "createAddButton",
  21719     value: function createAddButton() {
  21720       var _this3 = this;
  21721 
  21722       var _this$getSettings2 = this.getSettings(),
  21723           classes = _this$getSettings2.classes;
  21724 
  21725       this.$addButton = jQuery('<button>', {
  21726         class: classes.pickerTool
  21727       }).html(jQuery('<i>', {
  21728         class: classes.plusIcon
  21729       }));
  21730       this.$addButton.on('click', function () {
  21731         return _this3.onAddButtonClick();
  21732       });
  21733       this.$addButton.tipsy({
  21734         title: function title() {
  21735           return __('Create New Global Color', 'elementor');
  21736         },
  21737         gravity: function gravity() {
  21738           return 's';
  21739         }
  21740       });
  21741     } // Move the clear button from Pickr's default location into the Color Picker header.
  21742 
  21743   }, {
  21744     key: "createClearButton",
  21745     value: function createClearButton() {
  21746       var _this4 = this;
  21747 
  21748       var _this$getSettings3 = this.getSettings(),
  21749           classes = _this$getSettings3.classes;
  21750 
  21751       this.$clearButton = jQuery('<div>', {
  21752         class: classes.clearButton + ' ' + classes.pickerTool
  21753       }).html('<i class="eicon-undo"></i>');
  21754       this.$clearButton.on('click', function () {
  21755         return _this4.picker._clearColor();
  21756       });
  21757       this.addTipsyToClearButton();
  21758     }
  21759   }, {
  21760     key: "destroy",
  21761     value: function destroy() {
  21762       this.picker.destroyAndRemove();
  21763     } // TODO: CHECK IF THIS IS STILL NECESSARY
  21764 
  21765   }, {
  21766     key: "fixTipsyForFF",
  21767     value: function fixTipsyForFF($button) {
  21768       // There's a bug in FireFox about hiding the tooltip after the button was clicked,
  21769       // So let's force it to hide.
  21770       $button.data('tipsy').hide();
  21771     }
  21772   }, {
  21773     key: "introductionViewed",
  21774     value: function introductionViewed() {
  21775       return ColorPicker.droppingIntroductionViewed || elementor.config.user.introduction.colorPickerDropping;
  21776     }
  21777   }, {
  21778     key: "toggleClearButtonState",
  21779     value: function toggleClearButtonState(active) {
  21780       this.$clearButton.toggleClass('e-control-tool-disabled', !active);
  21781     }
  21782   }, {
  21783     key: "onPickerChange",
  21784     value: function onPickerChange() {
  21785       this.picker.applyColor();
  21786       var newColor = this.processColor();
  21787 
  21788       if (newColor === this.color) {
  21789         return;
  21790       }
  21791 
  21792       this.color = newColor;
  21793       var onChange = this.getSettings('onChange');
  21794 
  21795       if (onChange) {
  21796         onChange();
  21797       }
  21798     }
  21799   }, {
  21800     key: "onPickerClear",
  21801     value: function onPickerClear() {
  21802       this.color = '';
  21803       var onClear = this.getSettings('onClear');
  21804 
  21805       if (onClear) {
  21806         onClear();
  21807       }
  21808     }
  21809   }, {
  21810     key: "onPickerShow",
  21811     value: function onPickerShow() {
  21812       var _this5 = this;
  21813 
  21814       var resultInput = this.picker.getRoot().interaction.result;
  21815       setTimeout(function () {
  21816         resultInput.select();
  21817         _this5.picker._recalc = true;
  21818       }, 100);
  21819     }
  21820   }, {
  21821     key: "onAddButtonClick",
  21822     value: function onAddButtonClick() {
  21823       this.picker.hide();
  21824       var onPickerAddButtonClick = this.getSettings('onAddButtonClick');
  21825 
  21826       if (onPickerAddButtonClick) {
  21827         onPickerAddButtonClick();
  21828       }
  21829 
  21830       this.fixTipsyForFF(this.$addButton);
  21831     }
  21832   }]);
  21833   return ColorPicker;
  21834 }(elementorModules.Module);
  21835 
  21836 exports.default = ColorPicker;
  21837 
  21838 /***/ }),
  21839 
  21840 /***/ "../assets/dev/js/editor/utils/conditions.js":
  21841 /*!***************************************************!*\
  21842   !*** ../assets/dev/js/editor/utils/conditions.js ***!
  21843   \***************************************************/
  21844 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  21845 
  21846 "use strict";
  21847 
  21848 
  21849 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  21850 
  21851 var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));
  21852 
  21853 __webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");
  21854 
  21855 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  21856 
  21857 var Conditions;
  21858 
  21859 Conditions = function Conditions() {
  21860   var self = this;
  21861 
  21862   this.compare = function (leftValue, rightValue, operator) {
  21863     switch (operator) {
  21864       /* eslint-disable eqeqeq */
  21865       case '==':
  21866         return leftValue == rightValue;
  21867 
  21868       case '!=':
  21869         return leftValue != rightValue;
  21870 
  21871       /* eslint-enable eqeqeq */
  21872 
  21873       case '!==':
  21874         return leftValue !== rightValue;
  21875 
  21876       case 'in':
  21877         return -1 !== rightValue.indexOf(leftValue);
  21878 
  21879       case '!in':
  21880         return -1 === rightValue.indexOf(leftValue);
  21881 
  21882       case 'contains':
  21883         return -1 !== leftValue.indexOf(rightValue);
  21884 
  21885       case '!contains':
  21886         return -1 === leftValue.indexOf(rightValue);
  21887 
  21888       case '<':
  21889         return leftValue < rightValue;
  21890 
  21891       case '<=':
  21892         return leftValue <= rightValue;
  21893 
  21894       case '>':
  21895         return leftValue > rightValue;
  21896 
  21897       case '>=':
  21898         return leftValue >= rightValue;
  21899 
  21900       default:
  21901         return leftValue === rightValue;
  21902     }
  21903   };
  21904 
  21905   this.check = function (conditions, comparisonObject) {
  21906     var isOrCondition = 'or' === conditions.relation;
  21907     var conditionSucceed = !isOrCondition;
  21908     jQuery.each(conditions.terms, function () {
  21909       var term = this;
  21910       var comparisonResult;
  21911 
  21912       if (term.terms) {
  21913         comparisonResult = self.check(term, comparisonObject);
  21914       } else {
  21915         var _elementor$getCurrent, _elementor$getCurrent2;
  21916 
  21917         // A term consists of a control name to be examined, and a sub key if needed. For example, a term
  21918         // can look like 'image_overlay[url]' (the 'url' is the sub key). Here we want to isolate the
  21919         // condition name and the sub key, so later it can be retrieved and examined.
  21920         var parsedName = term.name.match(/([\w-]+)(?:\[([\w-]+)])?/),
  21921             conditionRealName = parsedName[1],
  21922             conditionSubKey = parsedName[2],
  21923             // We use null-safe operator since we're trying to get the current element, which is not always
  21924         // exists, since it's only created when the specific element appears in the panel.
  21925         placeholder = (_elementor$getCurrent = elementor.getCurrentElement()) === null || _elementor$getCurrent === void 0 ? void 0 : (_elementor$getCurrent2 = _elementor$getCurrent.container) === null || _elementor$getCurrent2 === void 0 ? void 0 : _elementor$getCurrent2.placeholders[conditionRealName]; // If a placeholder exists for the examined control, we check against it. In any other case, we
  21926         // use the 'comparisonObject', which includes all values of the selected widget.
  21927 
  21928         var value = placeholder || comparisonObject[conditionRealName];
  21929 
  21930         if (comparisonObject.__dynamic__ && comparisonObject.__dynamic__[conditionRealName]) {
  21931           value = comparisonObject.__dynamic__[conditionRealName];
  21932         }
  21933 
  21934         if ('object' === (0, _typeof2.default)(value) && conditionSubKey) {
  21935           value = value[conditionSubKey];
  21936         }
  21937 
  21938         comparisonResult = undefined !== value && self.compare(value, term.value, term.operator);
  21939       }
  21940 
  21941       if (isOrCondition) {
  21942         if (comparisonResult) {
  21943           conditionSucceed = true;
  21944         }
  21945 
  21946         return !comparisonResult;
  21947       }
  21948 
  21949       if (!comparisonResult) {
  21950         return conditionSucceed = false;
  21951       }
  21952     });
  21953     return conditionSucceed;
  21954   };
  21955 };
  21956 
  21957 module.exports = new Conditions();
  21958 
  21959 /***/ }),
  21960 
  21961 /***/ "../assets/dev/js/editor/utils/context-menu.js":
  21962 /*!*****************************************************!*\
  21963   !*** ../assets/dev/js/editor/utils/context-menu.js ***!
  21964   \*****************************************************/
  21965 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  21966 
  21967 "use strict";
  21968 
  21969 
  21970 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  21971 
  21972 module.exports = elementorModules.Module.extend({
  21973   getDefaultSettings: function getDefaultSettings() {
  21974     return {
  21975       actions: {},
  21976       classes: {
  21977         list: 'elementor-context-menu-list',
  21978         group: 'elementor-context-menu-list__group',
  21979         groupPrefix: 'elementor-context-menu-list__group-',
  21980         item: 'elementor-context-menu-list__item',
  21981         itemTypePrefix: 'elementor-context-menu-list__item-',
  21982         itemTitle: 'elementor-context-menu-list__item__title',
  21983         itemShortcut: 'elementor-context-menu-list__item__shortcut',
  21984         iconShortcut: 'elementor-context-menu-list__item__icon',
  21985         itemDisabled: 'elementor-context-menu-list__item--disabled',
  21986         divider: 'elementor-context-menu-list__divider',
  21987         hidden: 'elementor-hidden'
  21988       }
  21989     };
  21990   },
  21991   buildActionItem: function buildActionItem(action) {
  21992     var self = this,
  21993         classes = self.getSettings('classes'),
  21994         $item = jQuery('<div>', {
  21995       class: classes.item + ' ' + classes.itemTypePrefix + action.name
  21996     }),
  21997         $itemTitle = jQuery('<div>', {
  21998       class: classes.itemTitle
  21999     }).text(action.title),
  22000         $itemIcon = jQuery('<div>', {
  22001       class: classes.iconShortcut
  22002     });
  22003 
  22004     if (action.icon) {
  22005       $itemIcon.html(jQuery('<i>', {
  22006         class: action.icon
  22007       }));
  22008     }
  22009 
  22010     $item.append($itemIcon, $itemTitle);
  22011 
  22012     if (action.shortcut) {
  22013       var $itemShortcut = jQuery('<div>', {
  22014         class: classes.itemShortcut
  22015       }).html(action.shortcut);
  22016       $item.append($itemShortcut);
  22017     }
  22018 
  22019     if (action.callback) {
  22020       $item.on('click', function () {
  22021         self.runAction(action);
  22022       });
  22023     }
  22024 
  22025     action.$item = $item;
  22026     return $item;
  22027   },
  22028   buildActionsList: function buildActionsList() {
  22029     var self = this,
  22030         classes = self.getSettings('classes'),
  22031         groups = self.getSettings('groups'),
  22032         $list = jQuery('<div>', {
  22033       class: classes.list
  22034     });
  22035     groups.forEach(function (group) {
  22036       var $group = jQuery('<div>', {
  22037         class: classes.group + ' ' + classes.groupPrefix + group.name
  22038       });
  22039       group.actions.forEach(function (action) {
  22040         $group.append(self.buildActionItem(action));
  22041       });
  22042       $list.append($group);
  22043       group.$item = $group;
  22044     });
  22045     return $list;
  22046   },
  22047   toggleGroupVisibility: function toggleGroupVisibility(group, state) {
  22048     group.$item.toggleClass(this.getSettings('classes.hidden'), !state);
  22049   },
  22050   toggleActionVisibility: function toggleActionVisibility(action, state) {
  22051     action.$item.toggleClass(this.getSettings('classes.hidden'), !state);
  22052   },
  22053   toggleActionUsability: function toggleActionUsability(action, state) {
  22054     action.$item.toggleClass(this.getSettings('classes.itemDisabled'), !state);
  22055   },
  22056   isActionEnabled: function isActionEnabled(action) {
  22057     if (!action.callback && !action.groups) {
  22058       return false;
  22059     }
  22060 
  22061     return action.isEnabled ? action.isEnabled() : true;
  22062   },
  22063   runAction: function runAction(action) {
  22064     if (!this.isActionEnabled(action)) {
  22065       return;
  22066     }
  22067 
  22068     action.callback();
  22069     this.getModal().hide();
  22070   },
  22071   initModal: function initModal() {
  22072     var modal;
  22073 
  22074     this.getModal = function () {
  22075       if (!modal) {
  22076         modal = elementorCommon.dialogsManager.createWidget('simple', {
  22077           className: 'elementor-context-menu',
  22078           message: this.buildActionsList(),
  22079           iframe: elementor.$preview,
  22080           effects: {
  22081             hide: 'hide',
  22082             show: 'show'
  22083           },
  22084           hide: {
  22085             onOutsideContextMenu: true
  22086           },
  22087           position: {
  22088             my: (elementorCommon.config.isRTL ? 'right' : 'left') + ' top',
  22089             collision: 'fit'
  22090           }
  22091         });
  22092       }
  22093 
  22094       return modal;
  22095     };
  22096   },
  22097   show: function show(event) {
  22098     var self = this,
  22099         modal = self.getModal();
  22100     modal.setSettings('position', {
  22101       of: event
  22102     });
  22103     self.getSettings('groups').forEach(function (group) {
  22104       var isGroupVisible = false !== group.isVisible;
  22105       self.toggleGroupVisibility(group, isGroupVisible);
  22106 
  22107       if (isGroupVisible) {
  22108         group.actions.forEach(function (action) {
  22109           var isActionVisible = false !== action.isVisible;
  22110           self.toggleActionVisibility(action, isActionVisible);
  22111 
  22112           if (isActionVisible) {
  22113             self.toggleActionUsability(action, self.isActionEnabled(action));
  22114           }
  22115         });
  22116       }
  22117     });
  22118     modal.show();
  22119   },
  22120   destroy: function destroy() {
  22121     this.getModal().destroy();
  22122   },
  22123   onInit: function onInit() {
  22124     this.initModal();
  22125   }
  22126 });
  22127 
  22128 /***/ }),
  22129 
  22130 /***/ "../assets/dev/js/editor/utils/controls-css-parser.js":
  22131 /*!************************************************************!*\
  22132   !*** ../assets/dev/js/editor/utils/controls-css-parser.js ***!
  22133   \************************************************************/
  22134 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  22135 
  22136 "use strict";
  22137 
  22138 
  22139 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  22140 
  22141 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  22142 
  22143 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  22144 
  22145 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  22146 
  22147 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  22148 
  22149 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  22150 
  22151 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  22152 
  22153 __webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");
  22154 
  22155 __webpack_require__(/*! core-js/modules/es6.regexp.constructor.js */ "../node_modules/core-js/modules/es6.regexp.constructor.js");
  22156 
  22157 var Stylesheet = __webpack_require__(/*! elementor-editor-utils/stylesheet */ "../assets/dev/js/editor/utils/stylesheet.js"),
  22158     ControlsCSSParser;
  22159 
  22160 ControlsCSSParser = elementorModules.ViewModule.extend({
  22161   stylesheet: null,
  22162   getDefaultSettings: function getDefaultSettings() {
  22163     return {
  22164       id: 0,
  22165       context: null,
  22166       settingsModel: null,
  22167       dynamicParsing: {}
  22168     };
  22169   },
  22170   getDefaultElements: function getDefaultElements() {
  22171     var id = "elementor-style-".concat(this.getSettings('id'));
  22172     var $stylesheet = elementor.$previewContents.find("#".concat(id));
  22173 
  22174     if (!$stylesheet.length) {
  22175       $stylesheet = jQuery('<style>', {
  22176         id: id
  22177       });
  22178     }
  22179 
  22180     return {
  22181       $stylesheetElement: $stylesheet
  22182     };
  22183   },
  22184   initStylesheet: function initStylesheet() {
  22185     var _this = this;
  22186 
  22187     var breakpoints = elementorFrontend.config.responsive.activeBreakpoints;
  22188     this.stylesheet = new Stylesheet();
  22189     (0, _entries.default)(breakpoints).forEach(function (_ref) {
  22190       var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  22191           breakpointName = _ref2[0],
  22192           breakpointConfig = _ref2[1];
  22193 
  22194       _this.stylesheet.addDevice(breakpointName, breakpointConfig.value);
  22195     });
  22196   },
  22197   addStyleRules: function addStyleRules(styleControls, values, controls, placeholders, replacements) {
  22198     var _this2 = this;
  22199 
  22200     // If the current element contains dynamic values, parse these values
  22201     var dynamicParsedValues = this.getSettings('settingsModel').parseDynamicSettings(values, this.getSettings('dynamicParsing'), styleControls);
  22202 
  22203     _.each(styleControls, function (control) {
  22204       var _control$dynamic, _values$__dynamic__;
  22205 
  22206       if (control.styleFields && control.styleFields.length) {
  22207         _this2.addRepeaterControlsStyleRules(values[control.name], control.styleFields, control.fields, placeholders, replacements);
  22208       } // If a dynamic tag includes controls with CSS implementations, Take their CSS and apply it.
  22209 
  22210 
  22211       if ((_control$dynamic = control.dynamic) !== null && _control$dynamic !== void 0 && _control$dynamic.active && (_values$__dynamic__ = values.__dynamic__) !== null && _values$__dynamic__ !== void 0 && _values$__dynamic__[control.name]) {
  22212         _this2.addDynamicControlStyleRules(values.__dynamic__[control.name], control);
  22213       }
  22214 
  22215       if (!control.selectors) {
  22216         return;
  22217       }
  22218 
  22219       var context = _this2.getSettings('context');
  22220 
  22221       var globalKeys;
  22222 
  22223       if (context) {
  22224         globalKeys = context.model.get('settings').get('__globals__');
  22225       }
  22226 
  22227       _this2.addControlStyleRules(control, dynamicParsedValues, controls, placeholders, replacements, globalKeys);
  22228     });
  22229   },
  22230   addControlStyleRules: function addControlStyleRules(control, values, controls, placeholders, replacements, globalKeys) {
  22231     var _this3 = this;
  22232 
  22233     var globalKey;
  22234 
  22235     if (globalKeys) {
  22236       var controlGlobalKey = control.name;
  22237 
  22238       if (control.groupType) {
  22239         controlGlobalKey = control.groupPrefix + control.groupType;
  22240       }
  22241 
  22242       globalKey = globalKeys[controlGlobalKey];
  22243     }
  22244 
  22245     var value;
  22246 
  22247     if (!globalKey) {
  22248       value = this.getStyleControlValue(control, values);
  22249 
  22250       if (undefined === value) {
  22251         return;
  22252       }
  22253     }
  22254 
  22255     _.each(control.selectors, function (cssProperty, selector) {
  22256       var outputCssProperty;
  22257 
  22258       if (globalKey) {
  22259         var selectorGlobalValue = _this3.getSelectorGlobalValue(control, globalKey);
  22260 
  22261         if (selectorGlobalValue) {
  22262           if ('font' === control.type) {
  22263             $e.data.get(globalKey).then(function (response) {
  22264               elementor.helpers.enqueueFont(response.data.value.typography_font_family);
  22265             });
  22266           } // This regex handles a case where a control's selector property value includes more than one CSS selector.
  22267           // Example: 'selector' => 'background: {{VALUE}}; background-color: {{VALUE}};'.
  22268 
  22269 
  22270           outputCssProperty = cssProperty.replace(/(:)[^;]+(;?)/g, '$1' + selectorGlobalValue + '$2');
  22271         }
  22272       } else {
  22273         try {
  22274           outputCssProperty = cssProperty.replace(/{{(?:([^.}]+)\.)?([^}| ]*)(?: *\|\| *(?:([^.}]+)\.)?([^}| ]*) *)*}}/g, function (originalPhrase, controlName, placeholder, fallbackControlName, fallbackValue) {
  22275             var externalControlMissing = controlName && !controls[controlName];
  22276             var parsedValue = '';
  22277 
  22278             if (!externalControlMissing) {
  22279               parsedValue = _this3.parsePropertyPlaceholder(control, value, controls, values, placeholder, controlName);
  22280             }
  22281 
  22282             if (!parsedValue && 0 !== parsedValue) {
  22283               if (fallbackValue) {
  22284                 parsedValue = fallbackValue;
  22285                 var stringValueMatches = parsedValue.match(/^(['"])(.*)\1$/);
  22286 
  22287                 if (stringValueMatches) {
  22288                   parsedValue = stringValueMatches[2];
  22289                 } else if (!isFinite(parsedValue)) {
  22290                   if (fallbackControlName && !controls[fallbackControlName]) {
  22291                     return '';
  22292                   }
  22293 
  22294                   parsedValue = _this3.parsePropertyPlaceholder(control, value, controls, values, fallbackValue, fallbackControlName);
  22295                 }
  22296               }
  22297 
  22298               if (!parsedValue && 0 !== parsedValue) {
  22299                 if (externalControlMissing) {
  22300                   return '';
  22301                 }
  22302 
  22303                 throw '';
  22304               }
  22305             }
  22306 
  22307             if ('font' === control.type) {
  22308               elementor.helpers.enqueueFont(parsedValue);
  22309             }
  22310 
  22311             return parsedValue;
  22312           });
  22313         } catch (e) {
  22314           return;
  22315         }
  22316       }
  22317 
  22318       if (_.isEmpty(outputCssProperty)) {
  22319         return;
  22320       }
  22321 
  22322       var devicePattern = /^(?:\([^)]+\)){1,2}/,
  22323           deviceRules = selector.match(devicePattern),
  22324           query = {};
  22325 
  22326       if (deviceRules) {
  22327         deviceRules = deviceRules[0];
  22328         selector = selector.replace(devicePattern, '');
  22329         var pureDevicePattern = /\(([^)]+)\)/g,
  22330             pureDeviceRules = [],
  22331             matches;
  22332         matches = pureDevicePattern.exec(deviceRules);
  22333 
  22334         while (matches) {
  22335           pureDeviceRules.push(matches[1]);
  22336           matches = pureDevicePattern.exec(deviceRules);
  22337         }
  22338 
  22339         _.each(pureDeviceRules, function (deviceRule) {
  22340           if ('desktop' === deviceRule) {
  22341             return;
  22342           }
  22343 
  22344           var device = deviceRule.replace(/\+$/, ''),
  22345               endPoint = device === deviceRule ? 'max' : 'min';
  22346           query[endPoint] = device;
  22347         });
  22348       }
  22349 
  22350       _.each(placeholders, function (placeholder, index) {
  22351         // Check if it's a RegExp
  22352         var regexp = placeholder.source ? placeholder.source : placeholder,
  22353             placeholderPattern = new RegExp(regexp, 'g');
  22354         selector = selector.replace(placeholderPattern, replacements[index]);
  22355       });
  22356 
  22357       if (!(0, _keys.default)(query).length && control.responsive) {
  22358         query = _.pick(elementorCommon.helpers.cloneObject(control.responsive), ['min', 'max']);
  22359 
  22360         if ('desktop' === query.max) {
  22361           delete query.max;
  22362         }
  22363       }
  22364 
  22365       _this3.stylesheet.addRules(selector, outputCssProperty, query);
  22366     });
  22367   },
  22368   parsePropertyPlaceholder: function parsePropertyPlaceholder(control, value, controls, values, placeholder, parserControlName) {
  22369     if (parserControlName) {
  22370       control = _.findWhere(controls, {
  22371         name: parserControlName
  22372       });
  22373       value = this.getStyleControlValue(control, values);
  22374     }
  22375 
  22376     return elementor.getControlView(control.type).getStyleValue(placeholder, value, control);
  22377   },
  22378   getStyleControlValue: function getStyleControlValue(control, values) {
  22379     var _this$getSettings, _this$getSettings$con, _values$__globals__, _control$global;
  22380 
  22381     var container = (_this$getSettings = this.getSettings()) === null || _this$getSettings === void 0 ? void 0 : (_this$getSettings$con = _this$getSettings.context) === null || _this$getSettings$con === void 0 ? void 0 : _this$getSettings$con.container,
  22382         isGlobalApplied = container === null || container === void 0 ? void 0 : container.isGlobalApplied(control.name),
  22383         globalKey = ((_values$__globals__ = values.__globals__) === null || _values$__globals__ === void 0 ? void 0 : _values$__globals__[control.name]) || ((_control$global = control.global) === null || _control$global === void 0 ? void 0 : _control$global.default); // Set a global value only if it's is applied.
  22384 
  22385     if (isGlobalApplied && globalKey) {
  22386       // When the control itself has no global value, but it refers to another control global value
  22387       return this.getSelectorGlobalValue(control, globalKey);
  22388     }
  22389 
  22390     var value = values[control.name];
  22391 
  22392     if (control.selectors_dictionary) {
  22393       value = control.selectors_dictionary[value] || value;
  22394     }
  22395 
  22396     if (!_.isNumber(value) && _.isEmpty(value)) {
  22397       return;
  22398     }
  22399 
  22400     return value;
  22401   },
  22402   getSelectorGlobalValue: function getSelectorGlobalValue(control, globalKey) {
  22403     var globalArgs = $e.data.commandExtractArgs(globalKey),
  22404         data = $e.data.getCache($e.components.get('globals'), globalArgs.command, globalArgs.args.query);
  22405 
  22406     if (!(data !== null && data !== void 0 && data.value)) {
  22407       return;
  22408     }
  22409 
  22410     var id = data.id;
  22411     var value; // it's a global settings with additional controls in group.
  22412 
  22413     if (control.groupType) {
  22414       // A regex containing all of the active breakpoints' prefixes ('_mobile', '_tablet' etc.).
  22415       var responsivePrefixRegex = elementor.breakpoints.getActiveMatchRegex();
  22416       var propertyName = control.name.replace(control.groupPrefix, '').replace(responsivePrefixRegex, '');
  22417 
  22418       if (!data.value[elementor.config.kit_config.typography_prefix + propertyName]) {
  22419         return;
  22420       }
  22421 
  22422       propertyName = propertyName.replace('_', '-');
  22423       value = "var( --e-global-".concat(control.groupType, "-").concat(id, "-").concat(propertyName, " )");
  22424 
  22425       if (elementor.config.ui.defaultGenericFonts && control.groupPrefix + 'font_family' === control.name) {
  22426         value += ", ".concat(elementor.config.ui.defaultGenericFonts);
  22427       }
  22428     } else {
  22429       value = "var( --e-global-".concat(control.type, "-").concat(id, " )");
  22430     }
  22431 
  22432     return value;
  22433   },
  22434   addRepeaterControlsStyleRules: function addRepeaterControlsStyleRules(repeaterValues, repeaterControlsItems, controls, placeholders, replacements) {
  22435     var _this4 = this;
  22436 
  22437     repeaterControlsItems.forEach(function (item, index) {
  22438       var itemModel = repeaterValues.models[index];
  22439 
  22440       _this4.addStyleRules(item, itemModel.attributes, controls, placeholders.concat(['{{CURRENT_ITEM}}']), replacements.concat(['.elementor-repeater-item-' + itemModel.get('_id')]));
  22441     });
  22442   },
  22443   addDynamicControlStyleRules: function addDynamicControlStyleRules(value, control) {
  22444     var self = this;
  22445     elementor.dynamicTags.parseTagsText(value, control.dynamic, function (id, name, settings) {
  22446       var tag = elementor.dynamicTags.createTag(id, name, settings);
  22447 
  22448       if (!tag) {
  22449         return;
  22450       }
  22451 
  22452       var tagSettingsModel = tag.model,
  22453           styleControls = tagSettingsModel.getStyleControls();
  22454 
  22455       if (!styleControls.length) {
  22456         return;
  22457       }
  22458 
  22459       self.addStyleRules(tagSettingsModel.getStyleControls(), tagSettingsModel.attributes, tagSettingsModel.controls, ['{{WRAPPER}}'], ['#elementor-tag-' + id]);
  22460     });
  22461   },
  22462   addStyleToDocument: function addStyleToDocument(position) {
  22463     var $head = elementor.$previewContents.find('head');
  22464     var insertMethod = 'append',
  22465         $insertBy = $head;
  22466 
  22467     if (position) {
  22468       var $targetElement = $head.children(position.of);
  22469 
  22470       if ($targetElement.length) {
  22471         insertMethod = position.at;
  22472         $insertBy = $targetElement;
  22473       }
  22474     }
  22475 
  22476     $insertBy[insertMethod](this.elements.$stylesheetElement);
  22477     var extraCSS = elementor.hooks.applyFilters('editor/style/styleText', '', this.getSettings('context'));
  22478     this.elements.$stylesheetElement.text(this.stylesheet + extraCSS);
  22479   },
  22480   removeStyleFromDocument: function removeStyleFromDocument() {
  22481     this.elements.$stylesheetElement.remove();
  22482   },
  22483   onInit: function onInit() {
  22484     elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
  22485     this.initStylesheet();
  22486   }
  22487 });
  22488 module.exports = ControlsCSSParser;
  22489 
  22490 /***/ }),
  22491 
  22492 /***/ "../assets/dev/js/editor/utils/files-upload-handler.js":
  22493 /*!*************************************************************!*\
  22494   !*** ../assets/dev/js/editor/utils/files-upload-handler.js ***!
  22495   \*************************************************************/
  22496 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  22497 
  22498 "use strict";
  22499 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  22500 
  22501 
  22502 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  22503 
  22504 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  22505 
  22506 _Object$defineProperty(exports, "__esModule", {
  22507   value: true
  22508 });
  22509 
  22510 exports.default = void 0;
  22511 
  22512 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
  22513 
  22514 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  22515 
  22516 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  22517 
  22518 var FilesUploadHandler = /*#__PURE__*/function () {
  22519   function FilesUploadHandler() {
  22520     (0, _classCallCheck2.default)(this, FilesUploadHandler);
  22521   }
  22522 
  22523   (0, _createClass2.default)(FilesUploadHandler, null, [{
  22524     key: "isUploadEnabled",
  22525     value: function isUploadEnabled(mediaType) {
  22526       var unfilteredFilesTypes = ['svg', 'application/json'];
  22527 
  22528       if (!unfilteredFilesTypes.includes(mediaType)) {
  22529         return true;
  22530       }
  22531 
  22532       return elementor.config.filesUpload.unfilteredFiles;
  22533     }
  22534   }, {
  22535     key: "setUploadTypeCaller",
  22536     value: function setUploadTypeCaller(frame) {
  22537       frame.uploader.uploader.param('uploadTypeCaller', 'elementor-wp-media-upload');
  22538     }
  22539   }, {
  22540     key: "getUnfilteredFilesNotEnabledDialog",
  22541     value: function getUnfilteredFilesNotEnabledDialog(callback) {
  22542       var onConfirm = function onConfirm() {
  22543         elementorCommon.ajax.addRequest('enable_unfiltered_files_upload', {}, true);
  22544         elementor.config.filesUpload.unfilteredFiles = true;
  22545         callback();
  22546       };
  22547 
  22548       return elementor.helpers.getSimpleDialog('e-enable-unfiltered-files-dialog', __('Enable Unfiltered File Uploads', 'elementor'), __('Before you enable unfiltered files upload, note that this kind of files include a security risk. Elementor does run a process to remove possible malicious code, but there is still risk involved when using such files.', 'elementor'), __('Enable', 'elementor'), onConfirm);
  22549     }
  22550   }]);
  22551   return FilesUploadHandler;
  22552 }();
  22553 
  22554 exports.default = FilesUploadHandler;
  22555 
  22556 /***/ }),
  22557 
  22558 /***/ "../assets/dev/js/editor/utils/heartbeat.js":
  22559 /*!**************************************************!*\
  22560   !*** ../assets/dev/js/editor/utils/heartbeat.js ***!
  22561   \**************************************************/
  22562 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  22563 
  22564 "use strict";
  22565 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  22566 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
  22567 
  22568 
  22569 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  22570 
  22571 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  22572 
  22573 _Object$defineProperty(exports, "__esModule", {
  22574   value: true
  22575 });
  22576 
  22577 exports.default = void 0;
  22578 
  22579 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  22580 
  22581 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  22582 
  22583 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  22584 
  22585 var Heartbeat = /*#__PURE__*/function () {
  22586   function Heartbeat(document) {
  22587     var _this = this;
  22588 
  22589     (0, _classCallCheck2.default)(this, Heartbeat);
  22590     (0, _defineProperty2.default)(this, "modal", null);
  22591     (0, _defineProperty2.default)(this, "document", null);
  22592     (0, _defineProperty2.default)(this, "getModal", function () {
  22593       if (!_this.modal) {
  22594         _this.modal = _this.initModal();
  22595       }
  22596 
  22597       return _this.modal;
  22598     });
  22599     this.document = document;
  22600     this.onSend = this.onSend.bind(this);
  22601     this.onTick = this.onTick.bind(this);
  22602     this.onRefreshNonce = this.onRefreshNonce.bind(this);
  22603     this.bindEvents();
  22604     wp.heartbeat.connectNow();
  22605   }
  22606 
  22607   (0, _createClass2.default)(Heartbeat, [{
  22608     key: "initModal",
  22609     value: function initModal() {
  22610       var modal = elementorCommon.dialogsManager.createWidget('lightbox', {
  22611         headerMessage: __('Take Over', 'elementor')
  22612       });
  22613       modal.addButton({
  22614         name: 'go_back',
  22615         text: __('Go Back', 'elementor'),
  22616         callback: function callback() {
  22617           parent.history.go(-1);
  22618         }
  22619       });
  22620       modal.addButton({
  22621         name: 'take_over',
  22622         text: __('Take Over', 'elementor'),
  22623         callback: function callback() {
  22624           wp.heartbeat.enqueue('elementor_force_post_lock', true);
  22625           wp.heartbeat.connectNow();
  22626         }
  22627       });
  22628       return modal;
  22629     }
  22630   }, {
  22631     key: "showLockMessage",
  22632     value: function showLockMessage(lockedUser) {
  22633       var modal = this.getModal();
  22634       modal
  22635       /* translators: %s: Locked User Name. */
  22636       .setMessage(sprintf(__('%s has taken over and is currently editing. Do you want to take over this page editing?', 'elementor'), lockedUser)).show();
  22637     }
  22638   }, {
  22639     key: "onSend",
  22640     value: function onSend(event, data) {
  22641       data.elementor_post_lock = {
  22642         post_ID: this.document.id
  22643       };
  22644     }
  22645   }, {
  22646     key: "onTick",
  22647     value: function onTick(event, response) {
  22648       if (response.locked_user) {
  22649         if (this.document.editor.isChanged) {
  22650           $e.run('document/save/auto', {
  22651             document: this.document
  22652           });
  22653         }
  22654 
  22655         this.showLockMessage(response.locked_user);
  22656       } else {
  22657         this.getModal().hide();
  22658       }
  22659 
  22660       elementorCommon.ajax.addRequestConstant('_nonce', response.elementorNonce);
  22661     }
  22662   }, {
  22663     key: "onRefreshNonce",
  22664     value: function onRefreshNonce(event, response) {
  22665       var nonces = response['elementor-refresh-nonces'];
  22666 
  22667       if (nonces) {
  22668         if (nonces.heartbeatNonce) {
  22669           elementorCommon.ajax.addRequestConstant('_nonce', nonces.elementorNonce);
  22670         }
  22671 
  22672         if (nonces.heartbeatNonce) {
  22673           window.heartbeatSettings.nonce = nonces.heartbeatNonce;
  22674         }
  22675       }
  22676     }
  22677   }, {
  22678     key: "bindEvents",
  22679     value: function bindEvents() {
  22680       jQuery(document).on({
  22681         'heartbeat-send': this.onSend,
  22682         'heartbeat-tick': this.onTick,
  22683         'heartbeat-tick.wp-refresh-nonces': this.onRefreshNonce
  22684       });
  22685     }
  22686   }, {
  22687     key: "destroy",
  22688     value: function destroy() {
  22689       jQuery(document).off({
  22690         'heartbeat-send': this.onSend,
  22691         'heartbeat-tick': this.onTick,
  22692         'heartbeat-tick.wp-refresh-nonces': this.onRefreshNonce
  22693       });
  22694     }
  22695   }]);
  22696   return Heartbeat;
  22697 }();
  22698 
  22699 exports.default = Heartbeat;
  22700 
  22701 /***/ }),
  22702 
  22703 /***/ "../assets/dev/js/editor/utils/helpers.js":
  22704 /*!************************************************!*\
  22705   !*** ../assets/dev/js/editor/utils/helpers.js ***!
  22706   \************************************************/
  22707 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  22708 
  22709 "use strict";
  22710 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  22711 
  22712 
  22713 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  22714 
  22715 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  22716 
  22717 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  22718 
  22719 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  22720 
  22721 var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));
  22722 
  22723 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  22724 
  22725 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  22726 
  22727 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  22728 
  22729 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  22730 
  22731 __webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");
  22732 
  22733 __webpack_require__(/*! core-js/modules/es6.regexp.constructor.js */ "../node_modules/core-js/modules/es6.regexp.constructor.js");
  22734 
  22735 __webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");
  22736 
  22737 __webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");
  22738 
  22739 __webpack_require__(/*! core-js/modules/es6.number.constructor.js */ "../node_modules/core-js/modules/es6.number.constructor.js");
  22740 
  22741 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
  22742 
  22743 var _colorPicker = _interopRequireDefault(__webpack_require__(/*! ./color-picker */ "../assets/dev/js/editor/utils/color-picker.js"));
  22744 
  22745 var _helperBc = _interopRequireDefault(__webpack_require__(/*! elementor-editor/document/helper-bc */ "../assets/dev/js/editor/document/helper-bc.js"));
  22746 
  22747 var allowedHTMLWrapperTags = ['article', 'aside', 'div', 'footer', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header', 'main', 'nav', 'p', 'section', 'span'];
  22748 module.exports = {
  22749   document: _helperBc.default,
  22750   _enqueuedFonts: {
  22751     editor: [],
  22752     preview: []
  22753   },
  22754   _enqueuedIconFonts: [],
  22755   _inlineSvg: [],
  22756   elementsHierarchy: {
  22757     document: {
  22758       section: {
  22759         column: {
  22760           widget: null,
  22761           section: null
  22762         }
  22763       }
  22764     }
  22765   },
  22766   enqueueCSS: function enqueueCSS(url, $document) {
  22767     var selector = 'link[href="' + url + '"]',
  22768         link = '<link href="' + url + '" rel="stylesheet" type="text/css">';
  22769 
  22770     if (!$document) {
  22771       return;
  22772     }
  22773 
  22774     if (!$document.find(selector).length) {
  22775       $document.find('link').last().after(link);
  22776     }
  22777   },
  22778   enqueuePreviewStylesheet: function enqueuePreviewStylesheet(url) {
  22779     this.enqueueCSS(url, elementor.$previewContents);
  22780   },
  22781   enqueueEditorStylesheet: function enqueueEditorStylesheet(url) {
  22782     this.enqueueCSS(url, elementorCommon.elements.$document);
  22783   },
  22784 
  22785   /**
  22786    * @deprecated 2.6.0
  22787    */
  22788   enqueueStylesheet: function enqueueStylesheet(url) {
  22789     elementorCommon.helpers.hardDeprecated('elementor.helpers.enqueueStylesheet()', '2.6.0', 'elementor.helpers.enqueuePreviewStylesheet()');
  22790     this.enqueuePreviewStylesheet(url);
  22791   },
  22792   fetchInlineSvg: function fetchInlineSvg(svgUrl) {
  22793     var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
  22794     fetch(svgUrl).then(function (response) {
  22795       return response.ok ? response.text() : '';
  22796     }).then(function (data) {
  22797       if (callback) {
  22798         callback(data);
  22799       }
  22800     });
  22801   },
  22802   getInlineSvg: function getInlineSvg(value, view) {
  22803     if (!value.id) {
  22804       return;
  22805     }
  22806 
  22807     if (this._inlineSvg.hasOwnProperty(value.id)) {
  22808       return this._inlineSvg[value.id];
  22809     }
  22810 
  22811     var self = this;
  22812     this.fetchInlineSvg(value.url, function (data) {
  22813       if (data) {
  22814         self._inlineSvg[value.id] = data; //$( data ).find( 'svg' )[ 0 ].outerHTML;
  22815 
  22816         if (view) {
  22817           view.render();
  22818         }
  22819 
  22820         elementor.channels.editor.trigger('svg:insertion', data, value.id);
  22821       }
  22822     });
  22823   },
  22824   enqueueIconFonts: function enqueueIconFonts(iconType) {
  22825     var _this = this;
  22826 
  22827     if (-1 !== this._enqueuedIconFonts.indexOf(iconType) || !!elementor.config['icons_update_needed']) {
  22828       return;
  22829     }
  22830 
  22831     var iconSetting = this.getIconLibrarySettings(iconType);
  22832 
  22833     if (!iconSetting) {
  22834       return;
  22835     }
  22836 
  22837     if (iconSetting.enqueue) {
  22838       iconSetting.enqueue.forEach(function (assetURL) {
  22839         _this.enqueuePreviewStylesheet(assetURL);
  22840 
  22841         _this.enqueueEditorStylesheet(assetURL);
  22842       });
  22843     }
  22844 
  22845     if (iconSetting.url) {
  22846       this.enqueuePreviewStylesheet(iconSetting.url);
  22847       this.enqueueEditorStylesheet(iconSetting.url);
  22848     }
  22849 
  22850     this._enqueuedIconFonts.push(iconType);
  22851 
  22852     elementor.channels.editor.trigger('fontIcon:insertion', iconType, iconSetting);
  22853   },
  22854   getIconLibrarySettings: function getIconLibrarySettings(iconType) {
  22855     var iconSetting = elementor.config.icons.libraries.filter(function (library) {
  22856       return iconType === library.name;
  22857     });
  22858 
  22859     if (iconSetting[0] && iconSetting[0].name) {
  22860       return iconSetting[0];
  22861     }
  22862 
  22863     return false;
  22864   },
  22865 
  22866   /**
  22867    *
  22868    * @param view - view to refresh if needed
  22869    * @param icon - icon control data
  22870    * @param attributes - default {} - attributes to attach to rendered html tag
  22871    * @param tag - default i - html tag to render
  22872    * @param returnType - default value - retrun type
  22873    * @returns {string|boolean|*}
  22874    */
  22875   renderIcon: function renderIcon(view, icon) {
  22876     var attributes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  22877     var tag = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'i';
  22878     var returnType = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 'value';
  22879 
  22880     if (!icon || !icon.library) {
  22881       if ('object' === returnType) {
  22882         return {
  22883           rendered: false
  22884         };
  22885       }
  22886 
  22887       return;
  22888     }
  22889 
  22890     var iconType = icon.library,
  22891         iconValue = icon.value;
  22892 
  22893     if ('svg' === iconType) {
  22894       if ('panel' === returnType) {
  22895         return '<img src="' + iconValue.url + '">';
  22896       }
  22897 
  22898       return {
  22899         rendered: true,
  22900         value: this.getInlineSvg(iconValue, view)
  22901       };
  22902     }
  22903 
  22904     var iconSettings = this.getIconLibrarySettings(iconType);
  22905 
  22906     if (iconSettings && !iconSettings.hasOwnProperty('isCustom')) {
  22907       this.enqueueIconFonts(iconType);
  22908 
  22909       if ('panel' === returnType) {
  22910         return '<' + tag + ' class="' + iconValue + '"></' + tag + '>';
  22911       }
  22912 
  22913       var tagUniqueID = tag + this.getUniqueID();
  22914       view.addRenderAttribute(tagUniqueID, attributes);
  22915       view.addRenderAttribute(tagUniqueID, 'class', iconValue);
  22916       var htmlTag = '<' + tag + ' ' + view.getRenderAttributeString(tagUniqueID) + '></' + tag + '>';
  22917 
  22918       if ('object' === returnType) {
  22919         return {
  22920           rendered: true,
  22921           value: htmlTag
  22922         };
  22923       }
  22924 
  22925       return htmlTag;
  22926     }
  22927 
  22928     elementor.channels.editor.trigger('Icon:insertion', iconType, iconValue, attributes, tag, view);
  22929 
  22930     if ('object' === returnType) {
  22931       return {
  22932         rendered: false
  22933       };
  22934     }
  22935   },
  22936   isIconMigrated: function isIconMigrated(settings, controlName) {
  22937     return settings.__fa4_migrated && settings.__fa4_migrated[controlName];
  22938   },
  22939   fetchFa4ToFa5Mapping: function fetchFa4ToFa5Mapping() {
  22940     var storageKey = 'fa4Tofa5Mapping';
  22941     var mapping = elementorCommon.storage.get(storageKey);
  22942 
  22943     if (!mapping) {
  22944       jQuery.getJSON(elementor.config.fa4_to_fa5_mapping_url, function (data) {
  22945         mapping = data;
  22946         elementorCommon.storage.set(storageKey, data);
  22947       });
  22948     }
  22949 
  22950     return mapping;
  22951   },
  22952   mapFa4ToFa5: function mapFa4ToFa5(fa4Value) {
  22953     var mapping = this.fetchFa4ToFa5Mapping();
  22954 
  22955     if (mapping[fa4Value]) {
  22956       return mapping[fa4Value];
  22957     } // every thing else is converted to solid
  22958 
  22959 
  22960     return {
  22961       value: 'fas' + fa4Value.replace('fa ', ' '),
  22962       library: 'fa-solid'
  22963     };
  22964   },
  22965   // The target parameter = 'editor'/'preview'. Defaults to 'preview' for backwards compatibility.
  22966   enqueueFont: function enqueueFont(font) {
  22967     var target = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'preview';
  22968 
  22969     if ($e.devTools) {
  22970       $e.devTools.log.info("enqueueFont font: '".concat(font, "', target: '").concat(target, "'"));
  22971     }
  22972 
  22973     if (-1 !== this._enqueuedFonts[target].indexOf(font)) {
  22974       return;
  22975     }
  22976 
  22977     var fontType = elementor.config.controls.font.options[font],
  22978         subsets = {
  22979       ru_RU: 'cyrillic',
  22980       uk: 'cyrillic',
  22981       bg_BG: 'cyrillic',
  22982       vi: 'vietnamese',
  22983       el: 'greek',
  22984       he_IL: 'hebrew'
  22985     };
  22986     var fontUrl;
  22987 
  22988     switch (fontType) {
  22989       case 'googlefonts':
  22990         fontUrl = 'https://fonts.googleapis.com/css?family=' + font + ':100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic';
  22991 
  22992         if (subsets[elementor.config.locale]) {
  22993           fontUrl += '&subset=' + subsets[elementor.config.locale];
  22994         }
  22995 
  22996         break;
  22997 
  22998       case 'earlyaccess':
  22999         var fontLowerString = font.replace(/\s+/g, '').toLowerCase();
  23000         fontUrl = 'https://fonts.googleapis.com/earlyaccess/' + fontLowerString + '.css';
  23001         break;
  23002     }
  23003 
  23004     if (!_.isEmpty(fontUrl)) {
  23005       if ('editor' === target) {
  23006         // TODO: Find better solution, temporary fix, covering issue: 'fonts does not rendered in global styles'.
  23007         this.enqueueCSS(fontUrl, elementorCommon.elements.$document);
  23008       } else {
  23009         this.enqueueCSS(fontUrl, elementor.$previewContents);
  23010       }
  23011     }
  23012 
  23013     this._enqueuedFonts[target].push(font);
  23014 
  23015     elementor.channels.editor.trigger('font:insertion', fontType, font);
  23016   },
  23017   resetEnqueuedFontsCache: function resetEnqueuedFontsCache() {
  23018     this._enqueuedFonts = {
  23019       editor: [],
  23020       preview: []
  23021     };
  23022     this._enqueuedIconFonts = [];
  23023   },
  23024   getElementChildType: function getElementChildType(elementType, container) {
  23025     var _this2 = this;
  23026 
  23027     if (!container) {
  23028       container = this.elementsHierarchy;
  23029     }
  23030 
  23031     if (undefined !== container[elementType]) {
  23032       if (jQuery.isPlainObject(container[elementType])) {
  23033         return (0, _keys.default)(container[elementType]);
  23034       }
  23035 
  23036       return null;
  23037     }
  23038 
  23039     var result = null;
  23040     jQuery.each(container, function (index, type) {
  23041       if (!jQuery.isPlainObject(type)) {
  23042         return;
  23043       }
  23044 
  23045       var childType = _this2.getElementChildType(elementType, type);
  23046 
  23047       if (childType) {
  23048         result = childType;
  23049         return false;
  23050       }
  23051     });
  23052     return result;
  23053   },
  23054   getUniqueID: function getUniqueID() {
  23055     elementorCommon.helpers.softDeprecated('elementor.helpers.getUniqueID()', '3.0.0', 'elementorCommon.helpers.getUniqueId()');
  23056     return elementorCommon.helpers.getUniqueId();
  23057   },
  23058   getSocialNetworkNameFromIcon: function getSocialNetworkNameFromIcon(iconsControl, fallbackControl) {
  23059     var toUpperCase = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
  23060     var migrated = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
  23061     var withIcon = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
  23062     var social = '',
  23063         icon = '';
  23064 
  23065     if (fallbackControl && !migrated) {
  23066       social = fallbackControl.replace('fa fa-', '');
  23067       icon = '<i class="' + fallbackControl + '"></i>';
  23068     } else if (iconsControl.value && 'svg' !== iconsControl.library) {
  23069       social = iconsControl.value.split(' ')[1];
  23070 
  23071       if (!social) {
  23072         social = '';
  23073       } else {
  23074         social = social.replace('fa-', '');
  23075       }
  23076 
  23077       icon = this.renderIcon(null, iconsControl, {}, 'i', 'panel');
  23078     } else {
  23079       icon = this.renderIcon(null, iconsControl, {}, 'i', 'panel');
  23080     }
  23081 
  23082     if ('' !== social && toUpperCase) {
  23083       social = social.split('-').join(' ');
  23084       social = social.replace(/\b\w/g, function (letter) {
  23085         return letter.toUpperCase();
  23086       });
  23087     }
  23088 
  23089     social = elementor.hooks.applyFilters('elementor/social_icons/network_name', social, iconsControl, fallbackControl, toUpperCase, withIcon);
  23090 
  23091     if (withIcon) {
  23092       social = icon + ' ' + social;
  23093     }
  23094 
  23095     return social;
  23096   },
  23097   getSimpleDialog: function getSimpleDialog(id, title, message, confirmString, onConfirm) {
  23098     return elementorCommon.dialogsManager.createWidget('confirm', {
  23099       id: id,
  23100       headerMessage: title,
  23101       message: message,
  23102       position: {
  23103         my: 'center center',
  23104         at: 'center center'
  23105       },
  23106       strings: {
  23107         confirm: confirmString,
  23108         cancel: __('Cancel', 'elementor')
  23109       },
  23110       onConfirm: onConfirm
  23111     });
  23112   },
  23113   maybeDisableWidget: function maybeDisableWidget() {
  23114     if (!elementor.config['icons_update_needed']) {
  23115       return false;
  23116     }
  23117 
  23118     var elementView = elementor.channels.panelElements.request('element:selected'),
  23119         widgetType = elementView.model.get('widgetType'),
  23120         widgetData = elementor.widgetsCache[widgetType],
  23121         hasControlOfType = function hasControlOfType(controls, type) {
  23122       var has = false;
  23123       jQuery.each(controls, function (controlName, controlData) {
  23124         if (type === controlData.type) {
  23125           has = true;
  23126           return false;
  23127         }
  23128 
  23129         if (controlData.is_repeater) {
  23130           has = hasControlOfType(controlData.fields, type);
  23131 
  23132           if (has) {
  23133             return false;
  23134           }
  23135         }
  23136       });
  23137       return has;
  23138     };
  23139 
  23140     if (widgetData) {
  23141       var hasIconsControl = hasControlOfType(widgetData.controls, 'icons');
  23142 
  23143       if (hasIconsControl) {
  23144         var onConfirm = function onConfirm() {
  23145           window.location.href = elementor.config.tools_page_link + '&redirect_to=' + encodeURIComponent(document.location.href) + '#tab-fontawesome4_migration';
  23146         };
  23147 
  23148         elementor.helpers.getSimpleDialog('elementor-enable-fa5-dialog', __('Elementor\'s New Icon Library', 'elementor'), __('Elementor v2.6 includes an upgrade from Font Awesome 4 to 5. In order to continue using icons, be sure to click "Update".', 'elementor') + ' <a href="https://go.elementor.com/fontawesome-migration/" target="_blank">' + __('Learn More', 'elementor') + '</a>', __('Update', 'elementor'), onConfirm).show();
  23149         return true;
  23150       }
  23151     }
  23152 
  23153     return false;
  23154   },
  23155 
  23156   /*
  23157   * @deprecated 2.0.0
  23158   */
  23159   stringReplaceAll: function stringReplaceAll(string, replaces) {
  23160     var re = new RegExp((0, _keys.default)(replaces).join('|'), 'gi');
  23161     return string.replace(re, function (matched) {
  23162       return replaces[matched];
  23163     });
  23164   },
  23165   isActiveControl: function isActiveControl(controlModel, values) {
  23166     var _controlModel$get, _controlModel$get2;
  23167 
  23168     var condition = controlModel.condition || ((_controlModel$get = controlModel.get) === null || _controlModel$get === void 0 ? void 0 : _controlModel$get.call(controlModel, 'condition'));
  23169     var conditions = controlModel.conditions || ((_controlModel$get2 = controlModel.get) === null || _controlModel$get2 === void 0 ? void 0 : _controlModel$get2.call(controlModel, 'conditions')); // If there is a 'condition' format, convert it to a 'conditions' format.
  23170 
  23171     if (condition) {
  23172       var terms = [];
  23173       (0, _entries.default)(condition).forEach(function (_ref) {
  23174         var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  23175             conditionName = _ref2[0],
  23176             conditionValue = _ref2[1];
  23177 
  23178         // Here we want to convert the 'condition' format to a 'conditions' format. The first step is to
  23179         // isolate the term from the negative operator if exists. For example, a condition format can look
  23180         // like 'selected_icon[value]!', so we examine this term with a negative connotation.
  23181         var conditionNameParts = conditionName.match(/([\w-]+(?:\[[\w-]+])?)?(!?)$/i),
  23182             conditionRealName = conditionNameParts[1],
  23183             isNegativeCondition = !!conditionNameParts[2],
  23184             controlValue = values[conditionRealName];
  23185         var operator;
  23186 
  23187         if ((0, _isArray.default)(conditionValue) && conditionValue.length) {
  23188           operator = isNegativeCondition ? '!in' : 'in';
  23189         } else if ((0, _isArray.default)(controlValue) && controlValue.length) {
  23190           operator = isNegativeCondition ? '!contains' : 'contains';
  23191         } else if (isNegativeCondition) {
  23192           operator = '!==';
  23193         }
  23194 
  23195         terms.push({
  23196           name: conditionRealName,
  23197           operator: operator,
  23198           value: conditionValue
  23199         });
  23200       });
  23201       conditions = {
  23202         relation: 'and',
  23203         terms: conditions ? terms.concat(conditions) : terms
  23204       };
  23205     }
  23206 
  23207     return !(conditions && !elementor.conditions.check(conditions, values));
  23208   },
  23209   cloneObject: function cloneObject(object) {
  23210     elementorCommon.helpers.hardDeprecated('elementor.helpers.cloneObject', '2.3.0', 'elementorCommon.helpers.cloneObject');
  23211     return elementorCommon.helpers.cloneObject(object);
  23212   },
  23213   disableElementEvents: function disableElementEvents($element) {
  23214     $element.each(function () {
  23215       var currentPointerEvents = this.style.pointerEvents;
  23216 
  23217       if ('none' === currentPointerEvents) {
  23218         return;
  23219       }
  23220 
  23221       jQuery(this).data('backup-pointer-events', currentPointerEvents).css('pointer-events', 'none');
  23222     });
  23223   },
  23224   enableElementEvents: function enableElementEvents($element) {
  23225     $element.each(function () {
  23226       var $this = jQuery(this),
  23227           backupPointerEvents = $this.data('backup-pointer-events');
  23228 
  23229       if (undefined === backupPointerEvents) {
  23230         return;
  23231       }
  23232 
  23233       $this.removeData('backup-pointer-events').css('pointer-events', backupPointerEvents);
  23234     });
  23235   },
  23236   wpColorPicker: function wpColorPicker($element) {
  23237     elementorCommon.helpers.deprecatedMethod('elementor.helpers.wpColorPicker()', '2.8.0', 'new ColorPicker()');
  23238     return new _colorPicker.default({
  23239       picker: {
  23240         el: $element
  23241       }
  23242     });
  23243   },
  23244   isInViewport: function isInViewport(element, html) {
  23245     var rect = element.getBoundingClientRect();
  23246     html = html || document.documentElement;
  23247     return rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || html.clientHeight) && rect.right <= (window.innerWidth || html.clientWidth);
  23248   },
  23249   scrollToView: function scrollToView($element, timeout, $parent) {
  23250     if (undefined === timeout) {
  23251       timeout = 500;
  23252     }
  23253 
  23254     var $scrolled = $parent;
  23255     var $elementorFrontendWindow = elementorFrontend.elements.$window;
  23256 
  23257     if (!$parent) {
  23258       $parent = $elementorFrontendWindow;
  23259       $scrolled = elementor.$previewContents.find('html, body');
  23260     }
  23261 
  23262     setTimeout(function () {
  23263       // Sometimes element removed during the timeout.
  23264       if (!$element[0].isConnected) {
  23265         return;
  23266       }
  23267 
  23268       var parentHeight = $parent.height(),
  23269           parentScrollTop = $parent.scrollTop(),
  23270           elementTop = $parent === $elementorFrontendWindow ? $element.offset().top : $element[0].offsetTop,
  23271           topToCheck = elementTop - parentScrollTop;
  23272 
  23273       if (topToCheck > 0 && topToCheck < parentHeight) {
  23274         return;
  23275       }
  23276 
  23277       var scrolling = elementTop - parentHeight / 2;
  23278       $scrolled.stop(true).animate({
  23279         scrollTop: scrolling
  23280       }, 1000);
  23281     }, timeout);
  23282   },
  23283   getElementInlineStyle: function getElementInlineStyle($element, properties) {
  23284     var style = {},
  23285         elementStyle = $element[0].style;
  23286     properties.forEach(function (property) {
  23287       style[property] = undefined !== elementStyle[property] ? elementStyle[property] : '';
  23288     });
  23289     return style;
  23290   },
  23291   cssWithBackup: function cssWithBackup($element, backupState, rules) {
  23292     var cssBackup = this.getElementInlineStyle($element, (0, _keys.default)(rules));
  23293     $element.data('css-backup-' + backupState, cssBackup).css(rules);
  23294   },
  23295   recoverCSSBackup: function recoverCSSBackup($element, backupState) {
  23296     var backupKey = 'css-backup-' + backupState;
  23297     $element.css($element.data(backupKey));
  23298     $element.removeData(backupKey);
  23299   },
  23300   elementSizeToUnit: function elementSizeToUnit($element, size, unit) {
  23301     var window = elementorFrontend.elements.window;
  23302 
  23303     switch (unit) {
  23304       case '%':
  23305         size = size / ($element.offsetParent().width() / 100);
  23306         break;
  23307 
  23308       case 'vw':
  23309         size = size / (window.innerWidth / 100);
  23310         break;
  23311 
  23312       case 'vh':
  23313         size = size / (window.innerHeight / 100);
  23314     }
  23315 
  23316     return Math.round(size * 1000) / 1000;
  23317   },
  23318   compareVersions: function compareVersions(versionA, versionB, operator) {
  23319     var prepareVersion = function prepareVersion(version) {
  23320       version = version + '';
  23321       return version.replace(/[^\d.]+/, '.-1.');
  23322     };
  23323 
  23324     versionA = prepareVersion(versionA);
  23325     versionB = prepareVersion(versionB);
  23326 
  23327     if (versionA === versionB) {
  23328       return !operator || /^={2,3}$/.test(operator);
  23329     }
  23330 
  23331     var versionAParts = versionA.split('.').map(Number),
  23332         versionBParts = versionB.split('.').map(Number),
  23333         longestVersionParts = Math.max(versionAParts.length, versionBParts.length);
  23334 
  23335     for (var i = 0; i < longestVersionParts; i++) {
  23336       var valueA = versionAParts[i] || 0,
  23337           valueB = versionBParts[i] || 0;
  23338 
  23339       if (valueA !== valueB) {
  23340         return elementor.conditions.compare(valueA, valueB, operator);
  23341       }
  23342     }
  23343   },
  23344   getModelLabel: function getModelLabel(model) {
  23345     var result;
  23346 
  23347     if (!(model instanceof Backbone.Model)) {
  23348       model = new Backbone.Model(model);
  23349     }
  23350 
  23351     if (model.get('labelSuffix')) {
  23352       result = model.get('title') + ' ' + model.get('labelSuffix');
  23353     } else if ('global' === model.get('widgetType')) {
  23354       if (model.getTitle) {
  23355         result = model.getTitle();
  23356       }
  23357     }
  23358 
  23359     if (!result) {
  23360       result = elementor.getElementData(model).title;
  23361     }
  23362 
  23363     return result;
  23364   },
  23365   hasPro: function hasPro() {
  23366     return !!window.elementorPro;
  23367   },
  23368 
  23369   /**
  23370    * Function validateHTMLTag().
  23371    *
  23372    * Validate an HTML tag against a safe allowed list.
  23373    *
  23374    * @param {string} tag
  23375    *
  23376    * @returns {string}
  23377    */
  23378   validateHTMLTag: function validateHTMLTag(tag) {
  23379     return allowedHTMLWrapperTags.includes(tag.toLowerCase()) ? tag : 'div';
  23380   }
  23381 };
  23382 
  23383 /***/ }),
  23384 
  23385 /***/ "../assets/dev/js/editor/utils/images-manager.js":
  23386 /*!*******************************************************!*\
  23387   !*** ../assets/dev/js/editor/utils/images-manager.js ***!
  23388   \*******************************************************/
  23389 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  23390 
  23391 "use strict";
  23392 
  23393 
  23394 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  23395 
  23396 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  23397 
  23398 var ImagesManager;
  23399 
  23400 ImagesManager = function ImagesManager() {
  23401   var self = this;
  23402   var cache = {};
  23403   var debounceDelay = 300;
  23404   var registeredItems = [];
  23405 
  23406   var getNormalizedSize = function getNormalizedSize(image) {
  23407     var size,
  23408         imageSize = image.size;
  23409 
  23410     if ('custom' === imageSize) {
  23411       var customDimension = image.dimension;
  23412 
  23413       if (customDimension.width || customDimension.height) {
  23414         size = 'custom_' + customDimension.width + 'x' + customDimension.height;
  23415       } else {
  23416         return 'full';
  23417       }
  23418     } else {
  23419       size = imageSize;
  23420     }
  23421 
  23422     return size;
  23423   };
  23424 
  23425   var viewsToUpdate = {};
  23426 
  23427   self.updateOnReceiveImage = function () {
  23428     var elementView = elementor.getPanelView().getCurrentPageView().getOption('editedElementView');
  23429     elementView.$el.addClass('elementor-loading'); // Add per cid for multiple images in a single view.
  23430 
  23431     viewsToUpdate[elementView.cid] = elementView;
  23432     elementor.channels.editor.once('imagesManager:detailsReceived', function () {
  23433       if (!_.isEmpty(viewsToUpdate)) {
  23434         _(viewsToUpdate).each(function (view) {
  23435           view.render();
  23436           view.$el.removeClass('elementor-loading');
  23437         });
  23438       }
  23439 
  23440       viewsToUpdate = {};
  23441     });
  23442   };
  23443 
  23444   self.getImageUrl = function (image) {
  23445     // Register for AJAX checking
  23446     self.registerItem(image);
  23447     var imageUrl = self.getItem(image); // If it's not in cache, like a new dropped widget or a custom size - get from settings
  23448 
  23449     if (!imageUrl) {
  23450       if ('custom' === image.size) {
  23451         if ($e.routes.isPartOf('panel/editor') && image.model) {
  23452           self.updateOnReceiveImage();
  23453         }
  23454 
  23455         return;
  23456       } // If it's a new dropped widget
  23457 
  23458 
  23459       imageUrl = image.url;
  23460     }
  23461 
  23462     return imageUrl;
  23463   };
  23464 
  23465   self.getItem = function (image) {
  23466     var size = getNormalizedSize(image),
  23467         id = image.id;
  23468 
  23469     if (!size) {
  23470       return false;
  23471     }
  23472 
  23473     if (cache[id] && cache[id][size]) {
  23474       return cache[id][size];
  23475     }
  23476 
  23477     return false;
  23478   };
  23479 
  23480   self.registerItem = function (image) {
  23481     if ('' === image.id) {
  23482       // It's a new dropped widget
  23483       return;
  23484     }
  23485 
  23486     if (self.getItem(image)) {
  23487       // It's already in cache
  23488       return;
  23489     }
  23490 
  23491     registeredItems.push(image);
  23492     self.debounceGetRemoteItems();
  23493   };
  23494 
  23495   self.getRemoteItems = function () {
  23496     var requestedItems = [],
  23497         registeredItemsLength = (0, _keys.default)(registeredItems).length,
  23498         image,
  23499         index; // It's one item, so we can render it from remote server
  23500 
  23501     if (0 === registeredItemsLength) {
  23502       return;
  23503     }
  23504 
  23505     for (index in registeredItems) {
  23506       image = registeredItems[index];
  23507       var size = getNormalizedSize(image),
  23508           id = image.id,
  23509           isFirstTime = !cache[id] || 0 === (0, _keys.default)(cache[id]).length;
  23510       requestedItems.push({
  23511         id: id,
  23512         size: size,
  23513         is_first_time: isFirstTime
  23514       });
  23515     }
  23516 
  23517     elementorCommon.ajax.send('get_images_details', {
  23518       data: {
  23519         items: requestedItems
  23520       },
  23521       success: function success(data) {
  23522         var imageId, imageSize;
  23523 
  23524         for (imageId in data) {
  23525           if (!cache[imageId]) {
  23526             cache[imageId] = {};
  23527           }
  23528 
  23529           for (imageSize in data[imageId]) {
  23530             cache[imageId][imageSize] = data[imageId][imageSize];
  23531           }
  23532         }
  23533 
  23534         registeredItems = [];
  23535         elementor.channels.editor.trigger('imagesManager:detailsReceived', data);
  23536       }
  23537     });
  23538   };
  23539 
  23540   self.debounceGetRemoteItems = _.debounce(self.getRemoteItems, debounceDelay);
  23541 };
  23542 
  23543 module.exports = new ImagesManager();
  23544 
  23545 /***/ }),
  23546 
  23547 /***/ "../assets/dev/js/editor/utils/jquery-html5-dnd.js":
  23548 /*!*********************************************************!*\
  23549   !*** ../assets/dev/js/editor/utils/jquery-html5-dnd.js ***!
  23550   \*********************************************************/
  23551 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  23552 
  23553 "use strict";
  23554 
  23555 
  23556 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  23557 
  23558 __webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");
  23559 
  23560 __webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");
  23561 
  23562 var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));
  23563 
  23564 /**
  23565  * HTML5 - Drag and Drop
  23566  */
  23567 (function ($) {
  23568   var hasFullDataTransferSupport = function hasFullDataTransferSupport(event) {
  23569     try {
  23570       event.originalEvent.dataTransfer.setData('test', 'test');
  23571       event.originalEvent.dataTransfer.clearData('test');
  23572       return true;
  23573     } catch (e) {
  23574       return false;
  23575     }
  23576   };
  23577 
  23578   var Draggable = function Draggable(userSettings) {
  23579     var self = this,
  23580         settings = {},
  23581         elementsCache = {},
  23582         defaultSettings = {
  23583       element: '',
  23584       groups: null,
  23585       onDragStart: null,
  23586       onDragEnd: null
  23587     };
  23588 
  23589     var initSettings = function initSettings() {
  23590       $.extend(true, settings, defaultSettings, userSettings);
  23591     };
  23592 
  23593     var initElementsCache = function initElementsCache() {
  23594       elementsCache.$element = $(settings.element);
  23595     };
  23596 
  23597     var buildElements = function buildElements() {
  23598       elementsCache.$element.attr('draggable', true);
  23599     };
  23600 
  23601     var onDragEnd = function onDragEnd(event) {
  23602       if ('function' === typeof settings.onDragEnd) {
  23603         settings.onDragEnd.call(elementsCache.$element, event, self);
  23604       }
  23605     };
  23606 
  23607     var onDragStart = function onDragStart(event) {
  23608       var groups = settings.groups || [],
  23609           dataContainer = {
  23610         groups: groups
  23611       };
  23612 
  23613       if (hasFullDataTransferSupport(event)) {
  23614         event.originalEvent.dataTransfer.setData((0, _stringify.default)(dataContainer), true);
  23615       }
  23616 
  23617       if ('function' === typeof settings.onDragStart) {
  23618         settings.onDragStart.call(elementsCache.$element, event, self);
  23619       }
  23620     };
  23621 
  23622     var attachEvents = function attachEvents() {
  23623       elementsCache.$element.on('dragstart', onDragStart).on('dragend', onDragEnd);
  23624     };
  23625 
  23626     var init = function init() {
  23627       initSettings();
  23628       initElementsCache();
  23629       buildElements();
  23630       attachEvents();
  23631     };
  23632 
  23633     this.destroy = function () {
  23634       elementsCache.$element.off('dragstart', onDragStart);
  23635       elementsCache.$element.removeAttr('draggable');
  23636     };
  23637 
  23638     init();
  23639   };
  23640 
  23641   var Droppable = function Droppable(userSettings) {
  23642     var self = this,
  23643         settings = {},
  23644         elementsCache = {},
  23645         currentElement,
  23646         currentSide,
  23647         defaultSettings = {
  23648       element: '',
  23649       items: '>',
  23650       horizontalSensitivity: '10%',
  23651       axis: ['vertical', 'horizontal'],
  23652       placeholder: true,
  23653       currentElementClass: 'html5dnd-current-element',
  23654       placeholderClass: 'html5dnd-placeholder',
  23655       hasDraggingOnChildClass: 'html5dnd-has-dragging-on-child',
  23656       groups: null,
  23657       isDroppingAllowed: null,
  23658       onDragEnter: null,
  23659       onDragging: null,
  23660       onDropping: null,
  23661       onDragLeave: null
  23662     };
  23663 
  23664     var initSettings = function initSettings() {
  23665       $.extend(settings, defaultSettings, userSettings);
  23666     };
  23667 
  23668     var initElementsCache = function initElementsCache() {
  23669       elementsCache.$element = $(settings.element);
  23670       elementsCache.$placeholder = $('<div>', {
  23671         class: settings.placeholderClass
  23672       });
  23673     };
  23674 
  23675     var hasHorizontalDetection = function hasHorizontalDetection() {
  23676       return -1 !== settings.axis.indexOf('horizontal');
  23677     };
  23678 
  23679     var hasVerticalDetection = function hasVerticalDetection() {
  23680       return -1 !== settings.axis.indexOf('vertical');
  23681     };
  23682 
  23683     var checkHorizontal = function checkHorizontal(offsetX, elementWidth) {
  23684       var isPercentValue, sensitivity;
  23685 
  23686       if (!hasHorizontalDetection()) {
  23687         return false;
  23688       }
  23689 
  23690       if (!hasVerticalDetection()) {
  23691         return offsetX > elementWidth / 2 ? 'right' : 'left';
  23692       }
  23693 
  23694       sensitivity = settings.horizontalSensitivity.match(/\d+/);
  23695 
  23696       if (!sensitivity) {
  23697         return false;
  23698       }
  23699 
  23700       sensitivity = sensitivity[0];
  23701       isPercentValue = /%$/.test(settings.horizontalSensitivity);
  23702 
  23703       if (isPercentValue) {
  23704         sensitivity = elementWidth / sensitivity;
  23705       }
  23706 
  23707       if (offsetX > elementWidth - sensitivity) {
  23708         return 'right';
  23709       } else if (offsetX < sensitivity) {
  23710         return 'left';
  23711       }
  23712 
  23713       return false;
  23714     };
  23715 
  23716     var setSide = function setSide(event) {
  23717       var $element = $(currentElement),
  23718           elementHeight = $element.outerHeight() - elementsCache.$placeholder.outerHeight(),
  23719           elementWidth = $element.outerWidth();
  23720       event = event.originalEvent;
  23721       currentSide = checkHorizontal(event.offsetX, elementWidth);
  23722 
  23723       if (currentSide) {
  23724         return;
  23725       }
  23726 
  23727       if (!hasVerticalDetection()) {
  23728         currentSide = null;
  23729         return;
  23730       }
  23731 
  23732       var elementPosition = currentElement.getBoundingClientRect();
  23733       currentSide = event.clientY > elementPosition.top + elementHeight / 2 ? 'bottom' : 'top';
  23734     };
  23735 
  23736     var insertPlaceholder = function insertPlaceholder() {
  23737       if (!settings.placeholder) {
  23738         return;
  23739       }
  23740 
  23741       var insertMethod = 'top' === currentSide ? 'prependTo' : 'appendTo';
  23742       elementsCache.$placeholder[insertMethod](currentElement);
  23743     };
  23744 
  23745     var isDroppingAllowed = function isDroppingAllowed(event) {
  23746       var dataTransferTypes, draggableGroups, isGroupMatch, droppingAllowed;
  23747 
  23748       if (settings.groups && hasFullDataTransferSupport(event)) {
  23749         dataTransferTypes = event.originalEvent.dataTransfer.types;
  23750         isGroupMatch = false;
  23751         dataTransferTypes = Array.prototype.slice.apply(dataTransferTypes); // Convert to array, since Firefox hold it as DOMStringList
  23752 
  23753         dataTransferTypes.forEach(function (type) {
  23754           try {
  23755             draggableGroups = JSON.parse(type);
  23756 
  23757             if (!draggableGroups.groups.slice) {
  23758               return;
  23759             }
  23760 
  23761             settings.groups.forEach(function (groupName) {
  23762               if (-1 !== draggableGroups.groups.indexOf(groupName)) {
  23763                 isGroupMatch = true;
  23764                 return false; // stops the forEach from extra loops
  23765               }
  23766             });
  23767           } catch (e) {}
  23768         });
  23769 
  23770         if (!isGroupMatch) {
  23771           return false;
  23772         }
  23773       }
  23774 
  23775       if ('function' === typeof settings.isDroppingAllowed) {
  23776         droppingAllowed = settings.isDroppingAllowed.call(currentElement, currentSide, event, self);
  23777 
  23778         if (!droppingAllowed) {
  23779           return false;
  23780         }
  23781       }
  23782 
  23783       return true;
  23784     };
  23785 
  23786     var onDragEnter = function onDragEnter(event) {
  23787       event.stopPropagation();
  23788 
  23789       if (currentElement) {
  23790         return;
  23791       }
  23792 
  23793       currentElement = this;
  23794       elementsCache.$element.parents().each(function () {
  23795         var droppableInstance = $(this).data('html5Droppable');
  23796 
  23797         if (!droppableInstance) {
  23798           return;
  23799         }
  23800 
  23801         droppableInstance.doDragLeave();
  23802       });
  23803       setSide(event);
  23804 
  23805       if (!isDroppingAllowed(event)) {
  23806         return;
  23807       }
  23808 
  23809       insertPlaceholder();
  23810       elementsCache.$element.addClass(settings.hasDraggingOnChildClass);
  23811       $(currentElement).addClass(settings.currentElementClass);
  23812 
  23813       if ('function' === typeof settings.onDragEnter) {
  23814         settings.onDragEnter.call(currentElement, currentSide, event, self);
  23815       }
  23816     };
  23817 
  23818     var onDragOver = function onDragOver(event) {
  23819       event.stopPropagation();
  23820 
  23821       if (!currentElement) {
  23822         onDragEnter.call(this, event);
  23823       }
  23824 
  23825       var oldSide = currentSide;
  23826       setSide(event);
  23827 
  23828       if (!isDroppingAllowed(event)) {
  23829         return;
  23830       }
  23831 
  23832       event.preventDefault();
  23833 
  23834       if (oldSide !== currentSide) {
  23835         insertPlaceholder();
  23836       }
  23837 
  23838       if ('function' === typeof settings.onDragging) {
  23839         settings.onDragging.call(this, currentSide, event, self);
  23840       }
  23841     };
  23842 
  23843     var onDragLeave = function onDragLeave(event) {
  23844       var elementPosition = this.getBoundingClientRect();
  23845 
  23846       if ('dragleave' === event.type && !(event.clientX < elementPosition.left || event.clientX >= elementPosition.right || event.clientY < elementPosition.top || event.clientY >= elementPosition.bottom)) {
  23847         return;
  23848       }
  23849 
  23850       $(currentElement).removeClass(settings.currentElementClass);
  23851       self.doDragLeave();
  23852     };
  23853 
  23854     var onDrop = function onDrop(event) {
  23855       setSide(event);
  23856 
  23857       if (!isDroppingAllowed(event)) {
  23858         return;
  23859       }
  23860 
  23861       event.preventDefault();
  23862 
  23863       if ('function' === typeof settings.onDropping) {
  23864         settings.onDropping.call(this, currentSide, event, self);
  23865       }
  23866     };
  23867 
  23868     var attachEvents = function attachEvents() {
  23869       elementsCache.$element.on('dragenter', settings.items, onDragEnter).on('dragover', settings.items, onDragOver).on('drop', settings.items, onDrop).on('dragleave drop', settings.items, onDragLeave);
  23870     };
  23871 
  23872     var init = function init() {
  23873       initSettings();
  23874       initElementsCache();
  23875       attachEvents();
  23876     };
  23877 
  23878     this.doDragLeave = function () {
  23879       if (settings.placeholder) {
  23880         elementsCache.$placeholder.remove();
  23881       }
  23882 
  23883       elementsCache.$element.removeClass(settings.hasDraggingOnChildClass);
  23884 
  23885       if ('function' === typeof settings.onDragLeave) {
  23886         settings.onDragLeave.call(currentElement, event, self);
  23887       }
  23888 
  23889       currentElement = currentSide = null;
  23890     };
  23891 
  23892     this.destroy = function () {
  23893       elementsCache.$element.off('dragenter', settings.items, onDragEnter).off('dragover', settings.items, onDragOver).off('drop', settings.items, onDrop).off('dragleave drop', settings.items, onDragLeave);
  23894     };
  23895 
  23896     init();
  23897   };
  23898 
  23899   var plugins = {
  23900     html5Draggable: Draggable,
  23901     html5Droppable: Droppable
  23902   };
  23903   $.each(plugins, function (pluginName, Plugin) {
  23904     $.fn[pluginName] = function (options) {
  23905       options = options || {};
  23906       this.each(function () {
  23907         var instance = $.data(this, pluginName),
  23908             hasInstance = instance instanceof Plugin;
  23909 
  23910         if (hasInstance) {
  23911           if ('destroy' === options) {
  23912             instance.destroy();
  23913             $.removeData(this, pluginName);
  23914           }
  23915 
  23916           return;
  23917         }
  23918 
  23919         options.element = this;
  23920         $.data(this, pluginName, new Plugin(options));
  23921       });
  23922       return this;
  23923     };
  23924   });
  23925 })(jQuery);
  23926 
  23927 /***/ }),
  23928 
  23929 /***/ "../assets/dev/js/editor/utils/jquery-serialize-object.js":
  23930 /*!****************************************************************!*\
  23931   !*** ../assets/dev/js/editor/utils/jquery-serialize-object.js ***!
  23932   \****************************************************************/
  23933 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  23934 
  23935 "use strict";
  23936 
  23937 
  23938 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  23939 
  23940 __webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");
  23941 
  23942 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  23943 
  23944 /*
  23945  * jQuery Serialize Object v1.0.1
  23946  */
  23947 (function ($) {
  23948   $.fn.elementorSerializeObject = function () {
  23949     var serializedArray = this.serializeArray(),
  23950         data = {};
  23951 
  23952     var parseObject = function parseObject(dataContainer, key, value) {
  23953       var isArrayKey = /^[^\[\]]+\[]/.test(key),
  23954           isObjectKey = /^[^\[\]]+\[[^\[\]]+]/.test(key),
  23955           keyName = key.replace(/\[.*/, '');
  23956 
  23957       if (isArrayKey) {
  23958         if (!dataContainer[keyName]) {
  23959           dataContainer[keyName] = [];
  23960         }
  23961       } else {
  23962         if (!isObjectKey) {
  23963           if (dataContainer.push) {
  23964             dataContainer.push(value);
  23965           } else {
  23966             dataContainer[keyName] = value;
  23967           }
  23968 
  23969           return;
  23970         }
  23971 
  23972         if (!dataContainer[keyName]) {
  23973           dataContainer[keyName] = {};
  23974         }
  23975       }
  23976 
  23977       var nextKeys = key.match(/\[[^\[\]]*]/g);
  23978       nextKeys[0] = nextKeys[0].replace(/\[|]/g, '');
  23979       return parseObject(dataContainer[keyName], nextKeys.join(''), value);
  23980     };
  23981 
  23982     $.each(serializedArray, function () {
  23983       parseObject(data, this.name, this.value);
  23984     });
  23985     return data;
  23986   };
  23987 })(jQuery);
  23988 
  23989 /***/ }),
  23990 
  23991 /***/ "../assets/dev/js/editor/utils/notice-bar.js":
  23992 /*!***************************************************!*\
  23993   !*** ../assets/dev/js/editor/utils/notice-bar.js ***!
  23994   \***************************************************/
  23995 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  23996 
  23997 "use strict";
  23998 
  23999 
  24000 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  24001 
  24002 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  24003 
  24004 _Object$defineProperty(exports, "__esModule", {
  24005   value: true
  24006 });
  24007 
  24008 exports.default = void 0;
  24009 
  24010 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  24011 
  24012 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  24013 
  24014 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  24015 
  24016 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  24017 
  24018 var _default = /*#__PURE__*/function (_elementorModules$Vie) {
  24019   (0, _inherits2.default)(_default, _elementorModules$Vie);
  24020 
  24021   var _super = (0, _createSuper2.default)(_default);
  24022 
  24023   function _default() {
  24024     (0, _classCallCheck2.default)(this, _default);
  24025     return _super.apply(this, arguments);
  24026   }
  24027 
  24028   (0, _createClass2.default)(_default, [{
  24029     key: "getDefaultSettings",
  24030     value: function getDefaultSettings() {
  24031       return {
  24032         selectors: {
  24033           notice: '#elementor-notice-bar',
  24034           close: '#elementor-notice-bar__close'
  24035         }
  24036       };
  24037     }
  24038   }, {
  24039     key: "getDefaultElements",
  24040     value: function getDefaultElements() {
  24041       var settings = this.getSettings();
  24042       return {
  24043         $notice: jQuery(settings.selectors.notice),
  24044         $close: jQuery(settings.selectors.close)
  24045       };
  24046     }
  24047   }, {
  24048     key: "bindEvents",
  24049     value: function bindEvents() {
  24050       this.elements.$close.on('click', this.onCloseClick.bind(this));
  24051     }
  24052   }, {
  24053     key: "onCloseClick",
  24054     value: function onCloseClick() {
  24055       this.elements.$notice.slideUp();
  24056       elementorCommon.ajax.addRequest('notice_bar_dismiss');
  24057     }
  24058   }]);
  24059   return _default;
  24060 }(elementorModules.ViewModule);
  24061 
  24062 exports.default = _default;
  24063 
  24064 /***/ }),
  24065 
  24066 /***/ "../assets/dev/js/editor/utils/notifications.js":
  24067 /*!******************************************************!*\
  24068   !*** ../assets/dev/js/editor/utils/notifications.js ***!
  24069   \******************************************************/
  24070 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  24071 
  24072 "use strict";
  24073 
  24074 
  24075 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  24076 
  24077 var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));
  24078 
  24079 module.exports = elementorModules.Module.extend({
  24080   initToast: function initToast() {
  24081     var toast = elementorCommon.dialogsManager.createWidget('buttons', {
  24082       id: 'elementor-toast',
  24083       position: {
  24084         my: 'center bottom',
  24085         at: 'center bottom-10',
  24086         of: '#elementor-panel-content-wrapper',
  24087         autoRefresh: true
  24088       },
  24089       hide: {
  24090         onClick: true,
  24091         auto: true,
  24092         autoDelay: 10000
  24093       },
  24094       effects: {
  24095         show: function show() {
  24096           var $widget = toast.getElements('widget');
  24097           $widget.show();
  24098           toast.refreshPosition();
  24099           var top = (0, _parseInt2.default)($widget.css('top'), 10);
  24100           $widget.hide().css('top', top + 100);
  24101           $widget.animate({
  24102             opacity: 'show',
  24103             height: 'show',
  24104             paddingBottom: 'show',
  24105             paddingTop: 'show',
  24106             top: top
  24107           }, {
  24108             easing: 'linear',
  24109             duration: 300
  24110           });
  24111         },
  24112         hide: function hide() {
  24113           var $widget = toast.getElements('widget'),
  24114               top = (0, _parseInt2.default)($widget.css('top'), 10);
  24115           $widget.animate({
  24116             opacity: 'hide',
  24117             height: 'hide',
  24118             paddingBottom: 'hide',
  24119             paddingTop: 'hide',
  24120             top: top + 100
  24121           }, {
  24122             easing: 'linear',
  24123             duration: 300
  24124           });
  24125         }
  24126       },
  24127       button: {
  24128         tag: 'div'
  24129       }
  24130     });
  24131 
  24132     this.getToast = function () {
  24133       return toast;
  24134     };
  24135   },
  24136   showToast: function showToast(options) {
  24137     var toast = this.getToast();
  24138     toast.setMessage(options.message);
  24139     toast.getElements('buttonsWrapper').empty();
  24140 
  24141     if (options.buttons) {
  24142       options.buttons.forEach(function (button) {
  24143         toast.addButton(button);
  24144       });
  24145     } else {
  24146       toast.getElements('buttonsWrapper').remove();
  24147     }
  24148 
  24149     if (options.classes) {
  24150       toast.getElements('widget').addClass(options.classes);
  24151     }
  24152 
  24153     toast.show();
  24154   },
  24155   onInit: function onInit() {
  24156     this.initToast();
  24157   }
  24158 });
  24159 
  24160 /***/ }),
  24161 
  24162 /***/ "../assets/dev/js/editor/utils/presets-factory.js":
  24163 /*!********************************************************!*\
  24164   !*** ../assets/dev/js/editor/utils/presets-factory.js ***!
  24165   \********************************************************/
  24166 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  24167 
  24168 "use strict";
  24169 
  24170 
  24171 __webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");
  24172 
  24173 var presetsFactory;
  24174 presetsFactory = {
  24175   getPresetsDictionary: function getPresetsDictionary() {
  24176     return {
  24177       11: 100 / 9,
  24178       12: 100 / 8,
  24179       14: 100 / 7,
  24180       16: 100 / 6,
  24181       33: 100 / 3,
  24182       66: 2 / 3 * 100,
  24183       83: 5 / 6 * 100
  24184     };
  24185   },
  24186   getAbsolutePresetValues: function getAbsolutePresetValues(preset) {
  24187     var clonedPreset = elementorCommon.helpers.cloneObject(preset),
  24188         presetDictionary = this.getPresetsDictionary();
  24189 
  24190     _.each(clonedPreset, function (unitValue, unitIndex) {
  24191       if (presetDictionary[unitValue]) {
  24192         clonedPreset[unitIndex] = presetDictionary[unitValue];
  24193       }
  24194     });
  24195 
  24196     return clonedPreset;
  24197   },
  24198   getPresets: function getPresets(columnsCount, presetIndex) {
  24199     var presets = elementorCommon.helpers.cloneObject(elementor.config.elements.section.presets);
  24200 
  24201     if (columnsCount) {
  24202       presets = presets[columnsCount];
  24203     }
  24204 
  24205     if (presetIndex) {
  24206       presets = presets[presetIndex];
  24207     }
  24208 
  24209     return presets;
  24210   },
  24211   getPresetByStructure: function getPresetByStructure(structure) {
  24212     var parsedStructure = this.getParsedStructure(structure);
  24213     return this.getPresets(parsedStructure.columnsCount, parsedStructure.presetIndex);
  24214   },
  24215   getParsedStructure: function getParsedStructure(structure) {
  24216     structure += ''; // Make sure this is a string
  24217 
  24218     return {
  24219       columnsCount: structure.slice(0, -1),
  24220       presetIndex: structure.substr(-1)
  24221     };
  24222   },
  24223   getPresetSVG: function getPresetSVG(preset, svgWidth, svgHeight, separatorWidth) {
  24224     svgWidth = svgWidth || 100;
  24225     svgHeight = svgHeight || 50;
  24226     separatorWidth = separatorWidth || 2;
  24227 
  24228     var absolutePresetValues = this.getAbsolutePresetValues(preset),
  24229         presetSVGPath = this._generatePresetSVGPath(absolutePresetValues, svgWidth, svgHeight, separatorWidth);
  24230 
  24231     return this._createSVGPreset(presetSVGPath, svgWidth, svgHeight);
  24232   },
  24233   _createSVGPreset: function _createSVGPreset(presetPath, svgWidth, svgHeight) {
  24234     // this is here to avoid being picked up by https re-write systems
  24235     var protocol = 'ht' + 'tp';
  24236     var svg = document.createElementNS(protocol + '://www.w3.org/2000/svg', 'svg');
  24237     svg.setAttributeNS(protocol + '://www.w3.org/2000/xmlns/', 'xmlns:xlink', protocol + '://www.w3.org/1999/xlink');
  24238     svg.setAttribute('viewBox', '0 0 ' + svgWidth + ' ' + svgHeight);
  24239     var path = document.createElementNS(protocol + '://www.w3.org/2000/svg', 'path');
  24240     path.setAttribute('d', presetPath);
  24241     svg.appendChild(path);
  24242     return svg;
  24243   },
  24244   _generatePresetSVGPath: function _generatePresetSVGPath(preset, svgWidth, svgHeight, separatorWidth) {
  24245     var DRAW_SIZE = svgWidth - separatorWidth * (preset.length - 1);
  24246     var xPointer = 0,
  24247         dOutput = '';
  24248 
  24249     for (var i = 0; i < preset.length; i++) {
  24250       if (i) {
  24251         dOutput += ' ';
  24252       }
  24253 
  24254       var increment = preset[i] / 100 * DRAW_SIZE;
  24255       xPointer += increment;
  24256       dOutput += 'M' + +xPointer.toFixed(4) + ',0';
  24257       dOutput += 'V' + svgHeight;
  24258       dOutput += 'H' + +(xPointer - increment).toFixed(4);
  24259       dOutput += 'V0Z';
  24260       xPointer += separatorWidth;
  24261     }
  24262 
  24263     return dOutput;
  24264   }
  24265 };
  24266 module.exports = presetsFactory;
  24267 
  24268 /***/ }),
  24269 
  24270 /***/ "../assets/dev/js/editor/utils/promotion.js":
  24271 /*!**************************************************!*\
  24272   !*** ../assets/dev/js/editor/utils/promotion.js ***!
  24273   \**************************************************/
  24274 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  24275 
  24276 "use strict";
  24277 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  24278 
  24279 
  24280 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  24281 
  24282 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  24283 
  24284 _Object$defineProperty(exports, "__esModule", {
  24285   value: true
  24286 });
  24287 
  24288 exports.default = void 0;
  24289 
  24290 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  24291 
  24292 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  24293 
  24294 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  24295 
  24296 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  24297 
  24298 var _default = /*#__PURE__*/function (_elementorModules$Mod) {
  24299   (0, _inherits2.default)(_default, _elementorModules$Mod);
  24300 
  24301   var _super = (0, _createSuper2.default)(_default);
  24302 
  24303   function _default() {
  24304     var _this;
  24305 
  24306     (0, _classCallCheck2.default)(this, _default);
  24307     _this = _super.call(this);
  24308 
  24309     _this.initDialog();
  24310 
  24311     return _this;
  24312   }
  24313 
  24314   (0, _createClass2.default)(_default, [{
  24315     key: "initDialog",
  24316     value: function initDialog() {
  24317       var _this2 = this;
  24318 
  24319       this.dialog = elementor.dialogsManager.createWidget('buttons', {
  24320         id: 'elementor-element--promotion__dialog',
  24321         effects: {
  24322           show: 'show',
  24323           hide: 'hide'
  24324         },
  24325         hide: {
  24326           onOutsideClick: false
  24327         },
  24328         position: {
  24329           my: (elementorCommon.config.isRTL ? 'right' : 'left') + '+5 top'
  24330         }
  24331       });
  24332       this.dialog.addButton({
  24333         name: 'action',
  24334         text: __('See it in Action', 'elementor'),
  24335         callback: function callback() {
  24336           open(_this2.actionURL, '_blank');
  24337         }
  24338       });
  24339       this.dialog.getElements('action').addClass('elementor-button elementor-button-success');
  24340       var $promotionTitle = jQuery('<div>', {
  24341         id: 'elementor-element--promotion__dialog__title'
  24342       }),
  24343           $proIcon = jQuery('<i>', {
  24344         class: 'eicon-pro-icon'
  24345       }),
  24346           $closeButton = jQuery('<i>', {
  24347         class: 'eicon-close'
  24348       });
  24349       $closeButton.on('click', function () {
  24350         return _this2.dialog.hide();
  24351       });
  24352       this.dialog.getElements('header').append($promotionTitle, $proIcon, $closeButton);
  24353       this.$promotionTitle = $promotionTitle;
  24354     }
  24355   }, {
  24356     key: "showDialog",
  24357     value: function showDialog(options) {
  24358       if (!this.dialog) {
  24359         this.initDialog();
  24360       }
  24361 
  24362       this.actionURL = options.actionURL;
  24363       this.$promotionTitle.text(options.headerMessage);
  24364       this.dialog.setMessage(options.message).setSettings('position', {
  24365         of: options.element,
  24366         at: (elementorCommon.config.isRTL ? 'left' : 'right') + ' top' + options.top
  24367       });
  24368       return this.dialog.show();
  24369     }
  24370   }]);
  24371   return _default;
  24372 }(elementorModules.Module);
  24373 
  24374 exports.default = _default;
  24375 
  24376 /***/ }),
  24377 
  24378 /***/ "../assets/dev/js/editor/utils/schemes.js":
  24379 /*!************************************************!*\
  24380   !*** ../assets/dev/js/editor/utils/schemes.js ***!
  24381   \************************************************/
  24382 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  24383 
  24384 "use strict";
  24385 
  24386 
  24387 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  24388 
  24389 var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));
  24390 
  24391 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  24392 
  24393 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  24394 
  24395 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  24396 
  24397 __webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");
  24398 
  24399 var Schemes,
  24400     Stylesheet = __webpack_require__(/*! elementor-editor-utils/stylesheet */ "../assets/dev/js/editor/utils/stylesheet.js"),
  24401     ControlsCSSParser = __webpack_require__(/*! elementor-editor-utils/controls-css-parser */ "../assets/dev/js/editor/utils/controls-css-parser.js");
  24402 
  24403 Schemes = function Schemes() {
  24404   var self = this,
  24405       stylesheet = new Stylesheet(),
  24406       schemes = {},
  24407       settings = {
  24408     selectorWrapperPrefix: '.elementor-widget-'
  24409   },
  24410       elements = {};
  24411 
  24412   var buildUI = function buildUI() {
  24413     elements.$previewHead.append(elements.$style);
  24414   };
  24415 
  24416   var initElements = function initElements() {
  24417     var id = 'elementor-style-scheme';
  24418     elements.$style = elementor.$previewContents.find("#".concat(id));
  24419 
  24420     if (!elements.$style.length) {
  24421       elements.$style = jQuery('<style>', {
  24422         id: id
  24423       });
  24424     }
  24425 
  24426     elements.$previewHead = elementor.$previewContents.find('head');
  24427   };
  24428 
  24429   var initSchemes = function initSchemes() {
  24430     schemes = elementorCommon.helpers.cloneObject(elementor.config.schemes.items);
  24431   };
  24432 
  24433   var fetchControlStyles = function fetchControlStyles(control, controlsStack, widgetType) {
  24434     ControlsCSSParser.addControlStyleRules(stylesheet, control, controlsStack, function (controlStyles) {
  24435       return self.getSchemeValue(controlStyles.scheme.type, controlStyles.scheme.value, controlStyles.scheme.key).value;
  24436     }, ['{{WRAPPER}}'], [settings.selectorWrapperPrefix + widgetType]);
  24437   };
  24438 
  24439   var fetchWidgetControlsStyles = function fetchWidgetControlsStyles(widget) {
  24440     var widgetSchemeControls = self.getWidgetSchemeControls(widget);
  24441 
  24442     _.each(widgetSchemeControls, function (control) {
  24443       fetchControlStyles(control, widgetSchemeControls, widget.widget_type);
  24444     });
  24445   };
  24446 
  24447   var fetchAllWidgetsSchemesStyle = function fetchAllWidgetsSchemesStyle() {
  24448     _.each(elementor.widgetsCache, function (widget) {
  24449       fetchWidgetControlsStyles(widget);
  24450     });
  24451   };
  24452 
  24453   this.init = function () {
  24454     initElements();
  24455     buildUI();
  24456     initSchemes();
  24457     return self;
  24458   };
  24459 
  24460   this.getWidgetSchemeControls = function (widget) {
  24461     return _.filter(widget.controls, function (control) {
  24462       return _.isObject(control.scheme);
  24463     });
  24464   };
  24465 
  24466   this.getSchemes = function () {
  24467     return schemes;
  24468   };
  24469 
  24470   this.getEnabledSchemesTypes = function () {
  24471     return elementor.config.schemes.enabled_schemes;
  24472   };
  24473 
  24474   this.getScheme = function (schemeType) {
  24475     return schemes[schemeType];
  24476   };
  24477 
  24478   this.getSchemeValue = function (schemeType, value, key) {
  24479     if (this.getEnabledSchemesTypes().indexOf(schemeType) < 0) {
  24480       return false;
  24481     }
  24482 
  24483     var scheme = self.getScheme(schemeType),
  24484         schemeValue = scheme.items[value];
  24485 
  24486     if (key && _.isObject(schemeValue)) {
  24487       var clonedSchemeValue = elementorCommon.helpers.cloneObject(schemeValue);
  24488       clonedSchemeValue.value = schemeValue.value[key];
  24489       return clonedSchemeValue;
  24490     }
  24491 
  24492     return schemeValue;
  24493   };
  24494 
  24495   this.printSchemesStyle = function () {
  24496     stylesheet.empty();
  24497     fetchAllWidgetsSchemesStyle();
  24498     elements.$style.text(stylesheet);
  24499   };
  24500 
  24501   this.resetSchemes = function (schemeName) {
  24502     schemes[schemeName] = elementorCommon.helpers.cloneObject(elementor.config.schemes.items[schemeName]);
  24503   };
  24504 
  24505   this.saveScheme = function (schemeName) {
  24506     elementor.config.schemes.items[schemeName].items = elementorCommon.helpers.cloneObject(schemes[schemeName].items);
  24507     var itemsToSave = {};
  24508 
  24509     _.each(schemes[schemeName].items, function (item, key) {
  24510       itemsToSave[key] = item.value;
  24511     });
  24512 
  24513     return elementorCommon.ajax.addRequest('apply_scheme', {
  24514       data: {
  24515         scheme_name: schemeName,
  24516         data: (0, _stringify.default)(itemsToSave)
  24517       }
  24518     });
  24519   };
  24520 
  24521   this.setSchemeValue = function (schemeName, itemKey, value) {
  24522     schemes[schemeName].items[itemKey].value = value;
  24523   };
  24524 
  24525   this.addSchemeItem = function (schemeName, item, at) {
  24526     var scheme = schemes[schemeName],
  24527         schemeKeys = (0, _keys.default)(scheme.items),
  24528         hasAt = undefined !== at,
  24529         targetIndex = hasAt ? at : +schemeKeys.slice(-1)[0] || 0;
  24530 
  24531     if (hasAt) {
  24532       var itemIndex = schemeKeys.length + 1;
  24533 
  24534       for (; itemIndex > at; itemIndex--) {
  24535         scheme.items[itemIndex] = scheme.items[itemIndex - 1];
  24536       }
  24537     }
  24538 
  24539     scheme.items[targetIndex + 1] = item;
  24540   };
  24541 
  24542   this.removeSchemeItem = function (schemeName, itemKey) {
  24543     var items = schemes[schemeName].items;
  24544 
  24545     while (true) {
  24546       itemKey++;
  24547       var nextItem = items[itemKey + 1];
  24548 
  24549       if (!nextItem) {
  24550         delete items[itemKey];
  24551         break;
  24552       }
  24553 
  24554       items[itemKey] = nextItem;
  24555     }
  24556   };
  24557 };
  24558 
  24559 module.exports = new Schemes();
  24560 
  24561 /***/ }),
  24562 
  24563 /***/ "../assets/dev/js/editor/utils/select2.js":
  24564 /*!************************************************!*\
  24565   !*** ../assets/dev/js/editor/utils/select2.js ***!
  24566   \************************************************/
  24567 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  24568 
  24569 "use strict";
  24570 
  24571 
  24572 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  24573 
  24574 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  24575 
  24576 _Object$defineProperty(exports, "__esModule", {
  24577   value: true
  24578 });
  24579 
  24580 exports.default = void 0;
  24581 
  24582 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  24583 
  24584 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  24585 
  24586 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  24587 
  24588 var _get3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  24589 
  24590 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  24591 
  24592 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  24593 
  24594 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  24595 
  24596 var Select2 = /*#__PURE__*/function (_elementorModules$Vie) {
  24597   (0, _inherits2.default)(Select2, _elementorModules$Vie);
  24598 
  24599   var _super = (0, _createSuper2.default)(Select2);
  24600 
  24601   function Select2() {
  24602     (0, _classCallCheck2.default)(this, Select2);
  24603     return _super.apply(this, arguments);
  24604   }
  24605 
  24606   (0, _createClass2.default)(Select2, [{
  24607     key: "getDefaultSettings",
  24608     value: function getDefaultSettings() {
  24609       return {
  24610         selectors: {
  24611           plusButton: '.select2-selection__e-plus-button',
  24612           // The select2InlineSearch selector can not be changed.
  24613           select2InlineSearch: '.select2-selection__rendered .select2-search--inline'
  24614         },
  24615         classes: {
  24616           plusButton: 'select2-selection__e-plus-button',
  24617           // The select2Choice class name can not be changed to get the select2 choice style.
  24618           select2Choice: 'select2-selection__choice'
  24619         }
  24620       };
  24621     }
  24622   }, {
  24623     key: "isAllSelected",
  24624     value: function isAllSelected() {
  24625       var _this = this;
  24626 
  24627       var isAllSelected = false;
  24628       this.select2.dataAdapter.query({}, function (data) {
  24629         var totalOptionsCount = data.results.length,
  24630             currentSelectionsCount = _this.elements.$element.select2('data').length;
  24631 
  24632         if (currentSelectionsCount === totalOptionsCount) {
  24633           isAllSelected = true;
  24634         }
  24635       });
  24636       return isAllSelected;
  24637     }
  24638   }, {
  24639     key: "addPlusButton",
  24640     value: function addPlusButton() {
  24641       var _this$getSettings = this.getSettings('classes'),
  24642           plusButton = _this$getSettings.plusButton,
  24643           select2Choice = _this$getSettings.select2Choice,
  24644           plusButtonClasses = [select2Choice, plusButton].join(' ');
  24645 
  24646       this.elements.$plusButton = jQuery('<li>', {
  24647         class: plusButtonClasses
  24648       }).text('+');
  24649       this.elements.$plusButton.insertBefore(this.elements.$inlineSearch);
  24650     }
  24651   }, {
  24652     key: "togglePlusButton",
  24653     value: function togglePlusButton() {
  24654       if (this.isAllSelected()) {
  24655         if (this.elements.$plusButton) {
  24656           this.elements.$plusButton.remove();
  24657         }
  24658       } else {
  24659         this.addPlusButton();
  24660       }
  24661     }
  24662   }, {
  24663     key: "addSelect2Events",
  24664     value: function addSelect2Events() {
  24665       var _this2 = this;
  24666 
  24667       this.select2.on('select', function () {
  24668         return _this2.onSelectionChange();
  24669       });
  24670       this.select2.on('unselect', function () {
  24671         return _this2.onSelectionChange();
  24672       });
  24673     }
  24674   }, {
  24675     key: "onSelectionChange",
  24676     value: function onSelectionChange() {
  24677       this.togglePlusButton();
  24678     }
  24679   }, {
  24680     key: "extendBaseFunctionality",
  24681     value: function extendBaseFunctionality() {
  24682       var config = this.select2.options.options; // When select2 has ajax the selected items re-render multiple times and deletes the injected plus-button.
  24683 
  24684       if (config.multiple && !config.ajax) {
  24685         this.togglePlusButton();
  24686         this.addSelect2Events();
  24687       }
  24688     }
  24689   }, {
  24690     key: "initSelect2Elements",
  24691     value: function initSelect2Elements() {
  24692       var select2InlineSearch = this.getSettings('selectors.select2InlineSearch');
  24693       this.elements.$element = this.select2.$element;
  24694       this.elements.$container = this.select2.$container;
  24695       this.elements.$inlineSearch = this.elements.$container.find(select2InlineSearch);
  24696     }
  24697   }, {
  24698     key: "destroy",
  24699     value: function destroy() {
  24700       this.elements.$element.select2('destroy');
  24701     }
  24702   }, {
  24703     key: "onInit",
  24704     value: function onInit() {
  24705       var _get2;
  24706 
  24707       for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  24708         args[_key] = arguments[_key];
  24709       }
  24710 
  24711       (_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(Select2.prototype), "onInit", this)).call.apply(_get2, [this].concat(args));
  24712 
  24713       var _this$getSettings2 = this.getSettings(),
  24714           $element = _this$getSettings2.$element,
  24715           options = _this$getSettings2.options;
  24716 
  24717       this.select2 = $element.select2(options).data('select2');
  24718       this.initSelect2Elements();
  24719       this.extendBaseFunctionality();
  24720     }
  24721   }]);
  24722   return Select2;
  24723 }(elementorModules.ViewModule);
  24724 
  24725 exports.default = Select2;
  24726 
  24727 /***/ }),
  24728 
  24729 /***/ "../assets/dev/js/editor/utils/stylesheet.js":
  24730 /*!***************************************************!*\
  24731   !*** ../assets/dev/js/editor/utils/stylesheet.js ***!
  24732   \***************************************************/
  24733 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  24734 
  24735 "use strict";
  24736 
  24737 
  24738 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  24739 
  24740 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  24741 
  24742 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  24743 
  24744 __webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");
  24745 
  24746 __webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");
  24747 
  24748 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  24749 
  24750 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
  24751 
  24752 __webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");
  24753 
  24754 (function ($) {
  24755   var Stylesheet = function Stylesheet() {
  24756     var self = this,
  24757         rules = {},
  24758         rawCSS = {},
  24759         devices = {};
  24760 
  24761     var queryToHash = function queryToHash(query) {
  24762       var hash = [];
  24763       $.each(query, function (endPoint) {
  24764         hash.push(endPoint + '_' + this);
  24765       });
  24766       return hash.join('-');
  24767     };
  24768 
  24769     var hashToQuery = function hashToQuery(hash) {
  24770       var query = {};
  24771       hash = hash.split('-').filter(String);
  24772       hash.forEach(function (singleQuery) {
  24773         // split {max}/{min}_{device name} to separate strings
  24774         var queryParts = singleQuery.split(/_(.+)/),
  24775             endPoint = queryParts[0],
  24776             deviceName = queryParts[1];
  24777         query[endPoint] = 'max' === endPoint ? devices[deviceName] : elementorFrontend.breakpoints.getDeviceMinBreakpoint(deviceName);
  24778       });
  24779       return query;
  24780     };
  24781 
  24782     var addQueryHash = function addQueryHash(queryHash) {
  24783       rules[queryHash] = {};
  24784       var hashes = (0, _keys.default)(rules);
  24785 
  24786       if (hashes.length < 2) {
  24787         return;
  24788       } // Sort the devices from narrowest to widest
  24789 
  24790 
  24791       hashes.sort(function (a, b) {
  24792         if ('all' === a) {
  24793           return -1;
  24794         }
  24795 
  24796         if ('all' === b) {
  24797           return 1;
  24798         }
  24799 
  24800         var aQuery = hashToQuery(a),
  24801             bQuery = hashToQuery(b);
  24802         return bQuery.max - aQuery.max;
  24803       });
  24804       var sortedRules = {};
  24805       hashes.forEach(function (deviceName) {
  24806         sortedRules[deviceName] = rules[deviceName];
  24807       });
  24808       rules = sortedRules;
  24809     };
  24810 
  24811     var getQueryHashStyleFormat = function getQueryHashStyleFormat(queryHash) {
  24812       var query = hashToQuery(queryHash),
  24813           styleFormat = [];
  24814       $.each(query, function (endPoint) {
  24815         styleFormat.push('(' + endPoint + '-width:' + this + 'px)');
  24816       });
  24817       return '@media' + styleFormat.join(' and ');
  24818     };
  24819 
  24820     this.addDevice = function (newDeviceName, deviceValue) {
  24821       devices[newDeviceName] = deviceValue;
  24822       var deviceNames = (0, _keys.default)(devices);
  24823 
  24824       if (deviceNames.length < 2) {
  24825         return self;
  24826       } // Sort the devices from narrowest to widest
  24827 
  24828 
  24829       deviceNames.sort(function (a, b) {
  24830         return devices[a] - devices[b];
  24831       });
  24832       var sortedDevices = {};
  24833       deviceNames.forEach(function (deviceName) {
  24834         sortedDevices[deviceName] = devices[deviceName];
  24835       });
  24836       devices = sortedDevices;
  24837       return self;
  24838     };
  24839 
  24840     this.addRawCSS = function (key, css) {
  24841       rawCSS[key] = css;
  24842     };
  24843 
  24844     this.addRules = function (selector, styleRules, query) {
  24845       var queryHash = 'all';
  24846 
  24847       if (!_.isEmpty(query)) {
  24848         queryHash = queryToHash(query);
  24849       }
  24850 
  24851       if (!rules[queryHash]) {
  24852         addQueryHash(queryHash);
  24853       }
  24854 
  24855       if (!styleRules) {
  24856         var parsedRules = selector.match(/[^{]+\{[^}]+}/g);
  24857         $.each(parsedRules, function () {
  24858           var parsedRule = this.match(/([^{]+)\{([^}]+)}/);
  24859 
  24860           if (parsedRule) {
  24861             self.addRules(parsedRule[1].trim(), parsedRule[2].trim(), query);
  24862           }
  24863         });
  24864         return;
  24865       }
  24866 
  24867       if (!rules[queryHash][selector]) {
  24868         rules[queryHash][selector] = {};
  24869       }
  24870 
  24871       if ('string' === typeof styleRules) {
  24872         styleRules = styleRules.split(';').filter(String);
  24873         var orderedRules = {};
  24874 
  24875         try {
  24876           $.each(styleRules, function () {
  24877             var property = this.split(/:(.*)?/);
  24878             orderedRules[property[0].trim()] = property[1].trim().replace(';', '');
  24879           });
  24880         } catch (error) {
  24881           // At least one of the properties is incorrect
  24882           return;
  24883         }
  24884 
  24885         styleRules = orderedRules;
  24886       }
  24887 
  24888       $.extend(rules[queryHash][selector], styleRules);
  24889       return self;
  24890     };
  24891 
  24892     this.getRules = function () {
  24893       return rules;
  24894     };
  24895 
  24896     this.empty = function () {
  24897       rules = {};
  24898       rawCSS = {};
  24899     };
  24900 
  24901     this.toString = function () {
  24902       var styleText = '';
  24903       $.each(rules, function (queryHash) {
  24904         var deviceText = Stylesheet.parseRules(this);
  24905 
  24906         if ('all' !== queryHash) {
  24907           deviceText = getQueryHashStyleFormat(queryHash) + '{' + deviceText + '}';
  24908         }
  24909 
  24910         styleText += deviceText;
  24911       });
  24912       $.each(rawCSS, function () {
  24913         styleText += this;
  24914       });
  24915       return styleText;
  24916     };
  24917   };
  24918 
  24919   Stylesheet.parseRules = function (rules) {
  24920     var parsedRules = '';
  24921     $.each(rules, function (selector) {
  24922       var selectorContent = Stylesheet.parseProperties(this);
  24923 
  24924       if (selectorContent) {
  24925         parsedRules += selector + '{' + selectorContent + '}';
  24926       }
  24927     });
  24928     return parsedRules;
  24929   };
  24930 
  24931   Stylesheet.parseProperties = function (properties) {
  24932     var parsedProperties = '';
  24933     $.each(properties, function (propertyKey) {
  24934       if (this) {
  24935         parsedProperties += propertyKey + ':' + this + ';';
  24936       }
  24937     });
  24938     return parsedProperties;
  24939   };
  24940 
  24941   module.exports = Stylesheet;
  24942 })(jQuery);
  24943 
  24944 /***/ }),
  24945 
  24946 /***/ "../assets/dev/js/editor/views/add-section/base.js":
  24947 /*!*********************************************************!*\
  24948   !*** ../assets/dev/js/editor/views/add-section/base.js ***!
  24949   \*********************************************************/
  24950 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  24951 
  24952 "use strict";
  24953 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  24954 
  24955 
  24956 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  24957 
  24958 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  24959 
  24960 _Object$defineProperty(exports, "__esModule", {
  24961   value: true
  24962 });
  24963 
  24964 exports.default = void 0;
  24965 
  24966 var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));
  24967 
  24968 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  24969 
  24970 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  24971 
  24972 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  24973 
  24974 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  24975 
  24976 var AddSectionBase = /*#__PURE__*/function (_Marionette$ItemView) {
  24977   (0, _inherits2.default)(AddSectionBase, _Marionette$ItemView);
  24978 
  24979   var _super = (0, _createSuper2.default)(AddSectionBase);
  24980 
  24981   function AddSectionBase() {
  24982     (0, _classCallCheck2.default)(this, AddSectionBase);
  24983     return _super.apply(this, arguments);
  24984   }
  24985 
  24986   (0, _createClass2.default)(AddSectionBase, [{
  24987     key: "template",
  24988     value: function template() {
  24989       return Marionette.TemplateCache.get('#tmpl-elementor-add-section');
  24990     }
  24991   }, {
  24992     key: "attributes",
  24993     value: function attributes() {
  24994       return {
  24995         'data-view': 'choose-action'
  24996       };
  24997     }
  24998   }, {
  24999     key: "ui",
  25000     value: function ui() {
  25001       return {
  25002         addNewSection: '.elementor-add-new-section',
  25003         closeButton: '.elementor-add-section-close',
  25004         addSectionButton: '.elementor-add-section-button',
  25005         addTemplateButton: '.elementor-add-template-button',
  25006         selectPreset: '.elementor-select-preset',
  25007         presets: '.elementor-preset'
  25008       };
  25009     }
  25010   }, {
  25011     key: "events",
  25012     value: function events() {
  25013       return {
  25014         'click @ui.addSectionButton': 'onAddSectionButtonClick',
  25015         'click @ui.addTemplateButton': 'onAddTemplateButtonClick',
  25016         'click @ui.closeButton': 'onCloseButtonClick',
  25017         'click @ui.presets': 'onPresetSelected'
  25018       };
  25019     }
  25020   }, {
  25021     key: "behaviors",
  25022     value: function behaviors() {
  25023       return {
  25024         contextMenu: {
  25025           behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
  25026           groups: this.getContextMenuGroups()
  25027         }
  25028       };
  25029     }
  25030   }, {
  25031     key: "className",
  25032     value: function className() {
  25033       return 'elementor-add-section elementor-visible-desktop';
  25034     }
  25035   }, {
  25036     key: "setView",
  25037     value: function setView(view) {
  25038       this.$el.attr('data-view', view);
  25039     }
  25040   }, {
  25041     key: "showSelectPresets",
  25042     value: function showSelectPresets() {
  25043       this.setView('select-preset');
  25044     }
  25045   }, {
  25046     key: "closeSelectPresets",
  25047     value: function closeSelectPresets() {
  25048       this.setView('choose-action');
  25049     }
  25050   }, {
  25051     key: "getTemplatesModalOptions",
  25052     value: function getTemplatesModalOptions() {
  25053       return {
  25054         importOptions: {
  25055           at: this.getOption('at')
  25056         }
  25057       };
  25058     }
  25059   }, {
  25060     key: "getContextMenuGroups",
  25061     value: function getContextMenuGroups() {
  25062       var _this = this;
  25063 
  25064       var hasContent = function hasContent() {
  25065         return elementor.elements.length > 0;
  25066       };
  25067 
  25068       return [{
  25069         name: 'paste',
  25070         actions: [{
  25071           name: 'paste',
  25072           title: __('Paste', 'elementor'),
  25073           isEnabled: function isEnabled() {
  25074             return $e.components.get('document/elements').utils.isPasteEnabled(elementor.getPreviewContainer());
  25075           },
  25076           callback: function callback() {
  25077             return $e.run('document/ui/paste', {
  25078               container: elementor.getPreviewContainer(),
  25079               options: {
  25080                 at: _this.getOption('at'),
  25081                 rebuild: true
  25082               },
  25083               onAfter: function onAfter() {
  25084                 return _this.onAfterPaste();
  25085               }
  25086             });
  25087           }
  25088         }]
  25089       }, {
  25090         name: 'content',
  25091         actions: [{
  25092           name: 'copy_all_content',
  25093           title: __('Copy All Content', 'elementor'),
  25094           isEnabled: hasContent,
  25095           callback: function callback() {
  25096             return $e.run('document/elements/copy-all');
  25097           }
  25098         }, {
  25099           name: 'delete_all_content',
  25100           title: __('Delete All Content', 'elementor'),
  25101           isEnabled: hasContent,
  25102           callback: function callback() {
  25103             return $e.run('document/elements/empty');
  25104           }
  25105         }]
  25106       }];
  25107     }
  25108   }, {
  25109     key: "onAddSectionButtonClick",
  25110     value: function onAddSectionButtonClick() {
  25111       this.showSelectPresets();
  25112     }
  25113   }, {
  25114     key: "onAddTemplateButtonClick",
  25115     value: function onAddTemplateButtonClick() {
  25116       $e.run('library/open', this.getTemplatesModalOptions());
  25117     }
  25118   }, {
  25119     key: "onRender",
  25120     value: function onRender() {
  25121       this.$el.html5Droppable({
  25122         axis: ['vertical'],
  25123         groups: ['elementor-element'],
  25124         placeholder: false,
  25125         currentElementClass: 'elementor-html5dnd-current-element',
  25126         hasDraggingOnChildClass: 'elementor-dragging-on-child',
  25127         onDropping: this.onDropping.bind(this)
  25128       });
  25129     }
  25130   }, {
  25131     key: "onPresetSelected",
  25132     value: function onPresetSelected(event) {
  25133       this.closeSelectPresets();
  25134       var selectedStructure = event.currentTarget.dataset.structure,
  25135           parsedStructure = elementor.presetsFactory.getParsedStructure(selectedStructure);
  25136       $e.run('document/elements/create', {
  25137         model: {
  25138           elType: 'section'
  25139         },
  25140         container: elementor.getPreviewContainer(),
  25141         columns: parsedStructure.columnsCount,
  25142         structure: selectedStructure,
  25143         options: (0, _assign.default)({}, this.options)
  25144       });
  25145     }
  25146   }, {
  25147     key: "onDropping",
  25148     value: function onDropping() {
  25149       if (elementor.helpers.maybeDisableWidget()) {
  25150         return;
  25151       }
  25152 
  25153       var selectedElement = elementor.channels.panelElements.request('element:selected'),
  25154           historyId = $e.internal('document/history/start-log', {
  25155         type: 'add',
  25156         title: elementor.helpers.getModelLabel(selectedElement.model)
  25157       }),
  25158           eSection = $e.run('document/elements/create', {
  25159         model: {
  25160           elType: 'section'
  25161         },
  25162         container: elementor.getPreviewContainer(),
  25163         columns: 1,
  25164         options: {
  25165           at: this.getOption('at'),
  25166           // BC: Deprecated since 2.8.0 - use `$e.hooks`.
  25167           trigger: {
  25168             beforeAdd: 'section:before:drop',
  25169             afterAdd: 'section:after:drop'
  25170           }
  25171         }
  25172       }); // Create the element in column.
  25173 
  25174       eSection.view.children.findByIndex(0).addElementFromPanel();
  25175       $e.internal('document/history/end-log', {
  25176         id: historyId
  25177       });
  25178     }
  25179   }, {
  25180     key: "onAfterPaste",
  25181     value: function onAfterPaste() {}
  25182   }]);
  25183   return AddSectionBase;
  25184 }(Marionette.ItemView);
  25185 
  25186 var _default = AddSectionBase;
  25187 exports.default = _default;
  25188 
  25189 /***/ }),
  25190 
  25191 /***/ "../assets/dev/js/editor/views/add-section/independent.js":
  25192 /*!****************************************************************!*\
  25193   !*** ../assets/dev/js/editor/views/add-section/independent.js ***!
  25194   \****************************************************************/
  25195 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  25196 
  25197 "use strict";
  25198 
  25199 
  25200 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  25201 
  25202 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  25203 
  25204 _Object$defineProperty(exports, "__esModule", {
  25205   value: true
  25206 });
  25207 
  25208 exports.default = void 0;
  25209 
  25210 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  25211 
  25212 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  25213 
  25214 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  25215 
  25216 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  25217 
  25218 var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../assets/dev/js/editor/views/add-section/base.js"));
  25219 
  25220 var AddSectionView = /*#__PURE__*/function (_BaseAddSectionView) {
  25221   (0, _inherits2.default)(AddSectionView, _BaseAddSectionView);
  25222 
  25223   var _super = (0, _createSuper2.default)(AddSectionView);
  25224 
  25225   function AddSectionView() {
  25226     (0, _classCallCheck2.default)(this, AddSectionView);
  25227     return _super.apply(this, arguments);
  25228   }
  25229 
  25230   (0, _createClass2.default)(AddSectionView, [{
  25231     key: "id",
  25232     get: function get() {
  25233       return 'elementor-add-new-section';
  25234     }
  25235   }, {
  25236     key: "onCloseButtonClick",
  25237     value: function onCloseButtonClick() {
  25238       this.closeSelectPresets();
  25239     }
  25240   }]);
  25241   return AddSectionView;
  25242 }(_base.default);
  25243 
  25244 exports.default = AddSectionView;
  25245 
  25246 /***/ }),
  25247 
  25248 /***/ "../assets/dev/js/editor/views/add-section/inline.js":
  25249 /*!***********************************************************!*\
  25250   !*** ../assets/dev/js/editor/views/add-section/inline.js ***!
  25251   \***********************************************************/
  25252 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  25253 
  25254 "use strict";
  25255 
  25256 
  25257 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  25258 
  25259 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  25260 
  25261 _Object$defineProperty(exports, "__esModule", {
  25262   value: true
  25263 });
  25264 
  25265 exports.default = void 0;
  25266 
  25267 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  25268 
  25269 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  25270 
  25271 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  25272 
  25273 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  25274 
  25275 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  25276 
  25277 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  25278 
  25279 var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../assets/dev/js/editor/views/add-section/base.js"));
  25280 
  25281 var AddSectionView = /*#__PURE__*/function (_BaseAddSectionView) {
  25282   (0, _inherits2.default)(AddSectionView, _BaseAddSectionView);
  25283 
  25284   var _super = (0, _createSuper2.default)(AddSectionView);
  25285 
  25286   function AddSectionView() {
  25287     (0, _classCallCheck2.default)(this, AddSectionView);
  25288     return _super.apply(this, arguments);
  25289   }
  25290 
  25291   (0, _createClass2.default)(AddSectionView, [{
  25292     key: "className",
  25293     value: function className() {
  25294       return (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "className", this).call(this) + ' elementor-add-section-inline';
  25295     }
  25296   }, {
  25297     key: "fadeToDeath",
  25298     value: function fadeToDeath() {
  25299       var self = this;
  25300       self.$el.slideUp(function () {
  25301         self.destroy();
  25302       });
  25303     }
  25304   }, {
  25305     key: "onAfterPaste",
  25306     value: function onAfterPaste() {
  25307       (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onAfterPaste", this).call(this);
  25308       this.destroy();
  25309     }
  25310   }, {
  25311     key: "onCloseButtonClick",
  25312     value: function onCloseButtonClick() {
  25313       this.fadeToDeath();
  25314     }
  25315   }, {
  25316     key: "onPresetSelected",
  25317     value: function onPresetSelected(event) {
  25318       (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onPresetSelected", this).call(this, event);
  25319       this.destroy();
  25320     }
  25321   }, {
  25322     key: "onAddTemplateButtonClick",
  25323     value: function onAddTemplateButtonClick() {
  25324       (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onAddTemplateButtonClick", this).call(this);
  25325       this.destroy();
  25326     }
  25327   }, {
  25328     key: "onDropping",
  25329     value: function onDropping() {
  25330       (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onDropping", this).call(this);
  25331       this.destroy();
  25332     }
  25333   }]);
  25334   return AddSectionView;
  25335 }(_base.default);
  25336 
  25337 var _default = AddSectionView;
  25338 exports.default = _default;
  25339 
  25340 /***/ }),
  25341 
  25342 /***/ "../assets/dev/js/editor/views/base-container.js":
  25343 /*!*******************************************************!*\
  25344   !*** ../assets/dev/js/editor/views/base-container.js ***!
  25345   \*******************************************************/
  25346 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  25347 
  25348 "use strict";
  25349 
  25350 
  25351 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  25352 
  25353 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  25354 
  25355 module.exports = Marionette.CompositeView.extend({
  25356   templateHelpers: function templateHelpers() {
  25357     return {
  25358       view: this
  25359     };
  25360   },
  25361   getBehavior: function getBehavior(name) {
  25362     return this._behaviors[(0, _keys.default)(this.behaviors()).indexOf(name)];
  25363   },
  25364   initialize: function initialize() {
  25365     this.collection = this.model.get('elements');
  25366   },
  25367   addChildModel: function addChildModel(model, options) {
  25368     return this.collection.add(model, options, true);
  25369   },
  25370   addElement: function addElement(data, options) {
  25371     if (this.isCollectionFilled()) {
  25372       return;
  25373     }
  25374 
  25375     options = jQuery.extend({
  25376       trigger: false,
  25377       edit: true,
  25378       onBeforeAdd: null,
  25379       onAfterAdd: null
  25380     }, options);
  25381     var childTypes = this.getChildType();
  25382     var newItem, elType;
  25383 
  25384     if (data instanceof Backbone.Model) {
  25385       newItem = data;
  25386       elType = newItem.get('elType');
  25387     } else {
  25388       newItem = {
  25389         id: elementorCommon.helpers.getUniqueId(),
  25390         elType: childTypes[0],
  25391         settings: {},
  25392         elements: []
  25393       };
  25394 
  25395       if (data) {
  25396         jQuery.extend(newItem, data);
  25397       }
  25398 
  25399       elType = newItem.elType;
  25400     }
  25401 
  25402     if (-1 === childTypes.indexOf(elType)) {
  25403       return this.children.last().addElement(newItem, options);
  25404     }
  25405 
  25406     if (options.clone) {
  25407       newItem = this.cloneItem(newItem);
  25408     }
  25409 
  25410     if (options.trigger) {
  25411       elementor.channels.data.trigger(options.trigger.beforeAdd, newItem);
  25412     }
  25413 
  25414     if (options.onBeforeAdd) {
  25415       options.onBeforeAdd();
  25416     }
  25417 
  25418     var newModel = this.addChildModel(newItem, {
  25419       at: options.at
  25420     }),
  25421         newView = this.children.findByModel(newModel);
  25422 
  25423     if (options.onAfterAdd) {
  25424       options.onAfterAdd(newModel, newView);
  25425     }
  25426 
  25427     if (options.trigger) {
  25428       elementor.channels.data.trigger(options.trigger.afterAdd, newItem);
  25429     }
  25430 
  25431     if (options.edit && elementor.documents.getCurrent().history.getActive()) {
  25432       // Ensure container is created. TODO: Open editor via UI hook after `document/elements/create`.
  25433       newView.getContainer();
  25434       newModel.trigger('request:edit');
  25435     }
  25436 
  25437     return newView;
  25438   },
  25439   addChildElement: function addChildElement(data, options) {
  25440     elementorCommon.helpers.softDeprecated('addChildElement', '2.8.0', "$e.run( 'document/elements/create' )");
  25441 
  25442     if (Object !== data.constructor) {
  25443       data = jQuery.extend({}, data);
  25444     }
  25445 
  25446     $e.run('document/elements/create', {
  25447       container: this.getContainer(),
  25448       model: data,
  25449       options: options
  25450     });
  25451   },
  25452   cloneItem: function cloneItem(item) {
  25453     var self = this;
  25454 
  25455     if (item instanceof Backbone.Model) {
  25456       return item.clone();
  25457     }
  25458 
  25459     item.id = elementorCommon.helpers.getUniqueId();
  25460     item.settings._element_id = '';
  25461     item.elements.forEach(function (childItem, index) {
  25462       item.elements[index] = self.cloneItem(childItem);
  25463     });
  25464     return item;
  25465   },
  25466   lookup: function lookup() {
  25467     var element = this;
  25468 
  25469     if (element.isDisconnected()) {
  25470       element = $e.components.get('document').utils.findViewById(element.model.id);
  25471     }
  25472 
  25473     return element;
  25474   },
  25475   isDisconnected: function isDisconnected() {
  25476     return this.isDestroyed || !this.el.isConnected;
  25477   },
  25478   isCollectionFilled: function isCollectionFilled() {
  25479     return false;
  25480   }
  25481 });
  25482 
  25483 /***/ }),
  25484 
  25485 /***/ "../assets/dev/js/editor/views/base-sections-container.js":
  25486 /*!****************************************************************!*\
  25487   !*** ../assets/dev/js/editor/views/base-sections-container.js ***!
  25488   \****************************************************************/
  25489 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  25490 
  25491 "use strict";
  25492 
  25493 
  25494 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  25495 
  25496 var SectionView = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js"),
  25497     BaseContainer = __webpack_require__(/*! elementor-views/base-container */ "../assets/dev/js/editor/views/base-container.js"),
  25498     BaseSectionsContainerView;
  25499 
  25500 BaseSectionsContainerView = BaseContainer.extend({
  25501   childView: SectionView,
  25502   behaviors: function behaviors() {
  25503     var behaviors = {
  25504       Sortable: {
  25505         behaviorClass: __webpack_require__(/*! elementor-behaviors/sortable */ "../assets/dev/js/editor/elements/views/behaviors/sortable.js"),
  25506         elChildType: 'section'
  25507       }
  25508     };
  25509     return elementor.hooks.applyFilters('elements/base-section-container/behaviors', behaviors, this);
  25510   },
  25511   getSortableOptions: function getSortableOptions() {
  25512     return {
  25513       handle: '> .elementor-element-overlay .elementor-editor-element-edit',
  25514       items: '> .elementor-section'
  25515     };
  25516   },
  25517   getChildType: function getChildType() {
  25518     return ['section'];
  25519   },
  25520   initialize: function initialize() {
  25521     BaseContainer.prototype.initialize.apply(this, arguments);
  25522     this.listenTo(elementor.channels.panelElements, 'element:drag:start', this.onPanelElementDragStart).listenTo(elementor.channels.panelElements, 'element:drag:end', this.onPanelElementDragEnd);
  25523   },
  25524   onPanelElementDragStart: function onPanelElementDragStart() {
  25525     // A temporary workaround in order to fix Chrome's 70+ dragging above nested iframe bug
  25526     this.$el.find('.elementor-background-video-embed').hide();
  25527     elementor.helpers.disableElementEvents(this.$el.find('iframe'));
  25528   },
  25529   onPanelElementDragEnd: function onPanelElementDragEnd() {
  25530     this.$el.find('.elementor-background-video-embed').show();
  25531     elementor.helpers.enableElementEvents(this.$el.find('iframe'));
  25532   }
  25533 });
  25534 module.exports = BaseSectionsContainerView;
  25535 
  25536 /***/ }),
  25537 
  25538 /***/ "../assets/dev/js/editor/views/controls-popover.js":
  25539 /*!*********************************************************!*\
  25540   !*** ../assets/dev/js/editor/views/controls-popover.js ***!
  25541   \*********************************************************/
  25542 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  25543 
  25544 "use strict";
  25545 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  25546 
  25547 
  25548 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  25549 
  25550 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  25551 
  25552 _Object$defineProperty(exports, "__esModule", {
  25553   value: true
  25554 });
  25555 
  25556 exports.default = void 0;
  25557 
  25558 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  25559 
  25560 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  25561 
  25562 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  25563 
  25564 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  25565 
  25566 var ControlsPopover = /*#__PURE__*/function () {
  25567   function ControlsPopover(child) {
  25568     (0, _classCallCheck2.default)(this, ControlsPopover);
  25569     this.child = child;
  25570     this.$popover = jQuery('<div>', {
  25571       class: 'elementor-controls-popover'
  25572     });
  25573     child.$el.before(this.$popover);
  25574     this.$popover.append(child.$el);
  25575     this.popoverToggleView = child._parent.children.findByIndex(child._index - 1); // Add the "Typography" header to the popover
  25576 
  25577     if ('typography' === this.child.model.attributes.groupType) {
  25578       this.createPopoverHeader();
  25579     }
  25580   }
  25581 
  25582   (0, _createClass2.default)(ControlsPopover, [{
  25583     key: "addChild",
  25584     value: function addChild(child) {
  25585       this.$popover.append(child.$el);
  25586     }
  25587   }, {
  25588     key: "createPopoverHeader",
  25589     value: function createPopoverHeader() {
  25590       var _this = this;
  25591 
  25592       var $popoverToggleControl = this.$popover.prev(),
  25593           // Get the existing reset button.
  25594       $resetLabel = $popoverToggleControl.find('.elementor-control-popover-toggle-reset-label');
  25595       this.$popoverHeader = jQuery('<div>', {
  25596         class: 'e-group-control-header'
  25597       }).html('<span>' + __('Typography', 'elementor') + '</span>');
  25598       this.$headerControlsWrapper = jQuery('<div>', {
  25599         class: 'e-control-tools'
  25600       }); // Give the reset button the control tool styling, and add a click event so clicking on it closes the popover.
  25601 
  25602       $resetLabel.addClass('e-control-tool').on('click', function () {
  25603         return _this.onResetButtonClick();
  25604       }); // Move the popover toggle reset button into the popover header.
  25605 
  25606       this.$headerControlsWrapper.append($resetLabel);
  25607       this.$popoverHeader.append(this.$headerControlsWrapper);
  25608       var globalConfig = this.popoverToggleView.model.get('global');
  25609 
  25610       if (globalConfig !== null && globalConfig !== void 0 && globalConfig.active) {
  25611         this.createAddButton();
  25612       }
  25613 
  25614       this.$popover.prepend(this.$popoverHeader).addClass('e-controls-popover--typography');
  25615     }
  25616   }, {
  25617     key: "onResetButtonClick",
  25618     value: function onResetButtonClick() {
  25619       this.$popover.hide();
  25620       var groupControlName = this.child.model.get('groupPrefix') + 'typography',
  25621           args = {
  25622         container: this.child.options.container,
  25623         settings: (0, _defineProperty2.default)({}, groupControlName, '')
  25624       };
  25625 
  25626       if (this.child.options.container.globals.get(groupControlName)) {
  25627         // The Disable Globals command applies global settings locally,
  25628         // so disabling the global shouldn't actually change the appearance of the widget.
  25629         $e.run('document/globals/disable', args);
  25630       } else {
  25631         $e.run('document/elements/settings', args);
  25632       }
  25633     }
  25634   }, {
  25635     key: "onAddButtonClick",
  25636     value: function onAddButtonClick() {
  25637       this.popoverToggleView.onAddGlobalButtonClick();
  25638     }
  25639   }, {
  25640     key: "createAddButton",
  25641     value: function createAddButton() {
  25642       var _this2 = this;
  25643 
  25644       this.$addButton = jQuery('<button>', {
  25645         class: 'e-control-tool'
  25646       }).html(jQuery('<i>', {
  25647         class: 'eicon-plus'
  25648       }));
  25649       this.$headerControlsWrapper.append(this.$addButton);
  25650       this.$addButton.on('click', function () {
  25651         return _this2.onAddButtonClick();
  25652       });
  25653       this.$addButton.tipsy({
  25654         title: function title() {
  25655           return __('Create New Global Font', 'elementor');
  25656         },
  25657         gravity: function gravity() {
  25658           return 's';
  25659         }
  25660       });
  25661     }
  25662   }, {
  25663     key: "destroy",
  25664     value: function destroy() {
  25665       this.$popover.remove();
  25666     }
  25667   }]);
  25668   return ControlsPopover;
  25669 }();
  25670 
  25671 exports.default = ControlsPopover;
  25672 
  25673 /***/ }),
  25674 
  25675 /***/ "../assets/dev/js/editor/views/controls-stack.js":
  25676 /*!*******************************************************!*\
  25677   !*** ../assets/dev/js/editor/views/controls-stack.js ***!
  25678   \*******************************************************/
  25679 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  25680 
  25681 "use strict";
  25682 
  25683 
  25684 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  25685 
  25686 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
  25687 
  25688 __webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");
  25689 
  25690 __webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");
  25691 
  25692 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  25693 
  25694 var _controlsPopover = _interopRequireDefault(__webpack_require__(/*! ./controls-popover */ "../assets/dev/js/editor/views/controls-popover.js"));
  25695 
  25696 var ControlsStack;
  25697 ControlsStack = Marionette.CompositeView.extend({
  25698   classes: {
  25699     popover: 'elementor-controls-popover'
  25700   },
  25701   activeTab: null,
  25702   activeSection: null,
  25703   className: function className() {
  25704     return 'elementor-controls-stack';
  25705   },
  25706   templateHelpers: function templateHelpers() {
  25707     return {
  25708       elementData: elementor.getElementData(this.model)
  25709     };
  25710   },
  25711   childViewOptions: function childViewOptions() {
  25712     return {
  25713       // TODO: elementSettingsModel is deprecated since 2.8.0.
  25714       elementSettingsModel: this.model
  25715     };
  25716   },
  25717   ui: function ui() {
  25718     return {
  25719       tabs: '.elementor-panel-navigation-tab',
  25720       reloadButton: '.elementor-update-preview-button'
  25721     };
  25722   },
  25723   events: function events() {
  25724     return {
  25725       'click @ui.reloadButton': 'onReloadButtonClick'
  25726     };
  25727   },
  25728   modelEvents: {
  25729     destroy: 'onModelDestroy'
  25730   },
  25731   behaviors: {
  25732     HandleInnerTabs: {
  25733       behaviorClass: __webpack_require__(/*! elementor-behaviors/inner-tabs */ "../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js")
  25734     }
  25735   },
  25736   initialize: function initialize(options) {
  25737     this.initCollection();
  25738 
  25739     if (options.tab) {
  25740       this.activeTab = options.tab;
  25741       this.activateFirstSection();
  25742     }
  25743 
  25744     this.listenTo(elementor.channels.deviceMode, 'change', this.onDeviceModeChange);
  25745   },
  25746   initCollection: function initCollection() {
  25747     this.collection = new Backbone.Collection(_.values(elementor.mergeControlsSettings(this.getOption('controls'))));
  25748   },
  25749   filter: function filter(controlModel) {
  25750     if (controlModel.get('tab') !== this.activeTab) {
  25751       return false;
  25752     }
  25753 
  25754     if ('section' === controlModel.get('type')) {
  25755       return true;
  25756     }
  25757 
  25758     var section = controlModel.get('section');
  25759     return !section || section === this.activeSection;
  25760   },
  25761   getControlViewByModel: function getControlViewByModel(model) {
  25762     return this.children.findByModelCid(model.cid);
  25763   },
  25764   getControlViewByName: function getControlViewByName(name) {
  25765     return this.getControlViewByModel(this.getControlModel(name));
  25766   },
  25767   getControlModel: function getControlModel(name) {
  25768     return this.collection.findWhere({
  25769       name: name
  25770     });
  25771   },
  25772   isVisibleSectionControl: function isVisibleSectionControl(sectionControlModel) {
  25773     return this.activeTab === sectionControlModel.get('tab');
  25774   },
  25775   activateTab: function activateTab(tab) {
  25776     this.activeTab = tab;
  25777     this.activateFirstSection();
  25778 
  25779     this._renderChildren();
  25780 
  25781     return this;
  25782   },
  25783   activateSection: function activateSection(sectionName) {
  25784     this.activeSection = sectionName;
  25785     return this;
  25786   },
  25787   activateFirstSection: function activateFirstSection() {
  25788     var self = this;
  25789     var sectionControls = self.collection.filter(function (controlModel) {
  25790       return 'section' === controlModel.get('type') && self.isVisibleSectionControl(controlModel);
  25791     });
  25792     var sectionToActivate;
  25793 
  25794     if (!sectionControls[0]) {
  25795       self.activeSection = null;
  25796       sectionToActivate = null;
  25797     } else {
  25798       sectionToActivate = sectionControls[0].get('name');
  25799     }
  25800 
  25801     var preActivatedSection = sectionControls.filter(function (controlModel) {
  25802       return self.activeSection === controlModel.get('name');
  25803     });
  25804 
  25805     if (preActivatedSection[0]) {
  25806       return;
  25807     }
  25808 
  25809     self.activateSection(sectionToActivate);
  25810     return this;
  25811   },
  25812   getChildView: function getChildView(item) {
  25813     var controlType = item.get('type');
  25814     return elementor.getControlView(controlType);
  25815   },
  25816   getNamespaceArray: function getNamespaceArray() {
  25817     return [elementor.getPanelView().getCurrentPageName()];
  25818   },
  25819   openActiveSection: function openActiveSection() {
  25820     var activeSection = this.activeSection,
  25821         activeSectionView = this.children.filter(function (view) {
  25822       return activeSection === view.model.get('name');
  25823     });
  25824 
  25825     if (activeSectionView[0]) {
  25826       activeSectionView[0].$el.addClass('elementor-open');
  25827       var eventNamespace = this.getNamespaceArray();
  25828       eventNamespace.push(activeSection, 'activated');
  25829       elementor.channels.editor.trigger(eventNamespace.join(':'), this);
  25830     }
  25831   },
  25832   onRenderCollection: function onRenderCollection() {
  25833     this.openActiveSection();
  25834     ControlsStack.handlePopovers(this);
  25835   },
  25836   onModelDestroy: function onModelDestroy() {
  25837     this.destroy();
  25838   },
  25839   onReloadButtonClick: function onReloadButtonClick() {
  25840     elementor.reloadPreview();
  25841   },
  25842   onDeviceModeChange: function onDeviceModeChange() {
  25843     if ('desktop' === elementor.channels.deviceMode.request('currentMode')) {
  25844       this.$el.removeClass('elementor-responsive-switchers-open');
  25845     }
  25846   },
  25847   onChildviewControlSectionClicked: function onChildviewControlSectionClicked(childView) {
  25848     var isSectionOpen = childView.$el.hasClass('elementor-open');
  25849     this.activateSection(isSectionOpen ? null : childView.model.get('name'));
  25850 
  25851     this._renderChildren();
  25852   },
  25853   onChildviewResponsiveSwitcherClick: function onChildviewResponsiveSwitcherClick(childView, device) {
  25854     if ('desktop' === device) {
  25855       this.$el.toggleClass('elementor-responsive-switchers-open');
  25856     }
  25857   }
  25858 }, {
  25859   handlePopovers: function handlePopovers(view) {
  25860     var popover;
  25861     view.popovers = [];
  25862     this.removePopovers(view);
  25863     view.children.each(function (control) {
  25864       if (popover) {
  25865         popover.addChild(control);
  25866       }
  25867 
  25868       var popoverData = control.model.get('popover');
  25869 
  25870       if (!popoverData) {
  25871         return;
  25872       }
  25873 
  25874       if (popoverData.start) {
  25875         popover = new _controlsPopover.default(control);
  25876         view.popovers.push(popover);
  25877       }
  25878 
  25879       if (popoverData.end) {
  25880         popover = null;
  25881       }
  25882     });
  25883   },
  25884   removePopovers: function removePopovers(view) {
  25885     view.popovers.forEach(function (popover) {
  25886       return popover.destroy();
  25887     });
  25888   }
  25889 });
  25890 module.exports = ControlsStack;
  25891 
  25892 /***/ }),
  25893 
  25894 /***/ "../assets/dev/js/editor/views/preview.js":
  25895 /*!************************************************!*\
  25896   !*** ../assets/dev/js/editor/views/preview.js ***!
  25897   \************************************************/
  25898 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  25899 
  25900 "use strict";
  25901 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  25902 
  25903 
  25904 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  25905 
  25906 var _independent = _interopRequireDefault(__webpack_require__(/*! ./add-section/independent */ "../assets/dev/js/editor/views/add-section/independent.js"));
  25907 
  25908 var BaseSectionsContainerView = __webpack_require__(/*! elementor-views/base-sections-container */ "../assets/dev/js/editor/views/base-sections-container.js");
  25909 
  25910 var Preview = BaseSectionsContainerView.extend({
  25911   initialize: function initialize() {
  25912     this.$childViewContainer = jQuery('<div>', {
  25913       class: 'elementor-section-wrap'
  25914     });
  25915     BaseSectionsContainerView.prototype.initialize.apply(this, arguments);
  25916   },
  25917   getChildViewContainer: function getChildViewContainer() {
  25918     return this.$childViewContainer;
  25919   },
  25920   behaviors: function behaviors() {
  25921     var parentBehaviors = BaseSectionsContainerView.prototype.behaviors.apply(this, arguments),
  25922         behaviors = {
  25923       contextMenu: {
  25924         behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
  25925         groups: this.getContextMenuGroups()
  25926       }
  25927     };
  25928     return jQuery.extend(parentBehaviors, behaviors);
  25929   },
  25930   getContainer: function getContainer() {
  25931     return elementor.settings.page.getEditedView().getContainer();
  25932   },
  25933   getContextMenuGroups: function getContextMenuGroups() {
  25934     var _this = this;
  25935 
  25936     var hasContent = function hasContent() {
  25937       return elementor.elements.length > 0;
  25938     };
  25939 
  25940     return [{
  25941       name: 'paste',
  25942       actions: [{
  25943         name: 'paste',
  25944         title: __('Paste', 'elementor'),
  25945         isEnabled: function isEnabled() {
  25946           return $e.components.get('document/elements').utils.isPasteEnabled(_this.getContainer());
  25947         },
  25948         callback: function callback(at) {
  25949           return $e.run('document/ui/paste', {
  25950             container: _this.getContainer(),
  25951             options: {
  25952               at: at,
  25953               rebuild: true
  25954             }
  25955           });
  25956         }
  25957       }]
  25958     }, {
  25959       name: 'content',
  25960       actions: [{
  25961         name: 'copy_all_content',
  25962         title: __('Copy All Content', 'elementor'),
  25963         isEnabled: hasContent,
  25964         callback: function callback() {
  25965           return $e.run('document/elements/copy-all');
  25966         }
  25967       }, {
  25968         name: 'delete_all_content',
  25969         title: __('Delete All Content', 'elementor'),
  25970         isEnabled: hasContent,
  25971         callback: function callback() {
  25972           return $e.run('document/elements/empty');
  25973         }
  25974       }]
  25975     }];
  25976   },
  25977   onRender: function onRender() {
  25978     var $contentContainer;
  25979 
  25980     if (elementorCommon.config.experimentalFeatures['e_dom_optimization']) {
  25981       $contentContainer = this.$el;
  25982     } else {
  25983       var $inner = jQuery('<div>', {
  25984         class: 'elementor-inner'
  25985       });
  25986       this.$el.html($inner);
  25987       $contentContainer = $inner;
  25988     }
  25989 
  25990     $contentContainer.html(this.$childViewContainer);
  25991 
  25992     if (elementor.userCan('design')) {
  25993       var addNewSectionView = new _independent.default();
  25994       addNewSectionView.render();
  25995       $contentContainer.append(addNewSectionView.$el);
  25996     }
  25997   }
  25998 });
  25999 module.exports = Preview;
  26000 
  26001 /***/ }),
  26002 
  26003 /***/ "../assets/dev/js/modules/imports/args-object.js":
  26004 /*!*******************************************************!*\
  26005   !*** ../assets/dev/js/modules/imports/args-object.js ***!
  26006   \*******************************************************/
  26007 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  26008 
  26009 "use strict";
  26010 
  26011 
  26012 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  26013 
  26014 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  26015 
  26016 _Object$defineProperty(exports, "__esModule", {
  26017   value: true
  26018 });
  26019 
  26020 exports.default = void 0;
  26021 
  26022 var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));
  26023 
  26024 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  26025 
  26026 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  26027 
  26028 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  26029 
  26030 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  26031 
  26032 var _instanceType = _interopRequireDefault(__webpack_require__(/*! ./instance-type */ "../assets/dev/js/modules/imports/instance-type.js"));
  26033 
  26034 var ArgsObject = /*#__PURE__*/function (_InstanceType) {
  26035   (0, _inherits2.default)(ArgsObject, _InstanceType);
  26036 
  26037   var _super = (0, _createSuper2.default)(ArgsObject);
  26038 
  26039   /**
  26040    * Function constructor().
  26041    *
  26042    * Create ArgsObject.
  26043    *
  26044    * @param {{}} args
  26045    */
  26046   function ArgsObject(args) {
  26047     var _this;
  26048 
  26049     (0, _classCallCheck2.default)(this, ArgsObject);
  26050     _this = _super.call(this);
  26051     _this.args = args;
  26052     return _this;
  26053   }
  26054   /**
  26055    * Function requireArgument().
  26056    *
  26057    * Validate property in args.
  26058    *
  26059    * @param {string} property
  26060    * @param {{}} args
  26061    *
  26062    * @throws {Error}
  26063    *
  26064    */
  26065 
  26066 
  26067   (0, _createClass2.default)(ArgsObject, [{
  26068     key: "requireArgument",
  26069     value: function requireArgument(property) {
  26070       var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.args;
  26071 
  26072       if (!args.hasOwnProperty(property)) {
  26073         throw Error("".concat(property, " is required."));
  26074       }
  26075     }
  26076     /**
  26077      * Function requireArgumentType().
  26078      *
  26079      * Validate property in args using `type === typeof(args.whatever)`.
  26080      *
  26081      * @param {string} property
  26082      * @param {string} type
  26083      * @param {{}} args
  26084      *
  26085      * @throws {Error}
  26086      *
  26087      */
  26088 
  26089   }, {
  26090     key: "requireArgumentType",
  26091     value: function requireArgumentType(property, type) {
  26092       var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
  26093       this.requireArgument(property, args);
  26094 
  26095       if ((0, _typeof2.default)(args[property]) !== type) {
  26096         throw Error("".concat(property, " invalid type: ").concat(type, "."));
  26097       }
  26098     }
  26099     /**
  26100      * Function requireArgumentInstance().
  26101      *
  26102      * Validate property in args using `args.whatever instanceof instance`.
  26103      *
  26104      * @param {string} property
  26105      * @param {instanceof} instance
  26106      * @param {{}} args
  26107      *
  26108      * @throws {Error}
  26109      *
  26110      */
  26111 
  26112   }, {
  26113     key: "requireArgumentInstance",
  26114     value: function requireArgumentInstance(property, instance) {
  26115       var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
  26116       this.requireArgument(property, args);
  26117 
  26118       if (!(args[property] instanceof instance)) {
  26119         throw Error("".concat(property, " invalid instance."));
  26120       }
  26121     }
  26122     /**
  26123      * Function requireArgumentConstructor().
  26124      *
  26125      * Validate property in args using `type === args.whatever.constructor`.
  26126      *
  26127      * @param {string} property
  26128      * @param {*} type
  26129      * @param {{}} args
  26130      *
  26131      * @throws {Error}
  26132      *
  26133      */
  26134 
  26135   }, {
  26136     key: "requireArgumentConstructor",
  26137     value: function requireArgumentConstructor(property, type) {
  26138       var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
  26139       this.requireArgument(property, args);
  26140 
  26141       if (args[property].constructor !== type) {
  26142         throw Error("".concat(property, " invalid constructor type."));
  26143       }
  26144     }
  26145   }], [{
  26146     key: "getInstanceType",
  26147     value: function getInstanceType() {
  26148       return 'ArgsObject';
  26149     }
  26150   }]);
  26151   return ArgsObject;
  26152 }(_instanceType.default);
  26153 
  26154 exports.default = ArgsObject;
  26155 
  26156 /***/ }),
  26157 
  26158 /***/ "../assets/dev/js/modules/imports/instance-type.js":
  26159 /*!*********************************************************!*\
  26160   !*** ../assets/dev/js/modules/imports/instance-type.js ***!
  26161   \*********************************************************/
  26162 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  26163 
  26164 "use strict";
  26165 
  26166 
  26167 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  26168 
  26169 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  26170 
  26171 _Object$defineProperty(exports, "__esModule", {
  26172   value: true
  26173 });
  26174 
  26175 exports.default = void 0;
  26176 
  26177 var _hasInstance = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/has-instance */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js"));
  26178 
  26179 var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));
  26180 
  26181 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  26182 
  26183 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  26184 
  26185 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  26186 
  26187 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  26188 
  26189 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  26190 
  26191 var InstanceType = /*#__PURE__*/function () {
  26192   function InstanceType() {
  26193     var _this = this;
  26194 
  26195     (0, _classCallCheck2.default)(this, InstanceType);
  26196     // Since anonymous classes sometimes do not get validated by babel, do it manually.
  26197     var target = this instanceof InstanceType ? this.constructor : void 0;
  26198     var prototypes = [];
  26199 
  26200     while (target.__proto__ && target.__proto__.name) {
  26201       prototypes.push(target.__proto__);
  26202       target = target.__proto__;
  26203     }
  26204 
  26205     prototypes.reverse().forEach(function (proto) {
  26206       return _this instanceof proto;
  26207     });
  26208   }
  26209 
  26210   (0, _createClass2.default)(InstanceType, null, [{
  26211     key: _hasInstance.default,
  26212     value: function value(target) {
  26213       /**
  26214        * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
  26215        * its give's opportunity to mange capabilities of instanceOf operator.
  26216        * saving current class each time will give option later to handle instanceOf manually.
  26217        */
  26218       var result = (0, _get2.default)((0, _getPrototypeOf2.default)(InstanceType), _hasInstance.default, this).call(this, target); // Act normal when validate a class, which does not have instance type.
  26219 
  26220       if (target && !target.constructor.getInstanceType) {
  26221         return result;
  26222       }
  26223 
  26224       if (target) {
  26225         if (!target.instanceTypes) {
  26226           target.instanceTypes = [];
  26227         }
  26228 
  26229         if (!result) {
  26230           if (this.getInstanceType() === target.constructor.getInstanceType()) {
  26231             result = true;
  26232           }
  26233         }
  26234 
  26235         if (result) {
  26236           var name = this.getInstanceType === InstanceType.getInstanceType ? 'BaseInstanceType' : this.getInstanceType();
  26237 
  26238           if (-1 === target.instanceTypes.indexOf(name)) {
  26239             target.instanceTypes.push(name);
  26240           }
  26241         }
  26242       }
  26243 
  26244       if (!result && target) {
  26245         // Check if the given 'target', is instance of known types.
  26246         result = target.instanceTypes && (0, _isArray.default)(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
  26247       }
  26248 
  26249       return result;
  26250     }
  26251   }, {
  26252     key: "getInstanceType",
  26253     value: function getInstanceType() {
  26254       elementorModules.ForceMethodImplementation();
  26255     }
  26256   }]);
  26257   return InstanceType;
  26258 }();
  26259 
  26260 exports.default = InstanceType;
  26261 
  26262 /***/ }),
  26263 
  26264 /***/ "../assets/dev/js/utils/breakpoints.js":
  26265 /*!*********************************************!*\
  26266   !*** ../assets/dev/js/utils/breakpoints.js ***!
  26267   \*********************************************/
  26268 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  26269 
  26270 "use strict";
  26271 
  26272 
  26273 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  26274 
  26275 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  26276 
  26277 _Object$defineProperty(exports, "__esModule", {
  26278   value: true
  26279 });
  26280 
  26281 exports.default = void 0;
  26282 
  26283 __webpack_require__(/*! core-js/modules/es6.regexp.constructor.js */ "../node_modules/core-js/modules/es6.regexp.constructor.js");
  26284 
  26285 __webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");
  26286 
  26287 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  26288 
  26289 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
  26290 
  26291 var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));
  26292 
  26293 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  26294 
  26295 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  26296 
  26297 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  26298 
  26299 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  26300 
  26301 /**
  26302  * Breakpoints
  26303  *
  26304  * This utility class contains helper functions relating to Elementor's breakpoints system.
  26305  *
  26306  * @since 3.4.0
  26307  */
  26308 var Breakpoints = /*#__PURE__*/function (_elementorModules$Mod) {
  26309   (0, _inherits2.default)(Breakpoints, _elementorModules$Mod);
  26310 
  26311   var _super = (0, _createSuper2.default)(Breakpoints);
  26312 
  26313   function Breakpoints(responsiveConfig) {
  26314     var _this;
  26315 
  26316     (0, _classCallCheck2.default)(this, Breakpoints);
  26317     _this = _super.call(this); // The passed config is either `elementor.config.responsive` or `elementorFrontend.config.responsive`
  26318 
  26319     _this.responsiveConfig = responsiveConfig;
  26320     return _this;
  26321   }
  26322   /**
  26323    * Get Active Breakpoints List
  26324    *
  26325    * Returns a flat array containing the active breakpoints/devices. By default, it returns the li
  26326    * the list ordered from smallest to largest breakpoint. If `true` is passed as a parameter, it reverses the order.
  26327    *
  26328    * @since 3.4.0
  26329    *
  26330    * @param {Object} args
  26331    */
  26332 
  26333 
  26334   (0, _createClass2.default)(Breakpoints, [{
  26335     key: "getActiveBreakpointsList",
  26336     value: function getActiveBreakpointsList() {
  26337       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  26338       var defaultArgs = {
  26339         largeToSmall: false,
  26340         withDesktop: false
  26341       };
  26342       args = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultArgs), args);
  26343       var breakpointKeys = (0, _keys.default)(this.responsiveConfig.activeBreakpoints);
  26344 
  26345       if (args.withDesktop) {
  26346         // If there is an active 'widescreen' breakpoint, insert the artificial 'desktop' device below it.
  26347         var widescreenIndex = breakpointKeys.indexOf('widescreen'),
  26348             indexToInsertDesktopDevice = -1 === widescreenIndex ? breakpointKeys.length : breakpointKeys.length - 1;
  26349         breakpointKeys.splice(indexToInsertDesktopDevice, 0, 'desktop');
  26350       }
  26351 
  26352       if (args.largeToSmall) {
  26353         breakpointKeys.reverse();
  26354       }
  26355 
  26356       return breakpointKeys;
  26357     }
  26358     /**
  26359      * Get Active Breakpoint Values
  26360      *
  26361      * Returns a flat array containing the list of active breakpoint values, from smallest to largest.
  26362      *
  26363      * @since 3.4.0
  26364      */
  26365 
  26366   }, {
  26367     key: "getBreakpointValues",
  26368     value: function getBreakpointValues() {
  26369       var activeBreakpoints = this.responsiveConfig.activeBreakpoints,
  26370           breakpointValues = [];
  26371       (0, _values.default)(activeBreakpoints).forEach(function (breakpointConfig) {
  26372         breakpointValues.push(breakpointConfig.value);
  26373       });
  26374       return breakpointValues;
  26375     }
  26376     /**
  26377      * Get Desktop Previous Device Key
  26378      *
  26379      * Returns the key of the device directly under desktop (can be 'tablet', 'tablet_extra', 'laptop').
  26380      *
  26381      * @since 3.4.0
  26382      *
  26383      * @returns {string}
  26384      */
  26385 
  26386   }, {
  26387     key: "getDesktopPreviousDeviceKey",
  26388     value: function getDesktopPreviousDeviceKey() {
  26389       var desktopPreviousDevice = '';
  26390       var activeBreakpoints = this.responsiveConfig.activeBreakpoints,
  26391           breakpointKeys = (0, _keys.default)(activeBreakpoints),
  26392           numOfDevices = breakpointKeys.length;
  26393 
  26394       if ('min' === activeBreakpoints[breakpointKeys[numOfDevices - 1]].direction) {
  26395         // If the widescreen breakpoint is active, the device that's previous to desktop is the last one before
  26396         // widescreen.
  26397         desktopPreviousDevice = breakpointKeys[numOfDevices - 2];
  26398       } else {
  26399         // If the widescreen breakpoint isn't active, we just take the last device returned by the config.
  26400         desktopPreviousDevice = breakpointKeys[numOfDevices - 1];
  26401       }
  26402 
  26403       return desktopPreviousDevice;
  26404     }
  26405     /**
  26406      * Get Device Minimum Breakpoint
  26407      *
  26408      * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
  26409      * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
  26410      * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
  26411      *
  26412      * @since 3.4.0
  26413      *
  26414      * @returns {number|*}
  26415      */
  26416 
  26417   }, {
  26418     key: "getDesktopMinPoint",
  26419     value: function getDesktopMinPoint() {
  26420       var activeBreakpoints = this.responsiveConfig.activeBreakpoints,
  26421           desktopPreviousDevice = this.getDesktopPreviousDeviceKey();
  26422       return activeBreakpoints[desktopPreviousDevice].value + 1;
  26423     }
  26424     /**
  26425      * Get Device Minimum Breakpoint
  26426      *
  26427      * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
  26428      * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
  26429      * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
  26430      *
  26431      * @since 3.4.0
  26432      *
  26433      * @param device
  26434      * @returns {number|*}
  26435      */
  26436 
  26437   }, {
  26438     key: "getDeviceMinBreakpoint",
  26439     value: function getDeviceMinBreakpoint(device) {
  26440       if ('desktop' === device) {
  26441         return this.getDesktopMinPoint();
  26442       }
  26443 
  26444       var activeBreakpoints = this.responsiveConfig.activeBreakpoints,
  26445           breakpointNames = (0, _keys.default)(activeBreakpoints);
  26446       var minBreakpoint;
  26447 
  26448       if (breakpointNames[0] === device) {
  26449         // For the lowest breakpoint, the min point is always 320.
  26450         minBreakpoint = 320;
  26451       } else if ('widescreen' === device) {
  26452         // Widescreen only has a minimum point. In this case, the breakpoint
  26453         // value in the Breakpoints config is itself the device min point.
  26454         if (activeBreakpoints[device]) {
  26455           minBreakpoint = activeBreakpoints[device].value;
  26456         } else {
  26457           // If the widescreen breakpoint does not exist in the active breakpoints config (for example, in the
  26458           // case this method runs as the breakpoint is being added), get the value from the full config.
  26459           minBreakpoint = this.responsiveConfig.breakpoints.widescreen;
  26460         }
  26461       } else {
  26462         var deviceNameIndex = breakpointNames.indexOf(device),
  26463             previousIndex = deviceNameIndex - 1;
  26464         minBreakpoint = activeBreakpoints[breakpointNames[previousIndex]].value + 1;
  26465       }
  26466 
  26467       return minBreakpoint;
  26468     }
  26469     /**
  26470      * Get Active Match Regex
  26471      *
  26472      * Returns a regular expression containing all active breakpoints prefixed with an underscore.
  26473      *
  26474      * @returns {RegExp}
  26475      */
  26476 
  26477   }, {
  26478     key: "getActiveMatchRegex",
  26479     value: function getActiveMatchRegex() {
  26480       return new RegExp(this.getActiveBreakpointsList().map(function (device) {
  26481         return '_' + device;
  26482       }).join('|') + '$');
  26483     }
  26484   }]);
  26485   return Breakpoints;
  26486 }(elementorModules.Module);
  26487 
  26488 exports.default = Breakpoints;
  26489 
  26490 /***/ }),
  26491 
  26492 /***/ "../assets/dev/js/utils/hooks.js":
  26493 /*!***************************************!*\
  26494   !*** ../assets/dev/js/utils/hooks.js ***!
  26495   \***************************************/
  26496 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  26497 
  26498 "use strict";
  26499 
  26500 /**
  26501  * Handles managing all events for whatever you plug it into. Priorities for hooks are based on lowest to highest in
  26502  * that, lowest priority hooks are fired first.
  26503  */
  26504 
  26505 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  26506 
  26507 var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));
  26508 
  26509 __webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");
  26510 
  26511 var EventManager = function EventManager() {
  26512   var slice = Array.prototype.slice,
  26513       MethodsAvailable;
  26514   /**
  26515    * Contains the hooks that get registered with this EventManager. The array for storage utilizes a "flat"
  26516    * object literal such that looking up the hook utilizes the native object literal hash.
  26517    */
  26518 
  26519   var STORAGE = {
  26520     actions: {},
  26521     filters: {}
  26522   };
  26523   /**
  26524    * Removes the specified hook by resetting the value of it.
  26525    *
  26526    * @param type Type of hook, either 'actions' or 'filters'
  26527    * @param hook The hook (namespace.identifier) to remove
  26528    *
  26529    * @private
  26530    */
  26531 
  26532   function _removeHook(type, hook, callback, context) {
  26533     var handlers, handler, i;
  26534 
  26535     if (!STORAGE[type][hook]) {
  26536       return;
  26537     }
  26538 
  26539     if (!callback) {
  26540       STORAGE[type][hook] = [];
  26541     } else {
  26542       handlers = STORAGE[type][hook];
  26543 
  26544       if (!context) {
  26545         for (i = handlers.length; i--;) {
  26546           if (handlers[i].callback === callback) {
  26547             handlers.splice(i, 1);
  26548           }
  26549         }
  26550       } else {
  26551         for (i = handlers.length; i--;) {
  26552           handler = handlers[i];
  26553 
  26554           if (handler.callback === callback && handler.context === context) {
  26555             handlers.splice(i, 1);
  26556           }
  26557         }
  26558       }
  26559     }
  26560   }
  26561   /**
  26562    * Use an insert sort for keeping our hooks organized based on priority. This function is ridiculously faster
  26563    * than bubble sort, etc: http://jsperf.com/javascript-sort
  26564    *
  26565    * @param hooks The custom array containing all of the appropriate hooks to perform an insert sort on.
  26566    * @private
  26567    */
  26568 
  26569 
  26570   function _hookInsertSort(hooks) {
  26571     var tmpHook, j, prevHook;
  26572 
  26573     for (var i = 1, len = hooks.length; i < len; i++) {
  26574       tmpHook = hooks[i];
  26575       j = i;
  26576 
  26577       while ((prevHook = hooks[j - 1]) && prevHook.priority > tmpHook.priority) {
  26578         hooks[j] = hooks[j - 1];
  26579         --j;
  26580       }
  26581 
  26582       hooks[j] = tmpHook;
  26583     }
  26584 
  26585     return hooks;
  26586   }
  26587   /**
  26588    * Adds the hook to the appropriate storage container
  26589    *
  26590    * @param type 'actions' or 'filters'
  26591    * @param hook The hook (namespace.identifier) to add to our event manager
  26592    * @param callback The function that will be called when the hook is executed.
  26593    * @param priority The priority of this hook. Must be an integer.
  26594    * @param [context] A value to be used for this
  26595    * @private
  26596    */
  26597 
  26598 
  26599   function _addHook(type, hook, callback, priority, context) {
  26600     var hookObject = {
  26601       callback: callback,
  26602       priority: priority,
  26603       context: context
  26604     }; // Utilize 'prop itself' : http://jsperf.com/hasownproperty-vs-in-vs-undefined/19
  26605 
  26606     var hooks = STORAGE[type][hook];
  26607 
  26608     if (hooks) {
  26609       // TEMP FIX BUG
  26610       var hasSameCallback = false;
  26611       jQuery.each(hooks, function () {
  26612         if (this.callback === callback) {
  26613           hasSameCallback = true;
  26614           return false;
  26615         }
  26616       });
  26617 
  26618       if (hasSameCallback) {
  26619         return;
  26620       } // END TEMP FIX BUG
  26621 
  26622 
  26623       hooks.push(hookObject);
  26624       hooks = _hookInsertSort(hooks);
  26625     } else {
  26626       hooks = [hookObject];
  26627     }
  26628 
  26629     STORAGE[type][hook] = hooks;
  26630   }
  26631   /**
  26632    * Runs the specified hook. If it is an action, the value is not modified but if it is a filter, it is.
  26633    *
  26634    * @param type 'actions' or 'filters'
  26635    * @param hook The hook ( namespace.identifier ) to be ran.
  26636    * @param args Arguments to pass to the action/filter. If it's a filter, args is actually a single parameter.
  26637    * @private
  26638    */
  26639 
  26640 
  26641   function _runHook(type, hook, args) {
  26642     var handlers = STORAGE[type][hook],
  26643         i,
  26644         len;
  26645 
  26646     if (!handlers) {
  26647       return 'filters' === type ? args[0] : false;
  26648     }
  26649 
  26650     len = handlers.length;
  26651 
  26652     if ('filters' === type) {
  26653       for (i = 0; i < len; i++) {
  26654         args[0] = handlers[i].callback.apply(handlers[i].context, args);
  26655       }
  26656     } else {
  26657       for (i = 0; i < len; i++) {
  26658         handlers[i].callback.apply(handlers[i].context, args);
  26659       }
  26660     }
  26661 
  26662     return 'filters' === type ? args[0] : true;
  26663   }
  26664   /**
  26665    * Adds an action to the event manager.
  26666    *
  26667    * @param action Must contain namespace.identifier
  26668    * @param callback Must be a valid callback function before this action is added
  26669    * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
  26670    * @param [context] Supply a value to be used for this
  26671    */
  26672 
  26673 
  26674   function addAction(action, callback, priority, context) {
  26675     if ('string' === typeof action && 'function' === typeof callback) {
  26676       priority = (0, _parseInt2.default)(priority || 10, 10);
  26677 
  26678       _addHook('actions', action, callback, priority, context);
  26679     }
  26680 
  26681     return MethodsAvailable;
  26682   }
  26683   /**
  26684    * Performs an action if it exists. You can pass as many arguments as you want to this function; the only rule is
  26685    * that the first argument must always be the action.
  26686    */
  26687 
  26688 
  26689   function doAction() {
  26690     var args = slice.call(arguments);
  26691     var action = args.shift();
  26692 
  26693     if ('string' === typeof action) {
  26694       _runHook('actions', action, args);
  26695     }
  26696 
  26697     return MethodsAvailable;
  26698   }
  26699   /**
  26700    * Removes the specified action if it contains a namespace.identifier & exists.
  26701    *
  26702    * @param action The action to remove
  26703    * @param [callback] Callback function to remove
  26704    */
  26705 
  26706 
  26707   function removeAction(action, callback) {
  26708     if ('string' === typeof action) {
  26709       _removeHook('actions', action, callback);
  26710     }
  26711 
  26712     return MethodsAvailable;
  26713   }
  26714   /**
  26715    * Adds a filter to the event manager.
  26716    *
  26717    * @param filter Must contain namespace.identifier
  26718    * @param callback Must be a valid callback function before this action is added
  26719    * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
  26720    * @param [context] Supply a value to be used for this
  26721    */
  26722 
  26723 
  26724   function addFilter(filter, callback, priority, context) {
  26725     if ('string' === typeof filter && 'function' === typeof callback) {
  26726       priority = (0, _parseInt2.default)(priority || 10, 10);
  26727 
  26728       _addHook('filters', filter, callback, priority, context);
  26729     }
  26730 
  26731     return MethodsAvailable;
  26732   }
  26733   /**
  26734    * Performs a filter if it exists. You should only ever pass 1 argument to be filtered. The only rule is that
  26735    * the first argument must always be the filter.
  26736    */
  26737 
  26738 
  26739   function applyFilters() {
  26740     var args = slice.call(arguments);
  26741     var filter = args.shift();
  26742 
  26743     if ('string' === typeof filter) {
  26744       return _runHook('filters', filter, args);
  26745     }
  26746 
  26747     return MethodsAvailable;
  26748   }
  26749   /**
  26750    * Removes the specified filter if it contains a namespace.identifier & exists.
  26751    *
  26752    * @param filter The action to remove
  26753    * @param [callback] Callback function to remove
  26754    */
  26755 
  26756 
  26757   function removeFilter(filter, callback) {
  26758     if ('string' === typeof filter) {
  26759       _removeHook('filters', filter, callback);
  26760     }
  26761 
  26762     return MethodsAvailable;
  26763   }
  26764   /**
  26765    * Maintain a reference to the object scope so our public methods never get confusing.
  26766    */
  26767 
  26768 
  26769   MethodsAvailable = {
  26770     removeFilter: removeFilter,
  26771     applyFilters: applyFilters,
  26772     addFilter: addFilter,
  26773     removeAction: removeAction,
  26774     doAction: doAction,
  26775     addAction: addAction
  26776   }; // return all of the publicly available methods
  26777 
  26778   return MethodsAvailable;
  26779 };
  26780 
  26781 module.exports = EventManager;
  26782 
  26783 /***/ }),
  26784 
  26785 /***/ "../core/app/assets/js/utils/utils.js":
  26786 /*!********************************************!*\
  26787   !*** ../core/app/assets/js/utils/utils.js ***!
  26788   \********************************************/
  26789 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  26790 
  26791 "use strict";
  26792 
  26793 
  26794 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  26795 
  26796 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  26797 
  26798 _Object$defineProperty(exports, "__esModule", {
  26799   value: true
  26800 });
  26801 
  26802 exports.isOneOf = exports.rgbToHex = exports.stringToRemValues = exports.arrayToClassName = exports.pxToRem = void 0;
  26803 
  26804 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  26805 
  26806 var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));
  26807 
  26808 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
  26809 
  26810 __webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");
  26811 
  26812 __webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");
  26813 
  26814 __webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");
  26815 
  26816 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  26817 
  26818 __webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");
  26819 
  26820 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
  26821 
  26822 var pxToRem = function pxToRem(pixels) {
  26823   if (!pixels) {
  26824     return;
  26825   } else if ('string' !== typeof pixels) {
  26826     pixels = pixels.toString();
  26827   }
  26828 
  26829   return pixels.split(' ').map(function (value) {
  26830     return "".concat(value * 0.0625, "rem");
  26831   }).join(' ');
  26832 };
  26833 
  26834 exports.pxToRem = pxToRem;
  26835 
  26836 var arrayToClassName = function arrayToClassName(array, action) {
  26837   return array.filter(function (item) {
  26838     return 'object' === (0, _typeof2.default)(item) ? (0, _entries.default)(item)[0][1] : item;
  26839   }).map(function (item) {
  26840     var value = 'object' === (0, _typeof2.default)(item) ? (0, _entries.default)(item)[0][0] : item;
  26841     return action ? action(value) : value;
  26842   }).join(' ');
  26843 };
  26844 
  26845 exports.arrayToClassName = arrayToClassName;
  26846 
  26847 var stringToRemValues = function stringToRemValues(string) {
  26848   return string.split(' ').map(function (value) {
  26849     return pxToRem(value);
  26850   }).join(' ');
  26851 };
  26852 
  26853 exports.stringToRemValues = stringToRemValues;
  26854 
  26855 var rgbToHex = function rgbToHex(r, g, b) {
  26856   return '#' + [r, g, b].map(function (x) {
  26857     var hex = x.toString(16);
  26858     return 1 === hex.length ? '0' + hex : hex;
  26859   }).join('');
  26860 };
  26861 
  26862 exports.rgbToHex = rgbToHex;
  26863 
  26864 var isOneOf = function isOneOf(filetype, filetypeOptions) {
  26865   return filetypeOptions.some(function (type) {
  26866     return filetype.includes(type);
  26867   });
  26868 };
  26869 
  26870 exports.isOneOf = isOneOf;
  26871 
  26872 /***/ }),
  26873 
  26874 /***/ "../core/common/assets/js/api/modules/command-base.js":
  26875 /*!************************************************************!*\
  26876   !*** ../core/common/assets/js/api/modules/command-base.js ***!
  26877   \************************************************************/
  26878 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  26879 
  26880 "use strict";
  26881 
  26882 
  26883 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  26884 
  26885 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  26886 
  26887 _Object$defineProperty(exports, "__esModule", {
  26888   value: true
  26889 });
  26890 
  26891 exports.default = void 0;
  26892 
  26893 var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
  26894 
  26895 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  26896 
  26897 __webpack_require__(/*! core-js/modules/es6.string.iterator.js */ "../node_modules/core-js/modules/es6.string.iterator.js");
  26898 
  26899 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
  26900 
  26901 __webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");
  26902 
  26903 __webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");
  26904 
  26905 var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));
  26906 
  26907 var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));
  26908 
  26909 var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));
  26910 
  26911 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));
  26912 
  26913 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  26914 
  26915 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  26916 
  26917 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
  26918 
  26919 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  26920 
  26921 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  26922 
  26923 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  26924 
  26925 var _argsObject = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/modules/imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));
  26926 
  26927 var CommandBase = /*#__PURE__*/function (_ArgsObject) {
  26928   (0, _inherits2.default)(CommandBase, _ArgsObject);
  26929 
  26930   var _super = (0, _createSuper2.default)(CommandBase);
  26931 
  26932   /**
  26933    * Function constructor().
  26934    *
  26935    * Create Commands Base.
  26936    *
  26937    * @param [args={}]
  26938    * @param [commandsAPI={}]
  26939    */
  26940   function CommandBase(args) {
  26941     var _this;
  26942 
  26943     var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.commands;
  26944     (0, _classCallCheck2.default)(this, CommandBase);
  26945     _this = _super.call(this, args); // Acknowledge self about which command it run.
  26946 
  26947     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "component", void 0);
  26948     _this.currentCommand = commandsAPI.getCurrentLast(); // Assign instance of current component.
  26949 
  26950     _this.component = commandsAPI.getComponent(_this.currentCommand); // Who ever need do something before without `super` the constructor can use `initialize` method.
  26951 
  26952     _this.initialize(args); // Refresh args, maybe the changed via `initialize`.
  26953 
  26954 
  26955     args = _this.args; // Validate args before run.
  26956 
  26957     _this.validateArgs(args);
  26958 
  26959     return _this;
  26960   }
  26961   /**
  26962    * Function requireContainer().
  26963    *
  26964    * Validate `arg.container` & `arg.containers`.
  26965    *
  26966    * @param {{}} args
  26967    *
  26968    * @throws {Error}
  26969    */
  26970 
  26971 
  26972   (0, _createClass2.default)(CommandBase, [{
  26973     key: "requireContainer",
  26974     value: function requireContainer() {
  26975       var _this2 = this;
  26976 
  26977       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.args;
  26978 
  26979       if (!args.container && !args.containers) {
  26980         throw Error('container or containers are required.');
  26981       }
  26982 
  26983       if (args.container && args.containers) {
  26984         throw Error('container and containers cannot go together please select one of them.');
  26985       }
  26986 
  26987       var containers = args.containers || [args.container];
  26988       containers.forEach(function (container) {
  26989         _this2.requireArgumentInstance('container', elementorModules.editor.Container, {
  26990           container: container
  26991         });
  26992       });
  26993     }
  26994     /**
  26995      * Function initialize().
  26996      *
  26997      * Initialize command, called after construction.
  26998      *
  26999      * @param [args={}]
  27000      */
  27001 
  27002   }, {
  27003     key: "initialize",
  27004     value: function initialize() {
  27005       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  27006     } // eslint-disable-line no-unused-vars
  27007 
  27008     /**
  27009      * Function validateArgs().
  27010      *
  27011      * Validate command arguments.
  27012      *
  27013      * @param [args={}]
  27014      */
  27015 
  27016   }, {
  27017     key: "validateArgs",
  27018     value: function validateArgs() {
  27019       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  27020     } // eslint-disable-line no-unused-vars
  27021 
  27022     /**
  27023      * Function isDataChanged().
  27024      *
  27025      * Whether the editor needs to set change flag on/off.
  27026      *
  27027      * @returns {boolean}
  27028      */
  27029 
  27030   }, {
  27031     key: "isDataChanged",
  27032     value: function isDataChanged() {
  27033       return false;
  27034     }
  27035     /**
  27036      * Function apply().
  27037      *
  27038      * Do the actual command.
  27039      *
  27040      * @param [args={}]
  27041      *
  27042      * @returns {*}
  27043      */
  27044 
  27045   }, {
  27046     key: "apply",
  27047     value: function apply() {
  27048       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  27049       // eslint-disable-line no-unused-vars
  27050       elementorModules.ForceMethodImplementation();
  27051     }
  27052     /**
  27053      * Function run().
  27054      *
  27055      * Run command with history & hooks.
  27056      *
  27057      * @returns {*}
  27058      */
  27059 
  27060   }, {
  27061     key: "run",
  27062     value: function run() {
  27063       var result; // For UI Hooks.
  27064 
  27065       this.onBeforeRun(this.args);
  27066 
  27067       try {
  27068         // For Data hooks.
  27069         this.onBeforeApply(this.args);
  27070         result = this.apply(this.args);
  27071       } catch (e) {
  27072         this.onCatchApply(e); // Catch 'Hook-Break' that comes from hooks base.
  27073 
  27074         if (e instanceof $e.modules.HookBreak) {
  27075           // Bypass.
  27076           return false;
  27077         }
  27078       }
  27079 
  27080       return this.runAfter(result);
  27081     }
  27082   }, {
  27083     key: "runAfter",
  27084     value: function runAfter(result) {
  27085       var _this3 = this;
  27086 
  27087       var onAfter = function onAfter(_result) {
  27088         // Run Data hooks.
  27089         _this3.onAfterApply(_this3.args, _result); // TODO: Create Command-Base for Command-Document and apply it on after.
  27090 
  27091 
  27092         if (_this3.isDataChanged()) {
  27093           $e.internal('document/save/set-is-modified', {
  27094             status: true
  27095           });
  27096         } // For UI hooks.
  27097 
  27098 
  27099         _this3.onAfterRun(_this3.args, _result);
  27100       },
  27101           asyncOnAfter = /*#__PURE__*/function () {
  27102         var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_result) {
  27103           var results, promises;
  27104           return _regenerator.default.wrap(function _callee$(_context) {
  27105             while (1) {
  27106               switch (_context.prev = _context.next) {
  27107                 case 0:
  27108                   // Run Data hooks.
  27109                   results = _this3.onAfterApply(_this3.args, _result), promises = (0, _isArray.default)(results) ? results.flat().filter(function (filtered) {
  27110                     return filtered instanceof _promise.default;
  27111                   }) : [];
  27112 
  27113                   if (!promises.length) {
  27114                     _context.next = 4;
  27115                     break;
  27116                   }
  27117 
  27118                   _context.next = 4;
  27119                   return _promise.default.all(promises);
  27120 
  27121                 case 4:
  27122                   if (_this3.isDataChanged()) {
  27123                     // TODO: Create Command-Base for Command-Document and apply it on after.
  27124                     $e.internal('document/save/set-is-modified', {
  27125                       status: true
  27126                     });
  27127                   } // For UI hooks.
  27128 
  27129 
  27130                   _this3.onAfterRun(_this3.args, _result);
  27131 
  27132                 case 6:
  27133                 case "end":
  27134                   return _context.stop();
  27135               }
  27136             }
  27137           }, _callee);
  27138         }));
  27139 
  27140         return function asyncOnAfter(_x) {
  27141           return _ref.apply(this, arguments);
  27142         };
  27143       }(); // TODO: Temp code determine if it's a jQuery deferred object.
  27144 
  27145 
  27146       if (result && 'object' === (0, _typeof2.default)(result) && result.promise && result.then && result.fail) {
  27147         result.fail(this.onCatchApply.bind(this));
  27148         result.done(onAfter);
  27149       } else if (result instanceof _promise.default) {
  27150         // Override initial result ( promise ) to await onAfter promises, first!.
  27151         return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
  27152           return _regenerator.default.wrap(function _callee2$(_context2) {
  27153             while (1) {
  27154               switch (_context2.prev = _context2.next) {
  27155                 case 0:
  27156                   _context2.next = 2;
  27157                   return result.catch(_this3.onCatchApply.bind(_this3));
  27158 
  27159                 case 2:
  27160                   _context2.next = 4;
  27161                   return result.then(function (_result) {
  27162                     return asyncOnAfter(_result);
  27163                   });
  27164 
  27165                 case 4:
  27166                   return _context2.abrupt("return", result);
  27167 
  27168                 case 5:
  27169                 case "end":
  27170                   return _context2.stop();
  27171               }
  27172             }
  27173           }, _callee2);
  27174         }))();
  27175       } else {
  27176         onAfter(result);
  27177       }
  27178 
  27179       return result;
  27180     }
  27181     /**
  27182      * Run all the catch hooks.
  27183      *
  27184      * @param {Error} e
  27185      */
  27186 
  27187   }, {
  27188     key: "runCatchHooks",
  27189     value: function runCatchHooks(e) {
  27190       $e.hooks.runDataCatch(this.currentCommand, this.args, e);
  27191       $e.hooks.runUICatch(this.currentCommand, this.args, e);
  27192     }
  27193     /**
  27194      * Function onBeforeRun.
  27195      *
  27196      * Called before run().
  27197      *
  27198      * @param [args={}]
  27199      */
  27200 
  27201   }, {
  27202     key: "onBeforeRun",
  27203     value: function onBeforeRun() {
  27204       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  27205       $e.hooks.runUIBefore(this.currentCommand, args);
  27206     }
  27207     /**
  27208      * Function onAfterRun.
  27209      *
  27210      * Called after run().
  27211      *
  27212      * @param [args={}]
  27213      * @param [result={*}]
  27214      */
  27215 
  27216   }, {
  27217     key: "onAfterRun",
  27218     value: function onAfterRun() {
  27219       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  27220       var result = arguments.length > 1 ? arguments[1] : undefined;
  27221       $e.hooks.runUIAfter(this.currentCommand, args, result);
  27222     }
  27223     /**
  27224      * Function onBeforeApply.
  27225      *
  27226      * Called before apply().
  27227      *
  27228      * @param [args={}]
  27229      */
  27230 
  27231   }, {
  27232     key: "onBeforeApply",
  27233     value: function onBeforeApply() {
  27234       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  27235       $e.hooks.runDataDependency(this.currentCommand, args);
  27236     }
  27237     /**
  27238      * Function onAfterApply.
  27239      *
  27240      * Called after apply().
  27241      *
  27242      * @param [args={}]
  27243      * @param [result={*}]
  27244      */
  27245 
  27246   }, {
  27247     key: "onAfterApply",
  27248     value: function onAfterApply() {
  27249       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  27250       var result = arguments.length > 1 ? arguments[1] : undefined;
  27251       return $e.hooks.runDataAfter(this.currentCommand, args, result);
  27252     }
  27253     /**
  27254      * Function onCatchApply.
  27255      *
  27256      * Called after apply() failed.
  27257      *
  27258      * @param {Error} e
  27259      */
  27260 
  27261   }, {
  27262     key: "onCatchApply",
  27263     value: function onCatchApply(e) {
  27264       this.runCatchHooks(e);
  27265       elementorCommon.helpers.consoleError(e);
  27266     }
  27267   }], [{
  27268     key: "getInstanceType",
  27269     value: function getInstanceType() {
  27270       return 'CommandBase';
  27271     }
  27272     /**
  27273      * Get info of command.
  27274      *
  27275      * Use to provide 'extra' information about the command.
  27276      *
  27277      * @returns {Object}
  27278      */
  27279 
  27280   }, {
  27281     key: "getInfo",
  27282     value: function getInfo() {
  27283       return {};
  27284     }
  27285     /**
  27286      * Current component.
  27287      *
  27288      * @type {Component}
  27289      */
  27290 
  27291   }]);
  27292   return CommandBase;
  27293 }(_argsObject.default);
  27294 
  27295 exports.default = CommandBase;
  27296 
  27297 /***/ }),
  27298 
  27299 /***/ "../core/common/assets/js/api/modules/command-internal-base.js":
  27300 /*!*********************************************************************!*\
  27301   !*** ../core/common/assets/js/api/modules/command-internal-base.js ***!
  27302   \*********************************************************************/
  27303 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  27304 
  27305 "use strict";
  27306 
  27307 
  27308 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  27309 
  27310 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  27311 
  27312 _Object$defineProperty(exports, "__esModule", {
  27313   value: true
  27314 });
  27315 
  27316 exports.default = void 0;
  27317 
  27318 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  27319 
  27320 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  27321 
  27322 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  27323 
  27324 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  27325 
  27326 var _commandBase = _interopRequireDefault(__webpack_require__(/*! ./command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  27327 
  27328 var CommandInternalBase = /*#__PURE__*/function (_CommandBase) {
  27329   (0, _inherits2.default)(CommandInternalBase, _CommandBase);
  27330 
  27331   var _super = (0, _createSuper2.default)(CommandInternalBase);
  27332 
  27333   function CommandInternalBase(args) {
  27334     var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.commandsInternal;
  27335     (0, _classCallCheck2.default)(this, CommandInternalBase);
  27336     return _super.call(this, args, commandsAPI);
  27337   }
  27338 
  27339   (0, _createClass2.default)(CommandInternalBase, null, [{
  27340     key: "getInstanceType",
  27341     value: function getInstanceType() {
  27342       return 'CommandInternalBase';
  27343     }
  27344   }]);
  27345   return CommandInternalBase;
  27346 }(_commandBase.default);
  27347 
  27348 exports.default = CommandInternalBase;
  27349 
  27350 /***/ }),
  27351 
  27352 /***/ "../core/common/assets/js/api/modules/commands/close.js":
  27353 /*!**************************************************************!*\
  27354   !*** ../core/common/assets/js/api/modules/commands/close.js ***!
  27355   \**************************************************************/
  27356 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  27357 
  27358 "use strict";
  27359 
  27360 
  27361 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  27362 
  27363 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  27364 
  27365 _Object$defineProperty(exports, "__esModule", {
  27366   value: true
  27367 });
  27368 
  27369 exports.default = exports.Close = void 0;
  27370 
  27371 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  27372 
  27373 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  27374 
  27375 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  27376 
  27377 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  27378 
  27379 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  27380 
  27381 var Close = /*#__PURE__*/function (_CommandBase) {
  27382   (0, _inherits2.default)(Close, _CommandBase);
  27383 
  27384   var _super = (0, _createSuper2.default)(Close);
  27385 
  27386   function Close() {
  27387     (0, _classCallCheck2.default)(this, Close);
  27388     return _super.apply(this, arguments);
  27389   }
  27390 
  27391   (0, _createClass2.default)(Close, [{
  27392     key: "apply",
  27393     value: function apply() {
  27394       this.component.close();
  27395     }
  27396   }]);
  27397   return Close;
  27398 }(_commandBase.default);
  27399 
  27400 exports.Close = Close;
  27401 var _default = Close;
  27402 exports.default = _default;
  27403 
  27404 /***/ }),
  27405 
  27406 /***/ "../core/common/assets/js/api/modules/commands/index.js":
  27407 /*!**************************************************************!*\
  27408   !*** ../core/common/assets/js/api/modules/commands/index.js ***!
  27409   \**************************************************************/
  27410 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  27411 
  27412 "use strict";
  27413 
  27414 
  27415 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  27416 
  27417 _Object$defineProperty(exports, "__esModule", {
  27418   value: true
  27419 });
  27420 
  27421 _Object$defineProperty(exports, "Close", {
  27422   enumerable: true,
  27423   get: function get() {
  27424     return _close.Close;
  27425   }
  27426 });
  27427 
  27428 _Object$defineProperty(exports, "Open", {
  27429   enumerable: true,
  27430   get: function get() {
  27431     return _open.Open;
  27432   }
  27433 });
  27434 
  27435 _Object$defineProperty(exports, "Toggle", {
  27436   enumerable: true,
  27437   get: function get() {
  27438     return _toggle.Toggle;
  27439   }
  27440 });
  27441 
  27442 var _close = __webpack_require__(/*! ./close */ "../core/common/assets/js/api/modules/commands/close.js");
  27443 
  27444 var _open = __webpack_require__(/*! ./open */ "../core/common/assets/js/api/modules/commands/open.js");
  27445 
  27446 var _toggle = __webpack_require__(/*! ./toggle */ "../core/common/assets/js/api/modules/commands/toggle.js");
  27447 
  27448 /***/ }),
  27449 
  27450 /***/ "../core/common/assets/js/api/modules/commands/open.js":
  27451 /*!*************************************************************!*\
  27452   !*** ../core/common/assets/js/api/modules/commands/open.js ***!
  27453   \*************************************************************/
  27454 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  27455 
  27456 "use strict";
  27457 
  27458 
  27459 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  27460 
  27461 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  27462 
  27463 _Object$defineProperty(exports, "__esModule", {
  27464   value: true
  27465 });
  27466 
  27467 exports.default = exports.Open = void 0;
  27468 
  27469 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  27470 
  27471 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  27472 
  27473 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  27474 
  27475 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  27476 
  27477 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  27478 
  27479 var Open = /*#__PURE__*/function (_CommandBase) {
  27480   (0, _inherits2.default)(Open, _CommandBase);
  27481 
  27482   var _super = (0, _createSuper2.default)(Open);
  27483 
  27484   function Open() {
  27485     (0, _classCallCheck2.default)(this, Open);
  27486     return _super.apply(this, arguments);
  27487   }
  27488 
  27489   (0, _createClass2.default)(Open, [{
  27490     key: "apply",
  27491     value: function apply() {
  27492       $e.route(this.component.getNamespace());
  27493     }
  27494   }]);
  27495   return Open;
  27496 }(_commandBase.default);
  27497 
  27498 exports.Open = Open;
  27499 var _default = Open;
  27500 exports.default = _default;
  27501 
  27502 /***/ }),
  27503 
  27504 /***/ "../core/common/assets/js/api/modules/commands/toggle.js":
  27505 /*!***************************************************************!*\
  27506   !*** ../core/common/assets/js/api/modules/commands/toggle.js ***!
  27507   \***************************************************************/
  27508 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  27509 
  27510 "use strict";
  27511 
  27512 
  27513 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  27514 
  27515 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  27516 
  27517 _Object$defineProperty(exports, "__esModule", {
  27518   value: true
  27519 });
  27520 
  27521 exports.default = exports.Toggle = void 0;
  27522 
  27523 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  27524 
  27525 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  27526 
  27527 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  27528 
  27529 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  27530 
  27531 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  27532 
  27533 var Toggle = /*#__PURE__*/function (_CommandBase) {
  27534   (0, _inherits2.default)(Toggle, _CommandBase);
  27535 
  27536   var _super = (0, _createSuper2.default)(Toggle);
  27537 
  27538   function Toggle() {
  27539     (0, _classCallCheck2.default)(this, Toggle);
  27540     return _super.apply(this, arguments);
  27541   }
  27542 
  27543   (0, _createClass2.default)(Toggle, [{
  27544     key: "apply",
  27545     value: function apply() {
  27546       if (this.component.isOpen) {
  27547         this.component.close();
  27548       } else {
  27549         $e.route(this.component.getNamespace());
  27550       }
  27551     }
  27552   }]);
  27553   return Toggle;
  27554 }(_commandBase.default);
  27555 
  27556 exports.Toggle = Toggle;
  27557 var _default = Toggle;
  27558 exports.default = _default;
  27559 
  27560 /***/ }),
  27561 
  27562 /***/ "../core/common/assets/js/api/modules/component-base.js":
  27563 /*!**************************************************************!*\
  27564   !*** ../core/common/assets/js/api/modules/component-base.js ***!
  27565   \**************************************************************/
  27566 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  27567 
  27568 "use strict";
  27569 
  27570 
  27571 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  27572 
  27573 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  27574 
  27575 _Object$defineProperty(exports, "__esModule", {
  27576   value: true
  27577 });
  27578 
  27579 exports.default = void 0;
  27580 
  27581 __webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");
  27582 
  27583 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  27584 
  27585 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  27586 
  27587 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  27588 
  27589 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
  27590 
  27591 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  27592 
  27593 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  27594 
  27595 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  27596 
  27597 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  27598 
  27599 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  27600 
  27601 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  27602 
  27603 var ComponentBase = /*#__PURE__*/function (_elementorModules$Mod) {
  27604   (0, _inherits2.default)(ComponentBase, _elementorModules$Mod);
  27605 
  27606   var _super = (0, _createSuper2.default)(ComponentBase);
  27607 
  27608   function ComponentBase() {
  27609     (0, _classCallCheck2.default)(this, ComponentBase);
  27610     return _super.apply(this, arguments);
  27611   }
  27612 
  27613   (0, _createClass2.default)(ComponentBase, [{
  27614     key: "__construct",
  27615     value: function __construct() {
  27616       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  27617 
  27618       if (args.manager) {
  27619         this.manager = args.manager;
  27620       }
  27621 
  27622       this.commands = this.defaultCommands();
  27623       this.commandsInternal = this.defaultCommandsInternal();
  27624       this.hooks = this.defaultHooks();
  27625       this.routes = this.defaultRoutes();
  27626       this.tabs = this.defaultTabs();
  27627       this.shortcuts = this.defaultShortcuts();
  27628       this.utils = this.defaultUtils();
  27629       this.data = this.defaultData();
  27630       this.uiStates = this.defaultUiStates();
  27631       this.defaultRoute = '';
  27632       this.currentTab = '';
  27633     }
  27634   }, {
  27635     key: "registerAPI",
  27636     value: function registerAPI() {
  27637       var _this = this;
  27638 
  27639       (0, _entries.default)(this.getTabs()).forEach(function (tab) {
  27640         return _this.registerTabRoute(tab[0]);
  27641       });
  27642       (0, _entries.default)(this.getRoutes()).forEach(function (_ref) {
  27643         var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  27644             route = _ref2[0],
  27645             callback = _ref2[1];
  27646 
  27647         return _this.registerRoute(route, callback);
  27648       });
  27649       (0, _entries.default)(this.getCommands()).forEach(function (_ref3) {
  27650         var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
  27651             command = _ref4[0],
  27652             callback = _ref4[1];
  27653 
  27654         return _this.registerCommand(command, callback);
  27655       });
  27656       (0, _entries.default)(this.getCommandsInternal()).forEach(function (_ref5) {
  27657         var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
  27658             command = _ref6[0],
  27659             callback = _ref6[1];
  27660 
  27661         return _this.registerCommandInternal(command, callback);
  27662       });
  27663       (0, _values.default)(this.getHooks()).forEach(function (instance) {
  27664         return _this.registerHook(instance);
  27665       });
  27666       (0, _entries.default)(this.getData()).forEach(function (_ref7) {
  27667         var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
  27668             command = _ref8[0],
  27669             callback = _ref8[1];
  27670 
  27671         return _this.registerData(command, callback);
  27672       });
  27673       (0, _values.default)(this.getUiStates()).forEach(function (instance) {
  27674         return _this.registerUiState(instance);
  27675       });
  27676     }
  27677     /**
  27678      * @returns {string}
  27679      */
  27680 
  27681   }, {
  27682     key: "getNamespace",
  27683     value: function getNamespace() {
  27684       elementorModules.ForceMethodImplementation();
  27685     }
  27686   }, {
  27687     key: "getRootContainer",
  27688     value: function getRootContainer() {
  27689       var parts = this.getNamespace().split('/');
  27690       return parts[0];
  27691     }
  27692   }, {
  27693     key: "defaultTabs",
  27694     value: function defaultTabs() {
  27695       return {};
  27696     }
  27697   }, {
  27698     key: "defaultRoutes",
  27699     value: function defaultRoutes() {
  27700       return {};
  27701     }
  27702   }, {
  27703     key: "defaultCommands",
  27704     value: function defaultCommands() {
  27705       return {};
  27706     }
  27707   }, {
  27708     key: "defaultCommandsInternal",
  27709     value: function defaultCommandsInternal() {
  27710       return {};
  27711     }
  27712   }, {
  27713     key: "defaultHooks",
  27714     value: function defaultHooks() {
  27715       return {};
  27716     }
  27717     /**
  27718      * Get the component's default UI states.
  27719      *
  27720      * @return {Object}
  27721      */
  27722 
  27723   }, {
  27724     key: "defaultUiStates",
  27725     value: function defaultUiStates() {
  27726       return {};
  27727     }
  27728   }, {
  27729     key: "defaultShortcuts",
  27730     value: function defaultShortcuts() {
  27731       return {};
  27732     }
  27733   }, {
  27734     key: "defaultUtils",
  27735     value: function defaultUtils() {
  27736       return {};
  27737     }
  27738   }, {
  27739     key: "defaultData",
  27740     value: function defaultData() {
  27741       return {};
  27742     }
  27743   }, {
  27744     key: "getCommands",
  27745     value: function getCommands() {
  27746       return this.commands;
  27747     }
  27748   }, {
  27749     key: "getCommandsInternal",
  27750     value: function getCommandsInternal() {
  27751       return this.commandsInternal;
  27752     }
  27753   }, {
  27754     key: "getHooks",
  27755     value: function getHooks() {
  27756       return this.hooks;
  27757     }
  27758     /**
  27759      * Retrieve the component's UI states.
  27760      *
  27761      * @return {Object}
  27762      */
  27763 
  27764   }, {
  27765     key: "getUiStates",
  27766     value: function getUiStates() {
  27767       return this.uiStates;
  27768     }
  27769   }, {
  27770     key: "getRoutes",
  27771     value: function getRoutes() {
  27772       return this.routes;
  27773     }
  27774   }, {
  27775     key: "getTabs",
  27776     value: function getTabs() {
  27777       return this.tabs;
  27778     }
  27779   }, {
  27780     key: "getShortcuts",
  27781     value: function getShortcuts() {
  27782       return this.shortcuts;
  27783     }
  27784   }, {
  27785     key: "getData",
  27786     value: function getData() {
  27787       return this.data;
  27788     }
  27789   }, {
  27790     key: "registerCommand",
  27791     value: function registerCommand(command, callback) {
  27792       $e.commands.register(this, command, callback);
  27793     }
  27794     /**
  27795      * @param {HookBase} instance
  27796      */
  27797 
  27798   }, {
  27799     key: "registerHook",
  27800     value: function registerHook(instance) {
  27801       return instance.register();
  27802     }
  27803     /**
  27804      * Register a UI state.
  27805      *
  27806      * @param {UiStateBase} instance - UI state instance.
  27807      *
  27808      * @return {void}
  27809      */
  27810 
  27811   }, {
  27812     key: "registerUiState",
  27813     value: function registerUiState(instance) {
  27814       $e.uiStates.register(instance);
  27815     }
  27816   }, {
  27817     key: "registerCommandInternal",
  27818     value: function registerCommandInternal(command, callback) {
  27819       $e.commandsInternal.register(this, command, callback);
  27820     }
  27821   }, {
  27822     key: "registerRoute",
  27823     value: function registerRoute(route, callback) {
  27824       $e.routes.register(this, route, callback);
  27825     }
  27826   }, {
  27827     key: "registerData",
  27828     value: function registerData(command, callback) {
  27829       $e.data.register(this, command, callback);
  27830     }
  27831   }, {
  27832     key: "unregisterRoute",
  27833     value: function unregisterRoute(route) {
  27834       $e.routes.unregister(this, route);
  27835     }
  27836   }, {
  27837     key: "registerTabRoute",
  27838     value: function registerTabRoute(tab) {
  27839       var _this2 = this;
  27840 
  27841       this.registerRoute(tab, function (args) {
  27842         return _this2.activateTab(tab, args);
  27843       });
  27844     }
  27845   }, {
  27846     key: "dependency",
  27847     value: function dependency() {
  27848       return true;
  27849     }
  27850   }, {
  27851     key: "open",
  27852     value: function open() {
  27853       return true;
  27854     }
  27855   }, {
  27856     key: "close",
  27857     value: function close() {
  27858       if (!this.isOpen) {
  27859         return false;
  27860       }
  27861 
  27862       this.isOpen = false;
  27863       this.inactivate();
  27864       $e.routes.clearCurrent(this.getNamespace());
  27865       $e.routes.clearHistory(this.getRootContainer());
  27866       return true;
  27867     }
  27868   }, {
  27869     key: "activate",
  27870     value: function activate() {
  27871       $e.components.activate(this.getNamespace());
  27872     }
  27873   }, {
  27874     key: "inactivate",
  27875     value: function inactivate() {
  27876       $e.components.inactivate(this.getNamespace());
  27877     }
  27878   }, {
  27879     key: "isActive",
  27880     value: function isActive() {
  27881       return $e.components.isActive(this.getNamespace());
  27882     }
  27883   }, {
  27884     key: "onRoute",
  27885     value: function onRoute(route) {
  27886       this.toggleRouteClass(route, true);
  27887       this.toggleHistoryClass();
  27888       this.activate();
  27889       this.trigger('route/open', route);
  27890     }
  27891   }, {
  27892     key: "onCloseRoute",
  27893     value: function onCloseRoute(route) {
  27894       this.toggleRouteClass(route, false);
  27895       this.inactivate();
  27896       this.trigger('route/close', route);
  27897     }
  27898   }, {
  27899     key: "setDefaultRoute",
  27900     value: function setDefaultRoute(route) {
  27901       this.defaultRoute = this.getNamespace() + '/' + route;
  27902     }
  27903   }, {
  27904     key: "getDefaultRoute",
  27905     value: function getDefaultRoute() {
  27906       return this.defaultRoute;
  27907     }
  27908   }, {
  27909     key: "removeTab",
  27910     value: function removeTab(tab) {
  27911       delete this.tabs[tab];
  27912       this.unregisterRoute(tab);
  27913     }
  27914   }, {
  27915     key: "hasTab",
  27916     value: function hasTab(tab) {
  27917       return !!this.tabs[tab];
  27918     }
  27919   }, {
  27920     key: "addTab",
  27921     value: function addTab(tab, args, position) {
  27922       var _this3 = this;
  27923 
  27924       this.tabs[tab] = args; // It can be 0.
  27925 
  27926       if ('undefined' !== typeof position) {
  27927         var newTabs = {};
  27928         var ids = (0, _keys.default)(this.tabs); // Remove new tab
  27929 
  27930         ids.pop(); // Add it to position.
  27931 
  27932         ids.splice(position, 0, tab);
  27933         ids.forEach(function (id) {
  27934           newTabs[id] = _this3.tabs[id];
  27935         });
  27936         this.tabs = newTabs;
  27937       }
  27938 
  27939       this.registerTabRoute(tab);
  27940     }
  27941   }, {
  27942     key: "getTabsWrapperSelector",
  27943     value: function getTabsWrapperSelector() {
  27944       return '';
  27945     }
  27946   }, {
  27947     key: "getTabRoute",
  27948     value: function getTabRoute(tab) {
  27949       return this.getNamespace() + '/' + tab;
  27950     }
  27951   }, {
  27952     key: "renderTab",
  27953     value: function renderTab(tab) {} // eslint-disable-line
  27954 
  27955   }, {
  27956     key: "activateTab",
  27957     value: function activateTab(tab, args) {
  27958       var _this4 = this;
  27959 
  27960       this.currentTab = tab;
  27961       this.renderTab(tab, args);
  27962       jQuery(this.getTabsWrapperSelector() + ' .elementor-component-tab').off('click').on('click', function (event) {
  27963         $e.route(_this4.getTabRoute(event.currentTarget.dataset.tab), args);
  27964       }).removeClass('elementor-active').filter('[data-tab="' + tab + '"]').addClass('elementor-active');
  27965     }
  27966   }, {
  27967     key: "getActiveTabConfig",
  27968     value: function getActiveTabConfig() {
  27969       return this.tabs[this.currentTab] || {};
  27970     }
  27971   }, {
  27972     key: "getBodyClass",
  27973     value: function getBodyClass(route) {
  27974       return 'e-route-' + route.replace(/\//g, '-');
  27975     }
  27976     /**
  27977      * If command includes uppercase character convert it to lowercase and add `-`.
  27978      * e.g: `CopyAll` is converted to `copy-all`.
  27979      */
  27980 
  27981   }, {
  27982     key: "normalizeCommandName",
  27983     value: function normalizeCommandName(commandName) {
  27984       return commandName.replace(/[A-Z]/g, function (match, offset) {
  27985         return (offset > 0 ? '-' : '') + match.toLowerCase();
  27986       });
  27987     }
  27988   }, {
  27989     key: "importCommands",
  27990     value: function importCommands(commandsFromImport) {
  27991       var _this5 = this;
  27992 
  27993       var commands = {}; // Convert `Commands` to `ComponentBase` workable format.
  27994 
  27995       (0, _entries.default)(commandsFromImport).forEach(function (_ref9) {
  27996         var _ref10 = (0, _slicedToArray2.default)(_ref9, 2),
  27997             className = _ref10[0],
  27998             Class = _ref10[1];
  27999 
  28000         var command = _this5.normalizeCommandName(className);
  28001 
  28002         commands[command] = function (args) {
  28003           return new Class(args).run();
  28004         }; // TODO: Temporary code, remove after merge with 'require-commands-base' branch.
  28005         // should not return callback, but Class or Instance without run ( gain performance ).
  28006 
  28007 
  28008         $e.commands.classes[_this5.getNamespace() + '/' + command] = Class;
  28009       });
  28010       return commands;
  28011     }
  28012   }, {
  28013     key: "importHooks",
  28014     value: function importHooks(hooksFromImport) {
  28015       var hooks = {};
  28016 
  28017       for (var key in hooksFromImport) {
  28018         var hook = new hooksFromImport[key]();
  28019         hooks[hook.getId()] = hook;
  28020       }
  28021 
  28022       return hooks;
  28023     }
  28024     /**
  28025      * Import & initialize the component's UI states.
  28026      * Should be used inside `defaultUiState()`.
  28027      *
  28028      * @param {Object} statesFromImport - UI states from import.
  28029      *
  28030      * @return {Object}
  28031      */
  28032 
  28033   }, {
  28034     key: "importUiStates",
  28035     value: function importUiStates(statesFromImport) {
  28036       var _this6 = this;
  28037 
  28038       var uiStates = {};
  28039       (0, _values.default)(statesFromImport).forEach(function (className) {
  28040         var uiState = new className(_this6);
  28041         uiStates[uiState.getId()] = uiState;
  28042       });
  28043       return uiStates;
  28044     }
  28045     /**
  28046      * Set a UI state value.
  28047      * TODO: Should we provide such function? Maybe the developer should implicitly pass the full state ID?
  28048      *
  28049      * @param state - Non-prefixed state ID.
  28050      * @param value - New state value.
  28051      *
  28052      * @return {void}
  28053      */
  28054 
  28055   }, {
  28056     key: "setUiState",
  28057     value: function setUiState(state, value) {
  28058       $e.uiStates.set("".concat(this.getNamespace(), "/").concat(state), value);
  28059     }
  28060   }, {
  28061     key: "toggleRouteClass",
  28062     value: function toggleRouteClass(route, state) {
  28063       elementorCommon.elements.$body.toggleClass(this.getBodyClass(route), state);
  28064     }
  28065   }, {
  28066     key: "toggleHistoryClass",
  28067     value: function toggleHistoryClass() {
  28068       elementorCommon.elements.$body.toggleClass('e-routes-has-history', !!$e.routes.getHistory(this.getRootContainer()).length);
  28069     }
  28070   }]);
  28071   return ComponentBase;
  28072 }(elementorModules.Module);
  28073 
  28074 exports.default = ComponentBase;
  28075 
  28076 /***/ }),
  28077 
  28078 /***/ "../core/common/assets/js/api/modules/component-modal-base.js":
  28079 /*!********************************************************************!*\
  28080   !*** ../core/common/assets/js/api/modules/component-modal-base.js ***!
  28081   \********************************************************************/
  28082 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  28083 
  28084 "use strict";
  28085 
  28086 
  28087 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  28088 
  28089 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
  28090 
  28091 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  28092 
  28093 _Object$defineProperty(exports, "__esModule", {
  28094   value: true
  28095 });
  28096 
  28097 exports.default = void 0;
  28098 
  28099 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  28100 
  28101 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  28102 
  28103 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  28104 
  28105 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  28106 
  28107 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  28108 
  28109 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  28110 
  28111 var _componentBase = _interopRequireDefault(__webpack_require__(/*! ./component-base */ "../core/common/assets/js/api/modules/component-base.js"));
  28112 
  28113 var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../core/common/assets/js/api/modules/commands/index.js"));
  28114 
  28115 var ComponentModalBase = /*#__PURE__*/function (_ComponentBase) {
  28116   (0, _inherits2.default)(ComponentModalBase, _ComponentBase);
  28117 
  28118   var _super = (0, _createSuper2.default)(ComponentModalBase);
  28119 
  28120   function ComponentModalBase() {
  28121     (0, _classCallCheck2.default)(this, ComponentModalBase);
  28122     return _super.apply(this, arguments);
  28123   }
  28124 
  28125   (0, _createClass2.default)(ComponentModalBase, [{
  28126     key: "registerAPI",
  28127     value: function registerAPI() {
  28128       var _this = this;
  28129 
  28130       (0, _get2.default)((0, _getPrototypeOf2.default)(ComponentModalBase.prototype), "registerAPI", this).call(this);
  28131       $e.shortcuts.register('esc', {
  28132         scopes: [this.getNamespace()],
  28133         callback: function callback() {
  28134           return _this.close();
  28135         }
  28136       });
  28137     }
  28138   }, {
  28139     key: "defaultCommands",
  28140     value: function defaultCommands() {
  28141       return this.importCommands(commands);
  28142     }
  28143   }, {
  28144     key: "defaultRoutes",
  28145     value: function defaultRoutes() {
  28146       return {
  28147         '': function _() {
  28148           /* Nothing to do, it's already rendered. */
  28149         }
  28150       };
  28151     }
  28152   }, {
  28153     key: "open",
  28154     value: function open() {
  28155       var _this2 = this;
  28156 
  28157       if (!this.layout) {
  28158         var layout = this.getModalLayout();
  28159         this.layout = new layout({
  28160           component: this
  28161         });
  28162         this.layout.getModal().on('hide', function () {
  28163           return _this2.close();
  28164         });
  28165       }
  28166 
  28167       this.layout.showModal();
  28168       return true;
  28169     }
  28170   }, {
  28171     key: "close",
  28172     value: function close() {
  28173       if (!(0, _get2.default)((0, _getPrototypeOf2.default)(ComponentModalBase.prototype), "close", this).call(this)) {
  28174         return false;
  28175       }
  28176 
  28177       this.layout.getModal().hide();
  28178       return true;
  28179     }
  28180   }, {
  28181     key: "getModalLayout",
  28182     value: function getModalLayout() {
  28183       elementorModules.ForceMethodImplementation();
  28184     }
  28185   }]);
  28186   return ComponentModalBase;
  28187 }(_componentBase.default);
  28188 
  28189 exports.default = ComponentModalBase;
  28190 
  28191 /***/ }),
  28192 
  28193 /***/ "../core/common/assets/js/api/modules/hook-base.js":
  28194 /*!*********************************************************!*\
  28195   !*** ../core/common/assets/js/api/modules/hook-base.js ***!
  28196   \*********************************************************/
  28197 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  28198 
  28199 "use strict";
  28200 
  28201 
  28202 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  28203 
  28204 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  28205 
  28206 _Object$defineProperty(exports, "__esModule", {
  28207   value: true
  28208 });
  28209 
  28210 exports.default = void 0;
  28211 
  28212 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  28213 
  28214 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  28215 
  28216 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  28217 
  28218 var HookBase = /*#__PURE__*/function () {
  28219   /**
  28220    * Callback type, eg ( hook, event ).
  28221    *
  28222    * @type {string}
  28223    */
  28224 
  28225   /**
  28226    * Full command address, that will hook the callback.
  28227    *
  28228    * @type (string)
  28229    */
  28230 
  28231   /**
  28232    * Unique id of the callback.
  28233    *
  28234    * @type {string}
  28235    */
  28236 
  28237   /**
  28238    * Function constructor().
  28239    *
  28240    * Create callback base.
  28241    */
  28242   function HookBase() {
  28243     (0, _classCallCheck2.default)(this, HookBase);
  28244     (0, _defineProperty2.default)(this, "type", void 0);
  28245     (0, _defineProperty2.default)(this, "command", void 0);
  28246     (0, _defineProperty2.default)(this, "id", void 0);
  28247     this.initialize();
  28248     this.type = this.getType();
  28249     this.command = this.getCommand();
  28250     this.id = this.getId();
  28251   }
  28252   /**
  28253    * Function initialize().
  28254    *
  28255    * Called after creation of the base, used for initialize extras.
  28256    * Without expending constructor.
  28257    */
  28258 
  28259 
  28260   (0, _createClass2.default)(HookBase, [{
  28261     key: "initialize",
  28262     value: function initialize() {}
  28263     /**
  28264      * Function register().
  28265      *
  28266      * Used to register the callback.
  28267      *
  28268      * @throws {Error}
  28269      */
  28270 
  28271   }, {
  28272     key: "register",
  28273     value: function register() {
  28274       elementorModules.ForceMethodImplementation();
  28275     }
  28276     /**
  28277      * Function getType().
  28278      *
  28279      * Get type eg: ( hook, event, etc ... ).
  28280      *
  28281      * @returns {string}
  28282      *
  28283      * @throws {Error}
  28284      */
  28285 
  28286   }, {
  28287     key: "getType",
  28288     value: function getType() {
  28289       elementorModules.ForceMethodImplementation();
  28290     }
  28291     /**
  28292      * Function getCommand().
  28293      *
  28294      * Returns the full command path for callback binding.
  28295      *
  28296      * Supports array of strings ( commands ).
  28297      *
  28298      * @returns {string}
  28299      *
  28300      * @throws {Error}
  28301      */
  28302 
  28303   }, {
  28304     key: "getCommand",
  28305     value: function getCommand() {
  28306       elementorModules.ForceMethodImplementation();
  28307     }
  28308     /**
  28309      * Function getId().
  28310      *
  28311      * Returns command id for the hook (should be unique).
  28312      *
  28313      * @returns {string}
  28314      *
  28315      * @throws {Error}
  28316      */
  28317 
  28318   }, {
  28319     key: "getId",
  28320     value: function getId() {
  28321       elementorModules.ForceMethodImplementation();
  28322     }
  28323     /**
  28324      * Function getContainerType().
  28325      *
  28326      * Bind eContainer type to callback.
  28327      *
  28328      * Used to gain performance.
  28329      *
  28330      * @return {string} type
  28331      */
  28332 
  28333   }, {
  28334     key: "getContainerType",
  28335     value: function getContainerType() {}
  28336     /**
  28337      * Function getConditions().
  28338      *
  28339      * Condition for running the callback, if true, call to apply().
  28340      *
  28341      * @param [args={}]
  28342      * @param [result=*]
  28343      *
  28344      * @returns {boolean}
  28345      */
  28346 
  28347   }, {
  28348     key: "getConditions",
  28349     value: function getConditions() {
  28350       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  28351       var result = arguments.length > 1 ? arguments[1] : undefined;
  28352       // eslint-disable-line no-unused-vars
  28353       return true;
  28354     }
  28355     /**
  28356      * Function apply().
  28357      *
  28358      * Apply the callback, ( The actual affect of the callback ).
  28359      *
  28360      * @param [args={}]
  28361      *
  28362      * @returns {*}
  28363      */
  28364 
  28365   }, {
  28366     key: "apply",
  28367     value: function apply(args) {
  28368       // eslint-disable-line no-unused-vars
  28369       elementorModules.ForceMethodImplementation();
  28370     }
  28371     /**
  28372      * Function run().
  28373      *
  28374      * Run the callback.
  28375      *
  28376      * @param {*} args
  28377      *
  28378      * @returns {*}
  28379      */
  28380 
  28381   }, {
  28382     key: "run",
  28383     value: function run() {
  28384       var _ref = arguments.length <= 0 ? undefined : arguments[0],
  28385           _ref$options = _ref.options,
  28386           options = _ref$options === void 0 ? {} : _ref$options; // Disable callback if requested by args.options.
  28387 
  28388 
  28389       if (options.callbacks && false === options.callbacks[this.id]) {
  28390         return true;
  28391       }
  28392 
  28393       if (this.getConditions.apply(this, arguments)) {
  28394         if ($e.devTools) {
  28395           $e.devTools.log.callbacks().active(this.type, this.command, this.id);
  28396         }
  28397 
  28398         return this.apply.apply(this, arguments);
  28399       }
  28400 
  28401       return true;
  28402     }
  28403   }]);
  28404   return HookBase;
  28405 }();
  28406 
  28407 exports.default = HookBase;
  28408 
  28409 /***/ }),
  28410 
  28411 /***/ "../core/common/assets/js/api/modules/hooks/data/after.js":
  28412 /*!****************************************************************!*\
  28413   !*** ../core/common/assets/js/api/modules/hooks/data/after.js ***!
  28414   \****************************************************************/
  28415 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  28416 
  28417 "use strict";
  28418 
  28419 
  28420 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  28421 
  28422 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  28423 
  28424 _Object$defineProperty(exports, "__esModule", {
  28425   value: true
  28426 });
  28427 
  28428 exports.default = exports.After = void 0;
  28429 
  28430 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  28431 
  28432 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  28433 
  28434 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  28435 
  28436 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  28437 
  28438 var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/data/base.js"));
  28439 
  28440 var After = /*#__PURE__*/function (_Base) {
  28441   (0, _inherits2.default)(After, _Base);
  28442 
  28443   var _super = (0, _createSuper2.default)(After);
  28444 
  28445   function After() {
  28446     (0, _classCallCheck2.default)(this, After);
  28447     return _super.apply(this, arguments);
  28448   }
  28449 
  28450   (0, _createClass2.default)(After, [{
  28451     key: "register",
  28452     value: function register() {
  28453       $e.hooks.registerDataAfter(this);
  28454     }
  28455   }]);
  28456   return After;
  28457 }(_base.default);
  28458 
  28459 exports.After = After;
  28460 var _default = After;
  28461 exports.default = _default;
  28462 
  28463 /***/ }),
  28464 
  28465 /***/ "../core/common/assets/js/api/modules/hooks/data/base.js":
  28466 /*!***************************************************************!*\
  28467   !*** ../core/common/assets/js/api/modules/hooks/data/base.js ***!
  28468   \***************************************************************/
  28469 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  28470 
  28471 "use strict";
  28472 
  28473 
  28474 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  28475 
  28476 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  28477 
  28478 _Object$defineProperty(exports, "__esModule", {
  28479   value: true
  28480 });
  28481 
  28482 exports.default = exports.Base = void 0;
  28483 
  28484 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  28485 
  28486 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  28487 
  28488 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  28489 
  28490 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  28491 
  28492 var _hookBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hook-base */ "../core/common/assets/js/api/modules/hook-base.js"));
  28493 
  28494 var Base = /*#__PURE__*/function (_HookBase) {
  28495   (0, _inherits2.default)(Base, _HookBase);
  28496 
  28497   var _super = (0, _createSuper2.default)(Base);
  28498 
  28499   function Base() {
  28500     (0, _classCallCheck2.default)(this, Base);
  28501     return _super.apply(this, arguments);
  28502   }
  28503 
  28504   (0, _createClass2.default)(Base, [{
  28505     key: "getType",
  28506     value: function getType() {
  28507       return 'data';
  28508     }
  28509   }]);
  28510   return Base;
  28511 }(_hookBase.default);
  28512 
  28513 exports.Base = Base;
  28514 var _default = Base;
  28515 exports.default = _default;
  28516 
  28517 /***/ }),
  28518 
  28519 /***/ "../core/common/assets/js/utils/environment.js":
  28520 /*!*****************************************************!*\
  28521   !*** ../core/common/assets/js/utils/environment.js ***!
  28522   \*****************************************************/
  28523 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  28524 
  28525 "use strict";
  28526 
  28527 
  28528 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  28529 
  28530 _Object$defineProperty(exports, "__esModule", {
  28531   value: true
  28532 });
  28533 
  28534 exports.default = void 0;
  28535 
  28536 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
  28537 
  28538 __webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");
  28539 
  28540 var matchUserAgent = function matchUserAgent(UserAgentStr) {
  28541   return userAgent.indexOf(UserAgentStr) >= 0;
  28542 },
  28543     userAgent = navigator.userAgent,
  28544     // Solution influenced by https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
  28545 // Opera 8.0+
  28546 isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(' OPR/'),
  28547     // Firefox 1.0+
  28548 isFirefox = matchUserAgent('Firefox'),
  28549     // Safari 3.0+ "[object HTMLElementConstructor]"
  28550 isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || function (p) {
  28551   return '[object SafariRemoteNotification]' === p.toString();
  28552 }(!window.safari || typeof safari !== 'undefined' && safari.pushNotification),
  28553     // Internet Explorer 6-11
  28554 isIE = /Trident|MSIE/.test(userAgent) && (
  28555 /*@cc_on!@*/
  28556  false || !!document.documentMode),
  28557     // Edge 20+
  28558 isEdge = !isIE && !!window.StyleMedia || matchUserAgent('Edg'),
  28559     // Google Chrome (Not accurate)
  28560 isChrome = !!window.chrome && matchUserAgent('Chrome') && !(isEdge || isOpera),
  28561     // Blink engine
  28562 isBlink = matchUserAgent('Chrome') && !!window.CSS,
  28563     // Apple Webkit engine
  28564 isAppleWebkit = matchUserAgent('AppleWebKit') && !isBlink,
  28565     environment = {
  28566   appleWebkit: isAppleWebkit,
  28567   blink: isBlink,
  28568   chrome: isChrome,
  28569   edge: isEdge,
  28570   firefox: isFirefox,
  28571   ie: isIE,
  28572   mac: matchUserAgent('Macintosh'),
  28573   opera: isOpera,
  28574   safari: isSafari,
  28575   webkit: matchUserAgent('AppleWebKit')
  28576 };
  28577 
  28578 var _default = environment;
  28579 exports.default = _default;
  28580 
  28581 /***/ }),
  28582 
  28583 /***/ "../core/common/assets/js/views/modal/header.js":
  28584 /*!******************************************************!*\
  28585   !*** ../core/common/assets/js/views/modal/header.js ***!
  28586   \******************************************************/
  28587 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  28588 
  28589 "use strict";
  28590 
  28591 
  28592 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  28593 
  28594 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  28595 
  28596 _Object$defineProperty(exports, "__esModule", {
  28597   value: true
  28598 });
  28599 
  28600 exports.default = void 0;
  28601 
  28602 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  28603 
  28604 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  28605 
  28606 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  28607 
  28608 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  28609 
  28610 var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
  28611   (0, _inherits2.default)(_default, _Marionette$LayoutVie);
  28612 
  28613   var _super = (0, _createSuper2.default)(_default);
  28614 
  28615   function _default() {
  28616     (0, _classCallCheck2.default)(this, _default);
  28617     return _super.apply(this, arguments);
  28618   }
  28619 
  28620   (0, _createClass2.default)(_default, [{
  28621     key: "className",
  28622     value: function className() {
  28623       return 'elementor-templates-modal__header';
  28624     }
  28625   }, {
  28626     key: "getTemplate",
  28627     value: function getTemplate() {
  28628       return '#tmpl-elementor-templates-modal__header';
  28629     }
  28630   }, {
  28631     key: "regions",
  28632     value: function regions() {
  28633       return {
  28634         logoArea: '.elementor-templates-modal__header__logo-area',
  28635         tools: '#elementor-template-library-header-tools',
  28636         menuArea: '.elementor-templates-modal__header__menu-area'
  28637       };
  28638     }
  28639   }, {
  28640     key: "ui",
  28641     value: function ui() {
  28642       return {
  28643         closeModal: '.elementor-templates-modal__header__close'
  28644       };
  28645     }
  28646   }, {
  28647     key: "events",
  28648     value: function events() {
  28649       return {
  28650         'click @ui.closeModal': 'onCloseModalClick'
  28651       };
  28652     }
  28653   }, {
  28654     key: "templateHelpers",
  28655     value: function templateHelpers() {
  28656       return {
  28657         closeType: this.getOption('closeType')
  28658       };
  28659     }
  28660   }, {
  28661     key: "onCloseModalClick",
  28662     value: function onCloseModalClick() {
  28663       this._parent._parent._parent.hideModal();
  28664     }
  28665   }]);
  28666   return _default;
  28667 }(Marionette.LayoutView);
  28668 
  28669 exports.default = _default;
  28670 
  28671 /***/ }),
  28672 
  28673 /***/ "../core/common/assets/js/views/modal/layout.js":
  28674 /*!******************************************************!*\
  28675   !*** ../core/common/assets/js/views/modal/layout.js ***!
  28676   \******************************************************/
  28677 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  28678 
  28679 "use strict";
  28680 
  28681 
  28682 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  28683 
  28684 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  28685 
  28686 _Object$defineProperty(exports, "__esModule", {
  28687   value: true
  28688 });
  28689 
  28690 exports.default = void 0;
  28691 
  28692 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  28693 
  28694 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  28695 
  28696 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  28697 
  28698 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  28699 
  28700 var _header = _interopRequireDefault(__webpack_require__(/*! ./header */ "../core/common/assets/js/views/modal/header.js"));
  28701 
  28702 var _logo = _interopRequireDefault(__webpack_require__(/*! ./logo */ "../core/common/assets/js/views/modal/logo.js"));
  28703 
  28704 var _loading = _interopRequireDefault(__webpack_require__(/*! ./loading */ "../core/common/assets/js/views/modal/loading.js"));
  28705 
  28706 var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
  28707   (0, _inherits2.default)(_default, _Marionette$LayoutVie);
  28708 
  28709   var _super = (0, _createSuper2.default)(_default);
  28710 
  28711   function _default() {
  28712     (0, _classCallCheck2.default)(this, _default);
  28713     return _super.apply(this, arguments);
  28714   }
  28715 
  28716   (0, _createClass2.default)(_default, [{
  28717     key: "el",
  28718     value: function el() {
  28719       return this.getModal().getElements('widget');
  28720     }
  28721   }, {
  28722     key: "regions",
  28723     value: function regions() {
  28724       return {
  28725         modalHeader: '.dialog-header',
  28726         modalContent: '.dialog-lightbox-content',
  28727         modalLoading: '.dialog-lightbox-loading'
  28728       };
  28729     }
  28730   }, {
  28731     key: "initialize",
  28732     value: function initialize() {
  28733       this.modalHeader.show(new _header.default(this.getHeaderOptions()));
  28734     }
  28735   }, {
  28736     key: "getModal",
  28737     value: function getModal() {
  28738       if (!this.modal) {
  28739         this.initModal();
  28740       }
  28741 
  28742       return this.modal;
  28743     }
  28744   }, {
  28745     key: "initModal",
  28746     value: function initModal() {
  28747       var modalOptions = {
  28748         className: 'elementor-templates-modal',
  28749         closeButton: false,
  28750         draggable: false,
  28751         hide: {
  28752           onOutsideClick: false,
  28753           onEscKeyPress: false
  28754         }
  28755       };
  28756       jQuery.extend(true, modalOptions, this.getModalOptions());
  28757       this.modal = elementorCommon.dialogsManager.createWidget('lightbox', modalOptions);
  28758       this.modal.getElements('message').append(this.modal.addElement('content'), this.modal.addElement('loading'));
  28759 
  28760       if (modalOptions.draggable) {
  28761         this.draggableModal();
  28762       }
  28763     }
  28764   }, {
  28765     key: "showModal",
  28766     value: function showModal() {
  28767       this.getModal().show();
  28768     }
  28769   }, {
  28770     key: "hideModal",
  28771     value: function hideModal() {
  28772       this.getModal().hide();
  28773     }
  28774   }, {
  28775     key: "draggableModal",
  28776     value: function draggableModal() {
  28777       var $modalWidgetContent = this.getModal().getElements('widgetContent');
  28778       $modalWidgetContent.draggable({
  28779         containment: 'parent',
  28780         stop: function stop() {
  28781           $modalWidgetContent.height('');
  28782         }
  28783       });
  28784       $modalWidgetContent.css('position', 'absolute');
  28785     }
  28786   }, {
  28787     key: "getModalOptions",
  28788     value: function getModalOptions() {
  28789       return {};
  28790     }
  28791   }, {
  28792     key: "getLogoOptions",
  28793     value: function getLogoOptions() {
  28794       return {};
  28795     }
  28796   }, {
  28797     key: "getHeaderOptions",
  28798     value: function getHeaderOptions() {
  28799       return {
  28800         closeType: 'normal'
  28801       };
  28802     }
  28803   }, {
  28804     key: "getHeaderView",
  28805     value: function getHeaderView() {
  28806       return this.modalHeader.currentView;
  28807     }
  28808   }, {
  28809     key: "showLoadingView",
  28810     value: function showLoadingView() {
  28811       this.modalLoading.show(new _loading.default());
  28812       this.modalLoading.$el.show();
  28813       this.modalContent.$el.hide();
  28814     }
  28815   }, {
  28816     key: "hideLoadingView",
  28817     value: function hideLoadingView() {
  28818       this.modalContent.$el.show();
  28819       this.modalLoading.$el.hide();
  28820     }
  28821   }, {
  28822     key: "showLogo",
  28823     value: function showLogo() {
  28824       this.getHeaderView().logoArea.show(new _logo.default(this.getLogoOptions()));
  28825     }
  28826   }]);
  28827   return _default;
  28828 }(Marionette.LayoutView);
  28829 
  28830 exports.default = _default;
  28831 
  28832 /***/ }),
  28833 
  28834 /***/ "../core/common/assets/js/views/modal/loading.js":
  28835 /*!*******************************************************!*\
  28836   !*** ../core/common/assets/js/views/modal/loading.js ***!
  28837   \*******************************************************/
  28838 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  28839 
  28840 "use strict";
  28841 
  28842 
  28843 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  28844 
  28845 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  28846 
  28847 _Object$defineProperty(exports, "__esModule", {
  28848   value: true
  28849 });
  28850 
  28851 exports.default = void 0;
  28852 
  28853 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  28854 
  28855 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  28856 
  28857 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  28858 
  28859 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  28860 
  28861 var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  28862   (0, _inherits2.default)(_default, _Marionette$ItemView);
  28863 
  28864   var _super = (0, _createSuper2.default)(_default);
  28865 
  28866   function _default() {
  28867     (0, _classCallCheck2.default)(this, _default);
  28868     return _super.apply(this, arguments);
  28869   }
  28870 
  28871   (0, _createClass2.default)(_default, [{
  28872     key: "id",
  28873     value: function id() {
  28874       return 'elementor-template-library-loading';
  28875     }
  28876   }, {
  28877     key: "getTemplate",
  28878     value: function getTemplate() {
  28879       return '#tmpl-elementor-template-library-loading';
  28880     }
  28881   }]);
  28882   return _default;
  28883 }(Marionette.ItemView);
  28884 
  28885 exports.default = _default;
  28886 
  28887 /***/ }),
  28888 
  28889 /***/ "../core/common/assets/js/views/modal/logo.js":
  28890 /*!****************************************************!*\
  28891   !*** ../core/common/assets/js/views/modal/logo.js ***!
  28892   \****************************************************/
  28893 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  28894 
  28895 "use strict";
  28896 
  28897 
  28898 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  28899 
  28900 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  28901 
  28902 _Object$defineProperty(exports, "__esModule", {
  28903   value: true
  28904 });
  28905 
  28906 exports.default = void 0;
  28907 
  28908 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  28909 
  28910 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  28911 
  28912 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  28913 
  28914 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  28915 
  28916 var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  28917   (0, _inherits2.default)(_default, _Marionette$ItemView);
  28918 
  28919   var _super = (0, _createSuper2.default)(_default);
  28920 
  28921   function _default() {
  28922     (0, _classCallCheck2.default)(this, _default);
  28923     return _super.apply(this, arguments);
  28924   }
  28925 
  28926   (0, _createClass2.default)(_default, [{
  28927     key: "getTemplate",
  28928     value: function getTemplate() {
  28929       return '#tmpl-elementor-templates-modal__header__logo';
  28930     }
  28931   }, {
  28932     key: "className",
  28933     value: function className() {
  28934       return 'elementor-templates-modal__header__logo';
  28935     }
  28936   }, {
  28937     key: "events",
  28938     value: function events() {
  28939       return {
  28940         click: 'onClick'
  28941       };
  28942     }
  28943   }, {
  28944     key: "templateHelpers",
  28945     value: function templateHelpers() {
  28946       return {
  28947         title: this.getOption('title')
  28948       };
  28949     }
  28950   }, {
  28951     key: "onClick",
  28952     value: function onClick() {
  28953       var clickCallback = this.getOption('click');
  28954 
  28955       if (clickCallback) {
  28956         clickCallback();
  28957       }
  28958     }
  28959   }]);
  28960   return _default;
  28961 }(Marionette.ItemView);
  28962 
  28963 exports.default = _default;
  28964 
  28965 /***/ }),
  28966 
  28967 /***/ "../core/kits/assets/js/commands/back.js":
  28968 /*!***********************************************!*\
  28969   !*** ../core/kits/assets/js/commands/back.js ***!
  28970   \***********************************************/
  28971 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  28972 
  28973 "use strict";
  28974 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  28975 
  28976 
  28977 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  28978 
  28979 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  28980 
  28981 _Object$defineProperty(exports, "__esModule", {
  28982   value: true
  28983 });
  28984 
  28985 exports.default = exports.Back = void 0;
  28986 
  28987 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  28988 
  28989 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  28990 
  28991 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
  28992 
  28993 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  28994 
  28995 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  28996 
  28997 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  28998 
  28999 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  29000 
  29001 var Back = /*#__PURE__*/function (_CommandBase) {
  29002   (0, _inherits2.default)(Back, _CommandBase);
  29003 
  29004   var _super = (0, _createSuper2.default)(Back);
  29005 
  29006   function Back() {
  29007     var _this;
  29008 
  29009     (0, _classCallCheck2.default)(this, Back);
  29010 
  29011     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  29012       args[_key] = arguments[_key];
  29013     }
  29014 
  29015     _this = _super.call.apply(_super, [this].concat(args));
  29016     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "confirmDialog", null);
  29017     return _this;
  29018   }
  29019 
  29020   (0, _createClass2.default)(Back, [{
  29021     key: "apply",
  29022     value: function apply() {
  29023       var panelHistory = $e.routes.getHistory('panel'); // Don't go back if no where.
  29024 
  29025       if (1 === panelHistory.length) {
  29026         this.getCloseConfirmDialog(event).show();
  29027         return;
  29028       }
  29029 
  29030       return $e.routes.back('panel');
  29031     }
  29032   }, {
  29033     key: "getCloseConfirmDialog",
  29034     value: function getCloseConfirmDialog(event) {
  29035       if (!this.confirmDialog) {
  29036         var modalOptions = {
  29037           id: 'elementor-kit-warn-on-close',
  29038           headerMessage: __('Exit', 'elementor'),
  29039           message: __('Would you like to exit?', 'elementor'),
  29040           position: {
  29041             my: 'center center',
  29042             at: 'center center'
  29043           },
  29044           strings: {
  29045             confirm: __('Exit', 'elementor'),
  29046             cancel: __('Cancel', 'elementor')
  29047           },
  29048           onConfirm: function onConfirm() {
  29049             $e.run('panel/global/close');
  29050           }
  29051         };
  29052         this.confirmDialog = elementorCommon.dialogsManager.createWidget('confirm', modalOptions);
  29053       }
  29054 
  29055       this.confirmDialog.setSettings('hide', {
  29056         onEscKeyPress: !event
  29057       });
  29058       return this.confirmDialog;
  29059     }
  29060   }]);
  29061   return Back;
  29062 }(_commandBase.default);
  29063 
  29064 exports.Back = Back;
  29065 var _default = Back;
  29066 exports.default = _default;
  29067 
  29068 /***/ }),
  29069 
  29070 /***/ "../core/kits/assets/js/commands/close.js":
  29071 /*!************************************************!*\
  29072   !*** ../core/kits/assets/js/commands/close.js ***!
  29073   \************************************************/
  29074 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  29075 
  29076 "use strict";
  29077 
  29078 
  29079 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  29080 
  29081 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  29082 
  29083 _Object$defineProperty(exports, "__esModule", {
  29084   value: true
  29085 });
  29086 
  29087 exports.default = exports.Close = void 0;
  29088 
  29089 __webpack_require__(/*! core-js/modules/es7.promise.finally.js */ "../node_modules/core-js/modules/es7.promise.finally.js");
  29090 
  29091 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
  29092 
  29093 __webpack_require__(/*! core-js/modules/es6.promise.js */ "../node_modules/core-js/modules/es6.promise.js");
  29094 
  29095 var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));
  29096 
  29097 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  29098 
  29099 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  29100 
  29101 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  29102 
  29103 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  29104 
  29105 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  29106 
  29107 var Close = /*#__PURE__*/function (_CommandBase) {
  29108   (0, _inherits2.default)(Close, _CommandBase);
  29109 
  29110   var _super = (0, _createSuper2.default)(Close);
  29111 
  29112   function Close() {
  29113     (0, _classCallCheck2.default)(this, Close);
  29114     return _super.apply(this, arguments);
  29115   }
  29116 
  29117   (0, _createClass2.default)(Close, [{
  29118     key: "apply",
  29119     value: function apply(args) {
  29120       var _this = this;
  29121 
  29122       var mode = args.mode; // The kit is opened directly.
  29123 
  29124       if (elementor.config.initial_document.id === (0, _parseInt2.default)(elementor.config.kit_id)) {
  29125         return $e.run('panel/global/exit');
  29126       }
  29127 
  29128       $e.internal('panel/state-loading');
  29129       return $e.run('editor/documents/switch', {
  29130         mode: mode,
  29131         id: elementor.config.initial_document.id,
  29132         onClose: function onClose(document) {
  29133           if (document.isDraft()) {
  29134             // Restore published style.
  29135             elementor.toggleDocumentCssFiles(document, true);
  29136             elementor.settings.page.destroyControlsCSS();
  29137           }
  29138 
  29139           $e.components.get('panel/global').close();
  29140           $e.routes.clearHistory(_this.component.getRootContainer()); // The kit shouldn't be cached for next open. (it may be changed via create colors/typography).
  29141 
  29142           elementor.documents.invalidateCache(elementor.config.kit_id);
  29143         }
  29144       }).finally(function () {
  29145         return $e.internal('panel/state-ready');
  29146       });
  29147     }
  29148   }]);
  29149   return Close;
  29150 }(_commandBase.default);
  29151 
  29152 exports.Close = Close;
  29153 var _default = Close;
  29154 exports.default = _default;
  29155 
  29156 /***/ }),
  29157 
  29158 /***/ "../core/kits/assets/js/commands/exit.js":
  29159 /*!***********************************************!*\
  29160   !*** ../core/kits/assets/js/commands/exit.js ***!
  29161   \***********************************************/
  29162 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  29163 
  29164 "use strict";
  29165 
  29166 
  29167 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  29168 
  29169 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  29170 
  29171 _Object$defineProperty(exports, "__esModule", {
  29172   value: true
  29173 });
  29174 
  29175 exports.default = exports.Exit = void 0;
  29176 
  29177 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  29178 
  29179 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  29180 
  29181 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  29182 
  29183 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  29184 
  29185 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  29186 
  29187 var Exit = /*#__PURE__*/function (_CommandBase) {
  29188   (0, _inherits2.default)(Exit, _CommandBase);
  29189 
  29190   var _super = (0, _createSuper2.default)(Exit);
  29191 
  29192   function Exit() {
  29193     (0, _classCallCheck2.default)(this, Exit);
  29194     return _super.apply(this, arguments);
  29195   }
  29196 
  29197   (0, _createClass2.default)(Exit, [{
  29198     key: "apply",
  29199     value: function apply() {
  29200       return $e.run('editor/documents/close', {
  29201         id: elementor.config.kit_id,
  29202         onClose: function onClose(document) {
  29203           location = document.config.urls.exit_to_dashboard;
  29204         }
  29205       });
  29206     }
  29207   }]);
  29208   return Exit;
  29209 }(_commandBase.default);
  29210 
  29211 exports.Exit = Exit;
  29212 var _default = Exit;
  29213 exports.default = _default;
  29214 
  29215 /***/ }),
  29216 
  29217 /***/ "../core/kits/assets/js/commands/index.js":
  29218 /*!************************************************!*\
  29219   !*** ../core/kits/assets/js/commands/index.js ***!
  29220   \************************************************/
  29221 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  29222 
  29223 "use strict";
  29224 
  29225 
  29226 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  29227 
  29228 _Object$defineProperty(exports, "__esModule", {
  29229   value: true
  29230 });
  29231 
  29232 _Object$defineProperty(exports, "Back", {
  29233   enumerable: true,
  29234   get: function get() {
  29235     return _back.Back;
  29236   }
  29237 });
  29238 
  29239 _Object$defineProperty(exports, "Close", {
  29240   enumerable: true,
  29241   get: function get() {
  29242     return _close.Close;
  29243   }
  29244 });
  29245 
  29246 _Object$defineProperty(exports, "Exit", {
  29247   enumerable: true,
  29248   get: function get() {
  29249     return _exit.Exit;
  29250   }
  29251 });
  29252 
  29253 _Object$defineProperty(exports, "Open", {
  29254   enumerable: true,
  29255   get: function get() {
  29256     return _open.Open;
  29257   }
  29258 });
  29259 
  29260 var _back = __webpack_require__(/*! ./back */ "../core/kits/assets/js/commands/back.js");
  29261 
  29262 var _close = __webpack_require__(/*! ./close */ "../core/kits/assets/js/commands/close.js");
  29263 
  29264 var _exit = __webpack_require__(/*! ./exit */ "../core/kits/assets/js/commands/exit.js");
  29265 
  29266 var _open = __webpack_require__(/*! ./open */ "../core/kits/assets/js/commands/open.js");
  29267 
  29268 /***/ }),
  29269 
  29270 /***/ "../core/kits/assets/js/commands/open.js":
  29271 /*!***********************************************!*\
  29272   !*** ../core/kits/assets/js/commands/open.js ***!
  29273   \***********************************************/
  29274 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  29275 
  29276 "use strict";
  29277 
  29278 
  29279 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  29280 
  29281 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  29282 
  29283 _Object$defineProperty(exports, "__esModule", {
  29284   value: true
  29285 });
  29286 
  29287 exports.default = exports.Open = void 0;
  29288 
  29289 __webpack_require__(/*! core-js/modules/es7.promise.finally.js */ "../node_modules/core-js/modules/es7.promise.finally.js");
  29290 
  29291 __webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");
  29292 
  29293 __webpack_require__(/*! core-js/modules/es6.promise.js */ "../node_modules/core-js/modules/es6.promise.js");
  29294 
  29295 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  29296 
  29297 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  29298 
  29299 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  29300 
  29301 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  29302 
  29303 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  29304 
  29305 var Open = /*#__PURE__*/function (_CommandBase) {
  29306   (0, _inherits2.default)(Open, _CommandBase);
  29307 
  29308   var _super = (0, _createSuper2.default)(Open);
  29309 
  29310   function Open() {
  29311     (0, _classCallCheck2.default)(this, Open);
  29312     return _super.apply(this, arguments);
  29313   }
  29314 
  29315   (0, _createClass2.default)(Open, [{
  29316     key: "apply",
  29317     value: function apply() {
  29318       var kit = elementor.documents.get(elementor.config.kit_id);
  29319 
  29320       if (kit && 'open' === kit.editor.status) {
  29321         return jQuery.Deferred().resolve();
  29322       }
  29323 
  29324       $e.routes.clearHistory(this.component.getRootContainer());
  29325       this.component.toggleHistoryClass();
  29326       $e.internal('panel/state-loading');
  29327       return $e.run('editor/documents/switch', {
  29328         id: elementor.config.kit_id,
  29329         mode: 'autosave'
  29330       }).finally(function () {
  29331         return $e.internal('panel/state-ready');
  29332       });
  29333     }
  29334   }], [{
  29335     key: "getInfo",
  29336     value: function getInfo() {
  29337       return {
  29338         isSafe: true
  29339       };
  29340     }
  29341   }]);
  29342   return Open;
  29343 }(_commandBase.default);
  29344 
  29345 exports.Open = Open;
  29346 var _default = Open;
  29347 exports.default = _default;
  29348 
  29349 /***/ }),
  29350 
  29351 /***/ "../core/kits/assets/js/component.js":
  29352 /*!*******************************************!*\
  29353   !*** ../core/kits/assets/js/component.js ***!
  29354   \*******************************************/
  29355 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  29356 
  29357 "use strict";
  29358 
  29359 
  29360 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  29361 
  29362 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
  29363 
  29364 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  29365 
  29366 _Object$defineProperty(exports, "__esModule", {
  29367   value: true
  29368 });
  29369 
  29370 exports.default = void 0;
  29371 
  29372 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  29373 
  29374 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  29375 
  29376 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
  29377 
  29378 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  29379 
  29380 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  29381 
  29382 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  29383 
  29384 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  29385 
  29386 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  29387 
  29388 var hooks = _interopRequireWildcard(__webpack_require__(/*! ./hooks */ "../core/kits/assets/js/hooks/index.js"));
  29389 
  29390 var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../core/kits/assets/js/commands/index.js"));
  29391 
  29392 var _repeater = _interopRequireDefault(__webpack_require__(/*! ./repeater */ "../core/kits/assets/js/repeater.js"));
  29393 
  29394 var _default = /*#__PURE__*/function (_$e$modules$Component) {
  29395   (0, _inherits2.default)(_default, _$e$modules$Component);
  29396 
  29397   var _super = (0, _createSuper2.default)(_default);
  29398 
  29399   function _default() {
  29400     var _this;
  29401 
  29402     (0, _classCallCheck2.default)(this, _default);
  29403 
  29404     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  29405       args[_key] = arguments[_key];
  29406     }
  29407 
  29408     _this = _super.call.apply(_super, [this].concat(args));
  29409     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "pages", {});
  29410     return _this;
  29411   }
  29412 
  29413   (0, _createClass2.default)(_default, [{
  29414     key: "__construct",
  29415     value: function __construct(args) {
  29416       (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "__construct", this).call(this, args);
  29417       elementor.on('panel:init', function () {
  29418         args.manager.addPanelPages();
  29419         args.manager.addPanelMenuItem();
  29420       });
  29421       elementor.hooks.addFilter('panel/header/behaviors', args.manager.addHeaderBehavior);
  29422       elementor.addControlView('global-style-repeater', _repeater.default);
  29423     }
  29424   }, {
  29425     key: "getNamespace",
  29426     value: function getNamespace() {
  29427       return 'panel/global';
  29428     }
  29429   }, {
  29430     key: "defaultRoutes",
  29431     value: function defaultRoutes() {
  29432       return {
  29433         menu: function menu() {
  29434           elementor.getPanelView().setPage('kit_menu');
  29435         }
  29436       };
  29437     }
  29438   }, {
  29439     key: "defaultCommands",
  29440     value: function defaultCommands() {
  29441       return this.importCommands(commands);
  29442     }
  29443   }, {
  29444     key: "defaultShortcuts",
  29445     value: function defaultShortcuts() {
  29446       return {
  29447         open: {
  29448           keys: 'ctrl+k',
  29449           dependency: function dependency() {
  29450             return 'kit' !== elementor.documents.getCurrent().config.type;
  29451           }
  29452         },
  29453         back: {
  29454           keys: 'esc',
  29455           scopes: ['panel'],
  29456           dependency: function dependency() {
  29457             return elementor.documents.isCurrent(elementor.config.kit_id) && !jQuery('.dialog-widget:visible').length;
  29458           }
  29459         }
  29460       };
  29461     }
  29462   }, {
  29463     key: "defaultHooks",
  29464     value: function defaultHooks() {
  29465       return this.importHooks(hooks);
  29466     }
  29467   }, {
  29468     key: "renderTab",
  29469     value: function renderTab(tab) {
  29470       elementor.getPanelView().setPage('kit_settings').content.currentView.activateTab(tab);
  29471     }
  29472   }]);
  29473   return _default;
  29474 }($e.modules.ComponentBase);
  29475 
  29476 exports.default = _default;
  29477 
  29478 /***/ }),
  29479 
  29480 /***/ "../core/kits/assets/js/globals/global-select-behavior.js":
  29481 /*!****************************************************************!*\
  29482   !*** ../core/kits/assets/js/globals/global-select-behavior.js ***!
  29483   \****************************************************************/
  29484 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  29485 
  29486 "use strict";
  29487 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  29488 
  29489 
  29490 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  29491 
  29492 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  29493 
  29494 _Object$defineProperty(exports, "__esModule", {
  29495   value: true
  29496 });
  29497 
  29498 exports.default = void 0;
  29499 
  29500 var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));
  29501 
  29502 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
  29503 
  29504 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  29505 
  29506 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  29507 
  29508 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  29509 
  29510 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  29511 
  29512 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  29513 
  29514 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  29515 
  29516 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  29517 
  29518 var GlobalControlSelect = /*#__PURE__*/function (_Marionette$Behavior) {
  29519   (0, _inherits2.default)(GlobalControlSelect, _Marionette$Behavior);
  29520 
  29521   var _super = (0, _createSuper2.default)(GlobalControlSelect);
  29522 
  29523   function GlobalControlSelect() {
  29524     (0, _classCallCheck2.default)(this, GlobalControlSelect);
  29525     return _super.apply(this, arguments);
  29526   }
  29527 
  29528   (0, _createClass2.default)(GlobalControlSelect, [{
  29529     key: "getClassNames",
  29530     value: function getClassNames() {
  29531       return {
  29532         previewItemsContainer: 'e-global__preview-items-container',
  29533         previewItem: 'e-global__preview-item',
  29534         selectedPreviewItem: 'e-global__preview-item--selected',
  29535         manageButton: 'e-global__manage-button',
  29536         popover: 'e-global__popover',
  29537         popoverToggle: 'e-global__popover-toggle',
  29538         popoverToggleActive: 'e-global__popover-toggle--active',
  29539         controlGlobal: 'e-control-global',
  29540         globalPopoverContainer: 'e-global__popover-container',
  29541         globalPopoverTitle: 'e-global__popover-title',
  29542         globalPopoverTitleText: 'e-global__popover-title-text',
  29543         globalPopoverInfo: 'e-global__popover-info',
  29544         globalPopoverInfoTooltip: 'e-global__popover-info-tooltip',
  29545         confirmAddNewGlobal: 'e-global__confirm-add',
  29546         confirmMessageText: '.e-global__confirm-message-text'
  29547       };
  29548     } // This method exists because the UI elements are printed after controls are already rendered.
  29549 
  29550   }, {
  29551     key: "registerUiElements",
  29552     value: function registerUiElements() {
  29553       var popoverWidget = this.popover.getElements('widget');
  29554       this.ui.manageGlobalsButton = popoverWidget.find(".".concat(this.getClassNames().manageButton));
  29555     }
  29556   }, {
  29557     key: "registerPreviewElements",
  29558     value: function registerPreviewElements() {
  29559       var popoverWidget = this.popover.getElements('widget'),
  29560           classes = this.getClassNames();
  29561       this.ui.globalPreviewItems = popoverWidget.find(".".concat(classes.previewItem));
  29562     } // This method exists because the UI elements are printed after controls are already rendered.
  29563 
  29564   }, {
  29565     key: "registerEvents",
  29566     value: function registerEvents() {
  29567       var _this = this;
  29568 
  29569       this.ui.globalPopoverToggle.on('click', function (event) {
  29570         return _this.toggleGlobalPopover(event);
  29571       });
  29572       this.ui.manageGlobalsButton.on('click', function () {
  29573         var _this$view$getGlobalM = _this.view.getGlobalMeta(),
  29574             route = _this$view$getGlobalM.route,
  29575             args = {
  29576           route: $e.routes.getHistory('panel').reverse()[0].route,
  29577           container: _this.view.options.container
  29578         };
  29579 
  29580         $e.run('panel/global/open', args).then(function () {
  29581           return $e.route(route);
  29582         });
  29583 
  29584         _this.popover.hide();
  29585       });
  29586     }
  29587   }, {
  29588     key: "addPreviewItemsClickListener",
  29589     value: function addPreviewItemsClickListener() {
  29590       var _this2 = this;
  29591 
  29592       this.ui.$globalPreviewItemsContainer.on('click', ".".concat(this.getClassNames().previewItem), function (event) {
  29593         return _this2.applySavedGlobalValue(event.currentTarget.dataset.globalId);
  29594       });
  29595     }
  29596   }, {
  29597     key: "fetchGlobalValue",
  29598     value: function fetchGlobalValue() {
  29599       var _this3 = this;
  29600 
  29601       return $e.data.get(this.view.getGlobalKey()).then(function (globalData) {
  29602         _this3.view.globalValue = globalData.data.value;
  29603 
  29604         _this3.onValueTypeChange();
  29605 
  29606         elementor.kitManager.renderGlobalVariables();
  29607 
  29608         _this3.view.applySavedValue();
  29609 
  29610         return globalData.data;
  29611       }).catch(function (e) {
  29612         var _e$data;
  29613 
  29614         // TODO: Need to be replaced by "e instanceof NotFoundError"
  29615         if (404 !== (e === null || e === void 0 ? void 0 : (_e$data = e.data) === null || _e$data === void 0 ? void 0 : _e$data.status)) {
  29616           return _promise.default.reject(e);
  29617         }
  29618 
  29619         _this3.disableGlobalValue(false);
  29620       });
  29621     }
  29622   }, {
  29623     key: "setCurrentActivePreviewItem",
  29624     value: function setCurrentActivePreviewItem() {
  29625       var selectedClass = this.getClassNames().selectedPreviewItem,
  29626           defaultGlobalsAreEnabled = elementor.config.globals.defaults_enabled[this.view.getGlobalMeta().controlType];
  29627 
  29628       if (this.activePreviewItem) {
  29629         this.resetActivePreviewItem();
  29630       } // If there is an active global on the control, get it.
  29631 
  29632 
  29633       var globalKey = this.view.getGlobalKey(); // If the control has no active global and no active custom value, check if there is a default global and use it.
  29634 
  29635       if (!globalKey && !this.view.getControlValue() && defaultGlobalsAreEnabled) {
  29636         var _this$view$model$get;
  29637 
  29638         globalKey = (_this$view$model$get = this.view.model.get('global')) === null || _this$view$model$get === void 0 ? void 0 : _this$view$model$get.default;
  29639       }
  29640 
  29641       if (!globalKey) {
  29642         // If there is no active global or global default, reset the active preview item.
  29643         this.activePreviewItem = null;
  29644         return;
  29645       } // Extract the Global's ID from the Global key
  29646 
  29647 
  29648       var _$e$data$commandExtra = $e.data.commandExtractArgs(globalKey),
  29649           args = _$e$data$commandExtra.args,
  29650           globalId = args.query.id; // Get the active global's corresponding preview item in the Global Select Popover
  29651 
  29652 
  29653       var $item = this.ui.globalPreviewItems.filter("[data-global-id=\"".concat(globalId, "\"]"));
  29654 
  29655       if (!$item) {
  29656         return;
  29657       }
  29658 
  29659       this.activePreviewItem = $item;
  29660       this.activePreviewItem.addClass(selectedClass);
  29661     }
  29662   }, {
  29663     key: "resetActivePreviewItem",
  29664     value: function resetActivePreviewItem() {
  29665       if (this.activePreviewItem) {
  29666         this.activePreviewItem.removeClass(this.getClassNames().selectedPreviewItem);
  29667       }
  29668 
  29669       this.activePreviewItem = null;
  29670     }
  29671   }, {
  29672     key: "applySavedGlobalValue",
  29673     value: function applySavedGlobalValue(globalId) {
  29674       this.setGlobalValue(globalId);
  29675       this.fetchGlobalValue();
  29676       this.popover.hide();
  29677     } // Update the behavior's components.
  29678 
  29679   }, {
  29680     key: "onValueTypeChange",
  29681     value: function onValueTypeChange() {
  29682       this.updateCurrentGlobalName();
  29683     }
  29684   }, {
  29685     key: "updateCurrentGlobalName",
  29686     value: function updateCurrentGlobalName(value) {
  29687       var _this4 = this;
  29688 
  29689       var classes = this.getClassNames();
  29690       var globalTooltipText = '';
  29691 
  29692       if (value) {
  29693         globalTooltipText = value;
  29694       } else {
  29695         value = this.view.getControlValue();
  29696         var globalValue = this.view.getGlobalKey();
  29697 
  29698         if (!globalValue && !value && elementor.config.globals.defaults_enabled[this.view.getGlobalMeta().controlType]) {
  29699           var _this$view$model$get2;
  29700 
  29701           globalValue = (_this$view$model$get2 = this.view.model.get('global')) === null || _this$view$model$get2 === void 0 ? void 0 : _this$view$model$get2.default;
  29702         }
  29703 
  29704         if (globalValue) {
  29705           // If there is a global value saved, get the global's name and display it.
  29706           $e.data.get(globalValue).then(function (result) {
  29707             var text = '';
  29708 
  29709             if (result.data.title) {
  29710               text = result.data.title;
  29711             } else {
  29712               text = __('Default', 'elementor');
  29713             }
  29714 
  29715             _this4.updateCurrentGlobalName(text);
  29716           });
  29717           this.ui.globalPopoverToggle.addClass(classes.popoverToggleActive);
  29718           return;
  29719         } else if (value) {
  29720           // If there is a value and it is not a global, set the text to custom.
  29721           globalTooltipText = __('Custom', 'elementor');
  29722         } else {
  29723           // If there is no value, set the text as default.
  29724           globalTooltipText = __('Default', 'elementor');
  29725         } // If there is no value, remove the 'active' class from the Global Toggle button.
  29726 
  29727 
  29728         this.ui.globalPopoverToggle.removeClass(classes.popoverToggleActive);
  29729       } // This is used in the Global Toggle Button's tooltip.
  29730 
  29731 
  29732       this.globalName = globalTooltipText;
  29733     } // The Global Control elements are initialized onRender and not with initialize() because their position depends
  29734     // on elements that are not yet rendered when initialize() is called.
  29735 
  29736   }, {
  29737     key: "onRender",
  29738     value: function onRender() {
  29739       var _this5 = this;
  29740 
  29741       this.printGlobalToggleButton();
  29742       this.initGlobalPopover();
  29743 
  29744       if (this.view.getGlobalKey()) {
  29745         // This setTimeout is here to overcome an issue with a requestAnimationFrame that runs in the Pickr library.
  29746         setTimeout(function () {
  29747           return _this5.fetchGlobalValue();
  29748         }, 50);
  29749       } else {
  29750         this.onValueTypeChange();
  29751       }
  29752 
  29753       this.$el.addClass(this.getClassNames().controlGlobal);
  29754     }
  29755   }, {
  29756     key: "toggleGlobalPopover",
  29757     value: function toggleGlobalPopover() {
  29758       var _this6 = this;
  29759 
  29760       if (this.popover.isVisible()) {
  29761         this.popover.hide();
  29762       } else {
  29763         if (this.ui.$globalPreviewItemsContainer) {
  29764           // This element is not defined when the controls popover is first loaded.
  29765           this.ui.$globalPreviewItemsContainer.remove();
  29766         }
  29767 
  29768         this.view.getGlobalsList().then(function (globalsList) {
  29769           // We just deleted the existing list of global preview items, so we need to rebuild it
  29770           // with the updated list of globals, register the elements and re-add the on click listeners.
  29771           _this6.addGlobalsListToPopover(globalsList);
  29772 
  29773           _this6.registerPreviewElements();
  29774 
  29775           _this6.addPreviewItemsClickListener();
  29776 
  29777           _this6.popover.show();
  29778 
  29779           _this6.setCurrentActivePreviewItem();
  29780         });
  29781       }
  29782     }
  29783   }, {
  29784     key: "buildGlobalPopover",
  29785     value: function buildGlobalPopover() {
  29786       var _this7 = this;
  29787 
  29788       var classes = this.getClassNames(),
  29789           $popover = jQuery('<div>', {
  29790         class: classes.globalPopoverContainer
  29791       }),
  29792           $popoverTitle = jQuery('<div>', {
  29793         class: classes.globalPopoverTitle
  29794       }).html('<div class="' + classes.globalPopoverInfo + '"><i class="eicon-info-circle"></i></div><span class="' + classes.globalPopoverTitleText + '">' + this.getOption('popoverTitle') + '</span>'),
  29795           $manageGlobalsLink = jQuery('<div>', {
  29796         class: classes.manageButton
  29797       }).html('<i class="eicon-cog"></i>');
  29798       $popoverTitle.append($manageGlobalsLink);
  29799       $popover.append($popoverTitle);
  29800       this.manageButtonTooltipText = this.getOption('manageButtonText');
  29801       $manageGlobalsLink.tipsy({
  29802         title: function title() {
  29803           return _this7.manageButtonTooltipText;
  29804         },
  29805         offset: 3,
  29806         gravity: function gravity() {
  29807           return 's';
  29808         }
  29809       });
  29810       return $popover;
  29811     }
  29812   }, {
  29813     key: "printGlobalToggleButton",
  29814     value: function printGlobalToggleButton() {
  29815       var _this8 = this;
  29816 
  29817       var $globalToggleButton = jQuery('<div>', {
  29818         class: this.getClassNames().popoverToggle + ' elementor-control-unit-1'
  29819       }),
  29820           $globalPopoverToggleIcon = jQuery('<i>', {
  29821         class: 'eicon-globe'
  29822       }),
  29823           $globalsLoadingSpinner = jQuery('<span>', {
  29824         class: 'elementor-control-spinner'
  29825       }).html('<i class="eicon-spinner eicon-animation-spin"></i></span>');
  29826       $globalToggleButton.append($globalPopoverToggleIcon);
  29827       this.$el.find('.elementor-control-input-wrapper').prepend($globalToggleButton);
  29828       this.ui.globalPopoverToggle = $globalToggleButton;
  29829       this.ui.globalPopoverToggleIcon = $globalPopoverToggleIcon;
  29830       this.ui.$globalsLoadingSpinner = $globalsLoadingSpinner; // Add tooltip to the Global Popover toggle button, displaying the current Global Name / 'Default' / 'Custom'.
  29831 
  29832       this.ui.globalPopoverToggleIcon.tipsy({
  29833         title: function title() {
  29834           return _this8.globalName;
  29835         },
  29836         offset: 7,
  29837         gravity: function gravity() {
  29838           return 's';
  29839         }
  29840       });
  29841       $globalToggleButton.before($globalsLoadingSpinner);
  29842       this.ui.$globalsLoadingSpinner.hide();
  29843     }
  29844   }, {
  29845     key: "initGlobalPopover",
  29846     value: function initGlobalPopover() {
  29847       this.popover = elementorCommon.dialogsManager.createWidget('simple', {
  29848         className: this.getClassNames().popover,
  29849         message: this.buildGlobalPopover(),
  29850         effects: {
  29851           show: 'show',
  29852           hide: 'hide'
  29853         },
  29854         hide: {
  29855           onOutsideClick: false
  29856         },
  29857         position: {
  29858           my: "right top",
  29859           at: "right bottom+5",
  29860           of: this.ui.globalPopoverToggle,
  29861           collision: 'fit flip',
  29862           autoRefresh: true
  29863         }
  29864       }); // Add Popover elements to the this.ui object and register click events.
  29865 
  29866       this.registerUiElementsAndEvents();
  29867       this.createGlobalInfoTooltip();
  29868     }
  29869   }, {
  29870     key: "addGlobalsListToPopover",
  29871     value: function addGlobalsListToPopover(globalsList) {
  29872       var $globalPreviewItemsContainer = jQuery('<div>', {
  29873         class: 'e-global__preview-items-container'
  29874       });
  29875       this.view.buildGlobalsList(globalsList, $globalPreviewItemsContainer);
  29876       this.popover.getElements('widget').find(".".concat(this.getClassNames().globalPopoverTitle)).after($globalPreviewItemsContainer); // The populated list is nested under the previews container element.
  29877 
  29878       this.ui.$globalPreviewItemsContainer = $globalPreviewItemsContainer;
  29879     }
  29880   }, {
  29881     key: "registerUiElementsAndEvents",
  29882     value: function registerUiElementsAndEvents() {
  29883       // Instead of ui()
  29884       this.registerUiElements(); // Instead of events()
  29885 
  29886       this.registerEvents();
  29887     } // This method is not called directly, but triggered by Marionette's .triggerMethod(),
  29888     // in the onAddGlobalButtonClick() method in the color and typography global controls.
  29889 
  29890   }, {
  29891     key: "onAddGlobalToList",
  29892     value: function onAddGlobalToList($confirmMessage) {
  29893       var _this9 = this;
  29894 
  29895       var classes = this.getClassNames();
  29896       this.confirmNewGlobalModal = elementorCommon.dialogsManager.createWidget('confirm', {
  29897         className: classes.confirmAddNewGlobal,
  29898         headerMessage: this.getOption('newGlobalConfirmTitle'),
  29899         message: $confirmMessage,
  29900         strings: {
  29901           confirm: __('Create', 'elementor'),
  29902           cancel: __('Cancel', 'elementor')
  29903         },
  29904         hide: {
  29905           onBackgroundClick: false
  29906         },
  29907         onConfirm: function onConfirm() {
  29908           return _this9.onConfirmNewGlobal();
  29909         },
  29910         onShow: function onShow() {
  29911           // Put focus on the naming input.
  29912           var modalWidget = _this9.confirmNewGlobalModal.getElements('widget');
  29913 
  29914           _this9.ui.globalNameInput = modalWidget.find('input').focus();
  29915           _this9.ui.confirmMessageText = modalWidget.find(classes.confirmMessageText);
  29916 
  29917           _this9.ui.globalNameInput.on('input', function () {
  29918             return _this9.onAddGlobalConfirmInputChange();
  29919           });
  29920         }
  29921       });
  29922       this.confirmNewGlobalModal.show();
  29923     }
  29924   }, {
  29925     key: "onAddGlobalConfirmInputChange",
  29926     value: function onAddGlobalConfirmInputChange() {
  29927       if (!this.view.globalsList) {
  29928         return;
  29929       }
  29930 
  29931       var messageContent;
  29932 
  29933       for (var _i = 0, _Object$values = (0, _values.default)(this.view.globalsList); _i < _Object$values.length; _i++) {
  29934         var globalValue = _Object$values[_i];
  29935 
  29936         if (this.ui.globalNameInput.val() === globalValue.title) {
  29937           messageContent = this.view.getNameAlreadyExistsMessage();
  29938           break;
  29939         } else {
  29940           messageContent = this.view.getConfirmTextMessage();
  29941         }
  29942       }
  29943 
  29944       this.ui.confirmMessageText.html(messageContent);
  29945     }
  29946   }, {
  29947     key: "onConfirmNewGlobal",
  29948     value: function onConfirmNewGlobal() {
  29949       var globalMeta = this.view.getGlobalMeta();
  29950       globalMeta.title = this.ui.globalNameInput.val();
  29951       this.createNewGlobal(globalMeta);
  29952     }
  29953   }, {
  29954     key: "createNewGlobal",
  29955     value: function createNewGlobal(globalMeta) {
  29956       var _this10 = this;
  29957 
  29958       this.ui.$globalsLoadingSpinner.show();
  29959       $e.run(globalMeta.commandName + '/create', {
  29960         container: this.view.container,
  29961         setting: globalMeta.key,
  29962         // group control name
  29963         title: globalMeta.title
  29964       }).then(function (result) {
  29965         _this10.applySavedGlobalValue(result.data.id);
  29966 
  29967         _this10.ui.$globalsLoadingSpinner.hide();
  29968       });
  29969     }
  29970   }, {
  29971     key: "setGlobalValue",
  29972     value: function setGlobalValue(globalId) {
  29973       var command = '';
  29974       var settings = {};
  29975 
  29976       if (this.view.getGlobalKey()) {
  29977         // If a global setting is already active, switch them without disabling globals.
  29978         command = 'document/globals/settings';
  29979       } else {
  29980         // If the active setting is NOT a global, enable globals and apply the selected global.
  29981         command = 'document/globals/enable';
  29982       } // colors / typography
  29983 
  29984 
  29985       settings[this.view.model.get('name')] = this.view.getGlobalCommand() + '?id=' + globalId; // Trigger async render.
  29986 
  29987       $e.run(command, {
  29988         container: this.view.options.container,
  29989         settings: settings
  29990       });
  29991     } // The unset method is triggered from the controls via triggerMethod.
  29992 
  29993   }, {
  29994     key: "onUnsetGlobalValue",
  29995     value: function onUnsetGlobalValue() {
  29996       this.disableGlobalValue();
  29997     }
  29998   }, {
  29999     key: "onUnlinkGlobalDefault",
  30000     value: function onUnlinkGlobalDefault() {
  30001       var _this11 = this;
  30002 
  30003       var globalMeta = this.view.getGlobalMeta();
  30004       $e.run('document/globals/unlink', {
  30005         container: this.view.container,
  30006         globalValue: this.view.model.get('global').default,
  30007         setting: globalMeta.key,
  30008         options: {
  30009           external: true
  30010         }
  30011       }).then(function () {
  30012         _this11.onValueTypeChange();
  30013 
  30014         _this11.view.globalValue = null;
  30015 
  30016         _this11.resetActivePreviewItem();
  30017       });
  30018     }
  30019   }, {
  30020     key: "createGlobalInfoTooltip",
  30021     value: function createGlobalInfoTooltip() {
  30022       var _this12 = this;
  30023 
  30024       var classes = this.getClassNames(),
  30025           $infoIcon = this.popover.getElements('widget').find(".".concat(classes.globalPopoverInfo));
  30026       this.globalInfoTooltip = elementorCommon.dialogsManager.createWidget('simple', {
  30027         className: classes.globalPopoverInfoTooltip,
  30028         message: this.getOption('tooltipText'),
  30029         effects: {
  30030           show: 'show',
  30031           hide: 'hide'
  30032         },
  30033         position: {
  30034           my: "left bottom",
  30035           at: "left top+9",
  30036           of: this.popover.getElements('widget'),
  30037           autoRefresh: true
  30038         }
  30039       });
  30040       $infoIcon.on({
  30041         mouseenter: function mouseenter() {
  30042           return _this12.globalInfoTooltip.show();
  30043         },
  30044         mouseleave: function mouseleave() {
  30045           return _this12.globalInfoTooltip.hide();
  30046         }
  30047       });
  30048     }
  30049   }, {
  30050     key: "disableGlobalValue",
  30051     value: function disableGlobalValue() {
  30052       var _this13 = this;
  30053 
  30054       var restore = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
  30055       var globalMeta = this.view.getGlobalMeta();
  30056       return $e.run('document/globals/disable', {
  30057         container: this.view.container,
  30058         settings: (0, _defineProperty2.default)({}, globalMeta.key, ''),
  30059         options: {
  30060           restore: restore
  30061         }
  30062       }).then(function () {
  30063         _this13.onValueTypeChange();
  30064 
  30065         _this13.view.globalValue = null;
  30066 
  30067         _this13.resetActivePreviewItem();
  30068       });
  30069     }
  30070   }]);
  30071   return GlobalControlSelect;
  30072 }(Marionette.Behavior);
  30073 
  30074 exports.default = GlobalControlSelect;
  30075 
  30076 /***/ }),
  30077 
  30078 /***/ "../core/kits/assets/js/hooks/data/globals/base-globals-update.js":
  30079 /*!************************************************************************!*\
  30080   !*** ../core/kits/assets/js/hooks/data/globals/base-globals-update.js ***!
  30081   \************************************************************************/
  30082 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  30083 
  30084 "use strict";
  30085 
  30086 
  30087 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  30088 
  30089 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  30090 
  30091 _Object$defineProperty(exports, "__esModule", {
  30092   value: true
  30093 });
  30094 
  30095 exports.default = exports.BaseGlobalsUpdate = void 0;
  30096 
  30097 var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));
  30098 
  30099 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  30100 
  30101 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  30102 
  30103 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  30104 
  30105 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  30106 
  30107 var BaseGlobalsUpdate = /*#__PURE__*/function (_$e$modules$hookData$) {
  30108   (0, _inherits2.default)(BaseGlobalsUpdate, _$e$modules$hookData$);
  30109 
  30110   var _super = (0, _createSuper2.default)(BaseGlobalsUpdate);
  30111 
  30112   function BaseGlobalsUpdate() {
  30113     (0, _classCallCheck2.default)(this, BaseGlobalsUpdate);
  30114     return _super.apply(this, arguments);
  30115   }
  30116 
  30117   (0, _createClass2.default)(BaseGlobalsUpdate, [{
  30118     key: "getContainerType",
  30119     value: function getContainerType() {
  30120       return 'document';
  30121     }
  30122   }, {
  30123     key: "getConditions",
  30124     value: function getConditions() {
  30125       return $e.routes.isPartOf('panel/global');
  30126     }
  30127   }, {
  30128     key: "getRepeaterName",
  30129     value: function getRepeaterName() {
  30130       elementorModules.ForceMethodImplementation();
  30131     }
  30132   }, {
  30133     key: "applyModel",
  30134     value: function applyModel(model, id, value) {
  30135       elementorModules.ForceMethodImplementation();
  30136     }
  30137   }, {
  30138     key: "apply",
  30139     value: function apply(args, result) {
  30140       var _this = this;
  30141 
  30142       var _args$containers = args.containers,
  30143           containers = _args$containers === void 0 ? [args.container] : _args$containers,
  30144           model = (0, _assign.default)({}, result.data);
  30145       var id = model.id,
  30146           value = model.value;
  30147       delete model.id;
  30148       delete model.value;
  30149       model._id = id;
  30150       this.applyModel(model, value);
  30151       containers.forEach(function (container) {
  30152         $e.run('document/repeater/insert', {
  30153           container: container,
  30154           model: model,
  30155           name: _this.getRepeaterName()
  30156         });
  30157       });
  30158     }
  30159   }]);
  30160   return BaseGlobalsUpdate;
  30161 }($e.modules.hookData.After);
  30162 
  30163 exports.BaseGlobalsUpdate = BaseGlobalsUpdate;
  30164 var _default = BaseGlobalsUpdate;
  30165 exports.default = _default;
  30166 
  30167 /***/ }),
  30168 
  30169 /***/ "../core/kits/assets/js/hooks/data/globals/colors/globals-update-colors.js":
  30170 /*!*********************************************************************************!*\
  30171   !*** ../core/kits/assets/js/hooks/data/globals/colors/globals-update-colors.js ***!
  30172   \*********************************************************************************/
  30173 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  30174 
  30175 "use strict";
  30176 
  30177 
  30178 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  30179 
  30180 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  30181 
  30182 _Object$defineProperty(exports, "__esModule", {
  30183   value: true
  30184 });
  30185 
  30186 exports.default = exports.KitGlobalsUpdateColors = void 0;
  30187 
  30188 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  30189 
  30190 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  30191 
  30192 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  30193 
  30194 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  30195 
  30196 var _baseGlobalsUpdate = _interopRequireDefault(__webpack_require__(/*! ../base-globals-update */ "../core/kits/assets/js/hooks/data/globals/base-globals-update.js"));
  30197 
  30198 var KitGlobalsUpdateColors = /*#__PURE__*/function (_BaseGlobalsUpdate) {
  30199   (0, _inherits2.default)(KitGlobalsUpdateColors, _BaseGlobalsUpdate);
  30200 
  30201   var _super = (0, _createSuper2.default)(KitGlobalsUpdateColors);
  30202 
  30203   function KitGlobalsUpdateColors() {
  30204     (0, _classCallCheck2.default)(this, KitGlobalsUpdateColors);
  30205     return _super.apply(this, arguments);
  30206   }
  30207 
  30208   (0, _createClass2.default)(KitGlobalsUpdateColors, [{
  30209     key: "getCommand",
  30210     value: function getCommand() {
  30211       return 'globals/colors/create';
  30212     }
  30213   }, {
  30214     key: "getId",
  30215     value: function getId() {
  30216       return 'globals-update-colors-/globals/colors/create';
  30217     }
  30218   }, {
  30219     key: "getRepeaterName",
  30220     value: function getRepeaterName() {
  30221       return 'custom_colors';
  30222     }
  30223   }, {
  30224     key: "applyModel",
  30225     value: function applyModel(model, value) {
  30226       model.color = value;
  30227     }
  30228   }]);
  30229   return KitGlobalsUpdateColors;
  30230 }(_baseGlobalsUpdate.default);
  30231 
  30232 exports.KitGlobalsUpdateColors = KitGlobalsUpdateColors;
  30233 var _default = KitGlobalsUpdateColors;
  30234 exports.default = _default;
  30235 
  30236 /***/ }),
  30237 
  30238 /***/ "../core/kits/assets/js/hooks/data/globals/typography/globals-update-typography.js":
  30239 /*!*****************************************************************************************!*\
  30240   !*** ../core/kits/assets/js/hooks/data/globals/typography/globals-update-typography.js ***!
  30241   \*****************************************************************************************/
  30242 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  30243 
  30244 "use strict";
  30245 
  30246 
  30247 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  30248 
  30249 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  30250 
  30251 _Object$defineProperty(exports, "__esModule", {
  30252   value: true
  30253 });
  30254 
  30255 exports.default = exports.KitGlobalsUpdateTypography = void 0;
  30256 
  30257 var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));
  30258 
  30259 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  30260 
  30261 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  30262 
  30263 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  30264 
  30265 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  30266 
  30267 var _baseGlobalsUpdate = _interopRequireDefault(__webpack_require__(/*! ../base-globals-update */ "../core/kits/assets/js/hooks/data/globals/base-globals-update.js"));
  30268 
  30269 var KitGlobalsUpdateTypography = /*#__PURE__*/function (_BaseGlobalsUpdate) {
  30270   (0, _inherits2.default)(KitGlobalsUpdateTypography, _BaseGlobalsUpdate);
  30271 
  30272   var _super = (0, _createSuper2.default)(KitGlobalsUpdateTypography);
  30273 
  30274   function KitGlobalsUpdateTypography() {
  30275     (0, _classCallCheck2.default)(this, KitGlobalsUpdateTypography);
  30276     return _super.apply(this, arguments);
  30277   }
  30278 
  30279   (0, _createClass2.default)(KitGlobalsUpdateTypography, [{
  30280     key: "getCommand",
  30281     value: function getCommand() {
  30282       return 'globals/typography/create';
  30283     }
  30284   }, {
  30285     key: "getId",
  30286     value: function getId() {
  30287       return 'globals-update-typography-/globals/typography/create';
  30288     }
  30289   }, {
  30290     key: "getRepeaterName",
  30291     value: function getRepeaterName() {
  30292       return 'custom_typography';
  30293     }
  30294   }, {
  30295     key: "applyModel",
  30296     value: function applyModel(model, value) {
  30297       (0, _assign.default)(model, value);
  30298     }
  30299   }]);
  30300   return KitGlobalsUpdateTypography;
  30301 }(_baseGlobalsUpdate.default);
  30302 
  30303 exports.KitGlobalsUpdateTypography = KitGlobalsUpdateTypography;
  30304 var _default = KitGlobalsUpdateTypography;
  30305 exports.default = _default;
  30306 
  30307 /***/ }),
  30308 
  30309 /***/ "../core/kits/assets/js/hooks/index.js":
  30310 /*!*********************************************!*\
  30311   !*** ../core/kits/assets/js/hooks/index.js ***!
  30312   \*********************************************/
  30313 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  30314 
  30315 "use strict";
  30316 
  30317 
  30318 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  30319 
  30320 _Object$defineProperty(exports, "__esModule", {
  30321   value: true
  30322 });
  30323 
  30324 _Object$defineProperty(exports, "KitGlobalsUpdateColors", {
  30325   enumerable: true,
  30326   get: function get() {
  30327     return _globalsUpdateColors.KitGlobalsUpdateColors;
  30328   }
  30329 });
  30330 
  30331 _Object$defineProperty(exports, "KitGlobalsUpdateTypography", {
  30332   enumerable: true,
  30333   get: function get() {
  30334     return _globalsUpdateTypography.KitGlobalsUpdateTypography;
  30335   }
  30336 });
  30337 
  30338 _Object$defineProperty(exports, "KitDeleteGlobalsCache", {
  30339   enumerable: true,
  30340   get: function get() {
  30341     return _deleteGlobalsCache.KitDeleteGlobalsCache;
  30342   }
  30343 });
  30344 
  30345 _Object$defineProperty(exports, "KitAfterSave", {
  30346   enumerable: true,
  30347   get: function get() {
  30348     return _after.KitAfterSave;
  30349   }
  30350 });
  30351 
  30352 _Object$defineProperty(exports, "KitUpdateBreakpointsPreview", {
  30353   enumerable: true,
  30354   get: function get() {
  30355     return _updateBreakpointsPreview.KitUpdateBreakpointsPreview;
  30356   }
  30357 });
  30358 
  30359 _Object$defineProperty(exports, "KitUpdateLightboxPreview", {
  30360   enumerable: true,
  30361   get: function get() {
  30362     return _updateLightboxPreview.KitUpdateLightboxPreview;
  30363   }
  30364 });
  30365 
  30366 _Object$defineProperty(exports, "KitUpdateStretchContainer", {
  30367   enumerable: true,
  30368   get: function get() {
  30369     return _updateStretchContainer.KitUpdateStretchContainer;
  30370   }
  30371 });
  30372 
  30373 _Object$defineProperty(exports, "KitSaveRouteHistory", {
  30374   enumerable: true,
  30375   get: function get() {
  30376     return _saveRouteHistory.KitSaveRouteHistory;
  30377   }
  30378 });
  30379 
  30380 _Object$defineProperty(exports, "KitRemoveEditorActiveCSSDocumentsOpen", {
  30381   enumerable: true,
  30382   get: function get() {
  30383     return _removeEditorActiveCss.KitRemoveEditorActiveCSSDocumentsOpen;
  30384   }
  30385 });
  30386 
  30387 _Object$defineProperty(exports, "KitRemoveEditorActiveCSSPanelOpen", {
  30388   enumerable: true,
  30389   get: function get() {
  30390     return _removeEditorActiveCss2.KitRemoveEditorActiveCSSPanelOpen;
  30391   }
  30392 });
  30393 
  30394 _Object$defineProperty(exports, "KitBackToRouteHistory", {
  30395   enumerable: true,
  30396   get: function get() {
  30397     return _backToRouteHistory.KitBackToRouteHistory;
  30398   }
  30399 });
  30400 
  30401 _Object$defineProperty(exports, "KitRemovePreviewDeletedVariables", {
  30402   enumerable: true,
  30403   get: function get() {
  30404     return _removePreviewDeletedVariables.KitRemovePreviewDeletedVariables;
  30405   }
  30406 });
  30407 
  30408 _Object$defineProperty(exports, "KitAddMenuItems", {
  30409   enumerable: true,
  30410   get: function get() {
  30411     return _addMenuItems.KitAddMenuItems;
  30412   }
  30413 });
  30414 
  30415 var _globalsUpdateColors = __webpack_require__(/*! ./data/globals/colors/globals-update-colors */ "../core/kits/assets/js/hooks/data/globals/colors/globals-update-colors.js");
  30416 
  30417 var _globalsUpdateTypography = __webpack_require__(/*! ./data/globals/typography/globals-update-typography */ "../core/kits/assets/js/hooks/data/globals/typography/globals-update-typography.js");
  30418 
  30419 var _deleteGlobalsCache = __webpack_require__(/*! ./ui/document/save/save/delete-globals-cache */ "../core/kits/assets/js/hooks/ui/document/save/save/delete-globals-cache.js");
  30420 
  30421 var _after = __webpack_require__(/*! ./ui/document/save/save/after */ "../core/kits/assets/js/hooks/ui/document/save/save/after.js");
  30422 
  30423 var _updateBreakpointsPreview = __webpack_require__(/*! ./ui/document/elements/settings/update-breakpoints-preview */ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-breakpoints-preview.js");
  30424 
  30425 var _updateLightboxPreview = __webpack_require__(/*! ./ui/document/elements/settings/update-lightbox-preview */ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-lightbox-preview.js");
  30426 
  30427 var _updateStretchContainer = __webpack_require__(/*! ./ui/document/elements/settings/update-stretch-container */ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-stretch-container.js");
  30428 
  30429 var _saveRouteHistory = __webpack_require__(/*! ./ui/panel/global/open/save-route-history */ "../core/kits/assets/js/hooks/ui/panel/global/open/save-route-history.js");
  30430 
  30431 var _removeEditorActiveCss = __webpack_require__(/*! ./ui/editor/documents/open/remove-editor-active-css */ "../core/kits/assets/js/hooks/ui/editor/documents/open/remove-editor-active-css.js");
  30432 
  30433 var _removeEditorActiveCss2 = __webpack_require__(/*! ./ui/panel/open/remove-editor-active-css */ "../core/kits/assets/js/hooks/ui/panel/open/remove-editor-active-css.js");
  30434 
  30435 var _backToRouteHistory = __webpack_require__(/*! ./ui/panel/global/close/back-to-route-history */ "../core/kits/assets/js/hooks/ui/panel/global/close/back-to-route-history.js");
  30436 
  30437 var _removePreviewDeletedVariables = __webpack_require__(/*! ./ui/document/repeater/remove/remove-preview-deleted-variables */ "../core/kits/assets/js/hooks/ui/document/repeater/remove/remove-preview-deleted-variables.js");
  30438 
  30439 var _addMenuItems = __webpack_require__(/*! ./ui/editor/documents/load/add-menu-items */ "../core/kits/assets/js/hooks/ui/editor/documents/load/add-menu-items.js");
  30440 
  30441 /***/ }),
  30442 
  30443 /***/ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-breakpoints-preview.js":
  30444 /*!************************************************************************************************!*\
  30445   !*** ../core/kits/assets/js/hooks/ui/document/elements/settings/update-breakpoints-preview.js ***!
  30446   \************************************************************************************************/
  30447 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  30448 
  30449 "use strict";
  30450 
  30451 
  30452 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  30453 
  30454 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  30455 
  30456 _Object$defineProperty(exports, "__esModule", {
  30457   value: true
  30458 });
  30459 
  30460 exports.KitUpdateBreakpointsPreview = void 0;
  30461 
  30462 __webpack_require__(/*! core-js/modules/es6.string.starts-with.js */ "../node_modules/core-js/modules/es6.string.starts-with.js");
  30463 
  30464 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  30465 
  30466 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  30467 
  30468 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  30469 
  30470 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  30471 
  30472 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  30473 
  30474 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  30475 
  30476 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  30477 
  30478 var KitUpdateBreakpointsPreview = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  30479   (0, _inherits2.default)(KitUpdateBreakpointsPreview, _$e$modules$hookUI$Af);
  30480 
  30481   var _super = (0, _createSuper2.default)(KitUpdateBreakpointsPreview);
  30482 
  30483   function KitUpdateBreakpointsPreview() {
  30484     (0, _classCallCheck2.default)(this, KitUpdateBreakpointsPreview);
  30485     return _super.apply(this, arguments);
  30486   }
  30487 
  30488   (0, _createClass2.default)(KitUpdateBreakpointsPreview, [{
  30489     key: "getCommand",
  30490     value: function getCommand() {
  30491       return 'document/elements/settings';
  30492     }
  30493   }, {
  30494     key: "getId",
  30495     value: function getId() {
  30496       return 'kit-update-breakpoints-preview';
  30497     }
  30498   }, {
  30499     key: "getContainerType",
  30500     value: function getContainerType() {
  30501       return 'document';
  30502     }
  30503   }, {
  30504     key: "getConditions",
  30505     value: function getConditions() {
  30506       return 'kit' === elementor.documents.getCurrent().config.type;
  30507     }
  30508   }, {
  30509     key: "apply",
  30510     value: function apply(args) {
  30511       var settings = args.settings;
  30512 
  30513       if (settings.active_breakpoints) {
  30514         // Updating the current document config necessary, even if the page has to be reloaded for these settings
  30515         // to take place, because users can add breakpoints and then immediately choose a value for them, before
  30516         // saving the site settings. The breakpoint control's validator needs to have the actual active breakpoints
  30517         // in the panel at that moment breakpoints config in order to validate the user input properly.
  30518         elementor.documents.currentDocument.config.settings.settings.active_breakpoints = settings.active_breakpoints; // This flag is used to notify users that if they make a change to the active breakpoints list, they need
  30519         // to reload the editor for the changes to take effect.
  30520 
  30521         elementor.activeBreakpointsUpdated = true; // If this is the modified setting, no need to do further checks.
  30522 
  30523         return;
  30524       } // If a breakpoint value was updated, update the value in the config.
  30525 
  30526 
  30527       (0, _entries.default)(settings).forEach(function (_ref) {
  30528         var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  30529             key = _ref2[0],
  30530             value = _ref2[1];
  30531 
  30532         if (key.startsWith('viewport_')) {
  30533           var keyWithoutPrefix = key.replace('viewport_', ''); // Update both the config for all breakpoints and the one for active breakpoints.
  30534 
  30535           if (!value) {
  30536             value = elementorFrontend.config.responsive.breakpoints[keyWithoutPrefix].default_value;
  30537           }
  30538 
  30539           elementorFrontend.config.responsive.breakpoints[keyWithoutPrefix].value = value;
  30540         }
  30541       });
  30542       elementor.updatePreviewResizeOptions(true);
  30543     }
  30544   }]);
  30545   return KitUpdateBreakpointsPreview;
  30546 }($e.modules.hookUI.After);
  30547 
  30548 exports.KitUpdateBreakpointsPreview = KitUpdateBreakpointsPreview;
  30549 
  30550 /***/ }),
  30551 
  30552 /***/ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-lightbox-preview.js":
  30553 /*!*********************************************************************************************!*\
  30554   !*** ../core/kits/assets/js/hooks/ui/document/elements/settings/update-lightbox-preview.js ***!
  30555   \*********************************************************************************************/
  30556 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  30557 
  30558 "use strict";
  30559 
  30560 
  30561 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  30562 
  30563 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  30564 
  30565 _Object$defineProperty(exports, "__esModule", {
  30566   value: true
  30567 });
  30568 
  30569 exports.default = exports.KitUpdateLightboxPreview = void 0;
  30570 
  30571 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  30572 
  30573 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  30574 
  30575 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  30576 
  30577 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  30578 
  30579 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  30580 
  30581 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  30582 
  30583 /**
  30584  * On change kit lightbox settings - update the lightbox preview config.
  30585  */
  30586 var KitUpdateLightboxPreview = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  30587   (0, _inherits2.default)(KitUpdateLightboxPreview, _$e$modules$hookUI$Af);
  30588 
  30589   var _super = (0, _createSuper2.default)(KitUpdateLightboxPreview);
  30590 
  30591   function KitUpdateLightboxPreview() {
  30592     (0, _classCallCheck2.default)(this, KitUpdateLightboxPreview);
  30593     return _super.apply(this, arguments);
  30594   }
  30595 
  30596   (0, _createClass2.default)(KitUpdateLightboxPreview, [{
  30597     key: "getCommand",
  30598     value: function getCommand() {
  30599       return 'document/elements/settings';
  30600     }
  30601   }, {
  30602     key: "getId",
  30603     value: function getId() {
  30604       return 'kit-update-lightbox-preview';
  30605     }
  30606   }, {
  30607     key: "getContainerType",
  30608     value: function getContainerType() {
  30609       return 'document';
  30610     }
  30611   }, {
  30612     key: "getConditions",
  30613     value: function getConditions() {
  30614       return 'kit' === elementor.documents.getCurrent().config.type;
  30615     }
  30616   }, {
  30617     key: "apply",
  30618     value: function apply(args) {
  30619       var settings = args.settings;
  30620       (0, _entries.default)(settings).forEach(function (_ref) {
  30621         var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  30622             key = _ref2[0],
  30623             value = _ref2[1];
  30624 
  30625         if (-1 !== key.indexOf('lightbox')) {
  30626           elementorFrontend.config.kit[key] = value;
  30627         }
  30628       });
  30629     }
  30630   }]);
  30631   return KitUpdateLightboxPreview;
  30632 }($e.modules.hookUI.After);
  30633 
  30634 exports.KitUpdateLightboxPreview = KitUpdateLightboxPreview;
  30635 var _default = KitUpdateLightboxPreview;
  30636 exports.default = _default;
  30637 
  30638 /***/ }),
  30639 
  30640 /***/ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-stretch-container.js":
  30641 /*!**********************************************************************************************!*\
  30642   !*** ../core/kits/assets/js/hooks/ui/document/elements/settings/update-stretch-container.js ***!
  30643   \**********************************************************************************************/
  30644 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  30645 
  30646 "use strict";
  30647 
  30648 
  30649 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  30650 
  30651 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  30652 
  30653 _Object$defineProperty(exports, "__esModule", {
  30654   value: true
  30655 });
  30656 
  30657 exports.default = exports.KitUpdateStretchContainer = void 0;
  30658 
  30659 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  30660 
  30661 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  30662 
  30663 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  30664 
  30665 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  30666 
  30667 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  30668 
  30669 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  30670 
  30671 /**
  30672  * On change kit stretch container settings - update the preview stretched sections.
  30673  */
  30674 var KitUpdateStretchContainer = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  30675   (0, _inherits2.default)(KitUpdateStretchContainer, _$e$modules$hookUI$Af);
  30676 
  30677   var _super = (0, _createSuper2.default)(KitUpdateStretchContainer);
  30678 
  30679   function KitUpdateStretchContainer() {
  30680     (0, _classCallCheck2.default)(this, KitUpdateStretchContainer);
  30681     return _super.apply(this, arguments);
  30682   }
  30683 
  30684   (0, _createClass2.default)(KitUpdateStretchContainer, [{
  30685     key: "getCommand",
  30686     value: function getCommand() {
  30687       return 'document/elements/settings';
  30688     }
  30689   }, {
  30690     key: "getId",
  30691     value: function getId() {
  30692       return 'kit-update-stretch-container';
  30693     }
  30694   }, {
  30695     key: "getContainerType",
  30696     value: function getContainerType() {
  30697       return 'document';
  30698     }
  30699   }, {
  30700     key: "getConditions",
  30701     value: function getConditions() {
  30702       return 'kit' === elementor.documents.getCurrent().config.type;
  30703     }
  30704   }, {
  30705     key: "apply",
  30706     value: function apply(args) {
  30707       var settings = args.settings;
  30708       (0, _entries.default)(settings).forEach(function (_ref) {
  30709         var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  30710             key = _ref2[0],
  30711             value = _ref2[1];
  30712 
  30713         if ('stretched_section_container' === key) {
  30714           elementorFrontend.config.kit[key] = value;
  30715           elementor.channels.editor.trigger('kit:change:stretchContainer');
  30716         }
  30717       });
  30718     }
  30719   }]);
  30720   return KitUpdateStretchContainer;
  30721 }($e.modules.hookUI.After);
  30722 
  30723 exports.KitUpdateStretchContainer = KitUpdateStretchContainer;
  30724 var _default = KitUpdateStretchContainer;
  30725 exports.default = _default;
  30726 
  30727 /***/ }),
  30728 
  30729 /***/ "../core/kits/assets/js/hooks/ui/document/repeater/remove/remove-preview-deleted-variables.js":
  30730 /*!****************************************************************************************************!*\
  30731   !*** ../core/kits/assets/js/hooks/ui/document/repeater/remove/remove-preview-deleted-variables.js ***!
  30732   \****************************************************************************************************/
  30733 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  30734 
  30735 "use strict";
  30736 
  30737 
  30738 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  30739 
  30740 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  30741 
  30742 _Object$defineProperty(exports, "__esModule", {
  30743   value: true
  30744 });
  30745 
  30746 exports.KitRemovePreviewDeletedVariables = void 0;
  30747 
  30748 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
  30749 
  30750 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  30751 
  30752 __webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");
  30753 
  30754 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
  30755 
  30756 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  30757 
  30758 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  30759 
  30760 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  30761 
  30762 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  30763 
  30764 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
  30765 
  30766 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  30767 
  30768 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  30769 
  30770 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  30771 
  30772 /**
  30773  * On delete a design system item - the used variables on the preview frame are
  30774  * invalid and cause the elements to get the user-agent default style instead of
  30775  * inherit higher CSS rules.
  30776  *
  30777  * The hook finds and removes all deleted item variables from the preview inline styles.
  30778  */
  30779 var KitRemovePreviewDeletedVariables = /*#__PURE__*/function (_$e$modules$hookUI$Be) {
  30780   (0, _inherits2.default)(KitRemovePreviewDeletedVariables, _$e$modules$hookUI$Be);
  30781 
  30782   var _super = (0, _createSuper2.default)(KitRemovePreviewDeletedVariables);
  30783 
  30784   function KitRemovePreviewDeletedVariables() {
  30785     var _this;
  30786 
  30787     (0, _classCallCheck2.default)(this, KitRemovePreviewDeletedVariables);
  30788 
  30789     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  30790       args[_key] = arguments[_key];
  30791     }
  30792 
  30793     _this = _super.call.apply(_super, [this].concat(args));
  30794     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "controls", ['custom_colors', 'custom_typography']);
  30795     return _this;
  30796   }
  30797 
  30798   (0, _createClass2.default)(KitRemovePreviewDeletedVariables, [{
  30799     key: "getCommand",
  30800     value: function getCommand() {
  30801       return 'document/repeater/remove';
  30802     }
  30803   }, {
  30804     key: "getId",
  30805     value: function getId() {
  30806       return 'kit-remove-preview-deleted-variables';
  30807     }
  30808   }, {
  30809     key: "getContainerType",
  30810     value: function getContainerType() {
  30811       return 'document';
  30812     }
  30813   }, {
  30814     key: "getConditions",
  30815     value: function getConditions(args) {
  30816       return this.controls.includes(args.name) && 'kit' === elementor.documents.getCurrent().config.type;
  30817     }
  30818   }, {
  30819     key: "apply",
  30820     value: function apply(args) {
  30821       var _this2 = this;
  30822 
  30823       // Store on component in order to use it in undo hook.
  30824       this.component = $e.components.get('panel/global');
  30825       this.component.tempStyle = this.component.tempStyle || {};
  30826       var _args$containers = args.containers,
  30827           containers = _args$containers === void 0 ? [args.container] : _args$containers,
  30828           kitCSSId = "elementor-style-page-".concat(elementor.config.kit_id);
  30829       containers.forEach(function (container) {
  30830         var item = container.repeaters[args.name].children[args.index],
  30831             stylesheets = (0, _values.default)(elementor.$previewContents[0].styleSheets).filter(function (stylesheet) {
  30832           // Don't touch the kit CSS itself.
  30833           return kitCSSId !== stylesheet.ownerNode.id && stylesheet.ownerNode.innerHTML.includes(item.id);
  30834         });
  30835         stylesheets.forEach(function (stylesheet) {
  30836           _this2.component.tempStyle[item.id] = _this2.extractVariables(stylesheet.cssRules, item.id);
  30837         });
  30838       });
  30839     }
  30840   }, {
  30841     key: "extractVariables",
  30842     value: function extractVariables(cssRules, id) {
  30843       var variablesRules = {};
  30844       (0, _values.default)(cssRules).forEach(function (rule) {
  30845         if (!rule.style) {
  30846           // TODO Handle CSSMediaRule.
  30847           return;
  30848         }
  30849 
  30850         variablesRules[rule.selectorText] = {}; // Get the original properties for undo.
  30851 
  30852         for (var i = 0; i < rule.style.length; i++) {
  30853           var property = rule.style[i],
  30854               value = rule.style[property];
  30855 
  30856           if (value.includes(id)) {
  30857             variablesRules[rule.selectorText][property] = value;
  30858           }
  30859         } // Delete in a separated loop, because it changes the `style.length`.
  30860 
  30861 
  30862         (0, _keys.default)(variablesRules[rule.selectorText]).forEach(function (property) {
  30863           rule.style[property] = '';
  30864         });
  30865       });
  30866       return variablesRules;
  30867     }
  30868   }]);
  30869   return KitRemovePreviewDeletedVariables;
  30870 }($e.modules.hookUI.Before);
  30871 
  30872 exports.KitRemovePreviewDeletedVariables = KitRemovePreviewDeletedVariables;
  30873 
  30874 /***/ }),
  30875 
  30876 /***/ "../core/kits/assets/js/hooks/ui/document/save/save/after.js":
  30877 /*!*******************************************************************!*\
  30878   !*** ../core/kits/assets/js/hooks/ui/document/save/save/after.js ***!
  30879   \*******************************************************************/
  30880 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  30881 
  30882 "use strict";
  30883 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  30884 
  30885 
  30886 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  30887 
  30888 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  30889 
  30890 _Object$defineProperty(exports, "__esModule", {
  30891   value: true
  30892 });
  30893 
  30894 exports.default = exports.KitAfterSave = void 0;
  30895 
  30896 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  30897 
  30898 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  30899 
  30900 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  30901 
  30902 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  30903 
  30904 var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));
  30905 
  30906 var KitAfterSave = /*#__PURE__*/function (_After) {
  30907   (0, _inherits2.default)(KitAfterSave, _After);
  30908 
  30909   var _super = (0, _createSuper2.default)(KitAfterSave);
  30910 
  30911   function KitAfterSave() {
  30912     (0, _classCallCheck2.default)(this, KitAfterSave);
  30913     return _super.apply(this, arguments);
  30914   }
  30915 
  30916   (0, _createClass2.default)(KitAfterSave, [{
  30917     key: "getCommand",
  30918     value: function getCommand() {
  30919       return 'document/save/save';
  30920     }
  30921   }, {
  30922     key: "getConditions",
  30923     value: function getConditions(args) {
  30924       var status = args.status,
  30925           _args$document = args.document,
  30926           document = _args$document === void 0 ? elementor.documents.getCurrent() : _args$document;
  30927       return 'publish' === status && 'kit' === document.config.type;
  30928     }
  30929   }, {
  30930     key: "getId",
  30931     value: function getId() {
  30932       return 'kit-footer-saver-after-save';
  30933     }
  30934   }, {
  30935     key: "apply",
  30936     value: function apply(args) {
  30937       if ('publish' === args.status) {
  30938         elementor.notifications.showToast({
  30939           message: __('Your changes have been updated.', 'elementor'),
  30940           buttons: [{
  30941             name: 'back_to_editor',
  30942             text: __('Back to Editor', 'elementor'),
  30943             callback: function callback() {
  30944               $e.run('panel/global/close');
  30945             }
  30946           }]
  30947         });
  30948       }
  30949 
  30950       if (elementor.activeBreakpointsUpdated) {
  30951         var reloadConfirm = elementorCommon.dialogsManager.createWidget('alert', {
  30952           id: 'elementor-save-kit-refersh-page',
  30953           headerMessage: __('Reload Elementor Editor', 'elementor'),
  30954           message: __('You have made modifications to the list of Active Breakpoints. For these changes to take effect, you need to reload Elementor Editor.', 'elementor'),
  30955           position: {
  30956             my: 'center center',
  30957             at: 'center center'
  30958           },
  30959           strings: {
  30960             confirm: __('Reload Now', 'elementor')
  30961           },
  30962           onConfirm: function onConfirm() {
  30963             return location.reload();
  30964           }
  30965         });
  30966         reloadConfirm.show();
  30967       }
  30968     }
  30969   }]);
  30970   return KitAfterSave;
  30971 }(_after.default);
  30972 
  30973 exports.KitAfterSave = KitAfterSave;
  30974 var _default = KitAfterSave;
  30975 exports.default = _default;
  30976 
  30977 /***/ }),
  30978 
  30979 /***/ "../core/kits/assets/js/hooks/ui/document/save/save/delete-globals-cache.js":
  30980 /*!**********************************************************************************!*\
  30981   !*** ../core/kits/assets/js/hooks/ui/document/save/save/delete-globals-cache.js ***!
  30982   \**********************************************************************************/
  30983 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  30984 
  30985 "use strict";
  30986 
  30987 
  30988 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  30989 
  30990 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  30991 
  30992 _Object$defineProperty(exports, "__esModule", {
  30993   value: true
  30994 });
  30995 
  30996 exports.default = exports.KitDeleteGlobalsCache = void 0;
  30997 
  30998 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  30999 
  31000 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  31001 
  31002 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  31003 
  31004 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  31005 
  31006 var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));
  31007 
  31008 var KitDeleteGlobalsCache = /*#__PURE__*/function (_After) {
  31009   (0, _inherits2.default)(KitDeleteGlobalsCache, _After);
  31010 
  31011   var _super = (0, _createSuper2.default)(KitDeleteGlobalsCache);
  31012 
  31013   function KitDeleteGlobalsCache() {
  31014     (0, _classCallCheck2.default)(this, KitDeleteGlobalsCache);
  31015     return _super.apply(this, arguments);
  31016   }
  31017 
  31018   (0, _createClass2.default)(KitDeleteGlobalsCache, [{
  31019     key: "getCommand",
  31020     value: function getCommand() {
  31021       return 'document/save/save';
  31022     }
  31023   }, {
  31024     key: "getConditions",
  31025     value: function getConditions(args) {
  31026       var status = args.status,
  31027           _args$document = args.document,
  31028           document = _args$document === void 0 ? elementor.documents.getCurrent() : _args$document;
  31029       return 'publish' === status && 'kit' === document.config.type;
  31030     }
  31031   }, {
  31032     key: "getId",
  31033     value: function getId() {
  31034       return 'document/save/save::update-globals-cache';
  31035     }
  31036   }, {
  31037     key: "apply",
  31038     value: function apply() {
  31039       // After kit updates - remove globals from cache and force re-request from server.
  31040       $e.components.get('globals').refreshGlobalData();
  31041     }
  31042   }]);
  31043   return KitDeleteGlobalsCache;
  31044 }(_after.default);
  31045 
  31046 exports.KitDeleteGlobalsCache = KitDeleteGlobalsCache;
  31047 var _default = KitDeleteGlobalsCache;
  31048 exports.default = _default;
  31049 
  31050 /***/ }),
  31051 
  31052 /***/ "../core/kits/assets/js/hooks/ui/editor/documents/load/add-menu-items.js":
  31053 /*!*******************************************************************************!*\
  31054   !*** ../core/kits/assets/js/hooks/ui/editor/documents/load/add-menu-items.js ***!
  31055   \*******************************************************************************/
  31056 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31057 
  31058 "use strict";
  31059 
  31060 
  31061 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31062 
  31063 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  31064 
  31065 _Object$defineProperty(exports, "__esModule", {
  31066   value: true
  31067 });
  31068 
  31069 exports.default = exports.KitAddMenuItems = void 0;
  31070 
  31071 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  31072 
  31073 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  31074 
  31075 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  31076 
  31077 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  31078 
  31079 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  31080 
  31081 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  31082 
  31083 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  31084 
  31085 var KitAddMenuItems = /*#__PURE__*/function (_$e$modules$hookUI$Be) {
  31086   (0, _inherits2.default)(KitAddMenuItems, _$e$modules$hookUI$Be);
  31087 
  31088   var _super = (0, _createSuper2.default)(KitAddMenuItems);
  31089 
  31090   function KitAddMenuItems() {
  31091     (0, _classCallCheck2.default)(this, KitAddMenuItems);
  31092     return _super.apply(this, arguments);
  31093   }
  31094 
  31095   (0, _createClass2.default)(KitAddMenuItems, [{
  31096     key: "getCommand",
  31097     value: function getCommand() {
  31098       return 'editor/documents/attach-preview';
  31099     }
  31100   }, {
  31101     key: "getId",
  31102     value: function getId() {
  31103       return 'kit-add-menu-item';
  31104     }
  31105   }, {
  31106     key: "getConditions",
  31107     value: function getConditions() {
  31108       return 'kit' === elementor.documents.getCurrent().config.type && !(0, _keys.default)($e.components.get('panel/global').getTabs()).length;
  31109     }
  31110   }, {
  31111     key: "apply",
  31112     value: function apply() {
  31113       var document = elementor.documents.getCurrent();
  31114       (0, _entries.default)(document.config.tabs).forEach(function (_ref) {
  31115         var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  31116             tabId = _ref2[0],
  31117             tabConfig = _ref2[1];
  31118 
  31119         $e.components.get('panel/global').addTab(tabId, tabConfig);
  31120       });
  31121     }
  31122   }]);
  31123   return KitAddMenuItems;
  31124 }($e.modules.hookUI.Before);
  31125 
  31126 exports.KitAddMenuItems = KitAddMenuItems;
  31127 var _default = KitAddMenuItems;
  31128 exports.default = _default;
  31129 
  31130 /***/ }),
  31131 
  31132 /***/ "../core/kits/assets/js/hooks/ui/editor/documents/open/remove-editor-active-css.js":
  31133 /*!*****************************************************************************************!*\
  31134   !*** ../core/kits/assets/js/hooks/ui/editor/documents/open/remove-editor-active-css.js ***!
  31135   \*****************************************************************************************/
  31136 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31137 
  31138 "use strict";
  31139 
  31140 
  31141 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31142 
  31143 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  31144 
  31145 _Object$defineProperty(exports, "__esModule", {
  31146   value: true
  31147 });
  31148 
  31149 exports.default = exports.KitRemoveEditorActiveCSSDocumentsOpen = void 0;
  31150 
  31151 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  31152 
  31153 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  31154 
  31155 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  31156 
  31157 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  31158 
  31159 var KitRemoveEditorActiveCSSDocumentsOpen = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  31160   (0, _inherits2.default)(KitRemoveEditorActiveCSSDocumentsOpen, _$e$modules$hookUI$Af);
  31161 
  31162   var _super = (0, _createSuper2.default)(KitRemoveEditorActiveCSSDocumentsOpen);
  31163 
  31164   function KitRemoveEditorActiveCSSDocumentsOpen() {
  31165     (0, _classCallCheck2.default)(this, KitRemoveEditorActiveCSSDocumentsOpen);
  31166     return _super.apply(this, arguments);
  31167   }
  31168 
  31169   (0, _createClass2.default)(KitRemoveEditorActiveCSSDocumentsOpen, [{
  31170     key: "getCommand",
  31171     value: function getCommand() {
  31172       return 'editor/documents/open';
  31173     }
  31174   }, {
  31175     key: "getId",
  31176     value: function getId() {
  31177       return 'kit-remove-editor-active-css--editor/documents/open';
  31178     }
  31179   }, {
  31180     key: "getConditions",
  31181     value: function getConditions() {
  31182       return 'kit' === elementor.documents.getCurrent().config.type;
  31183     }
  31184   }, {
  31185     key: "apply",
  31186     value: function apply() {
  31187       // TODO: Remove - Temporary fix to avoid conflict with `elementor.exitPreviewMode()`.
  31188       setTimeout(function () {
  31189         elementorFrontend.elements.$body.removeClass('elementor-editor-active');
  31190       });
  31191     }
  31192   }]);
  31193   return KitRemoveEditorActiveCSSDocumentsOpen;
  31194 }($e.modules.hookUI.After);
  31195 
  31196 exports.KitRemoveEditorActiveCSSDocumentsOpen = KitRemoveEditorActiveCSSDocumentsOpen;
  31197 var _default = KitRemoveEditorActiveCSSDocumentsOpen;
  31198 exports.default = _default;
  31199 
  31200 /***/ }),
  31201 
  31202 /***/ "../core/kits/assets/js/hooks/ui/panel/global/base/base-open-close.js":
  31203 /*!****************************************************************************!*\
  31204   !*** ../core/kits/assets/js/hooks/ui/panel/global/base/base-open-close.js ***!
  31205   \****************************************************************************/
  31206 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31207 
  31208 "use strict";
  31209 
  31210 
  31211 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31212 
  31213 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  31214 
  31215 _Object$defineProperty(exports, "__esModule", {
  31216   value: true
  31217 });
  31218 
  31219 exports.default = void 0;
  31220 
  31221 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  31222 
  31223 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  31224 
  31225 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  31226 
  31227 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  31228 
  31229 var BaseOpenClose = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  31230   (0, _inherits2.default)(BaseOpenClose, _$e$modules$hookUI$Af);
  31231 
  31232   var _super = (0, _createSuper2.default)(BaseOpenClose);
  31233 
  31234   function BaseOpenClose() {
  31235     (0, _classCallCheck2.default)(this, BaseOpenClose);
  31236     return _super.apply(this, arguments);
  31237   }
  31238 
  31239   (0, _createClass2.default)(BaseOpenClose, [{
  31240     key: "initialize",
  31241     value: function initialize() {
  31242       var _this = this;
  31243 
  31244       elementor.on('preview:loaded', function () {
  31245         _this.component = $e.components.get('panel/global');
  31246       });
  31247     }
  31248   }]);
  31249   return BaseOpenClose;
  31250 }($e.modules.hookUI.After);
  31251 
  31252 exports.default = BaseOpenClose;
  31253 
  31254 /***/ }),
  31255 
  31256 /***/ "../core/kits/assets/js/hooks/ui/panel/global/close/back-to-route-history.js":
  31257 /*!***********************************************************************************!*\
  31258   !*** ../core/kits/assets/js/hooks/ui/panel/global/close/back-to-route-history.js ***!
  31259   \***********************************************************************************/
  31260 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31261 
  31262 "use strict";
  31263 
  31264 
  31265 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31266 
  31267 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  31268 
  31269 _Object$defineProperty(exports, "__esModule", {
  31270   value: true
  31271 });
  31272 
  31273 exports.default = exports.KitBackToRouteHistory = void 0;
  31274 
  31275 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  31276 
  31277 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  31278 
  31279 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  31280 
  31281 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  31282 
  31283 var _baseOpenClose = _interopRequireDefault(__webpack_require__(/*! ../base/base-open-close */ "../core/kits/assets/js/hooks/ui/panel/global/base/base-open-close.js"));
  31284 
  31285 var KitBackToRouteHistory = /*#__PURE__*/function (_BaseOpenClose) {
  31286   (0, _inherits2.default)(KitBackToRouteHistory, _BaseOpenClose);
  31287 
  31288   var _super = (0, _createSuper2.default)(KitBackToRouteHistory);
  31289 
  31290   function KitBackToRouteHistory() {
  31291     (0, _classCallCheck2.default)(this, KitBackToRouteHistory);
  31292     return _super.apply(this, arguments);
  31293   }
  31294 
  31295   (0, _createClass2.default)(KitBackToRouteHistory, [{
  31296     key: "getCommand",
  31297     value: function getCommand() {
  31298       return 'panel/global/close';
  31299     }
  31300   }, {
  31301     key: "getId",
  31302     value: function getId() {
  31303       return 'back-to-route-history-/panel/global/close';
  31304     }
  31305   }, {
  31306     key: "getConditions",
  31307     value: function getConditions() {
  31308       return this.component.routeHistory;
  31309     }
  31310   }, {
  31311     key: "apply",
  31312     value: function apply() {
  31313       var historyBeforeOpen = this.component.routeHistory;
  31314       delete this.component.routeHistory;
  31315       /**
  31316        * TODO: Find better solution.
  31317        * Since cache deleted after leaving globals.
  31318        * Cover issue: When back to route, it back to style, it causes the UI ask for styles separately and since,
  31319        * Cache deleted, it asks the remote ( $e.data ) for specific colors/typography endpoints and causes a delay in global select box.
  31320        * To handle the the issue, request globals manually, then back to route.
  31321        */
  31322 
  31323       if (historyBeforeOpen.container) {
  31324         $e.data.get('globals/index').then(function () {
  31325           // Since the container comes from history, its not connected element.
  31326           historyBeforeOpen.container = historyBeforeOpen.container.lookup();
  31327           historyBeforeOpen.container.model.trigger('request:edit', {
  31328             scrollIntoView: true
  31329           });
  31330           $e.route(historyBeforeOpen.route, {
  31331             model: historyBeforeOpen.container.model,
  31332             view: historyBeforeOpen.container.view
  31333           });
  31334         });
  31335       }
  31336     }
  31337   }]);
  31338   return KitBackToRouteHistory;
  31339 }(_baseOpenClose.default);
  31340 
  31341 exports.KitBackToRouteHistory = KitBackToRouteHistory;
  31342 var _default = KitBackToRouteHistory;
  31343 exports.default = _default;
  31344 
  31345 /***/ }),
  31346 
  31347 /***/ "../core/kits/assets/js/hooks/ui/panel/global/open/save-route-history.js":
  31348 /*!*******************************************************************************!*\
  31349   !*** ../core/kits/assets/js/hooks/ui/panel/global/open/save-route-history.js ***!
  31350   \*******************************************************************************/
  31351 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31352 
  31353 "use strict";
  31354 
  31355 
  31356 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31357 
  31358 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  31359 
  31360 _Object$defineProperty(exports, "__esModule", {
  31361   value: true
  31362 });
  31363 
  31364 exports.default = exports.KitSaveRouteHistory = void 0;
  31365 
  31366 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  31367 
  31368 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  31369 
  31370 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  31371 
  31372 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  31373 
  31374 var _baseOpenClose = _interopRequireDefault(__webpack_require__(/*! ../base/base-open-close */ "../core/kits/assets/js/hooks/ui/panel/global/base/base-open-close.js"));
  31375 
  31376 var KitSaveRouteHistory = /*#__PURE__*/function (_BaseOpenClose) {
  31377   (0, _inherits2.default)(KitSaveRouteHistory, _BaseOpenClose);
  31378 
  31379   var _super = (0, _createSuper2.default)(KitSaveRouteHistory);
  31380 
  31381   function KitSaveRouteHistory() {
  31382     (0, _classCallCheck2.default)(this, KitSaveRouteHistory);
  31383     return _super.apply(this, arguments);
  31384   }
  31385 
  31386   (0, _createClass2.default)(KitSaveRouteHistory, [{
  31387     key: "getCommand",
  31388     value: function getCommand() {
  31389       return 'panel/global/open';
  31390     }
  31391   }, {
  31392     key: "getId",
  31393     value: function getId() {
  31394       return 'save-route-history--/panel/global/open';
  31395     }
  31396   }, {
  31397     key: "getConditions",
  31398     value: function getConditions() {
  31399       var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  31400       var result = arguments.length > 1 ? arguments[1] : undefined;
  31401       return args.route;
  31402     }
  31403   }, {
  31404     key: "apply",
  31405     value: function apply(args) {
  31406       this.component.routeHistory = args;
  31407     }
  31408   }]);
  31409   return KitSaveRouteHistory;
  31410 }(_baseOpenClose.default);
  31411 
  31412 exports.KitSaveRouteHistory = KitSaveRouteHistory;
  31413 var _default = KitSaveRouteHistory;
  31414 exports.default = _default;
  31415 
  31416 /***/ }),
  31417 
  31418 /***/ "../core/kits/assets/js/hooks/ui/panel/open/remove-editor-active-css.js":
  31419 /*!******************************************************************************!*\
  31420   !*** ../core/kits/assets/js/hooks/ui/panel/open/remove-editor-active-css.js ***!
  31421   \******************************************************************************/
  31422 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31423 
  31424 "use strict";
  31425 
  31426 
  31427 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31428 
  31429 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  31430 
  31431 _Object$defineProperty(exports, "__esModule", {
  31432   value: true
  31433 });
  31434 
  31435 exports.default = exports.KitRemoveEditorActiveCSSPanelOpen = void 0;
  31436 
  31437 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  31438 
  31439 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  31440 
  31441 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  31442 
  31443 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  31444 
  31445 var KitRemoveEditorActiveCSSPanelOpen = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  31446   (0, _inherits2.default)(KitRemoveEditorActiveCSSPanelOpen, _$e$modules$hookUI$Af);
  31447 
  31448   var _super = (0, _createSuper2.default)(KitRemoveEditorActiveCSSPanelOpen);
  31449 
  31450   function KitRemoveEditorActiveCSSPanelOpen() {
  31451     (0, _classCallCheck2.default)(this, KitRemoveEditorActiveCSSPanelOpen);
  31452     return _super.apply(this, arguments);
  31453   }
  31454 
  31455   (0, _createClass2.default)(KitRemoveEditorActiveCSSPanelOpen, [{
  31456     key: "getCommand",
  31457     value: function getCommand() {
  31458       return 'panel/open';
  31459     }
  31460   }, {
  31461     key: "getId",
  31462     value: function getId() {
  31463       return 'kit-remove-editor-active-css--/panel/open';
  31464     }
  31465   }, {
  31466     key: "getConditions",
  31467     value: function getConditions() {
  31468       return 'kit' === elementor.documents.getCurrent().config.type;
  31469     }
  31470   }, {
  31471     key: "apply",
  31472     value: function apply() {
  31473       // TODO: Remove - Temporary fix to avoid conflict with `elementor.exitPreviewMode()`.
  31474       setTimeout(function () {
  31475         elementorFrontend.elements.$body.removeClass('elementor-editor-active');
  31476       });
  31477     }
  31478   }]);
  31479   return KitRemoveEditorActiveCSSPanelOpen;
  31480 }($e.modules.hookUI.After);
  31481 
  31482 exports.KitRemoveEditorActiveCSSPanelOpen = KitRemoveEditorActiveCSSPanelOpen;
  31483 var _default = KitRemoveEditorActiveCSSPanelOpen;
  31484 exports.default = _default;
  31485 
  31486 /***/ }),
  31487 
  31488 /***/ "../core/kits/assets/js/manager.js":
  31489 /*!*****************************************!*\
  31490   !*** ../core/kits/assets/js/manager.js ***!
  31491   \*****************************************/
  31492 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31493 
  31494 "use strict";
  31495 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  31496 
  31497 
  31498 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31499 
  31500 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  31501 
  31502 _Object$defineProperty(exports, "__esModule", {
  31503   value: true
  31504 });
  31505 
  31506 exports.default = void 0;
  31507 
  31508 __webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");
  31509 
  31510 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
  31511 
  31512 var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));
  31513 
  31514 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  31515 
  31516 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  31517 
  31518 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
  31519 
  31520 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  31521 
  31522 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  31523 
  31524 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  31525 
  31526 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  31527 
  31528 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  31529 
  31530 var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../core/kits/assets/js/component.js"));
  31531 
  31532 var _panel = _interopRequireDefault(__webpack_require__(/*! ./panel */ "../core/kits/assets/js/panel.js"));
  31533 
  31534 var _panelMenu = _interopRequireDefault(__webpack_require__(/*! ./panel-menu */ "../core/kits/assets/js/panel-menu.js"));
  31535 
  31536 var _panelHeaderBehavior = _interopRequireDefault(__webpack_require__(/*! ./panel-header-behavior */ "../core/kits/assets/js/panel-header-behavior.js"));
  31537 
  31538 var _globalSelectBehavior = _interopRequireDefault(__webpack_require__(/*! ./globals/global-select-behavior */ "../core/kits/assets/js/globals/global-select-behavior.js"));
  31539 
  31540 var _controlsCssParser = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/editor/utils/controls-css-parser */ "../assets/dev/js/editor/utils/controls-css-parser.js"));
  31541 
  31542 var Manager = /*#__PURE__*/function (_elementorModules$edi) {
  31543   (0, _inherits2.default)(Manager, _elementorModules$edi);
  31544 
  31545   var _super = (0, _createSuper2.default)(Manager);
  31546 
  31547   function Manager() {
  31548     var _this;
  31549 
  31550     (0, _classCallCheck2.default)(this, Manager);
  31551 
  31552     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  31553       args[_key] = arguments[_key];
  31554     }
  31555 
  31556     _this = _super.call.apply(_super, [this].concat(args));
  31557     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "loadingTriggers", {
  31558       preview: false,
  31559       globals: false
  31560     });
  31561     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "variablesCSS", null);
  31562     return _this;
  31563   }
  31564 
  31565   (0, _createClass2.default)(Manager, [{
  31566     key: "initialize",
  31567     value: function initialize() {
  31568       var _this2 = this;
  31569 
  31570       elementor.on('preview:loaded', function () {
  31571         _this2.loadingTriggers.preview = true;
  31572 
  31573         _this2.renderGlobalsDefaultCSS();
  31574       });
  31575       elementor.on('document:loaded', function () {
  31576         _this2.renderGlobalVariables();
  31577       });
  31578       elementor.once('globals:loaded', function () {
  31579         _this2.loadingTriggers.globals = true;
  31580 
  31581         _this2.renderGlobalsDefaultCSS();
  31582       });
  31583       elementor.hooks.addFilter('controls/base/behaviors', this.addGlobalsBehavior);
  31584 
  31585       if (!elementor.config.user.can_edit_kit) {
  31586         return;
  31587       }
  31588 
  31589       $e.components.register(new _component.default({
  31590         manager: this
  31591       }));
  31592     }
  31593   }, {
  31594     key: "addPanelPages",
  31595     value: function addPanelPages() {
  31596       elementor.getPanelView().addPage('kit_settings', {
  31597         view: _panel.default,
  31598         title: __('Site Settings', 'elementor')
  31599       });
  31600       elementor.getPanelView().addPage('kit_menu', {
  31601         view: _panelMenu.default,
  31602         title: __('Site Settings', 'elementor')
  31603       });
  31604     }
  31605   }, {
  31606     key: "addPanelMenuItem",
  31607     value: function addPanelMenuItem() {
  31608       var menu = elementor.modules.layouts.panel.pages.menu.Menu;
  31609       menu.addItem({
  31610         name: 'global-settings',
  31611         icon: 'eicon-global-settings',
  31612         title: __('Site Settings', 'elementor'),
  31613         type: 'page',
  31614         callback: function callback() {
  31615           $e.run('panel/global/open', {
  31616             route: $e.routes.getHistory('panel').reverse()[0].route
  31617           });
  31618         }
  31619       }, 'style', 'editor-preferences');
  31620       menu.addItem({
  31621         name: 'site-editor',
  31622         icon: 'eicon-theme-builder',
  31623         title: __('Theme Builder', 'elementor'),
  31624         type: 'page',
  31625         callback: function callback() {
  31626           return $e.run('app/open');
  31627         }
  31628       }, 'style', 'editor-preferences');
  31629     }
  31630   }, {
  31631     key: "addHeaderBehavior",
  31632     value: function addHeaderBehavior(behaviors) {
  31633       behaviors.kit = {
  31634         behaviorClass: _panelHeaderBehavior.default
  31635       };
  31636       return behaviors;
  31637     }
  31638   }, {
  31639     key: "addGlobalsBehavior",
  31640     value: function addGlobalsBehavior(behaviors, view) {
  31641       // The view can be a UI control which does not have this method.
  31642       if (!view.isGlobalActive) {
  31643         return;
  31644       }
  31645 
  31646       var isGlobalActive = view.isGlobalActive();
  31647 
  31648       if ('color' === view.options.model.get('type') && isGlobalActive) {
  31649         behaviors.globals = {
  31650           behaviorClass: _globalSelectBehavior.default,
  31651           popoverTitle: __('Global Colors', 'elementor'),
  31652           manageButtonText: __('Manage Global Colors', 'elementor'),
  31653           tooltipText: __('Global Colors help you work smarter. Save a color, and use it anywhere throughout your site. Access and edit your global colors by clicking the Manage button.', 'elementor'),
  31654           newGlobalConfirmTitle: __('Create New Global Color', 'elementor')
  31655         };
  31656       }
  31657 
  31658       if ('popover_toggle' === view.options.model.get('type') && 'typography' === view.options.model.get('groupType') && isGlobalActive) {
  31659         behaviors.globals = {
  31660           behaviorClass: _globalSelectBehavior.default,
  31661           popoverTitle: __('Global Fonts', 'elementor'),
  31662           manageButtonText: __('Manage Global Fonts', 'elementor'),
  31663           tooltipText: __('Global Fonts help you work smarter. Save a Typography, and use it anywhere throughout your site. Access and edit your Global Fonts by clicking the Manage button.', 'elementor'),
  31664           newGlobalConfirmTitle: __('Create New Global Font', 'elementor')
  31665         };
  31666       }
  31667 
  31668       return behaviors;
  31669     }
  31670     /**
  31671      * In case there is a new global color/typography convert current globals to CSS variables.
  31672      */
  31673 
  31674   }, {
  31675     key: "renderGlobalVariables",
  31676     value: function renderGlobalVariables() {
  31677       var _this3 = this;
  31678 
  31679       if (!this.variablesCSS) {
  31680         this.variablesCSS = new _controlsCssParser.default({
  31681           id: 'e-kit-variables',
  31682           settingsModel: new elementorModules.editor.elements.models.BaseSettings({}, {})
  31683         });
  31684       } // The kit document has its own CSS.
  31685 
  31686 
  31687       if ('kit' === elementor.documents.getCurrent().config.type) {
  31688         this.variablesCSS.removeStyleFromDocument();
  31689         return;
  31690       }
  31691 
  31692       $e.data.get('globals/index').then(function (_ref) {
  31693         var data = _ref.data;
  31694 
  31695         if (data.colors) {
  31696           (0, _values.default)(data.colors).forEach(function (item) {
  31697             var controls = elementor.config.kit_config.design_system_controls.colors,
  31698                 values = {
  31699               _id: item.id,
  31700               color: item.value
  31701             };
  31702 
  31703             _this3.variablesCSS.addStyleRules(controls, values, controls, ['{{WRAPPER}}'], ['body']);
  31704           });
  31705         }
  31706 
  31707         if (data.typography) {
  31708           (0, _values.default)(data.typography).forEach(function (item) {
  31709             var controls = elementor.config.kit_config.design_system_controls.typography,
  31710                 values = (0, _objectSpread2.default)({
  31711               _id: item.id
  31712             }, item.value); // Enqueue fonts.
  31713 
  31714             if (item.value.typography_font_family) {
  31715               elementor.helpers.enqueueFont(item.value.typography_font_family);
  31716             }
  31717 
  31718             _this3.variablesCSS.addStyleRules(controls, values, controls, ['{{WRAPPER}}'], ['body']);
  31719           });
  31720         }
  31721 
  31722         _this3.variablesCSS.addStyleToDocument();
  31723       });
  31724     } // Use the Controls CSS Parser to add the global defaults CSS to the page.
  31725 
  31726   }, {
  31727     key: "renderGlobalsDefaultCSS",
  31728     value: function renderGlobalsDefaultCSS() {
  31729       if (!this.loadingTriggers.preview || !this.loadingTriggers.globals) {
  31730         return;
  31731       }
  31732 
  31733       var cssParser = new _controlsCssParser.default({
  31734         id: 'e-global-style'
  31735       }),
  31736           defaultColorsEnabled = elementor.config.globals.defaults_enabled.colors,
  31737           defaultTypographyEnabled = elementor.config.globals.defaults_enabled.typography; // If both default colors and typography are disabled, there is no need to render schemes and default global css.
  31738 
  31739       if (!defaultColorsEnabled && !defaultTypographyEnabled) {
  31740         return;
  31741       }
  31742 
  31743       (0, _values.default)(elementor.widgetsCache).forEach(function (widget) {
  31744         if (!widget.controls) {
  31745           return;
  31746         }
  31747 
  31748         var globalControls = [],
  31749             globalValues = {};
  31750         (0, _values.default)(widget.controls).forEach(function (control) {
  31751           var _control$global, _globalControl$global;
  31752 
  31753           var isColorControl = 'color' === control.type,
  31754               isTypographyControl = 'typography' === control.groupType;
  31755 
  31756           if (isColorControl && !defaultColorsEnabled || isTypographyControl && !defaultTypographyEnabled) {
  31757             return;
  31758           }
  31759 
  31760           var globalControl = control;
  31761 
  31762           if (control.groupType) {
  31763             globalControl = widget.controls[control.groupPrefix + control.groupType];
  31764           }
  31765 
  31766           if ((_control$global = control.global) !== null && _control$global !== void 0 && _control$global.default) {
  31767             globalValues[control.name] = globalControl.global.default;
  31768           }
  31769 
  31770           if ((_globalControl$global = globalControl.global) !== null && _globalControl$global !== void 0 && _globalControl$global.default) {
  31771             globalControls.push(control);
  31772           }
  31773         });
  31774         globalControls.forEach(function (control) {
  31775           cssParser.addControlStyleRules(control, widget.controls, // values
  31776           widget.controls, // controls
  31777           ['{{WRAPPER}}'], ['.elementor-widget-' + widget.widget_type], globalValues);
  31778         });
  31779       });
  31780       cssParser.addStyleToDocument();
  31781     }
  31782   }, {
  31783     key: "onInit",
  31784     value: function onInit() {
  31785       var _this4 = this;
  31786 
  31787       (0, _get2.default)((0, _getPrototypeOf2.default)(Manager.prototype), "onInit", this).call(this);
  31788       elementorCommon.elements.$window.on('elementor:loaded', function () {
  31789         if (elementor.config.initial_document.panel.support_kit) {
  31790           _this4.initialize();
  31791         }
  31792       });
  31793     }
  31794   }]);
  31795   return Manager;
  31796 }(elementorModules.editor.utils.Module);
  31797 
  31798 exports.default = Manager;
  31799 
  31800 /***/ }),
  31801 
  31802 /***/ "../core/kits/assets/js/panel-content.js":
  31803 /*!***********************************************!*\
  31804   !*** ../core/kits/assets/js/panel-content.js ***!
  31805   \***********************************************/
  31806 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31807 
  31808 "use strict";
  31809 
  31810 
  31811 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31812 
  31813 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  31814 
  31815 _Object$defineProperty(exports, "__esModule", {
  31816   value: true
  31817 });
  31818 
  31819 exports.default = void 0;
  31820 
  31821 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  31822 
  31823 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  31824 
  31825 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  31826 
  31827 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  31828 
  31829 var _default = /*#__PURE__*/function (_elementorModules$edi) {
  31830   (0, _inherits2.default)(_default, _elementorModules$edi);
  31831 
  31832   var _super = (0, _createSuper2.default)(_default);
  31833 
  31834   function _default() {
  31835     (0, _classCallCheck2.default)(this, _default);
  31836     return _super.apply(this, arguments);
  31837   }
  31838 
  31839   (0, _createClass2.default)(_default, [{
  31840     key: "id",
  31841     value: function id() {
  31842       return 'elementor-kit-panel-content';
  31843     }
  31844   }, {
  31845     key: "getTemplate",
  31846     value: function getTemplate() {
  31847       return '#tmpl-elementor-kit-panel-content';
  31848     }
  31849   }, {
  31850     key: "childViewContainer",
  31851     value: function childViewContainer() {
  31852       return '#elementor-kit-panel-content-controls';
  31853     }
  31854   }, {
  31855     key: "childViewOptions",
  31856     value: function childViewOptions() {
  31857       var container = this.getOption('container');
  31858       return {
  31859         elementSettingsModel: container.settings,
  31860         container: container
  31861       };
  31862     }
  31863   }]);
  31864   return _default;
  31865 }(elementorModules.editor.views.ControlsStack);
  31866 
  31867 exports.default = _default;
  31868 
  31869 /***/ }),
  31870 
  31871 /***/ "../core/kits/assets/js/panel-header-behavior.js":
  31872 /*!*******************************************************!*\
  31873   !*** ../core/kits/assets/js/panel-header-behavior.js ***!
  31874   \*******************************************************/
  31875 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31876 
  31877 "use strict";
  31878 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  31879 
  31880 
  31881 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31882 
  31883 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  31884 
  31885 _Object$defineProperty(exports, "__esModule", {
  31886   value: true
  31887 });
  31888 
  31889 exports.default = void 0;
  31890 
  31891 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  31892 
  31893 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  31894 
  31895 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  31896 
  31897 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  31898 
  31899 var _panelHeaderButtons = __webpack_require__(/*! ./panel-header-buttons */ "../core/kits/assets/js/panel-header-buttons.js");
  31900 
  31901 var _default = /*#__PURE__*/function (_Marionette$Behavior) {
  31902   (0, _inherits2.default)(_default, _Marionette$Behavior);
  31903 
  31904   var _super = (0, _createSuper2.default)(_default);
  31905 
  31906   function _default() {
  31907     (0, _classCallCheck2.default)(this, _default);
  31908     return _super.apply(this, arguments);
  31909   }
  31910 
  31911   (0, _createClass2.default)(_default, [{
  31912     key: "ui",
  31913     value: function ui() {
  31914       return {
  31915         buttonClose: '#elementor-panel-header-kit-close',
  31916         buttonBack: '#elementor-panel-header-kit-back'
  31917       };
  31918     }
  31919   }, {
  31920     key: "events",
  31921     value: function events() {
  31922       return {
  31923         'click @ui.buttonClose': 'onClickClose',
  31924         'click @ui.buttonBack': 'onClickBack'
  31925       };
  31926     }
  31927   }, {
  31928     key: "onBeforeShow",
  31929     value: function onBeforeShow() {
  31930       this.$el.prepend(elementor.compileTemplate(_panelHeaderButtons.buttonBack, {
  31931         Back: __('Back', 'elementor')
  31932       }));
  31933       this.$el.append(elementor.compileTemplate(_panelHeaderButtons.buttonClose, {
  31934         Close: __('Close', 'elementor')
  31935       }));
  31936     }
  31937   }, {
  31938     key: "onClickClose",
  31939     value: function onClickClose() {
  31940       $e.run('panel/global/close');
  31941     }
  31942   }, {
  31943     key: "onClickBack",
  31944     value: function onClickBack() {
  31945       $e.run('panel/global/back');
  31946     }
  31947   }]);
  31948   return _default;
  31949 }(Marionette.Behavior);
  31950 
  31951 exports.default = _default;
  31952 
  31953 /***/ }),
  31954 
  31955 /***/ "../core/kits/assets/js/panel-header-buttons.js":
  31956 /*!******************************************************!*\
  31957   !*** ../core/kits/assets/js/panel-header-buttons.js ***!
  31958   \******************************************************/
  31959 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31960 
  31961 "use strict";
  31962 
  31963 
  31964 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31965 
  31966 _Object$defineProperty(exports, "__esModule", {
  31967   value: true
  31968 });
  31969 
  31970 exports.buttonClose = exports.buttonBack = void 0;
  31971 var arrowIconClass = 'eicon-chevron-' + (elementorCommon.config.isRTL ? 'right' : 'left');
  31972 var buttonBack = "\n<div id=\"elementor-panel-header-kit-back\" class=\"elementor-header-button\">\n\t<i class=\"elementor-icon ".concat(arrowIconClass, " tooltip-target\" aria-hidden=\"true\" data-tooltip=\"{{ Back }}\"></i>\n\t<span class=\"elementor-screen-only\">{{ Back }}</span>\n</div>\n");
  31973 exports.buttonBack = buttonBack;
  31974 var buttonClose = "\n<div id=\"elementor-panel-header-kit-close\" class=\"elementor-header-button\">\n\t<i class=\"elementor-icon eicon-close tooltip-target\" aria-hidden=\"true\" data-tooltip=\"{{ Close }}\"></i>\n\t<span class=\"elementor-screen-only\">{{ Close }}</span>\n</div>\n";
  31975 exports.buttonClose = buttonClose;
  31976 
  31977 /***/ }),
  31978 
  31979 /***/ "../core/kits/assets/js/panel-menu.js":
  31980 /*!********************************************!*\
  31981   !*** ../core/kits/assets/js/panel-menu.js ***!
  31982   \********************************************/
  31983 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  31984 
  31985 "use strict";
  31986 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  31987 
  31988 
  31989 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  31990 
  31991 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  31992 
  31993 _Object$defineProperty(exports, "__esModule", {
  31994   value: true
  31995 });
  31996 
  31997 exports.default = void 0;
  31998 
  31999 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  32000 
  32001 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  32002 
  32003 __webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");
  32004 
  32005 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  32006 
  32007 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  32008 
  32009 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  32010 
  32011 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  32012 
  32013 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  32014 
  32015 var _base = _interopRequireDefault(__webpack_require__(/*! elementor-panel/pages/menu/base */ "../assets/dev/js/editor/regions/panel/pages/menu/base.js"));
  32016 
  32017 var PanelMenu = /*#__PURE__*/function (_MenuPageView) {
  32018   (0, _inherits2.default)(PanelMenu, _MenuPageView);
  32019 
  32020   var _super = (0, _createSuper2.default)(PanelMenu);
  32021 
  32022   function PanelMenu() {
  32023     (0, _classCallCheck2.default)(this, PanelMenu);
  32024     return _super.apply(this, arguments);
  32025   }
  32026 
  32027   (0, _createClass2.default)(PanelMenu, [{
  32028     key: "initialize",
  32029     value: function initialize() {
  32030       this.collection = PanelMenu.getGroups();
  32031     }
  32032   }]);
  32033   return PanelMenu;
  32034 }(_base.default);
  32035 
  32036 exports.default = PanelMenu;
  32037 PanelMenu.groups = null;
  32038 
  32039 PanelMenu.createGroupItems = function (groupName) {
  32040   var tabs = $e.components.get('panel/global').getTabs(),
  32041       groupTabs = (0, _entries.default)(tabs).filter(function (_ref) {
  32042     var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  32043         tabId = _ref2[0],
  32044         tabConfig = _ref2[1];
  32045 
  32046     return groupName === tabConfig.group;
  32047   });
  32048   return groupTabs.map(function (_ref3) {
  32049     var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
  32050         tabId = _ref4[0],
  32051         tabConfig = _ref4[1];
  32052 
  32053     return {
  32054       name: tabId,
  32055       icon: tabConfig.icon,
  32056       title: tabConfig.title,
  32057       callback: function callback() {
  32058         return $e.route('panel/global/' + tabId);
  32059       }
  32060     };
  32061   });
  32062 };
  32063 
  32064 PanelMenu.initGroups = function () {
  32065   var settingsItems = PanelMenu.createGroupItems('settings'),
  32066       additionalSettingsProps = {
  32067     name: 'settings-additional-settings',
  32068     icon: 'eicon-tools',
  32069     title: __('Additional Settings', 'elementor'),
  32070     type: 'link',
  32071     link: elementor.config.admin_settings_url,
  32072     newTab: true
  32073   };
  32074   settingsItems.push(additionalSettingsProps);
  32075   PanelMenu.groups = new Backbone.Collection([{
  32076     name: 'design_system',
  32077     title: __('Design System', 'elementor'),
  32078     items: PanelMenu.createGroupItems('global')
  32079   }, {
  32080     name: 'theme_style',
  32081     title: __('Theme Style', 'elementor'),
  32082     items: PanelMenu.createGroupItems('theme-style')
  32083   }, {
  32084     name: 'settings',
  32085     title: __('Settings', 'elementor'),
  32086     items: settingsItems
  32087   }]);
  32088 };
  32089 
  32090 PanelMenu.getGroups = function () {
  32091   if (!PanelMenu.groups) {
  32092     PanelMenu.initGroups();
  32093   }
  32094 
  32095   return PanelMenu.groups;
  32096 };
  32097 
  32098 /***/ }),
  32099 
  32100 /***/ "../core/kits/assets/js/panel.js":
  32101 /*!***************************************!*\
  32102   !*** ../core/kits/assets/js/panel.js ***!
  32103   \***************************************/
  32104 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  32105 
  32106 "use strict";
  32107 
  32108 
  32109 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  32110 
  32111 var _panelContent = _interopRequireDefault(__webpack_require__(/*! ./panel-content */ "../core/kits/assets/js/panel-content.js"));
  32112 
  32113 module.exports = Marionette.LayoutView.extend({
  32114   id: 'elementor-kit-panel',
  32115   template: '#tmpl-elementor-kit-panel',
  32116   regions: {
  32117     content: '#elementor-kit__panel-content__wrapper'
  32118   },
  32119   onBeforeShow: function onBeforeShow() {
  32120     var container = elementor.documents.getCurrent().container,
  32121         options = {
  32122       container: container,
  32123       model: container.model,
  32124       controls: container.settings.controls,
  32125       name: 'kit'
  32126     };
  32127     this.showChildView('content', new _panelContent.default(options));
  32128   }
  32129 });
  32130 
  32131 /***/ }),
  32132 
  32133 /***/ "../core/kits/assets/js/repeater-row.js":
  32134 /*!**********************************************!*\
  32135   !*** ../core/kits/assets/js/repeater-row.js ***!
  32136   \**********************************************/
  32137 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  32138 
  32139 "use strict";
  32140 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  32141 /* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
  32142 
  32143 
  32144 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  32145 
  32146 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  32147 
  32148 _Object$defineProperty(exports, "__esModule", {
  32149   value: true
  32150 });
  32151 
  32152 exports.default = void 0;
  32153 
  32154 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  32155 
  32156 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  32157 
  32158 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  32159 
  32160 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  32161 
  32162 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  32163 
  32164 var _repeaterRow = _interopRequireDefault(__webpack_require__(/*! ../../../../assets/dev/js/editor/controls/repeater-row */ "../assets/dev/js/editor/controls/repeater-row.js"));
  32165 
  32166 var _default = /*#__PURE__*/function (_RepeaterRow) {
  32167   (0, _inherits2.default)(_default, _RepeaterRow);
  32168 
  32169   var _super = (0, _createSuper2.default)(_default);
  32170 
  32171   function _default() {
  32172     (0, _classCallCheck2.default)(this, _default);
  32173     return _super.apply(this, arguments);
  32174   }
  32175 
  32176   (0, _createClass2.default)(_default, [{
  32177     key: "getTemplate",
  32178     value: function getTemplate() {
  32179       return '#tmpl-elementor-global-style-repeater-row';
  32180     }
  32181   }, {
  32182     key: "events",
  32183     value: function events() {
  32184       return {
  32185         'click @ui.removeButton': 'onRemoveButtonClick'
  32186       };
  32187     }
  32188   }, {
  32189     key: "updateColorValue",
  32190     value: function updateColorValue() {
  32191       this.$colorValue.text(this.model.get('color'));
  32192     }
  32193   }, {
  32194     key: "getDisabledRemoveButtons",
  32195     value: function getDisabledRemoveButtons() {
  32196       if (!this.ui.disabledRemoveButtons) {
  32197         this.ui.disabledRemoveButtons = this.$el.find('.elementor-repeater-tool-remove--disabled');
  32198       }
  32199 
  32200       return this.ui.disabledRemoveButtons;
  32201     }
  32202   }, {
  32203     key: "getRemoveButton",
  32204     value: function getRemoveButton() {
  32205       return this.ui.removeButton.add(this.getDisabledRemoveButtons());
  32206     }
  32207   }, {
  32208     key: "triggers",
  32209     value: function triggers() {
  32210       return {};
  32211     }
  32212   }, {
  32213     key: "onChildviewRender",
  32214     value: function onChildviewRender(childView) {
  32215       var isColor = 'color' === childView.model.get('type'),
  32216           isPopoverToggle = 'popover_toggle' === childView.model.get('type');
  32217       var globalType = '',
  32218           globalTypeTranslated = '';
  32219 
  32220       if (isColor) {
  32221         this.$colorValue = jQuery('<div>', {
  32222           class: 'e-global-colors__color-value elementor-control-unit-3'
  32223         });
  32224         childView.$el.find('.elementor-control-input-wrapper').prepend(this.getRemoveButton(), this.$colorValue);
  32225         globalType = 'color';
  32226         globalTypeTranslated = __('Color', 'elementor');
  32227         this.updateColorValue();
  32228       }
  32229 
  32230       if (isPopoverToggle) {
  32231         childView.$el.find('.elementor-control-input-wrapper').append(this.getRemoveButton());
  32232         globalType = 'font';
  32233         globalTypeTranslated = __('Font', 'elementor');
  32234       }
  32235 
  32236       if (isColor || isPopoverToggle) {
  32237         var removeButtons = this.getDisabledRemoveButtons();
  32238         this.ui.removeButton.data('e-global-type', globalType);
  32239         this.ui.removeButton.tipsy({
  32240           /* translators: %s: Font/Color. */
  32241           title: function title() {
  32242             return sprintf(__('Delete Global %s', 'elementor'), globalTypeTranslated);
  32243           },
  32244           gravity: function gravity() {
  32245             return 's';
  32246           }
  32247         });
  32248         removeButtons.tipsy({
  32249           /* translators: %s: Font/Color. */
  32250           title: function title() {
  32251             return sprintf(__('System %s can\'t be deleted', 'elementor'), globalTypeTranslated);
  32252           },
  32253           gravity: function gravity() {
  32254             return 's';
  32255           }
  32256         });
  32257       }
  32258     }
  32259   }, {
  32260     key: "onModelChange",
  32261     value: function onModelChange(model) {
  32262       if (undefined !== model.changed.color) {
  32263         this.updateColorValue();
  32264       }
  32265     }
  32266   }, {
  32267     key: "onRemoveButtonClick",
  32268     value: function onRemoveButtonClick() {
  32269       var _this = this;
  32270 
  32271       var globalType = this.ui.removeButton.data('e-global-type'),
  32272           globalTypeTranslatedCapitalized = 'font' === globalType ? __('Font', 'elementor') : __('Color', 'elementor'),
  32273           globalTypeTranslatedLowercase = 'font' === globalType ? __('font', 'elementor') : __('color', 'elementor'),
  32274 
  32275       /* translators: First %s: Font/Color. Second %s: typography/color */
  32276       translatedMessage = sprintf(__('You\'re about to delete a Global %s. Note that if it\'s being used anywhere on your site, it will inherit a default %s.', 'elementor'), globalTypeTranslatedCapitalized, globalTypeTranslatedLowercase);
  32277       this.confirmDeleteModal = elementorCommon.dialogsManager.createWidget('confirm', {
  32278         className: 'e-global__confirm-delete',
  32279 
  32280         /* translators: %s: Font/Color. */
  32281         headerMessage: sprintf(__('Delete Global %s', 'elementor'), globalTypeTranslatedCapitalized),
  32282         message: '<i class="eicon-info-circle"></i> ' + translatedMessage,
  32283         strings: {
  32284           confirm: __('Delete', 'elementor'),
  32285           cancel: __('Cancel', 'elementor')
  32286         },
  32287         hide: {
  32288           onBackgroundClick: false
  32289         },
  32290         onConfirm: function onConfirm() {
  32291           _this.trigger('click:remove');
  32292         }
  32293       });
  32294       this.confirmDeleteModal.show();
  32295     }
  32296   }]);
  32297   return _default;
  32298 }(_repeaterRow.default);
  32299 
  32300 exports.default = _default;
  32301 
  32302 /***/ }),
  32303 
  32304 /***/ "../core/kits/assets/js/repeater.js":
  32305 /*!******************************************!*\
  32306   !*** ../core/kits/assets/js/repeater.js ***!
  32307   \******************************************/
  32308 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  32309 
  32310 "use strict";
  32311 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  32312 
  32313 
  32314 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  32315 
  32316 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  32317 
  32318 _Object$defineProperty(exports, "__esModule", {
  32319   value: true
  32320 });
  32321 
  32322 exports.default = void 0;
  32323 
  32324 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  32325 
  32326 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  32327 
  32328 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  32329 
  32330 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  32331 
  32332 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  32333 
  32334 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  32335 
  32336 var _repeater = _interopRequireDefault(__webpack_require__(/*! ../../../../assets/dev/js/editor/controls/repeater */ "../assets/dev/js/editor/controls/repeater.js"));
  32337 
  32338 var _repeaterRow = _interopRequireDefault(__webpack_require__(/*! ./repeater-row */ "../core/kits/assets/js/repeater-row.js"));
  32339 
  32340 var _default = /*#__PURE__*/function (_Repeater) {
  32341   (0, _inherits2.default)(_default, _Repeater);
  32342 
  32343   var _super = (0, _createSuper2.default)(_default);
  32344 
  32345   function _default() {
  32346     var _this;
  32347 
  32348     (0, _classCallCheck2.default)(this, _default);
  32349 
  32350     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  32351       args[_key] = arguments[_key];
  32352     }
  32353 
  32354     _this = _super.call.apply(_super, [this].concat(args));
  32355     _this.childView = _repeaterRow.default;
  32356     return _this;
  32357   }
  32358 
  32359   (0, _createClass2.default)(_default, [{
  32360     key: "templateHelpers",
  32361     value: function templateHelpers() {
  32362       var templateHelpers = (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "templateHelpers", this).call(this);
  32363       templateHelpers.addButtonText = 'custom_colors' === this.model.get('name') ? __('Add Color', 'elementor') : __('Add Style', 'elementor');
  32364       return templateHelpers;
  32365     }
  32366   }, {
  32367     key: "getDefaults",
  32368     value: function getDefaults() {
  32369       var defaults = (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "getDefaults", this).call(this);
  32370       defaults.title = "".concat(__('New Item', 'elementor'), " #").concat(this.children.length + 1);
  32371       return defaults;
  32372     }
  32373   }]);
  32374   return _default;
  32375 }(_repeater.default);
  32376 
  32377 exports.default = _default;
  32378 
  32379 /***/ }),
  32380 
  32381 /***/ "../modules/dev-tools/assets/js/editor/dev-tools.js":
  32382 /*!**********************************************************!*\
  32383   !*** ../modules/dev-tools/assets/js/editor/dev-tools.js ***!
  32384   \**********************************************************/
  32385 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  32386 
  32387 "use strict";
  32388 
  32389 
  32390 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  32391 
  32392 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  32393 
  32394 _Object$defineProperty(exports, "__esModule", {
  32395   value: true
  32396 });
  32397 
  32398 exports.default = void 0;
  32399 
  32400 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  32401 
  32402 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));
  32403 
  32404 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  32405 
  32406 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  32407 
  32408 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  32409 
  32410 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  32411 
  32412 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  32413 
  32414 var _default = /*#__PURE__*/function (_elementorModules$edi) {
  32415   (0, _inherits2.default)(_default, _elementorModules$edi);
  32416 
  32417   var _super = (0, _createSuper2.default)(_default);
  32418 
  32419   function _default() {
  32420     (0, _classCallCheck2.default)(this, _default);
  32421     return _super.apply(this, arguments);
  32422   }
  32423 
  32424   (0, _createClass2.default)(_default, [{
  32425     key: "onElementorLoaded",
  32426     value: function onElementorLoaded() {
  32427       this.notifyDeprecated();
  32428     }
  32429   }, {
  32430     key: "notifyDeprecated",
  32431     value: function notifyDeprecated() {
  32432       // eslint-disable-next-line camelcase
  32433       var notices = elementor.config.dev_tools.deprecation.soft_notices;
  32434       (0, _entries.default)(notices).forEach(function (_ref) {
  32435         var _elementorCommon$help;
  32436 
  32437         var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
  32438             key = _ref2[0],
  32439             notice = _ref2[1];
  32440 
  32441         (_elementorCommon$help = elementorCommon.helpers).softDeprecated.apply(_elementorCommon$help, [key].concat((0, _toConsumableArray2.default)(notice)));
  32442       });
  32443     }
  32444   }]);
  32445   return _default;
  32446 }(elementorModules.editor.utils.Module);
  32447 
  32448 exports.default = _default;
  32449 
  32450 /***/ }),
  32451 
  32452 /***/ "../modules/elements-color-picker/assets/js/editor/commands/apply.js":
  32453 /*!***************************************************************************!*\
  32454   !*** ../modules/elements-color-picker/assets/js/editor/commands/apply.js ***!
  32455   \***************************************************************************/
  32456 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  32457 
  32458 "use strict";
  32459 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  32460 
  32461 
  32462 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  32463 
  32464 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  32465 
  32466 _Object$defineProperty(exports, "__esModule", {
  32467   value: true
  32468 });
  32469 
  32470 exports.Apply = void 0;
  32471 
  32472 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  32473 
  32474 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  32475 
  32476 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  32477 
  32478 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  32479 
  32480 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  32481 
  32482 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  32483 
  32484 /**
  32485  * Apply & Save the selected color on click.
  32486  */
  32487 var Apply = /*#__PURE__*/function (_CommandBase) {
  32488   (0, _inherits2.default)(Apply, _CommandBase);
  32489 
  32490   var _super = (0, _createSuper2.default)(Apply);
  32491 
  32492   function Apply() {
  32493     (0, _classCallCheck2.default)(this, Apply);
  32494     return _super.apply(this, arguments);
  32495   }
  32496 
  32497   (0, _createClass2.default)(Apply, [{
  32498     key: "validateArgs",
  32499     value:
  32500     /**
  32501      * Validate the command arguments.
  32502      *
  32503      * @param {object} args
  32504      */
  32505     function validateArgs(args) {
  32506       this.requireArgumentType('value', 'string');
  32507     }
  32508     /**
  32509      * Execute the color apply command.
  32510      *
  32511      * @param {string} value The new color to apply.
  32512      * @param {HTMLElement} trigger The element which triggered the Apply command. Used to show `Selected` text & listen to `mouseleave`.
  32513      *
  32514      * @returns {void}
  32515      */
  32516 
  32517   }, {
  32518     key: "apply",
  32519     value: function apply(_ref) {
  32520       var value = _ref.value,
  32521           trigger = _ref.trigger;
  32522       this.setColor(value);
  32523 
  32524       if (trigger) {
  32525         var prevText = trigger.swatch.dataset.text; // Show `Selected!` message.
  32526 
  32527         trigger.swatch.dataset.text = __('Selected!', 'elementor'); // Hide message after a second.
  32528 
  32529         setTimeout(function () {
  32530           trigger.swatch.dataset.text = prevText;
  32531         }, 1000); // End picking only after the user leaves the swatch container.
  32532 
  32533         trigger.palette.addEventListener('mouseleave', function handler(e) {
  32534           e.currentTarget.removeEventListener('mouseleave', handler);
  32535           $e.run('elements-color-picker/end');
  32536         });
  32537       } else {
  32538         $e.run('elements-color-picker/end');
  32539       }
  32540     }
  32541     /**
  32542      * Set a color to the current selected element.
  32543      *
  32544      * @param color
  32545      *
  32546      * @returns {void}
  32547      */
  32548 
  32549   }, {
  32550     key: "setColor",
  32551     value: function setColor(color) {
  32552       $e.run('document/elements/settings', {
  32553         container: this.component.currentPicker.container,
  32554         settings: (0, _defineProperty2.default)({}, this.component.currentPicker.control, color),
  32555         options: {
  32556           external: true
  32557         }
  32558       });
  32559       this.component.currentPicker.initialColor = color;
  32560     }
  32561   }]);
  32562   return Apply;
  32563 }(_commandBase.default);
  32564 
  32565 exports.Apply = Apply;
  32566 
  32567 /***/ }),
  32568 
  32569 /***/ "../modules/elements-color-picker/assets/js/editor/commands/end.js":
  32570 /*!*************************************************************************!*\
  32571   !*** ../modules/elements-color-picker/assets/js/editor/commands/end.js ***!
  32572   \*************************************************************************/
  32573 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  32574 
  32575 "use strict";
  32576 
  32577 
  32578 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  32579 
  32580 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  32581 
  32582 _Object$defineProperty(exports, "__esModule", {
  32583   value: true
  32584 });
  32585 
  32586 exports.End = void 0;
  32587 
  32588 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  32589 
  32590 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  32591 
  32592 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  32593 
  32594 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  32595 
  32596 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  32597 
  32598 var _utils = __webpack_require__(/*! elementor/modules/elements-color-picker/assets/js/editor/utils */ "../modules/elements-color-picker/assets/js/editor/utils.js");
  32599 
  32600 /**
  32601  * End the color picking process and return to the normal editor state.
  32602  */
  32603 var End = /*#__PURE__*/function (_CommandBase) {
  32604   (0, _inherits2.default)(End, _CommandBase);
  32605 
  32606   var _super = (0, _createSuper2.default)(End);
  32607 
  32608   function End() {
  32609     (0, _classCallCheck2.default)(this, End);
  32610     return _super.apply(this, arguments);
  32611   }
  32612 
  32613   (0, _createClass2.default)(End, [{
  32614     key: "apply",
  32615     value:
  32616     /**
  32617      * Initialize the command.
  32618      *
  32619      * @returns {void}
  32620      */
  32621     function apply() {
  32622       var _this$component$curre;
  32623 
  32624       // In-Activate the component since the default behavior will in-activate it only on route change,
  32625       // but this component doesn't have any routes.
  32626       this.component.inactivate(); // Remove all elements & event listeners.
  32627 
  32628       elementor.$previewContents[0].querySelector('body').classList.remove('elementor-editor__ui-state__color-picker');
  32629       elementor.$previewContents[0].querySelectorAll('.e-element-color-picker').forEach(function (picker) {
  32630         jQuery(picker).tipsy('hide');
  32631         picker.remove();
  32632       });
  32633       var elementorElements = elementor.$previewContents[0].querySelectorAll('.elementor-element');
  32634       (0, _utils.removeNamespaceHandler)(elementorElements, 'click.color-picker');
  32635       (0, _utils.removeNamespaceHandler)(elementor.$previewWrapper[0], 'mouseleave.color-picker'); // Set the picking process trigger to inactive mode.
  32636       // eslint-disable-next-line no-unused-expressions
  32637 
  32638       (_this$component$curre = this.component.currentPicker.trigger) === null || _this$component$curre === void 0 ? void 0 : _this$component$curre.classList.remove('e-control-tool-disabled'); // Reset the current picker.
  32639 
  32640       this.component.resetPicker(); // Return to edit mode.
  32641 
  32642       elementor.changeEditMode('edit');
  32643     }
  32644   }]);
  32645   return End;
  32646 }(_commandBase.default);
  32647 
  32648 exports.End = End;
  32649 
  32650 /***/ }),
  32651 
  32652 /***/ "../modules/elements-color-picker/assets/js/editor/commands/enter-preview.js":
  32653 /*!***********************************************************************************!*\
  32654   !*** ../modules/elements-color-picker/assets/js/editor/commands/enter-preview.js ***!
  32655   \***********************************************************************************/
  32656 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  32657 
  32658 "use strict";
  32659 
  32660 
  32661 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  32662 
  32663 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  32664 
  32665 _Object$defineProperty(exports, "__esModule", {
  32666   value: true
  32667 });
  32668 
  32669 exports.EnterPreview = void 0;
  32670 
  32671 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  32672 
  32673 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  32674 
  32675 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  32676 
  32677 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  32678 
  32679 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  32680 
  32681 /**
  32682  * Show the user a UI preview of the currently hovered color.
  32683  */
  32684 var EnterPreview = /*#__PURE__*/function (_CommandBase) {
  32685   (0, _inherits2.default)(EnterPreview, _CommandBase);
  32686 
  32687   var _super = (0, _createSuper2.default)(EnterPreview);
  32688 
  32689   function EnterPreview() {
  32690     (0, _classCallCheck2.default)(this, EnterPreview);
  32691     return _super.apply(this, arguments);
  32692   }
  32693 
  32694   (0, _createClass2.default)(EnterPreview, [{
  32695     key: "apply",
  32696     value:
  32697     /**
  32698      * Initialize the command.
  32699      *
  32700      * @param {object} args
  32701      *
  32702      * @returns {void}
  32703      */
  32704     function apply(args) {
  32705       this.component.renderUI(args.value);
  32706     }
  32707   }]);
  32708   return EnterPreview;
  32709 }(_commandBase.default);
  32710 
  32711 exports.EnterPreview = EnterPreview;
  32712 
  32713 /***/ }),
  32714 
  32715 /***/ "../modules/elements-color-picker/assets/js/editor/commands/exit-preview.js":
  32716 /*!**********************************************************************************!*\
  32717   !*** ../modules/elements-color-picker/assets/js/editor/commands/exit-preview.js ***!
  32718   \**********************************************************************************/
  32719 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  32720 
  32721 "use strict";
  32722 
  32723 
  32724 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  32725 
  32726 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  32727 
  32728 _Object$defineProperty(exports, "__esModule", {
  32729   value: true
  32730 });
  32731 
  32732 exports.ExitPreview = void 0;
  32733 
  32734 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  32735 
  32736 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  32737 
  32738 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  32739 
  32740 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  32741 
  32742 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  32743 
  32744 /**
  32745  * Exit the UI preview mode on mouseout.
  32746  */
  32747 var ExitPreview = /*#__PURE__*/function (_CommandBase) {
  32748   (0, _inherits2.default)(ExitPreview, _CommandBase);
  32749 
  32750   var _super = (0, _createSuper2.default)(ExitPreview);
  32751 
  32752   function ExitPreview() {
  32753     (0, _classCallCheck2.default)(this, ExitPreview);
  32754     return _super.apply(this, arguments);
  32755   }
  32756 
  32757   (0, _createClass2.default)(ExitPreview, [{
  32758     key: "apply",
  32759     value:
  32760     /**
  32761      * Initialize the command.
  32762      *
  32763      * @param {object} args
  32764      *
  32765      * @returns {void}
  32766      */
  32767     function apply(args) {
  32768       var initialColor = this.component.currentPicker.initialColor;
  32769 
  32770       if (null === initialColor) {
  32771         return;
  32772       }
  32773 
  32774       this.component.renderUI(initialColor);
  32775     }
  32776   }]);
  32777   return ExitPreview;
  32778 }(_commandBase.default);
  32779 
  32780 exports.ExitPreview = ExitPreview;
  32781 
  32782 /***/ }),
  32783 
  32784 /***/ "../modules/elements-color-picker/assets/js/editor/commands/index.js":
  32785 /*!***************************************************************************!*\
  32786   !*** ../modules/elements-color-picker/assets/js/editor/commands/index.js ***!
  32787   \***************************************************************************/
  32788 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  32789 
  32790 "use strict";
  32791 
  32792 
  32793 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  32794 
  32795 _Object$defineProperty(exports, "__esModule", {
  32796   value: true
  32797 });
  32798 
  32799 _Object$defineProperty(exports, "Apply", {
  32800   enumerable: true,
  32801   get: function get() {
  32802     return _apply.Apply;
  32803   }
  32804 });
  32805 
  32806 _Object$defineProperty(exports, "End", {
  32807   enumerable: true,
  32808   get: function get() {
  32809     return _end.End;
  32810   }
  32811 });
  32812 
  32813 _Object$defineProperty(exports, "EnterPreview", {
  32814   enumerable: true,
  32815   get: function get() {
  32816     return _enterPreview.EnterPreview;
  32817   }
  32818 });
  32819 
  32820 _Object$defineProperty(exports, "ExitPreview", {
  32821   enumerable: true,
  32822   get: function get() {
  32823     return _exitPreview.ExitPreview;
  32824   }
  32825 });
  32826 
  32827 _Object$defineProperty(exports, "ShowSwatches", {
  32828   enumerable: true,
  32829   get: function get() {
  32830     return _showSwatches.ShowSwatches;
  32831   }
  32832 });
  32833 
  32834 _Object$defineProperty(exports, "Start", {
  32835   enumerable: true,
  32836   get: function get() {
  32837     return _start.Start;
  32838   }
  32839 });
  32840 
  32841 var _apply = __webpack_require__(/*! ./apply */ "../modules/elements-color-picker/assets/js/editor/commands/apply.js");
  32842 
  32843 var _end = __webpack_require__(/*! ./end */ "../modules/elements-color-picker/assets/js/editor/commands/end.js");
  32844 
  32845 var _enterPreview = __webpack_require__(/*! ./enter-preview */ "../modules/elements-color-picker/assets/js/editor/commands/enter-preview.js");
  32846 
  32847 var _exitPreview = __webpack_require__(/*! ./exit-preview */ "../modules/elements-color-picker/assets/js/editor/commands/exit-preview.js");
  32848 
  32849 var _showSwatches = __webpack_require__(/*! ./show-swatches */ "../modules/elements-color-picker/assets/js/editor/commands/show-swatches.js");
  32850 
  32851 var _start = __webpack_require__(/*! ./start */ "../modules/elements-color-picker/assets/js/editor/commands/start.js");
  32852 
  32853 /***/ }),
  32854 
  32855 /***/ "../modules/elements-color-picker/assets/js/editor/commands/show-swatches.js":
  32856 /*!***********************************************************************************!*\
  32857   !*** ../modules/elements-color-picker/assets/js/editor/commands/show-swatches.js ***!
  32858   \***********************************************************************************/
  32859 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  32860 
  32861 "use strict";
  32862 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  32863 
  32864 
  32865 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  32866 
  32867 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  32868 
  32869 _Object$defineProperty(exports, "__esModule", {
  32870   value: true
  32871 });
  32872 
  32873 exports.ShowSwatches = void 0;
  32874 
  32875 var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));
  32876 
  32877 var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));
  32878 
  32879 var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));
  32880 
  32881 var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));
  32882 
  32883 __webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");
  32884 
  32885 __webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");
  32886 
  32887 __webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");
  32888 
  32889 __webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");
  32890 
  32891 __webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");
  32892 
  32893 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  32894 
  32895 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  32896 
  32897 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  32898 
  32899 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  32900 
  32901 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  32902 
  32903 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  32904 
  32905 var _utils = __webpack_require__(/*! elementor/core/app/assets/js/utils/utils */ "../core/app/assets/js/utils/utils.js");
  32906 
  32907 /**
  32908  * Show a palette of color swatches on click.
  32909  */
  32910 var ShowSwatches = /*#__PURE__*/function (_CommandBase) {
  32911   (0, _inherits2.default)(ShowSwatches, _CommandBase);
  32912 
  32913   var _super = (0, _createSuper2.default)(ShowSwatches);
  32914 
  32915   /**
  32916    * Initialize the command.
  32917    *
  32918    * @param {object} args
  32919    *
  32920    * @returns {void}
  32921    */
  32922   function ShowSwatches(args) {
  32923     var _this;
  32924 
  32925     (0, _classCallCheck2.default)(this, ShowSwatches);
  32926     _this = _super.call(this, args);
  32927     _this.colors = {};
  32928     _this.classes = {
  32929       picker: 'e-element-color-picker',
  32930       tooltip: 'e-element-color-picker__tooltip',
  32931       swatch: 'e-element-color-picker__swatch',
  32932       hidden: 'e-picker-hidden'
  32933     };
  32934     _this.selectors = {
  32935       picker: ".".concat(_this.classes.picker),
  32936       tooltip: ".".concat(_this.classes.tooltip)
  32937     };
  32938     _this.container = null;
  32939     _this.backgroundImages = [];
  32940     return _this;
  32941   }
  32942   /**
  32943    * Validate the command arguments.
  32944    *
  32945    * @param {Object} args
  32946    *
  32947    * @returns {void}
  32948    */
  32949 
  32950 
  32951   (0, _createClass2.default)(ShowSwatches, [{
  32952     key: "validateArgs",
  32953     value: function validateArgs(args) {
  32954       this.requireArgument('event', args);
  32955     }
  32956     /**
  32957      * Execute the command.
  32958      *
  32959      * @param {Object} args
  32960      *
  32961      * @returns {void}
  32962      */
  32963 
  32964   }, {
  32965     key: "apply",
  32966     value: function apply(args) {
  32967       var _this2 = this;
  32968 
  32969       var e = args.event;
  32970       var id = e.currentTarget.dataset.id; // Calculate swatch location.
  32971 
  32972       var rect = e.currentTarget.getBoundingClientRect(),
  32973           x = Math.round(e.clientX - rect.left) + 'px',
  32974           y = Math.round(e.clientY - rect.top) + 'px';
  32975       this.container = elementor.getContainer(id);
  32976       var activePicker = elementor.$previewContents[0].querySelector(this.selectors.picker); // If there is a picker already, remove it.
  32977 
  32978       if (activePicker) {
  32979         this.removeTooltip(activePicker);
  32980         activePicker.remove();
  32981       }
  32982 
  32983       e.stopPropagation(); // Hack to wait for the images to load before picking the colors from it
  32984       // when extracting colors from a background image control.
  32985       // TODO: Find a better solution.
  32986 
  32987       setTimeout(function () {
  32988         var isImage = 'img' === e.target.tagName.toLowerCase();
  32989 
  32990         if (isImage) {
  32991           _this2.extractColorsFromImage(e.target);
  32992         } else {
  32993           // Colors from the parent container.
  32994           _this2.extractColorsFromSettings(); // Colors from repeaters.
  32995 
  32996 
  32997           _this2.extractColorsFromRepeaters();
  32998 
  32999           _this2.extractColorsFromImages();
  33000         }
  33001 
  33002         _this2.initSwatch(x, y);
  33003       }, 100);
  33004     }
  33005     /**
  33006      * Extract colors from color controls of the current selected element.
  33007      *
  33008      * @param {Container} container - A container to extract colors from its settings.
  33009      *
  33010      * @returns {void}
  33011      */
  33012 
  33013   }, {
  33014     key: "extractColorsFromSettings",
  33015     value: function extractColorsFromSettings() {
  33016       var _this3 = this;
  33017 
  33018       var container = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.container;
  33019       // Iterate over the widget controls.
  33020       (0, _keys.default)(container.settings.attributes).map(function (control) {
  33021         var _container$controls$c;
  33022 
  33023         // Limit colors count.
  33024         if (_this3.reachedColorsLimit()) {
  33025           return;
  33026         }
  33027 
  33028         if (!(control in container.controls)) {
  33029           return;
  33030         }
  33031 
  33032         var isColor = 'color' === ((_container$controls$c = container.controls[control]) === null || _container$controls$c === void 0 ? void 0 : _container$controls$c.type);
  33033         var isBgImage = control.includes('background_image'); // Determine if the current control is active.
  33034 
  33035         var isActive = function isActive() {
  33036           return elementor.helpers.isActiveControl(container.controls[control], container.settings.attributes);
  33037         }; // Throw non-color and non-background-image controls.
  33038 
  33039 
  33040         if (!isColor && !isBgImage) {
  33041           return;
  33042         } // Throw non-active controls.
  33043 
  33044 
  33045         if (!isActive()) {
  33046           return;
  33047         } // Handle background images.
  33048 
  33049 
  33050         if (isBgImage) {
  33051           _this3.addTempBackgroundImage(container.getSetting(control));
  33052 
  33053           return;
  33054         }
  33055 
  33056         var value = container.getSetting(control);
  33057         var globalValue = container.globals.get(control); // Extract global value if present.
  33058 
  33059         if (globalValue) {
  33060           var matches = globalValue.match(/id=(.+)/i); // Build the global color CSS variable & resolve it to a HEX value.
  33061           // It's used instead of `$e.data.get( globalValue )` in order to avoid async/await hell.
  33062 
  33063           if (matches) {
  33064             var cssVar = "--e-global-color-".concat(matches[1]);
  33065             value = getComputedStyle(container.view.$el[0]).getPropertyValue(cssVar);
  33066           }
  33067         }
  33068 
  33069         if (value && !(0, _values.default)(_this3.colors).includes(value)) {
  33070           // Create a unique index based on the container ID and the control name.
  33071           // Used in order to avoid key overriding when used with repeaters (which share the same controls names).
  33072           _this3.colors["".concat(container.id, " - ").concat(control)] = value;
  33073         }
  33074       });
  33075     }
  33076     /**
  33077      * Extract colors from repeater controls.
  33078      *
  33079      * @returns {void}
  33080      */
  33081 
  33082   }, {
  33083     key: "extractColorsFromRepeaters",
  33084     value: function extractColorsFromRepeaters() {
  33085       var _this4 = this;
  33086 
  33087       // Iterate over repeaters.
  33088       (0, _values.default)(this.container.repeaters).forEach(function (repeater) {
  33089         // Iterate over each repeater items.
  33090         repeater.children.forEach(function (child) {
  33091           _this4.extractColorsFromSettings(child);
  33092         });
  33093       });
  33094     }
  33095     /**
  33096      * Create a temporary image element in order to extract colors from it using ColorThief.
  33097      * Used with background images from background controls.
  33098      *
  33099      * @param {Object} setting - A settings object from URL control.
  33100      * @param {string} setting.url
  33101      *
  33102      * @returns {void}
  33103      */
  33104 
  33105   }, {
  33106     key: "addTempBackgroundImage",
  33107     value: function addTempBackgroundImage(_ref) {
  33108       var url = _ref.url;
  33109 
  33110       if (!url) {
  33111         return;
  33112       } // Create the image.
  33113 
  33114 
  33115       var img = document.createElement('img');
  33116       img.src = url; // Push the image to the temporary images array.
  33117 
  33118       this.backgroundImages.push(img);
  33119     }
  33120     /**
  33121      * Extract colors from image and push it ot the colors array.
  33122      *
  33123      * @param {Object} image - The image element to extract colors from
  33124      * @param {String} suffix - An optional suffix for the key in the colors array.
  33125      *
  33126      * @returns {void}
  33127      */
  33128 
  33129   }, {
  33130     key: "extractColorsFromImage",
  33131     value: function extractColorsFromImage(image) {
  33132       var _this5 = this;
  33133 
  33134       var suffix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
  33135       var colorThief = new ColorThief();
  33136       var palette;
  33137 
  33138       try {
  33139         palette = colorThief.getPalette(image);
  33140       } catch (e) {
  33141         return;
  33142       } // Add the palette to the colors array.
  33143 
  33144 
  33145       palette.forEach(function (color, index) {
  33146         var hex = (0, _utils.rgbToHex)(color[0], color[1], color[2]); // Limit colors count.
  33147 
  33148         if (_this5.reachedColorsLimit()) {
  33149           return;
  33150         }
  33151 
  33152         if (!(0, _values.default)(_this5.colors).includes(hex)) {
  33153           _this5.colors["palette-".concat(suffix, "-").concat(index)] = hex;
  33154         }
  33155       });
  33156     }
  33157     /**
  33158      * Iterate over all images in the current selected element and extract colors from them.
  33159      *
  33160      * @returns {void}
  33161      */
  33162 
  33163   }, {
  33164     key: "extractColorsFromImages",
  33165     value: function extractColorsFromImages() {
  33166       var _this6 = this;
  33167 
  33168       // Iterate over all images in the widget.
  33169       var images = this.backgroundImages;
  33170       images.forEach(function (img, i) {
  33171         _this6.extractColorsFromImage(img, i);
  33172       });
  33173       this.backgroundImages = [];
  33174     }
  33175     /**
  33176      * Add the color swatches to a picker container.
  33177      *
  33178      * @param {HTMLElement} picker - Picker HTML element to append the swatches to.
  33179      *
  33180      * @returns {void}
  33181      */
  33182 
  33183   }, {
  33184     key: "addColorSwatches",
  33185     value: function addColorSwatches(picker) {
  33186       var _this7 = this;
  33187 
  33188       (0, _entries.default)(this.colors).map(function (_ref2) {
  33189         var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
  33190             control = _ref3[0],
  33191             value = _ref3[1];
  33192 
  33193         var swatch = document.createElement('div');
  33194         swatch.classList.add(_this7.classes.swatch);
  33195         swatch.style = "--color: ".concat(value);
  33196         swatch.dataset.text = value.replace('#', '');
  33197         swatch.addEventListener('mouseenter', function () {
  33198           $e.run('elements-color-picker/enter-preview', {
  33199             value: value
  33200           });
  33201         });
  33202         swatch.addEventListener('mouseleave', function () {
  33203           $e.run('elements-color-picker/exit-preview');
  33204         });
  33205         swatch.addEventListener('click', function (e) {
  33206           $e.run('elements-color-picker/apply', {
  33207             value: value,
  33208             trigger: {
  33209               palette: picker,
  33210               swatch: e.target
  33211             }
  33212           });
  33213           e.stopPropagation();
  33214         });
  33215         picker.append(swatch);
  33216       });
  33217     }
  33218     /**
  33219      * Add a tooltip to a picker container.
  33220      *
  33221      * @param {HTMLElement} picker - Picker HTML element to add the tooltip to.
  33222      *
  33223      * @returns {void}
  33224      */
  33225 
  33226   }, {
  33227     key: "addTooltip",
  33228     value: function addTooltip(picker) {
  33229       jQuery(picker).tipsy({
  33230         gravity: 's',
  33231         className: this.classes.tooltip,
  33232         trigger: 'manual',
  33233         title: function title() {
  33234           return __('Select a color from any image, or from an element whose color you\'ve manually defined.', 'elementor');
  33235         }
  33236       }).tipsy('show'); // Hack to move Tipsy to the preview wrapper because it defaults to the editor's `document.body`.
  33237       // TODO: Use something other than Tipsy.
  33238 
  33239       var tooltip = document.querySelector(this.selectors.tooltip);
  33240       elementor.$previewWrapper[0].appendChild(tooltip); // Hack to prevent hover on tooltip triggering a `mouseleave` event on the preview wrapper.
  33241 
  33242       tooltip.style.pointerEvents = 'none';
  33243     }
  33244     /**
  33245      * Remove a tooltip from a picker container.
  33246      *
  33247      * @param {HTMLElement} picker - Picker HTML element to remove the tooltip from.
  33248      *
  33249      * @returns {void}
  33250      */
  33251 
  33252   }, {
  33253     key: "removeTooltip",
  33254     value: function removeTooltip(picker) {
  33255       jQuery(picker).tipsy('hide');
  33256     }
  33257     /**
  33258      * Initialize the swatch with the color palette, using x & y positions, relative to the parent.
  33259      *
  33260      * @param {int} x
  33261      * @param {int} y
  33262      *
  33263      * @returns {void}
  33264      */
  33265 
  33266   }, {
  33267     key: "initSwatch",
  33268     value: function initSwatch() {
  33269       var _this8 = this;
  33270 
  33271       var x = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
  33272       var y = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
  33273       var count = (0, _entries.default)(this.colors).length;
  33274       var picker = document.createElement('div');
  33275       picker.dataset.count = count;
  33276       picker.classList.add(this.classes.picker, this.classes.hidden);
  33277       picker.style = "\n\t\t\t--count: ".concat(count, ";\n\t\t\t--left: ").concat(x, ";\n\t\t\t--top: ").concat(y, ";\n\t\t"); // Append the swatch before adding colors to it in order to avoid the click event of the swatches,
  33278       // which will fire the `apply` command and will close everything.
  33279 
  33280       this.container.view.$el[0].append(picker); // Check if the picker is overflowing out of the parent.
  33281 
  33282       var observer = elementorModules.utils.Scroll.scrollObserver({
  33283         callback: function callback(event) {
  33284           observer.unobserve(picker);
  33285 
  33286           if (!event.isInViewport) {
  33287             picker.style.setProperty('--left', 'unset');
  33288             picker.style.setProperty('--right', '0');
  33289           }
  33290 
  33291           picker.classList.remove(_this8.classes.hidden);
  33292         },
  33293         root: this.container.view.$el[0],
  33294         offset: "0px -".concat((0, _parseInt2.default)(picker.getBoundingClientRect().width), "px 0px")
  33295       });
  33296       observer.observe(picker);
  33297 
  33298       if (0 === count) {
  33299         // Show a Tipsy tooltip.
  33300         this.addTooltip(picker);
  33301       } else {
  33302         // Add the colors swatches.
  33303         this.addColorSwatches(picker);
  33304       } // Remove the picker on mouse leave.
  33305 
  33306 
  33307       this.container.view.$el[0].addEventListener('mouseleave', function () {
  33308         _this8.removeTooltip(picker); // Remove only after the animation has finished.
  33309 
  33310 
  33311         setTimeout(function () {
  33312           picker.remove();
  33313         }, 300);
  33314       }, {
  33315         once: true
  33316       });
  33317     }
  33318     /**
  33319      * Check if the palette reached its colors limit.
  33320      *
  33321      * @returns {boolean}
  33322      */
  33323 
  33324   }, {
  33325     key: "reachedColorsLimit",
  33326     value: function reachedColorsLimit() {
  33327       var COLORS_LIMIT = 5;
  33328       return COLORS_LIMIT <= (0, _keys.default)(this.colors).length;
  33329     }
  33330   }]);
  33331   return ShowSwatches;
  33332 }(_commandBase.default);
  33333 
  33334 exports.ShowSwatches = ShowSwatches;
  33335 
  33336 /***/ }),
  33337 
  33338 /***/ "../modules/elements-color-picker/assets/js/editor/commands/start.js":
  33339 /*!***************************************************************************!*\
  33340   !*** ../modules/elements-color-picker/assets/js/editor/commands/start.js ***!
  33341   \***************************************************************************/
  33342 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  33343 
  33344 "use strict";
  33345 
  33346 
  33347 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  33348 
  33349 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  33350 
  33351 _Object$defineProperty(exports, "__esModule", {
  33352   value: true
  33353 });
  33354 
  33355 exports.Start = void 0;
  33356 
  33357 var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));
  33358 
  33359 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  33360 
  33361 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  33362 
  33363 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  33364 
  33365 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  33366 
  33367 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  33368 
  33369 var _utils = __webpack_require__(/*! elementor/modules/elements-color-picker/assets/js/editor/utils */ "../modules/elements-color-picker/assets/js/editor/utils.js");
  33370 
  33371 /**
  33372  * Start the color picking process.
  33373  */
  33374 var Start = /*#__PURE__*/function (_CommandBase) {
  33375   (0, _inherits2.default)(Start, _CommandBase);
  33376 
  33377   var _super = (0, _createSuper2.default)(Start);
  33378 
  33379   function Start() {
  33380     (0, _classCallCheck2.default)(this, Start);
  33381     return _super.apply(this, arguments);
  33382   }
  33383 
  33384   (0, _createClass2.default)(Start, [{
  33385     key: "apply",
  33386     value: function apply(args) {
  33387       // Activate the component since the default behavior will activate it only on route change,
  33388       // but this component doesn't have any routes.
  33389       this.component.activate(); // Prevent elements from triggering edit mode on click.
  33390 
  33391       elementor.changeEditMode('picker');
  33392       elementor.$previewContents[0].querySelector('body').classList.add('elementor-editor__ui-state__color-picker', 'elementor-edit-area-active');
  33393       this.component.currentPicker = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, args), {}, {
  33394         initialColor: args.container.getSetting(args.control)
  33395       }); // Set the picking process trigger to active mode.
  33396 
  33397       this.component.currentPicker.trigger.classList.add('e-control-tool-disabled'); // Initialize a swatch on click.
  33398 
  33399       var elementorElements = elementor.$previewContents[0].querySelectorAll('.elementor-element');
  33400       (0, _utils.addNamespaceHandler)(elementorElements, 'click.color-picker', function (e) {
  33401         e.preventDefault();
  33402         $e.run('elements-color-picker/show-swatches', {
  33403           event: e
  33404         });
  33405       }); // Stop the picking process when the user leaves the preview area.
  33406 
  33407       (0, _utils.addNamespaceHandler)(elementor.$previewWrapper[0], 'mouseleave.color-picker', function () {
  33408         $e.run('elements-color-picker/end');
  33409       });
  33410     }
  33411   }]);
  33412   return Start;
  33413 }(_commandBase.default);
  33414 
  33415 exports.Start = Start;
  33416 
  33417 /***/ }),
  33418 
  33419 /***/ "../modules/elements-color-picker/assets/js/editor/component.js":
  33420 /*!**********************************************************************!*\
  33421   !*** ../modules/elements-color-picker/assets/js/editor/component.js ***!
  33422   \**********************************************************************/
  33423 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  33424 
  33425 "use strict";
  33426 
  33427 
  33428 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  33429 
  33430 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
  33431 
  33432 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  33433 
  33434 _Object$defineProperty(exports, "__esModule", {
  33435   value: true
  33436 });
  33437 
  33438 exports.default = void 0;
  33439 
  33440 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  33441 
  33442 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  33443 
  33444 var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));
  33445 
  33446 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  33447 
  33448 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  33449 
  33450 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  33451 
  33452 var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));
  33453 
  33454 var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../modules/elements-color-picker/assets/js/editor/commands/index.js"));
  33455 
  33456 var Component = /*#__PURE__*/function (_ComponentBase) {
  33457   (0, _inherits2.default)(Component, _ComponentBase);
  33458 
  33459   var _super = (0, _createSuper2.default)(Component);
  33460 
  33461   function Component() {
  33462     var _this;
  33463 
  33464     (0, _classCallCheck2.default)(this, Component);
  33465 
  33466     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  33467       args[_key] = arguments[_key];
  33468     }
  33469 
  33470     _this = _super.call.apply(_super, [this].concat(args));
  33471     (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "currentPicker", _this.getDefaultPicker());
  33472     return _this;
  33473   }
  33474 
  33475   (0, _createClass2.default)(Component, [{
  33476     key: "getDefaultPicker",
  33477     value:
  33478     /**
  33479      * Get the default picker object.
  33480      *
  33481      * @returns {object}
  33482      */
  33483     function getDefaultPicker() {
  33484       return {
  33485         kit: null,
  33486         container: null,
  33487         control: null,
  33488         trigger: null,
  33489         initialColor: null
  33490       };
  33491     }
  33492     /**
  33493      * Reset the current picker to its default.
  33494      *
  33495      * @returns {void}
  33496      */
  33497 
  33498   }, {
  33499     key: "resetPicker",
  33500     value: function resetPicker() {
  33501       this.currentPicker = this.getDefaultPicker();
  33502     }
  33503     /**
  33504      * Silently render the UI using a new color value.
  33505      *
  33506      * @param {string} value - The new color to set.
  33507      *
  33508      * @returns {void}
  33509      */
  33510 
  33511   }, {
  33512     key: "renderUI",
  33513     value: function renderUI(value) {
  33514       var _this$currentPicker = this.currentPicker,
  33515           container = _this$currentPicker.container,
  33516           control = _this$currentPicker.control,
  33517           kit = _this$currentPicker.kit; // Silent.
  33518 
  33519       container.settings.set(control, value);
  33520       var view = container.view; // If the container has a View that can be rendered.
  33521 
  33522       if (view !== null && view !== void 0 && view.renderUI) {
  33523         view.renderUI();
  33524       } // If it's a kit which uses CSS variables.
  33525 
  33526 
  33527       if (kit) {
  33528         var id = kit.config.id,
  33529             cssVar = "--e-global-color-".concat(container.id);
  33530         elementor.$previewContents[0].querySelector(".elementor-kit-".concat(id)).style.setProperty(cssVar, value);
  33531       }
  33532     }
  33533     /**
  33534      * Retrieve the Eye-Dropper namespace.
  33535      *
  33536      * @returns {string}
  33537      */
  33538 
  33539   }, {
  33540     key: "getNamespace",
  33541     value: function getNamespace() {
  33542       return 'elements-color-picker';
  33543     }
  33544     /**
  33545      * Import the component commands.
  33546      *
  33547      * @returns {object}
  33548      */
  33549 
  33550   }, {
  33551     key: "defaultCommands",
  33552     value: function defaultCommands() {
  33553       return this.importCommands(commands);
  33554     }
  33555     /**
  33556      * Set the commands keyboard shortcuts.
  33557      *
  33558      * @returns {object}
  33559      */
  33560 
  33561   }, {
  33562     key: "defaultShortcuts",
  33563     value: function defaultShortcuts() {
  33564       return {
  33565         end: {
  33566           keys: 'esc',
  33567           scopes: [this.getNamespace()]
  33568         }
  33569       };
  33570     }
  33571   }]);
  33572   return Component;
  33573 }(_componentBase.default);
  33574 
  33575 exports.default = Component;
  33576 
  33577 /***/ }),
  33578 
  33579 /***/ "../modules/elements-color-picker/assets/js/editor/module.js":
  33580 /*!*******************************************************************!*\
  33581   !*** ../modules/elements-color-picker/assets/js/editor/module.js ***!
  33582   \*******************************************************************/
  33583 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  33584 
  33585 "use strict";
  33586 
  33587 
  33588 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  33589 
  33590 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  33591 
  33592 _Object$defineProperty(exports, "__esModule", {
  33593   value: true
  33594 });
  33595 
  33596 exports.default = void 0;
  33597 
  33598 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  33599 
  33600 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  33601 
  33602 var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));
  33603 
  33604 var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));
  33605 
  33606 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  33607 
  33608 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  33609 
  33610 var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../modules/elements-color-picker/assets/js/editor/component.js"));
  33611 
  33612 var ElementsColorPicker = /*#__PURE__*/function (_elementorModules$Vie) {
  33613   (0, _inherits2.default)(ElementsColorPicker, _elementorModules$Vie);
  33614 
  33615   var _super = (0, _createSuper2.default)(ElementsColorPicker);
  33616 
  33617   function ElementsColorPicker() {
  33618     (0, _classCallCheck2.default)(this, ElementsColorPicker);
  33619     return _super.apply(this, arguments);
  33620   }
  33621 
  33622   (0, _createClass2.default)(ElementsColorPicker, [{
  33623     key: "onInit",
  33624     value:
  33625     /**
  33626      * Initialize the Eye-Dropper module.
  33627      *
  33628      * @returns {void}
  33629      */
  33630     function onInit() {
  33631       (0, _get2.default)((0, _getPrototypeOf2.default)(ElementsColorPicker.prototype), "onInit", this).call(this);
  33632       $e.components.register(new _component.default());
  33633     }
  33634   }]);
  33635   return ElementsColorPicker;
  33636 }(elementorModules.ViewModule);
  33637 
  33638 exports.default = ElementsColorPicker;
  33639 
  33640 /***/ }),
  33641 
  33642 /***/ "../modules/elements-color-picker/assets/js/editor/utils.js":
  33643 /*!******************************************************************!*\
  33644   !*** ../modules/elements-color-picker/assets/js/editor/utils.js ***!
  33645   \******************************************************************/
  33646 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  33647 
  33648 "use strict";
  33649 
  33650 
  33651 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  33652 
  33653 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  33654 
  33655 _Object$defineProperty(exports, "__esModule", {
  33656   value: true
  33657 });
  33658 
  33659 exports.removeNamespaceHandler = exports.addNamespaceHandler = void 0;
  33660 
  33661 var _isIterable2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/is-iterable */ "../node_modules/@babel/runtime-corejs2/core-js/is-iterable.js"));
  33662 
  33663 __webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");
  33664 
  33665 var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));
  33666 
  33667 /**
  33668  * Add custom namespaced event using ES6. Equivalent to jQuery's `.on()`.
  33669  * NOTE: Might cause memory leaks if the element is removed from then DOM without removing its `nsEvents`.
  33670  *
  33671  * @param {HTMLElement|NodeList} elements - An HTML element to attach the event to.
  33672  * @param {string} nsEvent - Namespaced event name, e.g. `click.color-picker`.
  33673  * @param {function} callback - Callback handler to the attached event.
  33674  * @param {object} options - Additional event options.
  33675  *
  33676  * @returns {void}
  33677  */
  33678 var addNamespaceHandler = function addNamespaceHandler(elements, nsEvent, callback) {
  33679   var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
  33680 
  33681   var _nsEvent$split = nsEvent.split('.'),
  33682       _nsEvent$split2 = (0, _slicedToArray2.default)(_nsEvent$split, 1),
  33683       event = _nsEvent$split2[0]; // Add support for multi elements.
  33684 
  33685 
  33686   if (!(0, _isIterable2.default)(Object(elements))) {
  33687     elements = [elements];
  33688   }
  33689 
  33690   elements.forEach(function (element) {
  33691     if (!element.nsEvents) {
  33692       element.nsEvents = {};
  33693     }
  33694 
  33695     element.addEventListener(event, callback, options);
  33696     element.nsEvents[nsEvent] = callback;
  33697   });
  33698 };
  33699 /**
  33700  * Remove custom namespaced event using ES6. Equivalent to jQuery's `.off()`.
  33701  *
  33702  * @param {NodeList} elements - An HTML element to remove the event from.
  33703  * @param {string} nsEvent - Namespaced event name, e.g. `click.color-picker`.
  33704  *
  33705  * @returns {void}
  33706  */
  33707 
  33708 
  33709 exports.addNamespaceHandler = addNamespaceHandler;
  33710 
  33711 var removeNamespaceHandler = function removeNamespaceHandler(elements, nsEvent) {
  33712   var _nsEvent$split3 = nsEvent.split('.'),
  33713       _nsEvent$split4 = (0, _slicedToArray2.default)(_nsEvent$split3, 1),
  33714       event = _nsEvent$split4[0]; // Add support for multi elements.
  33715 
  33716 
  33717   if (!(0, _isIterable2.default)(Object(elements))) {
  33718     elements = [elements];
  33719   }
  33720 
  33721   elements.forEach(function (element) {
  33722     var _element$nsEvents, _element$nsEvents2;
  33723 
  33724     element.removeEventListener(event, (_element$nsEvents = element.nsEvents) === null || _element$nsEvents === void 0 ? void 0 : _element$nsEvents[nsEvent]);
  33725     (_element$nsEvents2 = element.nsEvents) === null || _element$nsEvents2 === void 0 ? true : delete _element$nsEvents2[nsEvent];
  33726   });
  33727 };
  33728 
  33729 exports.removeNamespaceHandler = removeNamespaceHandler;
  33730 
  33731 /***/ }),
  33732 
  33733 /***/ "../modules/history/assets/js/component.js":
  33734 /*!*************************************************!*\
  33735   !*** ../modules/history/assets/js/component.js ***!
  33736   \*************************************************/
  33737 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  33738 
  33739 "use strict";
  33740 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  33741 
  33742 
  33743 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  33744 
  33745 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  33746 
  33747 _Object$defineProperty(exports, "__esModule", {
  33748   value: true
  33749 });
  33750 
  33751 exports.default = void 0;
  33752 
  33753 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  33754 
  33755 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  33756 
  33757 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  33758 
  33759 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  33760 
  33761 var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));
  33762 
  33763 var Component = /*#__PURE__*/function (_ComponentBase) {
  33764   (0, _inherits2.default)(Component, _ComponentBase);
  33765 
  33766   var _super = (0, _createSuper2.default)(Component);
  33767 
  33768   function Component() {
  33769     (0, _classCallCheck2.default)(this, Component);
  33770     return _super.apply(this, arguments);
  33771   }
  33772 
  33773   (0, _createClass2.default)(Component, [{
  33774     key: "getNamespace",
  33775     value: function getNamespace() {
  33776       return 'panel/history';
  33777     }
  33778   }, {
  33779     key: "defaultTabs",
  33780     value: function defaultTabs() {
  33781       return {
  33782         actions: {
  33783           title: __('Actions', 'elementor')
  33784         },
  33785         revisions: {
  33786           title: __('Revisions', 'elementor')
  33787         }
  33788       };
  33789     }
  33790   }, {
  33791     key: "defaultShortcuts",
  33792     value: function defaultShortcuts() {
  33793       return {
  33794         actions: {
  33795           keys: 'ctrl+shift+h'
  33796         }
  33797       };
  33798     }
  33799   }, {
  33800     key: "renderTab",
  33801     value: function renderTab(tab) {
  33802       elementor.getPanelView().setPage('historyPage').showView(tab);
  33803     }
  33804   }, {
  33805     key: "activate",
  33806     value: function activate() {
  33807       // Activate the tab component itself.
  33808       $e.components.activate(this.getTabRoute(this.currentTab));
  33809     }
  33810   }, {
  33811     key: "getTabsWrapperSelector",
  33812     value: function getTabsWrapperSelector() {
  33813       return '#elementor-panel-elements-navigation';
  33814     }
  33815   }]);
  33816   return Component;
  33817 }(_componentBase.default);
  33818 
  33819 exports.default = Component;
  33820 
  33821 /***/ }),
  33822 
  33823 /***/ "../modules/history/assets/js/history/component.js":
  33824 /*!*********************************************************!*\
  33825   !*** ../modules/history/assets/js/history/component.js ***!
  33826   \*********************************************************/
  33827 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  33828 
  33829 "use strict";
  33830 
  33831 
  33832 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  33833 
  33834 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
  33835 
  33836 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  33837 
  33838 _Object$defineProperty(exports, "__esModule", {
  33839   value: true
  33840 });
  33841 
  33842 exports.default = void 0;
  33843 
  33844 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  33845 
  33846 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  33847 
  33848 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  33849 
  33850 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  33851 
  33852 var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));
  33853 
  33854 var commands = _interopRequireWildcard(__webpack_require__(/*! elementor-document/history/commands/ */ "../assets/dev/js/editor/document/history/commands/index.js"));
  33855 
  33856 var Component = /*#__PURE__*/function (_ComponentBase) {
  33857   (0, _inherits2.default)(Component, _ComponentBase);
  33858 
  33859   var _super = (0, _createSuper2.default)(Component);
  33860 
  33861   function Component() {
  33862     (0, _classCallCheck2.default)(this, Component);
  33863     return _super.apply(this, arguments);
  33864   }
  33865 
  33866   (0, _createClass2.default)(Component, [{
  33867     key: "getNamespace",
  33868     value: function getNamespace() {
  33869       return 'panel/history/actions';
  33870     }
  33871   }, {
  33872     key: "defaultCommands",
  33873     value: function defaultCommands() {
  33874       return this.importCommands(commands);
  33875     }
  33876   }, {
  33877     key: "defaultShortcuts",
  33878     value: function defaultShortcuts() {
  33879       return {
  33880         undo: {
  33881           keys: 'ctrl+z',
  33882           exclude: ['input'],
  33883           scopes: ['panel', 'navigator']
  33884         },
  33885         redo: {
  33886           keys: 'ctrl+shift+z, ctrl+y',
  33887           exclude: ['input'],
  33888           scopes: ['panel', 'navigator']
  33889         }
  33890       };
  33891     }
  33892   }]);
  33893   return Component;
  33894 }(_componentBase.default);
  33895 
  33896 exports.default = Component;
  33897 
  33898 /***/ }),
  33899 
  33900 /***/ "../modules/history/assets/js/history/empty.js":
  33901 /*!*****************************************************!*\
  33902   !*** ../modules/history/assets/js/history/empty.js ***!
  33903   \*****************************************************/
  33904 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  33905 
  33906 "use strict";
  33907 
  33908 
  33909 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  33910 
  33911 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  33912 
  33913 _Object$defineProperty(exports, "__esModule", {
  33914   value: true
  33915 });
  33916 
  33917 exports.default = void 0;
  33918 
  33919 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  33920 
  33921 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  33922 
  33923 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  33924 
  33925 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  33926 
  33927 var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  33928   (0, _inherits2.default)(_default, _Marionette$ItemView);
  33929 
  33930   var _super = (0, _createSuper2.default)(_default);
  33931 
  33932   function _default() {
  33933     (0, _classCallCheck2.default)(this, _default);
  33934     return _super.apply(this, arguments);
  33935   }
  33936 
  33937   (0, _createClass2.default)(_default, [{
  33938     key: "getTemplate",
  33939     value: function getTemplate() {
  33940       return '#tmpl-elementor-panel-history-no-items';
  33941     }
  33942   }, {
  33943     key: "id",
  33944     value: function id() {
  33945       return 'elementor-panel-history-no-items';
  33946     }
  33947   }, {
  33948     key: "onDestroy",
  33949     value: function onDestroy() {
  33950       this._parent.$el.removeClass('elementor-empty');
  33951     }
  33952   }]);
  33953   return _default;
  33954 }(Marionette.ItemView);
  33955 
  33956 exports.default = _default;
  33957 
  33958 /***/ }),
  33959 
  33960 /***/ "../modules/history/assets/js/history/item-model.js":
  33961 /*!**********************************************************!*\
  33962   !*** ../modules/history/assets/js/history/item-model.js ***!
  33963   \**********************************************************/
  33964 /***/ ((module) => {
  33965 
  33966 "use strict";
  33967 
  33968 
  33969 module.exports = Backbone.Model.extend({
  33970   defaults: {
  33971     id: 0,
  33972     type: '',
  33973     status: 'not_applied',
  33974     title: '',
  33975     subTitle: '',
  33976     action: '',
  33977     history: {}
  33978   },
  33979   initialize: function initialize() {
  33980     this.set('items', new Backbone.Collection());
  33981   }
  33982 });
  33983 
  33984 /***/ }),
  33985 
  33986 /***/ "../modules/history/assets/js/history/item-view.js":
  33987 /*!*********************************************************!*\
  33988   !*** ../modules/history/assets/js/history/item-view.js ***!
  33989   \*********************************************************/
  33990 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  33991 
  33992 "use strict";
  33993 
  33994 
  33995 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  33996 
  33997 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  33998 
  33999 _Object$defineProperty(exports, "__esModule", {
  34000   value: true
  34001 });
  34002 
  34003 exports.default = void 0;
  34004 
  34005 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  34006 
  34007 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  34008 
  34009 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  34010 
  34011 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  34012 
  34013 var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  34014   (0, _inherits2.default)(_default, _Marionette$ItemView);
  34015 
  34016   var _super = (0, _createSuper2.default)(_default);
  34017 
  34018   function _default() {
  34019     (0, _classCallCheck2.default)(this, _default);
  34020     return _super.apply(this, arguments);
  34021   }
  34022 
  34023   (0, _createClass2.default)(_default, [{
  34024     key: "getTemplate",
  34025     value: function getTemplate() {
  34026       return '#tmpl-elementor-panel-history-item';
  34027     }
  34028   }, {
  34029     key: "className",
  34030     value: function className() {
  34031       return 'elementor-history-item elementor-history-item-' + this.model.get('status');
  34032     }
  34033   }, {
  34034     key: "triggers",
  34035     value: function triggers() {
  34036       return {
  34037         click: 'click'
  34038       };
  34039     }
  34040   }]);
  34041   return _default;
  34042 }(Marionette.ItemView);
  34043 
  34044 exports.default = _default;
  34045 
  34046 /***/ }),
  34047 
  34048 /***/ "../modules/history/assets/js/history/manager.js":
  34049 /*!*******************************************************!*\
  34050   !*** ../modules/history/assets/js/history/manager.js ***!
  34051   \*******************************************************/
  34052 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  34053 
  34054 "use strict";
  34055 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  34056 
  34057 
  34058 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  34059 
  34060 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  34061 
  34062 _Object$defineProperty(exports, "__esModule", {
  34063   value: true
  34064 });
  34065 
  34066 exports.default = void 0;
  34067 
  34068 var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));
  34069 
  34070 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  34071 
  34072 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  34073 
  34074 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  34075 
  34076 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  34077 
  34078 var _itemModel = _interopRequireDefault(__webpack_require__(/*! ./item-model */ "../modules/history/assets/js/history/item-model.js"));
  34079 
  34080 /**
  34081  * TODO: consider refactor this class.
  34082  * TODO: should be `Document/History` component.
  34083  * TODO: should be attached to elementor.history.history + BC.
  34084  */
  34085 var HistoryManager = /*#__PURE__*/function () {
  34086   function HistoryManager(document) {
  34087     (0, _classCallCheck2.default)(this, HistoryManager);
  34088     (0, _defineProperty2.default)(this, "currentItemID", null);
  34089     (0, _defineProperty2.default)(this, "items", new Backbone.Collection([], {
  34090       model: _itemModel.default
  34091     }));
  34092     (0, _defineProperty2.default)(this, "active", true);
  34093     (0, _defineProperty2.default)(this, "translations", {
  34094       add: __('Added', 'elementor'),
  34095       change: __('Edited', 'elementor'),
  34096       disable: __('Disabled', 'elementor'),
  34097       duplicate: __('Duplicate', 'elementor'),
  34098       enable: __('Enabled', 'elementor'),
  34099       move: __('Moved', 'elementor'),
  34100       paste: __('Pasted', 'elementor'),
  34101       paste_style: __('Style Pasted', 'elementor'),
  34102       remove: __('Removed', 'elementor'),
  34103       reset_style: __('Style Reset', 'elementor'),
  34104       reset_settings: __('Settings Reset', 'elementor')
  34105     });
  34106     this.document = document;
  34107     this.currentItem = new Backbone.Model({
  34108       id: 0
  34109     });
  34110   }
  34111 
  34112   (0, _createClass2.default)(HistoryManager, [{
  34113     key: "getActionLabel",
  34114     value: function getActionLabel(itemData) {
  34115       // TODO: this function should be static.
  34116       if (this.translations[itemData.type]) {
  34117         return this.translations[itemData.type];
  34118       }
  34119 
  34120       return itemData.type;
  34121     }
  34122   }, {
  34123     key: "navigate",
  34124     value: function navigate(isRedo) {
  34125       var currentItem = this.items.find(function (model) {
  34126         return 'not_applied' === model.get('status');
  34127       }),
  34128           currentItemIndex = this.items.indexOf(currentItem),
  34129           requiredIndex = isRedo ? currentItemIndex - 1 : currentItemIndex + 1;
  34130 
  34131       if (!isRedo && !currentItem || requiredIndex < 0 || requiredIndex >= this.items.length) {
  34132         return;
  34133       }
  34134 
  34135       this.doItem(requiredIndex);
  34136     }
  34137   }, {
  34138     key: "setActive",
  34139     value: function setActive(value) {
  34140       this.active = value;
  34141     }
  34142   }, {
  34143     key: "getActive",
  34144     value: function getActive(value) {
  34145       return this.active;
  34146     }
  34147   }, {
  34148     key: "getItems",
  34149     value: function getItems() {
  34150       return this.items;
  34151     }
  34152   }, {
  34153     key: "startItem",
  34154     value: function startItem(itemData) {
  34155       this.currentItemID = this.addItem(itemData);
  34156       return this.currentItemID;
  34157     }
  34158   }, {
  34159     key: "endItem",
  34160     value: function endItem(id) {
  34161       if (this.currentItemID !== id) {
  34162         return;
  34163       }
  34164 
  34165       this.currentItemID = null;
  34166     }
  34167   }, {
  34168     key: "deleteItem",
  34169     value: function deleteItem(id) {
  34170       var item = this.items.findWhere({
  34171         id: id
  34172       });
  34173       this.items.remove(item);
  34174       this.currentItemID = null;
  34175     }
  34176   }, {
  34177     key: "isItemStarted",
  34178     value: function isItemStarted() {
  34179       return null !== this.currentItemID;
  34180     }
  34181   }, {
  34182     key: "getCurrentId",
  34183     value: function getCurrentId() {
  34184       return this.currentItemID;
  34185     }
  34186   }, {
  34187     key: "addItem",
  34188     value: function addItem(itemData) {
  34189       if (!this.getActive()) {
  34190         return;
  34191       }
  34192 
  34193       if (!this.items.length) {
  34194         this.items.add({
  34195           status: 'not_applied',
  34196           title: __('Editing Started', 'elementor'),
  34197           subTitle: '',
  34198           action: '',
  34199           editing_started: true
  34200         });
  34201       } // Remove old applied items from top of list
  34202 
  34203 
  34204       while (this.items.length && 'applied' === this.items.first().get('status')) {
  34205         this.items.shift();
  34206       }
  34207 
  34208       var id = this.currentItemID ? this.currentItemID : new Date().getTime();
  34209       var currentItem = this.items.findWhere({
  34210         id: id
  34211       });
  34212 
  34213       if (!currentItem) {
  34214         currentItem = new _itemModel.default({
  34215           id: id,
  34216           title: itemData.title,
  34217           subTitle: itemData.subTitle,
  34218           action: this.getActionLabel(itemData),
  34219           type: itemData.type
  34220         });
  34221         this.startItemTitle = '';
  34222         this.startItemAction = '';
  34223       }
  34224 
  34225       currentItem.get('items').add(itemData, {
  34226         at: 0
  34227       });
  34228       this.items.add(currentItem, {
  34229         at: 0
  34230       });
  34231       this.updateCurrentItem(currentItem);
  34232       return id;
  34233     }
  34234   }, {
  34235     key: "doItem",
  34236     value: function doItem(index) {
  34237       // Don't track while restoring the item
  34238       this.setActive(false);
  34239       var item = this.items.at(index);
  34240 
  34241       if ('not_applied' === item.get('status')) {
  34242         this.undoItem(index);
  34243       } else {
  34244         this.redoItem(index);
  34245       }
  34246 
  34247       this.setActive(true);
  34248       var panel = elementor.getPanelView(),
  34249           panelPage = panel.getCurrentPageView(),
  34250           editedElementView = panelPage.getOption('editedElementView');
  34251       var viewToScroll;
  34252 
  34253       if ($e.routes.isPartOf('panel/editor') && editedElementView) {
  34254         if (editedElementView.isDestroyed) {
  34255           // If the the element isn't exist - show the history panel
  34256           $e.route('panel/history/actions');
  34257         } else {
  34258           // If element exist - render again, maybe the settings has been changed
  34259           viewToScroll = editedElementView;
  34260         }
  34261       } else if (item instanceof Backbone.Model && item.get('items').length) {
  34262         var historyItem = item.get('items').first();
  34263 
  34264         if (historyItem.get('restore')) {
  34265           var container = 'sub-add' === historyItem.get('type') ? historyItem.get('data').containerToRestore : historyItem.get('container') || historyItem.get('containers');
  34266 
  34267           if ((0, _isArray.default)(container)) {
  34268             container = container[0];
  34269           }
  34270 
  34271           if (container) {
  34272             viewToScroll = container.lookup().view;
  34273           }
  34274         }
  34275       }
  34276 
  34277       $e.internal('document/save/set-is-modified', {
  34278         status: item.get('id') !== this.document.editor.lastSaveHistoryId
  34279       });
  34280       this.updateCurrentItem(item);
  34281 
  34282       if (viewToScroll && !elementor.helpers.isInViewport(viewToScroll.$el[0], elementor.$previewContents.find('html')[0])) {
  34283         elementor.helpers.scrollToView(viewToScroll.$el);
  34284       }
  34285     }
  34286   }, {
  34287     key: "undoItem",
  34288     value: function undoItem(index) {
  34289       for (var stepNum = 0; stepNum < index; stepNum++) {
  34290         var item = this.items.at(stepNum);
  34291 
  34292         if ('not_applied' === item.get('status')) {
  34293           item.get('items').each(function (subItem) {
  34294             var restore = subItem.get('restore');
  34295 
  34296             if (restore) {
  34297               restore(subItem);
  34298             }
  34299           });
  34300           item.set('status', 'applied');
  34301         }
  34302       }
  34303     }
  34304   }, {
  34305     key: "redoItem",
  34306     value: function redoItem(index) {
  34307       for (var stepNum = this.items.length - 1; stepNum >= index; stepNum--) {
  34308         var item = this.items.at(stepNum);
  34309 
  34310         if ('applied' === item.get('status')) {
  34311           var reversedSubItems = _.toArray(item.get('items').models).reverse();
  34312 
  34313           _(reversedSubItems).each(function (subItem) {
  34314             var restore = subItem.get('restore');
  34315 
  34316             if (restore) {
  34317               restore(subItem, true);
  34318             }
  34319           });
  34320 
  34321           item.set('status', 'not_applied');
  34322         }
  34323       }
  34324     }
  34325   }, {
  34326     key: "updateCurrentItem",
  34327     value: function updateCurrentItem(item) {
  34328       // Save last selected item.
  34329       this.currentItem = item;
  34330       this.updatePanelPageCurrentItem();
  34331     }
  34332   }, {
  34333     key: "updatePanelPageCurrentItem",
  34334     value: function updatePanelPageCurrentItem() {
  34335       if ($e.routes.is('panel/history/actions')) {
  34336         elementor.getPanelView().getCurrentPageView().getCurrentTab().updateCurrentItem();
  34337       }
  34338     }
  34339   }]);
  34340   return HistoryManager;
  34341 }();
  34342 
  34343 exports.default = HistoryManager;
  34344 
  34345 /***/ }),
  34346 
  34347 /***/ "../modules/history/assets/js/history/panel-tab.js":
  34348 /*!*********************************************************!*\
  34349   !*** ../modules/history/assets/js/history/panel-tab.js ***!
  34350   \*********************************************************/
  34351 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  34352 
  34353 "use strict";
  34354 
  34355 
  34356 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  34357 
  34358 __webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");
  34359 
  34360 __webpack_require__(/*! core-js/modules/es6.array.find-index.js */ "../node_modules/core-js/modules/es6.array.find-index.js");
  34361 
  34362 var _itemView = _interopRequireDefault(__webpack_require__(/*! ./item-view */ "../modules/history/assets/js/history/item-view.js"));
  34363 
  34364 var _empty = _interopRequireDefault(__webpack_require__(/*! ./empty */ "../modules/history/assets/js/history/empty.js"));
  34365 
  34366 module.exports = Marionette.CompositeView.extend({
  34367   id: 'elementor-panel-history',
  34368   template: '#tmpl-elementor-panel-history-tab',
  34369   childView: _itemView.default,
  34370   childViewContainer: '#elementor-history-list',
  34371   emptyView: _empty.default,
  34372   currentItem: null,
  34373   updateCurrentItem: function updateCurrentItem() {
  34374     var _this = this;
  34375 
  34376     if (this.children.length <= 1) {
  34377       return;
  34378     }
  34379 
  34380     _.defer(function () {
  34381       // Set current item - the first not applied item
  34382       var currentItem = _this.collection.find(function (model) {
  34383         return 'not_applied' === model.get('status');
  34384       }),
  34385           currentView = _this.children.findByModel(currentItem);
  34386 
  34387       if (!currentView) {
  34388         return;
  34389       }
  34390 
  34391       var currentItemClass = 'elementor-history-item-current';
  34392 
  34393       if (_this.currentItem) {
  34394         _this.currentItem.removeClass(currentItemClass);
  34395       }
  34396 
  34397       _this.currentItem = currentView.$el;
  34398 
  34399       _this.currentItem.addClass(currentItemClass);
  34400     });
  34401   },
  34402   onRender: function onRender() {
  34403     this.updateCurrentItem();
  34404   },
  34405   onRenderEmpty: function onRenderEmpty() {
  34406     this.$el.addClass('elementor-empty');
  34407   },
  34408   onChildviewClick: function onChildviewClick(childView, event) {
  34409     if (childView.$el === this.currentItem) {
  34410       return;
  34411     }
  34412 
  34413     var collection = event.model.collection,
  34414         index = collection.findIndex(event.model);
  34415     $e.run('panel/history/actions/do', {
  34416       index: index
  34417     });
  34418   }
  34419 });
  34420 
  34421 /***/ }),
  34422 
  34423 /***/ "../modules/history/assets/js/module.js":
  34424 /*!**********************************************!*\
  34425   !*** ../modules/history/assets/js/module.js ***!
  34426   \**********************************************/
  34427 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  34428 
  34429 "use strict";
  34430 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  34431 
  34432 
  34433 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  34434 
  34435 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  34436 
  34437 _Object$defineProperty(exports, "__esModule", {
  34438   value: true
  34439 });
  34440 
  34441 exports.default = void 0;
  34442 
  34443 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  34444 
  34445 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  34446 
  34447 var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../modules/history/assets/js/component.js"));
  34448 
  34449 var _component2 = _interopRequireDefault(__webpack_require__(/*! ./history/component */ "../modules/history/assets/js/history/component.js"));
  34450 
  34451 var _component3 = _interopRequireDefault(__webpack_require__(/*! ./revisions/component */ "../modules/history/assets/js/revisions/component.js"));
  34452 
  34453 var _panelPage = _interopRequireDefault(__webpack_require__(/*! ./panel-page */ "../modules/history/assets/js/panel-page.js"));
  34454 
  34455 var Manager = /*#__PURE__*/function () {
  34456   function Manager() {
  34457     (0, _classCallCheck2.default)(this, Manager);
  34458     elementorCommon.elements.$window.on('elementor:loaded', this.init);
  34459   }
  34460 
  34461   (0, _createClass2.default)(Manager, [{
  34462     key: "init",
  34463     value: function init() {
  34464       $e.components.register(new _component.default());
  34465       $e.components.register(new _component2.default());
  34466       $e.components.register(new _component3.default());
  34467       elementor.on('panel:init', function () {
  34468         elementor.getPanelView().addPage('historyPage', {
  34469           view: _panelPage.default,
  34470           title: __('History', 'elementor')
  34471         });
  34472       });
  34473     }
  34474   }, {
  34475     key: "history",
  34476     get: function get() {
  34477       elementorCommon.helpers.softDeprecated('elementor.history.history', '2.9.0', 'elementor.documents.getCurrent().history');
  34478       return elementor.documents.getCurrent().history;
  34479     }
  34480   }, {
  34481     key: "revisions",
  34482     get: function get() {
  34483       elementorCommon.helpers.softDeprecated('elementor.history.revisions', '2.9.0', 'elementor.documents.getCurrent().revisions');
  34484       return elementor.documents.getCurrent().revisions;
  34485     }
  34486   }]);
  34487   return Manager;
  34488 }();
  34489 
  34490 exports.default = Manager;
  34491 
  34492 /***/ }),
  34493 
  34494 /***/ "../modules/history/assets/js/panel-page.js":
  34495 /*!**************************************************!*\
  34496   !*** ../modules/history/assets/js/panel-page.js ***!
  34497   \**************************************************/
  34498 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  34499 
  34500 "use strict";
  34501 
  34502 
  34503 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  34504 
  34505 var _loading = _interopRequireDefault(__webpack_require__(/*! ./revisions/panel/loading */ "../modules/history/assets/js/revisions/panel/loading.js"));
  34506 
  34507 var _tab = _interopRequireDefault(__webpack_require__(/*! ./revisions/panel/tab */ "../modules/history/assets/js/revisions/panel/tab.js"));
  34508 
  34509 var _empty = _interopRequireDefault(__webpack_require__(/*! ./revisions/panel/empty */ "../modules/history/assets/js/revisions/panel/empty.js"));
  34510 
  34511 var TabHistoryView = __webpack_require__(/*! ./history/panel-tab */ "../modules/history/assets/js/history/panel-tab.js");
  34512 
  34513 module.exports = Marionette.LayoutView.extend({
  34514   template: '#tmpl-elementor-panel-history-page',
  34515   regions: {
  34516     content: '#elementor-panel-history-content'
  34517   },
  34518   ui: {
  34519     tabs: '.elementor-panel-navigation-tab'
  34520   },
  34521   regionViews: {},
  34522   currentTab: null,
  34523 
  34524   /**
  34525    * @type {Document}
  34526    */
  34527   document: null,
  34528   initialize: function initialize(options) {
  34529     this.document = options.document || elementor.documents.getCurrent();
  34530     this.initRegionViews();
  34531   },
  34532   initRegionViews: function initRegionViews() {
  34533     var _this = this;
  34534 
  34535     var historyItems = this.document.history.getItems();
  34536     this.regionViews = {
  34537       actions: {
  34538         view: function view() {
  34539           return TabHistoryView;
  34540         },
  34541         options: {
  34542           collection: historyItems,
  34543           history: this.document.history
  34544         }
  34545       },
  34546       revisions: {
  34547         view: function view() {
  34548           var revisionsItems = _this.document.revisions.getItems();
  34549 
  34550           if (!revisionsItems) {
  34551             return _loading.default;
  34552           }
  34553 
  34554           if (1 === revisionsItems.length && 'current' === revisionsItems.models[0].get('type')) {
  34555             return _empty.default;
  34556           }
  34557 
  34558           return _tab.default;
  34559         },
  34560         options: {
  34561           document: this.document
  34562         }
  34563       }
  34564     };
  34565   },
  34566   getCurrentTab: function getCurrentTab() {
  34567     return this.currentTab;
  34568   },
  34569   showView: function showView(viewName) {
  34570     var viewDetails = this.regionViews[viewName],
  34571         options = viewDetails.options || {},
  34572         View = viewDetails.view();
  34573 
  34574     if (this.currentTab && this.currentTab.constructor === View) {
  34575       return;
  34576     }
  34577 
  34578     this.currentTab = new View(options);
  34579     this.content.show(this.currentTab);
  34580   }
  34581 });
  34582 
  34583 /***/ }),
  34584 
  34585 /***/ "../modules/history/assets/js/revisions/collection.js":
  34586 /*!************************************************************!*\
  34587   !*** ../modules/history/assets/js/revisions/collection.js ***!
  34588   \************************************************************/
  34589 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  34590 
  34591 "use strict";
  34592 
  34593 
  34594 var RevisionModel = __webpack_require__(/*! ./model */ "../modules/history/assets/js/revisions/model.js");
  34595 
  34596 module.exports = Backbone.Collection.extend({
  34597   model: RevisionModel,
  34598   comparator: function comparator(model) {
  34599     return -model.get('timestamp');
  34600   }
  34601 });
  34602 
  34603 /***/ }),
  34604 
  34605 /***/ "../modules/history/assets/js/revisions/commands/down.js":
  34606 /*!***************************************************************!*\
  34607   !*** ../modules/history/assets/js/revisions/commands/down.js ***!
  34608   \***************************************************************/
  34609 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  34610 
  34611 "use strict";
  34612 
  34613 
  34614 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  34615 
  34616 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  34617 
  34618 _Object$defineProperty(exports, "__esModule", {
  34619   value: true
  34620 });
  34621 
  34622 exports.default = exports.Down = void 0;
  34623 
  34624 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  34625 
  34626 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  34627 
  34628 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  34629 
  34630 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  34631 
  34632 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  34633 
  34634 var Down = /*#__PURE__*/function (_CommandBase) {
  34635   (0, _inherits2.default)(Down, _CommandBase);
  34636 
  34637   var _super = (0, _createSuper2.default)(Down);
  34638 
  34639   function Down() {
  34640     (0, _classCallCheck2.default)(this, Down);
  34641     return _super.apply(this, arguments);
  34642   }
  34643 
  34644   (0, _createClass2.default)(Down, [{
  34645     key: "apply",
  34646     value: function apply() {
  34647       this.component.navigate();
  34648     }
  34649   }]);
  34650   return Down;
  34651 }(_commandBase.default);
  34652 
  34653 exports.Down = Down;
  34654 var _default = Down;
  34655 exports.default = _default;
  34656 
  34657 /***/ }),
  34658 
  34659 /***/ "../modules/history/assets/js/revisions/commands/index.js":
  34660 /*!****************************************************************!*\
  34661   !*** ../modules/history/assets/js/revisions/commands/index.js ***!
  34662   \****************************************************************/
  34663 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  34664 
  34665 "use strict";
  34666 
  34667 
  34668 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  34669 
  34670 _Object$defineProperty(exports, "__esModule", {
  34671   value: true
  34672 });
  34673 
  34674 _Object$defineProperty(exports, "Down", {
  34675   enumerable: true,
  34676   get: function get() {
  34677     return _down.Down;
  34678   }
  34679 });
  34680 
  34681 _Object$defineProperty(exports, "Up", {
  34682   enumerable: true,
  34683   get: function get() {
  34684     return _up.Up;
  34685   }
  34686 });
  34687 
  34688 var _down = __webpack_require__(/*! ./down */ "../modules/history/assets/js/revisions/commands/down.js");
  34689 
  34690 var _up = __webpack_require__(/*! ./up */ "../modules/history/assets/js/revisions/commands/up.js");
  34691 
  34692 /***/ }),
  34693 
  34694 /***/ "../modules/history/assets/js/revisions/commands/up.js":
  34695 /*!*************************************************************!*\
  34696   !*** ../modules/history/assets/js/revisions/commands/up.js ***!
  34697   \*************************************************************/
  34698 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  34699 
  34700 "use strict";
  34701 
  34702 
  34703 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  34704 
  34705 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  34706 
  34707 _Object$defineProperty(exports, "__esModule", {
  34708   value: true
  34709 });
  34710 
  34711 exports.default = exports.Up = void 0;
  34712 
  34713 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  34714 
  34715 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  34716 
  34717 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  34718 
  34719 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  34720 
  34721 var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));
  34722 
  34723 var Up = /*#__PURE__*/function (_CommandBase) {
  34724   (0, _inherits2.default)(Up, _CommandBase);
  34725 
  34726   var _super = (0, _createSuper2.default)(Up);
  34727 
  34728   function Up() {
  34729     (0, _classCallCheck2.default)(this, Up);
  34730     return _super.apply(this, arguments);
  34731   }
  34732 
  34733   (0, _createClass2.default)(Up, [{
  34734     key: "apply",
  34735     value: function apply() {
  34736       this.component.navigate(true);
  34737     }
  34738   }]);
  34739   return Up;
  34740 }(_commandBase.default);
  34741 
  34742 exports.Up = Up;
  34743 var _default = Up;
  34744 exports.default = _default;
  34745 
  34746 /***/ }),
  34747 
  34748 /***/ "../modules/history/assets/js/revisions/component.js":
  34749 /*!***********************************************************!*\
  34750   !*** ../modules/history/assets/js/revisions/component.js ***!
  34751   \***********************************************************/
  34752 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  34753 
  34754 "use strict";
  34755 
  34756 
  34757 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  34758 
  34759 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
  34760 
  34761 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  34762 
  34763 _Object$defineProperty(exports, "__esModule", {
  34764   value: true
  34765 });
  34766 
  34767 exports.default = void 0;
  34768 
  34769 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  34770 
  34771 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  34772 
  34773 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  34774 
  34775 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  34776 
  34777 var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));
  34778 
  34779 var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../modules/history/assets/js/revisions/commands/index.js"));
  34780 
  34781 var hooks = _interopRequireWildcard(__webpack_require__(/*! ./hooks/ */ "../modules/history/assets/js/revisions/hooks/index.js"));
  34782 
  34783 var Component = /*#__PURE__*/function (_ComponentBase) {
  34784   (0, _inherits2.default)(Component, _ComponentBase);
  34785 
  34786   var _super = (0, _createSuper2.default)(Component);
  34787 
  34788   function Component() {
  34789     (0, _classCallCheck2.default)(this, Component);
  34790     return _super.apply(this, arguments);
  34791   }
  34792 
  34793   (0, _createClass2.default)(Component, [{
  34794     key: "getNamespace",
  34795     value: function getNamespace() {
  34796       return 'panel/history/revisions';
  34797     }
  34798   }, {
  34799     key: "defaultCommands",
  34800     value: function defaultCommands() {
  34801       return this.importCommands(commands);
  34802     }
  34803   }, {
  34804     key: "defaultHooks",
  34805     value: function defaultHooks() {
  34806       return this.importHooks(hooks);
  34807     }
  34808   }, {
  34809     key: "defaultShortcuts",
  34810     value: function defaultShortcuts() {
  34811       return {
  34812         up: {
  34813           keys: 'up',
  34814           scopes: [this.getNamespace()]
  34815         },
  34816         down: {
  34817           keys: 'down',
  34818           scopes: [this.getNamespace()]
  34819         }
  34820       };
  34821     }
  34822   }, {
  34823     key: "navigate",
  34824     value: function navigate(up) {
  34825       if (elementor.documents.getCurrent().revisions.getItems().length > 1) {
  34826         elementor.getPanelView().getCurrentPageView().currentTab.navigate(up);
  34827       }
  34828     }
  34829   }]);
  34830   return Component;
  34831 }(_componentBase.default);
  34832 
  34833 exports.default = Component;
  34834 
  34835 /***/ }),
  34836 
  34837 /***/ "../modules/history/assets/js/revisions/hooks/data/save.js":
  34838 /*!*****************************************************************!*\
  34839   !*** ../modules/history/assets/js/revisions/hooks/data/save.js ***!
  34840   \*****************************************************************/
  34841 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  34842 
  34843 "use strict";
  34844 
  34845 
  34846 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  34847 
  34848 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  34849 
  34850 _Object$defineProperty(exports, "__esModule", {
  34851   value: true
  34852 });
  34853 
  34854 exports.default = exports.RevisionsAfterSave = void 0;
  34855 
  34856 __webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");
  34857 
  34858 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  34859 
  34860 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  34861 
  34862 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  34863 
  34864 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  34865 
  34866 var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));
  34867 
  34868 var RevisionsAfterSave = /*#__PURE__*/function (_HookDataAfter) {
  34869   (0, _inherits2.default)(RevisionsAfterSave, _HookDataAfter);
  34870 
  34871   var _super = (0, _createSuper2.default)(RevisionsAfterSave);
  34872 
  34873   function RevisionsAfterSave() {
  34874     (0, _classCallCheck2.default)(this, RevisionsAfterSave);
  34875     return _super.apply(this, arguments);
  34876   }
  34877 
  34878   (0, _createClass2.default)(RevisionsAfterSave, [{
  34879     key: "getCommand",
  34880     value: function getCommand() {
  34881       return 'document/save/save';
  34882     }
  34883   }, {
  34884     key: "getId",
  34885     value: function getId() {
  34886       return 'revisions-after-save';
  34887     }
  34888   }, {
  34889     key: "apply",
  34890     value: function apply(args, result) {
  34891       var data = result.data,
  34892           revisionsModule = elementor.documents.getCurrent().revisions;
  34893 
  34894       if (data.latest_revisions) {
  34895         revisionsModule.addRevisions(data.latest_revisions);
  34896       }
  34897 
  34898       revisionsModule.requestRevisions(function () {
  34899         if (data.revisions_ids) {
  34900           var revisionsToKeep = revisionsModule.revisions.filter(function (revision) {
  34901             return -1 !== data.revisions_ids.indexOf(revision.get('id'));
  34902           });
  34903           revisionsModule.revisions.reset(revisionsToKeep);
  34904         }
  34905       });
  34906     }
  34907   }]);
  34908   return RevisionsAfterSave;
  34909 }(_after.default);
  34910 
  34911 exports.RevisionsAfterSave = RevisionsAfterSave;
  34912 var _default = RevisionsAfterSave;
  34913 exports.default = _default;
  34914 
  34915 /***/ }),
  34916 
  34917 /***/ "../modules/history/assets/js/revisions/hooks/index.js":
  34918 /*!*************************************************************!*\
  34919   !*** ../modules/history/assets/js/revisions/hooks/index.js ***!
  34920   \*************************************************************/
  34921 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  34922 
  34923 "use strict";
  34924 
  34925 
  34926 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  34927 
  34928 _Object$defineProperty(exports, "__esModule", {
  34929   value: true
  34930 });
  34931 
  34932 _Object$defineProperty(exports, "RevisionsAfterSave", {
  34933   enumerable: true,
  34934   get: function get() {
  34935     return _save.RevisionsAfterSave;
  34936   }
  34937 });
  34938 
  34939 var _save = __webpack_require__(/*! ./data/save */ "../modules/history/assets/js/revisions/hooks/data/save.js");
  34940 
  34941 /***/ }),
  34942 
  34943 /***/ "../modules/history/assets/js/revisions/manager.js":
  34944 /*!*********************************************************!*\
  34945   !*** ../modules/history/assets/js/revisions/manager.js ***!
  34946   \*********************************************************/
  34947 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  34948 
  34949 "use strict";
  34950 
  34951 
  34952 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  34953 
  34954 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  34955 
  34956 _Object$defineProperty(exports, "__esModule", {
  34957   value: true
  34958 });
  34959 
  34960 exports.default = void 0;
  34961 
  34962 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  34963 
  34964 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  34965 
  34966 var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));
  34967 
  34968 var RevisionsCollection = __webpack_require__(/*! ./collection */ "../modules/history/assets/js/revisions/collection.js");
  34969 /**
  34970  * TODO: consider refactor this class.
  34971  * TODO: Rename to RevisionsModule.
  34972  */
  34973 
  34974 
  34975 var RevisionsManager = /*#__PURE__*/function () {
  34976   function RevisionsManager(document) {
  34977     (0, _classCallCheck2.default)(this, RevisionsManager);
  34978     (0, _defineProperty2.default)(this, "document", void 0);
  34979     (0, _defineProperty2.default)(this, "revisions", void 0);
  34980     this.document = document;
  34981   }
  34982 
  34983   (0, _createClass2.default)(RevisionsManager, [{
  34984     key: "getItems",
  34985     value: function getItems() {
  34986       return this.revisions;
  34987     }
  34988   }, {
  34989     key: "requestRevisions",
  34990     value: function requestRevisions(callback) {
  34991       var _this = this;
  34992 
  34993       if (this.revisions) {
  34994         callback(this.revisions);
  34995         return;
  34996       }
  34997 
  34998       elementorCommon.ajax.addRequest('get_revisions', {
  34999         success: function success(data) {
  35000           _this.revisions = new RevisionsCollection(data);
  35001 
  35002           _this.revisions.on('update', _this.onRevisionsUpdate.bind(_this));
  35003 
  35004           callback(_this.revisions);
  35005         }
  35006       });
  35007     }
  35008   }, {
  35009     key: "setEditorData",
  35010     value: function setEditorData(data) {
  35011       var collection = elementor.getPreviewView().collection;
  35012       collection.reset(data);
  35013     }
  35014   }, {
  35015     key: "getRevisionDataAsync",
  35016     value: function getRevisionDataAsync(id, options) {
  35017       _.extend(options, {
  35018         data: {
  35019           id: id
  35020         }
  35021       });
  35022 
  35023       return elementorCommon.ajax.addRequest('get_revision_data', options);
  35024     }
  35025   }, {
  35026     key: "addRevisions",
  35027     value: function addRevisions(items) {
  35028       var _this2 = this;
  35029 
  35030       this.requestRevisions(function () {
  35031         items.forEach(function (item) {
  35032           var existedModel = _this2.revisions.findWhere({
  35033             id: item.id
  35034           });
  35035 
  35036           if (existedModel) {
  35037             _this2.revisions.remove(existedModel, {
  35038               silent: true
  35039             });
  35040           }
  35041 
  35042           _this2.revisions.add(item, {
  35043             silent: true
  35044           });
  35045         });
  35046 
  35047         _this2.revisions.trigger('update');
  35048       });
  35049     }
  35050   }, {
  35051     key: "deleteRevision",
  35052     value: function deleteRevision(revisionModel, options) {
  35053       var params = {
  35054         data: {
  35055           id: revisionModel.get('id')
  35056         },
  35057         success: function success() {
  35058           if (options.success) {
  35059             options.success();
  35060           }
  35061 
  35062           revisionModel.destroy();
  35063         }
  35064       };
  35065 
  35066       if (options.error) {
  35067         params.error = options.error;
  35068       }
  35069 
  35070       elementorCommon.ajax.addRequest('delete_revision', params);
  35071     }
  35072   }, {
  35073     key: "onRevisionsUpdate",
  35074     value: function onRevisionsUpdate() {
  35075       if ($e.routes.is('panel/history/revisions')) {
  35076         $e.routes.refreshContainer('panel');
  35077       }
  35078     }
  35079   }]);
  35080   return RevisionsManager;
  35081 }();
  35082 
  35083 exports.default = RevisionsManager;
  35084 
  35085 /***/ }),
  35086 
  35087 /***/ "../modules/history/assets/js/revisions/model.js":
  35088 /*!*******************************************************!*\
  35089   !*** ../modules/history/assets/js/revisions/model.js ***!
  35090   \*******************************************************/
  35091 /***/ ((module) => {
  35092 
  35093 "use strict";
  35094 
  35095 
  35096 var RevisionModel;
  35097 RevisionModel = Backbone.Model.extend();
  35098 
  35099 RevisionModel.prototype.sync = function () {
  35100   return null;
  35101 };
  35102 
  35103 module.exports = RevisionModel;
  35104 
  35105 /***/ }),
  35106 
  35107 /***/ "../modules/history/assets/js/revisions/panel/empty.js":
  35108 /*!*************************************************************!*\
  35109   !*** ../modules/history/assets/js/revisions/panel/empty.js ***!
  35110   \*************************************************************/
  35111 /***/ ((module) => {
  35112 
  35113 "use strict";
  35114 
  35115 
  35116 module.exports = Marionette.ItemView.extend({
  35117   template: '#tmpl-elementor-panel-revisions-no-revisions',
  35118   id: 'elementor-panel-revisions-no-revisions',
  35119   className: 'elementor-nerd-box'
  35120 });
  35121 
  35122 /***/ }),
  35123 
  35124 /***/ "../modules/history/assets/js/revisions/panel/loading.js":
  35125 /*!***************************************************************!*\
  35126   !*** ../modules/history/assets/js/revisions/panel/loading.js ***!
  35127   \***************************************************************/
  35128 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  35129 
  35130 "use strict";
  35131 
  35132 
  35133 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  35134 
  35135 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  35136 
  35137 _Object$defineProperty(exports, "__esModule", {
  35138   value: true
  35139 });
  35140 
  35141 exports.default = void 0;
  35142 
  35143 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  35144 
  35145 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  35146 
  35147 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  35148 
  35149 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  35150 
  35151 var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  35152   (0, _inherits2.default)(_default, _Marionette$ItemView);
  35153 
  35154   var _super = (0, _createSuper2.default)(_default);
  35155 
  35156   function _default() {
  35157     (0, _classCallCheck2.default)(this, _default);
  35158     return _super.apply(this, arguments);
  35159   }
  35160 
  35161   (0, _createClass2.default)(_default, [{
  35162     key: "getTemplate",
  35163     value: function getTemplate() {
  35164       return '#tmpl-elementor-panel-revisions-loading';
  35165     }
  35166   }, {
  35167     key: "id",
  35168     value: function id() {
  35169       return 'elementor-panel-revisions-loading';
  35170     }
  35171   }, {
  35172     key: "onRender",
  35173     value: function onRender() {
  35174       this.options.document.revisions.requestRevisions(function () {
  35175         setTimeout(function () {
  35176           return $e.routes.refreshContainer('panel');
  35177         });
  35178       });
  35179     }
  35180   }]);
  35181   return _default;
  35182 }(Marionette.ItemView);
  35183 
  35184 exports.default = _default;
  35185 
  35186 /***/ }),
  35187 
  35188 /***/ "../modules/history/assets/js/revisions/panel/tab.js":
  35189 /*!***********************************************************!*\
  35190   !*** ../modules/history/assets/js/revisions/panel/tab.js ***!
  35191   \***********************************************************/
  35192 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35193 
  35194 "use strict";
  35195 
  35196 
  35197 module.exports = Marionette.CompositeView.extend({
  35198   id: 'elementor-panel-revisions',
  35199   template: '#tmpl-elementor-panel-revisions',
  35200   childView: __webpack_require__(/*! ./view */ "../modules/history/assets/js/revisions/panel/view.js"),
  35201   childViewContainer: '#elementor-revisions-list',
  35202   ui: {
  35203     discard: '.elementor-panel-scheme-discard .elementor-button',
  35204     apply: '.elementor-panel-scheme-save .elementor-button'
  35205   },
  35206   events: {
  35207     'click @ui.discard': 'onDiscardClick',
  35208     'click @ui.apply': 'onApplyClick'
  35209   },
  35210   isRevisionApplied: false,
  35211   currentPreviewId: null,
  35212   currentPreviewItem: null,
  35213   document: null,
  35214   initialize: function initialize(options) {
  35215     this.document = options.document;
  35216     this.collection = this.document.revisions.getItems();
  35217     this.listenTo(elementor.channels.editor, 'saved', this.onEditorSaved);
  35218     this.currentPreviewId = elementor.config.document.revisions.current_id;
  35219   },
  35220   getRevisionViewData: function getRevisionViewData(revisionView) {
  35221     var _this = this;
  35222 
  35223     this.document.revisions.getRevisionDataAsync(revisionView.model.get('id'), {
  35224       success: function success(data) {
  35225         if (_this.document.config.panel.has_elements) {
  35226           _this.document.revisions.setEditorData(data.elements);
  35227         }
  35228 
  35229         elementor.settings.page.model.set(data.settings);
  35230 
  35231         _this.setRevisionsButtonsActive(true);
  35232 
  35233         revisionView.$el.removeClass('elementor-revision-item-loading');
  35234 
  35235         _this.enterReviewMode();
  35236       },
  35237       error: function error(errorMessage) {
  35238         revisionView.$el.removeClass('elementor-revision-item-loading');
  35239         _this.currentPreviewItem = null;
  35240         _this.currentPreviewId = null;
  35241         alert(errorMessage);
  35242       }
  35243     });
  35244   },
  35245   setRevisionsButtonsActive: function setRevisionsButtonsActive(active) {
  35246     // Check the tab is open.
  35247     if (!this.isDestroyed) {
  35248       this.ui.apply.add(this.ui.discard).prop('disabled', !active);
  35249     }
  35250   },
  35251   deleteRevision: function deleteRevision(revisionView) {
  35252     var _this2 = this;
  35253 
  35254     revisionView.$el.addClass('elementor-revision-item-loading');
  35255     this.document.revisions.deleteRevision(revisionView.model, {
  35256       success: function success() {
  35257         if (revisionView.model.get('id') === _this2.currentPreviewId) {
  35258           _this2.onDiscardClick();
  35259         }
  35260 
  35261         _this2.currentPreviewId = null;
  35262       },
  35263       error: function error() {
  35264         revisionView.$el.removeClass('elementor-revision-item-loading');
  35265         alert('An error occurred');
  35266       }
  35267     });
  35268   },
  35269   enterReviewMode: function enterReviewMode() {
  35270     elementor.changeEditMode('review');
  35271   },
  35272   exitReviewMode: function exitReviewMode() {
  35273     elementor.changeEditMode('edit');
  35274   },
  35275   navigate: function navigate(reverse) {
  35276     if (!this.currentPreviewId || !this.currentPreviewItem || this.children.length <= 1) {
  35277       return;
  35278     }
  35279 
  35280     var currentPreviewItemIndex = this.collection.indexOf(this.currentPreviewItem.model),
  35281         requiredIndex = reverse ? currentPreviewItemIndex - 1 : currentPreviewItemIndex + 1;
  35282 
  35283     if (requiredIndex < 0) {
  35284       requiredIndex = this.collection.length - 1;
  35285     }
  35286 
  35287     if (requiredIndex >= this.collection.length) {
  35288       requiredIndex = 0;
  35289     }
  35290 
  35291     this.children.findByIndex(requiredIndex).ui.detailsArea.trigger('click');
  35292   },
  35293   onEditorSaved: function onEditorSaved() {
  35294     this.exitReviewMode();
  35295     this.setRevisionsButtonsActive(false);
  35296     this.currentPreviewId = elementor.config.document.revisions.current_id;
  35297   },
  35298   onApplyClick: function onApplyClick() {
  35299     $e.internal('document/save/set-is-modified', {
  35300       status: true
  35301     });
  35302     $e.run('document/save/auto', {
  35303       force: true
  35304     });
  35305     this.isRevisionApplied = true;
  35306     this.currentPreviewId = null;
  35307     this.document.history.getItems().reset();
  35308   },
  35309   onDiscardClick: function onDiscardClick() {
  35310     if (this.document.config.panel.has_elements) {
  35311       this.document.revisions.setEditorData(elementor.config.document.elements);
  35312     }
  35313 
  35314     $e.internal('document/save/set-is-modified', {
  35315       status: this.isRevisionApplied
  35316     });
  35317     this.isRevisionApplied = false;
  35318     this.setRevisionsButtonsActive(false);
  35319     this.currentPreviewId = null;
  35320     this.exitReviewMode();
  35321 
  35322     if (this.currentPreviewItem) {
  35323       this.currentPreviewItem.$el.removeClass('elementor-revision-current-preview');
  35324     }
  35325   },
  35326   onDestroy: function onDestroy() {
  35327     if (this.currentPreviewId && this.currentPreviewId !== elementor.config.document.revisions.current_id) {
  35328       this.onDiscardClick();
  35329     }
  35330   },
  35331   onRenderCollection: function onRenderCollection() {
  35332     if (!this.currentPreviewId) {
  35333       return;
  35334     }
  35335 
  35336     var currentPreviewModel = this.collection.findWhere({
  35337       id: this.currentPreviewId
  35338     }); // Ensure the model is exist and not deleted during a save.
  35339 
  35340     if (currentPreviewModel) {
  35341       this.currentPreviewItem = this.children.findByModelCid(currentPreviewModel.cid);
  35342       this.currentPreviewItem.$el.addClass('elementor-revision-current-preview');
  35343     }
  35344   },
  35345   onChildviewDetailsAreaClick: function onChildviewDetailsAreaClick(childView) {
  35346     var _this3 = this;
  35347 
  35348     var revisionID = childView.model.get('id');
  35349 
  35350     if (revisionID === this.currentPreviewId) {
  35351       return;
  35352     }
  35353 
  35354     if (this.currentPreviewItem) {
  35355       this.currentPreviewItem.$el.removeClass('elementor-revision-current-preview elementor-revision-item-loading');
  35356     }
  35357 
  35358     childView.$el.addClass('elementor-revision-current-preview elementor-revision-item-loading');
  35359     var revision = null === this.currentPreviewId || elementor.config.document.revisions.current_id === this.currentPreviewId;
  35360 
  35361     if (revision && elementor.saver.isEditorChanged()) {
  35362       // TODO: Change to 'document/save/auto' ?.
  35363       $e.internal('document/save/save', {
  35364         status: 'autosave',
  35365         onSuccess: function onSuccess() {
  35366           _this3.getRevisionViewData(childView);
  35367         }
  35368       });
  35369     } else {
  35370       this.getRevisionViewData(childView);
  35371     }
  35372 
  35373     this.currentPreviewItem = childView;
  35374     this.currentPreviewId = revisionID;
  35375   }
  35376 });
  35377 
  35378 /***/ }),
  35379 
  35380 /***/ "../modules/history/assets/js/revisions/panel/view.js":
  35381 /*!************************************************************!*\
  35382   !*** ../modules/history/assets/js/revisions/panel/view.js ***!
  35383   \************************************************************/
  35384 /***/ ((module) => {
  35385 
  35386 "use strict";
  35387 
  35388 
  35389 module.exports = Marionette.ItemView.extend({
  35390   template: '#tmpl-elementor-panel-revisions-revision-item',
  35391   className: 'elementor-revision-item',
  35392   ui: {
  35393     detailsArea: '.elementor-revision-item__details'
  35394   },
  35395   triggers: {
  35396     'click @ui.detailsArea': 'detailsArea:click'
  35397   }
  35398 });
  35399 
  35400 /***/ }),
  35401 
  35402 /***/ "../modules/landing-pages/assets/js/editor/component.js":
  35403 /*!**************************************************************!*\
  35404   !*** ../modules/landing-pages/assets/js/editor/component.js ***!
  35405   \**************************************************************/
  35406 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  35407 
  35408 "use strict";
  35409 
  35410 
  35411 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  35412 
  35413 var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");
  35414 
  35415 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  35416 
  35417 _Object$defineProperty(exports, "__esModule", {
  35418   value: true
  35419 });
  35420 
  35421 exports.default = void 0;
  35422 
  35423 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  35424 
  35425 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  35426 
  35427 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  35428 
  35429 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  35430 
  35431 var hooks = _interopRequireWildcard(__webpack_require__(/*! ./hooks/ */ "../modules/landing-pages/assets/js/editor/hooks/index.js"));
  35432 
  35433 var LandingPageComponent = /*#__PURE__*/function (_$e$modules$Component) {
  35434   (0, _inherits2.default)(LandingPageComponent, _$e$modules$Component);
  35435 
  35436   var _super = (0, _createSuper2.default)(LandingPageComponent);
  35437 
  35438   function LandingPageComponent() {
  35439     (0, _classCallCheck2.default)(this, LandingPageComponent);
  35440     return _super.apply(this, arguments);
  35441   }
  35442 
  35443   (0, _createClass2.default)(LandingPageComponent, [{
  35444     key: "getNamespace",
  35445     value: function getNamespace() {
  35446       return 'document/landing-page';
  35447     }
  35448   }, {
  35449     key: "defaultHooks",
  35450     value: function defaultHooks() {
  35451       return this.importHooks(hooks);
  35452     }
  35453   }]);
  35454   return LandingPageComponent;
  35455 }($e.modules.ComponentBase);
  35456 
  35457 exports.default = LandingPageComponent;
  35458 
  35459 /***/ }),
  35460 
  35461 /***/ "../modules/landing-pages/assets/js/editor/hooks/index.js":
  35462 /*!****************************************************************!*\
  35463   !*** ../modules/landing-pages/assets/js/editor/hooks/index.js ***!
  35464   \****************************************************************/
  35465 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  35466 
  35467 "use strict";
  35468 
  35469 
  35470 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  35471 
  35472 _Object$defineProperty(exports, "__esModule", {
  35473   value: true
  35474 });
  35475 
  35476 _Object$defineProperty(exports, "LandingPageAddLibraryTab", {
  35477   enumerable: true,
  35478   get: function get() {
  35479     return _addLandingPagesTab.LandingPageAddLibraryTab;
  35480   }
  35481 });
  35482 
  35483 _Object$defineProperty(exports, "LandingPageRemoveLibraryTab", {
  35484   enumerable: true,
  35485   get: function get() {
  35486     return _removeLandingPagesTab.LandingPageRemoveLibraryTab;
  35487   }
  35488 });
  35489 
  35490 var _addLandingPagesTab = __webpack_require__(/*! ./ui/editor/documents/open/add-landing-pages-tab */ "../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/open/add-landing-pages-tab.js");
  35491 
  35492 var _removeLandingPagesTab = __webpack_require__(/*! ./ui/editor/documents/close/remove-landing-pages-tab */ "../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/close/remove-landing-pages-tab.js");
  35493 
  35494 /***/ }),
  35495 
  35496 /***/ "../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/close/remove-landing-pages-tab.js":
  35497 /*!*************************************************************************************************************!*\
  35498   !*** ../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/close/remove-landing-pages-tab.js ***!
  35499   \*************************************************************************************************************/
  35500 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  35501 
  35502 "use strict";
  35503 
  35504 
  35505 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  35506 
  35507 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  35508 
  35509 _Object$defineProperty(exports, "__esModule", {
  35510   value: true
  35511 });
  35512 
  35513 exports.default = exports.LandingPageRemoveLibraryTab = void 0;
  35514 
  35515 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  35516 
  35517 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  35518 
  35519 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  35520 
  35521 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  35522 
  35523 var LandingPageRemoveLibraryTab = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  35524   (0, _inherits2.default)(LandingPageRemoveLibraryTab, _$e$modules$hookUI$Af);
  35525 
  35526   var _super = (0, _createSuper2.default)(LandingPageRemoveLibraryTab);
  35527 
  35528   function LandingPageRemoveLibraryTab() {
  35529     (0, _classCallCheck2.default)(this, LandingPageRemoveLibraryTab);
  35530     return _super.apply(this, arguments);
  35531   }
  35532 
  35533   (0, _createClass2.default)(LandingPageRemoveLibraryTab, [{
  35534     key: "getCommand",
  35535     value: function getCommand() {
  35536       return 'editor/documents/unload';
  35537     }
  35538   }, {
  35539     key: "getId",
  35540     value: function getId() {
  35541       return 'elementor-landing-pages-remove-library-tab';
  35542     }
  35543   }, {
  35544     key: "getConditions",
  35545     value: function getConditions(args) {
  35546       var document = args.document;
  35547       return 'landing-page' === document.config.type;
  35548     }
  35549   }, {
  35550     key: "apply",
  35551     value: function apply() {
  35552       $e.components.get('library').removeTab('templates/landing-pages'); // Pages are replaced by landing pages so when Landing Pages are removed, the Pages have to be re-added.
  35553 
  35554       $e.components.get('library').addTab('templates/pages');
  35555     }
  35556   }]);
  35557   return LandingPageRemoveLibraryTab;
  35558 }($e.modules.hookUI.After);
  35559 
  35560 exports.LandingPageRemoveLibraryTab = LandingPageRemoveLibraryTab;
  35561 var _default = LandingPageRemoveLibraryTab;
  35562 exports.default = _default;
  35563 
  35564 /***/ }),
  35565 
  35566 /***/ "../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/open/add-landing-pages-tab.js":
  35567 /*!*********************************************************************************************************!*\
  35568   !*** ../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/open/add-landing-pages-tab.js ***!
  35569   \*********************************************************************************************************/
  35570 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  35571 
  35572 "use strict";
  35573 /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
  35574 
  35575 
  35576 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  35577 
  35578 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  35579 
  35580 _Object$defineProperty(exports, "__esModule", {
  35581   value: true
  35582 });
  35583 
  35584 exports.default = exports.LandingPageAddLibraryTab = void 0;
  35585 
  35586 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  35587 
  35588 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  35589 
  35590 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  35591 
  35592 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  35593 
  35594 var LandingPageAddLibraryTab = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  35595   (0, _inherits2.default)(LandingPageAddLibraryTab, _$e$modules$hookUI$Af);
  35596 
  35597   var _super = (0, _createSuper2.default)(LandingPageAddLibraryTab);
  35598 
  35599   function LandingPageAddLibraryTab() {
  35600     (0, _classCallCheck2.default)(this, LandingPageAddLibraryTab);
  35601     return _super.apply(this, arguments);
  35602   }
  35603 
  35604   (0, _createClass2.default)(LandingPageAddLibraryTab, [{
  35605     key: "getCommand",
  35606     value: function getCommand() {
  35607       return 'editor/documents/open';
  35608     }
  35609   }, {
  35610     key: "getId",
  35611     value: function getId() {
  35612       return 'elementor-landing-pages-add-library-tab';
  35613     }
  35614   }, {
  35615     key: "getConditions",
  35616     value: function getConditions(args) {
  35617       var document = elementor.documents.get(args.id);
  35618       return 'landing-page' === document.config.type;
  35619     }
  35620   }, {
  35621     key: "apply",
  35622     value: function apply() {
  35623       $e.components.get('library').addTab('templates/landing-pages', {
  35624         title: __('Landing Pages', 'elementor'),
  35625         filter: {
  35626           source: 'remote',
  35627           type: 'lp'
  35628         }
  35629       }, 2); // Pages are replaced by landing pages so they need to be removed.
  35630 
  35631       $e.components.get('library').removeTab('templates/pages');
  35632     }
  35633   }]);
  35634   return LandingPageAddLibraryTab;
  35635 }($e.modules.hookUI.After);
  35636 
  35637 exports.LandingPageAddLibraryTab = LandingPageAddLibraryTab;
  35638 var _default = LandingPageAddLibraryTab;
  35639 exports.default = _default;
  35640 
  35641 /***/ }),
  35642 
  35643 /***/ "../modules/landing-pages/assets/js/editor/module.js":
  35644 /*!***********************************************************!*\
  35645   !*** ../modules/landing-pages/assets/js/editor/module.js ***!
  35646   \***********************************************************/
  35647 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  35648 
  35649 "use strict";
  35650 
  35651 
  35652 var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");
  35653 
  35654 var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");
  35655 
  35656 _Object$defineProperty(exports, "__esModule", {
  35657   value: true
  35658 });
  35659 
  35660 exports.default = void 0;
  35661 
  35662 var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));
  35663 
  35664 var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));
  35665 
  35666 var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));
  35667 
  35668 var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));
  35669 
  35670 var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../modules/landing-pages/assets/js/editor/component.js"));
  35671 
  35672 var LandingPageLibraryModule = /*#__PURE__*/function (_elementorModules$edi) {
  35673   (0, _inherits2.default)(LandingPageLibraryModule, _elementorModules$edi);
  35674 
  35675   var _super = (0, _createSuper2.default)(LandingPageLibraryModule);
  35676 
  35677   function LandingPageLibraryModule() {
  35678     (0, _classCallCheck2.default)(this, LandingPageLibraryModule);
  35679     return _super.apply(this, arguments);
  35680   }
  35681 
  35682   (0, _createClass2.default)(LandingPageLibraryModule, [{
  35683     key: "onElementorLoaded",
  35684     value: function onElementorLoaded() {
  35685       this.component = $e.components.register(new _component.default({
  35686         manager: this
  35687       }));
  35688     }
  35689   }]);
  35690   return LandingPageLibraryModule;
  35691 }(elementorModules.editor.utils.Module);
  35692 
  35693 var _default = LandingPageLibraryModule;
  35694 exports.default = _default;
  35695 
  35696 /***/ }),
  35697 
  35698 /***/ "../node_modules/core-js/library/fn/array/from.js":
  35699 /*!********************************************************!*\
  35700   !*** ../node_modules/core-js/library/fn/array/from.js ***!
  35701   \********************************************************/
  35702 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35703 
  35704 __webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
  35705 __webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
  35706 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;
  35707 
  35708 
  35709 /***/ }),
  35710 
  35711 /***/ "../node_modules/core-js/library/fn/array/is-array.js":
  35712 /*!************************************************************!*\
  35713   !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  35714   \************************************************************/
  35715 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35716 
  35717 __webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
  35718 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;
  35719 
  35720 
  35721 /***/ }),
  35722 
  35723 /***/ "../node_modules/core-js/library/fn/is-iterable.js":
  35724 /*!*********************************************************!*\
  35725   !*** ../node_modules/core-js/library/fn/is-iterable.js ***!
  35726   \*********************************************************/
  35727 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35728 
  35729 __webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
  35730 __webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
  35731 module.exports = __webpack_require__(/*! ../modules/core.is-iterable */ "../node_modules/core-js/library/modules/core.is-iterable.js");
  35732 
  35733 
  35734 /***/ }),
  35735 
  35736 /***/ "../node_modules/core-js/library/fn/json/stringify.js":
  35737 /*!************************************************************!*\
  35738   !*** ../node_modules/core-js/library/fn/json/stringify.js ***!
  35739   \************************************************************/
  35740 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35741 
  35742 var core = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js");
  35743 var $JSON = core.JSON || (core.JSON = { stringify: JSON.stringify });
  35744 module.exports = function stringify(it) { // eslint-disable-line no-unused-vars
  35745   return $JSON.stringify.apply($JSON, arguments);
  35746 };
  35747 
  35748 
  35749 /***/ }),
  35750 
  35751 /***/ "../node_modules/core-js/library/fn/object/assign.js":
  35752 /*!***********************************************************!*\
  35753   !*** ../node_modules/core-js/library/fn/object/assign.js ***!
  35754   \***********************************************************/
  35755 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35756 
  35757 __webpack_require__(/*! ../../modules/es6.object.assign */ "../node_modules/core-js/library/modules/es6.object.assign.js");
  35758 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.assign;
  35759 
  35760 
  35761 /***/ }),
  35762 
  35763 /***/ "../node_modules/core-js/library/fn/object/create.js":
  35764 /*!***********************************************************!*\
  35765   !*** ../node_modules/core-js/library/fn/object/create.js ***!
  35766   \***********************************************************/
  35767 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35768 
  35769 __webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
  35770 var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
  35771 module.exports = function create(P, D) {
  35772   return $Object.create(P, D);
  35773 };
  35774 
  35775 
  35776 /***/ }),
  35777 
  35778 /***/ "../node_modules/core-js/library/fn/object/define-properties.js":
  35779 /*!**********************************************************************!*\
  35780   !*** ../node_modules/core-js/library/fn/object/define-properties.js ***!
  35781   \**********************************************************************/
  35782 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35783 
  35784 __webpack_require__(/*! ../../modules/es6.object.define-properties */ "../node_modules/core-js/library/modules/es6.object.define-properties.js");
  35785 var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
  35786 module.exports = function defineProperties(T, D) {
  35787   return $Object.defineProperties(T, D);
  35788 };
  35789 
  35790 
  35791 /***/ }),
  35792 
  35793 /***/ "../node_modules/core-js/library/fn/object/define-property.js":
  35794 /*!********************************************************************!*\
  35795   !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  35796   \********************************************************************/
  35797 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35798 
  35799 __webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
  35800 var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
  35801 module.exports = function defineProperty(it, key, desc) {
  35802   return $Object.defineProperty(it, key, desc);
  35803 };
  35804 
  35805 
  35806 /***/ }),
  35807 
  35808 /***/ "../node_modules/core-js/library/fn/object/entries.js":
  35809 /*!************************************************************!*\
  35810   !*** ../node_modules/core-js/library/fn/object/entries.js ***!
  35811   \************************************************************/
  35812 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35813 
  35814 __webpack_require__(/*! ../../modules/es7.object.entries */ "../node_modules/core-js/library/modules/es7.object.entries.js");
  35815 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.entries;
  35816 
  35817 
  35818 /***/ }),
  35819 
  35820 /***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
  35821 /*!********************************************************************************!*\
  35822   !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  35823   \********************************************************************************/
  35824 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35825 
  35826 __webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
  35827 var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
  35828 module.exports = function getOwnPropertyDescriptor(it, key) {
  35829   return $Object.getOwnPropertyDescriptor(it, key);
  35830 };
  35831 
  35832 
  35833 /***/ }),
  35834 
  35835 /***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js":
  35836 /*!*********************************************************************************!*\
  35837   !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptors.js ***!
  35838   \*********************************************************************************/
  35839 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35840 
  35841 __webpack_require__(/*! ../../modules/es7.object.get-own-property-descriptors */ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js");
  35842 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertyDescriptors;
  35843 
  35844 
  35845 /***/ }),
  35846 
  35847 /***/ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js":
  35848 /*!*****************************************************************************!*\
  35849   !*** ../node_modules/core-js/library/fn/object/get-own-property-symbols.js ***!
  35850   \*****************************************************************************/
  35851 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35852 
  35853 __webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
  35854 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertySymbols;
  35855 
  35856 
  35857 /***/ }),
  35858 
  35859 /***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
  35860 /*!*********************************************************************!*\
  35861   !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  35862   \*********************************************************************/
  35863 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35864 
  35865 __webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
  35866 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;
  35867 
  35868 
  35869 /***/ }),
  35870 
  35871 /***/ "../node_modules/core-js/library/fn/object/keys.js":
  35872 /*!*********************************************************!*\
  35873   !*** ../node_modules/core-js/library/fn/object/keys.js ***!
  35874   \*********************************************************/
  35875 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35876 
  35877 __webpack_require__(/*! ../../modules/es6.object.keys */ "../node_modules/core-js/library/modules/es6.object.keys.js");
  35878 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.keys;
  35879 
  35880 
  35881 /***/ }),
  35882 
  35883 /***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
  35884 /*!*********************************************************************!*\
  35885   !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  35886   \*********************************************************************/
  35887 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35888 
  35889 __webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
  35890 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;
  35891 
  35892 
  35893 /***/ }),
  35894 
  35895 /***/ "../node_modules/core-js/library/fn/object/values.js":
  35896 /*!***********************************************************!*\
  35897   !*** ../node_modules/core-js/library/fn/object/values.js ***!
  35898   \***********************************************************/
  35899 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35900 
  35901 __webpack_require__(/*! ../../modules/es7.object.values */ "../node_modules/core-js/library/modules/es7.object.values.js");
  35902 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.values;
  35903 
  35904 
  35905 /***/ }),
  35906 
  35907 /***/ "../node_modules/core-js/library/fn/parse-int.js":
  35908 /*!*******************************************************!*\
  35909   !*** ../node_modules/core-js/library/fn/parse-int.js ***!
  35910   \*******************************************************/
  35911 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35912 
  35913 __webpack_require__(/*! ../modules/es6.parse-int */ "../node_modules/core-js/library/modules/es6.parse-int.js");
  35914 module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").parseInt;
  35915 
  35916 
  35917 /***/ }),
  35918 
  35919 /***/ "../node_modules/core-js/library/fn/promise.js":
  35920 /*!*****************************************************!*\
  35921   !*** ../node_modules/core-js/library/fn/promise.js ***!
  35922   \*****************************************************/
  35923 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35924 
  35925 __webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
  35926 __webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
  35927 __webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
  35928 __webpack_require__(/*! ../modules/es6.promise */ "../node_modules/core-js/library/modules/es6.promise.js");
  35929 __webpack_require__(/*! ../modules/es7.promise.finally */ "../node_modules/core-js/library/modules/es7.promise.finally.js");
  35930 __webpack_require__(/*! ../modules/es7.promise.try */ "../node_modules/core-js/library/modules/es7.promise.try.js");
  35931 module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Promise;
  35932 
  35933 
  35934 /***/ }),
  35935 
  35936 /***/ "../node_modules/core-js/library/fn/reflect/construct.js":
  35937 /*!***************************************************************!*\
  35938   !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  35939   \***************************************************************/
  35940 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35941 
  35942 __webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
  35943 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;
  35944 
  35945 
  35946 /***/ }),
  35947 
  35948 /***/ "../node_modules/core-js/library/fn/reflect/get.js":
  35949 /*!*********************************************************!*\
  35950   !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  35951   \*********************************************************/
  35952 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35953 
  35954 __webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
  35955 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;
  35956 
  35957 
  35958 /***/ }),
  35959 
  35960 /***/ "../node_modules/core-js/library/fn/symbol/has-instance.js":
  35961 /*!*****************************************************************!*\
  35962   !*** ../node_modules/core-js/library/fn/symbol/has-instance.js ***!
  35963   \*****************************************************************/
  35964 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35965 
  35966 __webpack_require__(/*! ../../modules/es6.function.has-instance */ "../node_modules/core-js/library/modules/es6.function.has-instance.js");
  35967 module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('hasInstance');
  35968 
  35969 
  35970 /***/ }),
  35971 
  35972 /***/ "../node_modules/core-js/library/fn/symbol/index.js":
  35973 /*!**********************************************************!*\
  35974   !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  35975   \**********************************************************/
  35976 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35977 
  35978 __webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
  35979 __webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
  35980 __webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
  35981 __webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
  35982 module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;
  35983 
  35984 
  35985 /***/ }),
  35986 
  35987 /***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
  35988 /*!*************************************************************!*\
  35989   !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  35990   \*************************************************************/
  35991 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  35992 
  35993 __webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
  35994 __webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
  35995 module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');
  35996 
  35997 
  35998 /***/ }),
  35999 
  36000 /***/ "../node_modules/core-js/library/fn/weak-map.js":
  36001 /*!******************************************************!*\
  36002   !*** ../node_modules/core-js/library/fn/weak-map.js ***!
  36003   \******************************************************/
  36004 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36005 
  36006 __webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
  36007 __webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
  36008 __webpack_require__(/*! ../modules/es6.weak-map */ "../node_modules/core-js/library/modules/es6.weak-map.js");
  36009 __webpack_require__(/*! ../modules/es7.weak-map.of */ "../node_modules/core-js/library/modules/es7.weak-map.of.js");
  36010 __webpack_require__(/*! ../modules/es7.weak-map.from */ "../node_modules/core-js/library/modules/es7.weak-map.from.js");
  36011 module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").WeakMap;
  36012 
  36013 
  36014 /***/ }),
  36015 
  36016 /***/ "../node_modules/core-js/library/modules/_a-function.js":
  36017 /*!**************************************************************!*\
  36018   !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  36019   \**************************************************************/
  36020 /***/ ((module) => {
  36021 
  36022 module.exports = function (it) {
  36023   if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  36024   return it;
  36025 };
  36026 
  36027 
  36028 /***/ }),
  36029 
  36030 /***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
  36031 /*!**********************************************************************!*\
  36032   !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  36033   \**********************************************************************/
  36034 /***/ ((module) => {
  36035 
  36036 module.exports = function () { /* empty */ };
  36037 
  36038 
  36039 /***/ }),
  36040 
  36041 /***/ "../node_modules/core-js/library/modules/_an-instance.js":
  36042 /*!***************************************************************!*\
  36043   !*** ../node_modules/core-js/library/modules/_an-instance.js ***!
  36044   \***************************************************************/
  36045 /***/ ((module) => {
  36046 
  36047 module.exports = function (it, Constructor, name, forbiddenField) {
  36048   if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
  36049     throw TypeError(name + ': incorrect invocation!');
  36050   } return it;
  36051 };
  36052 
  36053 
  36054 /***/ }),
  36055 
  36056 /***/ "../node_modules/core-js/library/modules/_an-object.js":
  36057 /*!*************************************************************!*\
  36058   !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  36059   \*************************************************************/
  36060 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36061 
  36062 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  36063 module.exports = function (it) {
  36064   if (!isObject(it)) throw TypeError(it + ' is not an object!');
  36065   return it;
  36066 };
  36067 
  36068 
  36069 /***/ }),
  36070 
  36071 /***/ "../node_modules/core-js/library/modules/_array-includes.js":
  36072 /*!******************************************************************!*\
  36073   !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  36074   \******************************************************************/
  36075 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36076 
  36077 // false -> Array#indexOf
  36078 // true  -> Array#includes
  36079 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
  36080 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
  36081 var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
  36082 module.exports = function (IS_INCLUDES) {
  36083   return function ($this, el, fromIndex) {
  36084     var O = toIObject($this);
  36085     var length = toLength(O.length);
  36086     var index = toAbsoluteIndex(fromIndex, length);
  36087     var value;
  36088     // Array#includes uses SameValueZero equality algorithm
  36089     // eslint-disable-next-line no-self-compare
  36090     if (IS_INCLUDES && el != el) while (length > index) {
  36091       value = O[index++];
  36092       // eslint-disable-next-line no-self-compare
  36093       if (value != value) return true;
  36094     // Array#indexOf ignores holes, Array#includes - not
  36095     } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
  36096       if (O[index] === el) return IS_INCLUDES || index || 0;
  36097     } return !IS_INCLUDES && -1;
  36098   };
  36099 };
  36100 
  36101 
  36102 /***/ }),
  36103 
  36104 /***/ "../node_modules/core-js/library/modules/_array-methods.js":
  36105 /*!*****************************************************************!*\
  36106   !*** ../node_modules/core-js/library/modules/_array-methods.js ***!
  36107   \*****************************************************************/
  36108 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36109 
  36110 // 0 -> Array#forEach
  36111 // 1 -> Array#map
  36112 // 2 -> Array#filter
  36113 // 3 -> Array#some
  36114 // 4 -> Array#every
  36115 // 5 -> Array#find
  36116 // 6 -> Array#findIndex
  36117 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
  36118 var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
  36119 var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
  36120 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
  36121 var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/library/modules/_array-species-create.js");
  36122 module.exports = function (TYPE, $create) {
  36123   var IS_MAP = TYPE == 1;
  36124   var IS_FILTER = TYPE == 2;
  36125   var IS_SOME = TYPE == 3;
  36126   var IS_EVERY = TYPE == 4;
  36127   var IS_FIND_INDEX = TYPE == 6;
  36128   var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  36129   var create = $create || asc;
  36130   return function ($this, callbackfn, that) {
  36131     var O = toObject($this);
  36132     var self = IObject(O);
  36133     var f = ctx(callbackfn, that, 3);
  36134     var length = toLength(self.length);
  36135     var index = 0;
  36136     var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
  36137     var val, res;
  36138     for (;length > index; index++) if (NO_HOLES || index in self) {
  36139       val = self[index];
  36140       res = f(val, index, O);
  36141       if (TYPE) {
  36142         if (IS_MAP) result[index] = res;   // map
  36143         else if (res) switch (TYPE) {
  36144           case 3: return true;             // some
  36145           case 5: return val;              // find
  36146           case 6: return index;            // findIndex
  36147           case 2: result.push(val);        // filter
  36148         } else if (IS_EVERY) return false; // every
  36149       }
  36150     }
  36151     return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  36152   };
  36153 };
  36154 
  36155 
  36156 /***/ }),
  36157 
  36158 /***/ "../node_modules/core-js/library/modules/_array-species-constructor.js":
  36159 /*!*****************************************************************************!*\
  36160   !*** ../node_modules/core-js/library/modules/_array-species-constructor.js ***!
  36161   \*****************************************************************************/
  36162 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36163 
  36164 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  36165 var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
  36166 var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');
  36167 
  36168 module.exports = function (original) {
  36169   var C;
  36170   if (isArray(original)) {
  36171     C = original.constructor;
  36172     // cross-realm fallback
  36173     if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
  36174     if (isObject(C)) {
  36175       C = C[SPECIES];
  36176       if (C === null) C = undefined;
  36177     }
  36178   } return C === undefined ? Array : C;
  36179 };
  36180 
  36181 
  36182 /***/ }),
  36183 
  36184 /***/ "../node_modules/core-js/library/modules/_array-species-create.js":
  36185 /*!************************************************************************!*\
  36186   !*** ../node_modules/core-js/library/modules/_array-species-create.js ***!
  36187   \************************************************************************/
  36188 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36189 
  36190 // 9.4.2.3 ArraySpeciesCreate(originalArray, length)
  36191 var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/library/modules/_array-species-constructor.js");
  36192 
  36193 module.exports = function (original, length) {
  36194   return new (speciesConstructor(original))(length);
  36195 };
  36196 
  36197 
  36198 /***/ }),
  36199 
  36200 /***/ "../node_modules/core-js/library/modules/_bind.js":
  36201 /*!********************************************************!*\
  36202   !*** ../node_modules/core-js/library/modules/_bind.js ***!
  36203   \********************************************************/
  36204 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36205 
  36206 "use strict";
  36207 
  36208 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
  36209 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  36210 var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
  36211 var arraySlice = [].slice;
  36212 var factories = {};
  36213 
  36214 var construct = function (F, len, args) {
  36215   if (!(len in factories)) {
  36216     for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
  36217     // eslint-disable-next-line no-new-func
  36218     factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  36219   } return factories[len](F, args);
  36220 };
  36221 
  36222 module.exports = Function.bind || function bind(that /* , ...args */) {
  36223   var fn = aFunction(this);
  36224   var partArgs = arraySlice.call(arguments, 1);
  36225   var bound = function (/* args... */) {
  36226     var args = partArgs.concat(arraySlice.call(arguments));
  36227     return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  36228   };
  36229   if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  36230   return bound;
  36231 };
  36232 
  36233 
  36234 /***/ }),
  36235 
  36236 /***/ "../node_modules/core-js/library/modules/_classof.js":
  36237 /*!***********************************************************!*\
  36238   !*** ../node_modules/core-js/library/modules/_classof.js ***!
  36239   \***********************************************************/
  36240 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36241 
  36242 // getting tag from 19.1.3.6 Object.prototype.toString()
  36243 var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
  36244 var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
  36245 // ES3 wrong here
  36246 var ARG = cof(function () { return arguments; }()) == 'Arguments';
  36247 
  36248 // fallback for IE11 Script Access Denied error
  36249 var tryGet = function (it, key) {
  36250   try {
  36251     return it[key];
  36252   } catch (e) { /* empty */ }
  36253 };
  36254 
  36255 module.exports = function (it) {
  36256   var O, T, B;
  36257   return it === undefined ? 'Undefined' : it === null ? 'Null'
  36258     // @@toStringTag case
  36259     : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
  36260     // builtinTag case
  36261     : ARG ? cof(O)
  36262     // ES3 arguments fallback
  36263     : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
  36264 };
  36265 
  36266 
  36267 /***/ }),
  36268 
  36269 /***/ "../node_modules/core-js/library/modules/_cof.js":
  36270 /*!*******************************************************!*\
  36271   !*** ../node_modules/core-js/library/modules/_cof.js ***!
  36272   \*******************************************************/
  36273 /***/ ((module) => {
  36274 
  36275 var toString = {}.toString;
  36276 
  36277 module.exports = function (it) {
  36278   return toString.call(it).slice(8, -1);
  36279 };
  36280 
  36281 
  36282 /***/ }),
  36283 
  36284 /***/ "../node_modules/core-js/library/modules/_collection-weak.js":
  36285 /*!*******************************************************************!*\
  36286   !*** ../node_modules/core-js/library/modules/_collection-weak.js ***!
  36287   \*******************************************************************/
  36288 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36289 
  36290 "use strict";
  36291 
  36292 var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
  36293 var getWeak = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").getWeak;
  36294 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  36295 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  36296 var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
  36297 var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
  36298 var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js");
  36299 var $has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
  36300 var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
  36301 var arrayFind = createArrayMethod(5);
  36302 var arrayFindIndex = createArrayMethod(6);
  36303 var id = 0;
  36304 
  36305 // fallback for uncaught frozen keys
  36306 var uncaughtFrozenStore = function (that) {
  36307   return that._l || (that._l = new UncaughtFrozenStore());
  36308 };
  36309 var UncaughtFrozenStore = function () {
  36310   this.a = [];
  36311 };
  36312 var findUncaughtFrozen = function (store, key) {
  36313   return arrayFind(store.a, function (it) {
  36314     return it[0] === key;
  36315   });
  36316 };
  36317 UncaughtFrozenStore.prototype = {
  36318   get: function (key) {
  36319     var entry = findUncaughtFrozen(this, key);
  36320     if (entry) return entry[1];
  36321   },
  36322   has: function (key) {
  36323     return !!findUncaughtFrozen(this, key);
  36324   },
  36325   set: function (key, value) {
  36326     var entry = findUncaughtFrozen(this, key);
  36327     if (entry) entry[1] = value;
  36328     else this.a.push([key, value]);
  36329   },
  36330   'delete': function (key) {
  36331     var index = arrayFindIndex(this.a, function (it) {
  36332       return it[0] === key;
  36333     });
  36334     if (~index) this.a.splice(index, 1);
  36335     return !!~index;
  36336   }
  36337 };
  36338 
  36339 module.exports = {
  36340   getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
  36341     var C = wrapper(function (that, iterable) {
  36342       anInstance(that, C, NAME, '_i');
  36343       that._t = NAME;      // collection type
  36344       that._i = id++;      // collection id
  36345       that._l = undefined; // leak store for uncaught frozen objects
  36346       if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
  36347     });
  36348     redefineAll(C.prototype, {
  36349       // 23.3.3.2 WeakMap.prototype.delete(key)
  36350       // 23.4.3.3 WeakSet.prototype.delete(value)
  36351       'delete': function (key) {
  36352         if (!isObject(key)) return false;
  36353         var data = getWeak(key);
  36354         if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);
  36355         return data && $has(data, this._i) && delete data[this._i];
  36356       },
  36357       // 23.3.3.4 WeakMap.prototype.has(key)
  36358       // 23.4.3.4 WeakSet.prototype.has(value)
  36359       has: function has(key) {
  36360         if (!isObject(key)) return false;
  36361         var data = getWeak(key);
  36362         if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);
  36363         return data && $has(data, this._i);
  36364       }
  36365     });
  36366     return C;
  36367   },
  36368   def: function (that, key, value) {
  36369     var data = getWeak(anObject(key), true);
  36370     if (data === true) uncaughtFrozenStore(that).set(key, value);
  36371     else data[that._i] = value;
  36372     return that;
  36373   },
  36374   ufstore: uncaughtFrozenStore
  36375 };
  36376 
  36377 
  36378 /***/ }),
  36379 
  36380 /***/ "../node_modules/core-js/library/modules/_collection.js":
  36381 /*!**************************************************************!*\
  36382   !*** ../node_modules/core-js/library/modules/_collection.js ***!
  36383   \**************************************************************/
  36384 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36385 
  36386 "use strict";
  36387 
  36388 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  36389 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  36390 var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
  36391 var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
  36392 var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
  36393 var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
  36394 var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
  36395 var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
  36396 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  36397 var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
  36398 var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
  36399 var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
  36400 var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
  36401 
  36402 module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
  36403   var Base = global[NAME];
  36404   var C = Base;
  36405   var ADDER = IS_MAP ? 'set' : 'add';
  36406   var proto = C && C.prototype;
  36407   var O = {};
  36408   if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {
  36409     new C().entries().next();
  36410   }))) {
  36411     // create collection constructor
  36412     C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
  36413     redefineAll(C.prototype, methods);
  36414     meta.NEED = true;
  36415   } else {
  36416     C = wrapper(function (target, iterable) {
  36417       anInstance(target, C, NAME, '_c');
  36418       target._c = new Base();
  36419       if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target);
  36420     });
  36421     each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) {
  36422       var IS_ADDER = KEY == 'add' || KEY == 'set';
  36423       if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) {
  36424         anInstance(this, C, KEY);
  36425         if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false;
  36426         var result = this._c[KEY](a === 0 ? 0 : a, b);
  36427         return IS_ADDER ? this : result;
  36428       });
  36429     });
  36430     IS_WEAK || dP(C.prototype, 'size', {
  36431       get: function () {
  36432         return this._c.size;
  36433       }
  36434     });
  36435   }
  36436 
  36437   setToStringTag(C, NAME);
  36438 
  36439   O[NAME] = C;
  36440   $export($export.G + $export.W + $export.F, O);
  36441 
  36442   if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);
  36443 
  36444   return C;
  36445 };
  36446 
  36447 
  36448 /***/ }),
  36449 
  36450 /***/ "../node_modules/core-js/library/modules/_core.js":
  36451 /*!********************************************************!*\
  36452   !*** ../node_modules/core-js/library/modules/_core.js ***!
  36453   \********************************************************/
  36454 /***/ ((module) => {
  36455 
  36456 var core = module.exports = { version: '2.6.12' };
  36457 if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
  36458 
  36459 
  36460 /***/ }),
  36461 
  36462 /***/ "../node_modules/core-js/library/modules/_create-property.js":
  36463 /*!*******************************************************************!*\
  36464   !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  36465   \*******************************************************************/
  36466 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36467 
  36468 "use strict";
  36469 
  36470 var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
  36471 var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
  36472 
  36473 module.exports = function (object, index, value) {
  36474   if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  36475   else object[index] = value;
  36476 };
  36477 
  36478 
  36479 /***/ }),
  36480 
  36481 /***/ "../node_modules/core-js/library/modules/_ctx.js":
  36482 /*!*******************************************************!*\
  36483   !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  36484   \*******************************************************/
  36485 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36486 
  36487 // optional / simple context binding
  36488 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
  36489 module.exports = function (fn, that, length) {
  36490   aFunction(fn);
  36491   if (that === undefined) return fn;
  36492   switch (length) {
  36493     case 1: return function (a) {
  36494       return fn.call(that, a);
  36495     };
  36496     case 2: return function (a, b) {
  36497       return fn.call(that, a, b);
  36498     };
  36499     case 3: return function (a, b, c) {
  36500       return fn.call(that, a, b, c);
  36501     };
  36502   }
  36503   return function (/* ...args */) {
  36504     return fn.apply(that, arguments);
  36505   };
  36506 };
  36507 
  36508 
  36509 /***/ }),
  36510 
  36511 /***/ "../node_modules/core-js/library/modules/_defined.js":
  36512 /*!***********************************************************!*\
  36513   !*** ../node_modules/core-js/library/modules/_defined.js ***!
  36514   \***********************************************************/
  36515 /***/ ((module) => {
  36516 
  36517 // 7.2.1 RequireObjectCoercible(argument)
  36518 module.exports = function (it) {
  36519   if (it == undefined) throw TypeError("Can't call method on  " + it);
  36520   return it;
  36521 };
  36522 
  36523 
  36524 /***/ }),
  36525 
  36526 /***/ "../node_modules/core-js/library/modules/_descriptors.js":
  36527 /*!***************************************************************!*\
  36528   !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  36529   \***************************************************************/
  36530 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36531 
  36532 // Thank's IE8 for his funny defineProperty
  36533 module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  36534   return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
  36535 });
  36536 
  36537 
  36538 /***/ }),
  36539 
  36540 /***/ "../node_modules/core-js/library/modules/_dom-create.js":
  36541 /*!**************************************************************!*\
  36542   !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  36543   \**************************************************************/
  36544 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36545 
  36546 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  36547 var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
  36548 // typeof document.createElement is 'object' in old IE
  36549 var is = isObject(document) && isObject(document.createElement);
  36550 module.exports = function (it) {
  36551   return is ? document.createElement(it) : {};
  36552 };
  36553 
  36554 
  36555 /***/ }),
  36556 
  36557 /***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
  36558 /*!*****************************************************************!*\
  36559   !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  36560   \*****************************************************************/
  36561 /***/ ((module) => {
  36562 
  36563 // IE 8- don't enum bug keys
  36564 module.exports = (
  36565   'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
  36566 ).split(',');
  36567 
  36568 
  36569 /***/ }),
  36570 
  36571 /***/ "../node_modules/core-js/library/modules/_enum-keys.js":
  36572 /*!*************************************************************!*\
  36573   !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  36574   \*************************************************************/
  36575 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36576 
  36577 // all enumerable object keys, includes symbols
  36578 var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
  36579 var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
  36580 var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
  36581 module.exports = function (it) {
  36582   var result = getKeys(it);
  36583   var getSymbols = gOPS.f;
  36584   if (getSymbols) {
  36585     var symbols = getSymbols(it);
  36586     var isEnum = pIE.f;
  36587     var i = 0;
  36588     var key;
  36589     while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  36590   } return result;
  36591 };
  36592 
  36593 
  36594 /***/ }),
  36595 
  36596 /***/ "../node_modules/core-js/library/modules/_export.js":
  36597 /*!**********************************************************!*\
  36598   !*** ../node_modules/core-js/library/modules/_export.js ***!
  36599   \**********************************************************/
  36600 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36601 
  36602 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  36603 var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
  36604 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
  36605 var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
  36606 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
  36607 var PROTOTYPE = 'prototype';
  36608 
  36609 var $export = function (type, name, source) {
  36610   var IS_FORCED = type & $export.F;
  36611   var IS_GLOBAL = type & $export.G;
  36612   var IS_STATIC = type & $export.S;
  36613   var IS_PROTO = type & $export.P;
  36614   var IS_BIND = type & $export.B;
  36615   var IS_WRAP = type & $export.W;
  36616   var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  36617   var expProto = exports[PROTOTYPE];
  36618   var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  36619   var key, own, out;
  36620   if (IS_GLOBAL) source = name;
  36621   for (key in source) {
  36622     // contains in native
  36623     own = !IS_FORCED && target && target[key] !== undefined;
  36624     if (own && has(exports, key)) continue;
  36625     // export native or passed
  36626     out = own ? target[key] : source[key];
  36627     // prevent global pollution for namespaces
  36628     exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
  36629     // bind timers to global for call from export context
  36630     : IS_BIND && own ? ctx(out, global)
  36631     // wrap global constructors for prevent change them in library
  36632     : IS_WRAP && target[key] == out ? (function (C) {
  36633       var F = function (a, b, c) {
  36634         if (this instanceof C) {
  36635           switch (arguments.length) {
  36636             case 0: return new C();
  36637             case 1: return new C(a);
  36638             case 2: return new C(a, b);
  36639           } return new C(a, b, c);
  36640         } return C.apply(this, arguments);
  36641       };
  36642       F[PROTOTYPE] = C[PROTOTYPE];
  36643       return F;
  36644     // make static versions for prototype methods
  36645     })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
  36646     // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
  36647     if (IS_PROTO) {
  36648       (exports.virtual || (exports.virtual = {}))[key] = out;
  36649       // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
  36650       if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
  36651     }
  36652   }
  36653 };
  36654 // type bitmap
  36655 $export.F = 1;   // forced
  36656 $export.G = 2;   // global
  36657 $export.S = 4;   // static
  36658 $export.P = 8;   // proto
  36659 $export.B = 16;  // bind
  36660 $export.W = 32;  // wrap
  36661 $export.U = 64;  // safe
  36662 $export.R = 128; // real proto method for `library`
  36663 module.exports = $export;
  36664 
  36665 
  36666 /***/ }),
  36667 
  36668 /***/ "../node_modules/core-js/library/modules/_fails.js":
  36669 /*!*********************************************************!*\
  36670   !*** ../node_modules/core-js/library/modules/_fails.js ***!
  36671   \*********************************************************/
  36672 /***/ ((module) => {
  36673 
  36674 module.exports = function (exec) {
  36675   try {
  36676     return !!exec();
  36677   } catch (e) {
  36678     return true;
  36679   }
  36680 };
  36681 
  36682 
  36683 /***/ }),
  36684 
  36685 /***/ "../node_modules/core-js/library/modules/_for-of.js":
  36686 /*!**********************************************************!*\
  36687   !*** ../node_modules/core-js/library/modules/_for-of.js ***!
  36688   \**********************************************************/
  36689 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36690 
  36691 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
  36692 var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
  36693 var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
  36694 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  36695 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
  36696 var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");
  36697 var BREAK = {};
  36698 var RETURN = {};
  36699 var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  36700   var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  36701   var f = ctx(fn, that, entries ? 2 : 1);
  36702   var index = 0;
  36703   var length, step, iterator, result;
  36704   if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  36705   // fast case for arrays with default iterator
  36706   if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
  36707     result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
  36708     if (result === BREAK || result === RETURN) return result;
  36709   } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
  36710     result = call(iterator, f, step.value, entries);
  36711     if (result === BREAK || result === RETURN) return result;
  36712   }
  36713 };
  36714 exports.BREAK = BREAK;
  36715 exports.RETURN = RETURN;
  36716 
  36717 
  36718 /***/ }),
  36719 
  36720 /***/ "../node_modules/core-js/library/modules/_global.js":
  36721 /*!**********************************************************!*\
  36722   !*** ../node_modules/core-js/library/modules/_global.js ***!
  36723   \**********************************************************/
  36724 /***/ ((module) => {
  36725 
  36726 // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
  36727 var global = module.exports = typeof window != 'undefined' && window.Math == Math
  36728   ? window : typeof self != 'undefined' && self.Math == Math ? self
  36729   // eslint-disable-next-line no-new-func
  36730   : Function('return this')();
  36731 if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
  36732 
  36733 
  36734 /***/ }),
  36735 
  36736 /***/ "../node_modules/core-js/library/modules/_has.js":
  36737 /*!*******************************************************!*\
  36738   !*** ../node_modules/core-js/library/modules/_has.js ***!
  36739   \*******************************************************/
  36740 /***/ ((module) => {
  36741 
  36742 var hasOwnProperty = {}.hasOwnProperty;
  36743 module.exports = function (it, key) {
  36744   return hasOwnProperty.call(it, key);
  36745 };
  36746 
  36747 
  36748 /***/ }),
  36749 
  36750 /***/ "../node_modules/core-js/library/modules/_hide.js":
  36751 /*!********************************************************!*\
  36752   !*** ../node_modules/core-js/library/modules/_hide.js ***!
  36753   \********************************************************/
  36754 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36755 
  36756 var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
  36757 var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
  36758 module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  36759   return dP.f(object, key, createDesc(1, value));
  36760 } : function (object, key, value) {
  36761   object[key] = value;
  36762   return object;
  36763 };
  36764 
  36765 
  36766 /***/ }),
  36767 
  36768 /***/ "../node_modules/core-js/library/modules/_html.js":
  36769 /*!********************************************************!*\
  36770   !*** ../node_modules/core-js/library/modules/_html.js ***!
  36771   \********************************************************/
  36772 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36773 
  36774 var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
  36775 module.exports = document && document.documentElement;
  36776 
  36777 
  36778 /***/ }),
  36779 
  36780 /***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
  36781 /*!******************************************************************!*\
  36782   !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  36783   \******************************************************************/
  36784 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36785 
  36786 module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  36787   return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
  36788 });
  36789 
  36790 
  36791 /***/ }),
  36792 
  36793 /***/ "../node_modules/core-js/library/modules/_invoke.js":
  36794 /*!**********************************************************!*\
  36795   !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  36796   \**********************************************************/
  36797 /***/ ((module) => {
  36798 
  36799 // fast apply, http://jsperf.lnkit.com/fast-apply/5
  36800 module.exports = function (fn, args, that) {
  36801   var un = that === undefined;
  36802   switch (args.length) {
  36803     case 0: return un ? fn()
  36804                       : fn.call(that);
  36805     case 1: return un ? fn(args[0])
  36806                       : fn.call(that, args[0]);
  36807     case 2: return un ? fn(args[0], args[1])
  36808                       : fn.call(that, args[0], args[1]);
  36809     case 3: return un ? fn(args[0], args[1], args[2])
  36810                       : fn.call(that, args[0], args[1], args[2]);
  36811     case 4: return un ? fn(args[0], args[1], args[2], args[3])
  36812                       : fn.call(that, args[0], args[1], args[2], args[3]);
  36813   } return fn.apply(that, args);
  36814 };
  36815 
  36816 
  36817 /***/ }),
  36818 
  36819 /***/ "../node_modules/core-js/library/modules/_iobject.js":
  36820 /*!***********************************************************!*\
  36821   !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  36822   \***********************************************************/
  36823 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36824 
  36825 // fallback for non-array-like ES3 and non-enumerable old V8 strings
  36826 var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
  36827 // eslint-disable-next-line no-prototype-builtins
  36828 module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  36829   return cof(it) == 'String' ? it.split('') : Object(it);
  36830 };
  36831 
  36832 
  36833 /***/ }),
  36834 
  36835 /***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
  36836 /*!*****************************************************************!*\
  36837   !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  36838   \*****************************************************************/
  36839 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36840 
  36841 // check on default Array iterator
  36842 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
  36843 var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
  36844 var ArrayProto = Array.prototype;
  36845 
  36846 module.exports = function (it) {
  36847   return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
  36848 };
  36849 
  36850 
  36851 /***/ }),
  36852 
  36853 /***/ "../node_modules/core-js/library/modules/_is-array.js":
  36854 /*!************************************************************!*\
  36855   !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  36856   \************************************************************/
  36857 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36858 
  36859 // 7.2.2 IsArray(argument)
  36860 var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
  36861 module.exports = Array.isArray || function isArray(arg) {
  36862   return cof(arg) == 'Array';
  36863 };
  36864 
  36865 
  36866 /***/ }),
  36867 
  36868 /***/ "../node_modules/core-js/library/modules/_is-object.js":
  36869 /*!*************************************************************!*\
  36870   !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  36871   \*************************************************************/
  36872 /***/ ((module) => {
  36873 
  36874 module.exports = function (it) {
  36875   return typeof it === 'object' ? it !== null : typeof it === 'function';
  36876 };
  36877 
  36878 
  36879 /***/ }),
  36880 
  36881 /***/ "../node_modules/core-js/library/modules/_iter-call.js":
  36882 /*!*************************************************************!*\
  36883   !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  36884   \*************************************************************/
  36885 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36886 
  36887 // call something on iterator step with safe closing on error
  36888 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  36889 module.exports = function (iterator, fn, value, entries) {
  36890   try {
  36891     return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  36892   // 7.4.6 IteratorClose(iterator, completion)
  36893   } catch (e) {
  36894     var ret = iterator['return'];
  36895     if (ret !== undefined) anObject(ret.call(iterator));
  36896     throw e;
  36897   }
  36898 };
  36899 
  36900 
  36901 /***/ }),
  36902 
  36903 /***/ "../node_modules/core-js/library/modules/_iter-create.js":
  36904 /*!***************************************************************!*\
  36905   !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  36906   \***************************************************************/
  36907 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36908 
  36909 "use strict";
  36910 
  36911 var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
  36912 var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
  36913 var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
  36914 var IteratorPrototype = {};
  36915 
  36916 // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
  36917 __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });
  36918 
  36919 module.exports = function (Constructor, NAME, next) {
  36920   Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  36921   setToStringTag(Constructor, NAME + ' Iterator');
  36922 };
  36923 
  36924 
  36925 /***/ }),
  36926 
  36927 /***/ "../node_modules/core-js/library/modules/_iter-define.js":
  36928 /*!***************************************************************!*\
  36929   !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  36930   \***************************************************************/
  36931 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  36932 
  36933 "use strict";
  36934 
  36935 var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
  36936 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  36937 var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
  36938 var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
  36939 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
  36940 var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
  36941 var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
  36942 var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
  36943 var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
  36944 var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
  36945 var FF_ITERATOR = '@@iterator';
  36946 var KEYS = 'keys';
  36947 var VALUES = 'values';
  36948 
  36949 var returnThis = function () { return this; };
  36950 
  36951 module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  36952   $iterCreate(Constructor, NAME, next);
  36953   var getMethod = function (kind) {
  36954     if (!BUGGY && kind in proto) return proto[kind];
  36955     switch (kind) {
  36956       case KEYS: return function keys() { return new Constructor(this, kind); };
  36957       case VALUES: return function values() { return new Constructor(this, kind); };
  36958     } return function entries() { return new Constructor(this, kind); };
  36959   };
  36960   var TAG = NAME + ' Iterator';
  36961   var DEF_VALUES = DEFAULT == VALUES;
  36962   var VALUES_BUG = false;
  36963   var proto = Base.prototype;
  36964   var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  36965   var $default = $native || getMethod(DEFAULT);
  36966   var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  36967   var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  36968   var methods, key, IteratorPrototype;
  36969   // Fix native
  36970   if ($anyNative) {
  36971     IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
  36972     if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
  36973       // Set @@toStringTag to native iterators
  36974       setToStringTag(IteratorPrototype, TAG, true);
  36975       // fix for some old engines
  36976       if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
  36977     }
  36978   }
  36979   // fix Array#{values, @@iterator}.name in V8 / FF
  36980   if (DEF_VALUES && $native && $native.name !== VALUES) {
  36981     VALUES_BUG = true;
  36982     $default = function values() { return $native.call(this); };
  36983   }
  36984   // Define iterator
  36985   if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
  36986     hide(proto, ITERATOR, $default);
  36987   }
  36988   // Plug for library
  36989   Iterators[NAME] = $default;
  36990   Iterators[TAG] = returnThis;
  36991   if (DEFAULT) {
  36992     methods = {
  36993       values: DEF_VALUES ? $default : getMethod(VALUES),
  36994       keys: IS_SET ? $default : getMethod(KEYS),
  36995       entries: $entries
  36996     };
  36997     if (FORCED) for (key in methods) {
  36998       if (!(key in proto)) redefine(proto, key, methods[key]);
  36999     } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  37000   }
  37001   return methods;
  37002 };
  37003 
  37004 
  37005 /***/ }),
  37006 
  37007 /***/ "../node_modules/core-js/library/modules/_iter-detect.js":
  37008 /*!***************************************************************!*\
  37009   !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  37010   \***************************************************************/
  37011 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37012 
  37013 var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
  37014 var SAFE_CLOSING = false;
  37015 
  37016 try {
  37017   var riter = [7][ITERATOR]();
  37018   riter['return'] = function () { SAFE_CLOSING = true; };
  37019   // eslint-disable-next-line no-throw-literal
  37020   Array.from(riter, function () { throw 2; });
  37021 } catch (e) { /* empty */ }
  37022 
  37023 module.exports = function (exec, skipClosing) {
  37024   if (!skipClosing && !SAFE_CLOSING) return false;
  37025   var safe = false;
  37026   try {
  37027     var arr = [7];
  37028     var iter = arr[ITERATOR]();
  37029     iter.next = function () { return { done: safe = true }; };
  37030     arr[ITERATOR] = function () { return iter; };
  37031     exec(arr);
  37032   } catch (e) { /* empty */ }
  37033   return safe;
  37034 };
  37035 
  37036 
  37037 /***/ }),
  37038 
  37039 /***/ "../node_modules/core-js/library/modules/_iter-step.js":
  37040 /*!*************************************************************!*\
  37041   !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  37042   \*************************************************************/
  37043 /***/ ((module) => {
  37044 
  37045 module.exports = function (done, value) {
  37046   return { value: value, done: !!done };
  37047 };
  37048 
  37049 
  37050 /***/ }),
  37051 
  37052 /***/ "../node_modules/core-js/library/modules/_iterators.js":
  37053 /*!*************************************************************!*\
  37054   !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  37055   \*************************************************************/
  37056 /***/ ((module) => {
  37057 
  37058 module.exports = {};
  37059 
  37060 
  37061 /***/ }),
  37062 
  37063 /***/ "../node_modules/core-js/library/modules/_library.js":
  37064 /*!***********************************************************!*\
  37065   !*** ../node_modules/core-js/library/modules/_library.js ***!
  37066   \***********************************************************/
  37067 /***/ ((module) => {
  37068 
  37069 module.exports = true;
  37070 
  37071 
  37072 /***/ }),
  37073 
  37074 /***/ "../node_modules/core-js/library/modules/_meta.js":
  37075 /*!********************************************************!*\
  37076   !*** ../node_modules/core-js/library/modules/_meta.js ***!
  37077   \********************************************************/
  37078 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37079 
  37080 var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
  37081 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  37082 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
  37083 var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
  37084 var id = 0;
  37085 var isExtensible = Object.isExtensible || function () {
  37086   return true;
  37087 };
  37088 var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  37089   return isExtensible(Object.preventExtensions({}));
  37090 });
  37091 var setMeta = function (it) {
  37092   setDesc(it, META, { value: {
  37093     i: 'O' + ++id, // object ID
  37094     w: {}          // weak collections IDs
  37095   } });
  37096 };
  37097 var fastKey = function (it, create) {
  37098   // return primitive with prefix
  37099   if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  37100   if (!has(it, META)) {
  37101     // can't set metadata to uncaught frozen object
  37102     if (!isExtensible(it)) return 'F';
  37103     // not necessary to add metadata
  37104     if (!create) return 'E';
  37105     // add missing metadata
  37106     setMeta(it);
  37107   // return object ID
  37108   } return it[META].i;
  37109 };
  37110 var getWeak = function (it, create) {
  37111   if (!has(it, META)) {
  37112     // can't set metadata to uncaught frozen object
  37113     if (!isExtensible(it)) return true;
  37114     // not necessary to add metadata
  37115     if (!create) return false;
  37116     // add missing metadata
  37117     setMeta(it);
  37118   // return hash weak collections IDs
  37119   } return it[META].w;
  37120 };
  37121 // add metadata on freeze-family methods calling
  37122 var onFreeze = function (it) {
  37123   if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  37124   return it;
  37125 };
  37126 var meta = module.exports = {
  37127   KEY: META,
  37128   NEED: false,
  37129   fastKey: fastKey,
  37130   getWeak: getWeak,
  37131   onFreeze: onFreeze
  37132 };
  37133 
  37134 
  37135 /***/ }),
  37136 
  37137 /***/ "../node_modules/core-js/library/modules/_microtask.js":
  37138 /*!*************************************************************!*\
  37139   !*** ../node_modules/core-js/library/modules/_microtask.js ***!
  37140   \*************************************************************/
  37141 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37142 
  37143 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  37144 var macrotask = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
  37145 var Observer = global.MutationObserver || global.WebKitMutationObserver;
  37146 var process = global.process;
  37147 var Promise = global.Promise;
  37148 var isNode = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process';
  37149 
  37150 module.exports = function () {
  37151   var head, last, notify;
  37152 
  37153   var flush = function () {
  37154     var parent, fn;
  37155     if (isNode && (parent = process.domain)) parent.exit();
  37156     while (head) {
  37157       fn = head.fn;
  37158       head = head.next;
  37159       try {
  37160         fn();
  37161       } catch (e) {
  37162         if (head) notify();
  37163         else last = undefined;
  37164         throw e;
  37165       }
  37166     } last = undefined;
  37167     if (parent) parent.enter();
  37168   };
  37169 
  37170   // Node.js
  37171   if (isNode) {
  37172     notify = function () {
  37173       process.nextTick(flush);
  37174     };
  37175   // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
  37176   } else if (Observer && !(global.navigator && global.navigator.standalone)) {
  37177     var toggle = true;
  37178     var node = document.createTextNode('');
  37179     new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
  37180     notify = function () {
  37181       node.data = toggle = !toggle;
  37182     };
  37183   // environments with maybe non-completely correct, but existent Promise
  37184   } else if (Promise && Promise.resolve) {
  37185     // Promise.resolve without an argument throws an error in LG WebOS 2
  37186     var promise = Promise.resolve(undefined);
  37187     notify = function () {
  37188       promise.then(flush);
  37189     };
  37190   // for other environments - macrotask based on:
  37191   // - setImmediate
  37192   // - MessageChannel
  37193   // - window.postMessag
  37194   // - onreadystatechange
  37195   // - setTimeout
  37196   } else {
  37197     notify = function () {
  37198       // strange IE + webpack dev server bug - use .call(global)
  37199       macrotask.call(global, flush);
  37200     };
  37201   }
  37202 
  37203   return function (fn) {
  37204     var task = { fn: fn, next: undefined };
  37205     if (last) last.next = task;
  37206     if (!head) {
  37207       head = task;
  37208       notify();
  37209     } last = task;
  37210   };
  37211 };
  37212 
  37213 
  37214 /***/ }),
  37215 
  37216 /***/ "../node_modules/core-js/library/modules/_new-promise-capability.js":
  37217 /*!**************************************************************************!*\
  37218   !*** ../node_modules/core-js/library/modules/_new-promise-capability.js ***!
  37219   \**************************************************************************/
  37220 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37221 
  37222 "use strict";
  37223 
  37224 // 25.4.1.5 NewPromiseCapability(C)
  37225 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
  37226 
  37227 function PromiseCapability(C) {
  37228   var resolve, reject;
  37229   this.promise = new C(function ($$resolve, $$reject) {
  37230     if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
  37231     resolve = $$resolve;
  37232     reject = $$reject;
  37233   });
  37234   this.resolve = aFunction(resolve);
  37235   this.reject = aFunction(reject);
  37236 }
  37237 
  37238 module.exports.f = function (C) {
  37239   return new PromiseCapability(C);
  37240 };
  37241 
  37242 
  37243 /***/ }),
  37244 
  37245 /***/ "../node_modules/core-js/library/modules/_object-assign.js":
  37246 /*!*****************************************************************!*\
  37247   !*** ../node_modules/core-js/library/modules/_object-assign.js ***!
  37248   \*****************************************************************/
  37249 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37250 
  37251 "use strict";
  37252 
  37253 // 19.1.2.1 Object.assign(target, source, ...)
  37254 var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
  37255 var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
  37256 var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
  37257 var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
  37258 var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
  37259 var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
  37260 var $assign = Object.assign;
  37261 
  37262 // should work with symbols and should have deterministic property order (V8 bug)
  37263 module.exports = !$assign || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  37264   var A = {};
  37265   var B = {};
  37266   // eslint-disable-next-line no-undef
  37267   var S = Symbol();
  37268   var K = 'abcdefghijklmnopqrst';
  37269   A[S] = 7;
  37270   K.split('').forEach(function (k) { B[k] = k; });
  37271   return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
  37272 }) ? function assign(target, source) { // eslint-disable-line no-unused-vars
  37273   var T = toObject(target);
  37274   var aLen = arguments.length;
  37275   var index = 1;
  37276   var getSymbols = gOPS.f;
  37277   var isEnum = pIE.f;
  37278   while (aLen > index) {
  37279     var S = IObject(arguments[index++]);
  37280     var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
  37281     var length = keys.length;
  37282     var j = 0;
  37283     var key;
  37284     while (length > j) {
  37285       key = keys[j++];
  37286       if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
  37287     }
  37288   } return T;
  37289 } : $assign;
  37290 
  37291 
  37292 /***/ }),
  37293 
  37294 /***/ "../node_modules/core-js/library/modules/_object-create.js":
  37295 /*!*****************************************************************!*\
  37296   !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  37297   \*****************************************************************/
  37298 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37299 
  37300 // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
  37301 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  37302 var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
  37303 var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
  37304 var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
  37305 var Empty = function () { /* empty */ };
  37306 var PROTOTYPE = 'prototype';
  37307 
  37308 // Create object with fake `null` prototype: use iframe Object with cleared prototype
  37309 var createDict = function () {
  37310   // Thrash, waste and sodomy: IE GC bug
  37311   var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  37312   var i = enumBugKeys.length;
  37313   var lt = '<';
  37314   var gt = '>';
  37315   var iframeDocument;
  37316   iframe.style.display = 'none';
  37317   __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  37318   iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  37319   // createDict = iframe.contentWindow.Object;
  37320   // html.removeChild(iframe);
  37321   iframeDocument = iframe.contentWindow.document;
  37322   iframeDocument.open();
  37323   iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  37324   iframeDocument.close();
  37325   createDict = iframeDocument.F;
  37326   while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  37327   return createDict();
  37328 };
  37329 
  37330 module.exports = Object.create || function create(O, Properties) {
  37331   var result;
  37332   if (O !== null) {
  37333     Empty[PROTOTYPE] = anObject(O);
  37334     result = new Empty();
  37335     Empty[PROTOTYPE] = null;
  37336     // add "__proto__" for Object.getPrototypeOf polyfill
  37337     result[IE_PROTO] = O;
  37338   } else result = createDict();
  37339   return Properties === undefined ? result : dPs(result, Properties);
  37340 };
  37341 
  37342 
  37343 /***/ }),
  37344 
  37345 /***/ "../node_modules/core-js/library/modules/_object-dp.js":
  37346 /*!*************************************************************!*\
  37347   !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  37348   \*************************************************************/
  37349 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  37350 
  37351 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  37352 var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
  37353 var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
  37354 var dP = Object.defineProperty;
  37355 
  37356 exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  37357   anObject(O);
  37358   P = toPrimitive(P, true);
  37359   anObject(Attributes);
  37360   if (IE8_DOM_DEFINE) try {
  37361     return dP(O, P, Attributes);
  37362   } catch (e) { /* empty */ }
  37363   if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  37364   if ('value' in Attributes) O[P] = Attributes.value;
  37365   return O;
  37366 };
  37367 
  37368 
  37369 /***/ }),
  37370 
  37371 /***/ "../node_modules/core-js/library/modules/_object-dps.js":
  37372 /*!**************************************************************!*\
  37373   !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  37374   \**************************************************************/
  37375 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37376 
  37377 var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
  37378 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  37379 var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
  37380 
  37381 module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  37382   anObject(O);
  37383   var keys = getKeys(Properties);
  37384   var length = keys.length;
  37385   var i = 0;
  37386   var P;
  37387   while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  37388   return O;
  37389 };
  37390 
  37391 
  37392 /***/ }),
  37393 
  37394 /***/ "../node_modules/core-js/library/modules/_object-gopd.js":
  37395 /*!***************************************************************!*\
  37396   !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  37397   \***************************************************************/
  37398 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  37399 
  37400 var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
  37401 var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
  37402 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
  37403 var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
  37404 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
  37405 var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
  37406 var gOPD = Object.getOwnPropertyDescriptor;
  37407 
  37408 exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  37409   O = toIObject(O);
  37410   P = toPrimitive(P, true);
  37411   if (IE8_DOM_DEFINE) try {
  37412     return gOPD(O, P);
  37413   } catch (e) { /* empty */ }
  37414   if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
  37415 };
  37416 
  37417 
  37418 /***/ }),
  37419 
  37420 /***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
  37421 /*!*******************************************************************!*\
  37422   !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  37423   \*******************************************************************/
  37424 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37425 
  37426 // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
  37427 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
  37428 var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
  37429 var toString = {}.toString;
  37430 
  37431 var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  37432   ? Object.getOwnPropertyNames(window) : [];
  37433 
  37434 var getWindowNames = function (it) {
  37435   try {
  37436     return gOPN(it);
  37437   } catch (e) {
  37438     return windowNames.slice();
  37439   }
  37440 };
  37441 
  37442 module.exports.f = function getOwnPropertyNames(it) {
  37443   return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
  37444 };
  37445 
  37446 
  37447 /***/ }),
  37448 
  37449 /***/ "../node_modules/core-js/library/modules/_object-gopn.js":
  37450 /*!***************************************************************!*\
  37451   !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  37452   \***************************************************************/
  37453 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  37454 
  37455 // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
  37456 var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
  37457 var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');
  37458 
  37459 exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  37460   return $keys(O, hiddenKeys);
  37461 };
  37462 
  37463 
  37464 /***/ }),
  37465 
  37466 /***/ "../node_modules/core-js/library/modules/_object-gops.js":
  37467 /*!***************************************************************!*\
  37468   !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  37469   \***************************************************************/
  37470 /***/ ((__unused_webpack_module, exports) => {
  37471 
  37472 exports.f = Object.getOwnPropertySymbols;
  37473 
  37474 
  37475 /***/ }),
  37476 
  37477 /***/ "../node_modules/core-js/library/modules/_object-gpo.js":
  37478 /*!**************************************************************!*\
  37479   !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  37480   \**************************************************************/
  37481 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37482 
  37483 // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
  37484 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
  37485 var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
  37486 var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
  37487 var ObjectProto = Object.prototype;
  37488 
  37489 module.exports = Object.getPrototypeOf || function (O) {
  37490   O = toObject(O);
  37491   if (has(O, IE_PROTO)) return O[IE_PROTO];
  37492   if (typeof O.constructor == 'function' && O instanceof O.constructor) {
  37493     return O.constructor.prototype;
  37494   } return O instanceof Object ? ObjectProto : null;
  37495 };
  37496 
  37497 
  37498 /***/ }),
  37499 
  37500 /***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
  37501 /*!************************************************************************!*\
  37502   !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  37503   \************************************************************************/
  37504 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37505 
  37506 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
  37507 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
  37508 var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
  37509 var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
  37510 
  37511 module.exports = function (object, names) {
  37512   var O = toIObject(object);
  37513   var i = 0;
  37514   var result = [];
  37515   var key;
  37516   for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  37517   // Don't enum bug & hidden keys
  37518   while (names.length > i) if (has(O, key = names[i++])) {
  37519     ~arrayIndexOf(result, key) || result.push(key);
  37520   }
  37521   return result;
  37522 };
  37523 
  37524 
  37525 /***/ }),
  37526 
  37527 /***/ "../node_modules/core-js/library/modules/_object-keys.js":
  37528 /*!***************************************************************!*\
  37529   !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  37530   \***************************************************************/
  37531 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37532 
  37533 // 19.1.2.14 / 15.2.3.14 Object.keys(O)
  37534 var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
  37535 var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
  37536 
  37537 module.exports = Object.keys || function keys(O) {
  37538   return $keys(O, enumBugKeys);
  37539 };
  37540 
  37541 
  37542 /***/ }),
  37543 
  37544 /***/ "../node_modules/core-js/library/modules/_object-pie.js":
  37545 /*!**************************************************************!*\
  37546   !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  37547   \**************************************************************/
  37548 /***/ ((__unused_webpack_module, exports) => {
  37549 
  37550 exports.f = {}.propertyIsEnumerable;
  37551 
  37552 
  37553 /***/ }),
  37554 
  37555 /***/ "../node_modules/core-js/library/modules/_object-sap.js":
  37556 /*!**************************************************************!*\
  37557   !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  37558   \**************************************************************/
  37559 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37560 
  37561 // most Object methods by ES6 should accept primitives
  37562 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  37563 var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
  37564 var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
  37565 module.exports = function (KEY, exec) {
  37566   var fn = (core.Object || {})[KEY] || Object[KEY];
  37567   var exp = {};
  37568   exp[KEY] = exec(fn);
  37569   $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
  37570 };
  37571 
  37572 
  37573 /***/ }),
  37574 
  37575 /***/ "../node_modules/core-js/library/modules/_object-to-array.js":
  37576 /*!*******************************************************************!*\
  37577   !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  37578   \*******************************************************************/
  37579 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37580 
  37581 var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
  37582 var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
  37583 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
  37584 var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
  37585 module.exports = function (isEntries) {
  37586   return function (it) {
  37587     var O = toIObject(it);
  37588     var keys = getKeys(O);
  37589     var length = keys.length;
  37590     var i = 0;
  37591     var result = [];
  37592     var key;
  37593     while (length > i) {
  37594       key = keys[i++];
  37595       if (!DESCRIPTORS || isEnum.call(O, key)) {
  37596         result.push(isEntries ? [key, O[key]] : O[key]);
  37597       }
  37598     }
  37599     return result;
  37600   };
  37601 };
  37602 
  37603 
  37604 /***/ }),
  37605 
  37606 /***/ "../node_modules/core-js/library/modules/_own-keys.js":
  37607 /*!************************************************************!*\
  37608   !*** ../node_modules/core-js/library/modules/_own-keys.js ***!
  37609   \************************************************************/
  37610 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37611 
  37612 // all object keys, includes non-enumerable and symbols
  37613 var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js");
  37614 var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
  37615 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  37616 var Reflect = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect;
  37617 module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {
  37618   var keys = gOPN.f(anObject(it));
  37619   var getSymbols = gOPS.f;
  37620   return getSymbols ? keys.concat(getSymbols(it)) : keys;
  37621 };
  37622 
  37623 
  37624 /***/ }),
  37625 
  37626 /***/ "../node_modules/core-js/library/modules/_parse-int.js":
  37627 /*!*************************************************************!*\
  37628   !*** ../node_modules/core-js/library/modules/_parse-int.js ***!
  37629   \*************************************************************/
  37630 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37631 
  37632 var $parseInt = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").parseInt;
  37633 var $trim = __webpack_require__(/*! ./_string-trim */ "../node_modules/core-js/library/modules/_string-trim.js").trim;
  37634 var ws = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
  37635 var hex = /^[-+]?0[xX]/;
  37636 
  37637 module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {
  37638   var string = $trim(String(str), 3);
  37639   return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
  37640 } : $parseInt;
  37641 
  37642 
  37643 /***/ }),
  37644 
  37645 /***/ "../node_modules/core-js/library/modules/_perform.js":
  37646 /*!***********************************************************!*\
  37647   !*** ../node_modules/core-js/library/modules/_perform.js ***!
  37648   \***********************************************************/
  37649 /***/ ((module) => {
  37650 
  37651 module.exports = function (exec) {
  37652   try {
  37653     return { e: false, v: exec() };
  37654   } catch (e) {
  37655     return { e: true, v: e };
  37656   }
  37657 };
  37658 
  37659 
  37660 /***/ }),
  37661 
  37662 /***/ "../node_modules/core-js/library/modules/_promise-resolve.js":
  37663 /*!*******************************************************************!*\
  37664   !*** ../node_modules/core-js/library/modules/_promise-resolve.js ***!
  37665   \*******************************************************************/
  37666 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37667 
  37668 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  37669 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  37670 var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
  37671 
  37672 module.exports = function (C, x) {
  37673   anObject(C);
  37674   if (isObject(x) && x.constructor === C) return x;
  37675   var promiseCapability = newPromiseCapability.f(C);
  37676   var resolve = promiseCapability.resolve;
  37677   resolve(x);
  37678   return promiseCapability.promise;
  37679 };
  37680 
  37681 
  37682 /***/ }),
  37683 
  37684 /***/ "../node_modules/core-js/library/modules/_property-desc.js":
  37685 /*!*****************************************************************!*\
  37686   !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  37687   \*****************************************************************/
  37688 /***/ ((module) => {
  37689 
  37690 module.exports = function (bitmap, value) {
  37691   return {
  37692     enumerable: !(bitmap & 1),
  37693     configurable: !(bitmap & 2),
  37694     writable: !(bitmap & 4),
  37695     value: value
  37696   };
  37697 };
  37698 
  37699 
  37700 /***/ }),
  37701 
  37702 /***/ "../node_modules/core-js/library/modules/_redefine-all.js":
  37703 /*!****************************************************************!*\
  37704   !*** ../node_modules/core-js/library/modules/_redefine-all.js ***!
  37705   \****************************************************************/
  37706 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37707 
  37708 var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
  37709 module.exports = function (target, src, safe) {
  37710   for (var key in src) {
  37711     if (safe && target[key]) target[key] = src[key];
  37712     else hide(target, key, src[key]);
  37713   } return target;
  37714 };
  37715 
  37716 
  37717 /***/ }),
  37718 
  37719 /***/ "../node_modules/core-js/library/modules/_redefine.js":
  37720 /*!************************************************************!*\
  37721   !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  37722   \************************************************************/
  37723 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37724 
  37725 module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
  37726 
  37727 
  37728 /***/ }),
  37729 
  37730 /***/ "../node_modules/core-js/library/modules/_set-collection-from.js":
  37731 /*!***********************************************************************!*\
  37732   !*** ../node_modules/core-js/library/modules/_set-collection-from.js ***!
  37733   \***********************************************************************/
  37734 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37735 
  37736 "use strict";
  37737 
  37738 // https://tc39.github.io/proposal-setmap-offrom/
  37739 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  37740 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
  37741 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
  37742 var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
  37743 
  37744 module.exports = function (COLLECTION) {
  37745   $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {
  37746     var mapFn = arguments[1];
  37747     var mapping, A, n, cb;
  37748     aFunction(this);
  37749     mapping = mapFn !== undefined;
  37750     if (mapping) aFunction(mapFn);
  37751     if (source == undefined) return new this();
  37752     A = [];
  37753     if (mapping) {
  37754       n = 0;
  37755       cb = ctx(mapFn, arguments[2], 2);
  37756       forOf(source, false, function (nextItem) {
  37757         A.push(cb(nextItem, n++));
  37758       });
  37759     } else {
  37760       forOf(source, false, A.push, A);
  37761     }
  37762     return new this(A);
  37763   } });
  37764 };
  37765 
  37766 
  37767 /***/ }),
  37768 
  37769 /***/ "../node_modules/core-js/library/modules/_set-collection-of.js":
  37770 /*!*********************************************************************!*\
  37771   !*** ../node_modules/core-js/library/modules/_set-collection-of.js ***!
  37772   \*********************************************************************/
  37773 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37774 
  37775 "use strict";
  37776 
  37777 // https://tc39.github.io/proposal-setmap-offrom/
  37778 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  37779 
  37780 module.exports = function (COLLECTION) {
  37781   $export($export.S, COLLECTION, { of: function of() {
  37782     var length = arguments.length;
  37783     var A = new Array(length);
  37784     while (length--) A[length] = arguments[length];
  37785     return new this(A);
  37786   } });
  37787 };
  37788 
  37789 
  37790 /***/ }),
  37791 
  37792 /***/ "../node_modules/core-js/library/modules/_set-proto.js":
  37793 /*!*************************************************************!*\
  37794   !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  37795   \*************************************************************/
  37796 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37797 
  37798 // Works with __proto__ only. Old v8 can't work with null proto objects.
  37799 /* eslint-disable no-proto */
  37800 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  37801 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  37802 var check = function (O, proto) {
  37803   anObject(O);
  37804   if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
  37805 };
  37806 module.exports = {
  37807   set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
  37808     function (test, buggy, set) {
  37809       try {
  37810         set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
  37811         set(test, []);
  37812         buggy = !(test instanceof Array);
  37813       } catch (e) { buggy = true; }
  37814       return function setPrototypeOf(O, proto) {
  37815         check(O, proto);
  37816         if (buggy) O.__proto__ = proto;
  37817         else set(O, proto);
  37818         return O;
  37819       };
  37820     }({}, false) : undefined),
  37821   check: check
  37822 };
  37823 
  37824 
  37825 /***/ }),
  37826 
  37827 /***/ "../node_modules/core-js/library/modules/_set-species.js":
  37828 /*!***************************************************************!*\
  37829   !*** ../node_modules/core-js/library/modules/_set-species.js ***!
  37830   \***************************************************************/
  37831 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37832 
  37833 "use strict";
  37834 
  37835 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  37836 var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
  37837 var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
  37838 var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
  37839 var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');
  37840 
  37841 module.exports = function (KEY) {
  37842   var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];
  37843   if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
  37844     configurable: true,
  37845     get: function () { return this; }
  37846   });
  37847 };
  37848 
  37849 
  37850 /***/ }),
  37851 
  37852 /***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
  37853 /*!*********************************************************************!*\
  37854   !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  37855   \*********************************************************************/
  37856 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37857 
  37858 var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
  37859 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
  37860 var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
  37861 
  37862 module.exports = function (it, tag, stat) {
  37863   if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
  37864 };
  37865 
  37866 
  37867 /***/ }),
  37868 
  37869 /***/ "../node_modules/core-js/library/modules/_shared-key.js":
  37870 /*!**************************************************************!*\
  37871   !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  37872   \**************************************************************/
  37873 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37874 
  37875 var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
  37876 var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
  37877 module.exports = function (key) {
  37878   return shared[key] || (shared[key] = uid(key));
  37879 };
  37880 
  37881 
  37882 /***/ }),
  37883 
  37884 /***/ "../node_modules/core-js/library/modules/_shared.js":
  37885 /*!**********************************************************!*\
  37886   !*** ../node_modules/core-js/library/modules/_shared.js ***!
  37887   \**********************************************************/
  37888 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37889 
  37890 var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
  37891 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  37892 var SHARED = '__core-js_shared__';
  37893 var store = global[SHARED] || (global[SHARED] = {});
  37894 
  37895 (module.exports = function (key, value) {
  37896   return store[key] || (store[key] = value !== undefined ? value : {});
  37897 })('versions', []).push({
  37898   version: core.version,
  37899   mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  37900   copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
  37901 });
  37902 
  37903 
  37904 /***/ }),
  37905 
  37906 /***/ "../node_modules/core-js/library/modules/_species-constructor.js":
  37907 /*!***********************************************************************!*\
  37908   !*** ../node_modules/core-js/library/modules/_species-constructor.js ***!
  37909   \***********************************************************************/
  37910 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37911 
  37912 // 7.3.20 SpeciesConstructor(O, defaultConstructor)
  37913 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  37914 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
  37915 var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');
  37916 module.exports = function (O, D) {
  37917   var C = anObject(O).constructor;
  37918   var S;
  37919   return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
  37920 };
  37921 
  37922 
  37923 /***/ }),
  37924 
  37925 /***/ "../node_modules/core-js/library/modules/_string-at.js":
  37926 /*!*************************************************************!*\
  37927   !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  37928   \*************************************************************/
  37929 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37930 
  37931 var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
  37932 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
  37933 // true  -> String#at
  37934 // false -> String#codePointAt
  37935 module.exports = function (TO_STRING) {
  37936   return function (that, pos) {
  37937     var s = String(defined(that));
  37938     var i = toInteger(pos);
  37939     var l = s.length;
  37940     var a, b;
  37941     if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
  37942     a = s.charCodeAt(i);
  37943     return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
  37944       ? TO_STRING ? s.charAt(i) : a
  37945       : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  37946   };
  37947 };
  37948 
  37949 
  37950 /***/ }),
  37951 
  37952 /***/ "../node_modules/core-js/library/modules/_string-trim.js":
  37953 /*!***************************************************************!*\
  37954   !*** ../node_modules/core-js/library/modules/_string-trim.js ***!
  37955   \***************************************************************/
  37956 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  37957 
  37958 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  37959 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
  37960 var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
  37961 var spaces = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
  37962 var space = '[' + spaces + ']';
  37963 var non = '\u200b\u0085';
  37964 var ltrim = RegExp('^' + space + space + '*');
  37965 var rtrim = RegExp(space + space + '*$');
  37966 
  37967 var exporter = function (KEY, exec, ALIAS) {
  37968   var exp = {};
  37969   var FORCE = fails(function () {
  37970     return !!spaces[KEY]() || non[KEY]() != non;
  37971   });
  37972   var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
  37973   if (ALIAS) exp[ALIAS] = fn;
  37974   $export($export.P + $export.F * FORCE, 'String', exp);
  37975 };
  37976 
  37977 // 1 -> String#trimLeft
  37978 // 2 -> String#trimRight
  37979 // 3 -> String#trim
  37980 var trim = exporter.trim = function (string, TYPE) {
  37981   string = String(defined(string));
  37982   if (TYPE & 1) string = string.replace(ltrim, '');
  37983   if (TYPE & 2) string = string.replace(rtrim, '');
  37984   return string;
  37985 };
  37986 
  37987 module.exports = exporter;
  37988 
  37989 
  37990 /***/ }),
  37991 
  37992 /***/ "../node_modules/core-js/library/modules/_string-ws.js":
  37993 /*!*************************************************************!*\
  37994   !*** ../node_modules/core-js/library/modules/_string-ws.js ***!
  37995   \*************************************************************/
  37996 /***/ ((module) => {
  37997 
  37998 module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
  37999   '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
  38000 
  38001 
  38002 /***/ }),
  38003 
  38004 /***/ "../node_modules/core-js/library/modules/_task.js":
  38005 /*!********************************************************!*\
  38006   !*** ../node_modules/core-js/library/modules/_task.js ***!
  38007   \********************************************************/
  38008 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38009 
  38010 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
  38011 var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
  38012 var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js");
  38013 var cel = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js");
  38014 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  38015 var process = global.process;
  38016 var setTask = global.setImmediate;
  38017 var clearTask = global.clearImmediate;
  38018 var MessageChannel = global.MessageChannel;
  38019 var Dispatch = global.Dispatch;
  38020 var counter = 0;
  38021 var queue = {};
  38022 var ONREADYSTATECHANGE = 'onreadystatechange';
  38023 var defer, channel, port;
  38024 var run = function () {
  38025   var id = +this;
  38026   // eslint-disable-next-line no-prototype-builtins
  38027   if (queue.hasOwnProperty(id)) {
  38028     var fn = queue[id];
  38029     delete queue[id];
  38030     fn();
  38031   }
  38032 };
  38033 var listener = function (event) {
  38034   run.call(event.data);
  38035 };
  38036 // Node.js 0.9+ & IE10+ has setImmediate, otherwise:
  38037 if (!setTask || !clearTask) {
  38038   setTask = function setImmediate(fn) {
  38039     var args = [];
  38040     var i = 1;
  38041     while (arguments.length > i) args.push(arguments[i++]);
  38042     queue[++counter] = function () {
  38043       // eslint-disable-next-line no-new-func
  38044       invoke(typeof fn == 'function' ? fn : Function(fn), args);
  38045     };
  38046     defer(counter);
  38047     return counter;
  38048   };
  38049   clearTask = function clearImmediate(id) {
  38050     delete queue[id];
  38051   };
  38052   // Node.js 0.8-
  38053   if (__webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process') {
  38054     defer = function (id) {
  38055       process.nextTick(ctx(run, id, 1));
  38056     };
  38057   // Sphere (JS game engine) Dispatch API
  38058   } else if (Dispatch && Dispatch.now) {
  38059     defer = function (id) {
  38060       Dispatch.now(ctx(run, id, 1));
  38061     };
  38062   // Browsers with MessageChannel, includes WebWorkers
  38063   } else if (MessageChannel) {
  38064     channel = new MessageChannel();
  38065     port = channel.port2;
  38066     channel.port1.onmessage = listener;
  38067     defer = ctx(port.postMessage, port, 1);
  38068   // Browsers with postMessage, skip WebWorkers
  38069   // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  38070   } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
  38071     defer = function (id) {
  38072       global.postMessage(id + '', '*');
  38073     };
  38074     global.addEventListener('message', listener, false);
  38075   // IE8-
  38076   } else if (ONREADYSTATECHANGE in cel('script')) {
  38077     defer = function (id) {
  38078       html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
  38079         html.removeChild(this);
  38080         run.call(id);
  38081       };
  38082     };
  38083   // Rest old browsers
  38084   } else {
  38085     defer = function (id) {
  38086       setTimeout(ctx(run, id, 1), 0);
  38087     };
  38088   }
  38089 }
  38090 module.exports = {
  38091   set: setTask,
  38092   clear: clearTask
  38093 };
  38094 
  38095 
  38096 /***/ }),
  38097 
  38098 /***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
  38099 /*!*********************************************************************!*\
  38100   !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  38101   \*********************************************************************/
  38102 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38103 
  38104 var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
  38105 var max = Math.max;
  38106 var min = Math.min;
  38107 module.exports = function (index, length) {
  38108   index = toInteger(index);
  38109   return index < 0 ? max(index + length, 0) : min(index, length);
  38110 };
  38111 
  38112 
  38113 /***/ }),
  38114 
  38115 /***/ "../node_modules/core-js/library/modules/_to-integer.js":
  38116 /*!**************************************************************!*\
  38117   !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  38118   \**************************************************************/
  38119 /***/ ((module) => {
  38120 
  38121 // 7.1.4 ToInteger
  38122 var ceil = Math.ceil;
  38123 var floor = Math.floor;
  38124 module.exports = function (it) {
  38125   return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
  38126 };
  38127 
  38128 
  38129 /***/ }),
  38130 
  38131 /***/ "../node_modules/core-js/library/modules/_to-iobject.js":
  38132 /*!**************************************************************!*\
  38133   !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  38134   \**************************************************************/
  38135 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38136 
  38137 // to indexed object, toObject with fallback for non-array-like ES3 strings
  38138 var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
  38139 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
  38140 module.exports = function (it) {
  38141   return IObject(defined(it));
  38142 };
  38143 
  38144 
  38145 /***/ }),
  38146 
  38147 /***/ "../node_modules/core-js/library/modules/_to-length.js":
  38148 /*!*************************************************************!*\
  38149   !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  38150   \*************************************************************/
  38151 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38152 
  38153 // 7.1.15 ToLength
  38154 var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
  38155 var min = Math.min;
  38156 module.exports = function (it) {
  38157   return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
  38158 };
  38159 
  38160 
  38161 /***/ }),
  38162 
  38163 /***/ "../node_modules/core-js/library/modules/_to-object.js":
  38164 /*!*************************************************************!*\
  38165   !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  38166   \*************************************************************/
  38167 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38168 
  38169 // 7.1.13 ToObject(argument)
  38170 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
  38171 module.exports = function (it) {
  38172   return Object(defined(it));
  38173 };
  38174 
  38175 
  38176 /***/ }),
  38177 
  38178 /***/ "../node_modules/core-js/library/modules/_to-primitive.js":
  38179 /*!****************************************************************!*\
  38180   !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  38181   \****************************************************************/
  38182 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38183 
  38184 // 7.1.1 ToPrimitive(input [, PreferredType])
  38185 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  38186 // instead of the ES6 spec version, we didn't implement @@toPrimitive case
  38187 // and the second argument - flag - preferred type is a string
  38188 module.exports = function (it, S) {
  38189   if (!isObject(it)) return it;
  38190   var fn, val;
  38191   if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  38192   if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  38193   if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  38194   throw TypeError("Can't convert object to primitive value");
  38195 };
  38196 
  38197 
  38198 /***/ }),
  38199 
  38200 /***/ "../node_modules/core-js/library/modules/_uid.js":
  38201 /*!*******************************************************!*\
  38202   !*** ../node_modules/core-js/library/modules/_uid.js ***!
  38203   \*******************************************************/
  38204 /***/ ((module) => {
  38205 
  38206 var id = 0;
  38207 var px = Math.random();
  38208 module.exports = function (key) {
  38209   return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
  38210 };
  38211 
  38212 
  38213 /***/ }),
  38214 
  38215 /***/ "../node_modules/core-js/library/modules/_user-agent.js":
  38216 /*!**************************************************************!*\
  38217   !*** ../node_modules/core-js/library/modules/_user-agent.js ***!
  38218   \**************************************************************/
  38219 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38220 
  38221 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  38222 var navigator = global.navigator;
  38223 
  38224 module.exports = navigator && navigator.userAgent || '';
  38225 
  38226 
  38227 /***/ }),
  38228 
  38229 /***/ "../node_modules/core-js/library/modules/_validate-collection.js":
  38230 /*!***********************************************************************!*\
  38231   !*** ../node_modules/core-js/library/modules/_validate-collection.js ***!
  38232   \***********************************************************************/
  38233 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38234 
  38235 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  38236 module.exports = function (it, TYPE) {
  38237   if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
  38238   return it;
  38239 };
  38240 
  38241 
  38242 /***/ }),
  38243 
  38244 /***/ "../node_modules/core-js/library/modules/_wks-define.js":
  38245 /*!**************************************************************!*\
  38246   !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  38247   \**************************************************************/
  38248 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38249 
  38250 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  38251 var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
  38252 var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
  38253 var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
  38254 var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
  38255 module.exports = function (name) {
  38256   var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  38257   if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
  38258 };
  38259 
  38260 
  38261 /***/ }),
  38262 
  38263 /***/ "../node_modules/core-js/library/modules/_wks-ext.js":
  38264 /*!***********************************************************!*\
  38265   !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  38266   \***********************************************************/
  38267 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  38268 
  38269 exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
  38270 
  38271 
  38272 /***/ }),
  38273 
  38274 /***/ "../node_modules/core-js/library/modules/_wks.js":
  38275 /*!*******************************************************!*\
  38276   !*** ../node_modules/core-js/library/modules/_wks.js ***!
  38277   \*******************************************************/
  38278 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38279 
  38280 var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
  38281 var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
  38282 var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
  38283 var USE_SYMBOL = typeof Symbol == 'function';
  38284 
  38285 var $exports = module.exports = function (name) {
  38286   return store[name] || (store[name] =
  38287     USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
  38288 };
  38289 
  38290 $exports.store = store;
  38291 
  38292 
  38293 /***/ }),
  38294 
  38295 /***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
  38296 /*!***************************************************************************!*\
  38297   !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  38298   \***************************************************************************/
  38299 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38300 
  38301 var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
  38302 var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
  38303 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
  38304 module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  38305   if (it != undefined) return it[ITERATOR]
  38306     || it['@@iterator']
  38307     || Iterators[classof(it)];
  38308 };
  38309 
  38310 
  38311 /***/ }),
  38312 
  38313 /***/ "../node_modules/core-js/library/modules/core.is-iterable.js":
  38314 /*!*******************************************************************!*\
  38315   !*** ../node_modules/core-js/library/modules/core.is-iterable.js ***!
  38316   \*******************************************************************/
  38317 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38318 
  38319 var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
  38320 var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
  38321 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
  38322 module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").isIterable = function (it) {
  38323   var O = Object(it);
  38324   return O[ITERATOR] !== undefined
  38325     || '@@iterator' in O
  38326     // eslint-disable-next-line no-prototype-builtins
  38327     || Iterators.hasOwnProperty(classof(O));
  38328 };
  38329 
  38330 
  38331 /***/ }),
  38332 
  38333 /***/ "../node_modules/core-js/library/modules/es6.array.from.js":
  38334 /*!*****************************************************************!*\
  38335   !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  38336   \*****************************************************************/
  38337 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38338 
  38339 "use strict";
  38340 
  38341 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
  38342 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38343 var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
  38344 var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
  38345 var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
  38346 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
  38347 var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
  38348 var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");
  38349 
  38350 $export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  38351   // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  38352   from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
  38353     var O = toObject(arrayLike);
  38354     var C = typeof this == 'function' ? this : Array;
  38355     var aLen = arguments.length;
  38356     var mapfn = aLen > 1 ? arguments[1] : undefined;
  38357     var mapping = mapfn !== undefined;
  38358     var index = 0;
  38359     var iterFn = getIterFn(O);
  38360     var length, result, step, iterator;
  38361     if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
  38362     // if object isn't iterable or it's array with default iterator - use simple case
  38363     if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
  38364       for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
  38365         createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
  38366       }
  38367     } else {
  38368       length = toLength(O.length);
  38369       for (result = new C(length); length > index; index++) {
  38370         createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
  38371       }
  38372     }
  38373     result.length = index;
  38374     return result;
  38375   }
  38376 });
  38377 
  38378 
  38379 /***/ }),
  38380 
  38381 /***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
  38382 /*!*********************************************************************!*\
  38383   !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  38384   \*********************************************************************/
  38385 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38386 
  38387 // 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
  38388 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38389 
  38390 $export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });
  38391 
  38392 
  38393 /***/ }),
  38394 
  38395 /***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
  38396 /*!*********************************************************************!*\
  38397   !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  38398   \*********************************************************************/
  38399 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  38400 
  38401 "use strict";
  38402 
  38403 var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
  38404 var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
  38405 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
  38406 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
  38407 
  38408 // 22.1.3.4 Array.prototype.entries()
  38409 // 22.1.3.13 Array.prototype.keys()
  38410 // 22.1.3.29 Array.prototype.values()
  38411 // 22.1.3.30 Array.prototype[@@iterator]()
  38412 module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  38413   this._t = toIObject(iterated); // target
  38414   this._i = 0;                   // next index
  38415   this._k = kind;                // kind
  38416 // 22.1.5.2.1 %ArrayIteratorPrototype%.next()
  38417 }, function () {
  38418   var O = this._t;
  38419   var kind = this._k;
  38420   var index = this._i++;
  38421   if (!O || index >= O.length) {
  38422     this._t = undefined;
  38423     return step(1);
  38424   }
  38425   if (kind == 'keys') return step(0, index);
  38426   if (kind == 'values') return step(0, O[index]);
  38427   return step(0, [index, O[index]]);
  38428 }, 'values');
  38429 
  38430 // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
  38431 Iterators.Arguments = Iterators.Array;
  38432 
  38433 addToUnscopables('keys');
  38434 addToUnscopables('values');
  38435 addToUnscopables('entries');
  38436 
  38437 
  38438 /***/ }),
  38439 
  38440 /***/ "../node_modules/core-js/library/modules/es6.function.has-instance.js":
  38441 /*!****************************************************************************!*\
  38442   !*** ../node_modules/core-js/library/modules/es6.function.has-instance.js ***!
  38443   \****************************************************************************/
  38444 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38445 
  38446 "use strict";
  38447 
  38448 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  38449 var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
  38450 var HAS_INSTANCE = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('hasInstance');
  38451 var FunctionProto = Function.prototype;
  38452 // 19.2.3.6 Function.prototype[@@hasInstance](V)
  38453 if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f(FunctionProto, HAS_INSTANCE, { value: function (O) {
  38454   if (typeof this != 'function' || !isObject(O)) return false;
  38455   if (!isObject(this.prototype)) return O instanceof this;
  38456   // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
  38457   while (O = getPrototypeOf(O)) if (this.prototype === O) return true;
  38458   return false;
  38459 } });
  38460 
  38461 
  38462 /***/ }),
  38463 
  38464 /***/ "../node_modules/core-js/library/modules/es6.object.assign.js":
  38465 /*!********************************************************************!*\
  38466   !*** ../node_modules/core-js/library/modules/es6.object.assign.js ***!
  38467   \********************************************************************/
  38468 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38469 
  38470 // 19.1.3.1 Object.assign(target, source)
  38471 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38472 
  38473 $export($export.S + $export.F, 'Object', { assign: __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js") });
  38474 
  38475 
  38476 /***/ }),
  38477 
  38478 /***/ "../node_modules/core-js/library/modules/es6.object.create.js":
  38479 /*!********************************************************************!*\
  38480   !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  38481   \********************************************************************/
  38482 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38483 
  38484 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38485 // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
  38486 $export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });
  38487 
  38488 
  38489 /***/ }),
  38490 
  38491 /***/ "../node_modules/core-js/library/modules/es6.object.define-properties.js":
  38492 /*!*******************************************************************************!*\
  38493   !*** ../node_modules/core-js/library/modules/es6.object.define-properties.js ***!
  38494   \*******************************************************************************/
  38495 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38496 
  38497 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38498 // 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
  38499 $export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperties: __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js") });
  38500 
  38501 
  38502 /***/ }),
  38503 
  38504 /***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
  38505 /*!*****************************************************************************!*\
  38506   !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  38507   \*****************************************************************************/
  38508 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38509 
  38510 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38511 // 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
  38512 $export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });
  38513 
  38514 
  38515 /***/ }),
  38516 
  38517 /***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
  38518 /*!*****************************************************************************************!*\
  38519   !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  38520   \*****************************************************************************************/
  38521 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38522 
  38523 // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  38524 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
  38525 var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;
  38526 
  38527 __webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  38528   return function getOwnPropertyDescriptor(it, key) {
  38529     return $getOwnPropertyDescriptor(toIObject(it), key);
  38530   };
  38531 });
  38532 
  38533 
  38534 /***/ }),
  38535 
  38536 /***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
  38537 /*!******************************************************************************!*\
  38538   !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  38539   \******************************************************************************/
  38540 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38541 
  38542 // 19.1.2.9 Object.getPrototypeOf(O)
  38543 var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
  38544 var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
  38545 
  38546 __webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  38547   return function getPrototypeOf(it) {
  38548     return $getPrototypeOf(toObject(it));
  38549   };
  38550 });
  38551 
  38552 
  38553 /***/ }),
  38554 
  38555 /***/ "../node_modules/core-js/library/modules/es6.object.keys.js":
  38556 /*!******************************************************************!*\
  38557   !*** ../node_modules/core-js/library/modules/es6.object.keys.js ***!
  38558   \******************************************************************/
  38559 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38560 
  38561 // 19.1.2.14 Object.keys(O)
  38562 var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
  38563 var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
  38564 
  38565 __webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('keys', function () {
  38566   return function keys(it) {
  38567     return $keys(toObject(it));
  38568   };
  38569 });
  38570 
  38571 
  38572 /***/ }),
  38573 
  38574 /***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
  38575 /*!******************************************************************************!*\
  38576   !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  38577   \******************************************************************************/
  38578 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38579 
  38580 // 19.1.3.19 Object.setPrototypeOf(O, proto)
  38581 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38582 $export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });
  38583 
  38584 
  38585 /***/ }),
  38586 
  38587 /***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
  38588 /*!***********************************************************************!*\
  38589   !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  38590   \***********************************************************************/
  38591 /***/ (() => {
  38592 
  38593 
  38594 
  38595 /***/ }),
  38596 
  38597 /***/ "../node_modules/core-js/library/modules/es6.parse-int.js":
  38598 /*!****************************************************************!*\
  38599   !*** ../node_modules/core-js/library/modules/es6.parse-int.js ***!
  38600   \****************************************************************/
  38601 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38602 
  38603 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38604 var $parseInt = __webpack_require__(/*! ./_parse-int */ "../node_modules/core-js/library/modules/_parse-int.js");
  38605 // 18.2.5 parseInt(string, radix)
  38606 $export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });
  38607 
  38608 
  38609 /***/ }),
  38610 
  38611 /***/ "../node_modules/core-js/library/modules/es6.promise.js":
  38612 /*!**************************************************************!*\
  38613   !*** ../node_modules/core-js/library/modules/es6.promise.js ***!
  38614   \**************************************************************/
  38615 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38616 
  38617 "use strict";
  38618 
  38619 var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
  38620 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  38621 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
  38622 var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
  38623 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38624 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  38625 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
  38626 var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
  38627 var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
  38628 var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
  38629 var task = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
  38630 var microtask = __webpack_require__(/*! ./_microtask */ "../node_modules/core-js/library/modules/_microtask.js")();
  38631 var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
  38632 var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");
  38633 var userAgent = __webpack_require__(/*! ./_user-agent */ "../node_modules/core-js/library/modules/_user-agent.js");
  38634 var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");
  38635 var PROMISE = 'Promise';
  38636 var TypeError = global.TypeError;
  38637 var process = global.process;
  38638 var versions = process && process.versions;
  38639 var v8 = versions && versions.v8 || '';
  38640 var $Promise = global[PROMISE];
  38641 var isNode = classof(process) == 'process';
  38642 var empty = function () { /* empty */ };
  38643 var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
  38644 var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;
  38645 
  38646 var USE_NATIVE = !!function () {
  38647   try {
  38648     // correct subclassing with @@species support
  38649     var promise = $Promise.resolve(1);
  38650     var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species')] = function (exec) {
  38651       exec(empty, empty);
  38652     };
  38653     // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
  38654     return (isNode || typeof PromiseRejectionEvent == 'function')
  38655       && promise.then(empty) instanceof FakePromise
  38656       // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
  38657       // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
  38658       // we can't detect it synchronously, so just check versions
  38659       && v8.indexOf('6.6') !== 0
  38660       && userAgent.indexOf('Chrome/66') === -1;
  38661   } catch (e) { /* empty */ }
  38662 }();
  38663 
  38664 // helpers
  38665 var isThenable = function (it) {
  38666   var then;
  38667   return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
  38668 };
  38669 var notify = function (promise, isReject) {
  38670   if (promise._n) return;
  38671   promise._n = true;
  38672   var chain = promise._c;
  38673   microtask(function () {
  38674     var value = promise._v;
  38675     var ok = promise._s == 1;
  38676     var i = 0;
  38677     var run = function (reaction) {
  38678       var handler = ok ? reaction.ok : reaction.fail;
  38679       var resolve = reaction.resolve;
  38680       var reject = reaction.reject;
  38681       var domain = reaction.domain;
  38682       var result, then, exited;
  38683       try {
  38684         if (handler) {
  38685           if (!ok) {
  38686             if (promise._h == 2) onHandleUnhandled(promise);
  38687             promise._h = 1;
  38688           }
  38689           if (handler === true) result = value;
  38690           else {
  38691             if (domain) domain.enter();
  38692             result = handler(value); // may throw
  38693             if (domain) {
  38694               domain.exit();
  38695               exited = true;
  38696             }
  38697           }
  38698           if (result === reaction.promise) {
  38699             reject(TypeError('Promise-chain cycle'));
  38700           } else if (then = isThenable(result)) {
  38701             then.call(result, resolve, reject);
  38702           } else resolve(result);
  38703         } else reject(value);
  38704       } catch (e) {
  38705         if (domain && !exited) domain.exit();
  38706         reject(e);
  38707       }
  38708     };
  38709     while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
  38710     promise._c = [];
  38711     promise._n = false;
  38712     if (isReject && !promise._h) onUnhandled(promise);
  38713   });
  38714 };
  38715 var onUnhandled = function (promise) {
  38716   task.call(global, function () {
  38717     var value = promise._v;
  38718     var unhandled = isUnhandled(promise);
  38719     var result, handler, console;
  38720     if (unhandled) {
  38721       result = perform(function () {
  38722         if (isNode) {
  38723           process.emit('unhandledRejection', value, promise);
  38724         } else if (handler = global.onunhandledrejection) {
  38725           handler({ promise: promise, reason: value });
  38726         } else if ((console = global.console) && console.error) {
  38727           console.error('Unhandled promise rejection', value);
  38728         }
  38729       });
  38730       // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
  38731       promise._h = isNode || isUnhandled(promise) ? 2 : 1;
  38732     } promise._a = undefined;
  38733     if (unhandled && result.e) throw result.v;
  38734   });
  38735 };
  38736 var isUnhandled = function (promise) {
  38737   return promise._h !== 1 && (promise._a || promise._c).length === 0;
  38738 };
  38739 var onHandleUnhandled = function (promise) {
  38740   task.call(global, function () {
  38741     var handler;
  38742     if (isNode) {
  38743       process.emit('rejectionHandled', promise);
  38744     } else if (handler = global.onrejectionhandled) {
  38745       handler({ promise: promise, reason: promise._v });
  38746     }
  38747   });
  38748 };
  38749 var $reject = function (value) {
  38750   var promise = this;
  38751   if (promise._d) return;
  38752   promise._d = true;
  38753   promise = promise._w || promise; // unwrap
  38754   promise._v = value;
  38755   promise._s = 2;
  38756   if (!promise._a) promise._a = promise._c.slice();
  38757   notify(promise, true);
  38758 };
  38759 var $resolve = function (value) {
  38760   var promise = this;
  38761   var then;
  38762   if (promise._d) return;
  38763   promise._d = true;
  38764   promise = promise._w || promise; // unwrap
  38765   try {
  38766     if (promise === value) throw TypeError("Promise can't be resolved itself");
  38767     if (then = isThenable(value)) {
  38768       microtask(function () {
  38769         var wrapper = { _w: promise, _d: false }; // wrap
  38770         try {
  38771           then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
  38772         } catch (e) {
  38773           $reject.call(wrapper, e);
  38774         }
  38775       });
  38776     } else {
  38777       promise._v = value;
  38778       promise._s = 1;
  38779       notify(promise, false);
  38780     }
  38781   } catch (e) {
  38782     $reject.call({ _w: promise, _d: false }, e); // wrap
  38783   }
  38784 };
  38785 
  38786 // constructor polyfill
  38787 if (!USE_NATIVE) {
  38788   // 25.4.3.1 Promise(executor)
  38789   $Promise = function Promise(executor) {
  38790     anInstance(this, $Promise, PROMISE, '_h');
  38791     aFunction(executor);
  38792     Internal.call(this);
  38793     try {
  38794       executor(ctx($resolve, this, 1), ctx($reject, this, 1));
  38795     } catch (err) {
  38796       $reject.call(this, err);
  38797     }
  38798   };
  38799   // eslint-disable-next-line no-unused-vars
  38800   Internal = function Promise(executor) {
  38801     this._c = [];             // <- awaiting reactions
  38802     this._a = undefined;      // <- checked in isUnhandled reactions
  38803     this._s = 0;              // <- state
  38804     this._d = false;          // <- done
  38805     this._v = undefined;      // <- value
  38806     this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
  38807     this._n = false;          // <- notify
  38808   };
  38809   Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js")($Promise.prototype, {
  38810     // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
  38811     then: function then(onFulfilled, onRejected) {
  38812       var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
  38813       reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
  38814       reaction.fail = typeof onRejected == 'function' && onRejected;
  38815       reaction.domain = isNode ? process.domain : undefined;
  38816       this._c.push(reaction);
  38817       if (this._a) this._a.push(reaction);
  38818       if (this._s) notify(this, false);
  38819       return reaction.promise;
  38820     },
  38821     // 25.4.5.1 Promise.prototype.catch(onRejected)
  38822     'catch': function (onRejected) {
  38823       return this.then(undefined, onRejected);
  38824     }
  38825   });
  38826   OwnPromiseCapability = function () {
  38827     var promise = new Internal();
  38828     this.promise = promise;
  38829     this.resolve = ctx($resolve, promise, 1);
  38830     this.reject = ctx($reject, promise, 1);
  38831   };
  38832   newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
  38833     return C === $Promise || C === Wrapper
  38834       ? new OwnPromiseCapability(C)
  38835       : newGenericPromiseCapability(C);
  38836   };
  38837 }
  38838 
  38839 $export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
  38840 __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js")($Promise, PROMISE);
  38841 __webpack_require__(/*! ./_set-species */ "../node_modules/core-js/library/modules/_set-species.js")(PROMISE);
  38842 Wrapper = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js")[PROMISE];
  38843 
  38844 // statics
  38845 $export($export.S + $export.F * !USE_NATIVE, PROMISE, {
  38846   // 25.4.4.5 Promise.reject(r)
  38847   reject: function reject(r) {
  38848     var capability = newPromiseCapability(this);
  38849     var $$reject = capability.reject;
  38850     $$reject(r);
  38851     return capability.promise;
  38852   }
  38853 });
  38854 $export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
  38855   // 25.4.4.6 Promise.resolve(x)
  38856   resolve: function resolve(x) {
  38857     return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
  38858   }
  38859 });
  38860 $export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) {
  38861   $Promise.all(iter)['catch'](empty);
  38862 })), PROMISE, {
  38863   // 25.4.4.1 Promise.all(iterable)
  38864   all: function all(iterable) {
  38865     var C = this;
  38866     var capability = newPromiseCapability(C);
  38867     var resolve = capability.resolve;
  38868     var reject = capability.reject;
  38869     var result = perform(function () {
  38870       var values = [];
  38871       var index = 0;
  38872       var remaining = 1;
  38873       forOf(iterable, false, function (promise) {
  38874         var $index = index++;
  38875         var alreadyCalled = false;
  38876         values.push(undefined);
  38877         remaining++;
  38878         C.resolve(promise).then(function (value) {
  38879           if (alreadyCalled) return;
  38880           alreadyCalled = true;
  38881           values[$index] = value;
  38882           --remaining || resolve(values);
  38883         }, reject);
  38884       });
  38885       --remaining || resolve(values);
  38886     });
  38887     if (result.e) reject(result.v);
  38888     return capability.promise;
  38889   },
  38890   // 25.4.4.4 Promise.race(iterable)
  38891   race: function race(iterable) {
  38892     var C = this;
  38893     var capability = newPromiseCapability(C);
  38894     var reject = capability.reject;
  38895     var result = perform(function () {
  38896       forOf(iterable, false, function (promise) {
  38897         C.resolve(promise).then(capability.resolve, reject);
  38898       });
  38899     });
  38900     if (result.e) reject(result.v);
  38901     return capability.promise;
  38902   }
  38903 });
  38904 
  38905 
  38906 /***/ }),
  38907 
  38908 /***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
  38909 /*!************************************************************************!*\
  38910   !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  38911   \************************************************************************/
  38912 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38913 
  38914 // 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
  38915 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38916 var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
  38917 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
  38918 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  38919 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  38920 var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
  38921 var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
  38922 var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;
  38923 
  38924 // MS Edge supports only 2 arguments and argumentsList argument is optional
  38925 // FF Nightly sets third argument as `new.target`, but does not create `this` from it
  38926 var NEW_TARGET_BUG = fails(function () {
  38927   function F() { /* empty */ }
  38928   return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
  38929 });
  38930 var ARGS_BUG = !fails(function () {
  38931   rConstruct(function () { /* empty */ });
  38932 });
  38933 
  38934 $export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  38935   construct: function construct(Target, args /* , newTarget */) {
  38936     aFunction(Target);
  38937     anObject(args);
  38938     var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
  38939     if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
  38940     if (Target == newTarget) {
  38941       // w/o altered newTarget, optimization for 0-4 arguments
  38942       switch (args.length) {
  38943         case 0: return new Target();
  38944         case 1: return new Target(args[0]);
  38945         case 2: return new Target(args[0], args[1]);
  38946         case 3: return new Target(args[0], args[1], args[2]);
  38947         case 4: return new Target(args[0], args[1], args[2], args[3]);
  38948       }
  38949       // w/o altered newTarget, lot of arguments case
  38950       var $args = [null];
  38951       $args.push.apply($args, args);
  38952       return new (bind.apply(Target, $args))();
  38953     }
  38954     // with altered newTarget, not support built-in constructors
  38955     var proto = newTarget.prototype;
  38956     var instance = create(isObject(proto) ? proto : Object.prototype);
  38957     var result = Function.apply.call(Target, instance, args);
  38958     return isObject(result) ? result : instance;
  38959   }
  38960 });
  38961 
  38962 
  38963 /***/ }),
  38964 
  38965 /***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
  38966 /*!******************************************************************!*\
  38967   !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  38968   \******************************************************************/
  38969 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  38970 
  38971 // 26.1.6 Reflect.get(target, propertyKey [, receiver])
  38972 var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
  38973 var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
  38974 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
  38975 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  38976 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  38977 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  38978 
  38979 function get(target, propertyKey /* , receiver */) {
  38980   var receiver = arguments.length < 3 ? target : arguments[2];
  38981   var desc, proto;
  38982   if (anObject(target) === receiver) return target[propertyKey];
  38983   if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
  38984     ? desc.value
  38985     : desc.get !== undefined
  38986       ? desc.get.call(receiver)
  38987       : undefined;
  38988   if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
  38989 }
  38990 
  38991 $export($export.S, 'Reflect', { get: get });
  38992 
  38993 
  38994 /***/ }),
  38995 
  38996 /***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
  38997 /*!**********************************************************************!*\
  38998   !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  38999   \**********************************************************************/
  39000 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39001 
  39002 "use strict";
  39003 
  39004 var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);
  39005 
  39006 // 21.1.3.27 String.prototype[@@iterator]()
  39007 __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  39008   this._t = String(iterated); // target
  39009   this._i = 0;                // next index
  39010 // 21.1.5.2.1 %StringIteratorPrototype%.next()
  39011 }, function () {
  39012   var O = this._t;
  39013   var index = this._i;
  39014   var point;
  39015   if (index >= O.length) return { value: undefined, done: true };
  39016   point = $at(O, index);
  39017   this._i += point.length;
  39018   return { value: point, done: false };
  39019 });
  39020 
  39021 
  39022 /***/ }),
  39023 
  39024 /***/ "../node_modules/core-js/library/modules/es6.symbol.js":
  39025 /*!*************************************************************!*\
  39026   !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  39027   \*************************************************************/
  39028 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39029 
  39030 "use strict";
  39031 
  39032 // ECMAScript 6 symbols shim
  39033 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  39034 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
  39035 var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
  39036 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  39037 var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
  39038 var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
  39039 var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
  39040 var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
  39041 var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
  39042 var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
  39043 var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
  39044 var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
  39045 var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
  39046 var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
  39047 var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
  39048 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
  39049 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  39050 var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
  39051 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
  39052 var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
  39053 var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
  39054 var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
  39055 var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
  39056 var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
  39057 var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
  39058 var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
  39059 var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
  39060 var gOPD = $GOPD.f;
  39061 var dP = $DP.f;
  39062 var gOPN = gOPNExt.f;
  39063 var $Symbol = global.Symbol;
  39064 var $JSON = global.JSON;
  39065 var _stringify = $JSON && $JSON.stringify;
  39066 var PROTOTYPE = 'prototype';
  39067 var HIDDEN = wks('_hidden');
  39068 var TO_PRIMITIVE = wks('toPrimitive');
  39069 var isEnum = {}.propertyIsEnumerable;
  39070 var SymbolRegistry = shared('symbol-registry');
  39071 var AllSymbols = shared('symbols');
  39072 var OPSymbols = shared('op-symbols');
  39073 var ObjectProto = Object[PROTOTYPE];
  39074 var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
  39075 var QObject = global.QObject;
  39076 // Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
  39077 var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
  39078 
  39079 // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
  39080 var setSymbolDesc = DESCRIPTORS && $fails(function () {
  39081   return _create(dP({}, 'a', {
  39082     get: function () { return dP(this, 'a', { value: 7 }).a; }
  39083   })).a != 7;
  39084 }) ? function (it, key, D) {
  39085   var protoDesc = gOPD(ObjectProto, key);
  39086   if (protoDesc) delete ObjectProto[key];
  39087   dP(it, key, D);
  39088   if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
  39089 } : dP;
  39090 
  39091 var wrap = function (tag) {
  39092   var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  39093   sym._k = tag;
  39094   return sym;
  39095 };
  39096 
  39097 var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  39098   return typeof it == 'symbol';
  39099 } : function (it) {
  39100   return it instanceof $Symbol;
  39101 };
  39102 
  39103 var $defineProperty = function defineProperty(it, key, D) {
  39104   if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  39105   anObject(it);
  39106   key = toPrimitive(key, true);
  39107   anObject(D);
  39108   if (has(AllSymbols, key)) {
  39109     if (!D.enumerable) {
  39110       if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
  39111       it[HIDDEN][key] = true;
  39112     } else {
  39113       if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
  39114       D = _create(D, { enumerable: createDesc(0, false) });
  39115     } return setSymbolDesc(it, key, D);
  39116   } return dP(it, key, D);
  39117 };
  39118 var $defineProperties = function defineProperties(it, P) {
  39119   anObject(it);
  39120   var keys = enumKeys(P = toIObject(P));
  39121   var i = 0;
  39122   var l = keys.length;
  39123   var key;
  39124   while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  39125   return it;
  39126 };
  39127 var $create = function create(it, P) {
  39128   return P === undefined ? _create(it) : $defineProperties(_create(it), P);
  39129 };
  39130 var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  39131   var E = isEnum.call(this, key = toPrimitive(key, true));
  39132   if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  39133   return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
  39134 };
  39135 var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  39136   it = toIObject(it);
  39137   key = toPrimitive(key, true);
  39138   if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  39139   var D = gOPD(it, key);
  39140   if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  39141   return D;
  39142 };
  39143 var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  39144   var names = gOPN(toIObject(it));
  39145   var result = [];
  39146   var i = 0;
  39147   var key;
  39148   while (names.length > i) {
  39149     if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  39150   } return result;
  39151 };
  39152 var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  39153   var IS_OP = it === ObjectProto;
  39154   var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  39155   var result = [];
  39156   var i = 0;
  39157   var key;
  39158   while (names.length > i) {
  39159     if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  39160   } return result;
  39161 };
  39162 
  39163 // 19.4.1.1 Symbol([description])
  39164 if (!USE_NATIVE) {
  39165   $Symbol = function Symbol() {
  39166     if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
  39167     var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
  39168     var $set = function (value) {
  39169       if (this === ObjectProto) $set.call(OPSymbols, value);
  39170       if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
  39171       setSymbolDesc(this, tag, createDesc(1, value));
  39172     };
  39173     if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
  39174     return wrap(tag);
  39175   };
  39176   redefine($Symbol[PROTOTYPE], 'toString', function toString() {
  39177     return this._k;
  39178   });
  39179 
  39180   $GOPD.f = $getOwnPropertyDescriptor;
  39181   $DP.f = $defineProperty;
  39182   __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  39183   __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  39184   $GOPS.f = $getOwnPropertySymbols;
  39185 
  39186   if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
  39187     redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  39188   }
  39189 
  39190   wksExt.f = function (name) {
  39191     return wrap(wks(name));
  39192   };
  39193 }
  39194 
  39195 $export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });
  39196 
  39197 for (var es6Symbols = (
  39198   // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  39199   'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
  39200 ).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);
  39201 
  39202 for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);
  39203 
  39204 $export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  39205   // 19.4.2.1 Symbol.for(key)
  39206   'for': function (key) {
  39207     return has(SymbolRegistry, key += '')
  39208       ? SymbolRegistry[key]
  39209       : SymbolRegistry[key] = $Symbol(key);
  39210   },
  39211   // 19.4.2.5 Symbol.keyFor(sym)
  39212   keyFor: function keyFor(sym) {
  39213     if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
  39214     for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  39215   },
  39216   useSetter: function () { setter = true; },
  39217   useSimple: function () { setter = false; }
  39218 });
  39219 
  39220 $export($export.S + $export.F * !USE_NATIVE, 'Object', {
  39221   // 19.1.2.2 Object.create(O [, Properties])
  39222   create: $create,
  39223   // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  39224   defineProperty: $defineProperty,
  39225   // 19.1.2.3 Object.defineProperties(O, Properties)
  39226   defineProperties: $defineProperties,
  39227   // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  39228   getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  39229   // 19.1.2.7 Object.getOwnPropertyNames(O)
  39230   getOwnPropertyNames: $getOwnPropertyNames,
  39231   // 19.1.2.8 Object.getOwnPropertySymbols(O)
  39232   getOwnPropertySymbols: $getOwnPropertySymbols
  39233 });
  39234 
  39235 // Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
  39236 // https://bugs.chromium.org/p/v8/issues/detail?id=3443
  39237 var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });
  39238 
  39239 $export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  39240   getOwnPropertySymbols: function getOwnPropertySymbols(it) {
  39241     return $GOPS.f(toObject(it));
  39242   }
  39243 });
  39244 
  39245 // 24.3.2 JSON.stringify(value [, replacer [, space]])
  39246 $JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  39247   var S = $Symbol();
  39248   // MS Edge converts symbol values to JSON as {}
  39249   // WebKit converts symbol values to JSON as null
  39250   // V8 throws on boxed symbols
  39251   return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
  39252 })), 'JSON', {
  39253   stringify: function stringify(it) {
  39254     var args = [it];
  39255     var i = 1;
  39256     var replacer, $replacer;
  39257     while (arguments.length > i) args.push(arguments[i++]);
  39258     $replacer = replacer = args[1];
  39259     if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
  39260     if (!isArray(replacer)) replacer = function (key, value) {
  39261       if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
  39262       if (!isSymbol(value)) return value;
  39263     };
  39264     args[1] = replacer;
  39265     return _stringify.apply($JSON, args);
  39266   }
  39267 });
  39268 
  39269 // 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
  39270 $Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
  39271 // 19.4.3.5 Symbol.prototype[@@toStringTag]
  39272 setToStringTag($Symbol, 'Symbol');
  39273 // 20.2.1.9 Math[@@toStringTag]
  39274 setToStringTag(Math, 'Math', true);
  39275 // 24.3.3 JSON[@@toStringTag]
  39276 setToStringTag(global.JSON, 'JSON', true);
  39277 
  39278 
  39279 /***/ }),
  39280 
  39281 /***/ "../node_modules/core-js/library/modules/es6.weak-map.js":
  39282 /*!***************************************************************!*\
  39283   !*** ../node_modules/core-js/library/modules/es6.weak-map.js ***!
  39284   \***************************************************************/
  39285 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39286 
  39287 "use strict";
  39288 
  39289 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  39290 var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
  39291 var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
  39292 var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
  39293 var assign = __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js");
  39294 var weak = __webpack_require__(/*! ./_collection-weak */ "../node_modules/core-js/library/modules/_collection-weak.js");
  39295 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
  39296 var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
  39297 var NATIVE_WEAK_MAP = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
  39298 var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
  39299 var WEAK_MAP = 'WeakMap';
  39300 var getWeak = meta.getWeak;
  39301 var isExtensible = Object.isExtensible;
  39302 var uncaughtFrozenStore = weak.ufstore;
  39303 var InternalMap;
  39304 
  39305 var wrapper = function (get) {
  39306   return function WeakMap() {
  39307     return get(this, arguments.length > 0 ? arguments[0] : undefined);
  39308   };
  39309 };
  39310 
  39311 var methods = {
  39312   // 23.3.3.3 WeakMap.prototype.get(key)
  39313   get: function get(key) {
  39314     if (isObject(key)) {
  39315       var data = getWeak(key);
  39316       if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);
  39317       return data ? data[this._i] : undefined;
  39318     }
  39319   },
  39320   // 23.3.3.5 WeakMap.prototype.set(key, value)
  39321   set: function set(key, value) {
  39322     return weak.def(validate(this, WEAK_MAP), key, value);
  39323   }
  39324 };
  39325 
  39326 // 23.3 WeakMap Objects
  39327 var $WeakMap = module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(WEAK_MAP, wrapper, methods, weak, true, true);
  39328 
  39329 // IE11 WeakMap frozen keys fix
  39330 if (NATIVE_WEAK_MAP && IS_IE11) {
  39331   InternalMap = weak.getConstructor(wrapper, WEAK_MAP);
  39332   assign(InternalMap.prototype, methods);
  39333   meta.NEED = true;
  39334   each(['delete', 'has', 'get', 'set'], function (key) {
  39335     var proto = $WeakMap.prototype;
  39336     var method = proto[key];
  39337     redefine(proto, key, function (a, b) {
  39338       // store frozen objects on internal weakmap shim
  39339       if (isObject(a) && !isExtensible(a)) {
  39340         if (!this._f) this._f = new InternalMap();
  39341         var result = this._f[key](a, b);
  39342         return key == 'set' ? this : result;
  39343       // store all the rest on native weakmap
  39344       } return method.call(this, a, b);
  39345     });
  39346   });
  39347 }
  39348 
  39349 
  39350 /***/ }),
  39351 
  39352 /***/ "../node_modules/core-js/library/modules/es7.object.entries.js":
  39353 /*!*********************************************************************!*\
  39354   !*** ../node_modules/core-js/library/modules/es7.object.entries.js ***!
  39355   \*********************************************************************/
  39356 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39357 
  39358 // https://github.com/tc39/proposal-object-values-entries
  39359 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  39360 var $entries = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(true);
  39361 
  39362 $export($export.S, 'Object', {
  39363   entries: function entries(it) {
  39364     return $entries(it);
  39365   }
  39366 });
  39367 
  39368 
  39369 /***/ }),
  39370 
  39371 /***/ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js":
  39372 /*!******************************************************************************************!*\
  39373   !*** ../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js ***!
  39374   \******************************************************************************************/
  39375 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39376 
  39377 // https://github.com/tc39/proposal-object-getownpropertydescriptors
  39378 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  39379 var ownKeys = __webpack_require__(/*! ./_own-keys */ "../node_modules/core-js/library/modules/_own-keys.js");
  39380 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
  39381 var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
  39382 var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
  39383 
  39384 $export($export.S, 'Object', {
  39385   getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
  39386     var O = toIObject(object);
  39387     var getDesc = gOPD.f;
  39388     var keys = ownKeys(O);
  39389     var result = {};
  39390     var i = 0;
  39391     var key, desc;
  39392     while (keys.length > i) {
  39393       desc = getDesc(O, key = keys[i++]);
  39394       if (desc !== undefined) createProperty(result, key, desc);
  39395     }
  39396     return result;
  39397   }
  39398 });
  39399 
  39400 
  39401 /***/ }),
  39402 
  39403 /***/ "../node_modules/core-js/library/modules/es7.object.values.js":
  39404 /*!********************************************************************!*\
  39405   !*** ../node_modules/core-js/library/modules/es7.object.values.js ***!
  39406   \********************************************************************/
  39407 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39408 
  39409 // https://github.com/tc39/proposal-object-values-entries
  39410 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  39411 var $values = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(false);
  39412 
  39413 $export($export.S, 'Object', {
  39414   values: function values(it) {
  39415     return $values(it);
  39416   }
  39417 });
  39418 
  39419 
  39420 /***/ }),
  39421 
  39422 /***/ "../node_modules/core-js/library/modules/es7.promise.finally.js":
  39423 /*!**********************************************************************!*\
  39424   !*** ../node_modules/core-js/library/modules/es7.promise.finally.js ***!
  39425   \**********************************************************************/
  39426 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39427 
  39428 "use strict";
  39429 // https://github.com/tc39/proposal-promise-finally
  39430 
  39431 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  39432 var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
  39433 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  39434 var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
  39435 var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");
  39436 
  39437 $export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
  39438   var C = speciesConstructor(this, core.Promise || global.Promise);
  39439   var isFunction = typeof onFinally == 'function';
  39440   return this.then(
  39441     isFunction ? function (x) {
  39442       return promiseResolve(C, onFinally()).then(function () { return x; });
  39443     } : onFinally,
  39444     isFunction ? function (e) {
  39445       return promiseResolve(C, onFinally()).then(function () { throw e; });
  39446     } : onFinally
  39447   );
  39448 } });
  39449 
  39450 
  39451 /***/ }),
  39452 
  39453 /***/ "../node_modules/core-js/library/modules/es7.promise.try.js":
  39454 /*!******************************************************************!*\
  39455   !*** ../node_modules/core-js/library/modules/es7.promise.try.js ***!
  39456   \******************************************************************/
  39457 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39458 
  39459 "use strict";
  39460 
  39461 // https://github.com/tc39/proposal-promise-try
  39462 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
  39463 var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
  39464 var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");
  39465 
  39466 $export($export.S, 'Promise', { 'try': function (callbackfn) {
  39467   var promiseCapability = newPromiseCapability.f(this);
  39468   var result = perform(callbackfn);
  39469   (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);
  39470   return promiseCapability.promise;
  39471 } });
  39472 
  39473 
  39474 /***/ }),
  39475 
  39476 /***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
  39477 /*!****************************************************************************!*\
  39478   !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  39479   \****************************************************************************/
  39480 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39481 
  39482 __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');
  39483 
  39484 
  39485 /***/ }),
  39486 
  39487 /***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
  39488 /*!************************************************************************!*\
  39489   !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  39490   \************************************************************************/
  39491 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39492 
  39493 __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');
  39494 
  39495 
  39496 /***/ }),
  39497 
  39498 /***/ "../node_modules/core-js/library/modules/es7.weak-map.from.js":
  39499 /*!********************************************************************!*\
  39500   !*** ../node_modules/core-js/library/modules/es7.weak-map.from.js ***!
  39501   \********************************************************************/
  39502 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39503 
  39504 // https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from
  39505 __webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('WeakMap');
  39506 
  39507 
  39508 /***/ }),
  39509 
  39510 /***/ "../node_modules/core-js/library/modules/es7.weak-map.of.js":
  39511 /*!******************************************************************!*\
  39512   !*** ../node_modules/core-js/library/modules/es7.weak-map.of.js ***!
  39513   \******************************************************************/
  39514 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39515 
  39516 // https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of
  39517 __webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('WeakMap');
  39518 
  39519 
  39520 /***/ }),
  39521 
  39522 /***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
  39523 /*!*******************************************************************!*\
  39524   !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  39525   \*******************************************************************/
  39526 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  39527 
  39528 __webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
  39529 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
  39530 var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
  39531 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
  39532 var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
  39533 
  39534 var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  39535   'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  39536   'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  39537   'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  39538   'TextTrackList,TouchList').split(',');
  39539 
  39540 for (var i = 0; i < DOMIterables.length; i++) {
  39541   var NAME = DOMIterables[i];
  39542   var Collection = global[NAME];
  39543   var proto = Collection && Collection.prototype;
  39544   if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  39545   Iterators[NAME] = Iterators.Array;
  39546 }
  39547 
  39548 
  39549 /***/ }),
  39550 
  39551 /***/ "../node_modules/core-js/modules/_a-function.js":
  39552 /*!******************************************************!*\
  39553   !*** ../node_modules/core-js/modules/_a-function.js ***!
  39554   \******************************************************/
  39555 /***/ ((module) => {
  39556 
  39557 module.exports = function (it) {
  39558   if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  39559   return it;
  39560 };
  39561 
  39562 
  39563 /***/ }),
  39564 
  39565 /***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
  39566 /*!**************************************************************!*\
  39567   !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  39568   \**************************************************************/
  39569 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39570 
  39571 // 22.1.3.31 Array.prototype[@@unscopables]
  39572 var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
  39573 var ArrayProto = Array.prototype;
  39574 if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
  39575 module.exports = function (key) {
  39576   ArrayProto[UNSCOPABLES][key] = true;
  39577 };
  39578 
  39579 
  39580 /***/ }),
  39581 
  39582 /***/ "../node_modules/core-js/modules/_advance-string-index.js":
  39583 /*!****************************************************************!*\
  39584   !*** ../node_modules/core-js/modules/_advance-string-index.js ***!
  39585   \****************************************************************/
  39586 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39587 
  39588 "use strict";
  39589 
  39590 var at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);
  39591 
  39592  // `AdvanceStringIndex` abstract operation
  39593 // https://tc39.github.io/ecma262/#sec-advancestringindex
  39594 module.exports = function (S, index, unicode) {
  39595   return index + (unicode ? at(S, index).length : 1);
  39596 };
  39597 
  39598 
  39599 /***/ }),
  39600 
  39601 /***/ "../node_modules/core-js/modules/_an-instance.js":
  39602 /*!*******************************************************!*\
  39603   !*** ../node_modules/core-js/modules/_an-instance.js ***!
  39604   \*******************************************************/
  39605 /***/ ((module) => {
  39606 
  39607 module.exports = function (it, Constructor, name, forbiddenField) {
  39608   if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
  39609     throw TypeError(name + ': incorrect invocation!');
  39610   } return it;
  39611 };
  39612 
  39613 
  39614 /***/ }),
  39615 
  39616 /***/ "../node_modules/core-js/modules/_an-object.js":
  39617 /*!*****************************************************!*\
  39618   !*** ../node_modules/core-js/modules/_an-object.js ***!
  39619   \*****************************************************/
  39620 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39621 
  39622 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
  39623 module.exports = function (it) {
  39624   if (!isObject(it)) throw TypeError(it + ' is not an object!');
  39625   return it;
  39626 };
  39627 
  39628 
  39629 /***/ }),
  39630 
  39631 /***/ "../node_modules/core-js/modules/_array-includes.js":
  39632 /*!**********************************************************!*\
  39633   !*** ../node_modules/core-js/modules/_array-includes.js ***!
  39634   \**********************************************************/
  39635 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39636 
  39637 // false -> Array#indexOf
  39638 // true  -> Array#includes
  39639 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
  39640 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
  39641 var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
  39642 module.exports = function (IS_INCLUDES) {
  39643   return function ($this, el, fromIndex) {
  39644     var O = toIObject($this);
  39645     var length = toLength(O.length);
  39646     var index = toAbsoluteIndex(fromIndex, length);
  39647     var value;
  39648     // Array#includes uses SameValueZero equality algorithm
  39649     // eslint-disable-next-line no-self-compare
  39650     if (IS_INCLUDES && el != el) while (length > index) {
  39651       value = O[index++];
  39652       // eslint-disable-next-line no-self-compare
  39653       if (value != value) return true;
  39654     // Array#indexOf ignores holes, Array#includes - not
  39655     } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
  39656       if (O[index] === el) return IS_INCLUDES || index || 0;
  39657     } return !IS_INCLUDES && -1;
  39658   };
  39659 };
  39660 
  39661 
  39662 /***/ }),
  39663 
  39664 /***/ "../node_modules/core-js/modules/_array-methods.js":
  39665 /*!*********************************************************!*\
  39666   !*** ../node_modules/core-js/modules/_array-methods.js ***!
  39667   \*********************************************************/
  39668 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39669 
  39670 // 0 -> Array#forEach
  39671 // 1 -> Array#map
  39672 // 2 -> Array#filter
  39673 // 3 -> Array#some
  39674 // 4 -> Array#every
  39675 // 5 -> Array#find
  39676 // 6 -> Array#findIndex
  39677 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
  39678 var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
  39679 var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
  39680 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
  39681 var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
  39682 module.exports = function (TYPE, $create) {
  39683   var IS_MAP = TYPE == 1;
  39684   var IS_FILTER = TYPE == 2;
  39685   var IS_SOME = TYPE == 3;
  39686   var IS_EVERY = TYPE == 4;
  39687   var IS_FIND_INDEX = TYPE == 6;
  39688   var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  39689   var create = $create || asc;
  39690   return function ($this, callbackfn, that) {
  39691     var O = toObject($this);
  39692     var self = IObject(O);
  39693     var f = ctx(callbackfn, that, 3);
  39694     var length = toLength(self.length);
  39695     var index = 0;
  39696     var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
  39697     var val, res;
  39698     for (;length > index; index++) if (NO_HOLES || index in self) {
  39699       val = self[index];
  39700       res = f(val, index, O);
  39701       if (TYPE) {
  39702         if (IS_MAP) result[index] = res;   // map
  39703         else if (res) switch (TYPE) {
  39704           case 3: return true;             // some
  39705           case 5: return val;              // find
  39706           case 6: return index;            // findIndex
  39707           case 2: result.push(val);        // filter
  39708         } else if (IS_EVERY) return false; // every
  39709       }
  39710     }
  39711     return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  39712   };
  39713 };
  39714 
  39715 
  39716 /***/ }),
  39717 
  39718 /***/ "../node_modules/core-js/modules/_array-species-constructor.js":
  39719 /*!*********************************************************************!*\
  39720   !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  39721   \*********************************************************************/
  39722 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39723 
  39724 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
  39725 var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
  39726 var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
  39727 
  39728 module.exports = function (original) {
  39729   var C;
  39730   if (isArray(original)) {
  39731     C = original.constructor;
  39732     // cross-realm fallback
  39733     if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
  39734     if (isObject(C)) {
  39735       C = C[SPECIES];
  39736       if (C === null) C = undefined;
  39737     }
  39738   } return C === undefined ? Array : C;
  39739 };
  39740 
  39741 
  39742 /***/ }),
  39743 
  39744 /***/ "../node_modules/core-js/modules/_array-species-create.js":
  39745 /*!****************************************************************!*\
  39746   !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  39747   \****************************************************************/
  39748 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39749 
  39750 // 9.4.2.3 ArraySpeciesCreate(originalArray, length)
  39751 var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");
  39752 
  39753 module.exports = function (original, length) {
  39754   return new (speciesConstructor(original))(length);
  39755 };
  39756 
  39757 
  39758 /***/ }),
  39759 
  39760 /***/ "../node_modules/core-js/modules/_classof.js":
  39761 /*!***************************************************!*\
  39762   !*** ../node_modules/core-js/modules/_classof.js ***!
  39763   \***************************************************/
  39764 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39765 
  39766 // getting tag from 19.1.3.6 Object.prototype.toString()
  39767 var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
  39768 var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
  39769 // ES3 wrong here
  39770 var ARG = cof(function () { return arguments; }()) == 'Arguments';
  39771 
  39772 // fallback for IE11 Script Access Denied error
  39773 var tryGet = function (it, key) {
  39774   try {
  39775     return it[key];
  39776   } catch (e) { /* empty */ }
  39777 };
  39778 
  39779 module.exports = function (it) {
  39780   var O, T, B;
  39781   return it === undefined ? 'Undefined' : it === null ? 'Null'
  39782     // @@toStringTag case
  39783     : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
  39784     // builtinTag case
  39785     : ARG ? cof(O)
  39786     // ES3 arguments fallback
  39787     : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
  39788 };
  39789 
  39790 
  39791 /***/ }),
  39792 
  39793 /***/ "../node_modules/core-js/modules/_cof.js":
  39794 /*!***********************************************!*\
  39795   !*** ../node_modules/core-js/modules/_cof.js ***!
  39796   \***********************************************/
  39797 /***/ ((module) => {
  39798 
  39799 var toString = {}.toString;
  39800 
  39801 module.exports = function (it) {
  39802   return toString.call(it).slice(8, -1);
  39803 };
  39804 
  39805 
  39806 /***/ }),
  39807 
  39808 /***/ "../node_modules/core-js/modules/_core.js":
  39809 /*!************************************************!*\
  39810   !*** ../node_modules/core-js/modules/_core.js ***!
  39811   \************************************************/
  39812 /***/ ((module) => {
  39813 
  39814 var core = module.exports = { version: '2.6.12' };
  39815 if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
  39816 
  39817 
  39818 /***/ }),
  39819 
  39820 /***/ "../node_modules/core-js/modules/_ctx.js":
  39821 /*!***********************************************!*\
  39822   !*** ../node_modules/core-js/modules/_ctx.js ***!
  39823   \***********************************************/
  39824 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39825 
  39826 // optional / simple context binding
  39827 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
  39828 module.exports = function (fn, that, length) {
  39829   aFunction(fn);
  39830   if (that === undefined) return fn;
  39831   switch (length) {
  39832     case 1: return function (a) {
  39833       return fn.call(that, a);
  39834     };
  39835     case 2: return function (a, b) {
  39836       return fn.call(that, a, b);
  39837     };
  39838     case 3: return function (a, b, c) {
  39839       return fn.call(that, a, b, c);
  39840     };
  39841   }
  39842   return function (/* ...args */) {
  39843     return fn.apply(that, arguments);
  39844   };
  39845 };
  39846 
  39847 
  39848 /***/ }),
  39849 
  39850 /***/ "../node_modules/core-js/modules/_defined.js":
  39851 /*!***************************************************!*\
  39852   !*** ../node_modules/core-js/modules/_defined.js ***!
  39853   \***************************************************/
  39854 /***/ ((module) => {
  39855 
  39856 // 7.2.1 RequireObjectCoercible(argument)
  39857 module.exports = function (it) {
  39858   if (it == undefined) throw TypeError("Can't call method on  " + it);
  39859   return it;
  39860 };
  39861 
  39862 
  39863 /***/ }),
  39864 
  39865 /***/ "../node_modules/core-js/modules/_descriptors.js":
  39866 /*!*******************************************************!*\
  39867   !*** ../node_modules/core-js/modules/_descriptors.js ***!
  39868   \*******************************************************/
  39869 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39870 
  39871 // Thank's IE8 for his funny defineProperty
  39872 module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  39873   return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
  39874 });
  39875 
  39876 
  39877 /***/ }),
  39878 
  39879 /***/ "../node_modules/core-js/modules/_dom-create.js":
  39880 /*!******************************************************!*\
  39881   !*** ../node_modules/core-js/modules/_dom-create.js ***!
  39882   \******************************************************/
  39883 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39884 
  39885 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
  39886 var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
  39887 // typeof document.createElement is 'object' in old IE
  39888 var is = isObject(document) && isObject(document.createElement);
  39889 module.exports = function (it) {
  39890   return is ? document.createElement(it) : {};
  39891 };
  39892 
  39893 
  39894 /***/ }),
  39895 
  39896 /***/ "../node_modules/core-js/modules/_enum-bug-keys.js":
  39897 /*!*********************************************************!*\
  39898   !*** ../node_modules/core-js/modules/_enum-bug-keys.js ***!
  39899   \*********************************************************/
  39900 /***/ ((module) => {
  39901 
  39902 // IE 8- don't enum bug keys
  39903 module.exports = (
  39904   'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
  39905 ).split(',');
  39906 
  39907 
  39908 /***/ }),
  39909 
  39910 /***/ "../node_modules/core-js/modules/_export.js":
  39911 /*!**************************************************!*\
  39912   !*** ../node_modules/core-js/modules/_export.js ***!
  39913   \**************************************************/
  39914 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39915 
  39916 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  39917 var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
  39918 var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
  39919 var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
  39920 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
  39921 var PROTOTYPE = 'prototype';
  39922 
  39923 var $export = function (type, name, source) {
  39924   var IS_FORCED = type & $export.F;
  39925   var IS_GLOBAL = type & $export.G;
  39926   var IS_STATIC = type & $export.S;
  39927   var IS_PROTO = type & $export.P;
  39928   var IS_BIND = type & $export.B;
  39929   var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  39930   var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  39931   var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  39932   var key, own, out, exp;
  39933   if (IS_GLOBAL) source = name;
  39934   for (key in source) {
  39935     // contains in native
  39936     own = !IS_FORCED && target && target[key] !== undefined;
  39937     // export native or passed
  39938     out = (own ? target : source)[key];
  39939     // bind timers to global for call from export context
  39940     exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
  39941     // extend global
  39942     if (target) redefine(target, key, out, type & $export.U);
  39943     // export
  39944     if (exports[key] != out) hide(exports, key, exp);
  39945     if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  39946   }
  39947 };
  39948 global.core = core;
  39949 // type bitmap
  39950 $export.F = 1;   // forced
  39951 $export.G = 2;   // global
  39952 $export.S = 4;   // static
  39953 $export.P = 8;   // proto
  39954 $export.B = 16;  // bind
  39955 $export.W = 32;  // wrap
  39956 $export.U = 64;  // safe
  39957 $export.R = 128; // real proto method for `library`
  39958 module.exports = $export;
  39959 
  39960 
  39961 /***/ }),
  39962 
  39963 /***/ "../node_modules/core-js/modules/_fails-is-regexp.js":
  39964 /*!***********************************************************!*\
  39965   !*** ../node_modules/core-js/modules/_fails-is-regexp.js ***!
  39966   \***********************************************************/
  39967 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  39968 
  39969 var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
  39970 module.exports = function (KEY) {
  39971   var re = /./;
  39972   try {
  39973     '/./'[KEY](re);
  39974   } catch (e) {
  39975     try {
  39976       re[MATCH] = false;
  39977       return !'/./'[KEY](re);
  39978     } catch (f) { /* empty */ }
  39979   } return true;
  39980 };
  39981 
  39982 
  39983 /***/ }),
  39984 
  39985 /***/ "../node_modules/core-js/modules/_fails.js":
  39986 /*!*************************************************!*\
  39987   !*** ../node_modules/core-js/modules/_fails.js ***!
  39988   \*************************************************/
  39989 /***/ ((module) => {
  39990 
  39991 module.exports = function (exec) {
  39992   try {
  39993     return !!exec();
  39994   } catch (e) {
  39995     return true;
  39996   }
  39997 };
  39998 
  39999 
  40000 /***/ }),
  40001 
  40002 /***/ "../node_modules/core-js/modules/_fix-re-wks.js":
  40003 /*!******************************************************!*\
  40004   !*** ../node_modules/core-js/modules/_fix-re-wks.js ***!
  40005   \******************************************************/
  40006 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40007 
  40008 "use strict";
  40009 
  40010 __webpack_require__(/*! ./es6.regexp.exec */ "../node_modules/core-js/modules/es6.regexp.exec.js");
  40011 var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
  40012 var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
  40013 var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
  40014 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
  40015 var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
  40016 var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
  40017 
  40018 var SPECIES = wks('species');
  40019 
  40020 var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  40021   // #replace needs built-in support for named groups.
  40022   // #match works fine because it just return the exec results, even if it has
  40023   // a "grops" property.
  40024   var re = /./;
  40025   re.exec = function () {
  40026     var result = [];
  40027     result.groups = { a: '7' };
  40028     return result;
  40029   };
  40030   return ''.replace(re, '$<a>') !== '7';
  40031 });
  40032 
  40033 var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
  40034   // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
  40035   var re = /(?:)/;
  40036   var originalExec = re.exec;
  40037   re.exec = function () { return originalExec.apply(this, arguments); };
  40038   var result = 'ab'.split(re);
  40039   return result.length === 2 && result[0] === 'a' && result[1] === 'b';
  40040 })();
  40041 
  40042 module.exports = function (KEY, length, exec) {
  40043   var SYMBOL = wks(KEY);
  40044 
  40045   var DELEGATES_TO_SYMBOL = !fails(function () {
  40046     // String methods call symbol-named RegEp methods
  40047     var O = {};
  40048     O[SYMBOL] = function () { return 7; };
  40049     return ''[KEY](O) != 7;
  40050   });
  40051 
  40052   var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
  40053     // Symbol-named RegExp methods call .exec
  40054     var execCalled = false;
  40055     var re = /a/;
  40056     re.exec = function () { execCalled = true; return null; };
  40057     if (KEY === 'split') {
  40058       // RegExp[@@split] doesn't call the regex's exec method, but first creates
  40059       // a new one. We need to return the patched regex when creating the new one.
  40060       re.constructor = {};
  40061       re.constructor[SPECIES] = function () { return re; };
  40062     }
  40063     re[SYMBOL]('');
  40064     return !execCalled;
  40065   }) : undefined;
  40066 
  40067   if (
  40068     !DELEGATES_TO_SYMBOL ||
  40069     !DELEGATES_TO_EXEC ||
  40070     (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
  40071     (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
  40072   ) {
  40073     var nativeRegExpMethod = /./[SYMBOL];
  40074     var fns = exec(
  40075       defined,
  40076       SYMBOL,
  40077       ''[KEY],
  40078       function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
  40079         if (regexp.exec === regexpExec) {
  40080           if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
  40081             // The native String method already delegates to @@method (this
  40082             // polyfilled function), leasing to infinite recursion.
  40083             // We avoid it by directly calling the native @@method method.
  40084             return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
  40085           }
  40086           return { done: true, value: nativeMethod.call(str, regexp, arg2) };
  40087         }
  40088         return { done: false };
  40089       }
  40090     );
  40091     var strfn = fns[0];
  40092     var rxfn = fns[1];
  40093 
  40094     redefine(String.prototype, KEY, strfn);
  40095     hide(RegExp.prototype, SYMBOL, length == 2
  40096       // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
  40097       // 21.2.5.11 RegExp.prototype[@@split](string, limit)
  40098       ? function (string, arg) { return rxfn.call(string, this, arg); }
  40099       // 21.2.5.6 RegExp.prototype[@@match](string)
  40100       // 21.2.5.9 RegExp.prototype[@@search](string)
  40101       : function (string) { return rxfn.call(string, this); }
  40102     );
  40103   }
  40104 };
  40105 
  40106 
  40107 /***/ }),
  40108 
  40109 /***/ "../node_modules/core-js/modules/_flags.js":
  40110 /*!*************************************************!*\
  40111   !*** ../node_modules/core-js/modules/_flags.js ***!
  40112   \*************************************************/
  40113 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40114 
  40115 "use strict";
  40116 
  40117 // 21.2.5.3 get RegExp.prototype.flags
  40118 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  40119 module.exports = function () {
  40120   var that = anObject(this);
  40121   var result = '';
  40122   if (that.global) result += 'g';
  40123   if (that.ignoreCase) result += 'i';
  40124   if (that.multiline) result += 'm';
  40125   if (that.unicode) result += 'u';
  40126   if (that.sticky) result += 'y';
  40127   return result;
  40128 };
  40129 
  40130 
  40131 /***/ }),
  40132 
  40133 /***/ "../node_modules/core-js/modules/_for-of.js":
  40134 /*!**************************************************!*\
  40135   !*** ../node_modules/core-js/modules/_for-of.js ***!
  40136   \**************************************************/
  40137 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40138 
  40139 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
  40140 var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/modules/_iter-call.js");
  40141 var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/modules/_is-array-iter.js");
  40142 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  40143 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
  40144 var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/modules/core.get-iterator-method.js");
  40145 var BREAK = {};
  40146 var RETURN = {};
  40147 var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  40148   var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  40149   var f = ctx(fn, that, entries ? 2 : 1);
  40150   var index = 0;
  40151   var length, step, iterator, result;
  40152   if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  40153   // fast case for arrays with default iterator
  40154   if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
  40155     result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
  40156     if (result === BREAK || result === RETURN) return result;
  40157   } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
  40158     result = call(iterator, f, step.value, entries);
  40159     if (result === BREAK || result === RETURN) return result;
  40160   }
  40161 };
  40162 exports.BREAK = BREAK;
  40163 exports.RETURN = RETURN;
  40164 
  40165 
  40166 /***/ }),
  40167 
  40168 /***/ "../node_modules/core-js/modules/_function-to-string.js":
  40169 /*!**************************************************************!*\
  40170   !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  40171   \**************************************************************/
  40172 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40173 
  40174 module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);
  40175 
  40176 
  40177 /***/ }),
  40178 
  40179 /***/ "../node_modules/core-js/modules/_global.js":
  40180 /*!**************************************************!*\
  40181   !*** ../node_modules/core-js/modules/_global.js ***!
  40182   \**************************************************/
  40183 /***/ ((module) => {
  40184 
  40185 // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
  40186 var global = module.exports = typeof window != 'undefined' && window.Math == Math
  40187   ? window : typeof self != 'undefined' && self.Math == Math ? self
  40188   // eslint-disable-next-line no-new-func
  40189   : Function('return this')();
  40190 if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
  40191 
  40192 
  40193 /***/ }),
  40194 
  40195 /***/ "../node_modules/core-js/modules/_has.js":
  40196 /*!***********************************************!*\
  40197   !*** ../node_modules/core-js/modules/_has.js ***!
  40198   \***********************************************/
  40199 /***/ ((module) => {
  40200 
  40201 var hasOwnProperty = {}.hasOwnProperty;
  40202 module.exports = function (it, key) {
  40203   return hasOwnProperty.call(it, key);
  40204 };
  40205 
  40206 
  40207 /***/ }),
  40208 
  40209 /***/ "../node_modules/core-js/modules/_hide.js":
  40210 /*!************************************************!*\
  40211   !*** ../node_modules/core-js/modules/_hide.js ***!
  40212   \************************************************/
  40213 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40214 
  40215 var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
  40216 var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
  40217 module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  40218   return dP.f(object, key, createDesc(1, value));
  40219 } : function (object, key, value) {
  40220   object[key] = value;
  40221   return object;
  40222 };
  40223 
  40224 
  40225 /***/ }),
  40226 
  40227 /***/ "../node_modules/core-js/modules/_html.js":
  40228 /*!************************************************!*\
  40229   !*** ../node_modules/core-js/modules/_html.js ***!
  40230   \************************************************/
  40231 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40232 
  40233 var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
  40234 module.exports = document && document.documentElement;
  40235 
  40236 
  40237 /***/ }),
  40238 
  40239 /***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
  40240 /*!**********************************************************!*\
  40241   !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  40242   \**********************************************************/
  40243 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40244 
  40245 module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  40246   return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
  40247 });
  40248 
  40249 
  40250 /***/ }),
  40251 
  40252 /***/ "../node_modules/core-js/modules/_inherit-if-required.js":
  40253 /*!***************************************************************!*\
  40254   !*** ../node_modules/core-js/modules/_inherit-if-required.js ***!
  40255   \***************************************************************/
  40256 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40257 
  40258 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
  40259 var setPrototypeOf = __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/modules/_set-proto.js").set;
  40260 module.exports = function (that, target, C) {
  40261   var S = target.constructor;
  40262   var P;
  40263   if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {
  40264     setPrototypeOf(that, P);
  40265   } return that;
  40266 };
  40267 
  40268 
  40269 /***/ }),
  40270 
  40271 /***/ "../node_modules/core-js/modules/_invoke.js":
  40272 /*!**************************************************!*\
  40273   !*** ../node_modules/core-js/modules/_invoke.js ***!
  40274   \**************************************************/
  40275 /***/ ((module) => {
  40276 
  40277 // fast apply, http://jsperf.lnkit.com/fast-apply/5
  40278 module.exports = function (fn, args, that) {
  40279   var un = that === undefined;
  40280   switch (args.length) {
  40281     case 0: return un ? fn()
  40282                       : fn.call(that);
  40283     case 1: return un ? fn(args[0])
  40284                       : fn.call(that, args[0]);
  40285     case 2: return un ? fn(args[0], args[1])
  40286                       : fn.call(that, args[0], args[1]);
  40287     case 3: return un ? fn(args[0], args[1], args[2])
  40288                       : fn.call(that, args[0], args[1], args[2]);
  40289     case 4: return un ? fn(args[0], args[1], args[2], args[3])
  40290                       : fn.call(that, args[0], args[1], args[2], args[3]);
  40291   } return fn.apply(that, args);
  40292 };
  40293 
  40294 
  40295 /***/ }),
  40296 
  40297 /***/ "../node_modules/core-js/modules/_iobject.js":
  40298 /*!***************************************************!*\
  40299   !*** ../node_modules/core-js/modules/_iobject.js ***!
  40300   \***************************************************/
  40301 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40302 
  40303 // fallback for non-array-like ES3 and non-enumerable old V8 strings
  40304 var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
  40305 // eslint-disable-next-line no-prototype-builtins
  40306 module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  40307   return cof(it) == 'String' ? it.split('') : Object(it);
  40308 };
  40309 
  40310 
  40311 /***/ }),
  40312 
  40313 /***/ "../node_modules/core-js/modules/_is-array-iter.js":
  40314 /*!*********************************************************!*\
  40315   !*** ../node_modules/core-js/modules/_is-array-iter.js ***!
  40316   \*********************************************************/
  40317 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40318 
  40319 // check on default Array iterator
  40320 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
  40321 var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
  40322 var ArrayProto = Array.prototype;
  40323 
  40324 module.exports = function (it) {
  40325   return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
  40326 };
  40327 
  40328 
  40329 /***/ }),
  40330 
  40331 /***/ "../node_modules/core-js/modules/_is-array.js":
  40332 /*!****************************************************!*\
  40333   !*** ../node_modules/core-js/modules/_is-array.js ***!
  40334   \****************************************************/
  40335 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40336 
  40337 // 7.2.2 IsArray(argument)
  40338 var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
  40339 module.exports = Array.isArray || function isArray(arg) {
  40340   return cof(arg) == 'Array';
  40341 };
  40342 
  40343 
  40344 /***/ }),
  40345 
  40346 /***/ "../node_modules/core-js/modules/_is-object.js":
  40347 /*!*****************************************************!*\
  40348   !*** ../node_modules/core-js/modules/_is-object.js ***!
  40349   \*****************************************************/
  40350 /***/ ((module) => {
  40351 
  40352 module.exports = function (it) {
  40353   return typeof it === 'object' ? it !== null : typeof it === 'function';
  40354 };
  40355 
  40356 
  40357 /***/ }),
  40358 
  40359 /***/ "../node_modules/core-js/modules/_is-regexp.js":
  40360 /*!*****************************************************!*\
  40361   !*** ../node_modules/core-js/modules/_is-regexp.js ***!
  40362   \*****************************************************/
  40363 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40364 
  40365 // 7.2.8 IsRegExp(argument)
  40366 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
  40367 var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
  40368 var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
  40369 module.exports = function (it) {
  40370   var isRegExp;
  40371   return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
  40372 };
  40373 
  40374 
  40375 /***/ }),
  40376 
  40377 /***/ "../node_modules/core-js/modules/_iter-call.js":
  40378 /*!*****************************************************!*\
  40379   !*** ../node_modules/core-js/modules/_iter-call.js ***!
  40380   \*****************************************************/
  40381 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40382 
  40383 // call something on iterator step with safe closing on error
  40384 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  40385 module.exports = function (iterator, fn, value, entries) {
  40386   try {
  40387     return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  40388   // 7.4.6 IteratorClose(iterator, completion)
  40389   } catch (e) {
  40390     var ret = iterator['return'];
  40391     if (ret !== undefined) anObject(ret.call(iterator));
  40392     throw e;
  40393   }
  40394 };
  40395 
  40396 
  40397 /***/ }),
  40398 
  40399 /***/ "../node_modules/core-js/modules/_iter-create.js":
  40400 /*!*******************************************************!*\
  40401   !*** ../node_modules/core-js/modules/_iter-create.js ***!
  40402   \*******************************************************/
  40403 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40404 
  40405 "use strict";
  40406 
  40407 var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js");
  40408 var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
  40409 var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
  40410 var IteratorPrototype = {};
  40411 
  40412 // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
  40413 __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator'), function () { return this; });
  40414 
  40415 module.exports = function (Constructor, NAME, next) {
  40416   Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  40417   setToStringTag(Constructor, NAME + ' Iterator');
  40418 };
  40419 
  40420 
  40421 /***/ }),
  40422 
  40423 /***/ "../node_modules/core-js/modules/_iter-define.js":
  40424 /*!*******************************************************!*\
  40425   !*** ../node_modules/core-js/modules/_iter-define.js ***!
  40426   \*******************************************************/
  40427 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40428 
  40429 "use strict";
  40430 
  40431 var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
  40432 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  40433 var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
  40434 var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
  40435 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
  40436 var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/modules/_iter-create.js");
  40437 var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
  40438 var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/modules/_object-gpo.js");
  40439 var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
  40440 var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
  40441 var FF_ITERATOR = '@@iterator';
  40442 var KEYS = 'keys';
  40443 var VALUES = 'values';
  40444 
  40445 var returnThis = function () { return this; };
  40446 
  40447 module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  40448   $iterCreate(Constructor, NAME, next);
  40449   var getMethod = function (kind) {
  40450     if (!BUGGY && kind in proto) return proto[kind];
  40451     switch (kind) {
  40452       case KEYS: return function keys() { return new Constructor(this, kind); };
  40453       case VALUES: return function values() { return new Constructor(this, kind); };
  40454     } return function entries() { return new Constructor(this, kind); };
  40455   };
  40456   var TAG = NAME + ' Iterator';
  40457   var DEF_VALUES = DEFAULT == VALUES;
  40458   var VALUES_BUG = false;
  40459   var proto = Base.prototype;
  40460   var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  40461   var $default = $native || getMethod(DEFAULT);
  40462   var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  40463   var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  40464   var methods, key, IteratorPrototype;
  40465   // Fix native
  40466   if ($anyNative) {
  40467     IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
  40468     if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
  40469       // Set @@toStringTag to native iterators
  40470       setToStringTag(IteratorPrototype, TAG, true);
  40471       // fix for some old engines
  40472       if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
  40473     }
  40474   }
  40475   // fix Array#{values, @@iterator}.name in V8 / FF
  40476   if (DEF_VALUES && $native && $native.name !== VALUES) {
  40477     VALUES_BUG = true;
  40478     $default = function values() { return $native.call(this); };
  40479   }
  40480   // Define iterator
  40481   if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
  40482     hide(proto, ITERATOR, $default);
  40483   }
  40484   // Plug for library
  40485   Iterators[NAME] = $default;
  40486   Iterators[TAG] = returnThis;
  40487   if (DEFAULT) {
  40488     methods = {
  40489       values: DEF_VALUES ? $default : getMethod(VALUES),
  40490       keys: IS_SET ? $default : getMethod(KEYS),
  40491       entries: $entries
  40492     };
  40493     if (FORCED) for (key in methods) {
  40494       if (!(key in proto)) redefine(proto, key, methods[key]);
  40495     } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  40496   }
  40497   return methods;
  40498 };
  40499 
  40500 
  40501 /***/ }),
  40502 
  40503 /***/ "../node_modules/core-js/modules/_iter-detect.js":
  40504 /*!*******************************************************!*\
  40505   !*** ../node_modules/core-js/modules/_iter-detect.js ***!
  40506   \*******************************************************/
  40507 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40508 
  40509 var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
  40510 var SAFE_CLOSING = false;
  40511 
  40512 try {
  40513   var riter = [7][ITERATOR]();
  40514   riter['return'] = function () { SAFE_CLOSING = true; };
  40515   // eslint-disable-next-line no-throw-literal
  40516   Array.from(riter, function () { throw 2; });
  40517 } catch (e) { /* empty */ }
  40518 
  40519 module.exports = function (exec, skipClosing) {
  40520   if (!skipClosing && !SAFE_CLOSING) return false;
  40521   var safe = false;
  40522   try {
  40523     var arr = [7];
  40524     var iter = arr[ITERATOR]();
  40525     iter.next = function () { return { done: safe = true }; };
  40526     arr[ITERATOR] = function () { return iter; };
  40527     exec(arr);
  40528   } catch (e) { /* empty */ }
  40529   return safe;
  40530 };
  40531 
  40532 
  40533 /***/ }),
  40534 
  40535 /***/ "../node_modules/core-js/modules/_iter-step.js":
  40536 /*!*****************************************************!*\
  40537   !*** ../node_modules/core-js/modules/_iter-step.js ***!
  40538   \*****************************************************/
  40539 /***/ ((module) => {
  40540 
  40541 module.exports = function (done, value) {
  40542   return { value: value, done: !!done };
  40543 };
  40544 
  40545 
  40546 /***/ }),
  40547 
  40548 /***/ "../node_modules/core-js/modules/_iterators.js":
  40549 /*!*****************************************************!*\
  40550   !*** ../node_modules/core-js/modules/_iterators.js ***!
  40551   \*****************************************************/
  40552 /***/ ((module) => {
  40553 
  40554 module.exports = {};
  40555 
  40556 
  40557 /***/ }),
  40558 
  40559 /***/ "../node_modules/core-js/modules/_library.js":
  40560 /*!***************************************************!*\
  40561   !*** ../node_modules/core-js/modules/_library.js ***!
  40562   \***************************************************/
  40563 /***/ ((module) => {
  40564 
  40565 module.exports = false;
  40566 
  40567 
  40568 /***/ }),
  40569 
  40570 /***/ "../node_modules/core-js/modules/_microtask.js":
  40571 /*!*****************************************************!*\
  40572   !*** ../node_modules/core-js/modules/_microtask.js ***!
  40573   \*****************************************************/
  40574 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40575 
  40576 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  40577 var macrotask = __webpack_require__(/*! ./_task */ "../node_modules/core-js/modules/_task.js").set;
  40578 var Observer = global.MutationObserver || global.WebKitMutationObserver;
  40579 var process = global.process;
  40580 var Promise = global.Promise;
  40581 var isNode = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js")(process) == 'process';
  40582 
  40583 module.exports = function () {
  40584   var head, last, notify;
  40585 
  40586   var flush = function () {
  40587     var parent, fn;
  40588     if (isNode && (parent = process.domain)) parent.exit();
  40589     while (head) {
  40590       fn = head.fn;
  40591       head = head.next;
  40592       try {
  40593         fn();
  40594       } catch (e) {
  40595         if (head) notify();
  40596         else last = undefined;
  40597         throw e;
  40598       }
  40599     } last = undefined;
  40600     if (parent) parent.enter();
  40601   };
  40602 
  40603   // Node.js
  40604   if (isNode) {
  40605     notify = function () {
  40606       process.nextTick(flush);
  40607     };
  40608   // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
  40609   } else if (Observer && !(global.navigator && global.navigator.standalone)) {
  40610     var toggle = true;
  40611     var node = document.createTextNode('');
  40612     new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
  40613     notify = function () {
  40614       node.data = toggle = !toggle;
  40615     };
  40616   // environments with maybe non-completely correct, but existent Promise
  40617   } else if (Promise && Promise.resolve) {
  40618     // Promise.resolve without an argument throws an error in LG WebOS 2
  40619     var promise = Promise.resolve(undefined);
  40620     notify = function () {
  40621       promise.then(flush);
  40622     };
  40623   // for other environments - macrotask based on:
  40624   // - setImmediate
  40625   // - MessageChannel
  40626   // - window.postMessag
  40627   // - onreadystatechange
  40628   // - setTimeout
  40629   } else {
  40630     notify = function () {
  40631       // strange IE + webpack dev server bug - use .call(global)
  40632       macrotask.call(global, flush);
  40633     };
  40634   }
  40635 
  40636   return function (fn) {
  40637     var task = { fn: fn, next: undefined };
  40638     if (last) last.next = task;
  40639     if (!head) {
  40640       head = task;
  40641       notify();
  40642     } last = task;
  40643   };
  40644 };
  40645 
  40646 
  40647 /***/ }),
  40648 
  40649 /***/ "../node_modules/core-js/modules/_new-promise-capability.js":
  40650 /*!******************************************************************!*\
  40651   !*** ../node_modules/core-js/modules/_new-promise-capability.js ***!
  40652   \******************************************************************/
  40653 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40654 
  40655 "use strict";
  40656 
  40657 // 25.4.1.5 NewPromiseCapability(C)
  40658 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
  40659 
  40660 function PromiseCapability(C) {
  40661   var resolve, reject;
  40662   this.promise = new C(function ($$resolve, $$reject) {
  40663     if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
  40664     resolve = $$resolve;
  40665     reject = $$reject;
  40666   });
  40667   this.resolve = aFunction(resolve);
  40668   this.reject = aFunction(reject);
  40669 }
  40670 
  40671 module.exports.f = function (C) {
  40672   return new PromiseCapability(C);
  40673 };
  40674 
  40675 
  40676 /***/ }),
  40677 
  40678 /***/ "../node_modules/core-js/modules/_object-create.js":
  40679 /*!*********************************************************!*\
  40680   !*** ../node_modules/core-js/modules/_object-create.js ***!
  40681   \*********************************************************/
  40682 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40683 
  40684 // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
  40685 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  40686 var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/modules/_object-dps.js");
  40687 var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");
  40688 var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
  40689 var Empty = function () { /* empty */ };
  40690 var PROTOTYPE = 'prototype';
  40691 
  40692 // Create object with fake `null` prototype: use iframe Object with cleared prototype
  40693 var createDict = function () {
  40694   // Thrash, waste and sodomy: IE GC bug
  40695   var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('iframe');
  40696   var i = enumBugKeys.length;
  40697   var lt = '<';
  40698   var gt = '>';
  40699   var iframeDocument;
  40700   iframe.style.display = 'none';
  40701   __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js").appendChild(iframe);
  40702   iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  40703   // createDict = iframe.contentWindow.Object;
  40704   // html.removeChild(iframe);
  40705   iframeDocument = iframe.contentWindow.document;
  40706   iframeDocument.open();
  40707   iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  40708   iframeDocument.close();
  40709   createDict = iframeDocument.F;
  40710   while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  40711   return createDict();
  40712 };
  40713 
  40714 module.exports = Object.create || function create(O, Properties) {
  40715   var result;
  40716   if (O !== null) {
  40717     Empty[PROTOTYPE] = anObject(O);
  40718     result = new Empty();
  40719     Empty[PROTOTYPE] = null;
  40720     // add "__proto__" for Object.getPrototypeOf polyfill
  40721     result[IE_PROTO] = O;
  40722   } else result = createDict();
  40723   return Properties === undefined ? result : dPs(result, Properties);
  40724 };
  40725 
  40726 
  40727 /***/ }),
  40728 
  40729 /***/ "../node_modules/core-js/modules/_object-dp.js":
  40730 /*!*****************************************************!*\
  40731   !*** ../node_modules/core-js/modules/_object-dp.js ***!
  40732   \*****************************************************/
  40733 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  40734 
  40735 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  40736 var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
  40737 var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
  40738 var dP = Object.defineProperty;
  40739 
  40740 exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  40741   anObject(O);
  40742   P = toPrimitive(P, true);
  40743   anObject(Attributes);
  40744   if (IE8_DOM_DEFINE) try {
  40745     return dP(O, P, Attributes);
  40746   } catch (e) { /* empty */ }
  40747   if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  40748   if ('value' in Attributes) O[P] = Attributes.value;
  40749   return O;
  40750 };
  40751 
  40752 
  40753 /***/ }),
  40754 
  40755 /***/ "../node_modules/core-js/modules/_object-dps.js":
  40756 /*!******************************************************!*\
  40757   !*** ../node_modules/core-js/modules/_object-dps.js ***!
  40758   \******************************************************/
  40759 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40760 
  40761 var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
  40762 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  40763 var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");
  40764 
  40765 module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  40766   anObject(O);
  40767   var keys = getKeys(Properties);
  40768   var length = keys.length;
  40769   var i = 0;
  40770   var P;
  40771   while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  40772   return O;
  40773 };
  40774 
  40775 
  40776 /***/ }),
  40777 
  40778 /***/ "../node_modules/core-js/modules/_object-gopd.js":
  40779 /*!*******************************************************!*\
  40780   !*** ../node_modules/core-js/modules/_object-gopd.js ***!
  40781   \*******************************************************/
  40782 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  40783 
  40784 var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/modules/_object-pie.js");
  40785 var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
  40786 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
  40787 var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
  40788 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
  40789 var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
  40790 var gOPD = Object.getOwnPropertyDescriptor;
  40791 
  40792 exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  40793   O = toIObject(O);
  40794   P = toPrimitive(P, true);
  40795   if (IE8_DOM_DEFINE) try {
  40796     return gOPD(O, P);
  40797   } catch (e) { /* empty */ }
  40798   if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
  40799 };
  40800 
  40801 
  40802 /***/ }),
  40803 
  40804 /***/ "../node_modules/core-js/modules/_object-gopn.js":
  40805 /*!*******************************************************!*\
  40806   !*** ../node_modules/core-js/modules/_object-gopn.js ***!
  40807   \*******************************************************/
  40808 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  40809 
  40810 // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
  40811 var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
  40812 var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js").concat('length', 'prototype');
  40813 
  40814 exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  40815   return $keys(O, hiddenKeys);
  40816 };
  40817 
  40818 
  40819 /***/ }),
  40820 
  40821 /***/ "../node_modules/core-js/modules/_object-gpo.js":
  40822 /*!******************************************************!*\
  40823   !*** ../node_modules/core-js/modules/_object-gpo.js ***!
  40824   \******************************************************/
  40825 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40826 
  40827 // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
  40828 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
  40829 var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
  40830 var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
  40831 var ObjectProto = Object.prototype;
  40832 
  40833 module.exports = Object.getPrototypeOf || function (O) {
  40834   O = toObject(O);
  40835   if (has(O, IE_PROTO)) return O[IE_PROTO];
  40836   if (typeof O.constructor == 'function' && O instanceof O.constructor) {
  40837     return O.constructor.prototype;
  40838   } return O instanceof Object ? ObjectProto : null;
  40839 };
  40840 
  40841 
  40842 /***/ }),
  40843 
  40844 /***/ "../node_modules/core-js/modules/_object-keys-internal.js":
  40845 /*!****************************************************************!*\
  40846   !*** ../node_modules/core-js/modules/_object-keys-internal.js ***!
  40847   \****************************************************************/
  40848 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40849 
  40850 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
  40851 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
  40852 var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(false);
  40853 var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
  40854 
  40855 module.exports = function (object, names) {
  40856   var O = toIObject(object);
  40857   var i = 0;
  40858   var result = [];
  40859   var key;
  40860   for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  40861   // Don't enum bug & hidden keys
  40862   while (names.length > i) if (has(O, key = names[i++])) {
  40863     ~arrayIndexOf(result, key) || result.push(key);
  40864   }
  40865   return result;
  40866 };
  40867 
  40868 
  40869 /***/ }),
  40870 
  40871 /***/ "../node_modules/core-js/modules/_object-keys.js":
  40872 /*!*******************************************************!*\
  40873   !*** ../node_modules/core-js/modules/_object-keys.js ***!
  40874   \*******************************************************/
  40875 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40876 
  40877 // 19.1.2.14 / 15.2.3.14 Object.keys(O)
  40878 var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
  40879 var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");
  40880 
  40881 module.exports = Object.keys || function keys(O) {
  40882   return $keys(O, enumBugKeys);
  40883 };
  40884 
  40885 
  40886 /***/ }),
  40887 
  40888 /***/ "../node_modules/core-js/modules/_object-pie.js":
  40889 /*!******************************************************!*\
  40890   !*** ../node_modules/core-js/modules/_object-pie.js ***!
  40891   \******************************************************/
  40892 /***/ ((__unused_webpack_module, exports) => {
  40893 
  40894 exports.f = {}.propertyIsEnumerable;
  40895 
  40896 
  40897 /***/ }),
  40898 
  40899 /***/ "../node_modules/core-js/modules/_perform.js":
  40900 /*!***************************************************!*\
  40901   !*** ../node_modules/core-js/modules/_perform.js ***!
  40902   \***************************************************/
  40903 /***/ ((module) => {
  40904 
  40905 module.exports = function (exec) {
  40906   try {
  40907     return { e: false, v: exec() };
  40908   } catch (e) {
  40909     return { e: true, v: e };
  40910   }
  40911 };
  40912 
  40913 
  40914 /***/ }),
  40915 
  40916 /***/ "../node_modules/core-js/modules/_promise-resolve.js":
  40917 /*!***********************************************************!*\
  40918   !*** ../node_modules/core-js/modules/_promise-resolve.js ***!
  40919   \***********************************************************/
  40920 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40921 
  40922 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  40923 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
  40924 var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/modules/_new-promise-capability.js");
  40925 
  40926 module.exports = function (C, x) {
  40927   anObject(C);
  40928   if (isObject(x) && x.constructor === C) return x;
  40929   var promiseCapability = newPromiseCapability.f(C);
  40930   var resolve = promiseCapability.resolve;
  40931   resolve(x);
  40932   return promiseCapability.promise;
  40933 };
  40934 
  40935 
  40936 /***/ }),
  40937 
  40938 /***/ "../node_modules/core-js/modules/_property-desc.js":
  40939 /*!*********************************************************!*\
  40940   !*** ../node_modules/core-js/modules/_property-desc.js ***!
  40941   \*********************************************************/
  40942 /***/ ((module) => {
  40943 
  40944 module.exports = function (bitmap, value) {
  40945   return {
  40946     enumerable: !(bitmap & 1),
  40947     configurable: !(bitmap & 2),
  40948     writable: !(bitmap & 4),
  40949     value: value
  40950   };
  40951 };
  40952 
  40953 
  40954 /***/ }),
  40955 
  40956 /***/ "../node_modules/core-js/modules/_redefine-all.js":
  40957 /*!********************************************************!*\
  40958   !*** ../node_modules/core-js/modules/_redefine-all.js ***!
  40959   \********************************************************/
  40960 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40961 
  40962 var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
  40963 module.exports = function (target, src, safe) {
  40964   for (var key in src) redefine(target, key, src[key], safe);
  40965   return target;
  40966 };
  40967 
  40968 
  40969 /***/ }),
  40970 
  40971 /***/ "../node_modules/core-js/modules/_redefine.js":
  40972 /*!****************************************************!*\
  40973   !*** ../node_modules/core-js/modules/_redefine.js ***!
  40974   \****************************************************/
  40975 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  40976 
  40977 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  40978 var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
  40979 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
  40980 var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
  40981 var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
  40982 var TO_STRING = 'toString';
  40983 var TPL = ('' + $toString).split(TO_STRING);
  40984 
  40985 __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  40986   return $toString.call(it);
  40987 };
  40988 
  40989 (module.exports = function (O, key, val, safe) {
  40990   var isFunction = typeof val == 'function';
  40991   if (isFunction) has(val, 'name') || hide(val, 'name', key);
  40992   if (O[key] === val) return;
  40993   if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  40994   if (O === global) {
  40995     O[key] = val;
  40996   } else if (!safe) {
  40997     delete O[key];
  40998     hide(O, key, val);
  40999   } else if (O[key]) {
  41000     O[key] = val;
  41001   } else {
  41002     hide(O, key, val);
  41003   }
  41004 // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
  41005 })(Function.prototype, TO_STRING, function toString() {
  41006   return typeof this == 'function' && this[SRC] || $toString.call(this);
  41007 });
  41008 
  41009 
  41010 /***/ }),
  41011 
  41012 /***/ "../node_modules/core-js/modules/_regexp-exec-abstract.js":
  41013 /*!****************************************************************!*\
  41014   !*** ../node_modules/core-js/modules/_regexp-exec-abstract.js ***!
  41015   \****************************************************************/
  41016 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41017 
  41018 "use strict";
  41019 
  41020 
  41021 var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
  41022 var builtinExec = RegExp.prototype.exec;
  41023 
  41024  // `RegExpExec` abstract operation
  41025 // https://tc39.github.io/ecma262/#sec-regexpexec
  41026 module.exports = function (R, S) {
  41027   var exec = R.exec;
  41028   if (typeof exec === 'function') {
  41029     var result = exec.call(R, S);
  41030     if (typeof result !== 'object') {
  41031       throw new TypeError('RegExp exec method returned something other than an Object or null');
  41032     }
  41033     return result;
  41034   }
  41035   if (classof(R) !== 'RegExp') {
  41036     throw new TypeError('RegExp#exec called on incompatible receiver');
  41037   }
  41038   return builtinExec.call(R, S);
  41039 };
  41040 
  41041 
  41042 /***/ }),
  41043 
  41044 /***/ "../node_modules/core-js/modules/_regexp-exec.js":
  41045 /*!*******************************************************!*\
  41046   !*** ../node_modules/core-js/modules/_regexp-exec.js ***!
  41047   \*******************************************************/
  41048 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41049 
  41050 "use strict";
  41051 
  41052 
  41053 var regexpFlags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
  41054 
  41055 var nativeExec = RegExp.prototype.exec;
  41056 // This always refers to the native implementation, because the
  41057 // String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
  41058 // which loads this file before patching the method.
  41059 var nativeReplace = String.prototype.replace;
  41060 
  41061 var patchedExec = nativeExec;
  41062 
  41063 var LAST_INDEX = 'lastIndex';
  41064 
  41065 var UPDATES_LAST_INDEX_WRONG = (function () {
  41066   var re1 = /a/,
  41067       re2 = /b*/g;
  41068   nativeExec.call(re1, 'a');
  41069   nativeExec.call(re2, 'a');
  41070   return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
  41071 })();
  41072 
  41073 // nonparticipating capturing group, copied from es5-shim's String#split patch.
  41074 var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
  41075 
  41076 var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;
  41077 
  41078 if (PATCH) {
  41079   patchedExec = function exec(str) {
  41080     var re = this;
  41081     var lastIndex, reCopy, match, i;
  41082 
  41083     if (NPCG_INCLUDED) {
  41084       reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
  41085     }
  41086     if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];
  41087 
  41088     match = nativeExec.call(re, str);
  41089 
  41090     if (UPDATES_LAST_INDEX_WRONG && match) {
  41091       re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
  41092     }
  41093     if (NPCG_INCLUDED && match && match.length > 1) {
  41094       // Fix browsers whose `exec` methods don't consistently return `undefined`
  41095       // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
  41096       // eslint-disable-next-line no-loop-func
  41097       nativeReplace.call(match[0], reCopy, function () {
  41098         for (i = 1; i < arguments.length - 2; i++) {
  41099           if (arguments[i] === undefined) match[i] = undefined;
  41100         }
  41101       });
  41102     }
  41103 
  41104     return match;
  41105   };
  41106 }
  41107 
  41108 module.exports = patchedExec;
  41109 
  41110 
  41111 /***/ }),
  41112 
  41113 /***/ "../node_modules/core-js/modules/_same-value.js":
  41114 /*!******************************************************!*\
  41115   !*** ../node_modules/core-js/modules/_same-value.js ***!
  41116   \******************************************************/
  41117 /***/ ((module) => {
  41118 
  41119 // 7.2.9 SameValue(x, y)
  41120 module.exports = Object.is || function is(x, y) {
  41121   // eslint-disable-next-line no-self-compare
  41122   return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
  41123 };
  41124 
  41125 
  41126 /***/ }),
  41127 
  41128 /***/ "../node_modules/core-js/modules/_set-proto.js":
  41129 /*!*****************************************************!*\
  41130   !*** ../node_modules/core-js/modules/_set-proto.js ***!
  41131   \*****************************************************/
  41132 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41133 
  41134 // Works with __proto__ only. Old v8 can't work with null proto objects.
  41135 /* eslint-disable no-proto */
  41136 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
  41137 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  41138 var check = function (O, proto) {
  41139   anObject(O);
  41140   if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
  41141 };
  41142 module.exports = {
  41143   set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
  41144     function (test, buggy, set) {
  41145       try {
  41146         set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
  41147         set(test, []);
  41148         buggy = !(test instanceof Array);
  41149       } catch (e) { buggy = true; }
  41150       return function setPrototypeOf(O, proto) {
  41151         check(O, proto);
  41152         if (buggy) O.__proto__ = proto;
  41153         else set(O, proto);
  41154         return O;
  41155       };
  41156     }({}, false) : undefined),
  41157   check: check
  41158 };
  41159 
  41160 
  41161 /***/ }),
  41162 
  41163 /***/ "../node_modules/core-js/modules/_set-species.js":
  41164 /*!*******************************************************!*\
  41165   !*** ../node_modules/core-js/modules/_set-species.js ***!
  41166   \*******************************************************/
  41167 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41168 
  41169 "use strict";
  41170 
  41171 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  41172 var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
  41173 var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
  41174 var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
  41175 
  41176 module.exports = function (KEY) {
  41177   var C = global[KEY];
  41178   if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
  41179     configurable: true,
  41180     get: function () { return this; }
  41181   });
  41182 };
  41183 
  41184 
  41185 /***/ }),
  41186 
  41187 /***/ "../node_modules/core-js/modules/_set-to-string-tag.js":
  41188 /*!*************************************************************!*\
  41189   !*** ../node_modules/core-js/modules/_set-to-string-tag.js ***!
  41190   \*************************************************************/
  41191 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41192 
  41193 var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
  41194 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
  41195 var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
  41196 
  41197 module.exports = function (it, tag, stat) {
  41198   if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
  41199 };
  41200 
  41201 
  41202 /***/ }),
  41203 
  41204 /***/ "../node_modules/core-js/modules/_shared-key.js":
  41205 /*!******************************************************!*\
  41206   !*** ../node_modules/core-js/modules/_shared-key.js ***!
  41207   \******************************************************/
  41208 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41209 
  41210 var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('keys');
  41211 var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
  41212 module.exports = function (key) {
  41213   return shared[key] || (shared[key] = uid(key));
  41214 };
  41215 
  41216 
  41217 /***/ }),
  41218 
  41219 /***/ "../node_modules/core-js/modules/_shared.js":
  41220 /*!**************************************************!*\
  41221   !*** ../node_modules/core-js/modules/_shared.js ***!
  41222   \**************************************************/
  41223 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41224 
  41225 var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
  41226 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  41227 var SHARED = '__core-js_shared__';
  41228 var store = global[SHARED] || (global[SHARED] = {});
  41229 
  41230 (module.exports = function (key, value) {
  41231   return store[key] || (store[key] = value !== undefined ? value : {});
  41232 })('versions', []).push({
  41233   version: core.version,
  41234   mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  41235   copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
  41236 });
  41237 
  41238 
  41239 /***/ }),
  41240 
  41241 /***/ "../node_modules/core-js/modules/_species-constructor.js":
  41242 /*!***************************************************************!*\
  41243   !*** ../node_modules/core-js/modules/_species-constructor.js ***!
  41244   \***************************************************************/
  41245 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41246 
  41247 // 7.3.20 SpeciesConstructor(O, defaultConstructor)
  41248 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  41249 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
  41250 var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
  41251 module.exports = function (O, D) {
  41252   var C = anObject(O).constructor;
  41253   var S;
  41254   return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
  41255 };
  41256 
  41257 
  41258 /***/ }),
  41259 
  41260 /***/ "../node_modules/core-js/modules/_strict-method.js":
  41261 /*!*********************************************************!*\
  41262   !*** ../node_modules/core-js/modules/_strict-method.js ***!
  41263   \*********************************************************/
  41264 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41265 
  41266 "use strict";
  41267 
  41268 var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
  41269 
  41270 module.exports = function (method, arg) {
  41271   return !!method && fails(function () {
  41272     // eslint-disable-next-line no-useless-call
  41273     arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  41274   });
  41275 };
  41276 
  41277 
  41278 /***/ }),
  41279 
  41280 /***/ "../node_modules/core-js/modules/_string-at.js":
  41281 /*!*****************************************************!*\
  41282   !*** ../node_modules/core-js/modules/_string-at.js ***!
  41283   \*****************************************************/
  41284 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41285 
  41286 var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
  41287 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
  41288 // true  -> String#at
  41289 // false -> String#codePointAt
  41290 module.exports = function (TO_STRING) {
  41291   return function (that, pos) {
  41292     var s = String(defined(that));
  41293     var i = toInteger(pos);
  41294     var l = s.length;
  41295     var a, b;
  41296     if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
  41297     a = s.charCodeAt(i);
  41298     return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
  41299       ? TO_STRING ? s.charAt(i) : a
  41300       : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  41301   };
  41302 };
  41303 
  41304 
  41305 /***/ }),
  41306 
  41307 /***/ "../node_modules/core-js/modules/_string-context.js":
  41308 /*!**********************************************************!*\
  41309   !*** ../node_modules/core-js/modules/_string-context.js ***!
  41310   \**********************************************************/
  41311 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41312 
  41313 // helper for String#{startsWith, endsWith, includes}
  41314 var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
  41315 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
  41316 
  41317 module.exports = function (that, searchString, NAME) {
  41318   if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
  41319   return String(defined(that));
  41320 };
  41321 
  41322 
  41323 /***/ }),
  41324 
  41325 /***/ "../node_modules/core-js/modules/_string-html.js":
  41326 /*!*******************************************************!*\
  41327   !*** ../node_modules/core-js/modules/_string-html.js ***!
  41328   \*******************************************************/
  41329 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41330 
  41331 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  41332 var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
  41333 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
  41334 var quot = /"/g;
  41335 // B.2.3.2.1 CreateHTML(string, tag, attribute, value)
  41336 var createHTML = function (string, tag, attribute, value) {
  41337   var S = String(defined(string));
  41338   var p1 = '<' + tag;
  41339   if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '&quot;') + '"';
  41340   return p1 + '>' + S + '</' + tag + '>';
  41341 };
  41342 module.exports = function (NAME, exec) {
  41343   var O = {};
  41344   O[NAME] = exec(createHTML);
  41345   $export($export.P + $export.F * fails(function () {
  41346     var test = ''[NAME]('"');
  41347     return test !== test.toLowerCase() || test.split('"').length > 3;
  41348   }), 'String', O);
  41349 };
  41350 
  41351 
  41352 /***/ }),
  41353 
  41354 /***/ "../node_modules/core-js/modules/_string-trim.js":
  41355 /*!*******************************************************!*\
  41356   !*** ../node_modules/core-js/modules/_string-trim.js ***!
  41357   \*******************************************************/
  41358 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41359 
  41360 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  41361 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
  41362 var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
  41363 var spaces = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/modules/_string-ws.js");
  41364 var space = '[' + spaces + ']';
  41365 var non = '\u200b\u0085';
  41366 var ltrim = RegExp('^' + space + space + '*');
  41367 var rtrim = RegExp(space + space + '*$');
  41368 
  41369 var exporter = function (KEY, exec, ALIAS) {
  41370   var exp = {};
  41371   var FORCE = fails(function () {
  41372     return !!spaces[KEY]() || non[KEY]() != non;
  41373   });
  41374   var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
  41375   if (ALIAS) exp[ALIAS] = fn;
  41376   $export($export.P + $export.F * FORCE, 'String', exp);
  41377 };
  41378 
  41379 // 1 -> String#trimLeft
  41380 // 2 -> String#trimRight
  41381 // 3 -> String#trim
  41382 var trim = exporter.trim = function (string, TYPE) {
  41383   string = String(defined(string));
  41384   if (TYPE & 1) string = string.replace(ltrim, '');
  41385   if (TYPE & 2) string = string.replace(rtrim, '');
  41386   return string;
  41387 };
  41388 
  41389 module.exports = exporter;
  41390 
  41391 
  41392 /***/ }),
  41393 
  41394 /***/ "../node_modules/core-js/modules/_string-ws.js":
  41395 /*!*****************************************************!*\
  41396   !*** ../node_modules/core-js/modules/_string-ws.js ***!
  41397   \*****************************************************/
  41398 /***/ ((module) => {
  41399 
  41400 module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
  41401   '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
  41402 
  41403 
  41404 /***/ }),
  41405 
  41406 /***/ "../node_modules/core-js/modules/_task.js":
  41407 /*!************************************************!*\
  41408   !*** ../node_modules/core-js/modules/_task.js ***!
  41409   \************************************************/
  41410 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41411 
  41412 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
  41413 var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/modules/_invoke.js");
  41414 var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js");
  41415 var cel = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js");
  41416 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  41417 var process = global.process;
  41418 var setTask = global.setImmediate;
  41419 var clearTask = global.clearImmediate;
  41420 var MessageChannel = global.MessageChannel;
  41421 var Dispatch = global.Dispatch;
  41422 var counter = 0;
  41423 var queue = {};
  41424 var ONREADYSTATECHANGE = 'onreadystatechange';
  41425 var defer, channel, port;
  41426 var run = function () {
  41427   var id = +this;
  41428   // eslint-disable-next-line no-prototype-builtins
  41429   if (queue.hasOwnProperty(id)) {
  41430     var fn = queue[id];
  41431     delete queue[id];
  41432     fn();
  41433   }
  41434 };
  41435 var listener = function (event) {
  41436   run.call(event.data);
  41437 };
  41438 // Node.js 0.9+ & IE10+ has setImmediate, otherwise:
  41439 if (!setTask || !clearTask) {
  41440   setTask = function setImmediate(fn) {
  41441     var args = [];
  41442     var i = 1;
  41443     while (arguments.length > i) args.push(arguments[i++]);
  41444     queue[++counter] = function () {
  41445       // eslint-disable-next-line no-new-func
  41446       invoke(typeof fn == 'function' ? fn : Function(fn), args);
  41447     };
  41448     defer(counter);
  41449     return counter;
  41450   };
  41451   clearTask = function clearImmediate(id) {
  41452     delete queue[id];
  41453   };
  41454   // Node.js 0.8-
  41455   if (__webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js")(process) == 'process') {
  41456     defer = function (id) {
  41457       process.nextTick(ctx(run, id, 1));
  41458     };
  41459   // Sphere (JS game engine) Dispatch API
  41460   } else if (Dispatch && Dispatch.now) {
  41461     defer = function (id) {
  41462       Dispatch.now(ctx(run, id, 1));
  41463     };
  41464   // Browsers with MessageChannel, includes WebWorkers
  41465   } else if (MessageChannel) {
  41466     channel = new MessageChannel();
  41467     port = channel.port2;
  41468     channel.port1.onmessage = listener;
  41469     defer = ctx(port.postMessage, port, 1);
  41470   // Browsers with postMessage, skip WebWorkers
  41471   // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  41472   } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
  41473     defer = function (id) {
  41474       global.postMessage(id + '', '*');
  41475     };
  41476     global.addEventListener('message', listener, false);
  41477   // IE8-
  41478   } else if (ONREADYSTATECHANGE in cel('script')) {
  41479     defer = function (id) {
  41480       html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
  41481         html.removeChild(this);
  41482         run.call(id);
  41483       };
  41484     };
  41485   // Rest old browsers
  41486   } else {
  41487     defer = function (id) {
  41488       setTimeout(ctx(run, id, 1), 0);
  41489     };
  41490   }
  41491 }
  41492 module.exports = {
  41493   set: setTask,
  41494   clear: clearTask
  41495 };
  41496 
  41497 
  41498 /***/ }),
  41499 
  41500 /***/ "../node_modules/core-js/modules/_to-absolute-index.js":
  41501 /*!*************************************************************!*\
  41502   !*** ../node_modules/core-js/modules/_to-absolute-index.js ***!
  41503   \*************************************************************/
  41504 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41505 
  41506 var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
  41507 var max = Math.max;
  41508 var min = Math.min;
  41509 module.exports = function (index, length) {
  41510   index = toInteger(index);
  41511   return index < 0 ? max(index + length, 0) : min(index, length);
  41512 };
  41513 
  41514 
  41515 /***/ }),
  41516 
  41517 /***/ "../node_modules/core-js/modules/_to-integer.js":
  41518 /*!******************************************************!*\
  41519   !*** ../node_modules/core-js/modules/_to-integer.js ***!
  41520   \******************************************************/
  41521 /***/ ((module) => {
  41522 
  41523 // 7.1.4 ToInteger
  41524 var ceil = Math.ceil;
  41525 var floor = Math.floor;
  41526 module.exports = function (it) {
  41527   return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
  41528 };
  41529 
  41530 
  41531 /***/ }),
  41532 
  41533 /***/ "../node_modules/core-js/modules/_to-iobject.js":
  41534 /*!******************************************************!*\
  41535   !*** ../node_modules/core-js/modules/_to-iobject.js ***!
  41536   \******************************************************/
  41537 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41538 
  41539 // to indexed object, toObject with fallback for non-array-like ES3 strings
  41540 var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
  41541 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
  41542 module.exports = function (it) {
  41543   return IObject(defined(it));
  41544 };
  41545 
  41546 
  41547 /***/ }),
  41548 
  41549 /***/ "../node_modules/core-js/modules/_to-length.js":
  41550 /*!*****************************************************!*\
  41551   !*** ../node_modules/core-js/modules/_to-length.js ***!
  41552   \*****************************************************/
  41553 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41554 
  41555 // 7.1.15 ToLength
  41556 var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
  41557 var min = Math.min;
  41558 module.exports = function (it) {
  41559   return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
  41560 };
  41561 
  41562 
  41563 /***/ }),
  41564 
  41565 /***/ "../node_modules/core-js/modules/_to-object.js":
  41566 /*!*****************************************************!*\
  41567   !*** ../node_modules/core-js/modules/_to-object.js ***!
  41568   \*****************************************************/
  41569 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41570 
  41571 // 7.1.13 ToObject(argument)
  41572 var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
  41573 module.exports = function (it) {
  41574   return Object(defined(it));
  41575 };
  41576 
  41577 
  41578 /***/ }),
  41579 
  41580 /***/ "../node_modules/core-js/modules/_to-primitive.js":
  41581 /*!********************************************************!*\
  41582   !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  41583   \********************************************************/
  41584 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41585 
  41586 // 7.1.1 ToPrimitive(input [, PreferredType])
  41587 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
  41588 // instead of the ES6 spec version, we didn't implement @@toPrimitive case
  41589 // and the second argument - flag - preferred type is a string
  41590 module.exports = function (it, S) {
  41591   if (!isObject(it)) return it;
  41592   var fn, val;
  41593   if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  41594   if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  41595   if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  41596   throw TypeError("Can't convert object to primitive value");
  41597 };
  41598 
  41599 
  41600 /***/ }),
  41601 
  41602 /***/ "../node_modules/core-js/modules/_uid.js":
  41603 /*!***********************************************!*\
  41604   !*** ../node_modules/core-js/modules/_uid.js ***!
  41605   \***********************************************/
  41606 /***/ ((module) => {
  41607 
  41608 var id = 0;
  41609 var px = Math.random();
  41610 module.exports = function (key) {
  41611   return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
  41612 };
  41613 
  41614 
  41615 /***/ }),
  41616 
  41617 /***/ "../node_modules/core-js/modules/_user-agent.js":
  41618 /*!******************************************************!*\
  41619   !*** ../node_modules/core-js/modules/_user-agent.js ***!
  41620   \******************************************************/
  41621 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41622 
  41623 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  41624 var navigator = global.navigator;
  41625 
  41626 module.exports = navigator && navigator.userAgent || '';
  41627 
  41628 
  41629 /***/ }),
  41630 
  41631 /***/ "../node_modules/core-js/modules/_wks.js":
  41632 /*!***********************************************!*\
  41633   !*** ../node_modules/core-js/modules/_wks.js ***!
  41634   \***********************************************/
  41635 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41636 
  41637 var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
  41638 var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
  41639 var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
  41640 var USE_SYMBOL = typeof Symbol == 'function';
  41641 
  41642 var $exports = module.exports = function (name) {
  41643   return store[name] || (store[name] =
  41644     USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
  41645 };
  41646 
  41647 $exports.store = store;
  41648 
  41649 
  41650 /***/ }),
  41651 
  41652 /***/ "../node_modules/core-js/modules/core.get-iterator-method.js":
  41653 /*!*******************************************************************!*\
  41654   !*** ../node_modules/core-js/modules/core.get-iterator-method.js ***!
  41655   \*******************************************************************/
  41656 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41657 
  41658 var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
  41659 var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
  41660 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
  41661 module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").getIteratorMethod = function (it) {
  41662   if (it != undefined) return it[ITERATOR]
  41663     || it['@@iterator']
  41664     || Iterators[classof(it)];
  41665 };
  41666 
  41667 
  41668 /***/ }),
  41669 
  41670 /***/ "../node_modules/core-js/modules/es6.array.filter.js":
  41671 /*!***********************************************************!*\
  41672   !*** ../node_modules/core-js/modules/es6.array.filter.js ***!
  41673   \***********************************************************/
  41674 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  41675 
  41676 "use strict";
  41677 
  41678 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  41679 var $filter = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(2);
  41680 
  41681 $export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
  41682   // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
  41683   filter: function filter(callbackfn /* , thisArg */) {
  41684     return $filter(this, callbackfn, arguments[1]);
  41685   }
  41686 });
  41687 
  41688 
  41689 /***/ }),
  41690 
  41691 /***/ "../node_modules/core-js/modules/es6.array.find-index.js":
  41692 /*!***************************************************************!*\
  41693   !*** ../node_modules/core-js/modules/es6.array.find-index.js ***!
  41694   \***************************************************************/
  41695 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  41696 
  41697 "use strict";
  41698 
  41699 // 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
  41700 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  41701 var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(6);
  41702 var KEY = 'findIndex';
  41703 var forced = true;
  41704 // Shouldn't skip holes
  41705 if (KEY in []) Array(1)[KEY](function () { forced = false; });
  41706 $export($export.P + $export.F * forced, 'Array', {
  41707   findIndex: function findIndex(callbackfn /* , that = undefined */) {
  41708     return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  41709   }
  41710 });
  41711 __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);
  41712 
  41713 
  41714 /***/ }),
  41715 
  41716 /***/ "../node_modules/core-js/modules/es6.array.find.js":
  41717 /*!*********************************************************!*\
  41718   !*** ../node_modules/core-js/modules/es6.array.find.js ***!
  41719   \*********************************************************/
  41720 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  41721 
  41722 "use strict";
  41723 
  41724 // 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
  41725 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  41726 var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(5);
  41727 var KEY = 'find';
  41728 var forced = true;
  41729 // Shouldn't skip holes
  41730 if (KEY in []) Array(1)[KEY](function () { forced = false; });
  41731 $export($export.P + $export.F * forced, 'Array', {
  41732   find: function find(callbackfn /* , that = undefined */) {
  41733     return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  41734   }
  41735 });
  41736 __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);
  41737 
  41738 
  41739 /***/ }),
  41740 
  41741 /***/ "../node_modules/core-js/modules/es6.array.iterator.js":
  41742 /*!*************************************************************!*\
  41743   !*** ../node_modules/core-js/modules/es6.array.iterator.js ***!
  41744   \*************************************************************/
  41745 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  41746 
  41747 "use strict";
  41748 
  41749 var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js");
  41750 var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/modules/_iter-step.js");
  41751 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
  41752 var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
  41753 
  41754 // 22.1.3.4 Array.prototype.entries()
  41755 // 22.1.3.13 Array.prototype.keys()
  41756 // 22.1.3.29 Array.prototype.values()
  41757 // 22.1.3.30 Array.prototype[@@iterator]()
  41758 module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  41759   this._t = toIObject(iterated); // target
  41760   this._i = 0;                   // next index
  41761   this._k = kind;                // kind
  41762 // 22.1.5.2.1 %ArrayIteratorPrototype%.next()
  41763 }, function () {
  41764   var O = this._t;
  41765   var kind = this._k;
  41766   var index = this._i++;
  41767   if (!O || index >= O.length) {
  41768     this._t = undefined;
  41769     return step(1);
  41770   }
  41771   if (kind == 'keys') return step(0, index);
  41772   if (kind == 'values') return step(0, O[index]);
  41773   return step(0, [index, O[index]]);
  41774 }, 'values');
  41775 
  41776 // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
  41777 Iterators.Arguments = Iterators.Array;
  41778 
  41779 addToUnscopables('keys');
  41780 addToUnscopables('values');
  41781 addToUnscopables('entries');
  41782 
  41783 
  41784 /***/ }),
  41785 
  41786 /***/ "../node_modules/core-js/modules/es6.array.map.js":
  41787 /*!********************************************************!*\
  41788   !*** ../node_modules/core-js/modules/es6.array.map.js ***!
  41789   \********************************************************/
  41790 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  41791 
  41792 "use strict";
  41793 
  41794 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  41795 var $map = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(1);
  41796 
  41797 $export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].map, true), 'Array', {
  41798   // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
  41799   map: function map(callbackfn /* , thisArg */) {
  41800     return $map(this, callbackfn, arguments[1]);
  41801   }
  41802 });
  41803 
  41804 
  41805 /***/ }),
  41806 
  41807 /***/ "../node_modules/core-js/modules/es6.array.slice.js":
  41808 /*!**********************************************************!*\
  41809   !*** ../node_modules/core-js/modules/es6.array.slice.js ***!
  41810   \**********************************************************/
  41811 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  41812 
  41813 "use strict";
  41814 
  41815 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  41816 var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js");
  41817 var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
  41818 var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
  41819 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
  41820 var arraySlice = [].slice;
  41821 
  41822 // fallback for not array-like ES3 strings and DOM objects
  41823 $export($export.P + $export.F * __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  41824   if (html) arraySlice.call(html);
  41825 }), 'Array', {
  41826   slice: function slice(begin, end) {
  41827     var len = toLength(this.length);
  41828     var klass = cof(this);
  41829     end = end === undefined ? len : end;
  41830     if (klass == 'Array') return arraySlice.call(this, begin, end);
  41831     var start = toAbsoluteIndex(begin, len);
  41832     var upTo = toAbsoluteIndex(end, len);
  41833     var size = toLength(upTo - start);
  41834     var cloned = new Array(size);
  41835     var i = 0;
  41836     for (; i < size; i++) cloned[i] = klass == 'String'
  41837       ? this.charAt(start + i)
  41838       : this[start + i];
  41839     return cloned;
  41840   }
  41841 });
  41842 
  41843 
  41844 /***/ }),
  41845 
  41846 /***/ "../node_modules/core-js/modules/es6.function.name.js":
  41847 /*!************************************************************!*\
  41848   !*** ../node_modules/core-js/modules/es6.function.name.js ***!
  41849   \************************************************************/
  41850 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  41851 
  41852 var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
  41853 var FProto = Function.prototype;
  41854 var nameRE = /^\s*function ([^ (]*)/;
  41855 var NAME = 'name';
  41856 
  41857 // 19.2.4.2 name
  41858 NAME in FProto || __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && dP(FProto, NAME, {
  41859   configurable: true,
  41860   get: function () {
  41861     try {
  41862       return ('' + this).match(nameRE)[1];
  41863     } catch (e) {
  41864       return '';
  41865     }
  41866   }
  41867 });
  41868 
  41869 
  41870 /***/ }),
  41871 
  41872 /***/ "../node_modules/core-js/modules/es6.number.constructor.js":
  41873 /*!*****************************************************************!*\
  41874   !*** ../node_modules/core-js/modules/es6.number.constructor.js ***!
  41875   \*****************************************************************/
  41876 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  41877 
  41878 "use strict";
  41879 
  41880 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  41881 var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
  41882 var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
  41883 var inheritIfRequired = __webpack_require__(/*! ./_inherit-if-required */ "../node_modules/core-js/modules/_inherit-if-required.js");
  41884 var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
  41885 var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
  41886 var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/modules/_object-gopn.js").f;
  41887 var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/modules/_object-gopd.js").f;
  41888 var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
  41889 var $trim = __webpack_require__(/*! ./_string-trim */ "../node_modules/core-js/modules/_string-trim.js").trim;
  41890 var NUMBER = 'Number';
  41891 var $Number = global[NUMBER];
  41892 var Base = $Number;
  41893 var proto = $Number.prototype;
  41894 // Opera ~12 has broken Object#toString
  41895 var BROKEN_COF = cof(__webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js")(proto)) == NUMBER;
  41896 var TRIM = 'trim' in String.prototype;
  41897 
  41898 // 7.1.3 ToNumber(argument)
  41899 var toNumber = function (argument) {
  41900   var it = toPrimitive(argument, false);
  41901   if (typeof it == 'string' && it.length > 2) {
  41902     it = TRIM ? it.trim() : $trim(it, 3);
  41903     var first = it.charCodeAt(0);
  41904     var third, radix, maxCode;
  41905     if (first === 43 || first === 45) {
  41906       third = it.charCodeAt(2);
  41907       if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix
  41908     } else if (first === 48) {
  41909       switch (it.charCodeAt(1)) {
  41910         case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i
  41911         case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i
  41912         default: return +it;
  41913       }
  41914       for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {
  41915         code = digits.charCodeAt(i);
  41916         // parseInt parses a string to a first unavailable symbol
  41917         // but ToNumber should return NaN if a string contains unavailable symbols
  41918         if (code < 48 || code > maxCode) return NaN;
  41919       } return parseInt(digits, radix);
  41920     }
  41921   } return +it;
  41922 };
  41923 
  41924 if (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {
  41925   $Number = function Number(value) {
  41926     var it = arguments.length < 1 ? 0 : value;
  41927     var that = this;
  41928     return that instanceof $Number
  41929       // check on 1..constructor(foo) case
  41930       && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)
  41931         ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);
  41932   };
  41933   for (var keys = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? gOPN(Base) : (
  41934     // ES3:
  41935     'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
  41936     // ES6 (in case, if modules with ES6 Number statics required before):
  41937     'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
  41938     'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'
  41939   ).split(','), j = 0, key; keys.length > j; j++) {
  41940     if (has(Base, key = keys[j]) && !has($Number, key)) {
  41941       dP($Number, key, gOPD(Base, key));
  41942     }
  41943   }
  41944   $Number.prototype = proto;
  41945   proto.constructor = $Number;
  41946   __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(global, NUMBER, $Number);
  41947 }
  41948 
  41949 
  41950 /***/ }),
  41951 
  41952 /***/ "../node_modules/core-js/modules/es6.object.to-string.js":
  41953 /*!***************************************************************!*\
  41954   !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  41955   \***************************************************************/
  41956 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  41957 
  41958 "use strict";
  41959 
  41960 // 19.1.3.6 Object.prototype.toString()
  41961 var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
  41962 var test = {};
  41963 test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
  41964 if (test + '' != '[object z]') {
  41965   __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
  41966     return '[object ' + classof(this) + ']';
  41967   }, true);
  41968 }
  41969 
  41970 
  41971 /***/ }),
  41972 
  41973 /***/ "../node_modules/core-js/modules/es6.promise.js":
  41974 /*!******************************************************!*\
  41975   !*** ../node_modules/core-js/modules/es6.promise.js ***!
  41976   \******************************************************/
  41977 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  41978 
  41979 "use strict";
  41980 
  41981 var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
  41982 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  41983 var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
  41984 var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
  41985 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  41986 var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
  41987 var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
  41988 var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/modules/_an-instance.js");
  41989 var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/modules/_for-of.js");
  41990 var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
  41991 var task = __webpack_require__(/*! ./_task */ "../node_modules/core-js/modules/_task.js").set;
  41992 var microtask = __webpack_require__(/*! ./_microtask */ "../node_modules/core-js/modules/_microtask.js")();
  41993 var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/modules/_new-promise-capability.js");
  41994 var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/modules/_perform.js");
  41995 var userAgent = __webpack_require__(/*! ./_user-agent */ "../node_modules/core-js/modules/_user-agent.js");
  41996 var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/modules/_promise-resolve.js");
  41997 var PROMISE = 'Promise';
  41998 var TypeError = global.TypeError;
  41999 var process = global.process;
  42000 var versions = process && process.versions;
  42001 var v8 = versions && versions.v8 || '';
  42002 var $Promise = global[PROMISE];
  42003 var isNode = classof(process) == 'process';
  42004 var empty = function () { /* empty */ };
  42005 var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
  42006 var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;
  42007 
  42008 var USE_NATIVE = !!function () {
  42009   try {
  42010     // correct subclassing with @@species support
  42011     var promise = $Promise.resolve(1);
  42012     var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species')] = function (exec) {
  42013       exec(empty, empty);
  42014     };
  42015     // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
  42016     return (isNode || typeof PromiseRejectionEvent == 'function')
  42017       && promise.then(empty) instanceof FakePromise
  42018       // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
  42019       // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
  42020       // we can't detect it synchronously, so just check versions
  42021       && v8.indexOf('6.6') !== 0
  42022       && userAgent.indexOf('Chrome/66') === -1;
  42023   } catch (e) { /* empty */ }
  42024 }();
  42025 
  42026 // helpers
  42027 var isThenable = function (it) {
  42028   var then;
  42029   return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
  42030 };
  42031 var notify = function (promise, isReject) {
  42032   if (promise._n) return;
  42033   promise._n = true;
  42034   var chain = promise._c;
  42035   microtask(function () {
  42036     var value = promise._v;
  42037     var ok = promise._s == 1;
  42038     var i = 0;
  42039     var run = function (reaction) {
  42040       var handler = ok ? reaction.ok : reaction.fail;
  42041       var resolve = reaction.resolve;
  42042       var reject = reaction.reject;
  42043       var domain = reaction.domain;
  42044       var result, then, exited;
  42045       try {
  42046         if (handler) {
  42047           if (!ok) {
  42048             if (promise._h == 2) onHandleUnhandled(promise);
  42049             promise._h = 1;
  42050           }
  42051           if (handler === true) result = value;
  42052           else {
  42053             if (domain) domain.enter();
  42054             result = handler(value); // may throw
  42055             if (domain) {
  42056               domain.exit();
  42057               exited = true;
  42058             }
  42059           }
  42060           if (result === reaction.promise) {
  42061             reject(TypeError('Promise-chain cycle'));
  42062           } else if (then = isThenable(result)) {
  42063             then.call(result, resolve, reject);
  42064           } else resolve(result);
  42065         } else reject(value);
  42066       } catch (e) {
  42067         if (domain && !exited) domain.exit();
  42068         reject(e);
  42069       }
  42070     };
  42071     while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
  42072     promise._c = [];
  42073     promise._n = false;
  42074     if (isReject && !promise._h) onUnhandled(promise);
  42075   });
  42076 };
  42077 var onUnhandled = function (promise) {
  42078   task.call(global, function () {
  42079     var value = promise._v;
  42080     var unhandled = isUnhandled(promise);
  42081     var result, handler, console;
  42082     if (unhandled) {
  42083       result = perform(function () {
  42084         if (isNode) {
  42085           process.emit('unhandledRejection', value, promise);
  42086         } else if (handler = global.onunhandledrejection) {
  42087           handler({ promise: promise, reason: value });
  42088         } else if ((console = global.console) && console.error) {
  42089           console.error('Unhandled promise rejection', value);
  42090         }
  42091       });
  42092       // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
  42093       promise._h = isNode || isUnhandled(promise) ? 2 : 1;
  42094     } promise._a = undefined;
  42095     if (unhandled && result.e) throw result.v;
  42096   });
  42097 };
  42098 var isUnhandled = function (promise) {
  42099   return promise._h !== 1 && (promise._a || promise._c).length === 0;
  42100 };
  42101 var onHandleUnhandled = function (promise) {
  42102   task.call(global, function () {
  42103     var handler;
  42104     if (isNode) {
  42105       process.emit('rejectionHandled', promise);
  42106     } else if (handler = global.onrejectionhandled) {
  42107       handler({ promise: promise, reason: promise._v });
  42108     }
  42109   });
  42110 };
  42111 var $reject = function (value) {
  42112   var promise = this;
  42113   if (promise._d) return;
  42114   promise._d = true;
  42115   promise = promise._w || promise; // unwrap
  42116   promise._v = value;
  42117   promise._s = 2;
  42118   if (!promise._a) promise._a = promise._c.slice();
  42119   notify(promise, true);
  42120 };
  42121 var $resolve = function (value) {
  42122   var promise = this;
  42123   var then;
  42124   if (promise._d) return;
  42125   promise._d = true;
  42126   promise = promise._w || promise; // unwrap
  42127   try {
  42128     if (promise === value) throw TypeError("Promise can't be resolved itself");
  42129     if (then = isThenable(value)) {
  42130       microtask(function () {
  42131         var wrapper = { _w: promise, _d: false }; // wrap
  42132         try {
  42133           then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
  42134         } catch (e) {
  42135           $reject.call(wrapper, e);
  42136         }
  42137       });
  42138     } else {
  42139       promise._v = value;
  42140       promise._s = 1;
  42141       notify(promise, false);
  42142     }
  42143   } catch (e) {
  42144     $reject.call({ _w: promise, _d: false }, e); // wrap
  42145   }
  42146 };
  42147 
  42148 // constructor polyfill
  42149 if (!USE_NATIVE) {
  42150   // 25.4.3.1 Promise(executor)
  42151   $Promise = function Promise(executor) {
  42152     anInstance(this, $Promise, PROMISE, '_h');
  42153     aFunction(executor);
  42154     Internal.call(this);
  42155     try {
  42156       executor(ctx($resolve, this, 1), ctx($reject, this, 1));
  42157     } catch (err) {
  42158       $reject.call(this, err);
  42159     }
  42160   };
  42161   // eslint-disable-next-line no-unused-vars
  42162   Internal = function Promise(executor) {
  42163     this._c = [];             // <- awaiting reactions
  42164     this._a = undefined;      // <- checked in isUnhandled reactions
  42165     this._s = 0;              // <- state
  42166     this._d = false;          // <- done
  42167     this._v = undefined;      // <- value
  42168     this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
  42169     this._n = false;          // <- notify
  42170   };
  42171   Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/modules/_redefine-all.js")($Promise.prototype, {
  42172     // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
  42173     then: function then(onFulfilled, onRejected) {
  42174       var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
  42175       reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
  42176       reaction.fail = typeof onRejected == 'function' && onRejected;
  42177       reaction.domain = isNode ? process.domain : undefined;
  42178       this._c.push(reaction);
  42179       if (this._a) this._a.push(reaction);
  42180       if (this._s) notify(this, false);
  42181       return reaction.promise;
  42182     },
  42183     // 25.4.5.1 Promise.prototype.catch(onRejected)
  42184     'catch': function (onRejected) {
  42185       return this.then(undefined, onRejected);
  42186     }
  42187   });
  42188   OwnPromiseCapability = function () {
  42189     var promise = new Internal();
  42190     this.promise = promise;
  42191     this.resolve = ctx($resolve, promise, 1);
  42192     this.reject = ctx($reject, promise, 1);
  42193   };
  42194   newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
  42195     return C === $Promise || C === Wrapper
  42196       ? new OwnPromiseCapability(C)
  42197       : newGenericPromiseCapability(C);
  42198   };
  42199 }
  42200 
  42201 $export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
  42202 __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js")($Promise, PROMISE);
  42203 __webpack_require__(/*! ./_set-species */ "../node_modules/core-js/modules/_set-species.js")(PROMISE);
  42204 Wrapper = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js")[PROMISE];
  42205 
  42206 // statics
  42207 $export($export.S + $export.F * !USE_NATIVE, PROMISE, {
  42208   // 25.4.4.5 Promise.reject(r)
  42209   reject: function reject(r) {
  42210     var capability = newPromiseCapability(this);
  42211     var $$reject = capability.reject;
  42212     $$reject(r);
  42213     return capability.promise;
  42214   }
  42215 });
  42216 $export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
  42217   // 25.4.4.6 Promise.resolve(x)
  42218   resolve: function resolve(x) {
  42219     return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
  42220   }
  42221 });
  42222 $export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/modules/_iter-detect.js")(function (iter) {
  42223   $Promise.all(iter)['catch'](empty);
  42224 })), PROMISE, {
  42225   // 25.4.4.1 Promise.all(iterable)
  42226   all: function all(iterable) {
  42227     var C = this;
  42228     var capability = newPromiseCapability(C);
  42229     var resolve = capability.resolve;
  42230     var reject = capability.reject;
  42231     var result = perform(function () {
  42232       var values = [];
  42233       var index = 0;
  42234       var remaining = 1;
  42235       forOf(iterable, false, function (promise) {
  42236         var $index = index++;
  42237         var alreadyCalled = false;
  42238         values.push(undefined);
  42239         remaining++;
  42240         C.resolve(promise).then(function (value) {
  42241           if (alreadyCalled) return;
  42242           alreadyCalled = true;
  42243           values[$index] = value;
  42244           --remaining || resolve(values);
  42245         }, reject);
  42246       });
  42247       --remaining || resolve(values);
  42248     });
  42249     if (result.e) reject(result.v);
  42250     return capability.promise;
  42251   },
  42252   // 25.4.4.4 Promise.race(iterable)
  42253   race: function race(iterable) {
  42254     var C = this;
  42255     var capability = newPromiseCapability(C);
  42256     var reject = capability.reject;
  42257     var result = perform(function () {
  42258       forOf(iterable, false, function (promise) {
  42259         C.resolve(promise).then(capability.resolve, reject);
  42260       });
  42261     });
  42262     if (result.e) reject(result.v);
  42263     return capability.promise;
  42264   }
  42265 });
  42266 
  42267 
  42268 /***/ }),
  42269 
  42270 /***/ "../node_modules/core-js/modules/es6.regexp.constructor.js":
  42271 /*!*****************************************************************!*\
  42272   !*** ../node_modules/core-js/modules/es6.regexp.constructor.js ***!
  42273   \*****************************************************************/
  42274 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42275 
  42276 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  42277 var inheritIfRequired = __webpack_require__(/*! ./_inherit-if-required */ "../node_modules/core-js/modules/_inherit-if-required.js");
  42278 var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
  42279 var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/modules/_object-gopn.js").f;
  42280 var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
  42281 var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
  42282 var $RegExp = global.RegExp;
  42283 var Base = $RegExp;
  42284 var proto = $RegExp.prototype;
  42285 var re1 = /a/g;
  42286 var re2 = /a/g;
  42287 // "new" creates a new object, old webkit buggy here
  42288 var CORRECT_NEW = new $RegExp(re1) !== re1;
  42289 
  42290 if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && (!CORRECT_NEW || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  42291   re2[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match')] = false;
  42292   // RegExp constructor can alter flags and IsRegExp works correct with @@match
  42293   return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
  42294 }))) {
  42295   $RegExp = function RegExp(p, f) {
  42296     var tiRE = this instanceof $RegExp;
  42297     var piRE = isRegExp(p);
  42298     var fiU = f === undefined;
  42299     return !tiRE && piRE && p.constructor === $RegExp && fiU ? p
  42300       : inheritIfRequired(CORRECT_NEW
  42301         ? new Base(piRE && !fiU ? p.source : p, f)
  42302         : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)
  42303       , tiRE ? this : proto, $RegExp);
  42304   };
  42305   var proxy = function (key) {
  42306     key in $RegExp || dP($RegExp, key, {
  42307       configurable: true,
  42308       get: function () { return Base[key]; },
  42309       set: function (it) { Base[key] = it; }
  42310     });
  42311   };
  42312   for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);
  42313   proto.constructor = $RegExp;
  42314   $RegExp.prototype = proto;
  42315   __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(global, 'RegExp', $RegExp);
  42316 }
  42317 
  42318 __webpack_require__(/*! ./_set-species */ "../node_modules/core-js/modules/_set-species.js")('RegExp');
  42319 
  42320 
  42321 /***/ }),
  42322 
  42323 /***/ "../node_modules/core-js/modules/es6.regexp.exec.js":
  42324 /*!**********************************************************!*\
  42325   !*** ../node_modules/core-js/modules/es6.regexp.exec.js ***!
  42326   \**********************************************************/
  42327 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42328 
  42329 "use strict";
  42330 
  42331 var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
  42332 __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js")({
  42333   target: 'RegExp',
  42334   proto: true,
  42335   forced: regexpExec !== /./.exec
  42336 }, {
  42337   exec: regexpExec
  42338 });
  42339 
  42340 
  42341 /***/ }),
  42342 
  42343 /***/ "../node_modules/core-js/modules/es6.regexp.flags.js":
  42344 /*!***********************************************************!*\
  42345   !*** ../node_modules/core-js/modules/es6.regexp.flags.js ***!
  42346   \***********************************************************/
  42347 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42348 
  42349 // 21.2.5.3 get RegExp.prototype.flags()
  42350 if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && /./g.flags != 'g') __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f(RegExp.prototype, 'flags', {
  42351   configurable: true,
  42352   get: __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js")
  42353 });
  42354 
  42355 
  42356 /***/ }),
  42357 
  42358 /***/ "../node_modules/core-js/modules/es6.regexp.match.js":
  42359 /*!***********************************************************!*\
  42360   !*** ../node_modules/core-js/modules/es6.regexp.match.js ***!
  42361   \***********************************************************/
  42362 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42363 
  42364 "use strict";
  42365 
  42366 
  42367 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  42368 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
  42369 var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
  42370 var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
  42371 
  42372 // @@match logic
  42373 __webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('match', 1, function (defined, MATCH, $match, maybeCallNative) {
  42374   return [
  42375     // `String.prototype.match` method
  42376     // https://tc39.github.io/ecma262/#sec-string.prototype.match
  42377     function match(regexp) {
  42378       var O = defined(this);
  42379       var fn = regexp == undefined ? undefined : regexp[MATCH];
  42380       return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
  42381     },
  42382     // `RegExp.prototype[@@match]` method
  42383     // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
  42384     function (regexp) {
  42385       var res = maybeCallNative($match, regexp, this);
  42386       if (res.done) return res.value;
  42387       var rx = anObject(regexp);
  42388       var S = String(this);
  42389       if (!rx.global) return regExpExec(rx, S);
  42390       var fullUnicode = rx.unicode;
  42391       rx.lastIndex = 0;
  42392       var A = [];
  42393       var n = 0;
  42394       var result;
  42395       while ((result = regExpExec(rx, S)) !== null) {
  42396         var matchStr = String(result[0]);
  42397         A[n] = matchStr;
  42398         if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
  42399         n++;
  42400       }
  42401       return n === 0 ? null : A;
  42402     }
  42403   ];
  42404 });
  42405 
  42406 
  42407 /***/ }),
  42408 
  42409 /***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
  42410 /*!*************************************************************!*\
  42411   !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
  42412   \*************************************************************/
  42413 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42414 
  42415 "use strict";
  42416 
  42417 
  42418 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  42419 var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
  42420 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
  42421 var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
  42422 var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
  42423 var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
  42424 var max = Math.max;
  42425 var min = Math.min;
  42426 var floor = Math.floor;
  42427 var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
  42428 var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;
  42429 
  42430 var maybeToString = function (it) {
  42431   return it === undefined ? it : String(it);
  42432 };
  42433 
  42434 // @@replace logic
  42435 __webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
  42436   return [
  42437     // `String.prototype.replace` method
  42438     // https://tc39.github.io/ecma262/#sec-string.prototype.replace
  42439     function replace(searchValue, replaceValue) {
  42440       var O = defined(this);
  42441       var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
  42442       return fn !== undefined
  42443         ? fn.call(searchValue, O, replaceValue)
  42444         : $replace.call(String(O), searchValue, replaceValue);
  42445     },
  42446     // `RegExp.prototype[@@replace]` method
  42447     // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
  42448     function (regexp, replaceValue) {
  42449       var res = maybeCallNative($replace, regexp, this, replaceValue);
  42450       if (res.done) return res.value;
  42451 
  42452       var rx = anObject(regexp);
  42453       var S = String(this);
  42454       var functionalReplace = typeof replaceValue === 'function';
  42455       if (!functionalReplace) replaceValue = String(replaceValue);
  42456       var global = rx.global;
  42457       if (global) {
  42458         var fullUnicode = rx.unicode;
  42459         rx.lastIndex = 0;
  42460       }
  42461       var results = [];
  42462       while (true) {
  42463         var result = regExpExec(rx, S);
  42464         if (result === null) break;
  42465         results.push(result);
  42466         if (!global) break;
  42467         var matchStr = String(result[0]);
  42468         if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
  42469       }
  42470       var accumulatedResult = '';
  42471       var nextSourcePosition = 0;
  42472       for (var i = 0; i < results.length; i++) {
  42473         result = results[i];
  42474         var matched = String(result[0]);
  42475         var position = max(min(toInteger(result.index), S.length), 0);
  42476         var captures = [];
  42477         // NOTE: This is equivalent to
  42478         //   captures = result.slice(1).map(maybeToString)
  42479         // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
  42480         // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
  42481         // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
  42482         for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
  42483         var namedCaptures = result.groups;
  42484         if (functionalReplace) {
  42485           var replacerArgs = [matched].concat(captures, position, S);
  42486           if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
  42487           var replacement = String(replaceValue.apply(undefined, replacerArgs));
  42488         } else {
  42489           replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
  42490         }
  42491         if (position >= nextSourcePosition) {
  42492           accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
  42493           nextSourcePosition = position + matched.length;
  42494         }
  42495       }
  42496       return accumulatedResult + S.slice(nextSourcePosition);
  42497     }
  42498   ];
  42499 
  42500     // https://tc39.github.io/ecma262/#sec-getsubstitution
  42501   function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
  42502     var tailPos = position + matched.length;
  42503     var m = captures.length;
  42504     var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
  42505     if (namedCaptures !== undefined) {
  42506       namedCaptures = toObject(namedCaptures);
  42507       symbols = SUBSTITUTION_SYMBOLS;
  42508     }
  42509     return $replace.call(replacement, symbols, function (match, ch) {
  42510       var capture;
  42511       switch (ch.charAt(0)) {
  42512         case '$': return '$';
  42513         case '&': return matched;
  42514         case '`': return str.slice(0, position);
  42515         case "'": return str.slice(tailPos);
  42516         case '<':
  42517           capture = namedCaptures[ch.slice(1, -1)];
  42518           break;
  42519         default: // \d\d?
  42520           var n = +ch;
  42521           if (n === 0) return match;
  42522           if (n > m) {
  42523             var f = floor(n / 10);
  42524             if (f === 0) return match;
  42525             if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
  42526             return match;
  42527           }
  42528           capture = captures[n - 1];
  42529       }
  42530       return capture === undefined ? '' : capture;
  42531     });
  42532   }
  42533 });
  42534 
  42535 
  42536 /***/ }),
  42537 
  42538 /***/ "../node_modules/core-js/modules/es6.regexp.search.js":
  42539 /*!************************************************************!*\
  42540   !*** ../node_modules/core-js/modules/es6.regexp.search.js ***!
  42541   \************************************************************/
  42542 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42543 
  42544 "use strict";
  42545 
  42546 
  42547 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  42548 var sameValue = __webpack_require__(/*! ./_same-value */ "../node_modules/core-js/modules/_same-value.js");
  42549 var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
  42550 
  42551 // @@search logic
  42552 __webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('search', 1, function (defined, SEARCH, $search, maybeCallNative) {
  42553   return [
  42554     // `String.prototype.search` method
  42555     // https://tc39.github.io/ecma262/#sec-string.prototype.search
  42556     function search(regexp) {
  42557       var O = defined(this);
  42558       var fn = regexp == undefined ? undefined : regexp[SEARCH];
  42559       return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
  42560     },
  42561     // `RegExp.prototype[@@search]` method
  42562     // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search
  42563     function (regexp) {
  42564       var res = maybeCallNative($search, regexp, this);
  42565       if (res.done) return res.value;
  42566       var rx = anObject(regexp);
  42567       var S = String(this);
  42568       var previousLastIndex = rx.lastIndex;
  42569       if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;
  42570       var result = regExpExec(rx, S);
  42571       if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;
  42572       return result === null ? -1 : result.index;
  42573     }
  42574   ];
  42575 });
  42576 
  42577 
  42578 /***/ }),
  42579 
  42580 /***/ "../node_modules/core-js/modules/es6.regexp.split.js":
  42581 /*!***********************************************************!*\
  42582   !*** ../node_modules/core-js/modules/es6.regexp.split.js ***!
  42583   \***********************************************************/
  42584 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42585 
  42586 "use strict";
  42587 
  42588 
  42589 var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
  42590 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  42591 var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
  42592 var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
  42593 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
  42594 var callRegExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
  42595 var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
  42596 var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
  42597 var $min = Math.min;
  42598 var $push = [].push;
  42599 var $SPLIT = 'split';
  42600 var LENGTH = 'length';
  42601 var LAST_INDEX = 'lastIndex';
  42602 var MAX_UINT32 = 0xffffffff;
  42603 
  42604 // babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
  42605 var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });
  42606 
  42607 // @@split logic
  42608 __webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
  42609   var internalSplit;
  42610   if (
  42611     'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
  42612     'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
  42613     'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
  42614     '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
  42615     '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
  42616     ''[$SPLIT](/.?/)[LENGTH]
  42617   ) {
  42618     // based on es5-shim implementation, need to rework it
  42619     internalSplit = function (separator, limit) {
  42620       var string = String(this);
  42621       if (separator === undefined && limit === 0) return [];
  42622       // If `separator` is not a regex, use native split
  42623       if (!isRegExp(separator)) return $split.call(string, separator, limit);
  42624       var output = [];
  42625       var flags = (separator.ignoreCase ? 'i' : '') +
  42626                   (separator.multiline ? 'm' : '') +
  42627                   (separator.unicode ? 'u' : '') +
  42628                   (separator.sticky ? 'y' : '');
  42629       var lastLastIndex = 0;
  42630       var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
  42631       // Make `global` and avoid `lastIndex` issues by working with a copy
  42632       var separatorCopy = new RegExp(separator.source, flags + 'g');
  42633       var match, lastIndex, lastLength;
  42634       while (match = regexpExec.call(separatorCopy, string)) {
  42635         lastIndex = separatorCopy[LAST_INDEX];
  42636         if (lastIndex > lastLastIndex) {
  42637           output.push(string.slice(lastLastIndex, match.index));
  42638           if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
  42639           lastLength = match[0][LENGTH];
  42640           lastLastIndex = lastIndex;
  42641           if (output[LENGTH] >= splitLimit) break;
  42642         }
  42643         if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
  42644       }
  42645       if (lastLastIndex === string[LENGTH]) {
  42646         if (lastLength || !separatorCopy.test('')) output.push('');
  42647       } else output.push(string.slice(lastLastIndex));
  42648       return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
  42649     };
  42650   // Chakra, V8
  42651   } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
  42652     internalSplit = function (separator, limit) {
  42653       return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
  42654     };
  42655   } else {
  42656     internalSplit = $split;
  42657   }
  42658 
  42659   return [
  42660     // `String.prototype.split` method
  42661     // https://tc39.github.io/ecma262/#sec-string.prototype.split
  42662     function split(separator, limit) {
  42663       var O = defined(this);
  42664       var splitter = separator == undefined ? undefined : separator[SPLIT];
  42665       return splitter !== undefined
  42666         ? splitter.call(separator, O, limit)
  42667         : internalSplit.call(String(O), separator, limit);
  42668     },
  42669     // `RegExp.prototype[@@split]` method
  42670     // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
  42671     //
  42672     // NOTE: This cannot be properly polyfilled in engines that don't support
  42673     // the 'y' flag.
  42674     function (regexp, limit) {
  42675       var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
  42676       if (res.done) return res.value;
  42677 
  42678       var rx = anObject(regexp);
  42679       var S = String(this);
  42680       var C = speciesConstructor(rx, RegExp);
  42681 
  42682       var unicodeMatching = rx.unicode;
  42683       var flags = (rx.ignoreCase ? 'i' : '') +
  42684                   (rx.multiline ? 'm' : '') +
  42685                   (rx.unicode ? 'u' : '') +
  42686                   (SUPPORTS_Y ? 'y' : 'g');
  42687 
  42688       // ^(? + rx + ) is needed, in combination with some S slicing, to
  42689       // simulate the 'y' flag.
  42690       var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
  42691       var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
  42692       if (lim === 0) return [];
  42693       if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
  42694       var p = 0;
  42695       var q = 0;
  42696       var A = [];
  42697       while (q < S.length) {
  42698         splitter.lastIndex = SUPPORTS_Y ? q : 0;
  42699         var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
  42700         var e;
  42701         if (
  42702           z === null ||
  42703           (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
  42704         ) {
  42705           q = advanceStringIndex(S, q, unicodeMatching);
  42706         } else {
  42707           A.push(S.slice(p, q));
  42708           if (A.length === lim) return A;
  42709           for (var i = 1; i <= z.length - 1; i++) {
  42710             A.push(z[i]);
  42711             if (A.length === lim) return A;
  42712           }
  42713           q = p = e;
  42714         }
  42715       }
  42716       A.push(S.slice(p));
  42717       return A;
  42718     }
  42719   ];
  42720 });
  42721 
  42722 
  42723 /***/ }),
  42724 
  42725 /***/ "../node_modules/core-js/modules/es6.regexp.to-string.js":
  42726 /*!***************************************************************!*\
  42727   !*** ../node_modules/core-js/modules/es6.regexp.to-string.js ***!
  42728   \***************************************************************/
  42729 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42730 
  42731 "use strict";
  42732 
  42733 __webpack_require__(/*! ./es6.regexp.flags */ "../node_modules/core-js/modules/es6.regexp.flags.js");
  42734 var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
  42735 var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
  42736 var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
  42737 var TO_STRING = 'toString';
  42738 var $toString = /./[TO_STRING];
  42739 
  42740 var define = function (fn) {
  42741   __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(RegExp.prototype, TO_STRING, fn, true);
  42742 };
  42743 
  42744 // 21.2.5.14 RegExp.prototype.toString()
  42745 if (__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
  42746   define(function toString() {
  42747     var R = anObject(this);
  42748     return '/'.concat(R.source, '/',
  42749       'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
  42750   });
  42751 // FF44- RegExp#toString has a wrong name
  42752 } else if ($toString.name != TO_STRING) {
  42753   define(function toString() {
  42754     return $toString.call(this);
  42755   });
  42756 }
  42757 
  42758 
  42759 /***/ }),
  42760 
  42761 /***/ "../node_modules/core-js/modules/es6.string.includes.js":
  42762 /*!**************************************************************!*\
  42763   !*** ../node_modules/core-js/modules/es6.string.includes.js ***!
  42764   \**************************************************************/
  42765 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42766 
  42767 "use strict";
  42768 // 21.1.3.7 String.prototype.includes(searchString, position = 0)
  42769 
  42770 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  42771 var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
  42772 var INCLUDES = 'includes';
  42773 
  42774 $export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(INCLUDES), 'String', {
  42775   includes: function includes(searchString /* , position = 0 */) {
  42776     return !!~context(this, searchString, INCLUDES)
  42777       .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
  42778   }
  42779 });
  42780 
  42781 
  42782 /***/ }),
  42783 
  42784 /***/ "../node_modules/core-js/modules/es6.string.iterator.js":
  42785 /*!**************************************************************!*\
  42786   !*** ../node_modules/core-js/modules/es6.string.iterator.js ***!
  42787   \**************************************************************/
  42788 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42789 
  42790 "use strict";
  42791 
  42792 var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);
  42793 
  42794 // 21.1.3.27 String.prototype[@@iterator]()
  42795 __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(String, 'String', function (iterated) {
  42796   this._t = String(iterated); // target
  42797   this._i = 0;                // next index
  42798 // 21.1.5.2.1 %StringIteratorPrototype%.next()
  42799 }, function () {
  42800   var O = this._t;
  42801   var index = this._i;
  42802   var point;
  42803   if (index >= O.length) return { value: undefined, done: true };
  42804   point = $at(O, index);
  42805   this._i += point.length;
  42806   return { value: point, done: false };
  42807 });
  42808 
  42809 
  42810 /***/ }),
  42811 
  42812 /***/ "../node_modules/core-js/modules/es6.string.link.js":
  42813 /*!**********************************************************!*\
  42814   !*** ../node_modules/core-js/modules/es6.string.link.js ***!
  42815   \**********************************************************/
  42816 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42817 
  42818 "use strict";
  42819 
  42820 // B.2.3.10 String.prototype.link(url)
  42821 __webpack_require__(/*! ./_string-html */ "../node_modules/core-js/modules/_string-html.js")('link', function (createHTML) {
  42822   return function link(url) {
  42823     return createHTML(this, 'a', 'href', url);
  42824   };
  42825 });
  42826 
  42827 
  42828 /***/ }),
  42829 
  42830 /***/ "../node_modules/core-js/modules/es6.string.starts-with.js":
  42831 /*!*****************************************************************!*\
  42832   !*** ../node_modules/core-js/modules/es6.string.starts-with.js ***!
  42833   \*****************************************************************/
  42834 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42835 
  42836 "use strict";
  42837 // 21.1.3.18 String.prototype.startsWith(searchString [, position ])
  42838 
  42839 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  42840 var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
  42841 var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
  42842 var STARTS_WITH = 'startsWith';
  42843 var $startsWith = ''[STARTS_WITH];
  42844 
  42845 $export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(STARTS_WITH), 'String', {
  42846   startsWith: function startsWith(searchString /* , position = 0 */) {
  42847     var that = context(this, searchString, STARTS_WITH);
  42848     var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));
  42849     var search = String(searchString);
  42850     return $startsWith
  42851       ? $startsWith.call(that, search, index)
  42852       : that.slice(index, index + search.length) === search;
  42853   }
  42854 });
  42855 
  42856 
  42857 /***/ }),
  42858 
  42859 /***/ "../node_modules/core-js/modules/es7.array.includes.js":
  42860 /*!*************************************************************!*\
  42861   !*** ../node_modules/core-js/modules/es7.array.includes.js ***!
  42862   \*************************************************************/
  42863 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42864 
  42865 "use strict";
  42866 
  42867 // https://github.com/tc39/Array.prototype.includes
  42868 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  42869 var $includes = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(true);
  42870 
  42871 $export($export.P, 'Array', {
  42872   includes: function includes(el /* , fromIndex = 0 */) {
  42873     return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
  42874   }
  42875 });
  42876 
  42877 __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")('includes');
  42878 
  42879 
  42880 /***/ }),
  42881 
  42882 /***/ "../node_modules/core-js/modules/es7.promise.finally.js":
  42883 /*!**************************************************************!*\
  42884   !*** ../node_modules/core-js/modules/es7.promise.finally.js ***!
  42885   \**************************************************************/
  42886 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42887 
  42888 "use strict";
  42889 // https://github.com/tc39/proposal-promise-finally
  42890 
  42891 var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
  42892 var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
  42893 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  42894 var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
  42895 var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/modules/_promise-resolve.js");
  42896 
  42897 $export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
  42898   var C = speciesConstructor(this, core.Promise || global.Promise);
  42899   var isFunction = typeof onFinally == 'function';
  42900   return this.then(
  42901     isFunction ? function (x) {
  42902       return promiseResolve(C, onFinally()).then(function () { return x; });
  42903     } : onFinally,
  42904     isFunction ? function (e) {
  42905       return promiseResolve(C, onFinally()).then(function () { throw e; });
  42906     } : onFinally
  42907   );
  42908 } });
  42909 
  42910 
  42911 /***/ }),
  42912 
  42913 /***/ "../node_modules/core-js/modules/web.dom.iterable.js":
  42914 /*!***********************************************************!*\
  42915   !*** ../node_modules/core-js/modules/web.dom.iterable.js ***!
  42916   \***********************************************************/
  42917 /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  42918 
  42919 var $iterators = __webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/modules/es6.array.iterator.js");
  42920 var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");
  42921 var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
  42922 var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
  42923 var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
  42924 var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
  42925 var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
  42926 var ITERATOR = wks('iterator');
  42927 var TO_STRING_TAG = wks('toStringTag');
  42928 var ArrayValues = Iterators.Array;
  42929 
  42930 var DOMIterables = {
  42931   CSSRuleList: true, // TODO: Not spec compliant, should be false.
  42932   CSSStyleDeclaration: false,
  42933   CSSValueList: false,
  42934   ClientRectList: false,
  42935   DOMRectList: false,
  42936   DOMStringList: false,
  42937   DOMTokenList: true,
  42938   DataTransferItemList: false,
  42939   FileList: false,
  42940   HTMLAllCollection: false,
  42941   HTMLCollection: false,
  42942   HTMLFormElement: false,
  42943   HTMLSelectElement: false,
  42944   MediaList: true, // TODO: Not spec compliant, should be false.
  42945   MimeTypeArray: false,
  42946   NamedNodeMap: false,
  42947   NodeList: true,
  42948   PaintRequestList: false,
  42949   Plugin: false,
  42950   PluginArray: false,
  42951   SVGLengthList: false,
  42952   SVGNumberList: false,
  42953   SVGPathSegList: false,
  42954   SVGPointList: false,
  42955   SVGStringList: false,
  42956   SVGTransformList: false,
  42957   SourceBufferList: false,
  42958   StyleSheetList: true, // TODO: Not spec compliant, should be false.
  42959   TextTrackCueList: false,
  42960   TextTrackList: false,
  42961   TouchList: false
  42962 };
  42963 
  42964 for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
  42965   var NAME = collections[i];
  42966   var explicit = DOMIterables[NAME];
  42967   var Collection = global[NAME];
  42968   var proto = Collection && Collection.prototype;
  42969   var key;
  42970   if (proto) {
  42971     if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
  42972     if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  42973     Iterators[NAME] = ArrayValues;
  42974     if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
  42975   }
  42976 }
  42977 
  42978 
  42979 /***/ }),
  42980 
  42981 /***/ "../node_modules/object-assign/index.js":
  42982 /*!**********************************************!*\
  42983   !*** ../node_modules/object-assign/index.js ***!
  42984   \**********************************************/
  42985 /***/ ((module) => {
  42986 
  42987 "use strict";
  42988 /*
  42989 object-assign
  42990 (c) Sindre Sorhus
  42991 @license MIT
  42992 */
  42993 
  42994 
  42995 /* eslint-disable no-unused-vars */
  42996 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
  42997 var hasOwnProperty = Object.prototype.hasOwnProperty;
  42998 var propIsEnumerable = Object.prototype.propertyIsEnumerable;
  42999 
  43000 function toObject(val) {
  43001 	if (val === null || val === undefined) {
  43002 		throw new TypeError('Object.assign cannot be called with null or undefined');
  43003 	}
  43004 
  43005 	return Object(val);
  43006 }
  43007 
  43008 function shouldUseNative() {
  43009 	try {
  43010 		if (!Object.assign) {
  43011 			return false;
  43012 		}
  43013 
  43014 		// Detect buggy property enumeration order in older V8 versions.
  43015 
  43016 		// https://bugs.chromium.org/p/v8/issues/detail?id=4118
  43017 		var test1 = new String('abc');  // eslint-disable-line no-new-wrappers
  43018 		test1[5] = 'de';
  43019 		if (Object.getOwnPropertyNames(test1)[0] === '5') {
  43020 			return false;
  43021 		}
  43022 
  43023 		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
  43024 		var test2 = {};
  43025 		for (var i = 0; i < 10; i++) {
  43026 			test2['_' + String.fromCharCode(i)] = i;
  43027 		}
  43028 		var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
  43029 			return test2[n];
  43030 		});
  43031 		if (order2.join('') !== '0123456789') {
  43032 			return false;
  43033 		}
  43034 
  43035 		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
  43036 		var test3 = {};
  43037 		'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
  43038 			test3[letter] = letter;
  43039 		});
  43040 		if (Object.keys(Object.assign({}, test3)).join('') !==
  43041 				'abcdefghijklmnopqrst') {
  43042 			return false;
  43043 		}
  43044 
  43045 		return true;
  43046 	} catch (err) {
  43047 		// We don't expect any of the above to throw, but better to be safe.
  43048 		return false;
  43049 	}
  43050 }
  43051 
  43052 module.exports = shouldUseNative() ? Object.assign : function (target, source) {
  43053 	var from;
  43054 	var to = toObject(target);
  43055 	var symbols;
  43056 
  43057 	for (var s = 1; s < arguments.length; s++) {
  43058 		from = Object(arguments[s]);
  43059 
  43060 		for (var key in from) {
  43061 			if (hasOwnProperty.call(from, key)) {
  43062 				to[key] = from[key];
  43063 			}
  43064 		}
  43065 
  43066 		if (getOwnPropertySymbols) {
  43067 			symbols = getOwnPropertySymbols(from);
  43068 			for (var i = 0; i < symbols.length; i++) {
  43069 				if (propIsEnumerable.call(from, symbols[i])) {
  43070 					to[symbols[i]] = from[symbols[i]];
  43071 				}
  43072 			}
  43073 		}
  43074 	}
  43075 
  43076 	return to;
  43077 };
  43078 
  43079 
  43080 /***/ }),
  43081 
  43082 /***/ "../node_modules/prop-types/checkPropTypes.js":
  43083 /*!****************************************************!*\
  43084   !*** ../node_modules/prop-types/checkPropTypes.js ***!
  43085   \****************************************************/
  43086 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  43087 
  43088 "use strict";
  43089 /**
  43090  * Copyright (c) 2013-present, Facebook, Inc.
  43091  *
  43092  * This source code is licensed under the MIT license found in the
  43093  * LICENSE file in the root directory of this source tree.
  43094  */
  43095 
  43096 
  43097 
  43098 var printWarning = function() {};
  43099 
  43100 if (true) {
  43101   var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
  43102   var loggedTypeFailures = {};
  43103   var has = Function.call.bind(Object.prototype.hasOwnProperty);
  43104 
  43105   printWarning = function(text) {
  43106     var message = 'Warning: ' + text;
  43107     if (typeof console !== 'undefined') {
  43108       console.error(message);
  43109     }
  43110     try {
  43111       // --- Welcome to debugging React ---
  43112       // This error was thrown as a convenience so that you can use this stack
  43113       // to find the callsite that caused this warning to fire.
  43114       throw new Error(message);
  43115     } catch (x) {}
  43116   };
  43117 }
  43118 
  43119 /**
  43120  * Assert that the values match with the type specs.
  43121  * Error messages are memorized and will only be shown once.
  43122  *
  43123  * @param {object} typeSpecs Map of name to a ReactPropType
  43124  * @param {object} values Runtime values that need to be type-checked
  43125  * @param {string} location e.g. "prop", "context", "child context"
  43126  * @param {string} componentName Name of the component for error messages.
  43127  * @param {?Function} getStack Returns the component stack.
  43128  * @private
  43129  */
  43130 function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
  43131   if (true) {
  43132     for (var typeSpecName in typeSpecs) {
  43133       if (has(typeSpecs, typeSpecName)) {
  43134         var error;
  43135         // Prop type validation may throw. In case they do, we don't want to
  43136         // fail the render phase where it didn't fail before. So we log it.
  43137         // After these have been cleaned up, we'll let them throw.
  43138         try {
  43139           // This is intentionally an invariant that gets caught. It's the same
  43140           // behavior as without this statement except with a better message.
  43141           if (typeof typeSpecs[typeSpecName] !== 'function') {
  43142             var err = Error(
  43143               (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
  43144               'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'
  43145             );
  43146             err.name = 'Invariant Violation';
  43147             throw err;
  43148           }
  43149           error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
  43150         } catch (ex) {
  43151           error = ex;
  43152         }
  43153         if (error && !(error instanceof Error)) {
  43154           printWarning(
  43155             (componentName || 'React class') + ': type specification of ' +
  43156             location + ' `' + typeSpecName + '` is invalid; the type checker ' +
  43157             'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
  43158             'You may have forgotten to pass an argument to the type checker ' +
  43159             'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
  43160             'shape all require an argument).'
  43161           );
  43162         }
  43163         if (error instanceof Error && !(error.message in loggedTypeFailures)) {
  43164           // Only monitor this failure once because there tends to be a lot of the
  43165           // same error.
  43166           loggedTypeFailures[error.message] = true;
  43167 
  43168           var stack = getStack ? getStack() : '';
  43169 
  43170           printWarning(
  43171             'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
  43172           );
  43173         }
  43174       }
  43175     }
  43176   }
  43177 }
  43178 
  43179 /**
  43180  * Resets warning cache when testing.
  43181  *
  43182  * @private
  43183  */
  43184 checkPropTypes.resetWarningCache = function() {
  43185   if (true) {
  43186     loggedTypeFailures = {};
  43187   }
  43188 }
  43189 
  43190 module.exports = checkPropTypes;
  43191 
  43192 
  43193 /***/ }),
  43194 
  43195 /***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
  43196 /*!*************************************************************!*\
  43197   !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
  43198   \*************************************************************/
  43199 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  43200 
  43201 "use strict";
  43202 /**
  43203  * Copyright (c) 2013-present, Facebook, Inc.
  43204  *
  43205  * This source code is licensed under the MIT license found in the
  43206  * LICENSE file in the root directory of this source tree.
  43207  */
  43208 
  43209 
  43210 
  43211 var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
  43212 var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");
  43213 
  43214 var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
  43215 var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");
  43216 
  43217 var has = Function.call.bind(Object.prototype.hasOwnProperty);
  43218 var printWarning = function() {};
  43219 
  43220 if (true) {
  43221   printWarning = function(text) {
  43222     var message = 'Warning: ' + text;
  43223     if (typeof console !== 'undefined') {
  43224       console.error(message);
  43225     }
  43226     try {
  43227       // --- Welcome to debugging React ---
  43228       // This error was thrown as a convenience so that you can use this stack
  43229       // to find the callsite that caused this warning to fire.
  43230       throw new Error(message);
  43231     } catch (x) {}
  43232   };
  43233 }
  43234 
  43235 function emptyFunctionThatReturnsNull() {
  43236   return null;
  43237 }
  43238 
  43239 module.exports = function(isValidElement, throwOnDirectAccess) {
  43240   /* global Symbol */
  43241   var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
  43242   var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
  43243 
  43244   /**
  43245    * Returns the iterator method function contained on the iterable object.
  43246    *
  43247    * Be sure to invoke the function with the iterable as context:
  43248    *
  43249    *     var iteratorFn = getIteratorFn(myIterable);
  43250    *     if (iteratorFn) {
  43251    *       var iterator = iteratorFn.call(myIterable);
  43252    *       ...
  43253    *     }
  43254    *
  43255    * @param {?object} maybeIterable
  43256    * @return {?function}
  43257    */
  43258   function getIteratorFn(maybeIterable) {
  43259     var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
  43260     if (typeof iteratorFn === 'function') {
  43261       return iteratorFn;
  43262     }
  43263   }
  43264 
  43265   /**
  43266    * Collection of methods that allow declaration and validation of props that are
  43267    * supplied to React components. Example usage:
  43268    *
  43269    *   var Props = require('ReactPropTypes');
  43270    *   var MyArticle = React.createClass({
  43271    *     propTypes: {
  43272    *       // An optional string prop named "description".
  43273    *       description: Props.string,
  43274    *
  43275    *       // A required enum prop named "category".
  43276    *       category: Props.oneOf(['News','Photos']).isRequired,
  43277    *
  43278    *       // A prop named "dialog" that requires an instance of Dialog.
  43279    *       dialog: Props.instanceOf(Dialog).isRequired
  43280    *     },
  43281    *     render: function() { ... }
  43282    *   });
  43283    *
  43284    * A more formal specification of how these methods are used:
  43285    *
  43286    *   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
  43287    *   decl := ReactPropTypes.{type}(.isRequired)?
  43288    *
  43289    * Each and every declaration produces a function with the same signature. This
  43290    * allows the creation of custom validation functions. For example:
  43291    *
  43292    *  var MyLink = React.createClass({
  43293    *    propTypes: {
  43294    *      // An optional string or URI prop named "href".
  43295    *      href: function(props, propName, componentName) {
  43296    *        var propValue = props[propName];
  43297    *        if (propValue != null && typeof propValue !== 'string' &&
  43298    *            !(propValue instanceof URI)) {
  43299    *          return new Error(
  43300    *            'Expected a string or an URI for ' + propName + ' in ' +
  43301    *            componentName
  43302    *          );
  43303    *        }
  43304    *      }
  43305    *    },
  43306    *    render: function() {...}
  43307    *  });
  43308    *
  43309    * @internal
  43310    */
  43311 
  43312   var ANONYMOUS = '<<anonymous>>';
  43313 
  43314   // Important!
  43315   // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
  43316   var ReactPropTypes = {
  43317     array: createPrimitiveTypeChecker('array'),
  43318     bool: createPrimitiveTypeChecker('boolean'),
  43319     func: createPrimitiveTypeChecker('function'),
  43320     number: createPrimitiveTypeChecker('number'),
  43321     object: createPrimitiveTypeChecker('object'),
  43322     string: createPrimitiveTypeChecker('string'),
  43323     symbol: createPrimitiveTypeChecker('symbol'),
  43324 
  43325     any: createAnyTypeChecker(),
  43326     arrayOf: createArrayOfTypeChecker,
  43327     element: createElementTypeChecker(),
  43328     elementType: createElementTypeTypeChecker(),
  43329     instanceOf: createInstanceTypeChecker,
  43330     node: createNodeChecker(),
  43331     objectOf: createObjectOfTypeChecker,
  43332     oneOf: createEnumTypeChecker,
  43333     oneOfType: createUnionTypeChecker,
  43334     shape: createShapeTypeChecker,
  43335     exact: createStrictShapeTypeChecker,
  43336   };
  43337 
  43338   /**
  43339    * inlined Object.is polyfill to avoid requiring consumers ship their own
  43340    * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
  43341    */
  43342   /*eslint-disable no-self-compare*/
  43343   function is(x, y) {
  43344     // SameValue algorithm
  43345     if (x === y) {
  43346       // Steps 1-5, 7-10
  43347       // Steps 6.b-6.e: +0 != -0
  43348       return x !== 0 || 1 / x === 1 / y;
  43349     } else {
  43350       // Step 6.a: NaN == NaN
  43351       return x !== x && y !== y;
  43352     }
  43353   }
  43354   /*eslint-enable no-self-compare*/
  43355 
  43356   /**
  43357    * We use an Error-like object for backward compatibility as people may call
  43358    * PropTypes directly and inspect their output. However, we don't use real
  43359    * Errors anymore. We don't inspect their stack anyway, and creating them
  43360    * is prohibitively expensive if they are created too often, such as what
  43361    * happens in oneOfType() for any type before the one that matched.
  43362    */
  43363   function PropTypeError(message) {
  43364     this.message = message;
  43365     this.stack = '';
  43366   }
  43367   // Make `instanceof Error` still work for returned errors.
  43368   PropTypeError.prototype = Error.prototype;
  43369 
  43370   function createChainableTypeChecker(validate) {
  43371     if (true) {
  43372       var manualPropTypeCallCache = {};
  43373       var manualPropTypeWarningCount = 0;
  43374     }
  43375     function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
  43376       componentName = componentName || ANONYMOUS;
  43377       propFullName = propFullName || propName;
  43378 
  43379       if (secret !== ReactPropTypesSecret) {
  43380         if (throwOnDirectAccess) {
  43381           // New behavior only for users of `prop-types` package
  43382           var err = new Error(
  43383             'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
  43384             'Use `PropTypes.checkPropTypes()` to call them. ' +
  43385             'Read more at http://fb.me/use-check-prop-types'
  43386           );
  43387           err.name = 'Invariant Violation';
  43388           throw err;
  43389         } else if ( true && typeof console !== 'undefined') {
  43390           // Old behavior for people using React.PropTypes
  43391           var cacheKey = componentName + ':' + propName;
  43392           if (
  43393             !manualPropTypeCallCache[cacheKey] &&
  43394             // Avoid spamming the console because they are often not actionable except for lib authors
  43395             manualPropTypeWarningCount < 3
  43396           ) {
  43397             printWarning(
  43398               'You are manually calling a React.PropTypes validation ' +
  43399               'function for the `' + propFullName + '` prop on `' + componentName  + '`. This is deprecated ' +
  43400               'and will throw in the standalone `prop-types` package. ' +
  43401               'You may be seeing this warning due to a third-party PropTypes ' +
  43402               'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
  43403             );
  43404             manualPropTypeCallCache[cacheKey] = true;
  43405             manualPropTypeWarningCount++;
  43406           }
  43407         }
  43408       }
  43409       if (props[propName] == null) {
  43410         if (isRequired) {
  43411           if (props[propName] === null) {
  43412             return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
  43413           }
  43414           return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
  43415         }
  43416         return null;
  43417       } else {
  43418         return validate(props, propName, componentName, location, propFullName);
  43419       }
  43420     }
  43421 
  43422     var chainedCheckType = checkType.bind(null, false);
  43423     chainedCheckType.isRequired = checkType.bind(null, true);
  43424 
  43425     return chainedCheckType;
  43426   }
  43427 
  43428   function createPrimitiveTypeChecker(expectedType) {
  43429     function validate(props, propName, componentName, location, propFullName, secret) {
  43430       var propValue = props[propName];
  43431       var propType = getPropType(propValue);
  43432       if (propType !== expectedType) {
  43433         // `propValue` being instance of, say, date/regexp, pass the 'object'
  43434         // check, but we can offer a more precise error message here rather than
  43435         // 'of type `object`'.
  43436         var preciseType = getPreciseType(propValue);
  43437 
  43438         return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));
  43439       }
  43440       return null;
  43441     }
  43442     return createChainableTypeChecker(validate);
  43443   }
  43444 
  43445   function createAnyTypeChecker() {
  43446     return createChainableTypeChecker(emptyFunctionThatReturnsNull);
  43447   }
  43448 
  43449   function createArrayOfTypeChecker(typeChecker) {
  43450     function validate(props, propName, componentName, location, propFullName) {
  43451       if (typeof typeChecker !== 'function') {
  43452         return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
  43453       }
  43454       var propValue = props[propName];
  43455       if (!Array.isArray(propValue)) {
  43456         var propType = getPropType(propValue);
  43457         return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
  43458       }
  43459       for (var i = 0; i < propValue.length; i++) {
  43460         var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
  43461         if (error instanceof Error) {
  43462           return error;
  43463         }
  43464       }
  43465       return null;
  43466     }
  43467     return createChainableTypeChecker(validate);
  43468   }
  43469 
  43470   function createElementTypeChecker() {
  43471     function validate(props, propName, componentName, location, propFullName) {
  43472       var propValue = props[propName];
  43473       if (!isValidElement(propValue)) {
  43474         var propType = getPropType(propValue);
  43475         return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
  43476       }
  43477       return null;
  43478     }
  43479     return createChainableTypeChecker(validate);
  43480   }
  43481 
  43482   function createElementTypeTypeChecker() {
  43483     function validate(props, propName, componentName, location, propFullName) {
  43484       var propValue = props[propName];
  43485       if (!ReactIs.isValidElementType(propValue)) {
  43486         var propType = getPropType(propValue);
  43487         return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
  43488       }
  43489       return null;
  43490     }
  43491     return createChainableTypeChecker(validate);
  43492   }
  43493 
  43494   function createInstanceTypeChecker(expectedClass) {
  43495     function validate(props, propName, componentName, location, propFullName) {
  43496       if (!(props[propName] instanceof expectedClass)) {
  43497         var expectedClassName = expectedClass.name || ANONYMOUS;
  43498         var actualClassName = getClassName(props[propName]);
  43499         return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
  43500       }
  43501       return null;
  43502     }
  43503     return createChainableTypeChecker(validate);
  43504   }
  43505 
  43506   function createEnumTypeChecker(expectedValues) {
  43507     if (!Array.isArray(expectedValues)) {
  43508       if (true) {
  43509         if (arguments.length > 1) {
  43510           printWarning(
  43511             'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
  43512             'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
  43513           );
  43514         } else {
  43515           printWarning('Invalid argument supplied to oneOf, expected an array.');
  43516         }
  43517       }
  43518       return emptyFunctionThatReturnsNull;
  43519     }
  43520 
  43521     function validate(props, propName, componentName, location, propFullName) {
  43522       var propValue = props[propName];
  43523       for (var i = 0; i < expectedValues.length; i++) {
  43524         if (is(propValue, expectedValues[i])) {
  43525           return null;
  43526         }
  43527       }
  43528 
  43529       var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
  43530         var type = getPreciseType(value);
  43531         if (type === 'symbol') {
  43532           return String(value);
  43533         }
  43534         return value;
  43535       });
  43536       return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
  43537     }
  43538     return createChainableTypeChecker(validate);
  43539   }
  43540 
  43541   function createObjectOfTypeChecker(typeChecker) {
  43542     function validate(props, propName, componentName, location, propFullName) {
  43543       if (typeof typeChecker !== 'function') {
  43544         return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
  43545       }
  43546       var propValue = props[propName];
  43547       var propType = getPropType(propValue);
  43548       if (propType !== 'object') {
  43549         return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
  43550       }
  43551       for (var key in propValue) {
  43552         if (has(propValue, key)) {
  43553           var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
  43554           if (error instanceof Error) {
  43555             return error;
  43556           }
  43557         }
  43558       }
  43559       return null;
  43560     }
  43561     return createChainableTypeChecker(validate);
  43562   }
  43563 
  43564   function createUnionTypeChecker(arrayOfTypeCheckers) {
  43565     if (!Array.isArray(arrayOfTypeCheckers)) {
  43566        true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
  43567       return emptyFunctionThatReturnsNull;
  43568     }
  43569 
  43570     for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
  43571       var checker = arrayOfTypeCheckers[i];
  43572       if (typeof checker !== 'function') {
  43573         printWarning(
  43574           'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
  43575           'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
  43576         );
  43577         return emptyFunctionThatReturnsNull;
  43578       }
  43579     }
  43580 
  43581     function validate(props, propName, componentName, location, propFullName) {
  43582       for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
  43583         var checker = arrayOfTypeCheckers[i];
  43584         if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {
  43585           return null;
  43586         }
  43587       }
  43588 
  43589       return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));
  43590     }
  43591     return createChainableTypeChecker(validate);
  43592   }
  43593 
  43594   function createNodeChecker() {
  43595     function validate(props, propName, componentName, location, propFullName) {
  43596       if (!isNode(props[propName])) {
  43597         return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
  43598       }
  43599       return null;
  43600     }
  43601     return createChainableTypeChecker(validate);
  43602   }
  43603 
  43604   function createShapeTypeChecker(shapeTypes) {
  43605     function validate(props, propName, componentName, location, propFullName) {
  43606       var propValue = props[propName];
  43607       var propType = getPropType(propValue);
  43608       if (propType !== 'object') {
  43609         return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
  43610       }
  43611       for (var key in shapeTypes) {
  43612         var checker = shapeTypes[key];
  43613         if (!checker) {
  43614           continue;
  43615         }
  43616         var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
  43617         if (error) {
  43618           return error;
  43619         }
  43620       }
  43621       return null;
  43622     }
  43623     return createChainableTypeChecker(validate);
  43624   }
  43625 
  43626   function createStrictShapeTypeChecker(shapeTypes) {
  43627     function validate(props, propName, componentName, location, propFullName) {
  43628       var propValue = props[propName];
  43629       var propType = getPropType(propValue);
  43630       if (propType !== 'object') {
  43631         return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
  43632       }
  43633       // We need to check all keys in case some are required but missing from
  43634       // props.
  43635       var allKeys = assign({}, props[propName], shapeTypes);
  43636       for (var key in allKeys) {
  43637         var checker = shapeTypes[key];
  43638         if (!checker) {
  43639           return new PropTypeError(
  43640             'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
  43641             '\nBad object: ' + JSON.stringify(props[propName], null, '  ') +
  43642             '\nValid keys: ' +  JSON.stringify(Object.keys(shapeTypes), null, '  ')
  43643           );
  43644         }
  43645         var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
  43646         if (error) {
  43647           return error;
  43648         }
  43649       }
  43650       return null;
  43651     }
  43652 
  43653     return createChainableTypeChecker(validate);
  43654   }
  43655 
  43656   function isNode(propValue) {
  43657     switch (typeof propValue) {
  43658       case 'number':
  43659       case 'string':
  43660       case 'undefined':
  43661         return true;
  43662       case 'boolean':
  43663         return !propValue;
  43664       case 'object':
  43665         if (Array.isArray(propValue)) {
  43666           return propValue.every(isNode);
  43667         }
  43668         if (propValue === null || isValidElement(propValue)) {
  43669           return true;
  43670         }
  43671 
  43672         var iteratorFn = getIteratorFn(propValue);
  43673         if (iteratorFn) {
  43674           var iterator = iteratorFn.call(propValue);
  43675           var step;
  43676           if (iteratorFn !== propValue.entries) {
  43677             while (!(step = iterator.next()).done) {
  43678               if (!isNode(step.value)) {
  43679                 return false;
  43680               }
  43681             }
  43682           } else {
  43683             // Iterator will provide entry [k,v] tuples rather than values.
  43684             while (!(step = iterator.next()).done) {
  43685               var entry = step.value;
  43686               if (entry) {
  43687                 if (!isNode(entry[1])) {
  43688                   return false;
  43689                 }
  43690               }
  43691             }
  43692           }
  43693         } else {
  43694           return false;
  43695         }
  43696 
  43697         return true;
  43698       default:
  43699         return false;
  43700     }
  43701   }
  43702 
  43703   function isSymbol(propType, propValue) {
  43704     // Native Symbol.
  43705     if (propType === 'symbol') {
  43706       return true;
  43707     }
  43708 
  43709     // falsy value can't be a Symbol
  43710     if (!propValue) {
  43711       return false;
  43712     }
  43713 
  43714     // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
  43715     if (propValue['@@toStringTag'] === 'Symbol') {
  43716       return true;
  43717     }
  43718 
  43719     // Fallback for non-spec compliant Symbols which are polyfilled.
  43720     if (typeof Symbol === 'function' && propValue instanceof Symbol) {
  43721       return true;
  43722     }
  43723 
  43724     return false;
  43725   }
  43726 
  43727   // Equivalent of `typeof` but with special handling for array and regexp.
  43728   function getPropType(propValue) {
  43729     var propType = typeof propValue;
  43730     if (Array.isArray(propValue)) {
  43731       return 'array';
  43732     }
  43733     if (propValue instanceof RegExp) {
  43734       // Old webkits (at least until Android 4.0) return 'function' rather than
  43735       // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
  43736       // passes PropTypes.object.
  43737       return 'object';
  43738     }
  43739     if (isSymbol(propType, propValue)) {
  43740       return 'symbol';
  43741     }
  43742     return propType;
  43743   }
  43744 
  43745   // This handles more types than `getPropType`. Only used for error messages.
  43746   // See `createPrimitiveTypeChecker`.
  43747   function getPreciseType(propValue) {
  43748     if (typeof propValue === 'undefined' || propValue === null) {
  43749       return '' + propValue;
  43750     }
  43751     var propType = getPropType(propValue);
  43752     if (propType === 'object') {
  43753       if (propValue instanceof Date) {
  43754         return 'date';
  43755       } else if (propValue instanceof RegExp) {
  43756         return 'regexp';
  43757       }
  43758     }
  43759     return propType;
  43760   }
  43761 
  43762   // Returns a string that is postfixed to a warning about an invalid type.
  43763   // For example, "undefined" or "of type array"
  43764   function getPostfixForTypeWarning(value) {
  43765     var type = getPreciseType(value);
  43766     switch (type) {
  43767       case 'array':
  43768       case 'object':
  43769         return 'an ' + type;
  43770       case 'boolean':
  43771       case 'date':
  43772       case 'regexp':
  43773         return 'a ' + type;
  43774       default:
  43775         return type;
  43776     }
  43777   }
  43778 
  43779   // Returns class name of the object, if any.
  43780   function getClassName(propValue) {
  43781     if (!propValue.constructor || !propValue.constructor.name) {
  43782       return ANONYMOUS;
  43783     }
  43784     return propValue.constructor.name;
  43785   }
  43786 
  43787   ReactPropTypes.checkPropTypes = checkPropTypes;
  43788   ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
  43789   ReactPropTypes.PropTypes = ReactPropTypes;
  43790 
  43791   return ReactPropTypes;
  43792 };
  43793 
  43794 
  43795 /***/ }),
  43796 
  43797 /***/ "../node_modules/prop-types/index.js":
  43798 /*!*******************************************!*\
  43799   !*** ../node_modules/prop-types/index.js ***!
  43800   \*******************************************/
  43801 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  43802 
  43803 /**
  43804  * Copyright (c) 2013-present, Facebook, Inc.
  43805  *
  43806  * This source code is licensed under the MIT license found in the
  43807  * LICENSE file in the root directory of this source tree.
  43808  */
  43809 
  43810 if (true) {
  43811   var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
  43812 
  43813   // By explicitly using `prop-types` you are opting into new development behavior.
  43814   // http://fb.me/prop-types-in-prod
  43815   var throwOnDirectAccess = true;
  43816   module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
  43817 } else {}
  43818 
  43819 
  43820 /***/ }),
  43821 
  43822 /***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
  43823 /*!**************************************************************!*\
  43824   !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
  43825   \**************************************************************/
  43826 /***/ ((module) => {
  43827 
  43828 "use strict";
  43829 /**
  43830  * Copyright (c) 2013-present, Facebook, Inc.
  43831  *
  43832  * This source code is licensed under the MIT license found in the
  43833  * LICENSE file in the root directory of this source tree.
  43834  */
  43835 
  43836 
  43837 
  43838 var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
  43839 
  43840 module.exports = ReactPropTypesSecret;
  43841 
  43842 
  43843 /***/ }),
  43844 
  43845 /***/ "../node_modules/react-is/cjs/react-is.development.js":
  43846 /*!************************************************************!*\
  43847   !*** ../node_modules/react-is/cjs/react-is.development.js ***!
  43848   \************************************************************/
  43849 /***/ ((__unused_webpack_module, exports) => {
  43850 
  43851 "use strict";
  43852 /** @license React v16.13.1
  43853  * react-is.development.js
  43854  *
  43855  * Copyright (c) Facebook, Inc. and its affiliates.
  43856  *
  43857  * This source code is licensed under the MIT license found in the
  43858  * LICENSE file in the root directory of this source tree.
  43859  */
  43860 
  43861 
  43862 
  43863 
  43864 
  43865 if (true) {
  43866   (function() {
  43867 'use strict';
  43868 
  43869 // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
  43870 // nor polyfill, then a plain number is used for performance.
  43871 var hasSymbol = typeof Symbol === 'function' && Symbol.for;
  43872 var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
  43873 var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
  43874 var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
  43875 var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
  43876 var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
  43877 var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
  43878 var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
  43879 // (unstable) APIs that have been removed. Can we remove the symbols?
  43880 
  43881 var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
  43882 var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
  43883 var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
  43884 var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
  43885 var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
  43886 var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
  43887 var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
  43888 var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
  43889 var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
  43890 var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
  43891 var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
  43892 
  43893 function isValidElementType(type) {
  43894   return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
  43895   type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
  43896 }
  43897 
  43898 function typeOf(object) {
  43899   if (typeof object === 'object' && object !== null) {
  43900     var $$typeof = object.$$typeof;
  43901 
  43902     switch ($$typeof) {
  43903       case REACT_ELEMENT_TYPE:
  43904         var type = object.type;
  43905 
  43906         switch (type) {
  43907           case REACT_ASYNC_MODE_TYPE:
  43908           case REACT_CONCURRENT_MODE_TYPE:
  43909           case REACT_FRAGMENT_TYPE:
  43910           case REACT_PROFILER_TYPE:
  43911           case REACT_STRICT_MODE_TYPE:
  43912           case REACT_SUSPENSE_TYPE:
  43913             return type;
  43914 
  43915           default:
  43916             var $$typeofType = type && type.$$typeof;
  43917 
  43918             switch ($$typeofType) {
  43919               case REACT_CONTEXT_TYPE:
  43920               case REACT_FORWARD_REF_TYPE:
  43921               case REACT_LAZY_TYPE:
  43922               case REACT_MEMO_TYPE:
  43923               case REACT_PROVIDER_TYPE:
  43924                 return $$typeofType;
  43925 
  43926               default:
  43927                 return $$typeof;
  43928             }
  43929 
  43930         }
  43931 
  43932       case REACT_PORTAL_TYPE:
  43933         return $$typeof;
  43934     }
  43935   }
  43936 
  43937   return undefined;
  43938 } // AsyncMode is deprecated along with isAsyncMode
  43939 
  43940 var AsyncMode = REACT_ASYNC_MODE_TYPE;
  43941 var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
  43942 var ContextConsumer = REACT_CONTEXT_TYPE;
  43943 var ContextProvider = REACT_PROVIDER_TYPE;
  43944 var Element = REACT_ELEMENT_TYPE;
  43945 var ForwardRef = REACT_FORWARD_REF_TYPE;
  43946 var Fragment = REACT_FRAGMENT_TYPE;
  43947 var Lazy = REACT_LAZY_TYPE;
  43948 var Memo = REACT_MEMO_TYPE;
  43949 var Portal = REACT_PORTAL_TYPE;
  43950 var Profiler = REACT_PROFILER_TYPE;
  43951 var StrictMode = REACT_STRICT_MODE_TYPE;
  43952 var Suspense = REACT_SUSPENSE_TYPE;
  43953 var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
  43954 
  43955 function isAsyncMode(object) {
  43956   {
  43957     if (!hasWarnedAboutDeprecatedIsAsyncMode) {
  43958       hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
  43959 
  43960       console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
  43961     }
  43962   }
  43963 
  43964   return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
  43965 }
  43966 function isConcurrentMode(object) {
  43967   return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
  43968 }
  43969 function isContextConsumer(object) {
  43970   return typeOf(object) === REACT_CONTEXT_TYPE;
  43971 }
  43972 function isContextProvider(object) {
  43973   return typeOf(object) === REACT_PROVIDER_TYPE;
  43974 }
  43975 function isElement(object) {
  43976   return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
  43977 }
  43978 function isForwardRef(object) {
  43979   return typeOf(object) === REACT_FORWARD_REF_TYPE;
  43980 }
  43981 function isFragment(object) {
  43982   return typeOf(object) === REACT_FRAGMENT_TYPE;
  43983 }
  43984 function isLazy(object) {
  43985   return typeOf(object) === REACT_LAZY_TYPE;
  43986 }
  43987 function isMemo(object) {
  43988   return typeOf(object) === REACT_MEMO_TYPE;
  43989 }
  43990 function isPortal(object) {
  43991   return typeOf(object) === REACT_PORTAL_TYPE;
  43992 }
  43993 function isProfiler(object) {
  43994   return typeOf(object) === REACT_PROFILER_TYPE;
  43995 }
  43996 function isStrictMode(object) {
  43997   return typeOf(object) === REACT_STRICT_MODE_TYPE;
  43998 }
  43999 function isSuspense(object) {
  44000   return typeOf(object) === REACT_SUSPENSE_TYPE;
  44001 }
  44002 
  44003 exports.AsyncMode = AsyncMode;
  44004 exports.ConcurrentMode = ConcurrentMode;
  44005 exports.ContextConsumer = ContextConsumer;
  44006 exports.ContextProvider = ContextProvider;
  44007 exports.Element = Element;
  44008 exports.ForwardRef = ForwardRef;
  44009 exports.Fragment = Fragment;
  44010 exports.Lazy = Lazy;
  44011 exports.Memo = Memo;
  44012 exports.Portal = Portal;
  44013 exports.Profiler = Profiler;
  44014 exports.StrictMode = StrictMode;
  44015 exports.Suspense = Suspense;
  44016 exports.isAsyncMode = isAsyncMode;
  44017 exports.isConcurrentMode = isConcurrentMode;
  44018 exports.isContextConsumer = isContextConsumer;
  44019 exports.isContextProvider = isContextProvider;
  44020 exports.isElement = isElement;
  44021 exports.isForwardRef = isForwardRef;
  44022 exports.isFragment = isFragment;
  44023 exports.isLazy = isLazy;
  44024 exports.isMemo = isMemo;
  44025 exports.isPortal = isPortal;
  44026 exports.isProfiler = isProfiler;
  44027 exports.isStrictMode = isStrictMode;
  44028 exports.isSuspense = isSuspense;
  44029 exports.isValidElementType = isValidElementType;
  44030 exports.typeOf = typeOf;
  44031   })();
  44032 }
  44033 
  44034 
  44035 /***/ }),
  44036 
  44037 /***/ "../node_modules/react-is/index.js":
  44038 /*!*****************************************!*\
  44039   !*** ../node_modules/react-is/index.js ***!
  44040   \*****************************************/
  44041 /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  44042 
  44043 "use strict";
  44044 
  44045 
  44046 if (false) {} else {
  44047   module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/react-is/cjs/react-is.development.js");
  44048 }
  44049 
  44050 
  44051 /***/ }),
  44052 
  44053 /***/ "../node_modules/regenerator-runtime/runtime.js":
  44054 /*!******************************************************!*\
  44055   !*** ../node_modules/regenerator-runtime/runtime.js ***!
  44056   \******************************************************/
  44057 /***/ ((module) => {
  44058 
  44059 /**
  44060  * Copyright (c) 2014-present, Facebook, Inc.
  44061  *
  44062  * This source code is licensed under the MIT license found in the
  44063  * LICENSE file in the root directory of this source tree.
  44064  */
  44065 
  44066 var runtime = (function (exports) {
  44067   "use strict";
  44068 
  44069   var Op = Object.prototype;
  44070   var hasOwn = Op.hasOwnProperty;
  44071   var undefined; // More compressible than void 0.
  44072   var $Symbol = typeof Symbol === "function" ? Symbol : {};
  44073   var iteratorSymbol = $Symbol.iterator || "@@iterator";
  44074   var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
  44075   var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
  44076 
  44077   function define(obj, key, value) {
  44078     Object.defineProperty(obj, key, {
  44079       value: value,
  44080       enumerable: true,
  44081       configurable: true,
  44082       writable: true
  44083     });
  44084     return obj[key];
  44085   }
  44086   try {
  44087     // IE 8 has a broken Object.defineProperty that only works on DOM objects.
  44088     define({}, "");
  44089   } catch (err) {
  44090     define = function(obj, key, value) {
  44091       return obj[key] = value;
  44092     };
  44093   }
  44094 
  44095   function wrap(innerFn, outerFn, self, tryLocsList) {
  44096     // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
  44097     var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
  44098     var generator = Object.create(protoGenerator.prototype);
  44099     var context = new Context(tryLocsList || []);
  44100 
  44101     // The ._invoke method unifies the implementations of the .next,
  44102     // .throw, and .return methods.
  44103     generator._invoke = makeInvokeMethod(innerFn, self, context);
  44104 
  44105     return generator;
  44106   }
  44107   exports.wrap = wrap;
  44108 
  44109   // Try/catch helper to minimize deoptimizations. Returns a completion
  44110   // record like context.tryEntries[i].completion. This interface could
  44111   // have been (and was previously) designed to take a closure to be
  44112   // invoked without arguments, but in all the cases we care about we
  44113   // already have an existing method we want to call, so there's no need
  44114   // to create a new function object. We can even get away with assuming
  44115   // the method takes exactly one argument, since that happens to be true
  44116   // in every case, so we don't have to touch the arguments object. The
  44117   // only additional allocation required is the completion record, which
  44118   // has a stable shape and so hopefully should be cheap to allocate.
  44119   function tryCatch(fn, obj, arg) {
  44120     try {
  44121       return { type: "normal", arg: fn.call(obj, arg) };
  44122     } catch (err) {
  44123       return { type: "throw", arg: err };
  44124     }
  44125   }
  44126 
  44127   var GenStateSuspendedStart = "suspendedStart";
  44128   var GenStateSuspendedYield = "suspendedYield";
  44129   var GenStateExecuting = "executing";
  44130   var GenStateCompleted = "completed";
  44131 
  44132   // Returning this object from the innerFn has the same effect as
  44133   // breaking out of the dispatch switch statement.
  44134   var ContinueSentinel = {};
  44135 
  44136   // Dummy constructor functions that we use as the .constructor and
  44137   // .constructor.prototype properties for functions that return Generator
  44138   // objects. For full spec compliance, you may wish to configure your
  44139   // minifier not to mangle the names of these two functions.
  44140   function Generator() {}
  44141   function GeneratorFunction() {}
  44142   function GeneratorFunctionPrototype() {}
  44143 
  44144   // This is a polyfill for %IteratorPrototype% for environments that
  44145   // don't natively support it.
  44146   var IteratorPrototype = {};
  44147   IteratorPrototype[iteratorSymbol] = function () {
  44148     return this;
  44149   };
  44150 
  44151   var getProto = Object.getPrototypeOf;
  44152   var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
  44153   if (NativeIteratorPrototype &&
  44154       NativeIteratorPrototype !== Op &&
  44155       hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
  44156     // This environment has a native %IteratorPrototype%; use it instead
  44157     // of the polyfill.
  44158     IteratorPrototype = NativeIteratorPrototype;
  44159   }
  44160 
  44161   var Gp = GeneratorFunctionPrototype.prototype =
  44162     Generator.prototype = Object.create(IteratorPrototype);
  44163   GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
  44164   GeneratorFunctionPrototype.constructor = GeneratorFunction;
  44165   GeneratorFunction.displayName = define(
  44166     GeneratorFunctionPrototype,
  44167     toStringTagSymbol,
  44168     "GeneratorFunction"
  44169   );
  44170 
  44171   // Helper for defining the .next, .throw, and .return methods of the
  44172   // Iterator interface in terms of a single ._invoke method.
  44173   function defineIteratorMethods(prototype) {
  44174     ["next", "throw", "return"].forEach(function(method) {
  44175       define(prototype, method, function(arg) {
  44176         return this._invoke(method, arg);
  44177       });
  44178     });
  44179   }
  44180 
  44181   exports.isGeneratorFunction = function(genFun) {
  44182     var ctor = typeof genFun === "function" && genFun.constructor;
  44183     return ctor
  44184       ? ctor === GeneratorFunction ||
  44185         // For the native GeneratorFunction constructor, the best we can
  44186         // do is to check its .name property.
  44187         (ctor.displayName || ctor.name) === "GeneratorFunction"
  44188       : false;
  44189   };
  44190 
  44191   exports.mark = function(genFun) {
  44192     if (Object.setPrototypeOf) {
  44193       Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
  44194     } else {
  44195       genFun.__proto__ = GeneratorFunctionPrototype;
  44196       define(genFun, toStringTagSymbol, "GeneratorFunction");
  44197     }
  44198     genFun.prototype = Object.create(Gp);
  44199     return genFun;
  44200   };
  44201 
  44202   // Within the body of any async function, `await x` is transformed to
  44203   // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
  44204   // `hasOwn.call(value, "__await")` to determine if the yielded value is
  44205   // meant to be awaited.
  44206   exports.awrap = function(arg) {
  44207     return { __await: arg };
  44208   };
  44209 
  44210   function AsyncIterator(generator, PromiseImpl) {
  44211     function invoke(method, arg, resolve, reject) {
  44212       var record = tryCatch(generator[method], generator, arg);
  44213       if (record.type === "throw") {
  44214         reject(record.arg);
  44215       } else {
  44216         var result = record.arg;
  44217         var value = result.value;
  44218         if (value &&
  44219             typeof value === "object" &&
  44220             hasOwn.call(value, "__await")) {
  44221           return PromiseImpl.resolve(value.__await).then(function(value) {
  44222             invoke("next", value, resolve, reject);
  44223           }, function(err) {
  44224             invoke("throw", err, resolve, reject);
  44225           });
  44226         }
  44227 
  44228         return PromiseImpl.resolve(value).then(function(unwrapped) {
  44229           // When a yielded Promise is resolved, its final value becomes
  44230           // the .value of the Promise<{value,done}> result for the
  44231           // current iteration.
  44232           result.value = unwrapped;
  44233           resolve(result);
  44234         }, function(error) {
  44235           // If a rejected Promise was yielded, throw the rejection back
  44236           // into the async generator function so it can be handled there.
  44237           return invoke("throw", error, resolve, reject);
  44238         });
  44239       }
  44240     }
  44241 
  44242     var previousPromise;
  44243 
  44244     function enqueue(method, arg) {
  44245       function callInvokeWithMethodAndArg() {
  44246         return new PromiseImpl(function(resolve, reject) {
  44247           invoke(method, arg, resolve, reject);
  44248         });
  44249       }
  44250 
  44251       return previousPromise =
  44252         // If enqueue has been called before, then we want to wait until
  44253         // all previous Promises have been resolved before calling invoke,
  44254         // so that results are always delivered in the correct order. If
  44255         // enqueue has not been called before, then it is important to
  44256         // call invoke immediately, without waiting on a callback to fire,
  44257         // so that the async generator function has the opportunity to do
  44258         // any necessary setup in a predictable way. This predictability
  44259         // is why the Promise constructor synchronously invokes its
  44260         // executor callback, and why async functions synchronously
  44261         // execute code before the first await. Since we implement simple
  44262         // async functions in terms of async generators, it is especially
  44263         // important to get this right, even though it requires care.
  44264         previousPromise ? previousPromise.then(
  44265           callInvokeWithMethodAndArg,
  44266           // Avoid propagating failures to Promises returned by later
  44267           // invocations of the iterator.
  44268           callInvokeWithMethodAndArg
  44269         ) : callInvokeWithMethodAndArg();
  44270     }
  44271 
  44272     // Define the unified helper method that is used to implement .next,
  44273     // .throw, and .return (see defineIteratorMethods).
  44274     this._invoke = enqueue;
  44275   }
  44276 
  44277   defineIteratorMethods(AsyncIterator.prototype);
  44278   AsyncIterator.prototype[asyncIteratorSymbol] = function () {
  44279     return this;
  44280   };
  44281   exports.AsyncIterator = AsyncIterator;
  44282 
  44283   // Note that simple async functions are implemented on top of
  44284   // AsyncIterator objects; they just return a Promise for the value of
  44285   // the final result produced by the iterator.
  44286   exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
  44287     if (PromiseImpl === void 0) PromiseImpl = Promise;
  44288 
  44289     var iter = new AsyncIterator(
  44290       wrap(innerFn, outerFn, self, tryLocsList),
  44291       PromiseImpl
  44292     );
  44293 
  44294     return exports.isGeneratorFunction(outerFn)
  44295       ? iter // If outerFn is a generator, return the full iterator.
  44296       : iter.next().then(function(result) {
  44297           return result.done ? result.value : iter.next();
  44298         });
  44299   };
  44300 
  44301   function makeInvokeMethod(innerFn, self, context) {
  44302     var state = GenStateSuspendedStart;
  44303 
  44304     return function invoke(method, arg) {
  44305       if (state === GenStateExecuting) {
  44306         throw new Error("Generator is already running");
  44307       }
  44308 
  44309       if (state === GenStateCompleted) {
  44310         if (method === "throw") {
  44311           throw arg;
  44312         }
  44313 
  44314         // Be forgiving, per 25.3.3.3.3 of the spec:
  44315         // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
  44316         return doneResult();
  44317       }
  44318 
  44319       context.method = method;
  44320       context.arg = arg;
  44321 
  44322       while (true) {
  44323         var delegate = context.delegate;
  44324         if (delegate) {
  44325           var delegateResult = maybeInvokeDelegate(delegate, context);
  44326           if (delegateResult) {
  44327             if (delegateResult === ContinueSentinel) continue;
  44328             return delegateResult;
  44329           }
  44330         }
  44331 
  44332         if (context.method === "next") {
  44333           // Setting context._sent for legacy support of Babel's
  44334           // function.sent implementation.
  44335           context.sent = context._sent = context.arg;
  44336 
  44337         } else if (context.method === "throw") {
  44338           if (state === GenStateSuspendedStart) {
  44339             state = GenStateCompleted;
  44340             throw context.arg;
  44341           }
  44342 
  44343           context.dispatchException(context.arg);
  44344 
  44345         } else if (context.method === "return") {
  44346           context.abrupt("return", context.arg);
  44347         }
  44348 
  44349         state = GenStateExecuting;
  44350 
  44351         var record = tryCatch(innerFn, self, context);
  44352         if (record.type === "normal") {
  44353           // If an exception is thrown from innerFn, we leave state ===
  44354           // GenStateExecuting and loop back for another invocation.
  44355           state = context.done
  44356             ? GenStateCompleted
  44357             : GenStateSuspendedYield;
  44358 
  44359           if (record.arg === ContinueSentinel) {
  44360             continue;
  44361           }
  44362 
  44363           return {
  44364             value: record.arg,
  44365             done: context.done
  44366           };
  44367 
  44368         } else if (record.type === "throw") {
  44369           state = GenStateCompleted;
  44370           // Dispatch the exception by looping back around to the
  44371           // context.dispatchException(context.arg) call above.
  44372           context.method = "throw";
  44373           context.arg = record.arg;
  44374         }
  44375       }
  44376     };
  44377   }
  44378 
  44379   // Call delegate.iterator[context.method](context.arg) and handle the
  44380   // result, either by returning a { value, done } result from the
  44381   // delegate iterator, or by modifying context.method and context.arg,
  44382   // setting context.delegate to null, and returning the ContinueSentinel.
  44383   function maybeInvokeDelegate(delegate, context) {
  44384     var method = delegate.iterator[context.method];
  44385     if (method === undefined) {
  44386       // A .throw or .return when the delegate iterator has no .throw
  44387       // method always terminates the yield* loop.
  44388       context.delegate = null;
  44389 
  44390       if (context.method === "throw") {
  44391         // Note: ["return"] must be used for ES3 parsing compatibility.
  44392         if (delegate.iterator["return"]) {
  44393           // If the delegate iterator has a return method, give it a
  44394           // chance to clean up.
  44395           context.method = "return";
  44396           context.arg = undefined;
  44397           maybeInvokeDelegate(delegate, context);
  44398 
  44399           if (context.method === "throw") {
  44400             // If maybeInvokeDelegate(context) changed context.method from
  44401             // "return" to "throw", let that override the TypeError below.
  44402             return ContinueSentinel;
  44403           }
  44404         }
  44405 
  44406         context.method = "throw";
  44407         context.arg = new TypeError(
  44408           "The iterator does not provide a 'throw' method");
  44409       }
  44410 
  44411       return ContinueSentinel;
  44412     }
  44413 
  44414     var record = tryCatch(method, delegate.iterator, context.arg);
  44415 
  44416     if (record.type === "throw") {
  44417       context.method = "throw";
  44418       context.arg = record.arg;
  44419       context.delegate = null;
  44420       return ContinueSentinel;
  44421     }
  44422 
  44423     var info = record.arg;
  44424 
  44425     if (! info) {
  44426       context.method = "throw";
  44427       context.arg = new TypeError("iterator result is not an object");
  44428       context.delegate = null;
  44429       return ContinueSentinel;
  44430     }
  44431 
  44432     if (info.done) {
  44433       // Assign the result of the finished delegate to the temporary
  44434       // variable specified by delegate.resultName (see delegateYield).
  44435       context[delegate.resultName] = info.value;
  44436 
  44437       // Resume execution at the desired location (see delegateYield).
  44438       context.next = delegate.nextLoc;
  44439 
  44440       // If context.method was "throw" but the delegate handled the
  44441       // exception, let the outer generator proceed normally. If
  44442       // context.method was "next", forget context.arg since it has been
  44443       // "consumed" by the delegate iterator. If context.method was
  44444       // "return", allow the original .return call to continue in the
  44445       // outer generator.
  44446       if (context.method !== "return") {
  44447         context.method = "next";
  44448         context.arg = undefined;
  44449       }
  44450 
  44451     } else {
  44452       // Re-yield the result returned by the delegate method.
  44453       return info;
  44454     }
  44455 
  44456     // The delegate iterator is finished, so forget it and continue with
  44457     // the outer generator.
  44458     context.delegate = null;
  44459     return ContinueSentinel;
  44460   }
  44461 
  44462   // Define Generator.prototype.{next,throw,return} in terms of the
  44463   // unified ._invoke helper method.
  44464   defineIteratorMethods(Gp);
  44465 
  44466   define(Gp, toStringTagSymbol, "Generator");
  44467 
  44468   // A Generator should always return itself as the iterator object when the
  44469   // @@iterator function is called on it. Some browsers' implementations of the
  44470   // iterator prototype chain incorrectly implement this, causing the Generator
  44471   // object to not be returned from this call. This ensures that doesn't happen.
  44472   // See https://github.com/facebook/regenerator/issues/274 for more details.
  44473   Gp[iteratorSymbol] = function() {
  44474     return this;
  44475   };
  44476 
  44477   Gp.toString = function() {
  44478     return "[object Generator]";
  44479   };
  44480 
  44481   function pushTryEntry(locs) {
  44482     var entry = { tryLoc: locs[0] };
  44483 
  44484     if (1 in locs) {
  44485       entry.catchLoc = locs[1];
  44486     }
  44487 
  44488     if (2 in locs) {
  44489       entry.finallyLoc = locs[2];
  44490       entry.afterLoc = locs[3];
  44491     }
  44492 
  44493     this.tryEntries.push(entry);
  44494   }
  44495 
  44496   function resetTryEntry(entry) {
  44497     var record = entry.completion || {};
  44498     record.type = "normal";
  44499     delete record.arg;
  44500     entry.completion = record;
  44501   }
  44502 
  44503   function Context(tryLocsList) {
  44504     // The root entry object (effectively a try statement without a catch
  44505     // or a finally block) gives us a place to store values thrown from
  44506     // locations where there is no enclosing try statement.
  44507     this.tryEntries = [{ tryLoc: "root" }];
  44508     tryLocsList.forEach(pushTryEntry, this);
  44509     this.reset(true);
  44510   }
  44511 
  44512   exports.keys = function(object) {
  44513     var keys = [];
  44514     for (var key in object) {
  44515       keys.push(key);
  44516     }
  44517     keys.reverse();
  44518 
  44519     // Rather than returning an object with a next method, we keep
  44520     // things simple and return the next function itself.
  44521     return function next() {
  44522       while (keys.length) {
  44523         var key = keys.pop();
  44524         if (key in object) {
  44525           next.value = key;
  44526           next.done = false;
  44527           return next;
  44528         }
  44529       }
  44530 
  44531       // To avoid creating an additional object, we just hang the .value
  44532       // and .done properties off the next function object itself. This
  44533       // also ensures that the minifier will not anonymize the function.
  44534       next.done = true;
  44535       return next;
  44536     };
  44537   };
  44538 
  44539   function values(iterable) {
  44540     if (iterable) {
  44541       var iteratorMethod = iterable[iteratorSymbol];
  44542       if (iteratorMethod) {
  44543         return iteratorMethod.call(iterable);
  44544       }
  44545 
  44546       if (typeof iterable.next === "function") {
  44547         return iterable;
  44548       }
  44549 
  44550       if (!isNaN(iterable.length)) {
  44551         var i = -1, next = function next() {
  44552           while (++i < iterable.length) {
  44553             if (hasOwn.call(iterable, i)) {
  44554               next.value = iterable[i];
  44555               next.done = false;
  44556               return next;
  44557             }
  44558           }
  44559 
  44560           next.value = undefined;
  44561           next.done = true;
  44562 
  44563           return next;
  44564         };
  44565 
  44566         return next.next = next;
  44567       }
  44568     }
  44569 
  44570     // Return an iterator with no values.
  44571     return { next: doneResult };
  44572   }
  44573   exports.values = values;
  44574 
  44575   function doneResult() {
  44576     return { value: undefined, done: true };
  44577   }
  44578 
  44579   Context.prototype = {
  44580     constructor: Context,
  44581 
  44582     reset: function(skipTempReset) {
  44583       this.prev = 0;
  44584       this.next = 0;
  44585       // Resetting context._sent for legacy support of Babel's
  44586       // function.sent implementation.
  44587       this.sent = this._sent = undefined;
  44588       this.done = false;
  44589       this.delegate = null;
  44590 
  44591       this.method = "next";
  44592       this.arg = undefined;
  44593 
  44594       this.tryEntries.forEach(resetTryEntry);
  44595 
  44596       if (!skipTempReset) {
  44597         for (var name in this) {
  44598           // Not sure about the optimal order of these conditions:
  44599           if (name.charAt(0) === "t" &&
  44600               hasOwn.call(this, name) &&
  44601               !isNaN(+name.slice(1))) {
  44602             this[name] = undefined;
  44603           }
  44604         }
  44605       }
  44606     },
  44607 
  44608     stop: function() {
  44609       this.done = true;
  44610 
  44611       var rootEntry = this.tryEntries[0];
  44612       var rootRecord = rootEntry.completion;
  44613       if (rootRecord.type === "throw") {
  44614         throw rootRecord.arg;
  44615       }
  44616 
  44617       return this.rval;
  44618     },
  44619 
  44620     dispatchException: function(exception) {
  44621       if (this.done) {
  44622         throw exception;
  44623       }
  44624 
  44625       var context = this;
  44626       function handle(loc, caught) {
  44627         record.type = "throw";
  44628         record.arg = exception;
  44629         context.next = loc;
  44630 
  44631         if (caught) {
  44632           // If the dispatched exception was caught by a catch block,
  44633           // then let that catch block handle the exception normally.
  44634           context.method = "next";
  44635           context.arg = undefined;
  44636         }
  44637 
  44638         return !! caught;
  44639       }
  44640 
  44641       for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  44642         var entry = this.tryEntries[i];
  44643         var record = entry.completion;
  44644 
  44645         if (entry.tryLoc === "root") {
  44646           // Exception thrown outside of any try block that could handle
  44647           // it, so set the completion value of the entire function to
  44648           // throw the exception.
  44649           return handle("end");
  44650         }
  44651 
  44652         if (entry.tryLoc <= this.prev) {
  44653           var hasCatch = hasOwn.call(entry, "catchLoc");
  44654           var hasFinally = hasOwn.call(entry, "finallyLoc");
  44655 
  44656           if (hasCatch && hasFinally) {
  44657             if (this.prev < entry.catchLoc) {
  44658               return handle(entry.catchLoc, true);
  44659             } else if (this.prev < entry.finallyLoc) {
  44660               return handle(entry.finallyLoc);
  44661             }
  44662 
  44663           } else if (hasCatch) {
  44664             if (this.prev < entry.catchLoc) {
  44665               return handle(entry.catchLoc, true);
  44666             }
  44667 
  44668           } else if (hasFinally) {
  44669             if (this.prev < entry.finallyLoc) {
  44670               return handle(entry.finallyLoc);
  44671             }
  44672 
  44673           } else {
  44674             throw new Error("try statement without catch or finally");
  44675           }
  44676         }
  44677       }
  44678     },
  44679 
  44680     abrupt: function(type, arg) {
  44681       for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  44682         var entry = this.tryEntries[i];
  44683         if (entry.tryLoc <= this.prev &&
  44684             hasOwn.call(entry, "finallyLoc") &&
  44685             this.prev < entry.finallyLoc) {
  44686           var finallyEntry = entry;
  44687           break;
  44688         }
  44689       }
  44690 
  44691       if (finallyEntry &&
  44692           (type === "break" ||
  44693            type === "continue") &&
  44694           finallyEntry.tryLoc <= arg &&
  44695           arg <= finallyEntry.finallyLoc) {
  44696         // Ignore the finally entry if control is not jumping to a
  44697         // location outside the try/catch block.
  44698         finallyEntry = null;
  44699       }
  44700 
  44701       var record = finallyEntry ? finallyEntry.completion : {};
  44702       record.type = type;
  44703       record.arg = arg;
  44704 
  44705       if (finallyEntry) {
  44706         this.method = "next";
  44707         this.next = finallyEntry.finallyLoc;
  44708         return ContinueSentinel;
  44709       }
  44710 
  44711       return this.complete(record);
  44712     },
  44713 
  44714     complete: function(record, afterLoc) {
  44715       if (record.type === "throw") {
  44716         throw record.arg;
  44717       }
  44718 
  44719       if (record.type === "break" ||
  44720           record.type === "continue") {
  44721         this.next = record.arg;
  44722       } else if (record.type === "return") {
  44723         this.rval = this.arg = record.arg;
  44724         this.method = "return";
  44725         this.next = "end";
  44726       } else if (record.type === "normal" && afterLoc) {
  44727         this.next = afterLoc;
  44728       }
  44729 
  44730       return ContinueSentinel;
  44731     },
  44732 
  44733     finish: function(finallyLoc) {
  44734       for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  44735         var entry = this.tryEntries[i];
  44736         if (entry.finallyLoc === finallyLoc) {
  44737           this.complete(entry.completion, entry.afterLoc);
  44738           resetTryEntry(entry);
  44739           return ContinueSentinel;
  44740         }
  44741       }
  44742     },
  44743 
  44744     "catch": function(tryLoc) {
  44745       for (var i = this.tryEntries.length - 1; i >= 0; --i) {
  44746         var entry = this.tryEntries[i];
  44747         if (entry.tryLoc === tryLoc) {
  44748           var record = entry.completion;
  44749           if (record.type === "throw") {
  44750             var thrown = record.arg;
  44751             resetTryEntry(entry);
  44752           }
  44753           return thrown;
  44754         }
  44755       }
  44756 
  44757       // The context.catch method must only be called with a location
  44758       // argument that corresponds to a known catch block.
  44759       throw new Error("illegal catch attempt");
  44760     },
  44761 
  44762     delegateYield: function(iterable, resultName, nextLoc) {
  44763       this.delegate = {
  44764         iterator: values(iterable),
  44765         resultName: resultName,
  44766         nextLoc: nextLoc
  44767       };
  44768 
  44769       if (this.method === "next") {
  44770         // Deliberately forget the last sent value so that we don't
  44771         // accidentally pass it on to the delegate.
  44772         this.arg = undefined;
  44773       }
  44774 
  44775       return ContinueSentinel;
  44776     }
  44777   };
  44778 
  44779   // Regardless of whether this script is executing as a CommonJS module
  44780   // or not, return the runtime object so that we can declare the variable
  44781   // regeneratorRuntime in the outer scope, which allows this module to be
  44782   // injected easily by `bin/regenerator --include-runtime script.js`.
  44783   return exports;
  44784 
  44785 }(
  44786   // If this script is executing as a CommonJS module, use module.exports
  44787   // as the regeneratorRuntime namespace. Otherwise create a new empty
  44788   // object. Either way, the resulting object will be used to initialize
  44789   // the regeneratorRuntime variable at the top of this file.
  44790    true ? module.exports : 0
  44791 ));
  44792 
  44793 try {
  44794   regeneratorRuntime = runtime;
  44795 } catch (accidentalStrictMode) {
  44796   // This module should not be running in strict mode, so the above
  44797   // assignment should always work unless something is misconfigured. Just
  44798   // in case runtime.js accidentally runs in strict mode, we can escape
  44799   // strict mode using a global Function call. This could conceivably fail
  44800   // if a Content Security Policy forbids using Function, but in that case
  44801   // the proper solution is to fix the accidental strict mode problem. If
  44802   // you've misconfigured your bundler to force strict mode and applied a
  44803   // CSP to forbid Function, and you're not willing to fix either of those
  44804   // problems, please detail your unique predicament in a GitHub issue.
  44805   Function("r", "regeneratorRuntime = r")(runtime);
  44806 }
  44807 
  44808 
  44809 /***/ }),
  44810 
  44811 /***/ "react":
  44812 /*!************************!*\
  44813   !*** external "React" ***!
  44814   \************************/
  44815 /***/ ((module) => {
  44816 
  44817 "use strict";
  44818 module.exports = React;
  44819 
  44820 /***/ }),
  44821 
  44822 /***/ "react-dom":
  44823 /*!***************************!*\
  44824   !*** external "ReactDOM" ***!
  44825   \***************************/
  44826 /***/ ((module) => {
  44827 
  44828 "use strict";
  44829 module.exports = ReactDOM;
  44830 
  44831 /***/ }),
  44832 
  44833 /***/ "@wordpress/i18n":
  44834 /*!**************************!*\
  44835   !*** external "wp.i18n" ***!
  44836   \**************************/
  44837 /***/ ((module) => {
  44838 
  44839 "use strict";
  44840 module.exports = wp.i18n;
  44841 
  44842 /***/ })
  44843 
  44844 /******/ 	});
  44845 /************************************************************************/
  44846 /******/ 	// The module cache
  44847 /******/ 	var __webpack_module_cache__ = {};
  44848 /******/ 	
  44849 /******/ 	// The require function
  44850 /******/ 	function __webpack_require__(moduleId) {
  44851 /******/ 		// Check if module is in cache
  44852 /******/ 		var cachedModule = __webpack_module_cache__[moduleId];
  44853 /******/ 		if (cachedModule !== undefined) {
  44854 /******/ 			return cachedModule.exports;
  44855 /******/ 		}
  44856 /******/ 		// Create a new module (and put it into the cache)
  44857 /******/ 		var module = __webpack_module_cache__[moduleId] = {
  44858 /******/ 			// no module.id needed
  44859 /******/ 			// no module.loaded needed
  44860 /******/ 			exports: {}
  44861 /******/ 		};
  44862 /******/ 	
  44863 /******/ 		// Execute the module function
  44864 /******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
  44865 /******/ 	
  44866 /******/ 		// Return the exports of the module
  44867 /******/ 		return module.exports;
  44868 /******/ 	}
  44869 /******/ 	
  44870 /************************************************************************/
  44871 /******/ 	
  44872 /******/ 	// startup
  44873 /******/ 	// Load entry module and return exports
  44874 /******/ 	__webpack_require__("../assets/dev/js/editor/utils/jquery-serialize-object.js");
  44875 /******/ 	__webpack_require__("../assets/dev/js/editor/utils/jquery-html5-dnd.js");
  44876 /******/ 	// This entry module is referenced by other modules so it can't be inlined
  44877 /******/ 	var __webpack_exports__ = __webpack_require__("../assets/dev/js/editor/editor.js");
  44878 /******/ 	
  44879 /******/ })()
  44880 ;
  44881 //# sourceMappingURL=editor.js.map