PageSourceSearch

https://www.olivenholz.de/modules/leoelements/assets/js/frontend.js

js olivenholz.de collected 2026-10-10 02:04:18 UTC 178,648 bytes, 6,220 lines download raw bytes

vendor: 4,066 bytes, lines 1-107
1/**
2 *  @Website: leotheme.com - prestashop template provider
3 *  @author Leotheme <[email protected]>
4 *  @copyright  Leotheme
5 *  @description: 
6 */
7
8/******/ (function(modules) { // webpackBootstrap
9/******/ 	// The module cache
10/******/ 	var installedModules = {};
11/******/
12/******/ 	// The require function
13/******/ 	function __webpack_require__(moduleId) {
14/******/
15/******/ 		// Check if module is in cache
16/******/ 		if(installedModules[moduleId]) {
17/******/ 			return installedModules[moduleId].exports;
18/******/ 		}
19/******/ 		// Create a new module (and put it into the cache)
20/******/ 		var module = installedModules[moduleId] = {
21/******/ 			i: moduleId,
22/******/ 			l: false,
23/******/ 			exports: {}
24/******/ 		};
25/******/
26/******/ 		// Execute the module function
27/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
28/******/
29/******/ 		// Flag the module as loaded
30/******/ 		module.l = true;
31/******/
32/******/ 		// Return the exports of the module
33/******/ 		return module.exports;
34/******/ 	}
35/******/
36/******/
37/******/ 	// expose the modules object (__webpack_modules__)
38/******/ 	__webpack_require__.m = modules;
39/******/
40/******/ 	// expose the module cache
41/******/ 	__webpack_require__.c = installedModules;
42/******/
43/******/ 	// define getter function for harmony exports
44/******/ 	__webpack_require__.d = function(exports, name, getter) {
45/******/ 		if(!__webpack_require__.o(exports, name)) {
46/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
47/******/ 		}
48/******/ 	};
49/******/
50/******/ 	// define __esModule on exports
51/******/ 	__webpack_require__.r = function(exports) {
52/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
53/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
54/******/ 		}
55/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
56/******/ 	};
57/******/
58/******/ 	// create a fake namespace object
59/******/ 	// mode & 1: value is a module id, require it
60/******/ 	// mode & 2: merge all properties of value into the ns
61/******/ 	// mode & 4: return value when already ns object
62/******/ 	// mode & 8|1: behave like require
63/******/ 	__webpack_require__.t = function(value, mode) {
64/******/ 		if(mode & 1) value = __webpack_require__(value);
65/******/ 		if(mode & 8) return value;
66/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
67/******/ 		var ns = Object.create(null);
68/******/ 		__webpack_require__.r(ns);
69/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
70/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
71/******/ 		return ns;
72/******/ 	};
73/******/
74/******/ 	// getDefaultExport function for compatibility with non-harmony modules
75/******/ 	__webpack_require__.n = function(module) {
76/******/ 		var getter = module && module.__esModule ?
77/******/ 			function getDefault() { return module['default']; } :
78/******/ 			function getModuleExports() { return module; };
79/******/ 		__webpack_require__.d(getter, 'a', getter);
80/******/ 		return getter;
81/******/ 	};
82/******/
83/******/ 	// Object.prototype.hasOwnProperty.call
84/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
85/******/
86/******/ 	// __webpack_public_path__
87/******/ 	__webpack_require__.p = "";
88/******/
89/******/
90/******/ 	// Load entry module and return exports
91/******/ 	return __webpack_require__(__webpack_require__.s = 458);
92/******/ })
93/************************************************************************/
94/******/ ([
95/* 0 */
96/***/ (function(module, exports) {
97
98function _interopRequireDefault(obj) {
99  return obj && obj.__esModule ? obj : {
100    "default": obj
101  };
102}
103
104module.exports = _interopRequireDefault;
105
106/***/ }),
107/* 1 */
vendor: 9,115 bytes, lines 108-417
108/***/ (function(module, exports) {
109
110var core = module.exports = { version: '2.6.9' };
111if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
112
113
114/***/ }),
115/* 2 */
116/***/ (function(module, exports, __webpack_require__) {
117
118module.exports = __webpack_require__(107);
119
120/***/ }),
121/* 3 */
122/***/ (function(module, exports, __webpack_require__) {
123
124var global = __webpack_require__(5);
125var core = __webpack_require__(1);
126var ctx = __webpack_require__(68);
127var hide = __webpack_require__(22);
128var has = __webpack_require__(13);
129var PROTOTYPE = 'prototype';
130
131var $export = function (type, name, source) {
132  var IS_FORCED = type & $export.F;
133  var IS_GLOBAL = type & $export.G;
134  var IS_STATIC = type & $export.S;
135  var IS_PROTO = type & $export.P;
136  var IS_BIND = type & $export.B;
137  var IS_WRAP = type & $export.W;
138  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
139  var expProto = exports[PROTOTYPE];
140  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
141  var key, own, out;
142  if (IS_GLOBAL) source = name;
143  for (key in source) {
144    // contains in native
145    own = !IS_FORCED && target && target[key] !== undefined;
146    if (own && has(exports, key)) continue;
147    // export native or passed
148    out = own ? target[key] : source[key];
149    // prevent global pollution for namespaces
150    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
151    // bind timers to global for call from export context
152    : IS_BIND && own ? ctx(out, global)
153    // wrap global constructors for prevent change them in library
154    : IS_WRAP && target[key] == out ? (function (C) {
155      var F = function (a, b, c) {
156        if (this instanceof C) {
157          switch (arguments.length) {
158            case 0: return new C();
159            case 1: return new C(a);
160            case 2: return new C(a, b);
161          } return new C(a, b, c);
162        } return C.apply(this, arguments);
163      };
164      F[PROTOTYPE] = C[PROTOTYPE];
165      return F;
166    // make static versions for prototype methods
167    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
168    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
169    if (IS_PROTO) {
170      (exports.virtual || (exports.virtual = {}))[key] = out;
171      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
172      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
173    }
174  }
175};
176// type bitmap
177$export.F = 1;   // forced
178$export.G = 2;   // global
179$export.S = 4;   // static
180$export.P = 8;   // proto
181$export.B = 16;  // bind
182$export.W = 32;  // wrap
183$export.U = 64;  // safe
184$export.R = 128; // real proto method for `library`
185module.exports = $export;
186
187
188/***/ }),
189/* 4 */
190/***/ (function(module, exports, __webpack_require__) {
191
192var _Object$getPrototypeOf = __webpack_require__(102);
193
194var _Object$setPrototypeOf = __webpack_require__(78);
195
196function _getPrototypeOf(o) {
197  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
198    return o.__proto__ || _Object$getPrototypeOf(o);
199  };
200  return _getPrototypeOf(o);
201}
202
203module.exports = _getPrototypeOf;
204
205/***/ }),
206/* 5 */
207/***/ (function(module, exports) {
208
209// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
210var global = module.exports = typeof window != 'undefined' && window.Math == Math
211  ? window : typeof self != 'undefined' && self.Math == Math ? self
212  // eslint-disable-next-line no-new-func
213  : Function('return this')();
214if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
215
216
217/***/ }),
218/* 6 */
219/***/ (function(module, exports) {
220
221function _classCallCheck(instance, Constructor) {
222  if (!(instance instanceof Constructor)) {
223    throw new TypeError("Cannot call a class as a function");
224  }
225}
226
227module.exports = _classCallCheck;
228
229/***/ }),
230/* 7 */
231/***/ (function(module, exports, __webpack_require__) {
232
233var _Object$defineProperty = __webpack_require__(2);
234
235function _defineProperties(target, props) {
236  for (var i = 0; i < props.length; i++) {
237    var descriptor = props[i];
238    descriptor.enumerable = descriptor.enumerable || false;
239    descriptor.configurable = true;
240    if ("value" in descriptor) descriptor.writable = true;
241
242    _Object$defineProperty(target, descriptor.key, descriptor);
243  }
244}
245
246function _createClass(Constructor, protoProps, staticProps) {
247  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
248  if (staticProps) _defineProperties(Constructor, staticProps);
249  return Constructor;
250}
251
252module.exports = _createClass;
253
254/***/ }),
255/* 8 */
256/***/ (function(module, exports, __webpack_require__) {
257
258var store = __webpack_require__(44)('wks');
259var uid = __webpack_require__(45);
260var Symbol = __webpack_require__(9).Symbol;
261var USE_SYMBOL = typeof Symbol == 'function';
262
263var $exports = module.exports = function (name) {
264  return store[name] || (store[name] =
265    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
266};
267
268$exports.store = store;
269
270
271/***/ }),
272/* 9 */
273/***/ (function(module, exports) {
274
275// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
276var global = module.exports = typeof window != 'undefined' && window.Math == Math
277  ? window : typeof self != 'undefined' && self.Math == Math ? self
278  // eslint-disable-next-line no-new-func
279  : Function('return this')();
280if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
281
282
283/***/ }),
284/* 10 */
285/***/ (function(module, exports, __webpack_require__) {
286
287var _typeof = __webpack_require__(62);
288
289var assertThisInitialized = __webpack_require__(81);
290
291function _possibleConstructorReturn(self, call) {
292  if (call && (_typeof(call) === "object" || typeof call === "function")) {
293    return call;
294  }
295
296  return assertThisInitialized(self);
297}
298
299module.exports = _possibleConstructorReturn;
300
301/***/ }),
302/* 11 */
303/***/ (function(module, exports, __webpack_require__) {
304
305var _Object$create = __webpack_require__(91);
306
307var setPrototypeOf = __webpack_require__(135);
308
309function _inherits(subClass, superClass) {
310  if (typeof superClass !== "function" && superClass !== null) {
311    throw new TypeError("Super expression must either be null or a function");
312  }
313
314  subClass.prototype = _Object$create(superClass && superClass.prototype, {
315    constructor: {
316      value: subClass,
317      writable: true,
318      configurable: true
319    }
320  });
321  if (superClass) setPrototypeOf(subClass, superClass);
322}
323
324module.exports = _inherits;
325
326/***/ }),
327/* 12 */
328/***/ (function(module, exports, __webpack_require__) {
329
330// Thank's IE8 for his funny defineProperty
331module.exports = !__webpack_require__(25)(function () {
332  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
333});
334
335
336/***/ }),
337/* 13 */
338/***/ (function(module, exports) {
339
340var hasOwnProperty = {}.hasOwnProperty;
341module.exports = function (it, key) {
342  return hasOwnProperty.call(it, key);
343};
344
345
346/***/ }),
347/* 14 */
348/***/ (function(module, exports, __webpack_require__) {
349
350var anObject = __webpack_require__(23);
351var IE8_DOM_DEFINE = __webpack_require__(73);
352var toPrimitive = __webpack_require__(48);
353var dP = Object.defineProperty;
354
355exports.f = __webpack_require__(12) ? Object.defineProperty : function defineProperty(O, P, Attributes) {
356  anObject(O);
357  P = toPrimitive(P, true);
358  anObject(Attributes);
359  if (IE8_DOM_DEFINE) try {
360    return dP(O, P, Attributes);
361  } catch (e) { /* empty */ }
362  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
363  if ('value' in Attributes) O[P] = Attributes.value;
364  return O;
365};
366
367
368/***/ }),
369/* 15 */
370/***/ (function(module, exports, __webpack_require__) {
371
372// to indexed object, toObject with fallback for non-array-like ES3 strings
373var IObject = __webpack_require__(99);
374var defined = __webpack_require__(40);
375module.exports = function (it) {
376  return IObject(defined(it));
377};
378
379
380/***/ }),
381/* 16 */
382/***/ (function(module, exports, __webpack_require__) {
383
384var store = __webpack_require__(52)('wks');
385var uid = __webpack_require__(34);
386var Symbol = __webpack_require__(5).Symbol;
387var USE_SYMBOL = typeof Symbol == 'function';
388
389var $exports = module.exports = function (name) {
390  return store[name] || (store[name] =
391    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
392};
393
394$exports.store = store;
395
396
397/***/ }),
398/* 17 */
399/***/ (function(module, exports) {
400
401module.exports = function (it) {
402  return typeof it === 'object' ? it !== null : typeof it === 'function';
403};
404
405
406/***/ }),
407/* 18 */
408/***/ (function(module, exports, __webpack_require__) {
409
410// Thank's IE8 for his funny defineProperty
411module.exports = !__webpack_require__(24)(function () {
412  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
413});
414
415
416/***/ }),
417/* 19 */
vendor: 8,217 bytes, lines 418-748
418/***/ (function(module, exports) {
419
420module.exports = function (it) {
421  return typeof it === 'object' ? it !== null : typeof it === 'function';
422};
423
424
425/***/ }),
426/* 20 */
427/***/ (function(module, exports, __webpack_require__) {
428
429var isObject = __webpack_require__(19);
430module.exports = function (it) {
431  if (!isObject(it)) throw TypeError(it + ' is not an object!');
432  return it;
433};
434
435
436/***/ }),
437/* 21 */
438/***/ (function(module, exports, __webpack_require__) {
439
440var dP = __webpack_require__(35);
441var createDesc = __webpack_require__(66);
442module.exports = __webpack_require__(18) ? function (object, key, value) {
443  return dP.f(object, key, createDesc(1, value));
444} : function (object, key, value) {
445  object[key] = value;
446  return object;
447};
448
449
450/***/ }),
451/* 22 */
452/***/ (function(module, exports, __webpack_require__) {
453
454var dP = __webpack_require__(14);
455var createDesc = __webpack_require__(31);
456module.exports = __webpack_require__(12) ? function (object, key, value) {
457  return dP.f(object, key, createDesc(1, value));
458} : function (object, key, value) {
459  object[key] = value;
460  return object;
461};
462
463
464/***/ }),
465/* 23 */
466/***/ (function(module, exports, __webpack_require__) {
467
468var isObject = __webpack_require__(17);
469module.exports = function (it) {
470  if (!isObject(it)) throw TypeError(it + ' is not an object!');
471  return it;
472};
473
474
475/***/ }),
476/* 24 */
477/***/ (function(module, exports) {
478
479module.exports = function (exec) {
480  try {
481    return !!exec();
482  } catch (e) {
483    return true;
484  }
485};
486
487
488/***/ }),
489/* 25 */
490/***/ (function(module, exports) {
491
492module.exports = function (exec) {
493  try {
494    return !!exec();
495  } catch (e) {
496    return true;
497  }
498};
499
500
501/***/ }),
502/* 26 */
503/***/ (function(module, exports, __webpack_require__) {
504
505"use strict";
506
507// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
508var $export = __webpack_require__(36);
509var $find = __webpack_require__(97)(5);
510var KEY = 'find';
511var forced = true;
512// Shouldn't skip holes
513if (KEY in []) Array(1)[KEY](function () { forced = false; });
514$export($export.P + $export.F * forced, 'Array', {
515  find: function find(callbackfn /* , that = undefined */) {
516    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
517  }
518});
519__webpack_require__(80)(KEY);
520
521
522/***/ }),
523/* 27 */
524/***/ (function(module, exports, __webpack_require__) {
525
526var global = __webpack_require__(9);
527var hide = __webpack_require__(21);
528var has = __webpack_require__(47);
529var SRC = __webpack_require__(45)('src');
530var $toString = __webpack_require__(85);
531var TO_STRING = 'toString';
532var TPL = ('' + $toString).split(TO_STRING);
533
534__webpack_require__(30).inspectSource = function (it) {
535  return $toString.call(it);
536};
537
538(module.exports = function (O, key, val, safe) {
539  var isFunction = typeof val == 'function';
540  if (isFunction) has(val, 'name') || hide(val, 'name', key);
541  if (O[key] === val) return;
542  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
543  if (O === global) {
544    O[key] = val;
545  } else if (!safe) {
546    delete O[key];
547    hide(O, key, val);
548  } else if (O[key]) {
549    O[key] = val;
550  } else {
551    hide(O, key, val);
552  }
553// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
554})(Function.prototype, TO_STRING, function toString() {
555  return typeof this == 'function' && this[SRC] || $toString.call(this);
556});
557
558
559/***/ }),
560/* 28 */
561/***/ (function(module, exports) {
562
563// 7.2.1 RequireObjectCoercible(argument)
564module.exports = function (it) {
565  if (it == undefined) throw TypeError("Can't call method on  " + it);
566  return it;
567};
568
569
570/***/ }),
571/* 29 */
572/***/ (function(module, exports) {
573
574var toString = {}.toString;
575
576module.exports = function (it) {
577  return toString.call(it).slice(8, -1);
578};
579
580
581/***/ }),
582/* 30 */
583/***/ (function(module, exports) {
584
585var core = module.exports = { version: '2.6.9' };
586if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
587
588
589/***/ }),
590/* 31 */
591/***/ (function(module, exports) {
592
593module.exports = function (bitmap, value) {
594  return {
595    enumerable: !(bitmap & 1),
596    configurable: !(bitmap & 2),
597    writable: !(bitmap & 4),
598    value: value
599  };
600};
601
602
603/***/ }),
604/* 32 */
605/***/ (function(module, exports) {
606
607module.exports = true;
608
609
610/***/ }),
611/* 33 */
612/***/ (function(module, exports, __webpack_require__) {
613
614// 19.1.2.14 / 15.2.3.14 Object.keys(O)
615var $keys = __webpack_require__(77);
616var enumBugKeys = __webpack_require__(53);
617
618module.exports = Object.keys || function keys(O) {
619  return $keys(O, enumBugKeys);
620};
621
622
623/***/ }),
624/* 34 */
625/***/ (function(module, exports) {
626
627var id = 0;
628var px = Math.random();
629module.exports = function (key) {
630  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
631};
632
633
634/***/ }),
635/* 35 */
636/***/ (function(module, exports, __webpack_require__) {
637
638var anObject = __webpack_require__(20);
639var IE8_DOM_DEFINE = __webpack_require__(82);
640var toPrimitive = __webpack_require__(79);
641var dP = Object.defineProperty;
642
643exports.f = __webpack_require__(18) ? Object.defineProperty : function defineProperty(O, P, Attributes) {
644  anObject(O);
645  P = toPrimitive(P, true);
646  anObject(Attributes);
647  if (IE8_DOM_DEFINE) try {
648    return dP(O, P, Attributes);
649  } catch (e) { /* empty */ }
650  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
651  if ('value' in Attributes) O[P] = Attributes.value;
652  return O;
653};
654
655
656/***/ }),
657/* 36 */
658/***/ (function(module, exports, __webpack_require__) {
659
660var global = __webpack_require__(9);
661var core = __webpack_require__(30);
662var hide = __webpack_require__(21);
663var redefine = __webpack_require__(27);
664var ctx = __webpack_require__(57);
665var PROTOTYPE = 'prototype';
666
667var $export = function (type, name, source) {
668  var IS_FORCED = type & $export.F;
669  var IS_GLOBAL = type & $export.G;
670  var IS_STATIC = type & $export.S;
671  var IS_PROTO = type & $export.P;
672  var IS_BIND = type & $export.B;
673  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
674  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
675  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
676  var key, own, out, exp;
677  if (IS_GLOBAL) source = name;
678  for (key in source) {
679    // contains in native
680    own = !IS_FORCED && target && target[key] !== undefined;
681    // export native or passed
682    out = (own ? target : source)[key];
683    // bind timers to global for call from export context
684    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
685    // extend global
686    if (target) redefine(target, key, out, type & $export.U);
687    // export
688    if (exports[key] != out) hide(exports, key, exp);
689    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
690  }
691};
692global.core = core;
693// type bitmap
694$export.F = 1;   // forced
695$export.G = 2;   // global
696$export.S = 4;   // static
697$export.P = 8;   // proto
698$export.B = 16;  // bind
699$export.W = 32;  // wrap
700$export.U = 64;  // safe
701$export.R = 128; // real proto method for `library`
702module.exports = $export;
703
704
705/***/ }),
706/* 37 */
707/***/ (function(module, exports, __webpack_require__) {
708
709// 7.1.13 ToObject(argument)
710var defined = __webpack_require__(40);
711module.exports = function (it) {
712  return Object(defined(it));
713};
714
715
716/***/ }),
717/* 38 */,
718/* 39 */
719/***/ (function(module, exports) {
720
721// 7.1.4 ToInteger
722var ceil = Math.ceil;
723var floor = Math.floor;
724module.exports = function (it) {
725  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
726};
727
728
729/***/ }),
730/* 40 */
731/***/ (function(module, exports) {
732
733// 7.2.1 RequireObjectCoercible(argument)
734module.exports = function (it) {
735  if (it == undefined) throw TypeError("Can't call method on  " + it);
736  return it;
737};
738
739
740/***/ }),
741/* 41 */
742/***/ (function(module, exports) {
743
744module.exports = {};
745
746
747/***/ }),
748/* 42 */
vendor: 4,809 bytes, lines 749-910
749/***/ (function(module, exports) {
750
751exports.f = {}.propertyIsEnumerable;
752
753
754/***/ }),
755/* 43 */
756/***/ (function(module, exports, __webpack_require__) {
757
758// 7.1.15 ToLength
759var toInteger = __webpack_require__(39);
760var min = Math.min;
761module.exports = function (it) {
762  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
763};
764
765
766/***/ }),
767/* 44 */
768/***/ (function(module, exports, __webpack_require__) {
769
770var core = __webpack_require__(30);
771var global = __webpack_require__(9);
772var SHARED = '__core-js_shared__';
773var store = global[SHARED] || (global[SHARED] = {});
774
775(module.exports = function (key, value) {
776  return store[key] || (store[key] = value !== undefined ? value : {});
777})('versions', []).push({
778  version: core.version,
779  mode: __webpack_require__(72) ? 'pure' : 'global',
780  copyright: '© 2019 Denis Pushkarev (zloirock.ru)'
781});
782
783
784/***/ }),
785/* 45 */
786/***/ (function(module, exports) {
787
788var id = 0;
789var px = Math.random();
790module.exports = function (key) {
791  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
792};
793
794
795/***/ }),
796/* 46 */
797/***/ (function(module, exports, __webpack_require__) {
798
799var pIE = __webpack_require__(42);
800var createDesc = __webpack_require__(31);
801var toIObject = __webpack_require__(15);
802var toPrimitive = __webpack_require__(48);
803var has = __webpack_require__(13);
804var IE8_DOM_DEFINE = __webpack_require__(73);
805var gOPD = Object.getOwnPropertyDescriptor;
806
807exports.f = __webpack_require__(12) ? gOPD : function getOwnPropertyDescriptor(O, P) {
808  O = toIObject(O);
809  P = toPrimitive(P, true);
810  if (IE8_DOM_DEFINE) try {
811    return gOPD(O, P);
812  } catch (e) { /* empty */ }
813  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
814};
815
816
817/***/ }),
818/* 47 */
819/***/ (function(module, exports) {
820
821var hasOwnProperty = {}.hasOwnProperty;
822module.exports = function (it, key) {
823  return hasOwnProperty.call(it, key);
824};
825
826
827/***/ }),
828/* 48 */
829/***/ (function(module, exports, __webpack_require__) {
830
831// 7.1.1 ToPrimitive(input [, PreferredType])
832var isObject = __webpack_require__(17);
833// instead of the ES6 spec version, we didn't implement @@toPrimitive case
834// and the second argument - flag - preferred type is a string
835module.exports = function (it, S) {
836  if (!isObject(it)) return it;
837  var fn, val;
838  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
839  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
840  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
841  throw TypeError("Can't convert object to primitive value");
842};
843
844
845/***/ }),
846/* 49 */
847/***/ (function(module, exports) {
848
849// 7.1.4 ToInteger
850var ceil = Math.ceil;
851var floor = Math.floor;
852module.exports = function (it) {
853  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
854};
855
856
857/***/ }),
858/* 50 */
859/***/ (function(module, exports, __webpack_require__) {
860
861// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
862var anObject = __webpack_require__(23);
863var dPs = __webpack_require__(98);
864var enumBugKeys = __webpack_require__(53);
865var IE_PROTO = __webpack_require__(51)('IE_PROTO');
866var Empty = function () { /* empty */ };
867var PROTOTYPE = 'prototype';
868
869// Create object with fake `null` prototype: use iframe Object with cleared prototype
870var createDict = function () {
871  // Thrash, waste and sodomy: IE GC bug
872  var iframe = __webpack_require__(74)('iframe');
873  var i = enumBugKeys.length;
874  var lt = '<';
875  var gt = '>';
876  var iframeDocument;
877  iframe.style.display = 'none';
878  __webpack_require__(116).appendChild(iframe);
879  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
880  // createDict = iframe.contentWindow.Object;
881  // html.removeChild(iframe);
882  iframeDocument = iframe.contentWindow.document;
883  iframeDocument.open();
884  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
885  iframeDocument.close();
886  createDict = iframeDocument.F;
887  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
888  return createDict();
889};
890
891module.exports = Object.create || function create(O, Properties) {
892  var result;
893  if (O !== null) {
894    Empty[PROTOTYPE] = anObject(O);
895    result = new Empty();
896    Empty[PROTOTYPE] = null;
897    // add "__proto__" for Object.getPrototypeOf polyfill
898    result[IE_PROTO] = O;
899  } else result = createDict();
900  return Properties === undefined ? result : dPs(result, Properties);
901};
902
903
904/***/ }),
905/* 51 */
906/***/ (function(module, exports, __webpack_require__) {
907
908var shared = __webpack_require__(52)('keys');
909var uid = __webpack_require__(34);
910module.exports = function (key) {
vendor: 4,627 bytes, lines 911-1077
911  return shared[key] || (shared[key] = uid(key));
912};
913
914
915/***/ }),
916/* 52 */
917/***/ (function(module, exports, __webpack_require__) {
918
919var core = __webpack_require__(1);
920var global = __webpack_require__(5);
921var SHARED = '__core-js_shared__';
922var store = global[SHARED] || (global[SHARED] = {});
923
924(module.exports = function (key, value) {
925  return store[key] || (store[key] = value !== undefined ? value : {});
926})('versions', []).push({
927  version: core.version,
928  mode: __webpack_require__(32) ? 'pure' : 'global',
929  copyright: '© 2019 Denis Pushkarev (zloirock.ru)'
930});
931
932
933/***/ }),
934/* 53 */
935/***/ (function(module, exports) {
936
937// IE 8- don't enum bug keys
938module.exports = (
939  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
940).split(',');
941
942
943/***/ }),
944/* 54 */
945/***/ (function(module, exports, __webpack_require__) {
946
947var def = __webpack_require__(14).f;
948var has = __webpack_require__(13);
949var TAG = __webpack_require__(16)('toStringTag');
950
951module.exports = function (it, tag, stat) {
952  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
953};
954
955
956/***/ }),
957/* 55 */
958/***/ (function(module, exports, __webpack_require__) {
959
960exports.f = __webpack_require__(16);
961
962
963/***/ }),
964/* 56 */
965/***/ (function(module, exports, __webpack_require__) {
966
967var global = __webpack_require__(5);
968var core = __webpack_require__(1);
969var LIBRARY = __webpack_require__(32);
970var wksExt = __webpack_require__(55);
971var defineProperty = __webpack_require__(14).f;
972module.exports = function (name) {
973  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
974  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
975};
976
977
978/***/ }),
979/* 57 */
980/***/ (function(module, exports, __webpack_require__) {
981
982// optional / simple context binding
983var aFunction = __webpack_require__(60);
984module.exports = function (fn, that, length) {
985  aFunction(fn);
986  if (that === undefined) return fn;
987  switch (length) {
988    case 1: return function (a) {
989      return fn.call(that, a);
990    };
991    case 2: return function (a, b) {
992      return fn.call(that, a, b);
993    };
994    case 3: return function (a, b, c) {
995      return fn.call(that, a, b, c);
996    };
997  }
998  return function (/* ...args */) {
999    return fn.apply(that, arguments);
1000  };
1001};
1002
1003
1004/***/ }),
1005/* 58 */
1006/***/ (function(module, exports, __webpack_require__) {
1007
1008// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
1009var has = __webpack_require__(13);
1010var toObject = __webpack_require__(37);
1011var IE_PROTO = __webpack_require__(51)('IE_PROTO');
1012var ObjectProto = Object.prototype;
1013
1014module.exports = Object.getPrototypeOf || function (O) {
1015  O = toObject(O);
1016  if (has(O, IE_PROTO)) return O[IE_PROTO];
1017  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
1018    return O.constructor.prototype;
1019  } return O instanceof Object ? ObjectProto : null;
1020};
1021
1022
1023/***/ }),
1024/* 59 */
1025/***/ (function(module, exports, __webpack_require__) {
1026
1027module.exports = __webpack_require__(156);
1028
1029/***/ }),
1030/* 60 */
1031/***/ (function(module, exports) {
1032
1033module.exports = function (it) {
1034  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
1035  return it;
1036};
1037
1038
1039/***/ }),
1040/* 61 */
1041/***/ (function(module, exports, __webpack_require__) {
1042
1043// 7.1.13 ToObject(argument)
1044var defined = __webpack_require__(28);
1045module.exports = function (it) {
1046  return Object(defined(it));
1047};
1048
1049
1050/***/ }),
1051/* 62 */
1052/***/ (function(module, exports, __webpack_require__) {
1053
1054var _Symbol$iterator = __webpack_require__(110);
1055
1056var _Symbol = __webpack_require__(120);
1057
1058function _typeof2(obj) { if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof2(obj); }
1059
1060function _typeof(obj) {
1061  if (typeof _Symbol === "function" && _typeof2(_Symbol$iterator) === "symbol") {
1062    module.exports = _typeof = function _typeof(obj) {
1063      return _typeof2(obj);
1064    };
1065  } else {
1066    module.exports = _typeof = function _typeof(obj) {
1067      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : _typeof2(obj);
1068    };
1069  }
1070
1071  return _typeof(obj);
1072}
1073
1074module.exports = _typeof;
1075
1076/***/ }),
1077/* 63 */
vendor: 8,600 bytes, lines 1078-1348
1078/***/ (function(module, exports) {
1079
1080var toString = {}.toString;
1081
1082module.exports = function (it) {
1083  return toString.call(it).slice(8, -1);
1084};
1085
1086
1087/***/ }),
1088/* 64 */
1089/***/ (function(module, exports) {
1090
1091exports.f = Object.getOwnPropertySymbols;
1092
1093
1094/***/ }),
1095/* 65 */
1096/***/ (function(module, exports, __webpack_require__) {
1097
1098"use strict";
1099
1100
1101var regexpFlags = __webpack_require__(89);
1102
1103var nativeExec = RegExp.prototype.exec;
1104// This always refers to the native implementation, because the
1105// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
1106// which loads this file before patching the method.
1107var nativeReplace = String.prototype.replace;
1108
1109var patchedExec = nativeExec;
1110
1111var LAST_INDEX = 'lastIndex';
1112
1113var UPDATES_LAST_INDEX_WRONG = (function () {
1114  var re1 = /a/,
1115      re2 = /b*/g;
1116  nativeExec.call(re1, 'a');
1117  nativeExec.call(re2, 'a');
1118  return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
1119})();
1120
1121// nonparticipating capturing group, copied from es5-shim's String#split patch.
1122var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
1123
1124var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;
1125
1126if (PATCH) {
1127  patchedExec = function exec(str) {
1128    var re = this;
1129    var lastIndex, reCopy, match, i;
1130
1131    if (NPCG_INCLUDED) {
1132      reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
1133    }
1134    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];
1135
1136    match = nativeExec.call(re, str);
1137
1138    if (UPDATES_LAST_INDEX_WRONG && match) {
1139      re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
1140    }
1141    if (NPCG_INCLUDED && match && match.length > 1) {
1142      // Fix browsers whose `exec` methods don't consistently return `undefined`
1143      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
1144      // eslint-disable-next-line no-loop-func
1145      nativeReplace.call(match[0], reCopy, function () {
1146        for (i = 1; i < arguments.length - 2; i++) {
1147          if (arguments[i] === undefined) match[i] = undefined;
1148        }
1149      });
1150    }
1151
1152    return match;
1153  };
1154}
1155
1156module.exports = patchedExec;
1157
1158
1159/***/ }),
1160/* 66 */
1161/***/ (function(module, exports) {
1162
1163module.exports = function (bitmap, value) {
1164  return {
1165    enumerable: !(bitmap & 1),
1166    configurable: !(bitmap & 2),
1167    writable: !(bitmap & 4),
1168    value: value
1169  };
1170};
1171
1172
1173/***/ }),
1174/* 67 */
1175/***/ (function(module, exports, __webpack_require__) {
1176
1177"use strict";
1178
1179
1180var anObject = __webpack_require__(20);
1181var toObject = __webpack_require__(61);
1182var toLength = __webpack_require__(43);
1183var toInteger = __webpack_require__(39);
1184var advanceStringIndex = __webpack_require__(92);
1185var regExpExec = __webpack_require__(83);
1186var max = Math.max;
1187var min = Math.min;
1188var floor = Math.floor;
1189var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
1190var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;
1191
1192var maybeToString = function (it) {
1193  return it === undefined ? it : String(it);
1194};
1195
1196// @@replace logic
1197__webpack_require__(84)('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
1198  return [
1199    // `String.prototype.replace` method
1200    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
1201    function replace(searchValue, replaceValue) {
1202      var O = defined(this);
1203      var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
1204      return fn !== undefined
1205        ? fn.call(searchValue, O, replaceValue)
1206        : $replace.call(String(O), searchValue, replaceValue);
1207    },
1208    // `RegExp.prototype[@@replace]` method
1209    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
1210    function (regexp, replaceValue) {
1211      var res = maybeCallNative($replace, regexp, this, replaceValue);
1212      if (res.done) return res.value;
1213
1214      var rx = anObject(regexp);
1215      var S = String(this);
1216      var functionalReplace = typeof replaceValue === 'function';
1217      if (!functionalReplace) replaceValue = String(replaceValue);
1218      var global = rx.global;
1219      if (global) {
1220        var fullUnicode = rx.unicode;
1221        rx.lastIndex = 0;
1222      }
1223      var results = [];
1224      while (true) {
1225        var result = regExpExec(rx, S);
1226        if (result === null) break;
1227        results.push(result);
1228        if (!global) break;
1229        var matchStr = String(result[0]);
1230        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
1231      }
1232      var accumulatedResult = '';
1233      var nextSourcePosition = 0;
1234      for (var i = 0; i < results.length; i++) {
1235        result = results[i];
1236        var matched = String(result[0]);
1237        var position = max(min(toInteger(result.index), S.length), 0);
1238        var captures = [];
1239        // NOTE: This is equivalent to
1240        //   captures = result.slice(1).map(maybeToString)
1241        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
1242        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
1243        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
1244        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
1245        var namedCaptures = result.groups;
1246        if (functionalReplace) {
1247          var replacerArgs = [matched].concat(captures, position, S);
1248          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
1249          var replacement = String(replaceValue.apply(undefined, replacerArgs));
1250        } else {
1251          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
1252        }
1253        if (position >= nextSourcePosition) {
1254          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
1255          nextSourcePosition = position + matched.length;
1256        }
1257      }
1258      return accumulatedResult + S.slice(nextSourcePosition);
1259    }
1260  ];
1261
1262    // https://tc39.github.io/ecma262/#sec-getsubstitution
1263  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
1264    var tailPos = position + matched.length;
1265    var m = captures.length;
1266    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
1267    if (namedCaptures !== undefined) {
1268      namedCaptures = toObject(namedCaptures);
1269      symbols = SUBSTITUTION_SYMBOLS;
1270    }
1271    return $replace.call(replacement, symbols, function (match, ch) {
1272      var capture;
1273      switch (ch.charAt(0)) {
1274        case '$': return '$';
1275        case '&': return matched;
1276        case '`': return str.slice(0, position);
1277        case "'": return str.slice(tailPos);
1278        case '<':
1279          capture = namedCaptures[ch.slice(1, -1)];
1280          break;
1281        default: // \d\d?
1282          var n = +ch;
1283          if (n === 0) return match;
1284          if (n > m) {
1285            var f = floor(n / 10);
1286            if (f === 0) return match;
1287            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
1288            return match;
1289          }
1290          capture = captures[n - 1];
1291      }
1292      return capture === undefined ? '' : capture;
1293    });
1294  }
1295});
1296
1297
1298/***/ }),
1299/* 68 */
1300/***/ (function(module, exports, __webpack_require__) {
1301
1302// optional / simple context binding
1303var aFunction = __webpack_require__(109);
1304module.exports = function (fn, that, length) {
1305  aFunction(fn);
1306  if (that === undefined) return fn;
1307  switch (length) {
1308    case 1: return function (a) {
1309      return fn.call(that, a);
1310    };
1311    case 2: return function (a, b) {
1312      return fn.call(that, a, b);
1313    };
1314    case 3: return function (a, b, c) {
1315      return fn.call(that, a, b, c);
1316    };
1317  }
1318  return function (/* ...args */) {
1319    return fn.apply(that, arguments);
1320  };
1321};
1322
1323
1324/***/ }),
1325/* 69 */
1326/***/ (function(module, exports, __webpack_require__) {
1327
1328// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
1329var $keys = __webpack_require__(77);
1330var hiddenKeys = __webpack_require__(53).concat('length', 'prototype');
1331
1332exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
1333  return $keys(O, hiddenKeys);
1334};
1335
1336
1337/***/ }),
1338/* 70 */
1339/***/ (function(module, exports, __webpack_require__) {
1340
1341// most Object methods by ES6 should accept primitives
1342var $export = __webpack_require__(3);
1343var core = __webpack_require__(1);
1344var fails = __webpack_require__(25);
1345module.exports = function (KEY, exec) {
1346  var fn = (core.Object || {})[KEY] || Object[KEY];
1347  var exp = {};
1348  exp[KEY] = exec(fn);
vendor: 5,807 bytes, lines 1349-1522
1349  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
1350};
1351
1352
1353/***/ }),
1354/* 71 */
1355/***/ (function(module, exports, __webpack_require__) {
1356
1357var isObject = __webpack_require__(19);
1358var document = __webpack_require__(9).document;
1359// typeof document.createElement is 'object' in old IE
1360var is = isObject(document) && isObject(document.createElement);
1361module.exports = function (it) {
1362  return is ? document.createElement(it) : {};
1363};
1364
1365
1366/***/ }),
1367/* 72 */
1368/***/ (function(module, exports) {
1369
1370module.exports = false;
1371
1372
1373/***/ }),
1374/* 73 */
1375/***/ (function(module, exports, __webpack_require__) {
1376
1377module.exports = !__webpack_require__(12) && !__webpack_require__(25)(function () {
1378  return Object.defineProperty(__webpack_require__(74)('div'), 'a', { get: function () { return 7; } }).a != 7;
1379});
1380
1381
1382/***/ }),
1383/* 74 */
1384/***/ (function(module, exports, __webpack_require__) {
1385
1386var isObject = __webpack_require__(17);
1387var document = __webpack_require__(5).document;
1388// typeof document.createElement is 'object' in old IE
1389var is = isObject(document) && isObject(document.createElement);
1390module.exports = function (it) {
1391  return is ? document.createElement(it) : {};
1392};
1393
1394
1395/***/ }),
1396/* 75 */
1397/***/ (function(module, exports, __webpack_require__) {
1398
1399"use strict";
1400
1401var LIBRARY = __webpack_require__(32);
1402var $export = __webpack_require__(3);
1403var redefine = __webpack_require__(76);
1404var hide = __webpack_require__(22);
1405var Iterators = __webpack_require__(41);
1406var $iterCreate = __webpack_require__(113);
1407var setToStringTag = __webpack_require__(54);
1408var getPrototypeOf = __webpack_require__(58);
1409var ITERATOR = __webpack_require__(16)('iterator');
1410var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
1411var FF_ITERATOR = '@@iterator';
1412var KEYS = 'keys';
1413var VALUES = 'values';
1414
1415var returnThis = function () { return this; };
1416
1417module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
1418  $iterCreate(Constructor, NAME, next);
1419  var getMethod = function (kind) {
1420    if (!BUGGY && kind in proto) return proto[kind];
1421    switch (kind) {
1422      case KEYS: return function keys() { return new Constructor(this, kind); };
1423      case VALUES: return function values() { return new Constructor(this, kind); };
1424    } return function entries() { return new Constructor(this, kind); };
1425  };
1426  var TAG = NAME + ' Iterator';
1427  var DEF_VALUES = DEFAULT == VALUES;
1428  var VALUES_BUG = false;
1429  var proto = Base.prototype;
1430  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
1431  var $default = $native || getMethod(DEFAULT);
1432  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
1433  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
1434  var methods, key, IteratorPrototype;
1435  // Fix native
1436  if ($anyNative) {
1437    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
1438    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
1439      // Set @@toStringTag to native iterators
1440      setToStringTag(IteratorPrototype, TAG, true);
1441      // fix for some old engines
1442      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
1443    }
1444  }
1445  // fix Array#{values, @@iterator}.name in V8 / FF
1446  if (DEF_VALUES && $native && $native.name !== VALUES) {
1447    VALUES_BUG = true;
1448    $default = function values() { return $native.call(this); };
1449  }
1450  // Define iterator
1451  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
1452    hide(proto, ITERATOR, $default);
1453  }
1454  // Plug for library
1455  Iterators[NAME] = $default;
1456  Iterators[TAG] = returnThis;
1457  if (DEFAULT) {
1458    methods = {
1459      values: DEF_VALUES ? $default : getMethod(VALUES),
1460      keys: IS_SET ? $default : getMethod(KEYS),
1461      entries: $entries
1462    };
1463    if (FORCED) for (key in methods) {
1464      if (!(key in proto)) redefine(proto, key, methods[key]);
1465    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
1466  }
1467  return methods;
1468};
1469
1470
1471/***/ }),
1472/* 76 */
1473/***/ (function(module, exports, __webpack_require__) {
1474
1475module.exports = __webpack_require__(22);
1476
1477
1478/***/ }),
1479/* 77 */
1480/***/ (function(module, exports, __webpack_require__) {
1481
1482var has = __webpack_require__(13);
1483var toIObject = __webpack_require__(15);
1484var arrayIndexOf = __webpack_require__(114)(false);
1485var IE_PROTO = __webpack_require__(51)('IE_PROTO');
1486
1487module.exports = function (object, names) {
1488  var O = toIObject(object);
1489  var i = 0;
1490  var result = [];
1491  var key;
1492  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
1493  // Don't enum bug & hidden keys
1494  while (names.length > i) if (has(O, key = names[i++])) {
1495    ~arrayIndexOf(result, key) || result.push(key);
1496  }
1497  return result;
1498};
1499
1500
1501/***/ }),
1502/* 78 */
1503/***/ (function(module, exports, __webpack_require__) {
1504
1505module.exports = __webpack_require__(130);
1506
1507/***/ }),
1508/* 79 */
1509/***/ (function(module, exports, __webpack_require__) {
1510
1511// 7.1.1 ToPrimitive(input [, PreferredType])
1512var isObject = __webpack_require__(19);
1513// instead of the ES6 spec version, we didn't implement @@toPrimitive case
1514// and the second argument - flag - preferred type is a string
1515module.exports = function (it, S) {
1516  if (!isObject(it)) return it;
1517  var fn, val;
1518  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
1519  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
1520  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
1521  throw TypeError("Can't convert object to primitive value");
1522};
vendor: 4,904 bytes, lines 1523-1681
1523
1524
1525/***/ }),
1526/* 80 */
1527/***/ (function(module, exports, __webpack_require__) {
1528
1529// 22.1.3.31 Array.prototype[@@unscopables]
1530var UNSCOPABLES = __webpack_require__(8)('unscopables');
1531var ArrayProto = Array.prototype;
1532if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(21)(ArrayProto, UNSCOPABLES, {});
1533module.exports = function (key) {
1534  ArrayProto[UNSCOPABLES][key] = true;
1535};
1536
1537
1538/***/ }),
1539/* 81 */
1540/***/ (function(module, exports) {
1541
1542function _assertThisInitialized(self) {
1543  if (self === void 0) {
1544    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
1545  }
1546
1547  return self;
1548}
1549
1550module.exports = _assertThisInitialized;
1551
1552/***/ }),
1553/* 82 */
1554/***/ (function(module, exports, __webpack_require__) {
1555
1556module.exports = !__webpack_require__(18) && !__webpack_require__(24)(function () {
1557  return Object.defineProperty(__webpack_require__(71)('div'), 'a', { get: function () { return 7; } }).a != 7;
1558});
1559
1560
1561/***/ }),
1562/* 83 */
1563/***/ (function(module, exports, __webpack_require__) {
1564
1565"use strict";
1566
1567
1568var classof = __webpack_require__(88);
1569var builtinExec = RegExp.prototype.exec;
1570
1571 // `RegExpExec` abstract operation
1572// https://tc39.github.io/ecma262/#sec-regexpexec
1573module.exports = function (R, S) {
1574  var exec = R.exec;
1575  if (typeof exec === 'function') {
1576    var result = exec.call(R, S);
1577    if (typeof result !== 'object') {
1578      throw new TypeError('RegExp exec method returned something other than an Object or null');
1579    }
1580    return result;
1581  }
1582  if (classof(R) !== 'RegExp') {
1583    throw new TypeError('RegExp#exec called on incompatible receiver');
1584  }
1585  return builtinExec.call(R, S);
1586};
1587
1588
1589/***/ }),
1590/* 84 */
1591/***/ (function(module, exports, __webpack_require__) {
1592
1593"use strict";
1594
1595__webpack_require__(138);
1596var redefine = __webpack_require__(27);
1597var hide = __webpack_require__(21);
1598var fails = __webpack_require__(24);
1599var defined = __webpack_require__(28);
1600var wks = __webpack_require__(8);
1601var regexpExec = __webpack_require__(65);
1602
1603var SPECIES = wks('species');
1604
1605var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
1606  // #replace needs built-in support for named groups.
1607  // #match works fine because it just return the exec results, even if it has
1608  // a "grops" property.
1609  var re = /./;
1610  re.exec = function () {
1611    var result = [];
1612    result.groups = { a: '7' };
1613    return result;
1614  };
1615  return ''.replace(re, '$<a>') !== '7';
1616});
1617
1618var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
1619  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
1620  var re = /(?:)/;
1621  var originalExec = re.exec;
1622  re.exec = function () { return originalExec.apply(this, arguments); };
1623  var result = 'ab'.split(re);
1624  return result.length === 2 && result[0] === 'a' && result[1] === 'b';
1625})();
1626
1627module.exports = function (KEY, length, exec) {
1628  var SYMBOL = wks(KEY);
1629
1630  var DELEGATES_TO_SYMBOL = !fails(function () {
1631    // String methods call symbol-named RegEp methods
1632    var O = {};
1633    O[SYMBOL] = function () { return 7; };
1634    return ''[KEY](O) != 7;
1635  });
1636
1637  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
1638    // Symbol-named RegExp methods call .exec
1639    var execCalled = false;
1640    var re = /a/;
1641    re.exec = function () { execCalled = true; return null; };
1642    if (KEY === 'split') {
1643      // RegExp[@@split] doesn't call the regex's exec method, but first creates
1644      // a new one. We need to return the patched regex when creating the new one.
1645      re.constructor = {};
1646      re.constructor[SPECIES] = function () { return re; };
1647    }
1648    re[SYMBOL]('');
1649    return !execCalled;
1650  }) : undefined;
1651
1652  if (
1653    !DELEGATES_TO_SYMBOL ||
1654    !DELEGATES_TO_EXEC ||
1655    (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
1656    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
1657  ) {
1658    var nativeRegExpMethod = /./[SYMBOL];
1659    var fns = exec(
1660      defined,
1661      SYMBOL,
1662      ''[KEY],
1663      function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
1664        if (regexp.exec === regexpExec) {
1665          if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
1666            // The native String method already delegates to @@method (this
1667            // polyfilled function), leasing to infinite recursion.
1668            // We avoid it by directly calling the native @@method method.
1669            return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
1670          }
1671          return { done: true, value: nativeMethod.call(str, regexp, arg2) };
1672        }
1673        return { done: false };
1674      }
1675    );
1676    var strfn = fns[0];
1677    var rxfn = fns[1];
1678
1679    redefine(String.prototype, KEY, strfn);
1680    hide(RegExp.prototype, SYMBOL, length == 2
1681      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
1682      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
1683      ? function (string, arg) { return rxfn.call(string, this, arg); }
1684      // 21.2.5.6 RegExp.prototype[@@match](string)
1685      // 21.2.5.9 RegExp.prototype[@@search](string)
1686      : function (string) { return rxfn.call(string, this); }
1687    );
1688  }
1689};
1690
1691
1692/***/ }),
1693/* 85 */
1694/***/ (function(module, exports, __webpack_require__) {
1695
1696module.exports = __webpack_require__(44)('native-function-to-string', Function.toString);
1697
1698
1699/***/ }),
1700/* 86 */
1701/***/ (function(module, exports, __webpack_require__) {
1702
1703// fallback for non-array-like ES3 and non-enumerable old V8 strings
1704var cof = __webpack_require__(29);
1705// eslint-disable-next-line no-prototype-builtins
1706module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
1707  return cof(it) == 'String' ? it.split('') : Object(it);
1708};
1709
1710
1711/***/ }),
1712/* 87 */,
1713/* 88 */
1714/***/ (function(module, exports, __webpack_require__) {
1715
1716// getting tag from 19.1.3.6 Object.prototype.toString()
1717var cof = __webpack_require__(29);
1718var TAG = __webpack_require__(8)('toStringTag');
1719// ES3 wrong here
1720var ARG = cof(function () { return arguments; }()) == 'Arguments';
1721
1722// fallback for IE11 Script Access Denied error
1723var tryGet = function (it, key) {
1724  try {
1725    return it[key];
1726  } catch (e) { /* empty */ }
1727};
1728
1729module.exports = function (it) {
1730  var O, T, B;
1731  return it === undefined ? 'Undefined' : it === null ? 'Null'
1732    // @@toStringTag case
1733    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
1734    // builtinTag case
1735    : ARG ? cof(O)
1736    // ES3 arguments fallback
1737    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
1738};
1739
1740
1741/***/ }),
1742/* 89 */
1743/***/ (function(module, exports, __webpack_require__) {
1744
1745"use strict";
1746
1747// 21.2.5.3 get RegExp.prototype.flags
1748var anObject = __webpack_require__(20);
1749module.exports = function () {
1750  var that = anObject(this);
1751  var result = '';
1752  if (that.global) result += 'g';
1753  if (that.ignoreCase) result += 'i';
1754  if (that.multiline) result += 'm';
1755  if (that.unicode) result += 'u';
1756  if (that.sticky) result += 'y';
1757  return result;
1758};
1759
1760
1761/***/ }),
1762/* 90 */
1763/***/ (function(module, exports, __webpack_require__) {
1764
1765"use strict";
1766
1767var $at = __webpack_require__(112)(true);
1768
1769// 21.1.3.27 String.prototype[@@iterator]()
1770__webpack_require__(75)(String, 'String', function (iterated) {
1771  this._t = String(iterated); // target
1772  this._i = 0;                // next index
1773// 21.1.5.2.1 %StringIteratorPrototype%.next()
1774}, function () {
1775  var O = this._t;
1776  var index = this._i;
1777  var point;
1778  if (index >= O.length) return { value: undefined, done: true };
1779  point = $at(O, index);
1780  this._i += point.length;
1781  return { value: point, done: false };
1782});
1783
1784
1785/***/ }),
1786/* 91 */
1787/***/ (function(module, exports, __webpack_require__) {
1788
1789module.exports = __webpack_require__(133);
1790
1791/***/ }),
1792/* 92 */
1793/***/ (function(module, exports, __webpack_require__) {
1794
1795"use strict";
1796
1797var at = __webpack_require__(137)(true);
1798
1799 // `AdvanceStringIndex` abstract operation
1800// https://tc39.github.io/ecma262/#sec-advancestringindex
1801module.exports = function (S, index, unicode) {
1802  return index + (unicode ? at(S, index).length : 1);
1803};
1804
1805
1806/***/ }),
1807/* 93 */
1808/***/ (function(module, exports, __webpack_require__) {
1809
1810__webpack_require__(117);
1811var global = __webpack_require__(5);
1812var hide = __webpack_require__(22);
1813var Iterators = __webpack_require__(41);
1814var TO_STRING_TAG = __webpack_require__(16)('toStringTag');
1815
1816var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
1817  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
1818  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
1819  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
1820  'TextTrackList,TouchList').split(',');
1821
1822for (var i = 0; i < DOMIterables.length; i++) {
1823  var NAME = DOMIterables[i];
1824  var Collection = global[NAME];
1825  var proto = Collection && Collection.prototype;
1826  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
1827  Iterators[NAME] = Iterators.Array;
1828}
1829
1830
1831/***/ }),
1832/* 94 */
1833/***/ (function(module, exports, __webpack_require__) {
1834
1835// 7.2.2 IsArray(argument)
1836var cof = __webpack_require__(63);
1837module.exports = Array.isArray || function isArray(arg) {
1838  return cof(arg) == 'Array';
1839};
1840
1841
1842/***/ }),
1843/* 95 */
1844/***/ (function(module, exports, __webpack_require__) {
1845
1846var _Object$getOwnPropertyDescriptor = __webpack_require__(145);
1847
1848var _Reflect$get = __webpack_require__(160);
1849
1850var getPrototypeOf = __webpack_require__(4);
1851
1852var superPropBase = __webpack_require__(163);
1853
1854function _get(target, property, receiver) {
1855  if (typeof Reflect !== "undefined" && _Reflect$get) {
1856    module.exports = _get = _Reflect$get;
1857  } else {
1858    module.exports = _get = function _get(target, property, receiver) {
1859      var base = superPropBase(target, property);
1860      if (!base) return;
1861
1862      var desc = _Object$getOwnPropertyDescriptor(base, property);
1863
1864      if (desc.get) {
1865        return desc.get.call(receiver);
1866      }
1867
1868      return desc.value;
1869    };
1870  }
1871
1872  return _get(target, property, receiver || target);
1873}
1874
1875module.exports = _get;
1876
1877/***/ }),
1878/* 96 */
1879/***/ (function(module, exports, __webpack_require__) {
1880
1881"use strict";
1882
1883
1884var anObject = __webpack_require__(20);
vendor: 10,384 bytes, lines 1885-2187
1885var toLength = __webpack_require__(43);
1886var advanceStringIndex = __webpack_require__(92);
1887var regExpExec = __webpack_require__(83);
1888
1889// @@match logic
1890__webpack_require__(84)('match', 1, function (defined, MATCH, $match, maybeCallNative) {
1891  return [
1892    // `String.prototype.match` method
1893    // https://tc39.github.io/ecma262/#sec-string.prototype.match
1894    function match(regexp) {
1895      var O = defined(this);
1896      var fn = regexp == undefined ? undefined : regexp[MATCH];
1897      return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
1898    },
1899    // `RegExp.prototype[@@match]` method
1900    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
1901    function (regexp) {
1902      var res = maybeCallNative($match, regexp, this);
1903      if (res.done) return res.value;
1904      var rx = anObject(regexp);
1905      var S = String(this);
1906      if (!rx.global) return regExpExec(rx, S);
1907      var fullUnicode = rx.unicode;
1908      rx.lastIndex = 0;
1909      var A = [];
1910      var n = 0;
1911      var result;
1912      while ((result = regExpExec(rx, S)) !== null) {
1913        var matchStr = String(result[0]);
1914        A[n] = matchStr;
1915        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
1916        n++;
1917      }
1918      return n === 0 ? null : A;
1919    }
1920  ];
1921});
1922
1923
1924/***/ }),
1925/* 97 */
1926/***/ (function(module, exports, __webpack_require__) {
1927
1928// 0 -> Array#forEach
1929// 1 -> Array#map
1930// 2 -> Array#filter
1931// 3 -> Array#some
1932// 4 -> Array#every
1933// 5 -> Array#find
1934// 6 -> Array#findIndex
1935var ctx = __webpack_require__(57);
1936var IObject = __webpack_require__(86);
1937var toObject = __webpack_require__(61);
1938var toLength = __webpack_require__(43);
1939var asc = __webpack_require__(104);
1940module.exports = function (TYPE, $create) {
1941  var IS_MAP = TYPE == 1;
1942  var IS_FILTER = TYPE == 2;
1943  var IS_SOME = TYPE == 3;
1944  var IS_EVERY = TYPE == 4;
1945  var IS_FIND_INDEX = TYPE == 6;
1946  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
1947  var create = $create || asc;
1948  return function ($this, callbackfn, that) {
1949    var O = toObject($this);
1950    var self = IObject(O);
1951    var f = ctx(callbackfn, that, 3);
1952    var length = toLength(self.length);
1953    var index = 0;
1954    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
1955    var val, res;
1956    for (;length > index; index++) if (NO_HOLES || index in self) {
1957      val = self[index];
1958      res = f(val, index, O);
1959      if (TYPE) {
1960        if (IS_MAP) result[index] = res;   // map
1961        else if (res) switch (TYPE) {
1962          case 3: return true;             // some
1963          case 5: return val;              // find
1964          case 6: return index;            // findIndex
1965          case 2: result.push(val);        // filter
1966        } else if (IS_EVERY) return false; // every
1967      }
1968    }
1969    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
1970  };
1971};
1972
1973
1974/***/ }),
1975/* 98 */
1976/***/ (function(module, exports, __webpack_require__) {
1977
1978var dP = __webpack_require__(14);
1979var anObject = __webpack_require__(23);
1980var getKeys = __webpack_require__(33);
1981
1982module.exports = __webpack_require__(12) ? Object.defineProperties : function defineProperties(O, Properties) {
1983  anObject(O);
1984  var keys = getKeys(Properties);
1985  var length = keys.length;
1986  var i = 0;
1987  var P;
1988  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
1989  return O;
1990};
1991
1992
1993/***/ }),
1994/* 99 */
1995/***/ (function(module, exports, __webpack_require__) {
1996
1997// fallback for non-array-like ES3 and non-enumerable old V8 strings
1998var cof = __webpack_require__(63);
1999// eslint-disable-next-line no-prototype-builtins
2000module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
2001  return cof(it) == 'String' ? it.split('') : Object(it);
2002};
2003
2004
2005/***/ }),
2006/* 100 */
2007/***/ (function(module, exports, __webpack_require__) {
2008
2009// 7.1.15 ToLength
2010var toInteger = __webpack_require__(49);
2011var min = Math.min;
2012module.exports = function (it) {
2013  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
2014};
2015
2016
2017/***/ }),
2018/* 101 */
2019/***/ (function(module, exports, __webpack_require__) {
2020
2021"use strict";
2022
2023// ECMAScript 6 symbols shim
2024var global = __webpack_require__(5);
2025var has = __webpack_require__(13);
2026var DESCRIPTORS = __webpack_require__(12);
2027var $export = __webpack_require__(3);
2028var redefine = __webpack_require__(76);
2029var META = __webpack_require__(122).KEY;
2030var $fails = __webpack_require__(25);
2031var shared = __webpack_require__(52);
2032var setToStringTag = __webpack_require__(54);
2033var uid = __webpack_require__(34);
2034var wks = __webpack_require__(16);
2035var wksExt = __webpack_require__(55);
2036var wksDefine = __webpack_require__(56);
2037var enumKeys = __webpack_require__(123);
2038var isArray = __webpack_require__(94);
2039var anObject = __webpack_require__(23);
2040var isObject = __webpack_require__(17);
2041var toObject = __webpack_require__(37);
2042var toIObject = __webpack_require__(15);
2043var toPrimitive = __webpack_require__(48);
2044var createDesc = __webpack_require__(31);
2045var _create = __webpack_require__(50);
2046var gOPNExt = __webpack_require__(124);
2047var $GOPD = __webpack_require__(46);
2048var $GOPS = __webpack_require__(64);
2049var $DP = __webpack_require__(14);
2050var $keys = __webpack_require__(33);
2051var gOPD = $GOPD.f;
2052var dP = $DP.f;
2053var gOPN = gOPNExt.f;
2054var $Symbol = global.Symbol;
2055var $JSON = global.JSON;
2056var _stringify = $JSON && $JSON.stringify;
2057var PROTOTYPE = 'prototype';
2058var HIDDEN = wks('_hidden');
2059var TO_PRIMITIVE = wks('toPrimitive');
2060var isEnum = {}.propertyIsEnumerable;
2061var SymbolRegistry = shared('symbol-registry');
2062var AllSymbols = shared('symbols');
2063var OPSymbols = shared('op-symbols');
2064var ObjectProto = Object[PROTOTYPE];
2065var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
2066var QObject = global.QObject;
2067// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
2068var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
2069
2070// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
2071var setSymbolDesc = DESCRIPTORS && $fails(function () {
2072  return _create(dP({}, 'a', {
2073    get: function () { return dP(this, 'a', { value: 7 }).a; }
2074  })).a != 7;
2075}) ? function (it, key, D) {
2076  var protoDesc = gOPD(ObjectProto, key);
2077  if (protoDesc) delete ObjectProto[key];
2078  dP(it, key, D);
2079  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
2080} : dP;
2081
2082var wrap = function (tag) {
2083  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
2084  sym._k = tag;
2085  return sym;
2086};
2087
2088var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
2089  return typeof it == 'symbol';
2090} : function (it) {
2091  return it instanceof $Symbol;
2092};
2093
2094var $defineProperty = function defineProperty(it, key, D) {
2095  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
2096  anObject(it);
2097  key = toPrimitive(key, true);
2098  anObject(D);
2099  if (has(AllSymbols, key)) {
2100    if (!D.enumerable) {
2101      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
2102      it[HIDDEN][key] = true;
2103    } else {
2104      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
2105      D = _create(D, { enumerable: createDesc(0, false) });
2106    } return setSymbolDesc(it, key, D);
2107  } return dP(it, key, D);
2108};
2109var $defineProperties = function defineProperties(it, P) {
2110  anObject(it);
2111  var keys = enumKeys(P = toIObject(P));
2112  var i = 0;
2113  var l = keys.length;
2114  var key;
2115  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
2116  return it;
2117};
2118var $create = function create(it, P) {
2119  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
2120};
2121var $propertyIsEnumerable = function propertyIsEnumerable(key) {
2122  var E = isEnum.call(this, key = toPrimitive(key, true));
2123  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
2124  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
2125};
2126var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
2127  it = toIObject(it);
2128  key = toPrimitive(key, true);
2129  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
2130  var D = gOPD(it, key);
2131  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
2132  return D;
2133};
2134var $getOwnPropertyNames = function getOwnPropertyNames(it) {
2135  var names = gOPN(toIObject(it));
2136  var result = [];
2137  var i = 0;
2138  var key;
2139  while (names.length > i) {
2140    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
2141  } return result;
2142};
2143var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
2144  var IS_OP = it === ObjectProto;
2145  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
2146  var result = [];
2147  var i = 0;
2148  var key;
2149  while (names.length > i) {
2150    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
2151  } return result;
2152};
2153
2154// 19.4.1.1 Symbol([description])
2155if (!USE_NATIVE) {
2156  $Symbol = function Symbol() {
2157    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
2158    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
2159    var $set = function (value) {
2160      if (this === ObjectProto) $set.call(OPSymbols, value);
2161      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
2162      setSymbolDesc(this, tag, createDesc(1, value));
2163    };
2164    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
2165    return wrap(tag);
2166  };
2167  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
2168    return this._k;
2169  });
2170
2171  $GOPD.f = $getOwnPropertyDescriptor;
2172  $DP.f = $defineProperty;
2173  __webpack_require__(69).f = gOPNExt.f = $getOwnPropertyNames;
2174  __webpack_require__(42).f = $propertyIsEnumerable;
2175  $GOPS.f = $getOwnPropertySymbols;
2176
2177  if (DESCRIPTORS && !__webpack_require__(32)) {
2178    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
2179  }
2180
2181  wksExt.f = function (name) {
2182    return wrap(wks(name));
2183  };
2184}
2185
2186$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });
2187
vendor: 1,755 bytes, lines 2188-2227
2188for (var es6Symbols = (
2189  // 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
2190  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
2191).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);
2192
2193for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);
2194
2195$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
2196  // 19.4.2.1 Symbol.for(key)
2197  'for': function (key) {
2198    return has(SymbolRegistry, key += '')
2199      ? SymbolRegistry[key]
2200      : SymbolRegistry[key] = $Symbol(key);
2201  },
2202  // 19.4.2.5 Symbol.keyFor(sym)
2203  keyFor: function keyFor(sym) {
2204    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
2205    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
2206  },
2207  useSetter: function () { setter = true; },
2208  useSimple: function () { setter = false; }
2209});
2210
2211$export($export.S + $export.F * !USE_NATIVE, 'Object', {
2212  // 19.1.2.2 Object.create(O [, Properties])
2213  create: $create,
2214  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
2215  defineProperty: $defineProperty,
2216  // 19.1.2.3 Object.defineProperties(O, Properties)
2217  defineProperties: $defineProperties,
2218  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
2219  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
2220  // 19.1.2.7 Object.getOwnPropertyNames(O)
2221  getOwnPropertyNames: $getOwnPropertyNames,
2222  // 19.1.2.8 Object.getOwnPropertySymbols(O)
2223  getOwnPropertySymbols: $getOwnPropertySymbols
2224});
2225
2226// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
2227// https://bugs.chromium.org/p/v8/issues/detail?id=3443
vendor: 4,470 bytes, lines 2228-2383
2228var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });
2229
2230$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
2231  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
2232    return $GOPS.f(toObject(it));
2233  }
2234});
2235
2236// 24.3.2 JSON.stringify(value [, replacer [, space]])
2237$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
2238  var S = $Symbol();
2239  // MS Edge converts symbol values to JSON as {}
2240  // WebKit converts symbol values to JSON as null
2241  // V8 throws on boxed symbols
2242  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
2243})), 'JSON', {
2244  stringify: function stringify(it) {
2245    var args = [it];
2246    var i = 1;
2247    var replacer, $replacer;
2248    while (arguments.length > i) args.push(arguments[i++]);
2249    $replacer = replacer = args[1];
2250    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
2251    if (!isArray(replacer)) replacer = function (key, value) {
2252      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
2253      if (!isSymbol(value)) return value;
2254    };
2255    args[1] = replacer;
2256    return _stringify.apply($JSON, args);
2257  }
2258});
2259
2260// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
2261$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(22)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
2262// 19.4.3.5 Symbol.prototype[@@toStringTag]
2263setToStringTag($Symbol, 'Symbol');
2264// 20.2.1.9 Math[@@toStringTag]
2265setToStringTag(Math, 'Math', true);
2266// 24.3.3 JSON[@@toStringTag]
2267setToStringTag(global.JSON, 'JSON', true);
2268
2269
2270/***/ }),
2271/* 102 */
2272/***/ (function(module, exports, __webpack_require__) {
2273
2274module.exports = __webpack_require__(128);
2275
2276/***/ }),
2277/* 103 */
2278/***/ (function(module, exports, __webpack_require__) {
2279
2280// to indexed object, toObject with fallback for non-array-like ES3 strings
2281var IObject = __webpack_require__(86);
2282var defined = __webpack_require__(28);
2283module.exports = function (it) {
2284  return IObject(defined(it));
2285};
2286
2287
2288/***/ }),
2289/* 104 */
2290/***/ (function(module, exports, __webpack_require__) {
2291
2292// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
2293var speciesConstructor = __webpack_require__(105);
2294
2295module.exports = function (original, length) {
2296  return new (speciesConstructor(original))(length);
2297};
2298
2299
2300/***/ }),
2301/* 105 */
2302/***/ (function(module, exports, __webpack_require__) {
2303
2304var isObject = __webpack_require__(19);
2305var isArray = __webpack_require__(106);
2306var SPECIES = __webpack_require__(8)('species');
2307
2308module.exports = function (original) {
2309  var C;
2310  if (isArray(original)) {
2311    C = original.constructor;
2312    // cross-realm fallback
2313    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
2314    if (isObject(C)) {
2315      C = C[SPECIES];
2316      if (C === null) C = undefined;
2317    }
2318  } return C === undefined ? Array : C;
2319};
2320
2321
2322/***/ }),
2323/* 106 */
2324/***/ (function(module, exports, __webpack_require__) {
2325
2326// 7.2.2 IsArray(argument)
2327var cof = __webpack_require__(29);
2328module.exports = Array.isArray || function isArray(arg) {
2329  return cof(arg) == 'Array';
2330};
2331
2332
2333/***/ }),
2334/* 107 */
2335/***/ (function(module, exports, __webpack_require__) {
2336
2337__webpack_require__(108);
2338var $Object = __webpack_require__(1).Object;
2339module.exports = function defineProperty(it, key, desc) {
2340  return $Object.defineProperty(it, key, desc);
2341};
2342
2343
2344/***/ }),
2345/* 108 */
2346/***/ (function(module, exports, __webpack_require__) {
2347
2348var $export = __webpack_require__(3);
2349// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
2350$export($export.S + $export.F * !__webpack_require__(12), 'Object', { defineProperty: __webpack_require__(14).f });
2351
2352
2353/***/ }),
2354/* 109 */
2355/***/ (function(module, exports) {
2356
2357module.exports = function (it) {
2358  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
2359  return it;
2360};
2361
2362
2363/***/ }),
2364/* 110 */
2365/***/ (function(module, exports, __webpack_require__) {
2366
2367module.exports = __webpack_require__(111);
2368
2369/***/ }),
2370/* 111 */
2371/***/ (function(module, exports, __webpack_require__) {
2372
2373__webpack_require__(90);
2374__webpack_require__(93);
2375module.exports = __webpack_require__(55).f('iterator');
2376
2377
2378/***/ }),
2379/* 112 */
2380/***/ (function(module, exports, __webpack_require__) {
2381
2382var toInteger = __webpack_require__(49);
2383var defined = __webpack_require__(40);
vendor: 4,070 bytes, lines 2384-2520
2384// true  -> String#at
2385// false -> String#codePointAt
2386module.exports = function (TO_STRING) {
2387  return function (that, pos) {
2388    var s = String(defined(that));
2389    var i = toInteger(pos);
2390    var l = s.length;
2391    var a, b;
2392    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
2393    a = s.charCodeAt(i);
2394    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
2395      ? TO_STRING ? s.charAt(i) : a
2396      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
2397  };
2398};
2399
2400
2401/***/ }),
2402/* 113 */
2403/***/ (function(module, exports, __webpack_require__) {
2404
2405"use strict";
2406
2407var create = __webpack_require__(50);
2408var descriptor = __webpack_require__(31);
2409var setToStringTag = __webpack_require__(54);
2410var IteratorPrototype = {};
2411
2412// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
2413__webpack_require__(22)(IteratorPrototype, __webpack_require__(16)('iterator'), function () { return this; });
2414
2415module.exports = function (Constructor, NAME, next) {
2416  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
2417  setToStringTag(Constructor, NAME + ' Iterator');
2418};
2419
2420
2421/***/ }),
2422/* 114 */
2423/***/ (function(module, exports, __webpack_require__) {
2424
2425// false -> Array#indexOf
2426// true  -> Array#includes
2427var toIObject = __webpack_require__(15);
2428var toLength = __webpack_require__(100);
2429var toAbsoluteIndex = __webpack_require__(115);
2430module.exports = function (IS_INCLUDES) {
2431  return function ($this, el, fromIndex) {
2432    var O = toIObject($this);
2433    var length = toLength(O.length);
2434    var index = toAbsoluteIndex(fromIndex, length);
2435    var value;
2436    // Array#includes uses SameValueZero equality algorithm
2437    // eslint-disable-next-line no-self-compare
2438    if (IS_INCLUDES && el != el) while (length > index) {
2439      value = O[index++];
2440      // eslint-disable-next-line no-self-compare
2441      if (value != value) return true;
2442    // Array#indexOf ignores holes, Array#includes - not
2443    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
2444      if (O[index] === el) return IS_INCLUDES || index || 0;
2445    } return !IS_INCLUDES && -1;
2446  };
2447};
2448
2449
2450/***/ }),
2451/* 115 */
2452/***/ (function(module, exports, __webpack_require__) {
2453
2454var toInteger = __webpack_require__(49);
2455var max = Math.max;
2456var min = Math.min;
2457module.exports = function (index, length) {
2458  index = toInteger(index);
2459  return index < 0 ? max(index + length, 0) : min(index, length);
2460};
2461
2462
2463/***/ }),
2464/* 116 */
2465/***/ (function(module, exports, __webpack_require__) {
2466
2467var document = __webpack_require__(5).document;
2468module.exports = document && document.documentElement;
2469
2470
2471/***/ }),
2472/* 117 */
2473/***/ (function(module, exports, __webpack_require__) {
2474
2475"use strict";
2476
2477var addToUnscopables = __webpack_require__(118);
2478var step = __webpack_require__(119);
2479var Iterators = __webpack_require__(41);
2480var toIObject = __webpack_require__(15);
2481
2482// 22.1.3.4 Array.prototype.entries()
2483// 22.1.3.13 Array.prototype.keys()
2484// 22.1.3.29 Array.prototype.values()
2485// 22.1.3.30 Array.prototype[@@iterator]()
2486module.exports = __webpack_require__(75)(Array, 'Array', function (iterated, kind) {
2487  this._t = toIObject(iterated); // target
2488  this._i = 0;                   // next index
2489  this._k = kind;                // kind
2490// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
2491}, function () {
2492  var O = this._t;
2493  var kind = this._k;
2494  var index = this._i++;
2495  if (!O || index >= O.length) {
2496    this._t = undefined;
2497    return step(1);
2498  }
2499  if (kind == 'keys') return step(0, index);
2500  if (kind == 'values') return step(0, O[index]);
2501  return step(0, [index, O[index]]);
2502}, 'values');
2503
2504// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
2505Iterators.Arguments = Iterators.Array;
2506
2507addToUnscopables('keys');
2508addToUnscopables('values');
2509addToUnscopables('entries');
2510
2511
2512/***/ }),
2513/* 118 */
2514/***/ (function(module, exports) {
2515
2516module.exports = function () { /* empty */ };
2517
2518
2519/***/ }),
2520/* 119 */
vendor: 4,642 bytes, lines 2521-2705
2521/***/ (function(module, exports) {
2522
2523module.exports = function (done, value) {
2524  return { value: value, done: !!done };
2525};
2526
2527
2528/***/ }),
2529/* 120 */
2530/***/ (function(module, exports, __webpack_require__) {
2531
2532module.exports = __webpack_require__(121);
2533
2534/***/ }),
2535/* 121 */
2536/***/ (function(module, exports, __webpack_require__) {
2537
2538__webpack_require__(101);
2539__webpack_require__(125);
2540__webpack_require__(126);
2541__webpack_require__(127);
2542module.exports = __webpack_require__(1).Symbol;
2543
2544
2545/***/ }),
2546/* 122 */
2547/***/ (function(module, exports, __webpack_require__) {
2548
2549var META = __webpack_require__(34)('meta');
2550var isObject = __webpack_require__(17);
2551var has = __webpack_require__(13);
2552var setDesc = __webpack_require__(14).f;
2553var id = 0;
2554var isExtensible = Object.isExtensible || function () {
2555  return true;
2556};
2557var FREEZE = !__webpack_require__(25)(function () {
2558  return isExtensible(Object.preventExtensions({}));
2559});
2560var setMeta = function (it) {
2561  setDesc(it, META, { value: {
2562    i: 'O' + ++id, // object ID
2563    w: {}          // weak collections IDs
2564  } });
2565};
2566var fastKey = function (it, create) {
2567  // return primitive with prefix
2568  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
2569  if (!has(it, META)) {
2570    // can't set metadata to uncaught frozen object
2571    if (!isExtensible(it)) return 'F';
2572    // not necessary to add metadata
2573    if (!create) return 'E';
2574    // add missing metadata
2575    setMeta(it);
2576  // return object ID
2577  } return it[META].i;
2578};
2579var getWeak = function (it, create) {
2580  if (!has(it, META)) {
2581    // can't set metadata to uncaught frozen object
2582    if (!isExtensible(it)) return true;
2583    // not necessary to add metadata
2584    if (!create) return false;
2585    // add missing metadata
2586    setMeta(it);
2587  // return hash weak collections IDs
2588  } return it[META].w;
2589};
2590// add metadata on freeze-family methods calling
2591var onFreeze = function (it) {
2592  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
2593  return it;
2594};
2595var meta = module.exports = {
2596  KEY: META,
2597  NEED: false,
2598  fastKey: fastKey,
2599  getWeak: getWeak,
2600  onFreeze: onFreeze
2601};
2602
2603
2604/***/ }),
2605/* 123 */
2606/***/ (function(module, exports, __webpack_require__) {
2607
2608// all enumerable object keys, includes symbols
2609var getKeys = __webpack_require__(33);
2610var gOPS = __webpack_require__(64);
2611var pIE = __webpack_require__(42);
2612module.exports = function (it) {
2613  var result = getKeys(it);
2614  var getSymbols = gOPS.f;
2615  if (getSymbols) {
2616    var symbols = getSymbols(it);
2617    var isEnum = pIE.f;
2618    var i = 0;
2619    var key;
2620    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
2621  } return result;
2622};
2623
2624
2625/***/ }),
2626/* 124 */
2627/***/ (function(module, exports, __webpack_require__) {
2628
2629// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
2630var toIObject = __webpack_require__(15);
2631var gOPN = __webpack_require__(69).f;
2632var toString = {}.toString;
2633
2634var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
2635  ? Object.getOwnPropertyNames(window) : [];
2636
2637var getWindowNames = function (it) {
2638  try {
2639    return gOPN(it);
2640  } catch (e) {
2641    return windowNames.slice();
2642  }
2643};
2644
2645module.exports.f = function getOwnPropertyNames(it) {
2646  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
2647};
2648
2649
2650/***/ }),
2651/* 125 */
2652/***/ (function(module, exports) {
2653
2654
2655
2656/***/ }),
2657/* 126 */
2658/***/ (function(module, exports, __webpack_require__) {
2659
2660__webpack_require__(56)('asyncIterator');
2661
2662
2663/***/ }),
2664/* 127 */
2665/***/ (function(module, exports, __webpack_require__) {
2666
2667__webpack_require__(56)('observable');
2668
2669
2670/***/ }),
2671/* 128 */
2672/***/ (function(module, exports, __webpack_require__) {
2673
2674__webpack_require__(129);
2675module.exports = __webpack_require__(1).Object.getPrototypeOf;
2676
2677
2678/***/ }),
2679/* 129 */
2680/***/ (function(module, exports, __webpack_require__) {
2681
2682// 19.1.2.9 Object.getPrototypeOf(O)
2683var toObject = __webpack_require__(37);
2684var $getPrototypeOf = __webpack_require__(58);
2685
2686__webpack_require__(70)('getPrototypeOf', function () {
2687  return function getPrototypeOf(it) {
2688    return $getPrototypeOf(toObject(it));
2689  };
2690});
2691
2692
2693/***/ }),
2694/* 130 */
2695/***/ (function(module, exports, __webpack_require__) {
2696
2697__webpack_require__(131);
2698module.exports = __webpack_require__(1).Object.setPrototypeOf;
2699
2700
2701/***/ }),
2702/* 131 */
2703/***/ (function(module, exports, __webpack_require__) {
2704
2705// 19.1.3.19 Object.setPrototypeOf(O, proto)
2706var $export = __webpack_require__(3);
2707$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(132).set });
2708
2709
2710/***/ }),
2711/* 132 */
2712/***/ (function(module, exports, __webpack_require__) {
2713
2714// Works with __proto__ only. Old v8 can't work with null proto objects.
2715/* eslint-disable no-proto */
2716var isObject = __webpack_require__(17);
2717var anObject = __webpack_require__(23);
2718var check = function (O, proto) {
2719  anObject(O);
2720  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
2721};
2722module.exports = {
2723  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
2724    function (test, buggy, set) {
2725      try {
2726        set = __webpack_require__(68)(Function.call, __webpack_require__(46).f(Object.prototype, '__proto__').set, 2);
2727        set(test, []);
2728        buggy = !(test instanceof Array);
2729      } catch (e) { buggy = true; }
2730      return function setPrototypeOf(O, proto) {
2731        check(O, proto);
2732        if (buggy) O.__proto__ = proto;
2733        else set(O, proto);
2734        return O;
2735      };
2736    }({}, false) : undefined),
2737  check: check
2738};
2739
2740
2741/***/ }),
2742/* 133 */
2743/***/ (function(module, exports, __webpack_require__) {
2744
2745__webpack_require__(134);
2746var $Object = __webpack_require__(1).Object;
2747module.exports = function create(P, D) {
2748  return $Object.create(P, D);
2749};
2750
2751
2752/***/ }),
2753/* 134 */
2754/***/ (function(module, exports, __webpack_require__) {
2755
2756var $export = __webpack_require__(3);
2757// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
2758$export($export.S, 'Object', { create: __webpack_require__(50) });
2759
2760
2761/***/ }),
2762/* 135 */
2763/***/ (function(module, exports, __webpack_require__) {
2764
2765var _Object$setPrototypeOf = __webpack_require__(78);
2766
2767function _setPrototypeOf(o, p) {
2768  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
2769    o.__proto__ = p;
2770    return o;
2771  };
2772
2773  return _setPrototypeOf(o, p);
2774}
2775
2776module.exports = _setPrototypeOf;
2777
2778/***/ }),
2779/* 136 */,
2780/* 137 */
2781/***/ (function(module, exports, __webpack_require__) {
2782
2783var toInteger = __webpack_require__(39);
2784var defined = __webpack_require__(28);
2785// true  -> String#at
2786// false -> String#codePointAt
2787module.exports = function (TO_STRING) {
2788  return function (that, pos) {
2789    var s = String(defined(that));
2790    var i = toInteger(pos);
2791    var l = s.length;
2792    var a, b;
2793    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
2794    a = s.charCodeAt(i);
2795    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
2796      ? TO_STRING ? s.charAt(i) : a
2797      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
2798  };
2799};
2800
2801
2802/***/ }),
2803/* 138 */
2804/***/ (function(module, exports, __webpack_require__) {
2805
2806"use strict";
2807
2808var regexpExec = __webpack_require__(65);
2809__webpack_require__(36)({
2810  target: 'RegExp',
2811  proto: true,
2812  forced: regexpExec !== /./.exec
2813}, {
2814  exec: regexpExec
2815});
2816
2817
2818/***/ }),
2819/* 139 */
2820/***/ (function(module, exports, __webpack_require__) {
2821
2822// 7.2.8 IsRegExp(argument)
2823var isObject = __webpack_require__(19);
2824var cof = __webpack_require__(29);
2825var MATCH = __webpack_require__(8)('match');
2826module.exports = function (it) {
2827  var isRegExp;
2828  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
2829};
2830
2831
2832/***/ }),
2833/* 140 */,
2834/* 141 */
2835/***/ (function(module, exports, __webpack_require__) {
2836
2837"use strict";
2838
2839// 19.1.3.6 Object.prototype.toString()
2840var classof = __webpack_require__(88);
2841var test = {};
2842test[__webpack_require__(8)('toStringTag')] = 'z';
2843if (test + '' != '[object z]') {
2844  __webpack_require__(27)(Object.prototype, 'toString', function toString() {
2845    return '[object ' + classof(this) + ']';
2846  }, true);
2847}
2848
2849
2850/***/ }),
2851/* 142 */
2852/***/ (function(module, exports) {
2853
2854module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
2855  '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
2856
2857
2858/***/ }),
2859/* 143 */,
2860/* 144 */
2861/***/ (function(module, exports, __webpack_require__) {
2862
2863module.exports = __webpack_require__(175);
2864
2865/***/ }),
2866/* 145 */
2867/***/ (function(module, exports, __webpack_require__) {
2868
2869module.exports = __webpack_require__(158);
2870
2871/***/ }),
2872/* 146 */,
2873/* 147 */
2874/***/ (function(module, exports, __webpack_require__) {
2875
2876module.exports = __webpack_require__(165);
2877
2878/***/ }),
2879/* 148 */
2880/***/ (function(module, exports, __webpack_require__) {
2881
2882// false -> Array#indexOf
2883// true  -> Array#includes
2884var toIObject = __webpack_require__(103);
2885var toLength = __webpack_require__(43);
2886var toAbsoluteIndex = __webpack_require__(155);
2887module.exports = function (IS_INCLUDES) {
2888  return function ($this, el, fromIndex) {
2889    var O = toIObject($this);
2890    var length = toLength(O.length);
2891    var index = toAbsoluteIndex(fromIndex, length);
2892    var value;
2893    // Array#includes uses SameValueZero equality algorithm
2894    // eslint-disable-next-line no-self-compare
2895    if (IS_INCLUDES && el != el) while (length > index) {
2896      value = O[index++];
2897      // eslint-disable-next-line no-self-compare
2898      if (value != value) return true;
2899    // Array#indexOf ignores holes, Array#includes - not
2900    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
2901      if (O[index] === el) return IS_INCLUDES || index || 0;
2902    } return !IS_INCLUDES && -1;
2903  };
2904};
2905
2906
2907/***/ }),
2908/* 149 */,
2909/* 150 */
2910/***/ (function(module, exports, __webpack_require__) {
2911
2912"use strict";
2913
2914
2915var _Object$defineProperty = __webpack_require__(2);
2916
2917_Object$defineProperty(exports, "__esModule", {
2918  value: true
2919});
2920
2921exports.default = void 0;
2922var userAgent = navigator.userAgent;
2923var _default = {
2924  webkit: -1 !== userAgent.indexOf('AppleWebKit'),
2925  firefox: -1 !== userAgent.indexOf('Firefox'),
2926  ie: /Trident|MSIE/.test(userAgent),
2927  edge: -1 !== userAgent.indexOf('Edge'),
2928  mac: -1 !== userAgent.indexOf('Macintosh')
2929};
2930exports.default = _default;
2931
2932/***/ }),
2933/* 151 */,
2934/* 152 */,
2935/* 153 */,
2936/* 154 */,
2937/* 155 */
2938/***/ (function(module, exports, __webpack_require__) {
2939
2940var toInteger = __webpack_require__(39);
2941var max = Math.max;
2942var min = Math.min;
2943module.exports = function (index, length) {
2944  index = toInteger(index);
2945  return index < 0 ? max(index + length, 0) : min(index, length);
2946};
2947
2948
2949/***/ }),
2950/* 156 */
2951/***/ (function(module, exports, __webpack_require__) {
2952
2953__webpack_require__(157);
2954module.exports = __webpack_require__(1).Object.keys;
2955
2956
2957/***/ }),
2958/* 157 */
2959/***/ (function(module, exports, __webpack_require__) {
2960
2961// 19.1.2.14 Object.keys(O)
2962var toObject = __webpack_require__(37);
2963var $keys = __webpack_require__(33);
2964
2965__webpack_require__(70)('keys', function () {
2966  return function keys(it) {
2967    return $keys(toObject(it));
2968  };
2969});
2970
2971
2972/***/ }),
2973/* 158 */
2974/***/ (function(module, exports, __webpack_require__) {
2975
2976__webpack_require__(159);
2977var $Object = __webpack_require__(1).Object;
2978module.exports = function getOwnPropertyDescriptor(it, key) {
2979  return $Object.getOwnPropertyDescriptor(it, key);
2980};
2981
2982
2983/***/ }),
2984/* 159 */
2985/***/ (function(module, exports, __webpack_require__) {
2986
2987// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
2988var toIObject = __webpack_require__(15);
2989var $getOwnPropertyDescriptor = __webpack_require__(46).f;
2990
2991__webpack_require__(70)('getOwnPropertyDescriptor', function () {
2992  return function getOwnPropertyDescriptor(it, key) {
2993    return $getOwnPropertyDescriptor(toIObject(it), key);
2994  };
2995});
2996
2997
2998/***/ }),
2999/* 160 */
3000/***/ (function(module, exports, __webpack_require__) {
3001
3002module.exports = __webpack_require__(161);
3003
3004/***/ }),
3005/* 161 */
3006/***/ (function(module, exports, __webpack_require__) {
3007
3008__webpack_require__(162);
3009module.exports = __webpack_require__(1).Reflect.get;
3010
3011
3012/***/ }),
3013/* 162 */
3014/***/ (function(module, exports, __webpack_require__) {
3015
3016// 26.1.6 Reflect.get(target, propertyKey [, receiver])
3017var gOPD = __webpack_require__(46);
3018var getPrototypeOf = __webpack_require__(58);
3019var has = __webpack_require__(13);
3020var $export = __webpack_require__(3);
3021var isObject = __webpack_require__(17);
3022var anObject = __webpack_require__(23);
3023
3024function get(target, propertyKey /* , receiver */) {
3025  var receiver = arguments.length < 3 ? target : arguments[2];
3026  var desc, proto;
3027  if (anObject(target) === receiver) return target[propertyKey];
3028  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
3029    ? desc.value
3030    : desc.get !== undefined
3031      ? desc.get.call(receiver)
3032      : undefined;
3033  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
3034}
3035
3036$export($export.S, 'Reflect', { get: get });
3037
3038
3039/***/ }),
3040/* 163 */
3041/***/ (function(module, exports, __webpack_require__) {
3042
3043var getPrototypeOf = __webpack_require__(4);
3044
3045function _superPropBase(object, property) {
3046  while (!Object.prototype.hasOwnProperty.call(object, property)) {
3047    object = getPrototypeOf(object);
3048    if (object === null) break;
3049  }
3050
3051  return object;
3052}
3053
3054module.exports = _superPropBase;
3055
3056/***/ }),
3057/* 164 */,
3058/* 165 */
3059/***/ (function(module, exports, __webpack_require__) {
3060
3061__webpack_require__(166);
3062module.exports = __webpack_require__(1).parseInt;
3063
3064
3065/***/ }),
3066/* 166 */
3067/***/ (function(module, exports, __webpack_require__) {
3068
vendor: 4,177 bytes, lines 3069-3229
3069var $export = __webpack_require__(3);
3070var $parseInt = __webpack_require__(167);
3071// 18.2.5 parseInt(string, radix)
3072$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });
3073
3074
3075/***/ }),
3076/* 167 */
3077/***/ (function(module, exports, __webpack_require__) {
3078
3079var $parseInt = __webpack_require__(5).parseInt;
3080var $trim = __webpack_require__(168).trim;
3081var ws = __webpack_require__(142);
3082var hex = /^[-+]?0[xX]/;
3083
3084module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {
3085  var string = $trim(String(str), 3);
3086  return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
3087} : $parseInt;
3088
3089
3090/***/ }),
3091/* 168 */
3092/***/ (function(module, exports, __webpack_require__) {
3093
3094var $export = __webpack_require__(3);
3095var defined = __webpack_require__(40);
3096var fails = __webpack_require__(25);
3097var spaces = __webpack_require__(142);
3098var space = '[' + spaces + ']';
3099var non = '\u200b\u0085';
3100var ltrim = RegExp('^' + space + space + '*');
3101var rtrim = RegExp(space + space + '*$');
3102
3103var exporter = function (KEY, exec, ALIAS) {
3104  var exp = {};
3105  var FORCE = fails(function () {
3106    return !!spaces[KEY]() || non[KEY]() != non;
3107  });
3108  var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
3109  if (ALIAS) exp[ALIAS] = fn;
3110  $export($export.P + $export.F * FORCE, 'String', exp);
3111};
3112
3113// 1 -> String#trimLeft
3114// 2 -> String#trimRight
3115// 3 -> String#trim
3116var trim = exporter.trim = function (string, TYPE) {
3117  string = String(defined(string));
3118  if (TYPE & 1) string = string.replace(ltrim, '');
3119  if (TYPE & 2) string = string.replace(rtrim, '');
3120  return string;
3121};
3122
3123module.exports = exporter;
3124
3125
3126/***/ }),
3127/* 169 */,
3128/* 170 */
3129/***/ (function(module, exports, __webpack_require__) {
3130
3131"use strict";
3132
3133var $export = __webpack_require__(36);
3134var aFunction = __webpack_require__(60);
3135var toObject = __webpack_require__(61);
3136var fails = __webpack_require__(24);
3137var $sort = [].sort;
3138var test = [1, 2, 3];
3139
3140$export($export.P + $export.F * (fails(function () {
3141  // IE8-
3142  test.sort(undefined);
3143}) || !fails(function () {
3144  // V8 bug
3145  test.sort(null);
3146  // Old WebKit
3147}) || !__webpack_require__(208)($sort)), 'Array', {
3148  // 22.1.3.25 Array.prototype.sort(comparefn)
3149  sort: function sort(comparefn) {
3150    return comparefn === undefined
3151      ? $sort.call(toObject(this))
3152      : $sort.call(toObject(this), aFunction(comparefn));
3153  }
3154});
3155
3156
3157/***/ }),
3158/* 171 */,
3159/* 172 */,
3160/* 173 */
3161/***/ (function(module, exports, __webpack_require__) {
3162
3163"use strict";
3164
3165__webpack_require__(214);
3166var anObject = __webpack_require__(20);
3167var $flags = __webpack_require__(89);
3168var DESCRIPTORS = __webpack_require__(18);
3169var TO_STRING = 'toString';
3170var $toString = /./[TO_STRING];
3171
3172var define = function (fn) {
3173  __webpack_require__(27)(RegExp.prototype, TO_STRING, fn, true);
3174};
3175
3176// 21.2.5.14 RegExp.prototype.toString()
3177if (__webpack_require__(24)(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
3178  define(function toString() {
3179    var R = anObject(this);
3180    return '/'.concat(R.source, '/',
3181      'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
3182  });
3183// FF44- RegExp#toString has a wrong name
3184} else if ($toString.name != TO_STRING) {
3185  define(function toString() {
3186    return $toString.call(this);
3187  });
3188}
3189
3190
3191/***/ }),
3192/* 174 */,
3193/* 175 */
3194/***/ (function(module, exports, __webpack_require__) {
3195
3196var core = __webpack_require__(1);
3197var $JSON = core.JSON || (core.JSON = { stringify: JSON.stringify });
3198module.exports = function stringify(it) { // eslint-disable-line no-unused-vars
3199  return $JSON.stringify.apply($JSON, arguments);
3200};
3201
3202
3203/***/ }),
3204/* 176 */,
3205/* 177 */,
3206/* 178 */,
3207/* 179 */,
3208/* 180 */,
3209/* 181 */,
3210/* 182 */,
3211/* 183 */,
3212/* 184 */,
3213/* 185 */,
3214/* 186 */,
3215/* 187 */,
3216/* 188 */,
3217/* 189 */,
3218/* 190 */,
3219/* 191 */,
3220/* 192 */,
3221/* 193 */,
3222/* 194 */,
3223/* 195 */,
3224/* 196 */
3225/***/ (function(module, exports, __webpack_require__) {
3226
3227"use strict";
3228
3229// https://github.com/tc39/Array.prototype.includes
3230var $export = __webpack_require__(36);
3231var $includes = __webpack_require__(148)(true);
3232
3233$export($export.P, 'Array', {
3234  includes: function includes(el /* , fromIndex = 0 */) {
3235    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
3236  }
3237});
3238
3239__webpack_require__(80)('includes');
3240
3241
3242/***/ }),
3243/* 197 */
3244/***/ (function(module, exports, __webpack_require__) {
3245
3246"use strict";
3247// 21.1.3.7 String.prototype.includes(searchString, position = 0)
3248
3249var $export = __webpack_require__(36);
3250var context = __webpack_require__(198);
3251var INCLUDES = 'includes';
3252
3253$export($export.P + $export.F * __webpack_require__(199)(INCLUDES), 'String', {
3254  includes: function includes(searchString /* , position = 0 */) {
3255    return !!~context(this, searchString, INCLUDES)
3256      .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
3257  }
3258});
3259
3260
3261/***/ }),
3262/* 198 */
3263/***/ (function(module, exports, __webpack_require__) {
3264
3265// helper for String#{startsWith, endsWith, includes}
3266var isRegExp = __webpack_require__(139);
3267var defined = __webpack_require__(28);
3268
3269module.exports = function (that, searchString, NAME) {
3270  if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
3271  return String(defined(that));
3272};
3273
3274
3275/***/ }),
3276/* 199 */
3277/***/ (function(module, exports, __webpack_require__) {
3278
3279var MATCH = __webpack_require__(8)('match');
3280module.exports = function (KEY) {
3281  var re = /./;
3282  try {
3283    '/./'[KEY](re);
3284  } catch (e) {
3285    try {
3286      re[MATCH] = false;
3287      return !'/./'[KEY](re);
3288    } catch (f) { /* empty */ }
3289  } return true;
3290};
3291
3292
3293/***/ }),
3294/* 200 */,
3295/* 201 */,
3296/* 202 */,
3297/* 203 */,
3298/* 204 */,
3299/* 205 */,
3300/* 206 */,
3301/* 207 */,
3302/* 208 */
3303/***/ (function(module, exports, __webpack_require__) {
3304
3305"use strict";
3306
3307var fails = __webpack_require__(24);
3308
3309module.exports = function (method, arg) {
3310  return !!method && fails(function () {
3311    // eslint-disable-next-line no-useless-call
3312    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
3313  });
3314};
3315
3316
3317/***/ }),
3318/* 209 */,
3319/* 210 */,
3320/* 211 */,
3321/* 212 */,
3322/* 213 */,
3323/* 214 */
3324/***/ (function(module, exports, __webpack_require__) {
3325
3326// 21.2.5.3 get RegExp.prototype.flags()
3327if (__webpack_require__(18) && /./g.flags != 'g') __webpack_require__(35).f(RegExp.prototype, 'flags', {
3328  configurable: true,
3329  get: __webpack_require__(89)
3330});
3331
3332
3333/***/ }),
3334/* 215 */,
3335/* 216 */,
3336/* 217 */,
3337/* 218 */
3338/***/ (function(module, exports, __webpack_require__) {
3339
3340"use strict";
3341
3342/**
3343 * Handles managing all events for whatever you plug it into. Priorities for hooks are based on lowest to highest in
3344 * that, lowest priority hooks are fired first.
3345 */
3346
3347var _interopRequireDefault = __webpack_require__(0);
3348
3349var _parseInt2 = _interopRequireDefault(__webpack_require__(147));
3350
3351var EventManager = function EventManager() {
3352  var slice = Array.prototype.slice,
3353      MethodsAvailable;
3354  /**
3355   * Contains the hooks that get registered with this EventManager. The array for storage utilizes a "flat"
3356   * object literal such that looking up the hook utilizes the native object literal hash.
3357   */
3358
3359  var STORAGE = {
3360    actions: {},
3361    filters: {}
3362  };
3363  /**
3364   * Removes the specified hook by resetting the value of it.
3365   *
3366   * @param type Type of hook, either 'actions' or 'filters'
3367   * @param hook The hook (namespace.identifier) to remove
3368   *
3369   * @private
3370   */
3371
3372  function _removeHook(type, hook, callback, context) {
3373    var handlers, handler, i;
3374
3375    if (!STORAGE[type][hook]) {
3376      return;
3377    }
3378
3379    if (!callback) {
3380      STORAGE[type][hook] = [];
3381    } else {
3382      handlers = STORAGE[type][hook];
3383
3384      if (!context) {
3385        for (i = handlers.length; i--;) {
3386          if (handlers[i].callback === callback) {
3387            handlers.splice(i, 1);
3388          }
3389        }
3390      } else {
3391        for (i = handlers.length; i--;) {
3392          handler = handlers[i];
3393
3394          if (handler.callback === callback && handler.context === context) {
3395            handlers.splice(i, 1);
3396          }
3397        }
3398      }
3399    }
3400  }
3401  /**
3402   * Use an insert sort for keeping our hooks organized based on priority. This function is ridiculously faster
3403   * than bubble sort, etc: http://jsperf.com/javascript-sort
3404   *
3405   * @param hooks The custom array containing all of the appropriate hooks to perform an insert sort on.
3406   * @private
3407   */
3408
3409
3410  function _hookInsertSort(hooks) {
3411    var tmpHook, j, prevHook;
3412
3413    for (var i = 1, len = hooks.length; i < len; i++) {
3414      tmpHook = hooks[i];
3415      j = i;
3416
3417      while ((prevHook = hooks[j - 1]) && prevHook.priority > tmpHook.priority) {
3418        hooks[j] = hooks[j - 1];
3419        --j;
3420      }
3421
3422      hooks[j] = tmpHook;
3423    }
3424
3425    return hooks;
3426  }
3427  /**
3428   * Adds the hook to the appropriate storage container
3429   *
3430   * @param type 'actions' or 'filters'
3431   * @param hook The hook (namespace.identifier) to add to our event manager
3432   * @param callback The function that will be called when the hook is executed.
3433   * @param priority The priority of this hook. Must be an integer.
3434   * @param [context] A value to be used for this
3435   * @private
3436   */
3437
3438
3439  function _addHook(type, hook, callback, priority, context) {
3440    var hookObject = {
3441      callback: callback,
3442      priority: priority,
3443      context: context
3444    }; // Utilize 'prop itself' : http://jsperf.com/hasownproperty-vs-in-vs-undefined/19
3445
3446    var hooks = STORAGE[type][hook];
3447
3448    if (hooks) {
3449      // TEMP FIX BUG
3450      var hasSameCallback = false;
3451      jQuery.each(hooks, function () {
3452        if (this.callback === callback) {
3453          hasSameCallback = true;
3454          return false;
3455        }
3456      });
3457
3458      if (hasSameCallback) {
3459        return;
3460      } // END TEMP FIX BUG
3461
3462
3463      hooks.push(hookObject);
3464      hooks = _hookInsertSort(hooks);
3465    } else {
3466      hooks = [hookObject];
3467    }
3468
3469    STORAGE[type][hook] = hooks;
3470  }
3471  /**
3472   * Runs the specified hook. If it is an action, the value is not modified but if it is a filter, it is.
3473   *
3474   * @param type 'actions' or 'filters'
3475   * @param hook The hook ( namespace.identifier ) to be ran.
3476   * @param args Arguments to pass to the action/filter. If it's a filter, args is actually a single parameter.
3477   * @private
3478   */
3479
3480
3481  function _runHook(type, hook, args) {
3482    var handlers = STORAGE[type][hook],
3483        i,
3484        len;
3485
3486    if (!handlers) {
3487      return 'filters' === type ? args[0] : false;
3488    }
3489
3490    len = handlers.length;
3491
3492    if ('filters' === type) {
3493      for (i = 0; i < len; i++) {
3494        args[0] = handlers[i].callback.apply(handlers[i].context, args
3494);
3495      }
3496    } else {
3497      for (i = 0; i < len; i++) {
3498        handlers[i].callback.apply(handlers[i].context, args);
3499      }
3500    }
3501
3502    return 'filters' === type ? args[0] : true;
3503  }
3504  /**
3505   * Adds an action to the event manager.
3506   *
3507   * @param action Must contain namespace.identifier
3508   * @param callback Must be a valid callback function before this action is added
3509   * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
3510   * @param [context] Supply a value to be used for this
3511   */
3512
3513
3514  function addAction(action, callback, priority, context) {
3515    if ('string' === typeof action && 'function' === typeof callback) {
3516      priority = (0, _parseInt2.default)(priority || 10, 10);
3517
3518      _addHook('actions', action, callback, priority, context);
3519    }
3520
3521    return MethodsAvailable;
3522  }
3523  /**
3524   * Performs an action if it exists. You can pass as many arguments as you want to this function; the only rule is
3525   * that the first argument must always be the action.
3526   */
3527
3528
3529  function doAction()
3530  /* action, arg1, arg2, ... */
3531  {
3532    var args = slice.call(arguments);
3533    var action = args.shift();
3534
3535    if ('string' === typeof action) {
3536      _runHook('actions', action, args);
3537    }
3538
3539    return MethodsAvailable;
3540  }
3541  /**
3542   * Removes the specified action if it contains a namespace.identifier & exists.
3543   *
3544   * @param action The action to remove
3545   * @param [callback] Callback function to remove
3546   */
3547
3548
3549  function removeAction(action, callback) {
3550    if ('string' === typeof action) {
3551      _removeHook('actions', action, callback);
3552    }
3553
3554    return MethodsAvailable;
3555  }
3556  /**
3557   * Adds a filter to the event manager.
3558   *
3559   * @param filter Must contain namespace.identifier
3560   * @param callback Must be a valid callback function before this action is added
3561   * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
3562   * @param [context] Supply a value to be used for this
3563   */
3564
3565
3566  function addFilter(filter, callback, priority, context) {
3567    if ('string' === typeof filter && 'function' === typeof callback) {
3568      priority = (0, _parseInt2.default)(priority || 10, 10);
3569
3570      _addHook('filters', filter, callback, priority, context);
3571    }
3572
3573    return MethodsAvailable;
3574  }
3575  /**
3576   * Performs a filter if it exists. You should only ever pass 1 argument to be filtered. The only rule is that
3577   * the first argument must always be the filter.
3578   */
3579
3580
3581  function applyFilters()
3582  /* filter, filtered arg, arg2, ... */
3583  {
3584    var args = slice.call(arguments);
3585    var filter = args.shift();
3586
3587    if ('string' === typeof filter) {
3588      return _runHook('filters', filter, args);
3589    }
3590
3591    return MethodsAvailable;
3592  }
3593  /**
3594   * Removes the specified filter if it contains a namespace.identifier & exists.
3595   *
3596   * @param filter The action to remove
3597   * @param [callback] Callback function to remove
3598   */
3599
3600
3601  function removeFilter(filter, callback) {
3602    if ('string' === typeof filter) {
3603      _removeHook('filters', filter, callback);
3604    }
3605
3606    return MethodsAvailable;
3607  }
3608  /**
3609   * Maintain a reference to the object scope so our public methods never get confusing.
3610   */
3611
3612
3613  MethodsAvailable = {
3614    removeFilter: removeFilter,
3615    applyFilters: applyFilters,
3616    addFilter: addFilter,
3617    removeAction: removeAction,
3618    doAction: doAction,
3619    addAction: addAction
3620  }; // return all of the publicly available methods
3621
3622  return MethodsAvailable;
3623};
3624
3625module.exports = EventManager;
3626
3627/***/ }),
3628/* 219 */,
3629/* 220 */
3630/***/ (function(module, exports, __webpack_require__) {
3631
3632"use strict";
3633
3634
3635var _interopRequireDefault = __webpack_require__(0);
3636
3637var _Object$defineProperty = __webpack_require__(2);
3638
3639_Object$defineProperty(exports, "__esModule", {
3640  value: true
3641});
3642
3643exports.default = void 0;
3644
3645var _stringify = _interopRequireDefault(__webpack_require__(144));
3646
3647var _keys = _interopRequireDefault(__webpack_require__(59));
3648
3649var _classCallCheck2 = _interopRequireDefault(__webpack_require__(6));
3650
3651var _createClass2 = _interopRequireDefault(__webpack_require__(7));
3652
3653var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(10));
3654
3655var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(4));
3656
3657var _inherits2 = _interopRequireDefault(__webpack_require__(11));
3658
3659var _default =
3660/*#__PURE__*/
3661function (_elementorModules$Mod) {
3662  (0, _inherits2.default)(_default, _elementorModules$Mod);
3663
3664  function _default() {
3665    (0, _classCallCheck2.default)(this, _default);
3666    return (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(_default).apply(this, arguments));
3667  }
3668
3669  (0, _createClass2.default)(_default, [{
3670    key: "get",
3671    value: function get(key, options) {
3672      options = options || {};
3673      var storage;
3674
3675      try {
3676        storage = options.session ? sessionStorage : localStorage;
3677      } catch (e) {
3678        return key ? undefined : {};
3679      }
3680
3681      var elementorStorage = storage.getItem('elementor');
3682
3683      if (elementorStorage) {
3684        elementorStorage = JSON.parse(elementorStorage);
3685      } else {
3686        elementorStorage = {};
3687      }
3688
3689      if (!elementorStorage.__expiration) {
3690        elementorStorage.__expiration = {};
3691      }
3692
3693      var expiration = elementorStorage.__expiration;
3694      var expirationToCheck = [];
3695
3696      if (key) {
3697        if (expiration[key]) {
3698          expirationToCheck = [key];
3699        }
3700      } else {
3701        expirationToCheck = (0, _keys.default)(expiration);
3702      }
3703
3704      var entryExpired = false;
3705      expirationToCheck.forEach(function (expirationKey) {
3706        if (new Date(expiration[expirationKey]) < new Date()) {
3707          delete elementorStorage[expirationKey];
3708          delete expiration[expirationKey];
3709          entryExpired = true;
3710        }
3711      });
3712
3713      if (entryExpired) {
3714        this.save(elementorStorage, options.session);
3715      }
3716
3717      if (key) {
3718        return elementorStorage[key];
3719      }
3720
3721      return elementorStorage;
3722    }
3723  }, {
3724    key: "set",
3725    value: function set(key, value, options) {
3726      options = options || {};
3727      var elementorStorage = this.get(null, options);
3728      elementorStorage[key] = value;
3729
3730      if (options.lifetimeInSeconds) {
3731        var date = new Date();
3732        date.setTime(date.getTime() + options.lifetimeInSeconds * 1000);
3733        elementorStorage.__expiration[key] = date.getTime();
3734      }
3735
3736      this.save(elementorStorage, options.session);
3737    }
3738  }, {
3739    key: "save",
3740    value: function save(object, session) {
3741      var storage;
3742
3743      try {
3744        storage = session ? sessionStorage : localStorage;
3745      } catch (e) {
3746        return;
3747      }
3748
3749      storage.setItem('elementor', (0, _stringify.default)(object));
3750    }
3751  }]);
3752  return _default;
3753}(elementorModules.Module);
3754
3755exports.default = _default;
3756
3757/***/ }),
3758/* 221 */
3759/***/ (function(module, exports, __webpack_require__) {
3760
3761"use strict";
3762
3763
3764var _interopRequireDefault = __webpack_require__(0);
3765
3766var _Object$defineProperty = __webpack_require__(2);
3767
3768_Object$defineProperty(exports, "__esModule", {
3769  value: true
3770});
3771
3772exports.default = void 0;
3773
3774var _classCallCheck2 = _interopRequireDefault(__webpack_require__(6));
3775
3776var _createClass2 = _interopRequireDefault(__webpack_require__(7));
3777
3778var _environment = _interopRequireDefault(__webpack_require__(150));
3779
3780var HotKeys =
3781/*#__PURE__*/
3782function () {
3783  function HotKeys() {
3784    (0, _classCallCheck2.default)(this, HotKeys);
3785    this.hotKeysHandlers = {};
3786  }
3787
3788  (0, _createClass2.default)(HotKeys, [{
3789    key: "applyHotKey",
3790    value: function applyHotKey(event) {
3791      var handlers = this.hotKeysHandlers[event.which];
3792
3793      if (!handlers) {
3794        return;
3795      }
3796
3797      jQuery.each(handlers, function (key, handler) {
3798        if (handler.isWorthHandling && !handler.isWorthHandling(event)) {
3799          return;
3800        } // Fix for some keyboard sources that consider alt key as ctrl key
3801
3802
3803        if (!handler.allowAltKey && event.altKey) {
3804          return;
3805        }
3806
3807        event.preventDefault();
3808        handler.handle(event);
3809      });
3810    }
3811  }, {
3812    key: "isControlEvent",
3813    value: function isControlEvent(event) {
3814      return event[_environment.default.mac ? 'metaKey' : 'ctrlKey'];
3815    }
3816  }, {
3817    key: "addHotKeyHandler",
3818    value: function addHotKeyHandler(keyCode, handlerName, handler) {
3819      if (!this.hotKeysHandlers[keyCode]) {
3820        this.hotKeysHandlers[keyCode] = {};
3821      }
3822
3823      this.hotKeysHandlers[keyCode][handlerName] = handler;
3824    }
3825  }, {
3826    key: "bindListener",
3827    value: function bindListener($listener) {
3828      $listener.on('keydown', this.applyHotKey.bind(this));
3829    }
3830  }]);
3831  return HotKeys;
3832}();
3833
3834exports.default = HotKeys;
3835
3836/***/ }),
3837/* 222 */
3838/***/ (function(module, exports, __webpack_require__) {
3839
3840"use strict";
3841
3842
3843var _interopRequireDefault = __webpack_require__(0);
3844
3845var _Object$defineProperty = __webpack_require__(2);
3846
3847_Object$defineProperty(exports, "__esModule", {
3848  value: true
3849});
3850
3851exports.default = void 0;
3852
3853__webpack_require__(26);
3854
3855var _classCallCheck2 = _interopRequireDefault(__webpack_require__(6));
3856
3857var _createClass2 = _interopRequireDefault(__webpack_require__(7));
3858
3859var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(10));
3860
3861var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(4));
3862
3863var _get2 = _interopRequireDefault(__webpack_require__(95));
3864
3865var _inherits2 = _interopRequireDefault(__webpack_require__(11));
3866
3867var _default =
3868/*#__PURE__*/
3869function (_elementorModules$Vie) {
3870  (0, _inherits2.default)(_default, _elementorModules$Vie);
3871
3872  function _default() {
3873    (0, _classCallCheck2.default)(this, _default);
3874    return (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(_default).apply(this, arguments));
3875  }
3876
3877  (0, _createClass2.default)(_default, [{
3878    key: "getDefaultSettings",
3879    value: function getDefaultSettings() {
3880      return {
3881        selectors: {
3882          elements: '.elementor-element',
3883          nestedDocumentElements: '.elementor .elementor-element'
3884        },
3885        classes: {
3886          editMode: 'elementor-edit-mode'
3887        }
3888      };
3889    }
3890  }, {
3891    key: "getDefaultElements",
3892    value: function getDefaultElements() {
3893      var selectors = this.getSettings('selectors');
3894      return {
3895        $elements: this.$element.find(selectors.elements).not(this.$element.find(selectors.nestedDocumentElements))
3896      };
3897    }
3898  }, {
3899    key: "getDocumentSettings",
3900    value: function getDocumentSettings(setting) {
3901      var elementSettings;
3902
3903      if (this.isEdit) {
3904        elementSettings = {};
3905        var settings = elementor.settings.page.model;
3906        jQuery.each(settings.getActiveControls(), function (controlKey) {
3907          elementSettings[controlKey] = settings.attributes[controlKey];
3908        });
3909      } else {
3910        elementSettings = this.$element.data('elementor-settings') || {};
3911      }
3912
3913      return this.getItems(elementSettings, setting);
3914    }
3915  }, {
3916    key: "runElementsHandlers",
3917    value: function runElementsHandlers() {
3918      this.elements.$elements.each(function (index, element) {
3919        return elementorFrontend.elementsHandler.runReadyTrigger(element);
3920      });
3921    }
3922  }, {
3923    key: "onInit",
3924    value: function onInit() {
3925      this.$element = this.getSettings('$element');
3926      (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "onInit", this).call(this);
3927      this.isEdit = this.$element.hasClass(this.getSettings('classes.editMode'));
3928
3929      if (this.isEdit) {
3930        elementor.settings.page.model.on('change', this.onSettingsChange.bind(this));
3931      } else {
3932        this.runElementsHandlers();
3933      }
3934    }
3935  }, {
3936    key: "onSettingsChange",
3937    value: function onSettingsChange() {}
3938  }]);
3939  return _default;
3940}(elementorModules.ViewModule);
3941
3942exports.default = _default;
3943
3944/***/ }),
3945/* 223 */
3946/***/ (function(module, exports, __webpack_require__) {
3947
3948"use strict";
3949
3950
3951module.exports = elementorModules.frontend.handlers.Base.extend({
3952  $activeContent: null,
3953  getDefaultSettings: function getDefaultSettings() {
3954    return {
3955      selectors: {
3956        tabTitle: '.elementor-tab-title',
3957        tabContent: '.elementor-tab-content'
3958      },
3959      classes: {
3960        active: 'elementor-active'
3961      },
3962      showTabFn: 'show',
3963      hideTabFn: 'hide',
3964      toggleSelf: true,
3965      hidePrevious: true,
3966      autoExpand: true
3967    };
3968  },
3969  getDefaultElements: function getDefaultElements() {
3970    var selectors = this.getSettings('selectors');
3971    return {
3972      $tabTitles: this.findElement(selectors.tabTitle),
3973      $tabContents: this.findElement(selectors.tabContent)
3974    };
3975  },
3976  activateDefaultTab: function activateDefaultTab() {
3977    var settings = this.getSettings();
3978
3979    if (!settings.autoExpand || 'editor' === settings.autoExpand && !this.isEdit) {
3980      return;
3981    }
3982
3983    var defaultActiveTab = this.getEditSettings('activeItemIndex') || 1,
3984        originalToggleMethods = {
3985      showTabFn: settings.showTabFn,
3986      hideTabFn: settings.hideTabFn
3987    }; // Toggle tabs without animation to avoid jumping
3988
3989    this.setSettings({
3990      showTabFn: 'show',
3991      hideTabFn: 'hide'
3992    });
3993    this.changeActiveTab(defaultActiveTab); // Return back original toggle effects
3994
3995    this.setSettings(originalToggleMethods);
3996  },
3997  deactivateActiveTab: function deactivateActiveTab(tabIndex) {
3998    var settings = this.getSettings(),
3999        activeClass = settings.classes.active,
4000        activeFilter = tabIndex ? '[data-tab="' + tabIndex + '"]' : '.' + activeClass,
4001        $activeTitle = this.elements.$tabTitles.filter(activeFilter),
4002        $activeContent = this.elements.$tabContents.filter(activeFilter);
4003    $activeTitle.add($activeContent).removeClass(activeClass);
4004    $activeContent[settings.hideTabFn]();
4005  },
4006  activateTab: function activateTab(tabIndex) {
4007    var settings = this.getSettings(),
4008        activeClass = settings.classes.active,
4009        $requestedTitle = this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]'),
4010        $requestedContent = this.elements.$tabContents.filter('[data-tab="' + tabIndex + '"]');
4011    $requestedTitle.add($requestedContent).addClass(activeClass);
4012    $requestedContent[settings.showTabFn]();
4013  },
4014  isActiveTab: function isActiveTab(tabIndex) {
4015    return this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]').hasClass(this.getSettings('classes.active'));
4016  },
4017  bindEvents: function bindEvents() {
4018    var _this = this;
4019
4020    this.elements.$tabTitles.on({
4021      keydown: function keydown(event) {
4022        if ('Enter' === event.key) {
4023          event.preventDefault();
4024
4025          _this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
4026        }
4027      },
4028      click: function click(event) {
4029        event.preventDefault();
4030
4031        _this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
4032      }
4033    });
4034  },
4035  onInit: function onInit() {
4036    elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments);
4037    this.activateDefaultTab();
4038  },
4039  onEditSettingsChange: function onEditSettingsChange(propertyName) {
4040    if ('activeItemIndex' === propertyName) {
4041      this.activateDefaultTab();
4042    }
4043  },
4044  changeActiveTab: function changeActiveTab(tabIndex) {
4045    var isActiveTab = this.isActiveTab(tabIndex),
4046        settings = this.getSettings();
4047
4048    if ((settings.toggleSelf || !isActiveTab) && settings.hidePrevious) {
4049      this.deactivateActiveTab();
4050    }
4051
4052    if (!settings.hidePrevious && isActiveTab) {
4053      this.deactivateActiveTab(tabIndex);
4054    }
4055
4056    if (!isActiveTab) {
4057      this.activateTab(tabIndex);
4058    }
4059  }
4060});
4061
4062/***/ }),
4063/* 224 */,
4064/* 225 */,
4065/* 226 */,
4066/* 227 */,
4067/* 228 */,
4068/* 229 */,
4069/* 230 */,
4070/* 231 */,
4071/* 232 */,
4072/* 233 */,
4073/* 234 */,
4074/* 235 */,
4075/* 236 */,
4076/* 237 */,
4077/* 238 */,
4078/* 239 */,
4079/* 240 */,
4080/* 241 */,
4081/* 242 */,
4082/* 243 */,
4083/* 244 */,
4084/* 245 */,
4085/* 246 */,
4086/* 247 */,
4087/* 248 */,
4088/* 249 */,
4089/* 250 */,
4090/* 251 */,
4091/* 252 */,
4092/* 253 */,
4093/* 254 */,
4094/* 255 */,
4095/* 256 */,
4096/* 257 */,
4097/* 258 */,
4098/* 259 */,
4099/* 260 */,
4100/* 261 */,
4101/* 262 */,
4102/* 263 */,
4103/* 264 */,
4104/* 265 */,
4105/* 266 */,
4106/* 267 */,
4107/* 268 */,
4108/* 269 */,
4109/* 270 */,
4110/* 271 */,
4111/* 272 */,
4112/* 273 */,
4113/* 274 */,
4114/* 275 */,
4115/* 276 */,
4116/* 277 */,
4117/* 278 */,
4118/* 279 */,
4119/* 280 */,
4120/* 281 */,
4121/* 282 */,
4122/* 283 */,
4123/* 284 */,
4124/* 285 */,
4125/* 286 */,
4126/* 287 */,
4127/* 288 */,
4128/* 289 */,
4129/* 290 */,
4130/* 291 */,
4131/* 292 */,
4132/* 293 */,
4133/* 294 */,
4134/* 295 */,
4135/* 296 */,
4136/* 297 */,
4137/* 298 */,
4138/* 299 */,
4139/* 300 */,
4140/* 301 */,
4141/* 302 */,
4142/* 303 */,
4143/* 304 */,
4144/* 305 */,
4145/* 306 */,
4146/* 307 */,
4147/* 308 */,
4148/* 309 */,
4149/* 310 */,
4150/* 311 */,
4151/* 312 */,
4152/* 313 */,
4153/* 314 */,
4154/* 315 */,
4155/* 316 */,
4156/* 317 */,
4157/* 318 */,
4158/* 319 */,
4159/* 320 */,
4160/* 321 */,
4161/* 322 */,
4162/* 323 */,
4163/* 324 */,
4164/* 325 */,
4165/* 326 */,
4166/* 327 */,
4167/* 328 */,
4168/* 329 */,
4169/* 330 */,
4170/* 331 */,
4171/* 332 */,
4172/* 333 */,
4173/* 334 */,
4174/* 335 */,
4175/* 336 */,
4176/* 337 */,
4177/* 338 */,
4178/* 339 */,
4179/* 340 */,
4180/* 341 */,
4181/* 342 */,
4182/* 343 */,
4183/* 344 */,
4184/* 345 */,
4185/* 346 */,
4186/* 347 */,
4187/* 348 */,
4188/* 349 */,
4189/* 350 */,
4190/* 351 */,
4191/* 352 */,
4192/* 353 */,
4193/* 354 */,
4194/* 355 */,
4195/* 356 */,
4196/* 357 */,
4197/* 358 */,
4198/* 359 */,
4199/* 360 */,
4200/* 361 */,
4201/* 362 */,
4202/* 363 */,
4203/* 364 */,
4204/* 365 */,
4205/* 366 */,
4206/* 367 */,
4207/* 368 */,
4208/* 369 */,
4209/* 370 */,
4210/* 371 */,
4211/* 372 */,
4212/* 373 */,
4213/* 374 */,
4214/* 375 */,
4215/* 376 */,
4216/* 377 */,
4217/* 378 */,
4218/* 379 */,
4219/* 380 */,
4220/* 381 */,
4221/* 382 */,
4222/* 383 */,
4223/* 384 */,
4224/* 385 */,
4225/* 386 */,
4226/* 387 */,
4227/* 388 */,
4228/* 389 */,
4229/* 390 */,
4230/* 391 */,
4231/* 392 */,
4232/* 393 */,
4233/* 394 */,
4234/* 395 */,
4235/* 396 */,
4236/* 397 */,
4237/* 398 */,
4238/* 399 */,
4239/* 400 */,
4240/* 401 */,
4241/* 402 */,
4242/* 403 */,
4243/* 404 */,
4244/* 405 */,
4245/* 406 */,
4246/* 407 */,
4247/* 408 */,
4248/* 409 */,
4249/* 410 */,
4250/* 411 */,
4251/* 412 */,
4252/* 413 */,
4253/* 414 */,
4254/* 415 */,
4255/* 416 */,
4256/* 417 */,
4257/* 418 */,
4258/* 419 */,
4259/* 420 */,
4260/* 421 */,
4261/* 422 */,
4262/* 423 */,
4263/* 424 */,
4264/* 425 */,
4265/* 426 */,
4266/* 427 */,
4267/* 428 */,
4268/* 429 */,
4269/* 430 */,
4270/* 431 */,
4271/* 432 */,
4272/* 433 */,
4273/* 434 */,
4274/* 435 */,
4275/* 436 */,
4276/* 437 */,
4277/* 438 */,
4278/* 439 */,
4279/* 440 */,
4280/* 441 */,
4281/* 442 */,
4282/* 443 */,
4283/* 444 */,
4284/* 445 */,
4285/* 446 */,
4286/* 447 */,
4287/* 448 */,
4288/* 449 */,
4289/* 450 */,
4290/* 451 */,
4291/* 452 */,
4292/* 453 */,
4293/* 454 */,
4294/* 455 */,
4295/* 456 */,
4296/* 457 */,
4297/* 458 */
4298/***/ (function(module, exports, __webpack_require__) {
4299
4300"use strict";
4301
4302
4303var _interopRequireDefault = __webpack_require__(0);
4304
4305__webpack_require__(26);
4306
4307__webpack_require__(67);
4308
4309var _classCallCheck2 = _interopRequireDefault(__webpack_require__(6));
4310
4311var _createClass2 = _interopRequireDefault(__webpack_require__(7));
4312
4313var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(10));
4314
4315var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(4));
4316
4317var _inherits2 = _interopRequireDefault(__webpack_require__(11));
4318
4319var _documentsManager = _interopRequireDefault(__webpack_require__(459));
4320
4321var _hotKeys = _interopRequireDefault(__webpack_require__(221));
4322
4323var _storage = _interopRequireDefault(__webpack_require__(220));
4324
4325var _environment = _interopRequireDefault(__webpack_require__(150));
4326
4327/* global elementorFrontendConfig */
4328var EventManager = __webpack_require__(218),
4329    ElementsHandler = __webpack_require__(460),
4330    YouTubeModule = __webpack_require__(472),
4331    AnchorsModule = __webpack_require__(473),
4332    LightboxModule = __webpack_require__(474);
4333
4334var Frontend =
4335/*#__PURE__*/
4336function (_elementorModules$Vie) {
4337  (0, _inherits2.default)(Frontend, _elementorModules$Vie);
4338
4339  function Frontend() {
4340    var _getPrototypeOf2;
4341
4342    var _this;
4343
4344    (0, _classCallCheck2.default)(this, Frontend);
4345
4346    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
4347      args[_key] = arguments[_key];
4348    }
4349
4350    _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(Frontend)).call.apply(_getPrototypeOf2, [this].concat(args)));
4351    _this.config = elementorFrontendConfig;
4352    return _this;
4353  } // TODO: BC since 2.5.0
4354
4355
4356  (0, _createClass2.default)(Frontend, [{
4357    key: "getDefaultSettings",
4358    value: function getDefaultSettings() {
4359      return {
4360        selectors: {
4361          elementor: '.elementor',
4362          adminBar: '#wpadminbar'
4363        },
4364        classes: {
4365          ie: 'elementor-msie'
4366        }
4367      };
4368    }
4369  }, {
4370    key: "getDefaultElements",
4371    value: function getDefaultElements() {
4372      var defaultElements = {
4373        window: window,
4374        $window: jQuery(window),
4375        $document: jQuery(document),
4376        $head: jQuery(document.head),
4377        $body: jQuery(document.body),
4378        $deviceMode: jQuery('<span>', {
4379          id: 'elementor-device-mode',
4380          class: 'elementor-screen-only'
4381        })
4382      };
4383      defaultElements.$body.append(defaultElements.$deviceMode);
4384      return defaultElements;
4385    }
4386  }, {
4387    key: "bindEvents",
4388    value: function bindEvents() {
4389      var _this2 = this;
4390
4391      this.elements.$window.on('resize', function () {
4392        return _this2.setDeviceModeData();
4393      });
4394    }
4395    /**
4396     * @deprecated 2.4.0 Use just `this.elements` instead
4397     */
4398
4399  }, {
4400    key: "getElements",
4401    value: function getElements(elementName) {
4402      return this.getItems(this.elements, elementName);
4403    }
4404    /**
4405     * @deprecated 2.4.0 This method was never in use
4406     */
4407
4408  }, {
4409    key: "getPageSettings",
4410    value: function getPageSettings(settingName) {
4411      var settingsObject = this.isEditMode() ? elementor.settings.page.model.attributes : this.config.settings.page;
4412      return this.getItems(settingsObject, settingName);
4413    }
4414  }, {
4415    key: "getGeneralSettings",
4416    value: function getGeneralSettings(settingName) {
4417      var settingsObject = this.isEditMode() ? elementor.settings.general.model.attributes : this.config.settings.general;
4418      return this.getItems(settingsObject, settingName);
4419    }
4420  }, {
4421    key: "getCurrentDeviceMode",
4422    value: function getCurrentDeviceMode() {
4423      return getComputedStyle(this.elements.$deviceMode[0], ':after').content.replace(/"/g, '');
4424    }
4425  }, {
4426    key: "getCurrentDeviceSetting",
4427    value: function getCurrentDeviceSetting(settings, settingKey) {
4428      var devices = ['desktop', 'tablet', 'mobile'],
4429          currentDeviceMode = elementorFrontend.getCurrentDeviceMode();
4430      var currentDeviceIndex = devices.indexOf(currentDeviceMode);
4431
4432      while (currentDeviceIndex > 0) {
4433        var currentDevice = devices[currentDeviceIndex],
4434            fullSettingKey = settingKey + '_' + currentDevice,
4435            deviceValue = settings[fullSettingKey];
4436
4437        if (deviceValue) {
4438          return deviceValue;
4439        }
4440
4441        currentDeviceIndex--;
4442      }
4443
4444      return settings[settingKey];
4445    }
4446  }, {
4447    key: "isEditMode",
4448    value: function isEditMode() {
4449      return this.config.environmentMode.edit;
4450    }
4451  }, {
4452    key: "isWPPreviewMode",
4453    value: function isWPPreviewMode() {
4454      return this.config.environmentMode.wpPreview;
4455    }
4456  }, {
4457    key: "initDialogsManager",
4458    value: function initDialogsManager() {
4459      var dialogsManager;
4460
4461      this.getDialogsManager = function () {
4462        if (!dialogsManager) {
4463          dialogsManager = new DialogsManager.Instance();
4464        }
4465
4466        return dialogsManager;
4467      };
4468    }
4469  }, {
4470    key: "initHotKeys",
4471    value: function initHotKeys() {
4472      this.hotKeys = new _hotKeys.default();
4473      this.hotKeys.bindListener(this.elements.$window);
4474    }
4475  }, {
4476    key: "initOnReadyComponents",
4477    value: function initOnReadyComponents() {
4478      this.utils = {
4479        youtube: new YouTubeModule(),
4480        anchors: new AnchorsModule(),
4481        lightbox: new LightboxModule()
4482      }; // TODO: BC since 2.4.0
4483
4484      this.modules = {
4485        StretchElement: elementorModules.frontend.tools.StretchElement,
4486        Masonry: elementorModules.utils.Masonry
4487      };
4488      this.elementsHandler = new ElementsHandler(jQuery);
4489      this.documentsManager = new _documentsManager.default();
4490      this.trigger('components:init');
4491    }
4492  }, {
4493    key: "initOnReadyElements",
4494    value: function initOnReadyElements() {
4495      this.elements.$wpAdminBar = this.elements.$document.find(this.getSettings('selectors.adminBar'));
4496    }
4497  }, {
4498    key: "addIeCompatibility",
4499    value: function addIeCompatibility() {
4500      var el = document.createElement('div'),
4501          supportsGrid = 'string' === typeof el.style.grid;
4502
4503      if (!_environment.default.ie && supportsGrid) {
4504        return;
4505      }
4506
4507      this.elements.$body.addClass(this.getSettings('classes.ie'));
4508      var msieCss = '<link rel="stylesheet" id="elementor-frontend-css-msie" href="' + this.config.urls.assets + 'css/frontend-msie.min.css?' + this.config.version + '" type="text/css" />';
4509      this.elements.$body.append(msieCss);
4510    }
4511  }, {
4512    key: "setDeviceModeData",
4513    value: function setDeviceModeData() {
4514      this.elements.$body.attr('data-elementor-device-mode', this.getCurrentDeviceMode());
4515    }
4516  }, {
4517    key: "addListenerOnce",
4518    value: function addListenerOnce(listenerID, event, callback, to) {
4519      if (!to) {
4520        to = this.elements.$window;
4521      }
4522
4523      if (!this.isEditMode()) {
4524        to.on(event, callback);
4525        return;
4526      }
4527
4528      this.removeListeners(listenerID, event, to);
4529
4530      if (to instanceof jQuery) {
4531        var eventNS = event + '.' + listenerID;
4532        to.on(eventNS, callback);
4533      } else {
4534        to.on(event, callback, listenerID);
4535      }
4536    }
4537  }, {
4538    key: "removeListeners",
4539    value: function removeListeners(listenerID, event, callback, from) {
4540      if (!from) {
4541        from = this.elements.$window;
4542      }
4543
4544      if (from instanceof jQuery) {
4545        var eventNS = event + '.' + listenerID;
4546        from.off(eventNS, callback);
4547      } else {
4548        from.off(event, callback, listenerID);
4549      }
4550    } // Based on underscore function
4551
4552  }, {
4553    key: "debounce",
4554    value: function debounce(func, wait) {
4555      var timeout;
4556      return function () {
4557        var context = this,
4558            args = arguments;
4559
4560        var later = function later() {
4561          timeout = null;
4562          func.apply(context, args);
4563        };
4564
4565        var callNow = !timeout;
4566        clearTimeout(timeout);
4567        timeout = setTimeout(later, wait);
4568
4569        if (callNow) {
4570          func.apply(context, args);
4571        }
4572      };
4573    }
4574  }, {
4575    key: "waypoint",
4576    value: function waypoint($element, callback, options) {
4577      var defaultOptions = {
4578        offset: '100%',
4579        triggerOnce: true
4580      };
4581      options = jQuery.extend(defaultOptions, options);
4582
4583      var correctCallback = function correctCallback() {
4584        var element = this.element || this,
4585            result = callback.apply(element, arguments); // If is Waypoint new API and is frontend
4586
4587        if (options.triggerOnce && this.destroy) {
4588          this.destroy();
4589        }
4590
4591        return result;
4592      };
4593
4594      return $element.elementorWaypoint(correctCallback, options);
4595    }
4596  }, {
4597    key: "muteMigrationTraces",
4598    value: function muteMigrationTraces() {
4599      jQuery.migrateMute = true;
4600      jQuery.migrateTrace = false;
4601    }
4602  }, {
4603    key: "init",
4604    value: function init() {
4605      this.hooks = new EventManager();
4606      this.storage = new _storage.default();
4607      this.addIeCompatibility();
4608      this.setDeviceModeData();
4609      this.initDialogsManager();
4610
4611      if (this.isEditMode()) {
4612        this.muteMigrationTraces();
4613      } // Keep this line before `initOnReadyComponents` call
4614
4615
4616      this.elements.$window.trigger('elementor/frontend/init');
4617
4618      if (!this.isEditMode()) {
4619        this.initHotKeys();
4620      }
4621
4622      this.initOnReadyElements();
4623      this.initOnReadyComponents();
4624    }
4625  }, {
4626    key: "Module",
4627    get: function get() {
4628      if (this.isEditMode()) {
4629        parent.elementorCommon.helpers.deprecatedMethod('elementorFrontend.Module', '2.5.0', 'elementorModules.frontend.handlers.Base');
4630      }
4631
4632      return elementorModules.frontend.handlers.Base;
4633    }
4634  }]);
4635  return Frontend;
4636}(elementorModules.ViewModule);
4637
4638window.elementorFrontend = new Frontend();
4639
4640if (!elementorFrontend.isEditMode()) {
4641  jQuery(function () {
4642    return elementorFrontend.init();
4643  });
4644}
4645
4646/***/ }),
4647/* 459 */
4648/***/ (function(module, exports, __webpack_require__) {
4649
4650"use strict";
4651
4652
4653var _interopRequireDefault = __webpack_require__(0);
4654
4655var _Object$defineProperty = __webpack_require__(2);
4656
4657_Object$defineProperty(exports, "__esModule", {
4658  value: true
4659});
4660
4661exports.default = void 0;
4662
4663var _classCallCheck2 = _interopRequireDefault(__webpack_require__(6));
4664
4665var _createClass2 = _interopRequireDefault(__webpack_require__(7));
4666
4667var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(10));
4668
4669var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(4));
4670
4671var _inherits2 = _interopRequireDefault(__webpack_require__(11));
4672
4673var _document = _interopRequireDefault(__webpack_require__(222));
4674
4675var _default =
4676/*#__PURE__*/
4677function (_elementorModules$Vie) {
4678  (0, _inherits2.default)(_default, _elementorModules$Vie);
4679
4680  function _default() {
4681    var _getPrototypeOf2;
4682
4683    var _this;
4684
4685    (0, _classCallCheck2.default)(this, _default);
4686
4687    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
4688      args[_key] = arguments[_key];
4689    }
4690
4691    _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(_default)).call.apply(_getPrototypeOf2, [this].concat(args)));
4692    _this.documents = {};
4693
4694    _this.initDocumentClasses();
4695
4696    _this.attachDocumentsClasses();
4697
4698    return _this;
4699  }
4700
4701  (0, _createClass2.default)(_default, [{
4702    key: "getDefaultSettings",
4703    value: function getDefaultSettings() {
4704      return {
4705        selectors: {
4706          document: '.elementor'
4707        }
4708      };
4709    }
4710  }, {
4711    key: "getDefaultElements",
4712    value: function getDefaultElements() {
4713      var selectors = this.getSettings('selectors');
4714      return {
4715        $documents: jQuery(selectors.document)
4716      };
4717    }
4718  }, {
4719    key: "initDocumentClasses",
4720    value: function initDocumentClasses() {
4721      this.documentClasses = {
4722        base: _document.default
4723      };
4724      elementorFrontend.hooks.doAction('elementor/frontend/documents-manager/init-classes', this);
4725    }
4726  }, {
4727    key: "addDocumentClass",
4728    value: function addDocumentClass(documentType, documentClass) {
4729      this.documentClasses[documentType] = documentClass;
4730    }
4731  }, {
4732    key: "attachDocumentsClasses",
4733    value: function attachDocumentsClasses() {
4734      var _this2 = this;
4735
4736      this.elements.$documents.each(function (index, document) {
4737        return _this2.attachDocumentClass(jQuery(document));
4738      });
4739    }
4740  }, {
4741    key: "attachDocumentClass",
4742    value: function attachDocumentClass($document) {
4743      var documentData = $document.data(),
4744          documentID = documentData.elementorId,
4745          documentType = documentData.elementorType,
4746          DocumentClass = this.documentClasses[documentType] || this.documentClasses.base;
4747      this.documents[documentID] = new DocumentClass({
4748        $element: $document,
4749        id: documentID
4750      });
4751    }
4752  }]);
4753  return _default;
4754}(elementorModules.ViewModule);
4755
4756exports.default = _default;
4757
4758/***/ }),
4759/* 460 */
4760/***/ (function(module, exports, __webpack_require__) {
4761
4762"use strict";
4763
4764
4765module.exports = function ($) {
4766  var self = this; // element-type.skin-type
4767
4768  var handlers = {
4769    // Elements
4770    section: __webpack_require__(461),
4771    // Widgets
4772    'accordion.default': __webpack_require__(462),
4773    'alert.default': __webpack_require__(463),
4774    'counter.default': __webpack_require__(464),
4775    'progress.default': __webpack_require__(465),
4776    'tabs.default': __webpack_require__(466),
4777    'toggle.default': __webpack_require__(467),
4778    'video.default': __webpack_require__(468),
4779    'image-carousel.default': __webpack_require__(469),
4780    'text-editor.default': __webpack_require__(470)
4781  };
4782  var handlersInstances = {};
4783
4784  var addGlobalHandlers = function addGlobalHandlers() {
4785    elementorFrontend.hooks.addAction('frontend/element_ready/global', __webpack_require__(471));
4786  };
4787
4788  var addElementsHandlers = function addElementsHandlers() {
4789    $.each(handlers, function (elementName, funcCallback) {
4790      elementorFrontend.hooks.addAction('frontend/element_ready/' + elementName, funcCallback);
4791    });
4792  };
4793
4794  var init = function init() {
4795    self.initHandlers();
4796  };
4797
4798  this.initHandlers = function () {
4799    addGlobalHandlers();
4800    addElementsHandlers();
4801  };
4802
4803  this.addHandler = function (HandlerClass, options) {
4804    var elementID = options.$element.data('model-cid');
4805    var handlerID; // If element is in edit mode
4806
4807    if (elementID) {
4808      handlerID = HandlerClass.prototype.getConstructorID();
4809
4810      if (!handlersInstances[elementID]) {
4811        handlersInstances[elementID] = {};
4812      }
4813
4814      var oldHandler = handlersInstances[elementID][handlerID];
4815
4816      if (oldHandler) {
4817        oldHandler.onDestroy();
4818      }
4819    }
4820
4821    var newHandler = new HandlerClass(options);
4822
4823    if (elementID) {
4824      handlersInstances[elementID][handlerID] = newHandler;
4825    }
4826  };
4827
4828  this.getHandlers = function (handlerName) {
4829    if (handlerName) {
4830      return handlers[handlerName];
4831    }
4832
4833    return handlers;
4834  };
4835
4836  this.runReadyTrigger = function (scope) {
4837    // Initializing the `$scope` as frontend jQuery instance
4838    var $scope = jQuery(scope),
4839        elementType = $scope.attr('data-element_type');
4840
4841    if (!elementType) {
4842      return;
4843    }
4844
4845    elementorFrontend.hooks.doAction('frontend/element_ready/global', $scope, $);
4846    elementorFrontend.hooks.doAction('frontend/element_ready/' + elementType, $scope, $);
4847
4848    if ('widget' === elementType) {
4849      elementorFrontend.hooks.doAction('frontend/element_ready/' + $scope.attr('data-widget_type'), $scope, $);
4850    }
4851  };
4852
4853  init();
4854};
4855
4856/***/ }),
4857/* 461 */
4858/***/ (function(module, exports, __webpack_require__) {
4859
4860"use strict";
4861
4862
4863__webpack_require__(96);
4864
4865__webpack_require__(67);
4866
4867__webpack_require__(26);
4868
4869var BackgroundVideo = elementorModules.frontend.handlers.Base.extend({
4870  player: null,
4871  isYTVideo: null,
4872  getDefaultSettings: function getDefaultSettings() {
4873    return {
4874      selectors: {
4875        backgroundVideoContainer: '.elementor-background-video-container',
4876        backgroundVideoEmbed: '.elementor-background-video-embed',
4877        backgroundVideoHosted: '.elementor-background-video-hosted'
4878      }
4879    };
4880  },
4881  getDefaultElements: function getDefaultElements() {
4882    var selectors = this.getSettings('selectors'),
4883        elements = {
4884      $backgroundVideoContainer: this.$element.find(selectors.backgroundVideoContainer)
4885    };
4886    elements.$backgroundVideoEmbed = elements.$backgroundVideoContainer.children(selectors.backgroundVideoEmbed);
4887    elements.$backgroundVideoHosted = elements.$backgroundVideoContainer.children(selectors.backgroundVideoHosted);
4888    return elements;
4889  },
4890  calcVideosSize: function calcVideosSize() {
4891    var containerWidth = this.elements.$backgroundVideoContainer.outerWidth(),
4892        containerHeight = this.elements.$backgroundVideoContainer.outerHeight(),
4893        aspectRatioSetting = '16:9',
4894        //TEMP
4895    aspectRatioArray = aspectRatioSetting.split(':'),
4896        aspectRatio = aspectRatioArray[0] / aspectRatioArray[1],
4897        ratioWidth = containerWidth / aspectRatio,
4898        ratioHeight = containerHeight * aspectRatio,
4899        isWidthFixed = containerWidth / containerHeight > aspectRatio;
4900    return {
4901      width: isWidthFixed ? containerWidth : ratioHeight,
4902      height: isWidthFixed ? ratioWidth : containerHeight
4903    };
4904  },
4905  changeVideoSize: function changeVideoSize() {
4906    var $video = this.isYTVideo ? jQuery(this.player.getIframe()) : this.elements.$backgroundVideoHosted,
4907        size = this.calcVideosSize();
4908    $video.width(size.width).height(size.height);
4909  },
4910  startVideoLoop: function startVideoLoop(firstTime) {
4911    var self = this; // If the section has been removed
4912
4913    if (!self.player.getIframe().contentWindow) {
4914      return;
4915    }
4916
4917    var elementSettings = self.getElementSettings(),
4918        startPoint = elementSettings.background_video_start || 0,
4919        endPoint = elementSettings.background_video_end;
4920
4921    if (elementSettings.background_play_once && !firstTime) {
4922      self.player.stopVideo();
4923      return;
4924    }
4925
4926    self.player.seekTo(startPoint);
4927
4928    if (endPoint) {
4929      var durationToEnd = endPoint - startPoint + 1;
4930      setTimeout(function () {
4931        self.startVideoLoop(false);
4932      }, durationToEnd * 1000);
4933    }
4934  },
4935  prepareYTVideo: function prepareYTVideo(YT, videoID) {
4936    var self = this,
4937        $backgroundVideoContainer = self.elements.$backgroundVideoContainer,
4938        elementSettings = self.getElementSettings(),
4939        startStateCode = YT.PlayerState.PLAYING; // Since version 67, Chrome doesn't fire the `PLAYING` state at start time
4940
4941    if (window.chrome) {
4942      startStateCode = YT.PlayerState.UNSTARTED;
4943    }
4944
4945    $backgroundVideoContainer.addClass('elementor-loading elementor-invisible');
4946    self.player = new YT.Player(self.elements.$backgroundVideoEmbed[0], {
4947      videoId: videoID,
4948      events: {
4949        onReady: function onReady() {
4950          self.player.mute();
4951          self.changeVideoSize();
4952          self.startVideoLoop(true);
4953          self.player.playVideo();
4954        },
4955        onStateChange: function onStateChange(event) {
4956          switch (event.data) {
4957            case startStateCode:
4958              $backgroundVideoContainer.removeClass('elementor-invisible elementor-loading');
4959              break;
4960
4961            case YT.PlayerState.ENDED:
4962              self.player.seekTo(elementSettings.background_video_start || 0);
4963
4964              if (elementSettings.background_play_once) {
4965                self.player.destroy();
4966              }
4967
4968          }
4969        }
4970      },
4971      playerVars: {
4972        controls: 0,
4973        rel: 0
4974      }
4975    });
4976  },
4977  activate: function activate() {
4978    var self = this,
4979        videoLink = self.getElementSettings('background_video_link'),
4980        videoID = elementorFrontend.utils.youtube.getYoutubeIDFromURL(videoLink),
4981        playOnce = self.getElementSettings('background_play_once');
4982    self.isYTVideo = !!videoID;
4983
4984    if (videoID) {
4985      elementorFrontend.utils.youtube.onYoutubeApiReady(function (YT) {
4986        setTimeout(function () {
4987          self.prepareYTVideo(YT, videoID);
4988        }, 1);
4989      });
4990    } else {
4991      var startTime = self.getElementSettings('background_video_start'),
4992          endTime = self.getElementSettings('background_video_end');
4993
4994      if (startTime || endTime) {
4995        videoLink += '#t=' + (startTime || 0) + (endTime ? ',' + endTime : '');
4996      }
4997
4998      self.elements.$backgroundVideoHosted.attr('src', videoLink).one('canplay', self.changeVideoSize);
4999
5000      if (playOnce) {
5001        self.elements.$backgroundVideoHosted.on('ended', function () {
5002          self.elements.$backgroundVideoHosted.hide();
5003        });
5004      }
5005    }
5006
5007    elementorFrontend.elements.$window.on('resize', self.changeVideoSize);
5008  },
5009  deactivate: function deactivate() {
5010    if (this.isYTVideo && this.player.getIframe()) {
5011      this.player.destroy();
5012    } else {
5013      this.elements.$backgroundVideoHosted.removeAttr('src').off('ended');
5014    }
5015
5016    elementorFrontend.elements.$window.off('resize', this.changeVideoSize);
5017  },
5018  run: function run() {
5019    var elementSettings = this.getElementSettings();
5020
5021    if ('video' === elementSettings.background_background && elementSettings.background_video_link) {
5022      this.activate();
5023    } else {
5024      this.deactivate();
5025    }
5026  },
5027  onInit: function onInit() {
5028    elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments);
5029    this.run();
5030  },
5031  onElementChange: function onElementChange(propertyName) {
5032    if ('background_background' === propertyName) {
5033      this.run();
5034    }
5035  }
5036});
5037var StretchedSection = elementorModules.frontend.handlers.Base.extend({
5038  stretchElement: null,
5039  bindEvents: function bindEvents() {
5040    var handlerID = this.getUniqueHandlerID();
5041    elementorFrontend.addListenerOnce(handlerID, 'resize', this.stretch);
5042    elementorFrontend.addListenerOnce(handlerID, 'sticky:stick', this.stretch, this.$element);
5043    elementorFrontend.addListenerOnce(handlerID, 'sticky:unstick', this.stretch, this.$element);
5044  },
5045  unbindEvents: function unbindEvents() {
5046    elementorFrontend.removeListeners(this.getUniqueHandlerID(), 'resize', this.stretch);
5047  },
5048  initStretch: function initStretch() {
5049    this.stretchElement = new elementorModules.frontend.tools.StretchElement({
5050      element: this.$element,
5051      selectors: {
5052        container: this.getStretchContainer()
5053      }
5054    });
5055  },
5056  getStretchContainer: function getStretchContainer() {
5057    return elementorFrontend.getGeneralSettings('elementor_stretched_section_container') || window;
5058  },
5059  stretch: function stretch() {
5060    if (!this.getElementSettings('stretch_section')) {
5061      return;
5062    }
5063
5064    this.stretchElement.stretch();
5065  },
5066  onInit: function onInit() {
5067    elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments);
5068    this.initStretch();
5069    this.stretch();
5070  },
5071  onElementChange: function onElementChange(propertyName) {
5072    if ('stretch_section' === propertyName) {
5073      if (this.getElementSettings('stretch_section')) {
5074        this.stretch();
5075      } else {
5076        this.stretchElement.reset();
5077      }
5078    }
5079  },
5080  onGeneralSettingsChange: function onGeneralSettingsChange(changed) {
5081    if ('elementor_stretched_section_container' in changed) {
5082      this.stretchElement.setSettings('selectors.container', this.getStretchContainer());
5083      this.stretch();
5084    }
5085  }
5086});
5087var Shapes = elementorModules.frontend.handlers.Base.extend({
5088  getDefaultSettings: function getDefaultSettings() {
5089    return {
5090      selectors: {
5091        container: '> .elementor-shape-%s'
5092      },
5093      svgURL: elementorFrontend.config.urls.assets + 'shapes/'
5094    };
5095  },
5096  getDefaultElements: function getDefaultElements() {
5097    var elements = {},
5098        selectors = this.getSettings('selectors');
5099    elements.$topContainer = this.$element.find(selectors.container.replace('%s', 'top'));
5100    elements.$bottomContainer = this.$element.find(selectors.container.replace('%s', 'bottom'));
5101    return elements;
5102  },
5103  getSvgURL: function getSvgURL(shapeType, fileName) {
5104    var svgURL = this.getSettings('svgURL') + fileName + '.svg';
5105
5106    if (elementor.config.additional_shapes && shapeType in elementor.config.additional_shapes) {
5107      svgURL = elementor.config.additional_shapes[shapeType];
5108    }
5109
5110    return svgURL;
5111  },
5112  buildSVG: function buildSVG(side) {
5113    var self = this,
5114        baseSettingKey = 'shape_divider_' + side,
5115        shapeType = self.getElementSettings(baseSettingKey),
5116        $svgContainer = this.elements['$' + side + 'Container'];
5117    $svgContainer.attr('data-shape', shapeType);
5118
5119    if (!shapeType) {
5120      $svgContainer.empty(); // Shape-divider set to 'none'
5121
5122      return;
5123    }
5124
5125    var fileName = shapeType;
5126
5127    if (self.getElementSettings(baseSettingKey + '_negative')) {
5128      fileName += '-negative';
5129    }
5130
5131    var svgURL = self.getSvgURL(shapeType, fileName);
5132    jQuery.get(svgURL, function (data) {
5133      $svgContainer.empty().append(data.childNodes[0]);
5134    });
5135    this.setNegative(side);
5136  },
5137  setNegative: function setNegative(side) {
5138    this.elements['$' + side + 'Container'].attr('data-negative', !!this.getElementSettings('shape_divider_' + side + '_negative'));
5139  },
5140  onInit: function onInit() {
5141    var self = this;
5142    elementorModules.frontend.handlers.Base.prototype.onInit.apply(self, arguments);
5143    ['top', 'bottom'].forEach(function (side) {
5144      if (self.getElementSettings('shape_divider_' + side)) {
5145        self.buildSVG(side);
5146      }
5147    });
5148  },
5149  onElementChange: function onElementChange(propertyName) {
5150    var shapeChange = propertyName.match(/^shape_divider_(top|bottom)$/);
5151
5152    if (shapeChange) {
5153      this.buildSVG(shapeChange[1]);
5154      return;
5155    }
5156
5157    var negativeChange = propertyName.match(/^shape_divider_(top|bottom)_negative$/);
5158
5159    if (negativeChange) {
5160      this.buildSVG(negativeChange[1]);
5161      this.setNegative(negativeChange[1]);
5162    }
5163  }
5164});
5165var HandlesPosition = elementorModules.frontend.handlers.Base.extend({
5166  isFirstSection: function isFirstSection() {
5167    return this.$element.is('.elementor-edit-mode .elementor-top-section:first');
5168  },
5169  isOverflowHidden: function isOverflowHidden() {
5170    return 'hidden' === this.$element.css('overflow');
5171  },
5172  getOffset: function getOffset() {
5173    if ('body' === elementor.config.document.container) {
5174      return this.$element.offset().top;
5175    }
5176
5177    var $container = jQuery(elementor.config.document.container);
5178    return this.$element.offset().top - $container.offset().top;
5179  },
5180  setHandlesPosition: function setHandlesPosition() {
5181    var isOverflowHidden = this.isOverflowHidden();
5182
5183    if (!isOverflowHidden && !this.isFirstSection()) {
5184      return;
5185    }
5186
5187    var offset = isOverflowHidden ? 0 : this.getOffset(),
5188        $handlesElement = this.$element.find('> .elementor-element-overlay > .elementor-editor-section-settings'),
5189        insideHandleClass = 'elementor-section--handles-inside';
5190
5191    if (offset < 25) {
5192      this.$element.addClass(insideHandleClass);
5193
5194      if (offset < -5) {
5195        $handlesElement.css('top', -offset);
5196      } else {
5197        $handlesElement.css('top', '');
5198      }
5199    } else {
5200      this.$element.removeClass(insideHandleClass);
5201    }
5202  },
5203  onInit: function onInit() {
5204    this.setHandlesPosition();
5205    this.$element.on('mouseenter', this.setHandlesPosition);
5206  }
5207});
5208
5209module.exports = function ($scope) {
5210  if (elementorFrontend.isEditMode() || $scope.hasClass('elementor-section-stretched')) {
5211    elementorFrontend.elementsHandler.addHandler(StretchedSection, {
5212      $element: $scope
5213    });
5214  }
5215
5216  if (elementorFrontend.isEditMode()) {
5217    elementorFrontend.elementsHandler.addHandler(Shapes, {
5218      $element: $scope
5219    });
5220    elementorFrontend.elementsHandler.addHandler(HandlesPosition, {
5221      $element: $scope
5222    });
5223  }
5224
5225  elementorFrontend.elementsHandler.addHandler(BackgroundVideo, {
5226    $element: $scope
5227  });
5228};
5229
5230/***/ }),
5231/* 462 */
5232/***/ (function(module, exports, __webpack_require__) {
5233
5234"use strict";
5235
5236
5237var TabsModule = __webpack_require__(223);
5238
5239module.exports = function ($scope) {
5240  elementorFrontend.elementsHandler.addHandler(TabsModule, {
5241    $element: $scope,
5242    showTabFn: 'slideDown',
5243    hideTabFn: 'slideUp'
5244  });
5245};
5246
5247/***/ }),
5248/* 463 */
5249/***/ (function(module, exports, __webpack_require__) {
5250
5251"use strict";
5252
5253
5254__webpack_require__(26);
5255
5256module.exports = function ($scope, $) {
5257  $scope.find('.elementor-alert-dismiss').on('click', function () {
5258    $(this).parent().fadeOut();
5259  });
5260};
5261
5262/***/ }),
5263/* 464 */
5264/***/ (function(module, exports, __webpack_require__) {
5265
5266"use strict";
5267
5268
5269__webpack_require__(173);
5270
5271__webpack_require__(141);
5272
5273__webpack_require__(96);
5274
5275__webpack_require__(26);
5276
5277module.exports = function ($scope, $) {
5278  elementorFrontend.waypoint($scope.find('.elementor-counter-number'), function () {
5279    var $number = $(this),
5280        data = $number.data();
5281    var decimalDigits = data.toValue.toString().match(/\.(.*)/);
5282
5283    if (decimalDigits) {
5284      data.rounding = decimalDigits[1].length;
5285    }
5286
5287    $number.numerator(data);
5288  });
5289};
5290
5291/***/ }),
5292/* 465 */
5293/***/ (function(module, exports, __webpack_require__) {
5294
5295"use strict";
5296
5297
5298__webpack_require__(26);
5299
5300module.exports = function ($scope, $) {
5301  elementorFrontend.waypoint($scope.find('.elementor-progress-bar'), function () {
5302    var $progressbar = $(this);
5303    $progressbar.css('width', $progressbar.data('max') + '%');
5304  });
5305};
5306
5307/***/ }),
5308/* 466 */
5309/***/ (function(module, exports, __webpack_require__) {
5310
5311"use strict";
5312
5313
5314var TabsModule = __webpack_require__(223);
5315
5316module.exports = function ($scope) {
5317  elementorFrontend.elementsHandler.addHandler(TabsModule, {
5318    $element: $scope,
5319    toggleSelf: false
5320  });
5321};
5322
5323/***/ }),
5324/* 467 */
5325/***/ (function(module, exports, __webpack_require__) {
5326
5327"use strict";
5328
5329
5330var TabsModule = __webpack_require__(223);
5331
5332module.exports = function ($scope) {
5333  elementorFrontend.elementsHandler.addHandler(TabsModule, {
5334    $element: $scope,
5335    showTabFn: 'slideDown',
5336    hideTabFn: 'slideUp',
5337    hidePrevious: false,
5338    autoExpand: 'editor'
5339  });
5340};
5341
5342/***/ }),
5343/* 468 */
5344/***/ (function(module, exports, __webpack_require__) {
5345
5346"use strict";
5347
5348
5349__webpack_require__(196);
5350
5351__webpack_require__(197);
5352
5353__webpack_require__(67);
5354
5355__webpack_require__(26);
5356
5357var VideoModule = elementorModules.frontend.handlers.Base.extend({
5358  getDefaultSettings: function getDefaultSettings() {
5359    return {
5360      selectors: {
5361        imageOverlay: '.elementor-custom-embed-image-overlay',
5362        video: '.elementor-video',
5363        videoIframe: '.elementor-video-iframe'
5364      }
5365    };
5366  },
5367  getDefaultElements: function getDefaultElements() {
5368    var selectors = this.getSettings('selectors');
5369    return {
5370      $imageOverlay: this.$element.find(selectors.imageOverlay),
5371      $video: this.$element.find(selectors.video),
5372      $videoIframe: this.$element.find(selectors.videoIframe)
5373    };
5374  },
5375  getLightBox: function getLightBox() {
5376    return elementorFrontend.utils.lightbox;
5377  },
5378  handleVideo: function handleVideo() {
5379    if (!this.getElementSettings('lightbox')) {
5380      this.elements.$imageOverlay.remove();
5381      this.playVideo();
5382    }
5383  },
5384  playVideo: function playVideo() {
5385    if (this.elements.$video.length) {
5386      this.elements.$video[0].play();
5387      return;
5388    }
5389
5390    var $videoIframe = this.elements.$videoIframe,
5391        lazyLoad = $videoIframe.data('lazy-load');
5392
5393    if (lazyLoad) {
5394      $videoIframe.attr('src', lazyLoad);
5395    }
5396
5397    var newSourceUrl = $videoIframe[0].src.replace('&autoplay=0', '');
5398    $videoIframe[0].src = newSourceUrl + '&autoplay=1';
5399
5400    if ($videoIframe[0].src.includes('vimeo.com')) {
5401      var videoSrc = $videoIframe[0].src,
5402          timeMatch = /#t=[^&]*/.exec(videoSrc); // Param '#t=' must be last in the URL
5403
5404      $videoIframe[0].src = videoSrc.slice(0, timeMatch.index) + videoSrc.slice(timeMatch.index + timeMatch[0].length) + timeMatch[0];
5405    }
5406  },
5407  animateVideo: function animateVideo() {
5408    this.getLightBox().setEntranceAnimation(this.getCurrentDeviceSetting('lightbox_content_animation'));
5409  },
5410  handleAspectRatio: function handleAspectRatio() {
5411    this.getLightBox().setVideoAspectRatio(this.getElementSettings('aspect_ratio'));
5412  },
5413  bindEvents: function bindEvents() {
5414    this.elements.$imageOverlay.on('click', this.handleVideo);
5415  },
5416  onElementChange: function onElementChange(propertyName) {
5417    if (0 === propertyName.indexOf('lightbox_content_animation')) {
5418      this.animateVideo();
5419      return;
5420    }
5421
5422    var isLightBoxEnabled = this.getElementSettings('lightbox');
5423
5424    if ('lightbox' === propertyName && !isLightBoxEnabled) {
5425      this.getLightBox().getModal().hide();
5426      return;
5427    }
5428
5429    if ('aspect_ratio' === propertyName && isLightBoxEnabled) {
5430      this.handleAspectRatio();
5431    }
5432  }
5433});
5434
5435module.exports = function ($scope) {
5436  elementorFrontend.elementsHandler.addHandler(VideoModule, {
5437    $element: $scope
5438  });
5439};
5440
5441/***/ }),
5442/* 469 */
5443/***/ (function(module, exports, __webpack_require__) {
5444
5445"use strict";
5446
5447
5448__webpack_require__(26);
5449
5450var ImageCarouselHandler = elementorModules.frontend.handlers.Base.extend({
5451  getDefaultSettings: function getDefaultSettings() {
5452    return {
5453      selectors: {
5454        carousel: '.elementor-image-carousel'
5455      }
5456    };
5457  },
5458  getDefaultElements: function getDefaultElements() {
5459    var selectors = this.getSettings('selectors');
5460    return {
5461      $carousel: this.$element.find(selectors.carousel)
5462    };
5463  },
5464  onInit: function onInit() {
5465    elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments);
5466    var elementSettings = this.getElementSettings(),
5467        slidesToShow = +elementSettings.slides_to_show || 3,
5468        isSingleSlide = 1 === slidesToShow,
5469        defaultLGDevicesSlidesCount = isSingleSlide ? 1 : 2,
5470        breakpoints = elementorFrontend.config.breakpoints;
5471    var slickOptions = {
5472      slidesToShow: slidesToShow,
5473      autoplay: 'yes' === elementSettings.autoplay,
5474      autoplaySpeed: elementSettings.autoplay_speed,
5475      infinite: 'yes' === elementSettings.infinite,
5476      pauseOnHover: 'yes' === elementSettings.pause_on_hover,
5477      speed: elementSettings.speed,
5478      arrows: -1 !== ['arrows', 'both'].indexOf(elementSettings.navigation),
5479      dots: -1 !== ['dots', 'both'].indexOf(elementSettings.navigation),
5480      rtl: 'rtl' === elementSettings.direction,
5481      responsive: [{
5482        breakpoint: breakpoints.lg,
5483        settings: {
5484          slidesToShow: +elementSettings.slides_to_show_tablet || defaultLGDevicesSlidesCount,
5485          slidesToScroll: +elementSettings.slides_to_scroll_tablet || defaultLGDevicesSlidesCount
5486        }
5487      }, {
5488        breakpoint: breakpoints.md,
5489        settings: {
5490          slidesToShow: +elementSettings.slides_to_show_mobile || 1,
5491          slidesToScroll: +elementSettings.slides_to_scroll_mobile || 1
5492        }
5493      }]
5494    };
5495
5496    if (isSingleSlide) {
5497      slickOptions.fade = 'fade' === elementSettings.effect;
5498    } else {
5499      slickOptions.slidesToScroll = +elementSettings.slides_to_scroll || defaultLGDevicesSlidesCount;
5500    }
5501
5502    this.elements.$carousel.slick(slickOptions);
5503  }
5504});
5505
5506module.exports = function ($scope) {
5507  elementorFrontend.elementsHandler.addHandler(ImageCarouselHandler, {
5508    $element: $scope
5509  });
5510};
5511
5512/***/ }),
5513/* 470 */
5514/***/ (function(module, exports, __webpack_require__) {
5515
5516"use strict";
5517
5518
5519__webpack_require__(96);
5520
5521__webpack_require__(67);
5522
5523__webpack_require__(26);
5524
5525var TextEditor = elementorModules.frontend.handlers.Base.extend({
5526  dropCapLetter: '',
5527  getDefaultSettings: function getDefaultSettings() {
5528    return {
5529      selectors: {
5530        paragraph: 'p:first'
5531      },
5532      classes: {
5533        dropCap: 'elementor-drop-cap',
5534        dropCapLetter: 'elementor-drop-cap-letter'
5535      }
5536    };
5537  },
5538  getDefaultElements: function getDefaultElements() {
5539    var selectors = this.getSettings('selectors'),
5540        classes = this.getSettings('classes'),
5541        $dropCap = jQuery('<span>', {
5542      class: classes.dropCap
5543    }),
5544        $dropCapLetter = jQuery('<span>', {
5545      class: classes.dropCapLetter
5546    });
5547    $dropCap.append($dropCapLetter);
5548    return {
5549      $paragraph: this.$element.find(selectors.paragraph),
5550      $dropCap: $dropCap,
5551      $dropCapLetter: $dropCapLetter
5552    };
5553  },
5554  wrapDropCap: function wrapDropCap() {
5555    var isDropCapEnabled = this.getElementSettings('drop_cap');
5556
5557    if (!isDropCapEnabled) {
5558      // If there is an old drop cap inside the paragraph
5559      if (this.dropCapLetter) {
5560        this.elements.$dropCap.remove();
5561        this.elements.$paragraph.prepend(this.dropCapLetter);
5562        this.dropCapLetter = '';
5563      }
5564
5565      return;
5566    }
5567
5568    var $paragraph = this.elements.$paragraph;
5569
5570    if (!$paragraph.length) {
5571      return;
5572    }
5573
5574    var paragraphContent = $paragraph.html().replace(/&nbsp;/g, ' '),
5575        firstLetterMatch = paragraphContent.match(/^ *([^ ] ?)/);
5576
5577    if (!firstLetterMatch) {
5578      return;
5579    }
5580
5581    var firstLetter = firstLetterMatch[1],
5582        trimmedFirstLetter = firstLetter.trim(); // Don't apply drop cap when the content starting with an HTML tag
5583
5584    if ('<' === trimmedFirstLetter) {
5585      return;
5586    }
5587
5588    this.dropCapLetter = firstLetter;
5589    this.elements.$dropCapLetter.text(trimmedFirstLetter);
5590    var restoredParagraphContent = paragraphContent.slice(firstLetter.length).replace(/^ */, function (match) {
5591      return new Array(match.length + 1).join('&nbsp;');
5592    });
5593    $paragraph.html(restoredParagraphContent).prepend(this.elements.$dropCap);
5594  },
5595  onInit: function onInit() {
5596    elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments);
5597    this.wrapDropCap();
5598  },
5599  onElementChange: function onElementChange(propertyName) {
5600    if ('drop_cap' === propertyName) {
5601      this.wrapDropCap();
5602    }
5603  }
5604});
5605
5606module.exports = function ($scope) {
5607  elementorFrontend.elementsHandler.addHandler(TextEditor, {
5608    $element: $scope
5609  });
5610};
5611
5612/***/ }),
5613/* 471 */
5614/***/ (function(module, exports, __webpack_require__) {
5615
5616"use strict";
5617
5618
5619var GlobalHandler = elementorModules.frontend.handlers.Base.extend({
5620  getWidgetType: function getWidgetType() {
5621    return 'global';
5622  },
5623  animate: function animate() {
5624    var $element = this.$element,
5625        animation = this.getAnimation();
5626
5627    if ('none' === animation) {
5628      $element.removeClass('elementor-invisible');
5629      return;
5630    }
5631
5632    var elementSettings = this.getElementSettings(),
5633        animationDelay = elementSettings._animation_delay || elementSettings.animation_delay || 0;
5634    $element.removeClass(animation);
5635
5636    if (this.currentAnimation) {
5637      $element.removeClass(this.currentAnimation);
5638    }
5639
5640    this.currentAnimation = animation;
5641    setTimeout(function () {
5642      $element.removeClass('elementor-invisible').addClass('animated ' + animation);
5643    }, animationDelay);
5644  },
5645  getAnimation: function getAnimation() {
5646    return this.getCurrentDeviceSetting('animation') || this.getCurrentDeviceSetting('_animation');
5647  },
5648  onInit: function onInit() {
5649    elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments);
5650
5651    if (this.getAnimation()) {
5652      elementorFrontend.waypoint(this.$element, this.animate.bind(this));
5653    }
5654  },
5655  onElementChange: function onElementChange(propertyName) {
5656    if (/^_?animation/.test(propertyName)) {
5657      this.animate();
5658    }
5659  }
5660});
5661
5662module.exports = function ($scope) {
5663  elementorFrontend.elementsHandler.addHandler(GlobalHandler, {
5664    $element: $scope
5665  });
5666};
5667
5668/***/ }),
5669/* 472 */
5670/***/ (function(module, exports, __webpack_require__) {
5671
5672"use strict";
5673
5674
5675__webpack_require__(96);
5676
5677module.exports = elementorModules.ViewModule.extend({
5678  getDefaultSettings: function getDefaultSettings() {
5679    return {
5680      isInserted: false,
5681      APISrc: 'https://www.youtube.com/iframe_api',
5682      selectors: {
5683        firstScript: 'script:first'
5684      }
5685    };
5686  },
5687  getDefaultElements: function getDefaultElements() {
5688    return {
5689      $firstScript: jQuery(this.getSettings('selectors.firstScript'))
5690    };
5691  },
5692  insertYTAPI: function insertYTAPI() {
5693    this.setSettings('isInserted', true);
5694    this.elements.$firstScript.before(jQuery('<script>', {
5695      src: this.getSettings('APISrc')
5696    }));
5697  },
5698  onYoutubeApiReady: function onYoutubeApiReady(callback) {
5699    var self = this;
5700
5701    if (!self.getSettings('IsInserted')) {
5702      self.insertYTAPI();
5703    }
5704
5705    if (window.YT && YT.loaded) {
5706      callback(YT);
5707    } else {
5708      // If not ready check again by timeout..
5709      setTimeout(function () {
5710        self.onYoutubeApiReady(callback);
5711      }, 350);
5712    }
5713  },
5714  getYoutubeIDFromURL: function getYoutubeIDFromURL(url) {
5715    var videoIDParts = url.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user)\/))([^?&"'>]+)/);
5716    return videoIDParts && videoIDParts[1];
5717  }
5718});
5719
5720/***/ }),
5721/* 473 */
5722/***/ (function(module, exports, __webpack_require__) {
5723
5724"use strict";
5725
5726
5727module.exports = elementorModules.ViewModule.extend({
5728  getDefaultSettings: function getDefaultSettings() {
5729    return {
5730      scrollDuration: 500,
5731      selectors: {
5732        links: 'a[href*="#"]',
5733        targets: '.elementor-element, .elementor-menu-anchor',
5734        scrollable: 'html, body'
5735      }
5736    };
5737  },
5738  getDefaultElements: function getDefaultElements() {
5739    var $ = jQuery,
5740        selectors = this.getSettings('selectors');
5741    return {
5742      $scrollable: $(selectors.scrollable)
5743    };
5744  },
5745  bindEvents: function bindEvents() {
5746    elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), this.handleAnchorLinks);
5747  },
5748  handleAnchorLinks: function handleAnchorLinks(event) {
5749    var clickedLink = event.currentTarget,
5750        isSamePathname = location.pathname === clickedLink.pathname,
5751        isSameHostname = location.hostname === clickedLink.hostname,
5752        $anchor;
5753
5754    if (!isSameHostname || !isSamePathname || clickedLink.hash.length < 2) {
5755      return;
5756    }
5757
5758    try {
5759      $anchor = jQuery(clickedLink.hash).filter(this.getSettings('selectors.targets'));
5760    } catch (e) {
5761      return;
5762    }
5763
5764    if (!$anchor.length) {
5765      return;
5766    }
5767
5768    var scrollTop = $anchor.offset().top,
5769        $wpAdminBar = elementorFrontend.elements.$wpAdminBar,
5770        $activeStickies = jQuery('.elementor-section.elementor-sticky--active'),
5771        maxStickyHeight = 0;
5772
5773    if ($wpAdminBar.length > 0) {
5774      scrollTop -= $wpAdminBar.height();
5775    } // Offset height of tallest sticky
5776
5777
5778    if ($activeStickies.length > 0) {
5779      maxStickyHeight = Math.max.apply(null, $activeStickies.map(function () {
5780        return jQuery(this).outerHeight();
5781      }).get());
5782      scrollTop -= maxStickyHeight;
5783    }
5784
5785    event.preventDefault();
5786    scrollTop = elementorFrontend.hooks.applyFilters('frontend/handlers/menu_anchor/scroll_top_distance', scrollTop);
5787    this.elements.$scrollable.animate({
5788      scrollTop: scrollTop
5789    }, this.getSettings('scrollDuration'), 'linear');
5790  },
5791  onInit: function onInit() {
5792    elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
5793    this.bindEvents();
5794  }
5795});
5796
5797/***/ }),
5798/* 474 */
5799/***/ (function(module, exports, __webpack_require__) {
5800
5801"use strict";
5802
5803
5804__webpack_require__(26);
5805
5806__webpack_require__(170);
5807
5808__webpack_require__(67);
5809
5810module.exports = elementorModules.ViewModule.extend({
5811  oldAspectRatio: null,
5812  oldAnimation: null,
5813  swiper: null,
5814  getDefaultSettings: function getDefaultSettings() {
5815    return {
5816      classes: {
5817        aspectRatio: 'elementor-aspect-ratio-%s',
5818        item: 'elementor-lightbox-item',
5819        image: 'elementor-lightbox-image',
5820        videoContainer: 'elementor-video-container',
5821        videoWrapper: 'elementor-fit-aspect-ratio',
5822        playButton: 'elementor-custom-embed-play',
5823        playButtonIcon: 'fa',
5824        playing: 'elementor-playing',
5825        hidden: 'elementor-hidden',
5826        invisible: 'elementor-invisible',
5827        preventClose: 'elementor-lightbox-prevent-close',
5828        slideshow: {
5829          container: 'swiper-container',
5830          slidesWrapper: 'swiper-wrapper',
5831          prevButton: 'elementor-swiper-button elementor-swiper-button-prev',
5832          nextButton: 'elementor-swiper-button elementor-swiper-button-next',
5833          prevButtonIcon: 'eicon-chevron-left',
5834          nextButtonIcon: 'eicon-chevron-right',
5835          slide: 'swiper-slide'
5836        }
5837      },
5838      selectors: {
5839        links: 'a, [data-elementor-lightbox]',
5840        slideshow: {
5841          activeSlide: '.swiper-slide-active',
5842          prevSlide: '.swiper-slide-prev',
5843          nextSlide: '.swiper-slide-next'
5844        }
5845      },
5846      modalOptions: {
5847        id: 'elementor-lightbox',
5848        entranceAnimation: 'zoomIn',
5849        videoAspectRatio: 169,
5850        position: {
5851          enable: false
5852        }
5853      }
5854    };
5855  },
5856  getModal: function getModal() {
5857    if (!module.exports.modal) {
5858      this.initModal();
5859    }
5860
5861    return module.exports.modal;
5862  },
5863  initModal: function initModal() {
5864    var modal = module.exports.modal = elementorFrontend.getDialogsManager().createWidget('lightbox', {
5865      className: 'elementor-lightbox',
5866      closeButton: true,
5867      closeButtonClass: 'eicon-close',
5868      selectors: {
5869        preventClose: '.' + this.getSettings('classes.preventClose')
5870      },
5871      hide: {
5872        onClick: true
5873      }
5874    });
5875    modal.on('hide', function () {
5876      modal.setMessage('');
5877    });
5878  },
5879  showModal: function showModal(options) {
5880    var self = this,
5881        defaultOptions = self.getDefaultSettings().modalOptions;
5882    self.setSettings('modalOptions', jQuery.extend(defaultOptions, options.modalOptions));
5883    var modal = self.getModal();
5884    modal.setID(self.getSettings('modalOptions.id'));
5885
5886    modal.onShow = function () {
5887      DialogsManager.getWidgetType('lightbox').prototype.onShow.apply(modal, arguments);
5888      self.setEntranceAnimation();
5889    };
5890
5891    modal.onHide = function () {
5892      DialogsManager.getWidgetType('lightbox').prototype.onHide.apply(modal, arguments);
5893      modal.getElements('message').removeClass('animated');
5894    };
5895
5896    switch (options.type) {
5897      case 'image':
5898        self.setImageContent(options.url);
5899        break;
5900
5901      case 'video':
5902        self.setVideoContent(options);
5903        break;
5904
5905      case 'slideshow':
5906        self.setSlideshowContent(options.slideshow);
5907        break;
5908
5909      default:
5910        self.setHTMLContent(options.html);
5911    }
5912
5913    modal.show();
5914  },
5915  setHTMLContent: function setHTMLContent(html) {
5916    this.getModal().setMessage(html);
5917  },
5918  setImageContent: function setImageContent(imageURL) {
5919    var self = this,
5920        classes = self.getSettings('classes'),
5921        $item = jQuery('<div>', {
5922      class: classes.item
5923    }),
5924        $image = jQuery('<img>', {
5925      src: imageURL,
5926      class: classes.image + ' ' + classes.preventClose
5927    });
5928    $item.append($image);
5929    self.getModal().setMessage($item);
5930  },
5931  setVideoContent: function setVideoContent(options) {
5932    var classes = this.getSettings('classes'),
5933        $videoContainer = jQuery('<div>', {
5934      class: classes.videoContainer
5935    }),
5936        $videoWrapper = jQuery('<div>', {
5937      class: classes.videoWrapper
5938    }),
5939        $videoElement,
5940        modal = this.getModal();
5941
5942    if ('hosted' === options.videoType) {
5943      var videoParams = jQuery.extend({
5944        src: options.url,
5945        autoplay: ''
5946      }, options.videoParams);
5947      $videoElement = jQuery('<video>', videoParams);
5948    } else {
5949      var videoURL = options.url.replace('&autoplay=0', '') + '&autoplay=1';
5950      $videoElement = jQuery('<iframe>', {
5951        src: videoURL,
5952        allowfullscreen: 1
5953      });
5954    }
5955
5956    $videoContainer.append($videoWrapper);
5957    $videoWrapper.append($videoElement);
5958    modal.setMessage($videoContainer);
5959    this.setVideoAspectRatio();
5960    var onHideMethod = modal.onHide;
5961
5962    modal.onHide = function () {
5963      onHideMethod();
5964      modal.getElements('message').removeClass('elementor-fit-aspect-ratio');
5965    };
5966  },
5967  setSlideshowContent: function setSlideshowContent(options) {
5968    var $ = jQuery,
5969        self = this,
5970        classes = self.getSettings('classes'),
5971        slideshowClasses = classes.slideshow,
5972        $container = $('<div>', {
5973      class: slideshowClasses.container
5974    }),
5975        $slidesWrapper = $('<div>', {
5976      class: slideshowClasses.slidesWrapper
5977    }),
5978        $prevButton = $('<div>', {
5979      class: slideshowClasses.prevButton + ' ' + classes.preventClose
5980    }).html($('<i>', {
5981      class: slideshowClasses.prevButtonIcon
5982    })),
5983        $nextButton = $('<div>', {
5984      class: slideshowClasses.nextButton + ' ' + classes.preventClose
5985    }).html($('<i>', {
5986      class: slideshowClasses.nextButtonIcon
5987    }));
5988    options.slides.forEach(function (slide) {
5989      var slideClass = slideshowClasses.slide + ' ' + classes.item;
5990
5991      if (slide.video) {
5992        slideClass += ' ' + classes.video;
5993      }
5994
5995      var $slide = $('<div>', {
5996        class: slideClass
5997      });
5998
5999      if (slide.video) {
6000        $slide.attr('data-elementor-slideshow-video', slide.video);
6001        var $playIcon = $('<div>', {
6002          class: classes.playButton
6003        }).html($('<i>', {
6004          class: classes.playButtonIcon
6005        }));
6006        $slide.append($playIcon);
6007      } else {
6008        var $zoomContainer = $('<div>', {
6009          class: 'swiper-zoom-container'
6010        }),
6011            $slideImage = $('<img>', {
6012          class: classes.image + ' ' + classes.preventClose,
6013          src: slide.image
6014        });
6015        $zoomContainer.append($slideImage);
6016        $slide.append($zoomContainer);
6017      }
6018
6019      $slidesWrapper.append($slide);
6020    });
6021    $container.append($slidesWrapper, $prevButton, $nextButton);
6022    var modal = self.getModal();
6023    modal.setMessage($container);
6024    var onShowMethod = modal.onShow;
6025
6026    modal.onShow = function () {
6027      onShowMethod();
6028      var swiperOptions = {
6029        navigation: {
6030          prevEl: $prevButton,
6031          nextEl: $nextButton
6032        },
6033        pagination: {
6034          clickable: true
6035        },
6036        on: {
6037          slideChangeTransitionEnd: self.onSlideChange
6038        },
6039        grabCursor: true,
6040        runCallbacksOnInit: false,
6041        loop: true,
6042        keyboard: true
6043      };
6044
6045      if (options.swiper) {
6046        $.extend(swiperOptions, options.swiper);
6047      }
6048
6049      self.swiper = new Swiper($container, swiperOptions);
6050      self.setVideoAspectRatio();
6051      self.playSlideVideo();
6052    };
6053  },
6054  setVideoAspectRatio: function setVideoAspectRatio(aspectRatio) {
6055    aspectRatio = aspectRatio || this.getSettings('modalOptions.videoAspectRatio');
6056    var $widgetContent = this.getModal().getElements('widgetContent'),
6057        oldAspectRatio = this.oldAspectRatio,
6058        aspectRatioClass = this.getSettings('classes.aspectRatio');
6059    this.oldAspectRatio = aspectRatio;
6060
6061    if (oldAspectRatio) {
6062      $widgetContent.removeClass(aspectRatioClass.replace('%s', oldAspectRatio));
6063    }
6064
6065    if (aspectRatio) {
6066      $widgetContent.addClass(aspectRatioClass.replace('%s', aspectRatio));
6067    }
6068  },
6069  getSlide: function getSlide(slideState) {
6070    return jQuery(this.swiper.slides).filter(this.getSettings('selectors.slideshow.' + slideState + 'Slide'));
6071  },
6072  playSlideVideo: function playSlideVideo() {
6073    var $activeSlide = this.getSlide('active'),
6074        videoURL = $activeSlide.data('elementor-slideshow-video');
6075
6076    if (!videoURL) {
6077      return;
6078    }
6079
6080    var classes = this.getSettings('classes'),
6081        $videoContainer = jQuery('<div>', {
6082      class: classes.videoContainer + ' ' + classes.invisible
6083    }),
6084        $videoWrapper = jQuery('<div>', {
6085      class: classes.videoWrapper
6086    }),
6087        $videoFrame = jQuery('<iframe>', {
6088      src: videoURL
6089    }),
6090        $playIcon = $activeSlide.children('.' + classes.playButton);
6091    $videoContainer.append($videoWrapper);
6092    $videoWrapper.append($videoFrame);
6093    $activeSlide.append($videoContainer);
6094    $playIcon.addClass(classes.playing).removeClass(classes.hidden);
6095    $videoFrame.on('load', function () {
6096      $playIcon.addClass(classes.hidden);
6097      $videoContainer.removeClass(classes.invisible);
6098    });
6099  },
6100  setEntranceAnimation: function setEntranceAnimation(animation) {
6101    animation = animation || elementorFrontend.getCurrentDeviceSetting(this.getSettings('modalOptions'), 'entranceAnimation');
6102    var $widgetMessage = this.getModal().getElements('message');
6103
6104    if (this.oldAnimation) {
6105      $widgetMessage.removeClass(this.oldAnimation);
6106    }
6107
6108    this.oldAnimation = animation;
6109
6110    if (animation) {
6111      $widgetMessage.addClass('animated ' + animation);
6112    }
6113  },
6114  isLightboxLink: function isLightboxLink(element) {
6115    if ('A' === element.tagName && (element.hasAttribute('download') || !/\.(png|jpe?g|gif|svg)(\?.*)?$/i.test(element.href))) {
6116      return false;
6117    }
6118
6119    var generalOpenInLightbox = elementorFrontend.getGeneralSettings('elementor_global_image_lightbox'),
6120        currentLinkOpenInLightbox = element.dataset.elementorOpenLightbox;
6121    return 'yes' === currentLinkOpenInLightbox || generalOpenInLightbox && 'no' !== currentLinkOpenInLightbox;
6122  },
6123  openLink: function openLink(event) {
6124    var element = event.currentTarget,
6125        $target = jQuery(event.target),
6126        editMode = elementorFrontend.isEditMode(),
6127        isClickInsideElementor = !!$target.closest('#elementor').length;
6128
6129    if (!this.isLightboxLink(element)) {
6130      if (editMode && isClickInsideElementor) {
6131        event.preventDefault();
6132      }
6133
6134      return;
6135    }
6136
6137    event.preventDefault();
6138
6139    if (editMode && !elementorFrontend.getGeneralSettings('elementor_enable_lightbox_in_editor')) {
6140      return;
6141    }
6142
6143    var lightboxData = {};
6144
6145    if (element.dataset.elementorLightbox) {
6146      lightboxData = JSON.parse(element.dataset.elementorLightbox);
6147    }
6148
6149    if (lightboxData.type && 'slideshow' !== lightboxData.type) {
6150      this.showModal(lightboxData);
6151      return;
6152    }
6153
6154    if (!element.dataset.elementorLightboxSlideshow) {
6155      this.showModal({
6156        type: 'image',
6157        url: element.href
6158      });
6159      return;
6160    }
6161
6162    var slideshowID = element.dataset.elementorLightboxSlideshow;
6163    var $allSlideshowLinks = jQuery(this.getSettings('selectors.links')).filter(function () {
6164      var $this = jQuery(this);
6165      return slideshowID === this.dataset.elementorLightboxSlideshow && !$this.parent('.swiper-slide-duplicate').length && !$this.parents('.slick-cloned').length;
6166    });
6167    var slides = [];
6168    $allSlideshowLinks.each(function () {
6169      var slideVideo = this.dataset.elementorLightboxVideo;
6170      var slideIndex = this.dataset.elementorLightboxIndex;
6171
6172      if (undefined === slideIndex) {
6173        slideIndex = $allSlideshowLinks.index(this);
6174      }
6175
6176      var slideData = {
6177        image: this.href,
6178        index: slideIndex
6179      };
6180
6181      if (slideVideo) {
6182        slideData.video = slideVideo;
6183      }
6184
6185      slides.push(slideData);
6186    });
6187    slides.sort(function (a, b) {
6188      return a.index - b.index;
6189    });
6190    var initialSlide = element.dataset.elementorLightboxIndex;
6191
6192    if (undefined === initialSlide) {
6193      initialSlide = $allSlideshowLinks.index(element);
6194    }
6195
6196    this.showModal({
6197      type: 'slideshow',
6198      modalOptions: {
6199        id: 'elementor-lightbox-slideshow-' + slideshowID
6200      },
6201      slideshow: {
6202        slides: slides,
6203        swiper: {
6204          initialSlide: +initialSlide
6205        }
6206      }
6207    });
6208  },
6209  bindEvents: function bindEvents() {
6210    elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), this.openLink);
6211  },
6212  onSlideChange: function onSlideChange() {
6213    this.getSlide('prev').add(this.getSlide('next')).add(this.getSlide('active')).find('.' + this.getSettings('classes.videoWrapper')).remove();
6214    this.playSlideVideo();
6215  }
6216});
6217
6218/***/ })
6219/******/ ]);
6220//# sourceMappingURL=frontend.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.