vendor: 5,055 bytes, lines 1-167
1/******/ (function(modules) { // webpackBootstrap 2/******/ // The module cache 3/******/ var installedModules = {}; 4/******/ 5/******/ // The require function 6/******/ function __webpack_require__(moduleId) { 7/******/ 8/******/ // Check if module is in cache 9/******/ if(installedModules[moduleId]) { 10/******/ return installedModules[moduleId].exports; 11/******/ } 12/******/ // Create a new module (and put it into the cache) 13/******/ var module = installedModules[moduleId] = { 14/******/ i: moduleId, 15/******/ l: false, 16/******/ exports: {} 17/******/ }; 18/******/ 19/******/ // Execute the module function 20/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); 21/******/ 22/******/ // Flag the module as loaded 23/******/ module.l = true; 24/******/ 25/******/ // Return the exports of the module 26/******/ return module.exports; 27/******/ } 28/******/ 29/******/ 30/******/ // expose the modules object (__webpack_modules__) 31/******/ __webpack_require__.m = modules; 32/******/ 33/******/ // expose the module cache 34/******/ __webpack_require__.c = installedModules; 35/******/ 36/******/ // define getter function for harmony exports 37/******/ __webpack_require__.d = function(exports, name, getter) { 38/******/ if(!__webpack_require__.o(exports, name)) { 39/******/ Object.defineProperty(exports, name, { 40/******/ configurable: false, 41/******/ enumerable: true, 42/******/ get: getter 43/******/ }); 44/******/ } 45/******/ }; 46/******/ 47/******/ // getDefaultExport function for compatibility with non-harmony modules 48/******/ __webpack_require__.n = function(module) { 49/******/ var getter = module && module.__esModule ? 50/******/ function getDefault() { return module['default']; } : 51/******/ function getModuleExports() { return module; }; 52/******/ __webpack_require__.d(getter, 'a', getter); 53/******/ return getter; 54/******/ }; 55/******/ 56/******/ // Object.prototype.hasOwnProperty.call 57/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; 58/******/ 59/******/ // __webpack_public_path__ 60/******/ __webpack_require__.p = "/"; 61/******/ 62/******/ // Load entry module and return exports 63/******/ return __webpack_require__(__webpack_require__.s = 125); 64/******/ }) 65/************************************************************************/ 66/******/ ([ 67/* 0 */, 68/* 1 */, 69/* 2 */ 70/***/ (function(module, exports) { 71 72// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 73var global = module.exports = typeof window != 'undefined' && window.Math == Math 74 ? window : typeof self != 'undefined' && self.Math == Math ? self 75 // eslint-disable-next-line no-new-func 76 : Function('return this')(); 77if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef 78 79 80/***/ }), 81/* 3 */ 82/***/ (function(module, exports) { 83 84var core = module.exports = { version: '2.6.5' }; 85if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef 86 87 88/***/ }), 89/* 4 */, 90/* 5 */, 91/* 6 */ 92/***/ (function(module, exports) { 93 94var hasOwnProperty = {}.hasOwnProperty; 95module.exports = function (it, key) { 96 return hasOwnProperty.call(it, key); 97}; 98 99 100/***/ }), 101/* 7 */ 102/***/ (function(module, exports, __webpack_require__) { 103 104var anObject = __webpack_require__(17); 105var IE8_DOM_DEFINE = __webpack_require__(47); 106var toPrimitive = __webpack_require__(30); 107var dP = Object.defineProperty; 108 109exports.f = __webpack_require__(8) ? Object.defineProperty : function defineProperty(O, P, Attributes) { 110 anObject(O); 111 P = toPrimitive(P, true); 112 anObject(Attributes); 113 if (IE8_DOM_DEFINE) try { 114 return dP(O, P, Attributes); 115 } catch (e) { /* empty */ } 116 if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); 117 if ('value' in Attributes) O[P] = Attributes.value; 118 return O; 119}; 120 121 122/***/ }), 123/* 8 */ 124/***/ (function(module, exports, __webpack_require__) { 125 126// Thank's IE8 for his funny defineProperty 127module.exports = !__webpack_require__(14)(function () { 128 return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; 129}); 130 131 132/***/ }), 133/* 9 */ 134/***/ (function(module, exports, __webpack_require__) { 135 136// to indexed object, toObject with fallback for non-array-like ES3 strings 137var IObject = __webpack_require__(57); 138var defined = __webpack_require__(29); 139module.exports = function (it) { 140 return IObject(defined(it)); 141}; 142 143 144/***/ }), 145/* 10 */, 146/* 11 */ 147/***/ (function(module, exports, __webpack_require__) { 148 149var dP = __webpack_require__(7); 150var createDesc = __webpack_require__(19); 151module.exports = __webpack_require__(8) ? function (object, key, value) { 152 return dP.f(object, key, createDesc(1, value)); 153} : function (object, key, value) { 154 object[key] = value; 155 return object; 156}; 157 158 159/***/ }), 160/* 12 */ 161/***/ (function(module, exports, __webpack_require__) { 162 163var store = __webpack_require__(33)('wks'); 164var uid = __webpack_require__(21); 165var Symbol = __webpack_require__(2).Symbol; 166var USE_SYMBOL = typeof Symbol == 'function'; 167
vendor: 5,202 bytes, lines 168-353
168var $exports = module.exports = function (name) { 169 return store[name] || (store[name] = 170 USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); 171}; 172 173$exports.store = store; 174 175 176/***/ }), 177/* 13 */ 178/***/ (function(module, exports) { 179 180module.exports = function (it) { 181 return typeof it === 'object' ? it !== null : typeof it === 'function'; 182}; 183 184 185/***/ }), 186/* 14 */ 187/***/ (function(module, exports) { 188 189module.exports = function (exec) { 190 try { 191 return !!exec(); 192 } catch (e) { 193 return true; 194 } 195}; 196 197 198/***/ }), 199/* 15 */, 200/* 16 */ 201/***/ (function(module, exports, __webpack_require__) { 202 203var global = __webpack_require__(2); 204var core = __webpack_require__(3); 205var ctx = __webpack_require__(56); 206var hide = __webpack_require__(11); 207var has = __webpack_require__(6); 208var PROTOTYPE = 'prototype'; 209 210var $export = function (type, name, source) { 211 var IS_FORCED = type & $export.F; 212 var IS_GLOBAL = type & $export.G; 213 var IS_STATIC = type & $export.S; 214 var IS_PROTO = type & $export.P; 215 var IS_BIND = type & $export.B; 216 var IS_WRAP = type & $export.W; 217 var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); 218 var expProto = exports[PROTOTYPE]; 219 var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]; 220 var key, own, out; 221 if (IS_GLOBAL) source = name; 222 for (key in source) { 223 // contains in native 224 own = !IS_FORCED && target && target[key] !== undefined; 225 if (own && has(exports, key)) continue; 226 // export native or passed 227 out = own ? target[key] : source[key]; 228 // prevent global pollution for namespaces 229 exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key] 230 // bind timers to global for call from export context 231 : IS_BIND && own ? ctx(out, global) 232 // wrap global constructors for prevent change them in library 233 : IS_WRAP && target[key] == out ? (function (C) { 234 var F = function (a, b, c) { 235 if (this instanceof C) { 236 switch (arguments.length) { 237 case 0: return new C(); 238 case 1: return new C(a); 239 case 2: return new C(a, b); 240 } return new C(a, b, c); 241 } return C.apply(this, arguments); 242 }; 243 F[PROTOTYPE] = C[PROTOTYPE]; 244 return F; 245 // make static versions for prototype methods 246 })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; 247 // export proto methods to core.%CONSTRUCTOR%.methods.%NAME% 248 if (IS_PROTO) { 249 (exports.virtual || (exports.virtual = {}))[key] = out; 250 // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME% 251 if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out); 252 } 253 } 254}; 255// type bitmap 256$export.F = 1; // forced 257$export.G = 2; // global 258$export.S = 4; // static 259$export.P = 8; // proto 260$export.B = 16; // bind 261$export.W = 32; // wrap 262$export.U = 64; // safe 263$export.R = 128; // real proto method for `library` 264module.exports = $export; 265 266 267/***/ }), 268/* 17 */ 269/***/ (function(module, exports, __webpack_require__) { 270 271var isObject = __webpack_require__(13); 272module.exports = function (it) { 273 if (!isObject(it)) throw TypeError(it + ' is not an object!'); 274 return it; 275}; 276 277 278/***/ }), 279/* 18 */ 280/***/ (function(module, exports) { 281 282module.exports = true; 283 284 285/***/ }), 286/* 19 */ 287/***/ (function(module, exports) { 288 289module.exports = function (bitmap, value) { 290 return { 291 enumerable: !(bitmap & 1), 292 configurable: !(bitmap & 2), 293 writable: !(bitmap & 4), 294 value: value 295 }; 296}; 297 298 299/***/ }), 300/* 20 */ 301/***/ (function(module, exports, __webpack_require__) { 302 303// 19.1.2.14 / 15.2.3.14 Object.keys(O) 304var $keys = __webpack_require__(50); 305var enumBugKeys = __webpack_require__(34); 306 307module.exports = Object.keys || function keys(O) { 308 return $keys(O, enumBugKeys); 309}; 310 311 312/***/ }), 313/* 21 */ 314/***/ (function(module, exports) { 315 316var id = 0; 317var px = Math.random(); 318module.exports = function (key) { 319 return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); 320}; 321 322 323/***/ }), 324/* 22 */, 325/* 23 */, 326/* 24 */ 327/***/ (function(module, exports, __webpack_require__) { 328 329"use strict"; 330 331 332exports.__esModule = true; 333 334var _iterator = __webpack_require__(65); 335 336var _iterator2 = _interopRequireDefault(_iterator); 337 338var _symbol = __webpack_require__(80); 339 340var _symbol2 = _interopRequireDefault(_symbol); 341 342var _typeof = typeof _symbol2.default === "function" && typeof _iterator2.default === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj; }; 343 344function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 345 346exports.default = typeof _symbol2.default === "function" && _typeof(_iterator2.default) === "symbol" ? function (obj) { 347 return typeof obj === "undefined" ? "undefined" : _typeof(obj); 348} : function (obj) { 349 return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof(obj); 350}; 351 352/***/ }), 353/* 25 */
vendor: 2,069 bytes, lines 354-441
354/***/ (function(module, exports) { 355 356exports.f = {}.propertyIsEnumerable; 357 358 359/***/ }), 360/* 26 */, 361/* 27 */ 362/***/ (function(module, exports) { 363 364var g; 365 366// This works in non-strict mode 367g = (function() { 368 return this; 369})(); 370 371try { 372 // This works if eval is allowed (see CSP) 373 g = g || Function("return this")() || (1,eval)("this"); 374} catch(e) { 375 // This works if the window reference is available 376 if(typeof window === "object") 377 g = window; 378} 379 380// g can still be undefined, but nothing to do about it... 381// We return undefined, instead of nothing here, so it's 382// easier to handle this case. if(!global) { ...} 383 384module.exports = g; 385 386 387/***/ }), 388/* 28 */ 389/***/ (function(module, exports) { 390 391// 7.1.4 ToInteger 392var ceil = Math.ceil; 393var floor = Math.floor; 394module.exports = function (it) { 395 return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); 396}; 397 398 399/***/ }), 400/* 29 */ 401/***/ (function(module, exports) { 402 403// 7.2.1 RequireObjectCoercible(argument) 404module.exports = function (it) { 405 if (it == undefined) throw TypeError("Can't call method on " + it); 406 return it; 407}; 408 409 410/***/ }), 411/* 30 */ 412/***/ (function(module, exports, __webpack_require__) { 413 414// 7.1.1 ToPrimitive(input [, PreferredType]) 415var isObject = __webpack_require__(13); 416// instead of the ES6 spec version, we didn't implement @@toPrimitive case 417// and the second argument - flag - preferred type is a string 418module.exports = function (it, S) { 419 if (!isObject(it)) return it; 420 var fn, val; 421 if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; 422 if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; 423 if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; 424 throw TypeError("Can't convert object to primitive value"); 425}; 426 427 428/***/ }), 429/* 31 */ 430/***/ (function(module, exports) { 431 432module.exports = {}; 433 434 435/***/ }), 436/* 32 */ 437/***/ (function(module, exports, __webpack_require__) { 438 439var shared = __webpack_require__(33)('keys'); 440var uid = __webpack_require__(21); 441module.exports = function (key) {
vendor: 4,435 bytes, lines 442-605
442 return shared[key] || (shared[key] = uid(key)); 443}; 444 445 446/***/ }), 447/* 33 */ 448/***/ (function(module, exports, __webpack_require__) { 449 450var core = __webpack_require__(3); 451var global = __webpack_require__(2); 452var SHARED = '__core-js_shared__'; 453var store = global[SHARED] || (global[SHARED] = {}); 454 455(module.exports = function (key, value) { 456 return store[key] || (store[key] = value !== undefined ? value : {}); 457})('versions', []).push({ 458 version: core.version, 459 mode: __webpack_require__(18) ? 'pure' : 'global', 460 copyright: '© 2019 Denis Pushkarev (zloirock.ru)' 461}); 462 463 464/***/ }), 465/* 34 */ 466/***/ (function(module, exports) { 467 468// IE 8- don't enum bug keys 469module.exports = ( 470 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' 471).split(','); 472 473 474/***/ }), 475/* 35 */ 476/***/ (function(module, exports, __webpack_require__) { 477 478var def = __webpack_require__(7).f; 479var has = __webpack_require__(6); 480var TAG = __webpack_require__(12)('toStringTag'); 481 482module.exports = function (it, tag, stat) { 483 if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); 484}; 485 486 487/***/ }), 488/* 36 */ 489/***/ (function(module, exports, __webpack_require__) { 490 491exports.f = __webpack_require__(12); 492 493 494/***/ }), 495/* 37 */ 496/***/ (function(module, exports, __webpack_require__) { 497 498var global = __webpack_require__(2); 499var core = __webpack_require__(3); 500var LIBRARY = __webpack_require__(18); 501var wksExt = __webpack_require__(36); 502var defineProperty = __webpack_require__(7).f; 503module.exports = function (name) { 504 var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); 505 if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) }); 506}; 507 508 509/***/ }), 510/* 38 */ 511/***/ (function(module, exports, __webpack_require__) { 512 513/*! 514 * domready (c) Dustin Diaz 2014 - License MIT 515 */ 516!function (name, definition) { 517 518 if (true) module.exports = definition() 519 else if (typeof define == 'function' && typeof define.amd == 'object') define(definition) 520 else this[name] = definition() 521 522}('domready', function () { 523 524 var fns = [], listener 525 , doc = document 526 , hack = doc.documentElement.doScroll 527 , domContentLoaded = 'DOMContentLoaded' 528 , loaded = (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState) 529 530 531 if (!loaded) 532 doc.addEventListener(domContentLoaded, listener = function () { 533 doc.removeEventListener(domContentLoaded, listener) 534 loaded = 1 535 while (listener = fns.shift()) listener() 536 }) 537 538 return function (fn) { 539 loaded ? setTimeout(fn, 0) : fns.push(fn) 540 } 541 542}); 543 544 545/***/ }), 546/* 39 */, 547/* 40 */ 548/***/ (function(module, exports, __webpack_require__) { 549 550// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) 551var anObject = __webpack_require__(17); 552var dPs = __webpack_require__(71); 553var enumBugKeys = __webpack_require__(34); 554var IE_PROTO = __webpack_require__(32)('IE_PROTO'); 555var Empty = function () { /* empty */ }; 556var PROTOTYPE = 'prototype'; 557 558// Create object with fake `null` prototype: use iframe Object with cleared prototype 559var createDict = function () { 560 // Thrash, waste and sodomy: IE GC bug 561 var iframe = __webpack_require__(48)('iframe'); 562 var i = enumBugKeys.length; 563 var lt = '<'; 564 var gt = '>'; 565 var iframeDocument; 566 iframe.style.display = 'none'; 567 __webpack_require__(75).appendChild(iframe); 568 iframe.src = 'javascript:'; // eslint-disable-line no-script-url 569 // createDict = iframe.contentWindow.Object; 570 // html.removeChild(iframe); 571 iframeDocument = iframe.contentWindow.document; 572 iframeDocument.open(); 573 iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt); 574 iframeDocument.close(); 575 createDict = iframeDocument.F; 576 while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; 577 return createDict(); 578}; 579 580module.exports = Object.create || function create(O, Properties) { 581 var result; 582 if (O !== null) { 583 Empty[PROTOTYPE] = anObject(O); 584 result = new Empty(); 585 Empty[PROTOTYPE] = null; 586 // add "__proto__" for Object.getPrototypeOf polyfill 587 result[IE_PROTO] = O; 588 } else result = createDict(); 589 return Properties === undefined ? result : dPs(result, Properties); 590}; 591 592 593/***/ }), 594/* 41 */ 595/***/ (function(module, exports, __webpack_require__) { 596 597// 7.1.13 ToObject(argument) 598var defined = __webpack_require__(29); 599module.exports = function (it) { 600 return Object(defined(it)); 601}; 602 603 604/***/ }), 605/* 42 */
vendor: 5,601 bytes, lines 606-789
606/***/ (function(module, exports) { 607 608exports.f = Object.getOwnPropertySymbols; 609 610 611/***/ }), 612/* 43 */ 613/***/ (function(module, exports, __webpack_require__) { 614 615"use strict"; 616 617 618exports.__esModule = true; 619 620exports.default = function (instance, Constructor) { 621 if (!(instance instanceof Constructor)) { 622 throw new TypeError("Cannot call a class as a function"); 623 } 624}; 625 626/***/ }), 627/* 44 */ 628/***/ (function(module, exports, __webpack_require__) { 629 630"use strict"; 631 632 633exports.__esModule = true; 634 635var _defineProperty = __webpack_require__(130); 636 637var _defineProperty2 = _interopRequireDefault(_defineProperty); 638 639function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 640 641exports.default = function () { 642 function defineProperties(target, props) { 643 for (var i = 0; i < props.length; i++) { 644 var descriptor = props[i]; 645 descriptor.enumerable = descriptor.enumerable || false; 646 descriptor.configurable = true; 647 if ("value" in descriptor) descriptor.writable = true; 648 (0, _defineProperty2.default)(target, descriptor.key, descriptor); 649 } 650 } 651 652 return function (Constructor, protoProps, staticProps) { 653 if (protoProps) defineProperties(Constructor.prototype, protoProps); 654 if (staticProps) defineProperties(Constructor, staticProps); 655 return Constructor; 656 }; 657}(); 658 659/***/ }), 660/* 45 */, 661/* 46 */ 662/***/ (function(module, exports, __webpack_require__) { 663 664"use strict"; 665 666var LIBRARY = __webpack_require__(18); 667var $export = __webpack_require__(16); 668var redefine = __webpack_require__(49); 669var hide = __webpack_require__(11); 670var Iterators = __webpack_require__(31); 671var $iterCreate = __webpack_require__(70); 672var setToStringTag = __webpack_require__(35); 673var getPrototypeOf = __webpack_require__(58); 674var ITERATOR = __webpack_require__(12)('iterator'); 675var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` 676var FF_ITERATOR = '@@iterator'; 677var KEYS = 'keys'; 678var VALUES = 'values'; 679 680var returnThis = function () { return this; }; 681 682module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { 683 $iterCreate(Constructor, NAME, next); 684 var getMethod = function (kind) { 685 if (!BUGGY && kind in proto) return proto[kind]; 686 switch (kind) { 687 case KEYS: return function keys() { return new Constructor(this, kind); }; 688 case VALUES: return function values() { return new Constructor(this, kind); }; 689 } return function entries() { return new Constructor(this, kind); }; 690 }; 691 var TAG = NAME + ' Iterator'; 692 var DEF_VALUES = DEFAULT == VALUES; 693 var VALUES_BUG = false; 694 var proto = Base.prototype; 695 var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; 696 var $default = $native || getMethod(DEFAULT); 697 var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; 698 var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; 699 var methods, key, IteratorPrototype; 700 // Fix native 701 if ($anyNative) { 702 IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); 703 if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { 704 // Set @@toStringTag to native iterators 705 setToStringTag(IteratorPrototype, TAG, true); 706 // fix for some old engines 707 if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis); 708 } 709 } 710 // fix Array#{values, @@iterator}.name in V8 / FF 711 if (DEF_VALUES && $native && $native.name !== VALUES) { 712 VALUES_BUG = true; 713 $default = function values() { return $native.call(this); }; 714 } 715 // Define iterator 716 if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { 717 hide(proto, ITERATOR, $default); 718 } 719 // Plug for library 720 Iterators[NAME] = $default; 721 Iterators[TAG] = returnThis; 722 if (DEFAULT) { 723 methods = { 724 values: DEF_VALUES ? $default : getMethod(VALUES), 725 keys: IS_SET ? $default : getMethod(KEYS), 726 entries: $entries 727 }; 728 if (FORCED) for (key in methods) { 729 if (!(key in proto)) redefine(proto, key, methods[key]); 730 } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); 731 } 732 return methods; 733}; 734 735 736/***/ }), 737/* 47 */ 738/***/ (function(module, exports, __webpack_require__) { 739 740module.exports = !__webpack_require__(8) && !__webpack_require__(14)(function () { 741 return Object.defineProperty(__webpack_require__(48)('div'), 'a', { get: function () { return 7; } }).a != 7; 742}); 743 744 745/***/ }), 746/* 48 */ 747/***/ (function(module, exports, __webpack_require__) { 748 749var isObject = __webpack_require__(13); 750var document = __webpack_require__(2).document; 751// typeof document.createElement is 'object' in old IE 752var is = isObject(document) && isObject(document.createElement); 753module.exports = function (it) { 754 return is ? document.createElement(it) : {}; 755}; 756 757 758/***/ }), 759/* 49 */ 760/***/ (function(module, exports, __webpack_require__) { 761 762module.exports = __webpack_require__(11); 763 764 765/***/ }), 766/* 50 */ 767/***/ (function(module, exports, __webpack_require__) { 768 769var has = __webpack_require__(6); 770var toIObject = __webpack_require__(9); 771var arrayIndexOf = __webpack_require__(72)(false); 772var IE_PROTO = __webpack_require__(32)('IE_PROTO'); 773 774module.exports = function (object, names) { 775 var O = toIObject(object); 776 var i = 0; 777 var result = []; 778 var key; 779 for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); 780 // Don't enum bug & hidden keys 781 while (names.length > i) if (has(O, key = names[i++])) { 782 ~arrayIndexOf(result, key) || result.push(key); 783 } 784 return result; 785}; 786 787 788/***/ }), 789/* 51 */
vendor: 6,071 bytes, lines 790-1017
790/***/ (function(module, exports) { 791 792var toString = {}.toString; 793 794module.exports = function (it) { 795 return toString.call(it).slice(8, -1); 796}; 797 798 799/***/ }), 800/* 52 */ 801/***/ (function(module, exports, __webpack_require__) { 802 803// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) 804var $keys = __webpack_require__(50); 805var hiddenKeys = __webpack_require__(34).concat('length', 'prototype'); 806 807exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { 808 return $keys(O, hiddenKeys); 809}; 810 811 812/***/ }), 813/* 53 */ 814/***/ (function(module, exports, __webpack_require__) { 815 816var pIE = __webpack_require__(25); 817var createDesc = __webpack_require__(19); 818var toIObject = __webpack_require__(9); 819var toPrimitive = __webpack_require__(30); 820var has = __webpack_require__(6); 821var IE8_DOM_DEFINE = __webpack_require__(47); 822var gOPD = Object.getOwnPropertyDescriptor; 823 824exports.f = __webpack_require__(8) ? gOPD : function getOwnPropertyDescriptor(O, P) { 825 O = toIObject(O); 826 P = toPrimitive(P, true); 827 if (IE8_DOM_DEFINE) try { 828 return gOPD(O, P); 829 } catch (e) { /* empty */ } 830 if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); 831}; 832 833 834/***/ }), 835/* 54 */ 836/***/ (function(module, exports, __webpack_require__) { 837 838module.exports = { "default": __webpack_require__(135), __esModule: true }; 839 840/***/ }), 841/* 55 */, 842/* 56 */ 843/***/ (function(module, exports, __webpack_require__) { 844 845// optional / simple context binding 846var aFunction = __webpack_require__(69); 847module.exports = function (fn, that, length) { 848 aFunction(fn); 849 if (that === undefined) return fn; 850 switch (length) { 851 case 1: return function (a) { 852 return fn.call(that, a); 853 }; 854 case 2: return function (a, b) { 855 return fn.call(that, a, b); 856 }; 857 case 3: return function (a, b, c) { 858 return fn.call(that, a, b, c); 859 }; 860 } 861 return function (/* ...args */) { 862 return fn.apply(that, arguments); 863 }; 864}; 865 866 867/***/ }), 868/* 57 */ 869/***/ (function(module, exports, __webpack_require__) { 870 871// fallback for non-array-like ES3 and non-enumerable old V8 strings 872var cof = __webpack_require__(51); 873// eslint-disable-next-line no-prototype-builtins 874module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { 875 return cof(it) == 'String' ? it.split('') : Object(it); 876}; 877 878 879/***/ }), 880/* 58 */ 881/***/ (function(module, exports, __webpack_require__) { 882 883// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) 884var has = __webpack_require__(6); 885var toObject = __webpack_require__(41); 886var IE_PROTO = __webpack_require__(32)('IE_PROTO'); 887var ObjectProto = Object.prototype; 888 889module.exports = Object.getPrototypeOf || function (O) { 890 O = toObject(O); 891 if (has(O, IE_PROTO)) return O[IE_PROTO]; 892 if (typeof O.constructor == 'function' && O instanceof O.constructor) { 893 return O.constructor.prototype; 894 } return O instanceof Object ? ObjectProto : null; 895}; 896 897 898/***/ }), 899/* 59 */ 900/***/ (function(module, exports, __webpack_require__) { 901 902"use strict"; 903 904 905exports.__esModule = true; 906 907var _typeof2 = __webpack_require__(24); 908 909var _typeof3 = _interopRequireDefault(_typeof2); 910 911function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 912 913exports.default = function (self, call) { 914 if (!self) { 915 throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); 916 } 917 918 return call && ((typeof call === "undefined" ? "undefined" : (0, _typeof3.default)(call)) === "object" || typeof call === "function") ? call : self; 919}; 920 921/***/ }), 922/* 60 */ 923/***/ (function(module, exports, __webpack_require__) { 924 925"use strict"; 926 927 928exports.__esModule = true; 929 930var _setPrototypeOf = __webpack_require__(137); 931 932var _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf); 933 934var _create = __webpack_require__(141); 935 936var _create2 = _interopRequireDefault(_create); 937 938var _typeof2 = __webpack_require__(24); 939 940var _typeof3 = _interopRequireDefault(_typeof2); 941 942function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 943 944exports.default = function (subClass, superClass) { 945 if (typeof superClass !== "function" && superClass !== null) { 946 throw new TypeError("Super expression must either be null or a function, not " + (typeof superClass === "undefined" ? "undefined" : (0, _typeof3.default)(superClass))); 947 } 948 949 subClass.prototype = (0, _create2.default)(superClass && superClass.prototype, { 950 constructor: { 951 value: subClass, 952 enumerable: false, 953 writable: true, 954 configurable: true 955 } 956 }); 957 if (superClass) _setPrototypeOf2.default ? (0, _setPrototypeOf2.default)(subClass, superClass) : subClass.__proto__ = superClass; 958}; 959 960/***/ }), 961/* 61 */, 962/* 62 */, 963/* 63 */ 964/***/ (function(module, exports, __webpack_require__) { 965 966"use strict"; 967 968 969if (false) { 970 var hotEmitter = require("webpack/hot/emitter"); 971 hotEmitter.on("webpackHotUpdate", function (currentHash) { 972 document.querySelectorAll('link[href][rel=stylesheet]').forEach(function (link) { 973 var url = new URL(link.href); 974 url.searchParams.set('hash', Date.now()); 975 link.href = link.href.replace(url.toString()); 976 }); 977 }); 978} 979 980/***/ }), 981/* 64 */ 982/***/ (function(module, exports, __webpack_require__) { 983 984"use strict"; 985 986 987Object.defineProperty(exports, "__esModule", { 988 value: true 989}); 990exports.ColibriFrontComponent = exports.ColibriFrontend = undefined; 991 992var _colibri = __webpack_require__(104); 993 994var _colibri2 = _interopRequireDefault(_colibri); 995 996var _colibriKubeComponent = __webpack_require__(129); 997 998var _colibriKubeComponent2 = _interopRequireDefault(_colibriKubeComponent); 999 1000function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 1001 1002_colibri2.default.registerPlugin = function (name, plugin, autoload) { 1003 if (typeof name.componentName === 'function') { 1004 autoload = plugin; 1005 plugin = name; 1006 name = plugin.componentName(); 1007 } 1008 1009 _colibri2.default[name] = plugin; 1010 // Colibri[name].inherits(Colibri); 1011 _colibri2.default.Plugin.create(name); 1012 1013 if (autoload !== false) { 1014 _colibri2.default.Plugin.autoload(name); 1015 } 1016}; 1017
vendor: 7,029 bytes, lines 1018-1261
1018exports.ColibriFrontend = _colibri2.default; 1019exports.ColibriFrontComponent = _colibriKubeComponent2.default; 1020 1021/***/ }), 1022/* 65 */ 1023/***/ (function(module, exports, __webpack_require__) { 1024 1025module.exports = { "default": __webpack_require__(66), __esModule: true }; 1026 1027/***/ }), 1028/* 66 */ 1029/***/ (function(module, exports, __webpack_require__) { 1030 1031__webpack_require__(67); 1032__webpack_require__(76); 1033module.exports = __webpack_require__(36).f('iterator'); 1034 1035 1036/***/ }), 1037/* 67 */ 1038/***/ (function(module, exports, __webpack_require__) { 1039 1040"use strict"; 1041 1042var $at = __webpack_require__(68)(true); 1043 1044// 21.1.3.27 String.prototype[@@iterator]() 1045__webpack_require__(46)(String, 'String', function (iterated) { 1046 this._t = String(iterated); // target 1047 this._i = 0; // next index 1048// 21.1.5.2.1 %StringIteratorPrototype%.next() 1049}, function () { 1050 var O = this._t; 1051 var index = this._i; 1052 var point; 1053 if (index >= O.length) return { value: undefined, done: true }; 1054 point = $at(O, index); 1055 this._i += point.length; 1056 return { value: point, done: false }; 1057}); 1058 1059 1060/***/ }), 1061/* 68 */ 1062/***/ (function(module, exports, __webpack_require__) { 1063 1064var toInteger = __webpack_require__(28); 1065var defined = __webpack_require__(29); 1066// true -> String#at 1067// false -> String#codePointAt 1068module.exports = function (TO_STRING) { 1069 return function (that, pos) { 1070 var s = String(defined(that)); 1071 var i = toInteger(pos); 1072 var l = s.length; 1073 var a, b; 1074 if (i < 0 || i >= l) return TO_STRING ? '' : undefined; 1075 a = s.charCodeAt(i); 1076 return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff 1077 ? TO_STRING ? s.charAt(i) : a 1078 : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; 1079 }; 1080}; 1081 1082 1083/***/ }), 1084/* 69 */ 1085/***/ (function(module, exports) { 1086 1087module.exports = function (it) { 1088 if (typeof it != 'function') throw TypeError(it + ' is not a function!'); 1089 return it; 1090}; 1091 1092 1093/***/ }), 1094/* 70 */ 1095/***/ (function(module, exports, __webpack_require__) { 1096 1097"use strict"; 1098 1099var create = __webpack_require__(40); 1100var descriptor = __webpack_require__(19); 1101var setToStringTag = __webpack_require__(35); 1102var IteratorPrototype = {}; 1103 1104// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() 1105__webpack_require__(11)(IteratorPrototype, __webpack_require__(12)('iterator'), function () { return this; }); 1106 1107module.exports = function (Constructor, NAME, next) { 1108 Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); 1109 setToStringTag(Constructor, NAME + ' Iterator'); 1110}; 1111 1112 1113/***/ }), 1114/* 71 */ 1115/***/ (function(module, exports, __webpack_require__) { 1116 1117var dP = __webpack_require__(7); 1118var anObject = __webpack_require__(17); 1119var getKeys = __webpack_require__(20); 1120 1121module.exports = __webpack_require__(8) ? Object.defineProperties : function defineProperties(O, Properties) { 1122 anObject(O); 1123 var keys = getKeys(Properties); 1124 var length = keys.length; 1125 var i = 0; 1126 var P; 1127 while (length > i) dP.f(O, P = keys[i++], Properties[P]); 1128 return O; 1129}; 1130 1131 1132/***/ }), 1133/* 72 */ 1134/***/ (function(module, exports, __webpack_require__) { 1135 1136// false -> Array#indexOf 1137// true -> Array#includes 1138var toIObject = __webpack_require__(9); 1139var toLength = __webpack_require__(73); 1140var toAbsoluteIndex = __webpack_require__(74); 1141module.exports = function (IS_INCLUDES) { 1142 return function ($this, el, fromIndex) { 1143 var O = toIObject($this); 1144 var length = toLength(O.length); 1145 var index = toAbsoluteIndex(fromIndex, length); 1146 var value; 1147 // Array#includes uses SameValueZero equality algorithm 1148 // eslint-disable-next-line no-self-compare 1149 if (IS_INCLUDES && el != el) while (length > index) { 1150 value = O[index++]; 1151 // eslint-disable-next-line no-self-compare 1152 if (value != value) return true; 1153 // Array#indexOf ignores holes, Array#includes - not 1154 } else for (;length > index; index++) if (IS_INCLUDES || index in O) { 1155 if (O[index] === el) return IS_INCLUDES || index || 0; 1156 } return !IS_INCLUDES && -1; 1157 }; 1158}; 1159 1160 1161/***/ }), 1162/* 73 */ 1163/***/ (function(module, exports, __webpack_require__) { 1164 1165// 7.1.15 ToLength 1166var toInteger = __webpack_require__(28); 1167var min = Math.min; 1168module.exports = function (it) { 1169 return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 1170}; 1171 1172 1173/***/ }), 1174/* 74 */ 1175/***/ (function(module, exports, __webpack_require__) { 1176 1177var toInteger = __webpack_require__(28); 1178var max = Math.max; 1179var min = Math.min; 1180module.exports = function (index, length) { 1181 index = toInteger(index); 1182 return index < 0 ? max(index + length, 0) : min(index, length); 1183}; 1184 1185 1186/***/ }), 1187/* 75 */ 1188/***/ (function(module, exports, __webpack_require__) { 1189 1190var document = __webpack_require__(2).document; 1191module.exports = document && document.documentElement; 1192 1193 1194/***/ }), 1195/* 76 */ 1196/***/ (function(module, exports, __webpack_require__) { 1197 1198__webpack_require__(77); 1199var global = __webpack_require__(2); 1200var hide = __webpack_require__(11); 1201var Iterators = __webpack_require__(31); 1202var TO_STRING_TAG = __webpack_require__(12)('toStringTag'); 1203 1204var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' + 1205 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' + 1206 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' + 1207 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' + 1208 'TextTrackList,TouchList').split(','); 1209 1210for (var i = 0; i < DOMIterables.length; i++) { 1211 var NAME = DOMIterables[i]; 1212 var Collection = global[NAME]; 1213 var proto = Collection && Collection.prototype; 1214 if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); 1215 Iterators[NAME] = Iterators.Array; 1216} 1217 1218 1219/***/ }), 1220/* 77 */ 1221/***/ (function(module, exports, __webpack_require__) { 1222 1223"use strict"; 1224 1225var addToUnscopables = __webpack_require__(78); 1226var step = __webpack_require__(79); 1227var Iterators = __webpack_require__(31); 1228var toIObject = __webpack_require__(9); 1229 1230// 22.1.3.4 Array.prototype.entries() 1231// 22.1.3.13 Array.prototype.keys() 1232// 22.1.3.29 Array.prototype.values() 1233// 22.1.3.30 Array.prototype[@@iterator]() 1234module.exports = __webpack_require__(46)(Array, 'Array', function (iterated, kind) { 1235 this._t = toIObject(iterated); // target 1236 this._i = 0; // next index 1237 this._k = kind; // kind 1238// 22.1.5.2.1 %ArrayIteratorPrototype%.next() 1239}, function () { 1240 var O = this._t; 1241 var kind = this._k; 1242 var index = this._i++; 1243 if (!O || index >= O.length) { 1244 this._t = undefined; 1245 return step(1); 1246 } 1247 if (kind == 'keys') return step(0, index); 1248 if (kind == 'values') return step(0, O[index]); 1249 return step(0, [index, O[index]]); 1250}, 'values'); 1251 1252// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) 1253Iterators.Arguments = Iterators.Array; 1254 1255addToUnscopables('keys'); 1256addToUnscopables('values'); 1257addToUnscopables('entries'); 1258 1259 1260/***/ }), 1261/* 78 */
vendor: 12,659 bytes, lines 1262-1651
1262/***/ (function(module, exports) { 1263 1264module.exports = function () { /* empty */ }; 1265 1266 1267/***/ }), 1268/* 79 */ 1269/***/ (function(module, exports) { 1270 1271module.exports = function (done, value) { 1272 return { value: value, done: !!done }; 1273}; 1274 1275 1276/***/ }), 1277/* 80 */ 1278/***/ (function(module, exports, __webpack_require__) { 1279 1280module.exports = { "default": __webpack_require__(81), __esModule: true }; 1281 1282/***/ }), 1283/* 81 */ 1284/***/ (function(module, exports, __webpack_require__) { 1285 1286__webpack_require__(82); 1287__webpack_require__(87); 1288__webpack_require__(88); 1289__webpack_require__(89); 1290module.exports = __webpack_require__(3).Symbol; 1291 1292 1293/***/ }), 1294/* 82 */ 1295/***/ (function(module, exports, __webpack_require__) { 1296 1297"use strict"; 1298 1299// ECMAScript 6 symbols shim 1300var global = __webpack_require__(2); 1301var has = __webpack_require__(6); 1302var DESCRIPTORS = __webpack_require__(8); 1303var $export = __webpack_require__(16); 1304var redefine = __webpack_require__(49); 1305var META = __webpack_require__(83).KEY; 1306var $fails = __webpack_require__(14); 1307var shared = __webpack_require__(33); 1308var setToStringTag = __webpack_require__(35); 1309var uid = __webpack_require__(21); 1310var wks = __webpack_require__(12); 1311var wksExt = __webpack_require__(36); 1312var wksDefine = __webpack_require__(37); 1313var enumKeys = __webpack_require__(84); 1314var isArray = __webpack_require__(85); 1315var anObject = __webpack_require__(17); 1316var isObject = __webpack_require__(13); 1317var toIObject = __webpack_require__(9); 1318var toPrimitive = __webpack_require__(30); 1319var createDesc = __webpack_require__(19); 1320var _create = __webpack_require__(40); 1321var gOPNExt = __webpack_require__(86); 1322var $GOPD = __webpack_require__(53); 1323var $DP = __webpack_require__(7); 1324var $keys = __webpack_require__(20); 1325var gOPD = $GOPD.f; 1326var dP = $DP.f; 1327var gOPN = gOPNExt.f; 1328var $Symbol = global.Symbol; 1329var $JSON = global.JSON; 1330var _stringify = $JSON && $JSON.stringify; 1331var PROTOTYPE = 'prototype'; 1332var HIDDEN = wks('_hidden'); 1333var TO_PRIMITIVE = wks('toPrimitive'); 1334var isEnum = {}.propertyIsEnumerable; 1335var SymbolRegistry = shared('symbol-registry'); 1336var AllSymbols = shared('symbols'); 1337var OPSymbols = shared('op-symbols'); 1338var ObjectProto = Object[PROTOTYPE]; 1339var USE_NATIVE = typeof $Symbol == 'function'; 1340var QObject = global.QObject; 1341// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 1342var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; 1343 1344// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 1345var setSymbolDesc = DESCRIPTORS && $fails(function () { 1346 return _create(dP({}, 'a', { 1347 get: function () { return dP(this, 'a', { value: 7 }).a; } 1348 })).a != 7; 1349}) ? function (it, key, D) { 1350 var protoDesc = gOPD(ObjectProto, key); 1351 if (protoDesc) delete ObjectProto[key]; 1352 dP(it, key, D); 1353 if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc); 1354} : dP; 1355 1356var wrap = function (tag) { 1357 var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]); 1358 sym._k = tag; 1359 return sym; 1360}; 1361 1362var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) { 1363 return typeof it == 'symbol'; 1364} : function (it) { 1365 return it instanceof $Symbol; 1366}; 1367 1368var $defineProperty = function defineProperty(it, key, D) { 1369 if (it === ObjectProto) $defineProperty(OPSymbols, key, D); 1370 anObject(it); 1371 key = toPrimitive(key, true); 1372 anObject(D); 1373 if (has(AllSymbols, key)) { 1374 if (!D.enumerable) { 1375 if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {})); 1376 it[HIDDEN][key] = true; 1377 } else { 1378 if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false; 1379 D = _create(D, { enumerable: createDesc(0, false) }); 1380 } return setSymbolDesc(it, key, D); 1381 } return dP(it, key, D); 1382}; 1383var $defineProperties = function defineProperties(it, P) { 1384 anObject(it); 1385 var keys = enumKeys(P = toIObject(P)); 1386 var i = 0; 1387 var l = keys.length; 1388 var key; 1389 while (l > i) $defineProperty(it, key = keys[i++], P[key]); 1390 return it; 1391}; 1392var $create = function create(it, P) { 1393 return P === undefined ? _create(it) : $defineProperties(_create(it), P); 1394}; 1395var $propertyIsEnumerable = function propertyIsEnumerable(key) { 1396 var E = isEnum.call(this, key = toPrimitive(key, true)); 1397 if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false; 1398 return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true; 1399}; 1400var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) { 1401 it = toIObject(it); 1402 key = toPrimitive(key, true); 1403 if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return; 1404 var D = gOPD(it, key); 1405 if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true; 1406 return D; 1407}; 1408var $getOwnPropertyNames = function getOwnPropertyNames(it) { 1409 var names = gOPN(toIObject(it)); 1410 var result = []; 1411 var i = 0; 1412 var key; 1413 while (names.length > i) { 1414 if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key); 1415 } return result; 1416}; 1417var $getOwnPropertySymbols = function getOwnPropertySymbols(it) { 1418 var IS_OP = it === ObjectProto; 1419 var names = gOPN(IS_OP ? OPSymbols : toIObject(it)); 1420 var result = []; 1421 var i = 0; 1422 var key; 1423 while (names.length > i) { 1424 if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]); 1425 } return result; 1426}; 1427 1428// 19.4.1.1 Symbol([description]) 1429if (!USE_NATIVE) { 1430 $Symbol = function Symbol() { 1431 if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!'); 1432 var tag = uid(arguments.length > 0 ? arguments[0] : undefined); 1433 var $set = function (value) { 1434 if (this === ObjectProto) $set.call(OPSymbols, value); 1435 if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; 1436 setSymbolDesc(this, tag, createDesc(1, value)); 1437 }; 1438 if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); 1439 return wrap(tag); 1440 }; 1441 redefine($Symbol[PROTOTYPE], 'toString', function toString() { 1442 return this._k; 1443 }); 1444 1445 $GOPD.f = $getOwnPropertyDescriptor; 1446 $DP.f = $defineProperty; 1447 __webpack_require__(52).f = gOPNExt.f = $getOwnPropertyNames; 1448 __webpack_require__(25).f = $propertyIsEnumerable; 1449 __webpack_require__(42).f = $getOwnPropertySymbols; 1450 1451 if (DESCRIPTORS && !__webpack_require__(18)) { 1452 redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true); 1453 } 1454 1455 wksExt.f = function (name) { 1456 return wrap(wks(name)); 1457 }; 1458} 1459 1460$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol }); 1461 1462for (var es6Symbols = ( 1463 // 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 1464 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables' 1465).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]); 1466 1467for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]); 1468 1469$export($export.S + $export.F * !USE_NATIVE, 'Symbol', { 1470 // 19.4.2.1 Symbol.for(key) 1471 'for': function (key) { 1472 return has(SymbolRegistry, key += '') 1473 ? SymbolRegistry[key] 1474 : SymbolRegistry[key] = $Symbol(key); 1475 }, 1476 // 19.4.2.5 Symbol.keyFor(sym) 1477 keyFor: function keyFor(sym) { 1478 if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!'); 1479 for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key; 1480 }, 1481 useSetter: function () { setter = true; }, 1482 useSimple: function () { setter = false; } 1483}); 1484 1485$export($export.S + $export.F * !USE_NATIVE, 'Object', { 1486 // 19.1.2.2 Object.create(O [, Properties]) 1487 create: $create, 1488 // 19.1.2.4 Object.defineProperty(O, P, Attributes) 1489 defineProperty: $defineProperty, 1490 // 19.1.2.3 Object.defineProperties(O, Properties) 1491 defineProperties: $defineProperties, 1492 // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) 1493 getOwnPropertyDescriptor: $getOwnPropertyDescriptor, 1494 // 19.1.2.7 Object.getOwnPropertyNames(O) 1495 getOwnPropertyNames: $getOwnPropertyNames, 1496 // 19.1.2.8 Object.getOwnPropertySymbols(O) 1497 getOwnPropertySymbols: $getOwnPropertySymbols 1498}); 1499 1500// 24.3.2 JSON.stringify(value [, replacer [, space]]) 1501$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () { 1502 var S = $Symbol(); 1503 // MS Edge converts symbol values to JSON as {} 1504 // WebKit converts symbol values to JSON as null 1505 // V8 throws on boxed symbols 1506 return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}'; 1507})), 'JSON', { 1508 stringify: function stringify(it) { 1509 var args = [it]; 1510 var i = 1; 1511 var replacer, $replacer; 1512 while (arguments.length > i) args.push(arguments[i++]); 1513 $replacer = replacer = args[1]; 1514 if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined 1515 if (!isArray(replacer)) replacer = function (key, value) { 1516 if (typeof $replacer == 'function') value = $replacer.call(this, key, value); 1517 if (!isSymbol(value)) return value; 1518 }; 1519 args[1] = replacer; 1520 return _stringify.apply($JSON, args); 1521 } 1522}); 1523 1524// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint) 1525$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(11)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf); 1526// 19.4.3.5 Symbol.prototype[@@toStringTag] 1527setToStringTag($Symbol, 'Symbol'); 1528// 20.2.1.9 Math[@@toStringTag] 1529setToStringTag(Math, 'Math', true); 1530// 24.3.3 JSON[@@toStringTag] 1531setToStringTag(global.JSON, 'JSON', true); 1532 1533 1534/***/ }), 1535/* 83 */ 1536/***/ (function(module, exports, __webpack_require__) { 1537 1538var META = __webpack_require__(21)('meta'); 1539var isObject = __webpack_require__(13); 1540var has = __webpack_require__(6); 1541var setDesc = __webpack_require__(7).f; 1542var id = 0; 1543var isExtensible = Object.isExtensible || function () { 1544 return true; 1545}; 1546var FREEZE = !__webpack_require__(14)(function () { 1547 return isExtensible(Object.preventExtensions({})); 1548}); 1549var setMeta = function (it) { 1550 setDesc(it, META, { value: { 1551 i: 'O' + ++id, // object ID 1552 w: {} // weak collections IDs 1553 } }); 1554}; 1555var fastKey = function (it, create) { 1556 // return primitive with prefix 1557 if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it; 1558 if (!has(it, META)) { 1559 // can't set metadata to uncaught frozen object 1560 if (!isExtensible(it)) return 'F'; 1561 // not necessary to add metadata 1562 if (!create) return 'E'; 1563 // add missing metadata 1564 setMeta(it); 1565 // return object ID 1566 } return it[META].i; 1567}; 1568var getWeak = function (it, create) { 1569 if (!has(it, META)) { 1570 // can't set metadata to uncaught frozen object 1571 if (!isExtensible(it)) return true; 1572 // not necessary to add metadata 1573 if (!create) return false; 1574 // add missing metadata 1575 setMeta(it); 1576 // return hash weak collections IDs 1577 } return it[META].w; 1578}; 1579// add metadata on freeze-family methods calling 1580var onFreeze = function (it) { 1581 if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it); 1582 return it; 1583}; 1584var meta = module.exports = { 1585 KEY: META, 1586 NEED: false, 1587 fastKey: fastKey, 1588 getWeak: getWeak, 1589 onFreeze: onFreeze 1590}; 1591 1592 1593/***/ }), 1594/* 84 */ 1595/***/ (function(module, exports, __webpack_require__) { 1596 1597// all enumerable object keys, includes symbols 1598var getKeys = __webpack_require__(20); 1599var gOPS = __webpack_require__(42); 1600var pIE = __webpack_require__(25); 1601module.exports = function (it) { 1602 var result = getKeys(it); 1603 var getSymbols = gOPS.f; 1604 if (getSymbols) { 1605 var symbols = getSymbols(it); 1606 var isEnum = pIE.f; 1607 var i = 0; 1608 var key; 1609 while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key); 1610 } return result; 1611}; 1612 1613 1614/***/ }), 1615/* 85 */ 1616/***/ (function(module, exports, __webpack_require__) { 1617 1618// 7.2.2 IsArray(argument) 1619var cof = __webpack_require__(51); 1620module.exports = Array.isArray || function isArray(arg) { 1621 return cof(arg) == 'Array'; 1622}; 1623 1624 1625/***/ }), 1626/* 86 */ 1627/***/ (function(module, exports, __webpack_require__) { 1628 1629// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window 1630var toIObject = __webpack_require__(9); 1631var gOPN = __webpack_require__(52).f; 1632var toString = {}.toString; 1633 1634var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames 1635 ? Object.getOwnPropertyNames(window) : []; 1636 1637var getWindowNames = function (it) { 1638 try { 1639 return gOPN(it); 1640 } catch (e) { 1641 return windowNames.slice(); 1642 } 1643}; 1644 1645module.exports.f = function getOwnPropertyNames(it) { 1646 return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it)); 1647}; 1648 1649 1650/***/ }), 1651/* 87 */
vendor: 4,300 bytes, lines 1652-1795
1652/***/ (function(module, exports) { 1653 1654 1655 1656/***/ }), 1657/* 88 */ 1658/***/ (function(module, exports, __webpack_require__) { 1659 1660__webpack_require__(37)('asyncIterator'); 1661 1662 1663/***/ }), 1664/* 89 */ 1665/***/ (function(module, exports, __webpack_require__) { 1666 1667__webpack_require__(37)('observable'); 1668 1669 1670/***/ }), 1671/* 90 */ 1672/***/ (function(module, exports, __webpack_require__) { 1673 1674// most Object methods by ES6 should accept primitives 1675var $export = __webpack_require__(16); 1676var core = __webpack_require__(3); 1677var fails = __webpack_require__(14); 1678module.exports = function (KEY, exec) { 1679 var fn = (core.Object || {})[KEY] || Object[KEY]; 1680 var exp = {}; 1681 exp[KEY] = exec(fn); 1682 $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); 1683}; 1684 1685 1686/***/ }), 1687/* 91 */, 1688/* 92 */, 1689/* 93 */, 1690/* 94 */, 1691/* 95 */, 1692/* 96 */, 1693/* 97 */, 1694/* 98 */, 1695/* 99 */, 1696/* 100 */, 1697/* 101 */, 1698/* 102 */, 1699/* 103 */ 1700/***/ (function(module, exports, __webpack_require__) { 1701 1702/* WEBPACK VAR INJECTION */(function(global) {/** 1703 * lodash (Custom Build) <https://lodash.com/> 1704 * Build: `lodash modularize exports="npm" -o ./` 1705 * Copyright jQuery Foundation and other contributors <https://jquery.org/> 1706 * Released under MIT license <https://lodash.com/license> 1707 * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> 1708 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors 1709 */ 1710 1711/** Used as the `TypeError` message for "Functions" methods. */ 1712var FUNC_ERROR_TEXT = 'Expected a function'; 1713 1714/** Used as references for various `Number` constants. */ 1715var NAN = 0 / 0; 1716 1717/** `Object#toString` result references. */ 1718var symbolTag = '[object Symbol]'; 1719 1720/** Used to match leading and trailing whitespace. */ 1721var reTrim = /^\s+|\s+$/g; 1722 1723/** Used to detect bad signed hexadecimal string values. */ 1724var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; 1725 1726/** Used to detect binary string values. */ 1727var reIsBinary = /^0b[01]+$/i; 1728 1729/** Used to detect octal string values. */ 1730var reIsOctal = /^0o[0-7]+$/i; 1731 1732/** Built-in method references without a dependency on `root`. */ 1733var freeParseInt = parseInt; 1734 1735/** Detect free variable `global` from Node.js. */ 1736var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; 1737 1738/** Detect free variable `self`. */ 1739var freeSelf = typeof self == 'object' && self && self.Object === Object && self; 1740 1741/** Used as a reference to the global object. */ 1742var root = freeGlobal || freeSelf || Function('return this')(); 1743 1744/** Used for built-in method references. */ 1745var objectProto = Object.prototype; 1746 1747/** 1748 * Used to resolve the 1749 * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) 1750 * of values. 1751 */ 1752var objectToString = objectProto.toString; 1753 1754/* Built-in method references for those with the same name as other `lodash` methods. */ 1755var nativeMax = Math.max, 1756 nativeMin = Math.min; 1757 1758/** 1759 * Gets the timestamp of the number of milliseconds that have elapsed since 1760 * the Unix epoch (1 January 1970 00:00:00 UTC). 1761 * 1762 * @static 1763 * @memberOf _ 1764 * @since 2.4.0 1765 * @category Date 1766 * @returns {number} Returns the timestamp. 1767 * @example 1768 * 1769 * _.defer(function(stamp) { 1770 * console.log(_.now() - stamp); 1771 * }, _.now()); 1772 * // => Logs the number of milliseconds it took for the deferred invocation. 1773 */ 1774var now = function() { 1775 return root.Date.now(); 1776}; 1777 1778/** 1779 * Creates a debounced function that delays invoking `func` until after `wait` 1780 * milliseconds have elapsed since the last time the debounced function was 1781 * invoked. The debounced function comes with a `cancel` method to cancel 1782 * delayed `func` invocations and a `flush` method to immediately invoke them. 1783 * Provide `options` to indicate whether `func` should be invoked on the 1784 * leading and/or trailing edge of the `wait` timeout. The `func` is invoked 1785 * with the last arguments provided to the debounced function. Subsequent 1786 * calls to the debounced function return the result of the last `func` 1787 * invocation. 1788 * 1789 * **Note:** If `leading` and `trailing` options are `true`, `func` is 1790 * invoked on the trailing edge of the timeout only if the debounced function 1791 * is invoked more than once during the `wait` timeout. 1792 * 1793 * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred 1794 * until to the next tick, similar to `setTimeout` with a timeout of `0`. 1795 *
1796 * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) 1797 * for details over the differences between `_.debounce` and `_.throttle`. 1798 * 1799 * @static 1800 * @memberOf _ 1801 * @since 0.1.0 1802 * @category Function 1803 * @param {Function} func The function to debounce. 1804 * @param {number} [wait=0] The number of milliseconds to delay. 1805 * @param {Object} [options={}] The options object. 1806 * @param {boolean} [options.leading=false] 1807 * Specify invoking on the leading edge of the timeout. 1808 * @param {number} [options.maxWait] 1809 * The maximum time `func` is allowed to be delayed before it's invoked. 1810 * @param {boolean} [options.trailing=true] 1811 * Specify invoking on the trailing edge of the timeout. 1812 * @returns {Function} Returns the new debounced function. 1813 * @example 1814 * 1815 * // Avoid costly calculations while the window size is in flux. 1816 * jQuery(window).on('resize', _.debounce(calculateLayout, 150)); 1817 * 1818 * // Invoke `sendMail` when clicked, debouncing subsequent calls. 1819 * jQuery(element).on('click', _.debounce(sendMail, 300, { 1820 * 'leading': true, 1821 * 'trailing': false 1822 * })); 1823 * 1824 * // Ensure `batchLog` is invoked once after 1 second of debounced calls. 1825 * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 }); 1826 * var source = new EventSource('/stream'); 1827 * jQuery(source).on('message', debounced); 1828 * 1829 * // Cancel the trailing debounced invocation. 1830 * jQuery(window).on('popstate', debounced.cancel); 1831 */ 1832function debounce(func, wait, options) { 1833 var lastArgs, 1834 lastThis, 1835 maxWait, 1836 result, 1837 timerId, 1838 lastCallTime, 1839 lastInvokeTime = 0, 1840 leading = false, 1841 maxing = false, 1842 trailing = true; 1843 1844 if (typeof func != 'function') { 1845 throw new TypeError(FUNC_ERROR_TEXT); 1846 } 1847 wait = toNumber(wait) || 0; 1848 if (isObject(options)) { 1849 leading = !!options.leading; 1850 maxing = 'maxWait' in options; 1851 maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; 1852 trailing = 'trailing' in options ? !!options.trailing : trailing; 1853 } 1854 1855 function invokeFunc(time) { 1856 var args = lastArgs, 1857 thisArg = lastThis; 1858 1859 lastArgs = lastThis = undefined; 1860 lastInvokeTime = time; 1861 result = func.apply(thisArg, args); 1862 return result; 1863 } 1864 1865 function leadingEdge(time) { 1866 // Reset any `maxWait` timer. 1867 lastInvokeTime = time; 1868 // Start the timer for the trailing edge. 1869 timerId = setTimeout(timerExpired, wait); 1870 // Invoke the leading edge. 1871 return leading ? invokeFunc(time) : result; 1872 } 1873 1874 function remainingWait(time) { 1875 var timeSinceLastCall = time - lastCallTime, 1876 timeSinceLastInvoke = time - lastInvokeTime, 1877 result = wait - timeSinceLastCall; 1878 1879 return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result; 1880 } 1881 1882 function shouldInvoke(time) { 1883 var timeSinceLastCall = time - lastCallTime, 1884 timeSinceLastInvoke = time - lastInvokeTime; 1885 1886 // Either this is the first call, activity has stopped and we're at the 1887 // trailing edge, the system time has gone backwards and we're treating 1888 // it as the trailing edge, or we've hit the `maxWait` limit. 1889 return (lastCallTime === undefined || (timeSinceLastCall >= wait) || 1890 (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait)); 1891 } 1892 1893 function timerExpired() { 1894 var time = now(); 1895 if (shouldInvoke(time)) { 1896 return trailingEdge(time); 1897 } 1898 // Restart the timer. 1899 timerId = setTimeout(timerExpired, remainingWait(time)); 1900 } 1901 1902 function trailingEdge(time) { 1903 timerId = undefined; 1904 1905 // Only invoke if we have `lastArgs` which means `func` has been 1906 // debounced at least once. 1907 if (trailing && lastArgs) { 1908 return invokeFunc(time); 1909 } 1910 lastArgs = lastThis = undefined; 1911 return result; 1912 } 1913 1914 function cancel() { 1915 if (timerId !== undefined) { 1916 clearTimeout(timerId); 1917 } 1918 lastInvokeTime = 0; 1919 lastArgs = lastCallTime = lastThis = timerId = undefined; 1920 } 1921 1922 function flush() { 1923 return timerId === undefined ? result : trailingEdge(now()); 1924 } 1925 1926 function debounced() { 1927 var time = now(), 1928 isInvoking = shouldInvoke(time); 1929 1930 lastArgs = arguments; 1931 lastThis = this; 1932 lastCallTime = time; 1933 1934 if (isInvoking) { 1935 if (timerId === undefined) { 1936 return leadingEdge(lastCallTime); 1937 } 1938 if (maxing) { 1939 // Handle invocations in a tight loop. 1940 timerId = setTimeout(timerExpired, wait); 1941 return invokeFunc(lastCallTime); 1942 } 1943 } 1944 if (timerId === undefined) { 1945 timerId = setTimeout(timerExpired, wait); 1946 } 1947 return result; 1948 } 1949 debounced.cancel = cancel; 1950 debounced.flush = flush; 1951 return debounced; 1952} 1953 1954/** 1955 * Checks if `value` is the 1956 * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) 1957 * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) 1958 * 1959 * @static 1960 * @memberOf _ 1961 * @since 0.1.0 1962 * @category Lang 1963 * @param {*} value The value to check. 1964 * @returns {boolean} Returns `true` if `value` is an object, else `false`. 1965 * @example 1966 * 1967 * _.isObject({}); 1968 * // => true 1969 * 1970 * _.isObject([1, 2, 3]); 1971 * // => true 1972 * 1973 * _.isObject(_.noop); 1974 * // => true 1975 * 1976 * _.isObject(null); 1977 * // => false 1978 */ 1979function isObject(value) { 1980 var type = typeof value; 1981 return !!value && (type == 'object' || type == 'function'); 1982} 1983 1984/** 1985 * Checks if `value` is object-like. A value is object-like if it's not `null` 1986 * and has a `typeof` result of "object". 1987 * 1988 * @static 1989 * @memberOf _ 1990 * @since 4.0.0 1991 * @category Lang 1992 * @param {*} value The value to check. 1993 * @returns {boolean} Returns `true` if `value` is object-like, else `false`. 1994 * @example 1995 * 1996 * _.isObjectLike({}); 1997 * // => true 1998 * 1999 * _.isObjectLike([1, 2, 3]); 2000 * // => true 2001 * 2002 * _.isObjectLike(_.noop); 2003 * // => false 2004 * 2005 * _.isObjectLike(null); 2006 * // => false 2007 */ 2008function isObjectLike(value) { 2009 return !!value && typeof value == 'object'; 2010} 2011 2012/** 2013 * Checks if `value` is classified as a `Symbol` primitive or object. 2014 * 2015 * @static 2016 * @memberOf _ 2017 * @since 4.0.0 2018 * @category Lang 2019 * @param {*} value The value to check. 2020 * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. 2021 * @example 2022 * 2023 * _.isSymbol(Symbol.iterator); 2024 * // => true 2025 * 2026 * _.isSymbol('abc'); 2027 * // => false 2028 */ 2029function isSymbol(value) { 2030 return typeof value == 'symbol' || 2031 (isObjectLike(value) && objectToString.call(value) == symbolTag); 2032} 2033 2034/** 2035 * Converts `value` to a number. 2036 * 2037 * @static 2038 * @memberOf _ 2039 * @since 4.0.0 2040 * @category Lang 2041 * @param {*} value The value to process. 2042 * @returns {number} Returns the number. 2043 * @example 2044 * 2045 * _.toNumber(3.2); 2046 * // => 3.2 2047 * 2048 * _.toNumber(Number.MIN_VALUE); 2049 * // => 5e-324 2050 * 2051 * _.toNumber(Infinity); 2052 * // => Infinity 2053 * 2054 * _.toNumber('3.2'); 2055 * // => 3.2 2056 */ 2057function toNumber(value) { 2058 if (typeof value == 'number') { 2059 return value; 2060 } 2061 if (isSymbol(value)) { 2062 return NAN; 2063 } 2064 if (isObject(value)) { 2065 var other = typeof value.valueOf == 'function' ? value.valueOf() : value; 2066 value = isObject(other) ? (other + '') : other; 2067 } 2068 if (typeof value != 'string') { 2069 return value === 0 ? value : +value; 2070 } 2071 value = value.replace(reTrim, ''); 2072 var isBinary = reIsBinary.test(value); 2073 return (isBinary || reIsOctal.test(value)) 2074 ? freeParseInt(value.slice(2), isBinary ? 2 : 8) 2075 : (reIsBadHex.test(value) ? NAN : +value); 2076} 2077 2078module.exports = debounce; 2079 2080/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(27))) 2081 2082/***/ }), 2083/* 104 */ 2084/***/ (function(module, exports, __webpack_require__) { 2085 2086"use strict"; 2087 2088 2089var _typeof2 = __webpack_require__(24); 2090 2091var _typeof3 = _interopRequireDefault(_typeof2); 2092 2093function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 2094 2095(function (name, definition) { 2096 2097 if (true) { 2098 module.exports = definition(); 2099 } else if (typeof define == 'function' && (0, _typeof3.default)(def
2099ine.amd) == 'object') { 2100 define(definition); 2101 } else { 2102 this[name] = definition(); 2103 } 2104})('Colibri', function () { 2105 var $ = jQuery; 2106 if (typeof jQuery === 'undefined') { 2107 throw new Error('Colibri requires jQuery'); 2108 } 2109 2110 ;(function ($) { 2111 var version = $.fn.jquery.split('.'); 2112 if (version[0] === 1 && version[1] < 8) { 2113 throw new Error('Colibri requires at least jQuery v1.8'); 2114 } 2115 })(jQuery); 2116 2117 var _Colibri; 2118 2119 var lib_prefix = "colibri."; 2120 2121 ;(function () { 2122 // Inherits 2123 Function.prototype.inherits = function (parent) { 2124 var F = function F() {}; 2125 F.prototype = parent.prototype; 2126 var f = new F(); 2127 2128 for (var prop in this.prototype) { 2129 f[prop] = this.prototype[prop]; 2130 } 2131 this.prototype = f; 2132 this.prototype.super = parent.prototype; 2133 }; 2134 2135 // Core Class 2136 _Colibri = function Colibri(element, options) { 2137 options = (typeof options === 'undefined' ? 'undefined' : (0, _typeof3.default)(options)) === 'object' ? options : {}; 2138 2139 this.$element = $(element); 2140 var instanceId = this.$element.data('colibri-id'); 2141 2142 var instanceData = _Colibri.getData(instanceId); 2143 this.instance = instanceId; 2144 2145 var elementData = this.$element.data(); 2146 2147 this.opts = $.extend(true, {}, this.defaults, $.fn[lib_prefix + this.namespace].options, elementData, instanceData, options); 2148 this.$target = typeof this.opts.target === 'string' ? $(this.opts.target) : null; 2149 }; 2150 2151 _Colibri.getData = function (id) { 2152 if (window.colibriData && window.colibriData[id]) { 2153 return window.colibriData[id]; 2154 } 2155 2156 return {}; 2157 }; 2158 2159 _Colibri.isCustomizerPreview = function () { 2160 return !!window.colibriCustomizerPreviewData; 2161 }; 2162 // Core Functionality 2163 _Colibri.prototype = { 2164 updateOpts: function updateOpts(updatedData) { 2165 var instanceId = this.instance; 2166 var instanceData = $.extend(true, {}, this.defaults, _Colibri.getData(instanceId)); 2167 var updatedDataWithDefault = updatedData ? updatedData : {}; 2168 this.opts = $.extend(true, this.opts, instanceData, updatedDataWithDefault); 2169 }, 2170 getInstance: function getInstance() { 2171 return this.$element.data('fn.' + this.namespace); 2172 }, 2173 hasTarget: function hasTarget() { 2174 return !(this.$target === null); 2175 }, 2176 callback: function callback(type) { 2177 var args = [].slice.call(arguments).splice(1); 2178 2179 // on element callback 2180 if (this.$element) { 2181 args = this._fireCallback($._data(this.$element[0], 'events'), type, this.namespace, args); 2182 } 2183 2184 // on target callback 2185 if (this.$target) { 2186 args = this._fireCallback($._data(this.$target[0], 'events'), type, this.namespace, args); 2187 } 2188 2189 // opts callback 2190 if (this.opts && this.opts.callbacks && $.isFunction(this.opts.callbacks[type])) { 2191 return this.opts.callbacks[type].apply(this, args); 2192 } 2193 2194 return args; 2195 }, 2196 _fireCallback: function _fireCallback(events, type, eventNamespace, args) { 2197 if (events && typeof events[type] !== 'undefined') { 2198 var len = events[type].length; 2199 for (var i = 0; i < len; i++) { 2200 var namespace = events[type][i].namespace; 2201 if (namespace === eventNamespace) { 2202 var value = events[type][i].handler.apply(this, args); 2203 } 2204 } 2205 } 2206 2207 return typeof value === 'undefined' ? args : value; 2208 } 2209 }; 2210 })(); 2211 2212 (function (Colibri) { 2213 Colibri.Plugin = { 2214 create: function create(classname, pluginname) { 2215 pluginname = typeof pluginname === 'undefined' ? classname.toLowerCase() : pluginname; 2216 pluginname = lib_prefix + pluginname; 2217 2218 $.fn[pluginname] = function (method, options) { 2219 var args = Array.prototype.slice.call(arguments, 1); 2220 var name = 'fn.' + pluginname; 2221 var val = []; 2222 2223 this.each(function () { 2224 var $this = $(this), 2225 data = $this.data(name); 2226 options = (typeof method === 'undefined' ? 'undefined' : (0, _typeof3.default)(method)) === 'object' ? method : options; 2227 2228 if (!data) { 2229 // Initialization 2230 $this.data(name, {}); 2231 data = new Colibri[classname](this, options); 2232 $this.data(name, data); 2233 } 2234 2235 // Call methods 2236 if (typeof method === 'string') { 2237 if ($.isFunction(data[method])) { 2238 var methodVal = data[method].apply(data, args); 2239 if (methodVal !== undefined) { 2240 val.push(methodVal); 2241 } 2242 } else { 2243 $.error('No such method "' + method + '" for ' + classname); 2244 } 2245 } 2246 }); 2247 2248 return val.length === 0 || val.length === 1 ? val.length === 0 ? this
2248: val[0] : val; 2249 }; 2250 2251 $.fn[pluginname].options = {}; 2252 2253 return this; 2254 }, 2255 autoload: function autoload(pluginname) { 2256 var arr = pluginname.split(','); 2257 var len = arr.length; 2258 2259 for (var i = 0; i < len; i++) { 2260 var name = arr[i].toLowerCase().split(',').map(function (s) { 2261 return lib_prefix + s.trim(); 2262 }).join(','); 2263 this.autoloadQueue.push(name); 2264 } 2265 2266 return this; 2267 }, 2268 autoloadQueue: [], 2269 startAutoload: function startAutoload() { 2270 if (!window.MutationObserver || this.autoloadQueue.length === 0) { 2271 return; 2272 } 2273 2274 var self = this; 2275 var observer = new MutationObserver(function (mutations) { 2276 mutations.forEach(function (mutation) { 2277 var newNodes = mutation.addedNodes; 2278 if (newNodes.length === 0 || newNodes.length === 1 && newNodes.nodeType === 3) { 2279 return; 2280 } 2281 2282 self.startAutoloadOnce(); 2283 }); 2284 }); 2285 2286 // pass in the target node, as well as the observer options 2287 observer.observe(document, { 2288 subtree: true, 2289 childList: true 2290 }); 2291 }, 2292 2293 startAutoloadOnce: function startAutoloadOnce() { 2294 var self = this; 2295 var $nodes = $('[data-colibri-component]').not('[data-loaded]').not('[data-disabled]'); 2296 $nodes.each(function () { 2297 var $el = $(this); 2298 var pluginname = lib_prefix + $el.data('colibri-component'); 2299 2300 if (self.autoloadQueue.indexOf(pluginname) !== -1) { 2301 $el.attr('data-loaded', true); 2302 try { 2303 $el[pluginname](); 2304 } catch (e) { 2305 console.error(e); 2306 } 2307 } 2308 }); 2309 }, 2310 watch: function watch() { 2311 Colibri.Plugin.startAutoloadOnce(); 2312 Colibri.Plugin.startAutoload(); 2313 } 2314 }; 2315 2316 $(window).on('load', function () { 2317 Colibri.Plugin.watch(); 2318 }); 2319 })(_Colibri); 2320 2321 (function (Colibri) { 2322 Colibri.Animation = function (element, effect, callback) { 2323 this.namespace = 'animation'; 2324 this.defaults = {}; 2325 2326 // Parent Constructor 2327 Colibri.apply(this, arguments); 2328 2329 // Initialization 2330 this.effect = effect; 2331 this.completeCallback = typeof callback === 'undefined' ? false : callback; 2332 this.prefixes = ['', '-moz-', '-o-animation-', '-webkit-']; 2333 this.queue = []; 2334 2335 this.start(); 2336 }; 2337 2338 Colibri.Animation.prototype = { 2339 start: function start() { 2340 if (this.isSlideEffect()) { 2341 this.setElementHeight(); 2342 } 2343 2344 this.addToQueue(); 2345 this.clean(); 2346 this.animate(); 2347 }, 2348 addToQueue: function addToQueue() { 2349 this.queue.push(this.effect); 2350 }, 2351 setElementHeight: function setElementHeight() { 2352 this.$element.height(this.$element.outerHeight()); 2353 }, 2354 removeElementHeight: function removeElementHeight() { 2355 this.$element.css('height', ''); 2356 }, 2357 isSlideEffect: function isSlideEffect() { 2358 return this.effect === 'slideDown' || this.effect === 'slideUp'; 2359 }, 2360 isHideableEffect: function isHideableEffect() { 2361 var effects = ['fadeOut', 'slideUp', 'flipOut', 'zoomOut', 'slideOutUp', 'slideOutRight', 'slideOutLeft']; 2362 2363 return $.inArray(this.effect, effects) !== -1; 2364 }, 2365 isToggleEffect: function isToggleEffect() { 2366 return this.effect === 'show' || this.effect === 'hide'; 2367 }, 2368 storeHideClasses: function storeHideClasses() { 2369 if (this.$element.hasClass('hide-sm')) { 2370 this.$element.data('hide-sm-class', true); 2371 } else if (this.$element.hasClass('hide-md')) { 2372 this.$element.data('hide-md-class', true); 2373 } 2374 }, 2375 revertHideClasses: function revertHideClasses() { 2376 if (this.$element.data('hide-sm-class')) { 2377 this.$element.addClass('hide-sm').removeData('hide-sm-class'); 2378 } else if (this.$element.data('hide-md-class')) { 2379 this.$element.addClass('hide-md').removeData('hide-md-class'); 2380 } else { 2381 this.$element.addClass('hide'); 2382 } 2383 }, 2384 removeHideClass: function removeHideClass() { 2385 if (this.$element.data('hide-sm-class')) { 2386 this.$element.removeClass('hide-sm'); 2387 } else { 2388 if (this.$element.data('hide-md-class')) { 2389 this.$element.removeClass('hide-md'); 2390 } else { 2391 this.$element.removeClass('hide'); 2392 this.$element.removeClass('force-hide'); 2393 } 2394 } 2395 }, 2396 animate: function animate() { 2397 this.storeHideClasses(); 2398 if (this.isToggleEffect()) { 2399 return this.makeSimpleEffects(); 2400 } 2401 2402 this.$element.addClass('colibri-animated'); 2403 this.$element.addClass(this.queue[0]); 2404 this.removeHideClass(); 2405 2406 var _callback = this.queue.length > 1 ? null : this.completeCallback; 2407 this.complete('AnimationEnd', $.proxy(this.makeComplete, this), _callback); 2408 }, 2409 makeSimpleEffects: function makeSimpleEffects() { 2410 if (this.effect === 'show') { 2411 this.removeHideClass(); 2412 } else if (this.effect === 'hide') { 2413 this.revertHideClasses(); 2414 } 2415 2416 if (typeof this.completeCallback === 'function') { 2417 this.completeCallback(this); 2418 } 2419 }, 2420 makeComplete: function makeComplete() { 2421 if (this.$element.hasClass(this.queue[0])) { 2422 this.clean(); 2423 this.queue.shift(); 2424 2425 if (this.queue.length) { 2426 this.animate(); 2427 } 2428 } 2429 }, 2430 complete: function complete(type, make, callback) { 2431 var events = type.split(' ').map(function (type) { 2432 return type.toLowerCase() + ' webkit' + type + ' o' + type + ' MS' + type; 2433 }); 2434 2435 this.$element.one(events.join(' '), $.proxy(function () { 2436 if (typeof make === 'function') { 2437 make(); 2438 }
2439 if (this.isHideableEffect()) { 2440 this.revertHideClasses(); 2441 } 2442 if (this.isSlideEffect()) { 2443 this.removeElementHeight(); 2444 } 2445 if (typeof callback === 'function') { 2446 callback(this); 2447 } 2448 2449 this.$element.off(event); 2450 }, this)); 2451 }, 2452 clean: function clean() { 2453 this.$element.removeClass('colibri-animated').removeClass(this.queue[0]); 2454 } 2455 }; 2456 2457 // Inheritance 2458 Colibri.Animation.inherits(Colibri); 2459 })(_Colibri); 2460 2461 (function ($) { 2462 var animationName = lib_prefix + 'animation'; 2463 $.fn[animationName] = function (effect, callback) { 2464 var name = 'fn.animation'; 2465 2466 return this.each(function () { 2467 var $this = $(this), 2468 data = $this.data(name); 2469 2470 $this.data(name, {}); 2471 $this.data(name, data = new _Colibri.Animation(this, effect, callback)); 2472 }); 2473 }; 2474 2475 $.fn[animationName].options = {}; 2476 2477 _Colibri.animate = function ($target, effect, callback) { 2478 $target[animationName](effect, callback); 2479 return $target; 2480 }; 2481 })(jQuery); 2482 2483 (function (Colibri) { 2484 Colibri.Detect = function () {}; 2485 2486 Colibri.Detect.prototype = { 2487 isMobile: function isMobile() { 2488 return (/(iPhone|iPod|BlackBerry|Android)/.test(navigator.userAgent) 2489 ); 2490 }, 2491 isDesktop: function isDesktop() { 2492 return !/(iPhone|iPod|iPad|BlackBerry|Android)/.test(navigator.userAgent); 2493 }, 2494 isMobileScreen: function isMobileScreen() { 2495 return $(window).width() <= 768; 2496 }, 2497 isTabletScreen: function isTabletScreen() { 2498 return $(window).width() >= 768 && $(window).width() <= 1024; 2499 }, 2500 isDesktopScreen: function isDesktopScreen() { 2501 return $(window).width() > 1024; 2502 } 2503 }; 2504 })(_Colibri); 2505 2506 (function (Colibri) { 2507 Colibri.Utils = function () {}; 2508 2509 Colibri.Utils.prototype = { 2510 disableBodyScroll: function disableBodyScroll() { 2511 var $body = $('html'); 2512 var windowWidth = window.innerWidth; 2513 2514 if (!windowWidth) { 2515 var documentElementRect = document.documentElement.getBoundingClientRect(); 2516 windowWidth = documentElementRect.right - Math.abs(documentElementRect.left); 2517 } 2518 2519 var isOverflowing = document.body.clientWidth < windowWidth; 2520 var scrollbarWidth = this.measureScrollbar(); 2521 2522 $body.css('overflow', 'hidden'); 2523 if (isOverflowing) { 2524 $body.css('padding-right', scrollbarWidth); 2525 } 2526 }, 2527 measureScrollbar: function measureScrollbar() { 2528 var $body = $('body'); 2529 var scrollDiv = document.createElement('div'); 2530 scrollDiv.className = 'scrollbar-measure'; 2531 2532 $body.append(scrollDiv); 2533 var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth; 2534 $body[0].removeChild(scrollDiv); 2535 return scrollbarWidth; 2536 }, 2537 enableBodyScroll: function enableBodyScroll() { 2538 $('html').css({ 'overflow': '', 'padding-right': '' }); 2539 } 2540 }; 2541 })(_Colibri); 2542 2543 return _Colibri; 2544}); 2545 2546/***/ }), 2547/* 105 */ 2548/***/ (function(module, exports, __webpack_require__) { 2549 2550"use strict"; 2551 2552 2553Object.defineProperty(exports, "__esModule", { 2554 value: true 2555}); 2556 2557var _classCallCheck2 = __webpack_require__(43); 2558 2559var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); 2560 2561var _createClass2 = __webpack_require__(44); 2562 2563var _createClass3 = _interopRequireDefault(_createClass2); 2564 2565function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 2566 2567var BaseHandler = function () { 2568 function BaseHandler(element, settings) { 2569 (0, _classCallCheck3.default)(this, BaseHandler); 2570 2571 this.settings = settings; 2572 this.element = element; 2573 this.isPlaying = false; 2574 2575 this.ready(); 2576 } 2577 2578 (0, _createClass3.default)(BaseHandler, [{ 2579 key: 'ready', 2580 value: function ready() {} 2581 }, { 2582 key: 'play', 2583 value: function play() {} 2584 }, { 2585 key: 'pause', 2586 value: function pause() {} 2587 }, { 2588 key: 'isPaused', 2589 value: function isPaused() {} 2590 }, { 2591 key: 'setVideo', 2592 value: function setVideo(node) { 2593 node.className = 'colibri-video-background-item'; 2594 this.element.innerHTML = ''; 2595 this.element.appendChild(node); 2596 this.addResizeBind(); 2597 } 2598 }, { 2599 key: 'trigger', 2600 value: function trigger(name) { 2601 var evt; 2602 2603 if ('function' === typeof window.Event) { 2604 evt = new Event(name); 2605 } else { 2606 evt = document.createEvent('Event'); 2607 evt.initEvent(name, true, true); 2608 } 2609 2610 this.element.dispatchEvent(evt); 2611 } 2612 }, { 2613 key: 'loaded', 2614 value: function loaded() { 2615 this.trigger('video-bg-loaded'); 2616 } 2617 }, { 2618 key: 'addResizeBind', 2619 value: function addResizeBind() { 2620 var _this = this; 2621 2622 this.trigger('video-bg-resize'); 2623 this.onResize(function () { 2624 _this.trigger('video-bg-resize'); 2625 }); 2626 } 2627 }, { 2628 key: 'onLoad', 2629 value: function onLoad(callback) { 2630 jQuery(this.element).on('video-bg-loaded', callback); 2631 } 2632 }, { 2633 key: 'onResize', 2634 value: function onResize(callback) { 2635 var debounce = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 100; 2636 2637 callback = jQuery.debounce(callback, debounce); 2638 jQuery(window).resize(callback); 2639 jQuery(window).on('orientationchange', callback); 2640 } 2641 }], [{ 2642 key: 'test', 2643 value: function test() { 2644 return false;
2645 } 2646 }]); 2647 return BaseHandler; 2648}(); 2649 2650exports.default = BaseHandler; 2651 2652/***/ }), 2653/* 106 */ 2654/***/ (function(module, exports, __webpack_require__) { 2655 2656"use strict"; 2657 2658 2659Object.defineProperty(exports, "__esModule", { 2660 value: true 2661}); 2662var linksDefineSamePage = function linksDefineSamePage(link1, link2) { 2663 var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, 2664 _ref$compareQuery = _ref.compareQuery, 2665 compareQuery = _ref$compareQuery === undefined ? false : _ref$compareQuery, 2666 _ref$compareHash = _ref.compareHash, 2667 compareHash = _ref$compareHash === undefined ? false : _ref$compareHash; 2668 2669 if (!link1 || !link2) { 2670 return true; 2671 } 2672 var url1 = null; 2673 var url2 = null; 2674 try { 2675 url1 = new URL(link1); 2676 url2 = new URL(link2); 2677 } catch (e) { 2678 return false; 2679 } 2680 var result = url1.origin === url2.origin && url1.pathname === url2.pathname; 2681 2682 if (compareQuery) { 2683 result = result && url1.search === url2.search; 2684 } 2685 2686 if (compareHash) { 2687 result = result && url1.hash === url2.hash; 2688 } 2689 2690 return result; 2691}; 2692 2693exports.default = linksDefineSamePage; 2694 2695/***/ }), 2696/* 107 */ 2697/***/ (function(module, exports, __webpack_require__) { 2698 2699"use strict"; 2700 2701 2702(function ($, Colibri) { 2703 var className = 'offcanvas'; 2704 2705 var Component = function Component(element, options) { 2706 this.namespace = 'offcanvas'; 2707 this.defaults = { 2708 target: null, // selector 2709 push: true, // boolean 2710 width: '250px', // string 2711 direction: 'left', // string: left or right 2712 toggleEvent: 'click', 2713 clickOutside: true, // boolean 2714 animationOpen: 'slideInLeft', 2715 animationClose: 'slideOutLeft', 2716 callbacks: ['open', 'opened', 'close', 'closed'], 2717 offcanvasOverlayId: null, 2718 $overlayElement: null, 2719 targetId: null 2720 }; 2721 2722 // Parent Constructor 2723 Colibri.apply(this, arguments); 2724 2725 // Services 2726 this.utils = new Colibri.Utils(); 2727 this.detect = new Colibri.Detect(); 2728 2729 // Initialization 2730 this.start(); 2731 }; 2732 2733 // Functionality 2734 Component.prototype = { 2735 start: function start() { 2736 if (!this.hasTarget()) { 2737 return; 2738 } 2739 var overlayId = this.opts.offcanvasOverlayId; 2740 var $overlayElement = $('#' + overlayId + '.offscreen-overlay'); 2741 this.opts.$overlayElement = $overlayElement; 2742 2743 // this.stop(); 2744 2745 this.buildTargetWidth(); 2746 this.buildAnimationDirection(); 2747 2748 this.$close = this.getCloseLink(); 2749 this.$element.on(this.opts.toggleEvent + '.' + this.namespace, $.proxy(this.toggle, this)); 2750 this.$target.addClass('offcanvas'); 2751 this.$target.trigger('colibri.offcanvas.ready'); 2752 2753 this.moveOffcanvasToBody(); 2754 2755 this.addOffcanvasOverlayLogic(); 2756 }, 2757 stop: function stop() { 2758 this.closeAll(); 2759 this.removeOffcanvasElements(); 2760 this.$element.off('.' + this.namespace); 2761 if (this.$close) { 2762 this.$close.off('.' + this.namespace); 2763 } 2764 $(document).off('.' + this.namespace); 2765 }, 2766 removeOffcanvasElements: function removeOffcanvasElements() { 2767 // var targetId = this.opts.targetId; 2768 // var $targetElement = $('#' + targetId + '.h-offcanvas-panel'); 2769 2770 this.$target.remove(); 2771 this.opts.$overlayElement.remove(); 2772 2773 // if ($targetElement && $targetElement.length > 0) { 2774 // for (var i = 0; i < $targetElement.length; i++) { 2775 // var offcanvasPanel = $targetElement[i]; 2776 // var offcanvasPanelParent = offcanvasPanel.parentNode; 2777 // if (offcanvasPanelParent && offcanvasPanelParent.tagName === 'BODY') { 2778 // offcanvasPanelParent.removeChild(offcanvasPanel); 2779 // } 2780 // } 2781 // } 2782 // 2783 // var overlayElements = this.opts.$overlayElement; 2784 // if (overlayElements && overlayElements.length > 0) { 2785 // for (var j = 0; j < overlayElements.length; j++) { 2786 // var overlayElement = overlayElements[j]; 2787 // var overlayElementParent = overlayElement.parentNode; 2788 // if (overlayElementParent && overlayElementParent.tagName === 'BODY') { 2789 // overlayElementParent.removeChild(overlayElement); 2790 // } 2791 // } 2792 // } 2793 }, 2794 moveOffcanvasToBody: function moveOffcanvasToBody() { 2795 var offcanvasPanel = this.$target[0]; 2796 document.body.appendChild(offcanvasPanel); 2797 2798 var overlayElement = this.opts.$overlayElement[0]; 2799 document.body.appendChild(overlayElement); 2800 }, 2801 addOffcanvasOverlayLogic: function addOffcanvasOverlayLogic() { 2802 var $overlayElement = this.opts.$overlayElement; 2803 var $offCanvasWrapper = this.$target; 2804 2805 if ($offCanvasWrapper.length) { 2806 $overlayElement.on('scroll touchmove mousewheel', function (e) { 2807 e.preventDefault(); 2808 e.stopPropagation(); 2809 return false;
2810 }); 2811 2812 $offCanvasWrapper.on('colibri.offcanvas.open', function () { 2813 $overlayElement.addClass('h-offcanvas-opened'); 2814 }); 2815 2816 $offCanvasWrapper.on('colibri.offcanvas.close', function () { 2817 $overlayElement.removeClass('h-offcanvas-opened'); 2818 }); 2819 } 2820 }, 2821 toggle: function toggle(e) { 2822 if (this.isOpened()) { 2823 this.close(e); 2824 } else { 2825 this.open(e); 2826 } 2827 }, 2828 buildTargetWidth: function buildTargetWidth() { 2829 this.opts.width = $(window).width() < parseInt(this.opts.width) ? '100%' : this.opts.width; 2830 }, 2831 buildAnimationDirection: function buildAnimationDirection() { 2832 if (this.opts.direction === 'right') { 2833 this.opts.animationOpen = 'slideInRight'; 2834 this.opts.animationClose = 'slideOutRight'; 2835 } 2836 }, 2837 getCloseLink: function getCloseLink() { 2838 return this.$target.find('.close'); 2839 }, 2840 open: function open(e) { 2841 if (e) { 2842 e.preventDefault(); 2843 } 2844 2845 if (!this.isOpened()) { 2846 this.closeAll(); 2847 this.callback('open'); 2848 2849 this.$target.addClass('offcanvas-' + this.opts.direction); 2850 this.$target.css('width', Math.min(parseInt(this.opts.width), window.innerWidth - 100)); 2851 this.$target.css('right', '-' + Math.min(parseInt(this.opts.width), window.innerWidth - 100)); 2852 2853 this.pushBody(); 2854 2855 this.$target.trigger('colibri.offcanvas.open'); 2856 // this.$target.animation(this.opts.animationOpen, $.proxy(this.onOpened, this)); 2857 Colibri.animate(this.$target, this.opts.animationOpen, $.proxy(this.onOpened, this)); 2858 this.$element.trigger('colibri.offcanvas.open'); 2859 } 2860 }, 2861 closeAll: function closeAll() { 2862 var $elms = $(document).find('.offcanvas'); 2863 if ($elms.length !== 0) { 2864 $elms.each(function () { 2865 var $el = $(this); 2866 2867 if ($el.hasClass('open')) { 2868 $el.css('width', ''); 2869 //.animation('hide'); 2870 Colibri.animate($el, 'hide'); 2871 $el.removeClass('open offcanvas-left offcanvas-right'); 2872 } 2873 }); 2874 2875 $(document).off('.' + this.namespace); 2876 $('body').css('left', ''); 2877 } 2878 }, 2879 close: function close(e) { 2880 if (e) { 2881 var $el = $(e.target); 2882 var isTag = $el[0].tagName === 'A' || $el[0].tagName === 'BUTTON' || $el.parents('a').length; 2883 if (isTag && $el.closest('.offcanvas').length !== 0 && !$el.hasClass('close')) { 2884 return; 2885 } 2886 2887 e.preventDefault(); 2888 } 2889 2890 if (this.isOpened()) { 2891 // this.utils.enableBodyScroll(); 2892 this.callback('close'); 2893 this.pullBody(); 2894 this.$target.trigger('colibri.offcanvas.close'); 2895 // this.$target.animation(this.opts.animationClose, $.proxy(this.onClosed, this)); 2896 Colibri.animate(this.$target, this.opts.animationClose, $.proxy(this.onClosed, this)); 2897 } 2898 }, 2899 isOpened: function isOpened() { 2900 return this.$target.hasClass('open'); 2901 }, 2902 onOpened: function onOpened() { 2903 //a11y = focus first link in offcanvas 2904 var isInsideCustomizer = window.wp && window.wp.customize; 2905 if (!isInsideCustomizer) { 2906 this.$target.find('a').eq(0).focus(); 2907 } 2908 2909 if (this.opts.clickOutside) { 2910 $(document).on('click.' + this.namespace + ' tap.' + this.namespace, $.proxy(this.close, this)); 2911 } 2912 if (this.detect.isMobileScreen()) { 2913 $('html').addClass('no-scroll'); 2914 } 2915 2916 $(document).on('keyup.' + this.namespace, $.proxy(this.handleKeyboard, this)); 2917 2918 $(document).on('keydown.' + this.namespace, $.proxy(this.handleKeyDown, this)); 2919 this.$close.on('click.' + this.namespace, $.proxy(this.close, this)); 2920 2921 // this.utils.disableBodyScroll(); 2922 this.$target.addClass('open'); 2923 this.callback('opened'); 2924 }, 2925 onClosed: function onClosed() { 2926 if (this.detect.isMobileScreen()) { 2927 $('html').removeClass('no-scroll'); 2928 } 2929 2930 this.$target.css('width', '').removeClass('offcanvas-' + this.opts.direction); 2931 2932 this.$close.off('.' + this.namespace); 2933 $(document).off('.' + this.namespace); 2934 2935 this.$target.removeClass('open'); 2936 this.callback('closed'); 2937 2938 this.$target.trigger('colibri.offcanvas.closed'); 2939 }, 2940 handleKeyboard: function handleKeyboard(e) { 2941 if (e.which === 27) { 2942 if (document.activeElement) { 2943 if ($(document.activeElement).closest('.offcanvas').length) { 2944 this.$element.focus(); 2945 } 2946 } 2947 this.close(); 2948 } 2949 }, 2950 handleKeyDown: function handleKeyDown(e) { 2951 2952 if (e.which === 9) { 2953 var $links = this.$target.find('a:visible'); 2954 var isShift = e.shiftKey; 2955 2956 if ($links.last().is(e.target) && !isShift) { 2957 $links.first().focus(); 2958 e.preventDefault(); 2959 e.stopPropagation(); 2960 return; 2961 } 2962 2963 if ($links.first().is(e.target) && isShift) { 2964 $links.last().focus(); 2965 e.preventDefault(); 2966 e.stopPropagation(); 2967 return; 2968 } 2969 } 2970 }, 2971 pullBody: function pullBody() { 2972 if (this.opts.push) { 2973 $('body').animate({ left: 0 }, 350, function () { 2974 $(this).removeClass('offcanvas-push-body'); 2975 }); 2976 } 2977 }, 2978 pushBody: function pushBody() { 2979 if (this.opts.push) { 2980 var properties = this.opts.direction === 'left' ? { left
2980: this.opts.width } : { left: '-' + this.opts.width }; 2981 $('body').addClass('offcanvas-push-body').animate(properties, 200); 2982 } 2983 } 2984 }; 2985 2986 Component.inherits(Colibri); 2987 Colibri[className] = Component; 2988 2989 Colibri.Plugin.create(className); 2990 Colibri.Plugin.autoload(className); 2991})(jQuery, Colibri); 2992 2993/***/ }), 2994/* 108 */, 2995/* 109 */, 2996/* 110 */, 2997/* 111 */, 2998/* 112 */, 2999/* 113 */, 3000/* 114 */, 3001/* 115 */, 3002/* 116 */, 3003/* 117 */, 3004/* 118 */, 3005/* 119 */, 3006/* 120 */, 3007/* 121 */, 3008/* 122 */, 3009/* 123 */, 3010/* 124 */, 3011/* 125 */ 3012/***/ (function(module, exports, __webpack_require__) { 3013 3014__webpack_require__(126); 3015__webpack_require__(165); 3016__webpack_require__(166); 3017__webpack_require__(167); 3018module.exports = __webpack_require__(168); 3019 3020 3021/***/ }), 3022/* 126 */ 3023/***/ (function(module, exports, __webpack_require__) { 3024 3025"use strict"; 3026 3027 3028__webpack_require__(63); 3029 3030__webpack_require__(127); 3031 3032__webpack_require__(128); 3033 3034var _base = __webpack_require__(64); 3035 3036var _customizableSlideshow = __webpack_require__(133); 3037 3038var _customizableSlideshow2 = _interopRequireDefault(_customizableSlideshow); 3039 3040var _customizableVideoBackground = __webpack_require__(144); 3041 3042var _customizableVideoBackground2 = _interopRequireDefault(_customizableVideoBackground); 3043 3044var _domready = __webpack_require__(38); 3045 3046var _domready2 = _interopRequireDefault(_domready); 3047 3048function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3049 3050_base.ColibriFrontend.registerPlugin(_customizableSlideshow2.default); 3051_base.ColibriFrontend.registerPlugin(_customizableVideoBackground2.default); 3052 3053_base.ColibriFrontend.getData = function (id) { 3054 if (window.colibriFrontendData && window.colibriFrontendData[id]) { 3055 return window.colibriFrontendData[id]; 3056 } 3057 3058 return {}; 3059}; 3060 3061_base.ColibriFrontend.domReady = _domready2.default; 3062 3063window.Colibri = _base.ColibriFrontend; 3064 3065__webpack_require__(154); 3066__webpack_require__(155); 3067__webpack_require__(156); 3068__webpack_require__(107); 3069 3070// 3071// // sticky 3072// 3073__webpack_require__(157); 3074__webpack_require__(158); 3075__webpack_require__(159); 3076__webpack_require__(160); 3077__webpack_require__(161); 3078__webpack_require__(107); 3079 3080/***/ }), 3081/* 127 */ 3082/***/ (function(module, exports, __webpack_require__) { 3083 3084"use strict"; 3085 3086 3087var _lodash = __webpack_require__(103); 3088 3089var _lodash2 = _interopRequireDefault(_lodash); 3090 3091function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3092 3093(function ($) { 3094 if (!$.throttle) { 3095 $.throttle = function (fn, threshhold, scope) { 3096 threshhold || (threshhold = 250); 3097 var last, deferTimer; 3098 return function () { 3099 var context = scope || this; 3100 3101 var now = +new Date(), 3102 args = arguments; 3103 if (last && now < last + threshhold) { 3104 // hold on to it 3105 clearTimeout(deferTimer); 3106 deferTimer = setTimeout(function () { 3107 last = now; 3108 fn.apply(context, args); 3109 }, threshhold); 3110 } else { 3111 last = now; 3112 fn.apply(context, args); 3113 } 3114 }; 3115 }; 3116 } 3117 3118 if (!$.debounce) { 3119 $.debounce = _lodash2.default; 3120 } 3121 3122 if (!$.event.special.tap) { 3123 $.event.special.tap = { 3124 setup: function setup(data, namespaces) { 3125 var $elem = $(this); 3126 $elem.bind('touchstart', $.event.special.tap.handler).bind('touchmove', $.event.special.tap.handler).bind('touchend', $.event.special.tap.handler); 3127 }, 3128 teardown: function teardown(namespaces) { 3129 var $elem = $(this); 3130 $elem.unbind('touchstart', $.event.special.tap.handler).unbind('touchmove', $.event.special.tap.handler).unbind('touchend', $.event.special.tap.handler); 3131 }, 3132 handler: function handler(event) { 3133 var $elem = $(this), 3134 handleObj = event.handleObj, 3135 result; 3136 $elem.data(event.type, 1); 3137 if (event.type === 'touchend' && !$elem.data('touchmove')) { 3138 event.type = 'tap'; 3139 result = handleObj.handler.call(this, event); 3140 } else if ($elem.data('touchend')) { 3141 $elem.removeData('touchstart touchmove touchend'); 3142 } 3143 3144 return result; 3145 } 3146 }; 3147 } 3148 3149 //is not supported on ie 3150 if (!$.fn.respondToVisibility) { 3151 $.fn.respondToVisibility = function (callback) { 3152 3153 //check for ie 3154 if (!('IntersectionObserver' in window) || !('IntersectionObserverEntry' in window) || !('intersectionRatio' in window.IntersectionObserverEntry.prototype)) { 3155 return null; 3156 } 3157 3158 var observer = new IntersectionObserver(function (entries, observer) {
3159 entries.forEach(function (entry) { 3160 callback(entry.intersectionRatio > 0); 3161 }); 3162 }); 3163 observer.observe(this.get(0)); 3164 return observer; 3165 }; 3166 } 3167})(window.jQuery); 3168 3169/***/ }), 3170/* 128 */ 3171/***/ (function(module, exports, __webpack_require__) { 3172 3173"use strict"; 3174 3175 3176/** 3177 * Detect Element Resize 3178 * 3179 * https://github.com/sdecima/javascript-detect-element-resize 3180 * Sebastian Decima 3181 * 3182 * version: 0.5.3 3183 **/ 3184 3185var attachEvent = document.attachEvent, 3186 stylesCreated = false; 3187 3188function resetTriggers(element) { 3189 var triggers = element.__resizeTriggers__, 3190 expand = triggers.firstElementChild, 3191 contract = triggers.lastElementChild, 3192 expandChild = expand.firstElementChild; 3193 contract.scrollLeft = contract.scrollWidth; 3194 contract.scrollTop = contract.scrollHeight; 3195 expandChild.style.width = expand.offsetWidth + 1 + 'px'; 3196 expandChild.style.height = expand.offsetHeight + 1 + 'px'; 3197 expand.scrollLeft = expand.scrollWidth; 3198 expand.scrollTop = expand.scrollHeight; 3199} 3200 3201function checkTriggers(element) { 3202 return element.offsetWidth != element.__resizeLast__.width || element.offsetHeight != element.__resizeLast__.height; 3203} 3204 3205function scrollListener(e) { 3206 var element = this; 3207 resetTriggers(this); 3208 if (this.__resizeRAF__) { 3209 cancelFrame(this.__resizeRAF__); 3210 } 3211 this.__resizeRAF__ = requestFrame(function () { 3212 if (checkTriggers(element)) { 3213 element.__resizeLast__.width = element.offsetWidth; 3214 element.__resizeLast__.height = element.offsetHeight; 3215 element.__resizeListeners__.forEach(function (fn) { 3216 fn.call(element, e); 3217 }); 3218 } 3219 }); 3220} 3221 3222if (!attachEvent) { 3223 var requestFrame = function () { 3224 var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function (fn) { 3225 return window.setTimeout(fn, 20); 3226 }; 3227 return function (fn) { 3228 return raf(fn); 3229 }; 3230 }(); 3231 3232 var cancelFrame = function () { 3233 var cancel = window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.clearTimeout; 3234 return function (id) { 3235 return cancel(id); 3236 }; 3237 }(); 3238 3239 /* Detect CSS Animations support to detect element display/re-attach */ 3240 var animation = false, 3241 animationstring = 'animation', 3242 keyframeprefix = '', 3243 animationstartevent = 'animationstart', 3244 domPrefixes = 'Webkit Moz O ms'.split(' '), 3245 startEvents = 'webkitAnimationStart animationstart oAnimationStart MSAnimationStart'.split(' '), 3246 pfx = ''; 3247 { 3248 var elm = document.createElement('fakeelement'); 3249 if (elm.style.animationName !== undefined) { 3250 animation = true; 3251 } 3252 3253 if (animation === false) { 3254 for (var i = 0; i < domPrefixes.length; i++) { 3255 if (elm.style[domPrefixes[i] + 'AnimationName'] !== undefined) { 3256 pfx = domPrefixes[i]; 3257 animationstring = pfx + 'Animation'; 3258 keyframeprefix = '-' + pfx.toLowerCase() + '-'; 3259 animationstartevent = startEvents[i]; 3260 animation = true; 3261 break; 3262 } 3263 } 3264 } 3265 } 3266 3267 var animationName = 'resizeanim'; 3268 var animationKeyframes = '@' + keyframeprefix + 'keyframes ' + animationName + ' { from { opacity: 0; } to { opacity: 0; } } '; 3269 var animationStyle = keyframeprefix + 'animation: 1ms ' + animationName + '; '; 3270} 3271 3272function createStyles() { 3273 if (!stylesCreated) { 3274 //opacity:0 works around a chrome bug https://code.google.com/p/chromium/issues/detail?id=286360 3275 var css = (animationKeyframes ? animationKeyframes : '') + '.resize-triggers { ' + (animationStyle ? animationStyle : '') + 'visibility: hidden; opacity: 0; } ' + '.resize-triggers, .resize-triggers > div, .contract-trigger:before { content: " "; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }', 3276 head = document.head || document.getElementsByTagName('head')[0], 3277 style = document.createElement('style'); 3278 3279 style.type = 'text/css'; 3280 if (style.styleSheet) { 3281 style.styleSheet.cssText = css; 3282 } else { 3283 style.appendChild(document.createTextNode(css)); 3284 } 3285 3286 head.appendChild(style); 3287 stylesCreated = true; 3288 } 3289} 3290 3291window.addResizeListener = function (element, fn) { 3292 if (attachEvent) { 3293 element.attachEvent('onresize', fn); 3294 } else { 3295 if (!element.__resizeTriggers__) { 3296 if (getComputedStyle(element).position == 'static') { 3297 element.style.position = 'relative'; 3298 } 3299 createStyles(); 3300 element.__resizeLast__ = {}; 3301 element.__resizeListeners__ = []; 3302 (element.__resizeTriggers__ = document.createElement('div')).className = 'resize-triggers'; 3303 element.__resizeTriggers__.innerHTML = '<div class="expand-trigger"><div></div></div>' + '<div class="contract-trigger"></div>'; 3304 element.appendChild(element.__resizeTriggers__); 3305 resetTriggers(element); 3306 element.addEventListener('scroll', scrollListener, true); 3307 3308 /* Listen for a css animation to detect element display/re-attach */ 3309 animationstartevent && element.__resizeTriggers__.addEventListener(animationstartevent, function (e) { 3310 if (e.animationName == animationName) { 3311 resetTriggers(element); 3312 } 3313 }); 3314 } 3315 element.__resizeListeners__.push(fn); 3316 } 3317}; 3318 3319window.removeResizeListener = function (element, fn) { 3320 if (attachEvent) { 3321 element.detachEvent('onresize', fn); 3322 } else { 3323 if (!(element && element.__resizeListeners__ && element.__resizeTriggers__)) { 3324 return; 3325 } 3326 element.__resizeListeners__.splice(element.__resizeListeners__.indexOf(fn), 1); 3327 if (!element.__resizeListeners__.length) { 3328 element.removeEventListener('scroll', scrollListener); 3329 element.__resizeTriggers__ = !element.removeChild(element.__resizeTriggers__); 3330 } 3331 } 3332}; 3333 3334/***/ }), 3335/* 129 */ 3336/***/ (function(module, exports, __webpack_require__) { 3337 3338"use strict"; 3339 3340 3341Object.defineProperty(exports, "__esModule", { 3342 value: true 3343}); 3344 3345var _classCallCheck2 = __webpack_require__(43); 3346 3347var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); 3348 3349var _createClass2 = __webpack_require__(44); 3350 3351var _createClass3 = _interopRequireDefault(_createClass2); 3352 3353var _colibri = __webpack_require__(104); 3354 3355var _colibri2 = _interopRequireDefault(_colibri); 3356 3357function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3358 3359var ColibriFrontComponent = function () { 3360 (0, _createClass3.default)(ColibriFrontComponent, null, [{ 3361 key: 'componentName', 3362 value: function componentName() { 3363 throw new TypeError('name getter should be implemented'); 3364 } 3365 }]); 3366 3367 function ColibriFrontComponent(element, options) { 3368 (0, _classCallCheck3.default)(this, ColibriFrontComponent); 3369 3370 this.$ = jQuery; 3371 this.namespace = this.constructor.componentName(); 3372 this.utils = new _colibri2.default.Utils(); 3373 this.detect = new _colibri2.default.Detect(); 3374 this.init(); 3375 _colibri2.default.apply(this, arguments); 3376 this.start(); 3377
3378 if (this.isCustomizerPreview()) { 3379 this.wpCustomize(wp.customize); 3380 } 3381 return this; 3382 } 3383 3384 (0, _createClass3.default)(ColibriFrontComponent, [{ 3385 key: 'init', 3386 value: function init() {} 3387 }, { 3388 key: 'isCustomizerPreview', 3389 value: function isCustomizerPreview() { 3390 return _colibri2.default.isCustomizerPreview(); 3391 } 3392 }, { 3393 key: 'wpCustomize', 3394 value: function wpCustomize(api) {} 3395 }, { 3396 key: 'wpSettingBind', 3397 value: function wpSettingBind(setting_id, callback) { 3398 window.wp.customize(setting_id, function (setting) { 3399 setting.bind(callback); 3400 }); 3401 } 3402 }, { 3403 key: 'updateData', 3404 value: function updateData(data) { 3405 this.opts = jQuery.extend({}, this.opts, data); 3406 this.restart(); 3407 } 3408 }, { 3409 key: 'restart', 3410 value: function restart() {} 3411 }, { 3412 key: 'start', 3413 value: function start() {} 3414 }]); 3415 return ColibriFrontComponent; 3416}(); 3417 3418exports.default = ColibriFrontComponent; 3419 3420/***/ }), 3421/* 130 */ 3422/***/ (function(module, exports, __webpack_require__) { 3423 3424module.exports = { "default": __webpack_require__(131), __esModule: true }; 3425 3426/***/ }), 3427/* 131 */ 3428/***/ (function(module, exports, __webpack_require__) { 3429 3430__webpack_require__(132); 3431var $Object = __webpack_require__(3).Object; 3432module.exports = function defineProperty(it, key, desc) { 3433 return $Object.defineProperty(it, key, desc); 3434}; 3435 3436 3437/***/ }), 3438/* 132 */ 3439/***/ (function(module, exports, __webpack_require__) { 3440 3441var $export = __webpack_require__(16); 3442// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes) 3443$export($export.S + $export.F * !__webpack_require__(8), 'Object', { defineProperty: __webpack_require__(7).f }); 3444 3445 3446/***/ }), 3447/* 133 */ 3448/***/ (function(module, exports, __webpack_require__) { 3449 3450"use strict"; 3451 3452 3453Object.defineProperty(exports, "__esModule", { 3454 value: true 3455}); 3456 3457var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); 3458 3459var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } }; 3460 3461var _slideshow = __webpack_require__(134); 3462 3463var _slideshow2 = _interopRequireDefault(_slideshow); 3464 3465function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3466 3467function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } 3468 3469function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } 3470 3471function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } 3472 3473var CustomizableSlideshow = function (_Slideshow) { 3474 _inherits(CustomizableSlideshow, _Slideshow); 3475 3476 function CustomizableSlideshow() { 3477 _classCallCheck(this, CustomizableSlideshow); 3478 3479 return _possibleConstructorReturn(this, (CustomizableSlideshow.__proto__ || Object.getPrototypeOf(CustomizableSlideshow)).apply(this, arguments)); 3480 } 3481 3482 _createClass(CustomizableSlideshow, [{ 3483 key: "start", 3484 value: function start() { 3485 _get(CustomizableSlideshow.prototype.__proto__ || Object.getPrototypeOf(CustomizableSlideshow.prototype), "start", this).call(this); 3486 3487 if (!this.customizerBinded) { 3488 this.wpCustomize(wp.customize); 3489 this.customizerBinded = true; 3490 } 3491 } 3492 }, {
3493 key: "wpCustomize", 3494 value: function wpCustomize(api) { 3495 var _this2 = this; 3496 3497 var _loop = function _loop(opt) { 3498 3499 if (_this2.opts.wpSettings.hasOwnProperty(opt)) { 3500 var setting = _this2.opts.wpSettings[opt]; 3501 3502 _this2.wpSettingBind(setting, function (newValue) { 3503 _this2.opts[opt] = parseInt(newValue); 3504 _this2.stop(); 3505 setTimeout(function () { 3506 _this2.start(); 3507 }, 100); 3508 }); 3509 } 3510 }; 3511 3512 for (var opt in this.opts.wpSettings) { 3513 _loop(opt); 3514 } 3515 } 3516 }, { 3517 key: "wpSettingBind", 3518 value: function wpSettingBind(setting_id, callback) { 3519 window.wp.customize(setting_id, function (setting) { 3520 setting.bind(callback); 3521 }); 3522 } 3523 }]); 3524 3525 return CustomizableSlideshow; 3526}(_slideshow2.default); 3527 3528exports.default = CustomizableSlideshow; 3529 3530/***/ }), 3531/* 134 */ 3532/***/ (function(module, exports, __webpack_require__) { 3533 3534"use strict"; 3535 3536 3537Object.defineProperty(exports, "__esModule", { 3538 value: true 3539}); 3540 3541var _getPrototypeOf = __webpack_require__(54); 3542 3543var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); 3544 3545var _classCallCheck2 = __webpack_require__(43); 3546 3547var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); 3548 3549var _createClass2 = __webpack_require__(44); 3550 3551var _createClass3 = _interopRequireDefault(_createClass2); 3552 3553var _possibleConstructorReturn2 = __webpack_require__(59); 3554 3555var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); 3556 3557var _inherits2 = __webpack_require__(60); 3558 3559var _inherits3 = _interopRequireDefault(_inherits2); 3560 3561var _index = __webpack_require__(64); 3562 3563var _lodash = __webpack_require__(103); 3564 3565var _lodash2 = _interopRequireDefault(_lodash); 3566 3567function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3568 3569var Slideshow = function (_ColibriFrontComponen) { 3570 (0, _inherits3.default)(Slideshow, _ColibriFrontComponen); 3571 3572 function Slideshow() { 3573 (0, _classCallCheck3.default)(this, Slideshow); 3574 return (0, _possibleConstructorReturn3.default)(this, (Slideshow.__proto__ || (0, _getPrototypeOf2.default)(Slideshow)).apply(this, arguments)); 3575 } 3576 3577 (0, _createClass3.default)(Slideshow, [{ 3578 key: 'init', 3579 value: function init() { 3580 var _this2 = this; 3581 3582 this.currentIndex = 0; 3583 this.interval = -1; 3584 3585 this.debouncedRestart = (0, _lodash2.default)(function () { 3586 _this2.stop(); 3587 3588 _this2.start(); 3589 }, 500); 3590 } 3591 }, { 3592 key: 'addImageEffect', 3593 value: function addImageEffect(image, index) { 3594 var duration = this.opts.slideDuration; 3595 var speed = this.opts.slideSpeed; 3596 var delay = duration - speed; 3597 if (delay < 0) { 3598 delay = 0; 3599 } 3600 3601 this.$(image).css({ 3602 transition: 'opacity ' + speed + 'ms ease ' + delay + 'ms', 3603 zIndex: this.$images.length - index 3604 }); 3605 } 3606 }, { 3607 key: 'slideImage', 3608 value: function slideImage() { 3609 this.$images.eq(this.currentIndex).removeClass('current'); 3610 3611 var nextIndex = this.currentIndex + 1 === this.$images.length ? 0 : this.currentIndex + 1; 3612 3613 this.$images.eq(nextIndex).addClass('current').removeClass('next'); 3614 3615 this.currentIndex = nextIndex; 3616 var futureIndex = this.currentIndex + 1 === this.$images.length ? 0 : this.currentIndex + 1; 3617 3618 this.$images.eq(futureIndex).addClass('next'); 3619 } 3620 }, { 3621 key: 'restart', 3622 value: function restart() { 3623 this.debouncedRestart(); 3624 } 3625 }, { 3626 key: 'start', 3627 value: function start() { 3628 var _this3 = this; 3629 3630 this.$images = this.$element.find('.slideshow-image'); 3631 this.$images.removeClass('current'); 3632 this.$images.eq(0).addClass('current'); 3633 this.currentIndex = 0; 3634 3635 this.$images.each(function (index, image) { 3636 _this3.addImageEffect(image, index); 3637 }); 3638 3639 this.interval = setInterval(function () { 3640 _this3.slideImage(); 3641 }, parseInt(this.opts.slideDuration)); 3642 } 3643 }, { 3644 key: 'stop', 3645 value: function stop() { 3646 clearInterval(this.interval); 3647 this.$images.css({ 3648 transition: '', 3649 opacity: '' 3650 }); 3651 this.$images.removeClass('current next'); 3652 this.$images.eq(0).addClass('current'); 3653 this.currentIndex = 0; 3654 } 3655 }], [{ 3656 key: 'componentName', 3657 value: function componentName() { 3658 return 'slideshow'; 3659 } 3660 }]); 3661 return Slideshow; 3662}(_index.ColibriFrontComponent); 3663 3664exports.default = Slideshow; 3665 3666/***/ }), 3667/* 135 */ 3668/***/ (function(module, exports, __webpack_require__) { 3669 3670__webpack_require__(136); 3671module.exports = __webpack_require__(3).Object.getPrototypeOf; 3672 3673 3674/***/ }), 3675/* 136 */ 3676/***/ (function(module, exports, __webpack_require__) { 3677 3678// 19.1.2.9 Object.getPrototypeOf(O) 3679var toObject = __webpack_require__(41); 3680var $getPrototypeOf = __webpack_require__(58); 3681 3682__webpack_require__(90)('getPrototypeOf', function () { 3683 return function getPrototypeOf(it) { 3684 return $getPrototypeOf(toObject(it)); 3685 }; 3686}); 3687 3688 3689/***/ }), 3690/* 137 */ 3691/***/ (function(module, exports, __webpack_require__) { 3692 3693module.exports = { "default": __webpack_require__(138), __esModule: true }; 3694 3695/***/ }), 3696/* 138 */ 3697/***/ (function(module, exports, __webpack_require__) { 3698 3699__webpack_require__(139); 3700module.exports = __webpack_require__(3).Object.setPrototypeOf; 3701 3702 3703/***/ }), 3704/* 139 */ 3705/***/ (function(module, exports, __webpack_require__) { 3706 3707// 19.1.3.19 Object.setPrototypeOf(O, proto)
vendor: 4,096 bytes, lines 3708-3796
3708var $export = __webpack_require__(16); 3709$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(140).set }); 3710 3711 3712/***/ }), 3713/* 140 */ 3714/***/ (function(module, exports, __webpack_require__) { 3715 3716// Works with __proto__ only. Old v8 can't work with null proto objects. 3717/* eslint-disable no-proto */ 3718var isObject = __webpack_require__(13); 3719var anObject = __webpack_require__(17); 3720var check = function (O, proto) { 3721 anObject(O); 3722 if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!"); 3723}; 3724module.exports = { 3725 set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line 3726 function (test, buggy, set) { 3727 try { 3728 set = __webpack_require__(56)(Function.call, __webpack_require__(53).f(Object.prototype, '__proto__').set, 2); 3729 set(test, []); 3730 buggy = !(test instanceof Array); 3731 } catch (e) { buggy = true; } 3732 return function setPrototypeOf(O, proto) { 3733 check(O, proto); 3734 if (buggy) O.__proto__ = proto; 3735 else set(O, proto); 3736 return O; 3737 }; 3738 }({}, false) : undefined), 3739 check: check 3740}; 3741 3742 3743/***/ }), 3744/* 141 */ 3745/***/ (function(module, exports, __webpack_require__) { 3746 3747module.exports = { "default": __webpack_require__(142), __esModule: true }; 3748 3749/***/ }), 3750/* 142 */ 3751/***/ (function(module, exports, __webpack_require__) { 3752 3753__webpack_require__(143); 3754var $Object = __webpack_require__(3).Object; 3755module.exports = function create(P, D) { 3756 return $Object.create(P, D); 3757}; 3758 3759 3760/***/ }), 3761/* 143 */ 3762/***/ (function(module, exports, __webpack_require__) { 3763 3764var $export = __webpack_require__(16); 3765// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) 3766$export($export.S, 'Object', { create: __webpack_require__(40) }); 3767 3768 3769/***/ }), 3770/* 144 */ 3771/***/ (function(module, exports, __webpack_require__) { 3772 3773"use strict"; 3774 3775 3776Object.defineProperty(exports, "__esModule", { 3777 value: true 3778}); 3779 3780var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); 3781 3782var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } }; 3783 3784var _videoBg = __webpack_require__(145); 3785 3786var _videoBg2 = _interopRequireDefault(_videoBg); 3787 3788function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3789 3790function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } 3791 3792function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } 3793 3794function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } 3795 3796var CustomizableVideoBackground = function (_VideoBackground) {
3797 _inherits(CustomizableVideoBackground, _VideoBackground); 3798 3799 function CustomizableVideoBackground(element, options) { 3800 var _ret; 3801 3802 _classCallCheck(this, CustomizableVideoBackground); 3803 3804 var _this = _possibleConstructorReturn(this, (CustomizableVideoBackground.__proto__ || Object.getPrototypeOf(CustomizableVideoBackground)).call(this, element, options)); 3805 3806 return _ret = _this, _possibleConstructorReturn(_this, _ret); 3807 } 3808 3809 _createClass(CustomizableVideoBackground, [{ 3810 key: "wpCustomize", 3811 value: function wpCustomize(api) { 3812 var _this2 = this; 3813 3814 this.API_URL = colibri_ADDITIONAL_JS_DATA.api_url; 3815 3816 var _loop = function _loop(opt) { 3817 3818 if (_this2.opts.wpSettings.hasOwnProperty(opt)) { 3819 var setting = _this2.opts.wpSettings[opt]; 3820 3821 _this2.wpSettingBind(setting, function (newValue) { 3822 if (opt === "externalUrl") { 3823 _this2.restartYouTubeVideo(newValue); 3824 } 3825 3826 if (opt === "internalUrl") { 3827 _this2.restartSelfHostedVideo(newValue); 3828 } 3829 3830 if (opt === "videoType") { 3831 var videoType = "native"; 3832 if (newValue == "external") videoType = "youtube"; 3833 _this2.changeProvider(videoType); 3834 } 3835 3836 if (opt === "posterUrl") { 3837 _this2.$element.css({ 3838 backgroundImage: "url(" + newValue + ")" 3839 }); 3840 _this2.videoData.poster = newValue; 3841 } 3842 }); 3843 } 3844 }; 3845 3846 for (var opt in this.opts.wpSettings) { 3847 _loop(opt); 3848 } 3849 } 3850 }, { 3851 key: "changeProvider", 3852 value: function changeProvider(newValue) { 3853 if (newValue === "youtube") { 3854 this.restartYouTubeVideo(wp.customize(this.opts.wpSettings['externalUrl']).get()); 3855 } else { 3856 this.restartSelfHostedVideo(wp.customize(this.opts.wpSettings['internalUrl']).get()); 3857 } 3858 } 3859 }, { 3860 key: "restartYouTubeVideo", 3861 value: function restartYouTubeVideo(value) { 3862 this.videoData.videoUrl = value; 3863 this.videoData.mimeType = "video/x-youtube"; 3864 3865 _get(CustomizableVideoBackground.prototype.__proto__ || Object.getPrototypeOf(CustomizableVideoBackground.prototype), "generateVideo", this).call(this); 3866 } 3867 }, { 3868 key: "restartSelfHostedVideo", 3869 value: function restartSelfHostedVideo(value) { 3870 var _this3 = this; 3871 3872 if (!value) { 3873 this.videoData.videoUrl = ""; 3874 this.videoData.mimeType = "video/mp4"; 3875 _get(CustomizableVideoBackground.prototype.__proto__ || Object.getPrototypeOf(CustomizableVideoBackground.prototype), "generateVideo", this).call(this); 3876 } else { 3877 3878 this.$.getJSON(this.API_URL + "/attachment-data/" + value, function (data) { 3879 _this3.videoData.videoUrl = data.url; 3880 _this3.videoData.mimeType = data.mime_type; 3881 3882 _get(CustomizableVideoBackground.prototype.__proto__ || Object.getPrototypeOf(CustomizableVideoBackground.prototype), "generateVideo", _this3).call(_this3); 3883 }); 3884 } 3885 } 3886 }]); 3887 3888 return CustomizableVideoBackground; 3889}(_videoBg2.default); 3890 3891exports.default = CustomizableVideoBackground; 3892 3893/***/ }), 3894/* 145 */ 3895/***/ (function(module, exports, __webpack_require__) { 3896 3897"use strict"; 3898 3899 3900Object.defineProperty(exports, "__esModule", { 3901 value: true 3902}); 3903 3904var _getPrototypeOf = __webpack_require__(54); 3905 3906var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); 3907 3908var _classCallCheck2 = __webpack_require__(43); 3909 3910var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); 3911 3912var _createClass2 = __webpack_require__(44); 3913 3914var _createClass3 = _interopRequireDefault(_createClass2); 3915 3916var _possibleConstructorReturn2 = __webpack_require__(59); 3917 3918var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); 3919 3920var _inherits2 = __webpack_require__(60); 3921 3922var _inherits3 = _interopRequireDefault(_inherits2); 3923 3924var _index = __webpack_require__(64); 3925 3926var _handlers = __webpack_require__(146); 3927 3928var _handlers2 = _interopRequireDefault(_handlers); 3929 3930var _isMobile = __webpack_require__(153); 3931 3932function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 3933
3934var VideoBackground = function (_ColibriFrontComponen) { 3935 (0, _inherits3.default)(VideoBackground, _ColibriFrontComponen); 3936 3937 function VideoBackground() { 3938 (0, _classCallCheck3.default)(this, VideoBackground); 3939 return (0, _possibleConstructorReturn3.default)(this, (VideoBackground.__proto__ || (0, _getPrototypeOf2.default)(VideoBackground)).apply(this, arguments)); 3940 } 3941 3942 (0, _createClass3.default)(VideoBackground, [{ 3943 key: 'init', 3944 value: function init() { 3945 this.videoData = {}; 3946 this.handler = false; 3947 this.debouncedSetPosition = jQuery.debounce(this.updateVideoBackground.bind(this), 100); 3948 } 3949 }, { 3950 key: 'generateVideo', 3951 value: function generateVideo() { 3952 var _this2 = this; 3953 3954 for (var handle in _handlers2.default) { 3955 if (_handlers2.default.hasOwnProperty(handle) && _handlers2.default[handle].test(this.videoData)) { 3956 this.$element.empty(); 3957 this.handler = new _handlers2.default[handle](this.$element[0], this.videoData); 3958 break; 3959 } 3960 } 3961 3962 this.handler.onLoad(function () { 3963 _this2.$element.children('iframe,video').addClass('h-hide-sm-force'); 3964 _this2.debouncedSetPosition(); 3965 _this2.handler.onResize(function () { 3966 return _this2.debouncedSetPosition(); 3967 }); 3968 }); 3969 3970 if (window.hop) { 3971 window.addResizeListener(this.$element.closest('.background-wrapper').parent()[0], this.debouncedSetPosition); 3972 this.debouncedSetPosition(); 3973 } 3974 } 3975 }, { 3976 key: 'stopVideo', 3977 value: function stopVideo() { 3978 if (this.handler.stopVideo) { 3979 this.handler.stopVideo(); 3980 } 3981 } 3982 }, { 3983 key: 'play', 3984 value: function play() { 3985 if (this.handler.play) { 3986 this.handler.play(); 3987 } 3988 } 3989 }, { 3990 key: 'updateVideoBackground', 3991 value: function updateVideoBackground() { 3992 if (this.handler.updateVideoSize) { 3993 this.handler.updateVideoSize(); 3994 } 3995 this.setPosition(); 3996 } 3997 }, { 3998 key: 'setPosition', 3999 value: function setPosition() { 4000 var _this3 = this; 4001 4002 this.handler.pause(); 4003 if (this.$element.children('iframe,video').eq(0).css('display') === 'none') { 4004 return; 4005 } 4006 4007 var $video = this.$element.children('iframe,video').eq(0), 4008 posX = $video.is('iframe') ? 50 : this.opts.positionX, 4009 posY = $video.is('iframe') ? 50 : this.opts.positionY, 4010 x = Math.max($video.width() - this.$element.width(), 0) * parseFloat(posX) / 100, 4011 y = Math.max($video.height() - this.$element.height(), 0) * parseFloat(posY) / 100; 4012 4013 $video.css({ 4014 transform: 'translate(-' + x + 'px,-' + y + 'px)',
4015 '-webkit-transform': 'translate(-' + x + 'px,-' + y + 'px)' 4016 }); 4017 4018 this.$element.addClass('visible'); 4019 4020 setTimeout(function () { 4021 _this3.handler.play(); 4022 }, 100); 4023 } 4024 }, { 4025 key: 'start', 4026 value: function start() { 4027 this.videoData = { 4028 mimeType: this.opts.mimeType, 4029 poster: this.opts.poster, 4030 videoUrl: this.opts.video 4031 }; 4032 4033 if (!(0, _isMobile.isMobile)()) { 4034 this.generateVideo(); 4035 } 4036 } 4037 }, { 4038 key: 'stop', 4039 value: function stop() { 4040 window.removeResizeListener(this.$element.closest('.background-wrapper').parent()[0], this.debouncedSetPosition); 4041 } 4042 }, { 4043 key: 'restart', 4044 value: function restart() { 4045 this.stop(); 4046 this.start(); 4047 } 4048 }], [{ 4049 key: 'componentName', 4050 value: function componentName() { 4051 return 'video-background'; 4052 } 4053 }]); 4054 return VideoBackground; 4055}(_index.ColibriFrontComponent); 4056 4057exports.default = VideoBackground; 4058 4059/***/ }), 4060/* 146 */ 4061/***/ (function(module, exports, __webpack_require__) { 4062 4063"use strict"; 4064 4065 4066Object.defineProperty(exports, "__esModule", { 4067 value: true 4068}); 4069 4070var _nativeHandler = __webpack_require__(147); 4071 4072var _nativeHandler2 = _interopRequireDefault(_nativeHandler); 4073 4074var _youtubeHandler = __webpack_require__(148); 4075 4076var _youtubeHandler2 = _interopRequireDefault(_youtubeHandler); 4077 4078function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 4079 4080var Handlers = { 4081 native: _nativeHandler2.default, 4082 youtube: _youtubeHandler2.default 4083}; 4084 4085exports.default = Handlers; 4086 4087/***/ }), 4088/* 147 */ 4089/***/ (function(module, exports, __webpack_require__) { 4090 4091"use strict"; 4092 4093 4094Object.defineProperty(exports, "__esModule", { 4095 value: true 4096}); 4097 4098var _getPrototypeOf = __webpack_require__(54); 4099 4100var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); 4101 4102var _classCallCheck2 = __webpack_require__(43); 4103 4104var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); 4105 4106var _createClass2 = __webpack_require__(44); 4107 4108var _createClass3 = _interopRequireDefault(_createClass2); 4109 4110var _possibleConstructorReturn2 = __webpack_require__(59); 4111 4112var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); 4113 4114var _inherits2 = __webpack_require__(60); 4115 4116var _inherits3 = _interopRequireDefault(_inherits2); 4117 4118var _baseHandler = __webpack_require__(105); 4119 4120var _baseHandler2 = _interopRequireDefault(_baseHandler); 4121 4122function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 4123 4124var NativeHandler = function (_BaseHandler) { 4125 (0, _inherits3.default)(NativeHandler, _BaseHandler); 4126 4127 function NativeHandler() { 4128 (0, _classCallCheck3.default)(this, NativeHandler); 4129 return (0, _possibleConstructorReturn3.default)(this, (NativeHandler.__proto__ || (0, _getPrototypeOf2.default)(NativeHandler)).apply(this, arguments)); 4130 } 4131 4132 (0, _createClass3.default)(NativeHandler, [{ 4133 key: 'isPaused', 4134 value: function isPaused() { 4135 return this.video.paused; 4136 } 4137 }, { 4138 key: 'ready', 4139 value: function ready() { 4140 var _this2 = this; 4141 4142 if (this.settings.poster) { 4143 this.element.style.backgroundImage = 'url("' + this.settings.poster + '")'; 4144 } 4145 4146 if (!this.settings.videoUrl) { 4147 return; 4148 } 4149 4150 var video = document.createElement('video'); 4151 4152 video.id = this.settings.id || ''; 4153 4154 // video.autoplay = 'autoplay'; 4155 video.loop = 'loop'; 4156 video.muted = 'muted'; 4157 4158 if (this.settings.width) { 4159 video.width = this.settings.width; 4160 } 4161 4162 if (this.settings.height) { 4163 video.height = this.settings.height; 4164 } 4165 4166 video.addEventListener('play', function () { 4167 _this2.trigger('play'); 4168 }); 4169 4170 video.addEventListener('pause', function () { 4171 _this2.trigger('pause'); 4172 }); 4173 4174 video.addEventListener('loadeddata', function () { 4175 _this2.loaded(); 4176 }); 4177 4178 this.video = video; 4179 this.setVideo(video); 4180 video.src = this.settings.videoUrl; 4181 } 4182 }, { 4183 key: 'pause', 4184 value: function pause() { 4185 this.video.pause(); 4186 } 4187 }, { 4188 key: 'stopVideo', 4189 value: function stopVideo() { 4190 this.video.pause(); 4191 this.video.currentTime = 0; 4192 } 4193 }, { 4194 key: 'play', 4195 value: function play() { 4196 this.video.play(); 4197 } 4198 }], [{ 4199 key: 'test', 4200 value: function test(settings) { 4201 var video = document.createElement('video'); 4202 return video.canPlayType(settings.mimeType); 4203 } 4204 }]); 4205 return NativeHandler; 4206}(_baseHandler2.default); 4207 4208exports.default = NativeHandler; 4209 4210/***/ }), 4211/* 148 */ 4212/***/ (function(module, exports, __webpack_require__) { 4213 4214"use strict"; 4215 4216 4217Object.defineProperty(exports, "__esModule", { 4218 value: true 4219}); 4220 4221var _getPrototypeOf = __webpack_require__(54); 4222 4223var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); 4224 4225var _classCallCheck2 = __webpack_require__(43); 4226 4227var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); 4228 4229var _createClass2 = __webpack_require__(44); 4230 4231var _createClass3 = _interopRequireDefault(_createClass2); 4232 4233var _possibleConstructorReturn2 = __webpack_require__(59); 4234 4235var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); 4236 4237var _get2 = __webpack_require__(149); 4238 4239var _get3 = _interopRequireDefault(_get2); 4240 4241var _inherits2 = __webpack_require__(60); 4242 4243var _inherits3 = _interopRequireDefault(_inherits2); 4244 4245var _baseHandler = __webpack_require__(105); 4246 4247var _baseHandler2 = _interopRequireDefault(_baseHandler); 4248 4249function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 4250 4251var VIDEO_ID_REGEX = /^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/)|(?:(?:watch)?\?v(?:i)?=|&v(?:i)?=))([^#&?]*).*/; /** @global YT */ 4252 4253var YouTubeHandler = function (_BaseHandler) { 4254 (0, _inherits3.default)(YouTubeHandler, _BaseHandler); 4255 4256 function YouTubeHandler(element, settings) { 4257 var _ret; 4258 4259 (0, _classCallCheck3.default)(this, YouTubeHandler); 4260 4261 var _this = (0, _possibleConstructorReturn3.default)(this, (YouTubeHandler.__proto__ || (0, _getPrototypeOf2.default)(YouTubeHandler)).call(this, element, settings)); 4262 4263 return _ret = _this, (0, _possibleConstructorReturn3.default)(_this, _ret); 4264 } 4265 4266 (0, _createClass3.default)(YouTubeHandler, [{ 4267 key: 'ready', 4268 value: function ready() { 4269 var _this2 = this; 4270 4271 if (this.settings.poster) { 4272 this.element.style.backgroundImage = 'url("' + this.settings.poster + '")'; 4273 } 4274 4275 if ('YT' in window) { 4276 window.YT.ready(function () { 4277 _this2.loadVideo(); 4278 }); 4279 } else { 4280 var tag = document.createElement('script'); 4281 tag.src = 'https://www.youtube.com/iframe_api'; 4282 tag.onload = function () { 4283 window.YT.ready(function () { 4284 _this2.loadVideo(); 4285 }); 4286 }; 4287 4288 document.getElementsByTagName('head')[0].appendChild(tag); 4289 } 4290 } 4291 }, { 4292 key: 'getVideoID', 4293 value: function getVideoID() { 4294 var matches = this.settings.videoUrl.match(VIDEO_ID_REGEX); 4295 4296 if (matches && matches.length >= 2) { 4297 return matches[1]; 4298 } 4299 4300 return null; 4301 } 4302 }, { 4303 key: 'getYTOptions', 4304 value: function getYTOptions() { 4305 var _this3 = this; 4306 4307 var options = { 4308 videoId: this.getVideoID(), 4309 events: { 4310 onReady: function onReady(e) { 4311 var ytVideo = e.target; 4312 4313 //added mute param, not sure if this mute function call is needed anymore. 4314 ytVideo.mute(); 4315 top.yt1 = ytVideo; 4316 ytVideo.setPlaybackQuality('auto'); 4317 _this3.play(); 4318 _this3.loaded(); 4319 }, 4320 onStateChange: function onStateChange(e) { 4321 if (window.YT.PlayerState.PLAYING === e.data) { 4322 _this3.trigger('play'); 4323 } else if (window.YT.PlayerState.PAUSED === e.data) { 4324 _this3.trigger('pause'); 4325 } else if (window.YT.PlayerState.ENDED === e.data) { 4326 e.target.playVideo(); 4327 } 4328 }, 4329 onError: function onError(e) { 4330 _this3.player.getIframe().style.display = 'none'; 4331 } 4332 }, 4333 playerVars: { 4334 autoplay: 1, 4335 controls: 0, 4336 disablekb: 1, 4337 fs: 0, 4338 iv_load_policy: 3, 4339 loop: 1, 4340 modestbranding: 1, 4341 playsinline: 1, 4342 rel: 0, 4343 showinfo: 0, 4344 4345 /** 4346 * Sometimes the mute function used in the onRead event did not work, but using this options the videos are 4347 * always muted 4348 */ 4349 mute: 1 4350 } 4351 }; 4352 4353 if (this.settings.height) { 4354 options['height'] = this.settings.height; 4355 } else { 4356 options['height'] = 1080; 4357 } 4358 4359 if (this.settings.width) { 4360 options['width'] = this.settings.width; 4361 } else { 4362 options['width'] = 1920; 4363 } 4364 // height: this.settings.height, 4365 // width: this.settings.width, 4366 4367 return options; 4368 } 4369 }, { 4370 key: 'loadVideo', 4371 value: function loadVideo() { 4372 var video = document.createElement('div'), 4373 YT = window.YT; 4374 4375 this.setVideo(video); 4376 this.player = new window.YT.Player(video, this.getYTOptions()); 4377 } 4378 }, { 4379 key: 'updateVideoSize', 4380 value: function updateVideoSize() { 4381 if (!this.player) { 4382 return; 4383 } 4384 var $iframe = jQuery(this.player.getIframe()), 4385 size = this.calcVideosSize(); 4386 $iframe.css(size); 4387 $iframe.addClass('ready'); 4388 } 4389 }, { 4390 key: 'calcVideosSize', 4391 value: function calcVideosSize() { 4392 var width = jQuery(this.element).outerWidth(), 4393 height = jQuery(this.element).outerHeight(), 4394 aspectRatio = '16:9'.split(':'), 4395 proportion = aspectRatio[0] / aspectRatio[1], 4396 keepWidth = width / height > proportion, 4397 magnifier = 1; 4398 4399 return { 4400 width: magnifier * (keepWidth ? width : height * proportion), 4401 height: magnifier * (keepWidth ? width / proportion : height) 4402 }; 4403 } 4404 }, { 4405 key: 'play', 4406 value: function play() { 4407 if (!!this.player && !!this.player.playVideo) { 4408 if (!this.isPlaying) { 4409 this.isPlaying = true; 4410 this.player.playVideo(); 4411 } 4412 } 4413 } 4414 }, { 4415 key: 'stopVideo', 4416 value: function stopVideo() { 4417 if (!!this.player && !!this.player.stopVideo) { 4418 if (this.isPlaying) { 4419 this.isPlaying = false;
4420 this.player.stopVideo(); 4421 } 4422 } 4423 } 4424 }, { 4425 key: 'pause', 4426 value: function pause() { 4427 if (!!this.player && !!this.player.pauseVideo && !this.isPlaying) { 4428 this.isPlaying = false; 4429 this.player.pauseVideo(); 4430 } 4431 } 4432 }, { 4433 key: 'isPaused', 4434 value: function isPaused() { 4435 return YT.PlayerState.PAUSED === this.player.getPlayerState(); 4436 } 4437 }, { 4438 key: 'loaded', 4439 value: function loaded() { 4440 this.updateVideoSize(); 4441 (0, _get3.default)(YouTubeHandler.prototype.__proto__ || (0, _getPrototypeOf2.default)(YouTubeHandler.prototype), 'loaded', this).call(this); 4442 } 4443 }, { 4444 key: 'addResizeBind', 4445 value: function addResizeBind() { 4446 var _this4 = this; 4447 4448 this.onResize(function () { 4449 return _this4.updateVideoSize(); 4450 }, 50); 4451 (0, _get3.default)(YouTubeHandler.prototype.__proto__ || (0, _getPrototypeOf2.default)(YouTubeHandler.prototype), 'addResizeBind', this).call(this); 4452 } 4453 }], [{ 4454 key: 'test', 4455 value: function test(settings) { 4456 return 'video/x-youtube' === settings.mimeType; 4457 } 4458 }]); 4459 return YouTubeHandler; 4460}(_baseHandler2.default); 4461 4462exports.default = YouTubeHandler; 4463 4464/***/ }), 4465/* 149 */ 4466/***/ (function(module, exports, __webpack_require__) { 4467 4468"use strict"; 4469 4470 4471exports.__esModule = true; 4472 4473var _getPrototypeOf = __webpack_require__(54); 4474 4475var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); 4476 4477var _getOwnPropertyDescriptor = __webpack_require__(150); 4478 4479var _getOwnPropertyDescriptor2 = _interopRequireDefault(_getOwnPropertyDescriptor); 4480 4481function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 4482 4483exports.default = function get(object, property, receiver) { 4484 if (object === null) object = Function.prototype; 4485 var desc = (0, _getOwnPropertyDescriptor2.default)(object, property); 4486 4487 if (desc === undefined) { 4488 var parent = (0, _getPrototypeOf2.default)(object); 4489 4490 if (parent === null) { 4491 return undefined; 4492 } else { 4493 return get(parent, property, receiver); 4494 } 4495 } else if ("value" in desc) { 4496 return desc.value; 4497 } else { 4498 var getter = desc.get; 4499 4500 if (getter === undefined) { 4501 return undefined; 4502 } 4503 4504 return getter.call(receiver); 4505 } 4506}; 4507 4508/***/ }), 4509/* 150 */ 4510/***/ (function(module, exports, __webpack_require__) { 4511 4512module.exports = { "default": __webpack_require__(151), __esModule: true }; 4513 4514/***/ }), 4515/* 151 */ 4516/***/ (function(module, exports, __webpack_require__) { 4517 4518__webpack_require__(152); 4519var $Object = __webpack_require__(3).Object; 4520module.exports = function getOwnPropertyDescriptor(it, key) { 4521 return $Object.getOwnPropertyDescriptor(it, key); 4522}; 4523 4524 4525/***/ }), 4526/* 152 */ 4527/***/ (function(module, exports, __webpack_require__) { 4528 4529// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) 4530var toIObject = __webpack_require__(9); 4531var $getOwnPropertyDescriptor = __webpack_require__(53).f; 4532 4533__webpack_require__(90)('getOwnPropertyDescriptor', function () { 4534 return function getOwnPropertyDescriptor(it, key) { 4535 return $getOwnPropertyDescriptor(toIObject(it), key); 4536 }; 4537}); 4538 4539 4540/***/ }), 4541/* 153 */ 4542/***/ (function(module, exports, __webpack_require__) { 4543 4544"use strict"; 4545 4546 4547module.exports = isMobile; 4548module.exports.isMobile = isMobile; 4549 4550var mobileRE = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i; 4551 4552var tabletRE = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino|android|ipad|playbook|silk/i; 4553 4554function isMobile(opts) { 4555 if (!opts) { 4556 opts = {}; 4557 } 4558 var ua = opts.ua; 4559 if (!ua && typeof navigator !== 'undefined') { 4560 ua = navigator.userAgent; 4561 } 4562 if (ua && ua.headers && typeof ua.headers['user-agent'] === 'string') { 4563 ua = ua.headers['user-agent']; 4564 } 4565 if (typeof ua !== 'string') { 4566 return false;
4567 } 4568 4569 return opts.tablet ? tabletRE.test(ua) : mobileRE.test(ua); 4570} 4571 4572/***/ }), 4573/* 154 */ 4574/***/ (function(module, exports, __webpack_require__) { 4575 4576"use strict"; 4577 4578 4579var _linksDefineSamePage = __webpack_require__(106); 4580 4581var _linksDefineSamePage2 = _interopRequireDefault(_linksDefineSamePage); 4582 4583function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 4584 4585(function ($) { 4586 function inCustomizer() { 4587 return Colibri.isCustomizerPreview(); 4588 } 4589 4590 if (window.location.hash === '#page-top') { 4591 changeUrlHash('', 5); 4592 } 4593 4594 var __toCheckOnScroll = { 4595 items: {}, 4596 eachCategory: function eachCategory(callback) { 4597 for (var id in this.items) { 4598 if (!this.items.hasOwnProperty(id)) { 4599 continue; 4600 } 4601 4602 callback(this.items[id]); 4603 } 4604 }, 4605 addItem: function addItem(id, item) { 4606 if (!this.items[id]) { 4607 this.items[id] = []; 4608 } 4609 4610 this.items[id].push(item); 4611 }, 4612 all: function all() { 4613 var result = []; 4614 4615 for (var id in this.items) { 4616 if (!this.items.hasOwnProperty(id)) { 4617 continue; 4618 } 4619 4620 result = result.concat(this.items[id]); 4621 } 4622 4623 return result; 4624 } 4625 }; 4626 var __alreadyScrolling = false; 4627 4628 function getScrollToValue(elData) { 4629 var offset = !isNaN(parseFloat(elData.options.offset)) ? elData.options.offset : elData.options.offset.call(elData.target); 4630 var scrollToValue = elData.target.offset().top - offset - $('body').offset().top; 4631 4632 return scrollToValue; 4633 } 4634 4635 function changeUrlHash(hash, timeout) { 4636 if (hash === location.hash.replace('#', '') || hash === 'page-top' && '' === location.hash.replace('#', '')) { 4637 return; 4638 } 4639 4640 setTimeout(function () { 4641 if (hash) { 4642 if (hash === 'page-top') { 4643 hash = ' '; 4644 } else { 4645 hash = '#' + hash; 4646 } 4647 } else { 4648 hash = ' '; 4649 } 4650 if (history && history.replaceState) { 4651 history.replaceState({}, '', hash); 4652 } 4653 }, timeout || 100); 4654 /* safari issue fixed by throtteling the event */ 4655 } 4656 4657 function scrollItem(elData) { 4658 if (__alreadyScrolling) { 4659 return; 4660 } 4661 4662 __alreadyScrolling = true; 4663 var scrollToValue = getScrollToValue(elData); 4664 4665 $('html, body').animate({ scrollTop: scrollToValue }, { 4666 easing: 'linear', 4667 complete: function complete() { 4668 // check for any updates 4669 var scrollToValue = getScrollToValue(elData); 4670 $('html, body').animate({ scrollTop: scrollToValue }, { 4671 easing: 'linear', 4672 duration: 100, 4673 complete: function complete() { 4674 __alreadyScrolling = false; 4675 changeUrlHash(elData.id, 5); 4676 } 4677 }); 4678 } 4679 }); 4680 } 4681 4682 function getPageBaseUrl() { 4683 return [location.protocol, '//', location.host, location.pathname].join(''); 4684 } 4685 4686 function fallbackUrlParse(url) { 4687 return url.split('?')[0].split('#')[0]; 4688 } 4689 4690 function getABaseUrl(element) { 4691 var href = jQuery(element)[0].href || ''; 4692 var url = '#'; 4693 4694 try { 4695 var _url = new window.URL(href); 4696 url = [_url.protocol, '//', _url.host, _url.pathname].join(''); 4697 } catch (e) { 4698 url = fallbackUrlParse(href); 4699 } 4700 4701 return url; 4702 } 4703 4704 function getTargetForEl(element) { 4705 var targetId = (element.attr('href') || '').split('#').pop(), 4706 hrefBase = getABaseUrl(element), 4707 target = null, 4708 pageURL = getPageBaseUrl(); 4709 4710 if (hrefBase.length && hrefBase !== pageURL) { 4711 return target; 4712 } 4713 4714 if (targetId.trim().length) { 4715 try { 4716 target = $('[id="' + targetId + '"]'); 4717 } catch (e) { 4718 console.log('error scrollSpy', e); 4719 } 4720 } 4721 4722 if (target && target.length) { 4723 return target; 4724 } 4725 4726 return null; 4727 } 4728 4729 $.fn.smoothScrollAnchor = function (options) { 4730 if (inCustomizer()) { 4731 return; 4732 } 4733 4734 var elements = $(this); 4735 4736 options = jQuery.extend({ 4737 offset: function offset() { 4738 var $fixed = $('.h-navigation_sticky'); 4739 if ($fixed.length) { 4740 return $fixed[0].getBoundingClientRect().height; 4741 } 4742 4743 return 0; 4744 } 4745 }, options); 4746 4747 elements.each(function () { 4748 var element = $(this); 4749 4750 //if the target options is not set or the href is not for the same page don't add smoothscroll 4751 if (!options.target && !(0, _linksDefineSamePage2.default)(document.location.href, this.href)) { 4752 return; 4753 } 4754 4755 var target = options.target || getTargetForEl(element); 4756 if (target && target.length && !target.attr('skip-smooth-scroll')) { 4757 var targetId = target.attr('id'); 4758 var targetSel = null; 4759 if (targetId) { 4760 targetSel = '[id="' + targetId.trim() + '"]'; 4761 } 4762 var elData = { 4763 element: element, 4764 options: options, 4765 target: target, 4766 targetSel: options.targetSel || targetSel, 4767 id: (target.attr('id') || '').trim() 4768 }; 4769 4770 element.off('click.smooth-scroll tap.smooth-scroll').on('click.smooth-scroll tap.smooth-scroll', function (event) { 4771 if ($(this).data('skip-smooth-scroll') || $(event.target).data('skip-smooth-scroll')) { 4772 return; 4773 } 4774 4775 event.preventDefault(); 4776 4777 if (!$(this).data('allow-propagation')) { 4778 event.stopPropagation(); 4779 } 4780 4781 scrollItem(elData); 4782 4783 if (elData.options.clickCallback) { 4784 elData.options.clickCallback.call(this, event); 4785 } 4786 }); 4787 } 4788 }); 4789 }; 4790 4791 $.fn.scrollSpy = function (options) { 4792 if (inCustomizer()) { 4793 return; 4794 } 4795 4796 var elements = $(this); 4797 var id = 'spy-' + parseInt(Date.now() * Math.random()); 4798 4799 elements.each(function () { 4800 var element = $(this); 4801 var settings = jQuery.extend({ 4802 onChange: function onChange() {}, 4803 onLeave: function onLeave() {}, 4804 clickCallback: function clickCallback() {}, 4805 4806 smoothScrollAnchor: false, 4807 offset: 0 4808 }, options); 4809 4810 if (element.is('a') && (element.attr('href') || '').indexOf('#') !== -1) { 4811 var target = getTargetForEl(element); 4812 4813 if (target && !target.attr('skip-scroll-spy')) { 4814 var elData = { 4815 element: element, 4816 options: settings, 4817 target: target, 4818 targetSel: '[id="' + target.attr('id').trim() + '"]', 4819 id: target.attr('id').trim() 4820 }; 4821 __toCheckOnScroll.addItem(id, elData); 4822 element.data('scrollSpy', elData); 4823 4824 if (options.smoothScrollAnchor) { 4825 element.smoothScrollAnchor(options); 4826 } 4827 } 4828 } 4829 }); 4830 }; 4831
4832 function update() { 4833 __toCheckOnScroll.eachCategory(function (items) { 4834 var ordered = items.sort(function (itemA, itemB) { 4835 return itemA.target.offset().top - itemB.target.offset().top; 4836 }); 4837 var lastItem = ordered.filter(function (item) { 4838 var scrollY = window.pageYOffset !== undefined ? window.pageYOffset : (document.documentElement || document.body.parentNode || document.body).scrollTop; 4839 return item.target.offset().top <= scrollY + window.innerHeight * 0.25; 4840 }).pop(); 4841 ordered.forEach(function (item) { 4842 if (lastItem && item.element.is(lastItem.element)) { 4843 changeUrlHash(item.id, 5); 4844 item.options.onChange.call(item.element); 4845 } else { 4846 item.options.onLeave.call(item.element); 4847 } 4848 }); 4849 }); 4850 } 4851 4852 function goToCurrentHash() { 4853 var hash = window.location.hash.replace('#', ''); 4854 var currentItem = __toCheckOnScroll.all().filter(function (item) { 4855 return item.targetSel === '[id="' + decodeURIComponent(hash).trim() + '"]'; 4856 }); 4857 4858 $(window).on('load', function () { 4859 if (currentItem.length) { 4860 scrollItem(currentItem[0]); 4861 } 4862 update(); 4863 }); 4864 } 4865 4866 if (!inCustomizer()) { 4867 $(window).scroll(update); 4868 4869 $(window).bind('smoothscroll.update', update); 4870 4871 $(window).bind('smoothscroll.update', goToCurrentHash); 4872 4873 $(goToCurrentHash); 4874 } 4875})(jQuery); 4876 4877/***/ }), 4878/* 155 */ 4879/***/ (function(module, exports, __webpack_require__) { 4880 4881"use strict"; 4882 4883 4884(function ($, Colibri) { 4885 var className = 'dropdown-menu'; 4886 4887 var arrowRightSvg = '<svg aria-hidden="true" data-prefix="fas" data-icon="angle-right" class="svg-inline--fa fa-angle-right fa-w-8" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 512"><path fill="currentColor" d="M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34z"></path></svg>'; 4888 var arrowDownSvg = '<svg aria-hidden="true" data-prefix="fas" data-icon="angle-down" class="svg-inline--fa fa-angle-down fa-w-10" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="currentColor" d="M143 352.3L7 216.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.2 9.4-24.4 9.4-33.8 0z"></path></svg>'; 4889 var arrowUpSvg = '<svg aria-hidden="true" data-prefix="fas" data-icon="angle-up" class="svg-inline--fa fa-angle-up fa-w-10" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="currentColor" d="M177 159.7l136 136c9.4 9.4 9.4 24.6 0 33.9l-22.6 22.6c-9.4 9.4-24.6 9.4-33.9 0L160 255.9l-96.4 96.4c-9.4 9.4-24.6 9.4-33.9 0L7 329.7c-9.4-9.4-9.4-24.6 0-33.9l136-136c9.4-9.5 24.6-9.5 34-.1z"></path></svg>'; 4890 var Component = function Component(element, options) { 4891 this.namespace = className; 4892 this.defaults = { 4893 menuSelector: '.colibri-menu', 4894 offCanvasWrapper: '.colibri-menu-container', 4895 arrowSelector: 'svg.svg-inline--fa', 4896 linkSelector: '.menu-item-has-children > a, .page_item_has_children > a', 4897 menuLinkSelector: ' > .menu-item-has-children > a, > .page_item_has_children > a', 4898 subMenuLinkSelector: ' ul .menu-item-has-children > a, ul .page_item_has_children > a', 4899 $menu: null 4900 }; 4901 4902 // Parent Constructor 4903 Colibri.apply(this, arguments); 4904 4905 // Initialization 4906 this.start(); 4907 }; 4908 4909 Component.prototype = { 4910 start: function start() { 4911 var _this = this; 4912 4913 var $menu = this.$element.find(this.opts.menuSelector).first(); 4914 this.opts.$menu = $menu; 4915 4916 this.stop(); 4917 this.addListener(); 4918 this.addFocusListener(); 4919 this.addSvgArrows(); 4920 this.addReverseMenuLogic(); 4921 4922 /** TODO @catalin table menu logic needs work because it does not work*/ 4923 this.addTabletMenuLogic(); 4924 4925 $(document).ready(function () { 4926 _this.addMenuScrollSpy($menu); 4927 }); 4928 }, 4929 stop: function stop() { 4930 this.removeAllSvgArrows(); 4931 this.removeListeners(); 4932 }, 4933 copyLiEventTaA: function copyLiEventTaA(e) { 4934 var tagName = ''; 4935 if (e.target && e.target.tagName) { 4936 tagName = e.target.tagName; 4937 } 4938 if (tagName.toLowerCase() === 'a') { 4939 return; 4940 } 4941 var a = $(e.target).find('> a'); 4942 a[0].click(); 4943 }, 4944 addListener: function addListener() { 4945 this.opts.$menu.find('li').on('click', this.copyLiEventTaA); 4946 }, 4947 toggleFocus: function toggleFocus(item) { 4948 var enable = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; 4949 4950 while (this.opts.$menu[0] !== item) { 4951 if ('li' === item.tagName.toLowerCase()) { 4952 if (!enable) { 4953 item.classList.remove('hover'); 4954 } else { 4955 item.classList.add('hover'); 4956 } 4957 } 4958 item = item.parentElement; 4959 } 4960 }, 4961 addFocusListener: function addFocusListener() { 4962 var _this2 = this; 4963 4964 var links = this.opts.$menu.find('a'); 4965 links.on('focus', function (event) { 4966 _this2.toggleFocus(event.currentTarget); 4967 }); 4968 4969 links.on('blur', function (event) { 4970 _this2.toggleFocus(event.currentTarget, false); 4971 }); 4972 }, 4973 addSvgArrows: function addSvgArrows() { 4974 /** 4975 * Some clients had 3 arrows when the page loaded, could not find the cause. Probably the start function was called more times 4976 *then stop function. Because of this the arrows are removed before they are added again 4977 */ 4978 this.removeAllSvgArrows(); 4979 var menuType = this.opts.data ? this.opts.data.type ? this.opts.data.type : null : null; 4980 switch (menuType) { 4981 case 'horizontal': 4982 this.addHorizontalMenuSvgArrows(); 4983 break; 4984 case 'vertical': 4985 this.addVerticalMenuSvgArrow(); 4986 break; 4987 } 4988 }, 4989 addHorizontalMenuSvgArrows: function addHorizontalMenuSvgArrows() { 4990 var $menu = this.opts.$menu; 4991 var arrowSelector = this.opts.arrowSelector; 4992 var menuLinkSelector = this.opts.menuLinkSelector; 4993 var subMenuLinkSelector = this.opts.subMenuLinkSelector; 4994 4995 $menu.find(menuLinkSelector).each(function () { 4996 if ($(this).children(arrowSelector).length === 0) { 4997 $(this).append(arrowDownSvg); 4998 // $(this).append(arrowUpSvg); 4999 } 5000 }); 5001 $menu.find(subMenuLinkSelector).each(function () { 5002 if ($(this).children(arrowSelector).length === 0) { 5003 $(this).append(arrowRightSvg); 5004 } 5005 }); 5006 }, 5007 addVerticalMenuSvgArrow: function addVerticalMenuSvgArrow() { 5008 var $menu = this.opts.$menu; 5009 var arrowSelector = this.opts.arrowSelector; 5010 var linkSelector = this.opts.linkSelector; 5011 $menu.find(linkSelector).each(function () { 5012 if ($(this).children(arrowSelector).length === 0) { 5013 $(this).append(arrowRightSvg); 5014 } 5015 }); 5016 }, 5017 removeAllSvgArrows: function removeAllSvgArrows() { 5018 if (this.opts.$menu) { 5019 this.opts.$menu.find(this.opts.arrowSelector).remove(); 5020 } 5021 }, 5022 removeListeners: function removeListeners() { 5023 var $menu = this.opts.$menu; 5024 $menu.off('mouseover.navigation'); 5025 $menu.find('li').off('click', this.copyLiEventTaA); 5026 this.removeTabletLogic(); 5027 }, 5028 removeTabletLogic: function removeTabletLogic() { 5029 var $menu = this.opts.$menu; 5030 $menu.off('tap.navigation'); 5031 },
5032 addReverseMenuLogic: function addReverseMenuLogic() { 5033 var $menu = this.opts.$menu; 5034 var self = this; 5035 $menu.on('mouseover.navigation', 'li', function () { 5036 $menu.find('li.hover').removeClass('hover'); 5037 self.setOpenReverseClass($menu, $(this)); 5038 }); 5039 }, 5040 setOpenReverseClass: function setOpenReverseClass($menu, $item) { 5041 // level 0 - not in dropdown 5042 if (this.getItemLevel($menu, $item) > 0) { 5043 var $submenu = $item.children('ul'); 5044 var subItemDoesNotFit = $submenu.length && $item.offset().left + $item.width() + 300 > window.innerWidth; 5045 var parentsAreReversed = $submenu.length && $item.closest('.open-reverse').length; 5046 5047 if (subItemDoesNotFit || parentsAreReversed) { 5048 $submenu.addClass('open-reverse'); 5049 } else { 5050 if ($submenu.length) { 5051 $submenu.removeClass('open-reverse'); 5052 } 5053 } 5054 } 5055 }, 5056 getItemLevel: function getItemLevel($menu, $item) { 5057 var menuSelector = this.opts.menuSelector; 5058 var temp2 = $item.parentsUntil(menuSelector); 5059 var temp = temp2.filter('li'); 5060 return temp.length; 5061 }, 5062 addTabletMenuLogic: function addTabletMenuLogic() { 5063 var self = this; 5064 var $menu = this.opts.$menu; 5065 if (!this.opts.clickOnLink) { 5066 this.opts.clickOnLink = this.clickOnLink.bind(this); 5067 } 5068 if (!this.opts.clickOnArrow) { 5069 this.opts.clickOnArrow = this.clickOnArrow.bind(this); 5070 } 5071 5072 $menu.off('tap.navigation', this.opts.clickOnArrow); 5073 $menu.on('tap.navigation', 'li.menu-item > a svg', this.opts.clickOnArrow); 5074 5075 $menu.off('tap.navigation', this.opts.clickOnLink); 5076 $menu.on('tap.navigation', 'li.menu-item > a', this.opts.clickOnLink); 5077 }, 5078 clickOnLink: function clickOnLink(event) { 5079 var arrowWasClicked = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; 5080 5081 var self = this; 5082 var $this = $(event.target); 5083 var $item = $this.closest('li'); 5084 var $link = $this.closest('a'); 5085 var $menu = this.opts.$menu; 5086 var $submenu = $item.children('ul'); 5087 5088 if ($submenu.length) { 5089 if (self.isSelectedItem($item)) { 5090 var href = $link.attr('href'); 5091 5092 // do nothing if nothing 5093 if (href.indexOf('#') === 0) { 5094 var anchor = href.replace('#', '').trim(); 5095 5096 if (!anchor || !$('#' + anchor).length) { 5097 return; 5098 } 5099 } 5100 event.stopPropagation(); 5101 if (arrowWasClicked) { 5102 event.preventDefault(); 5103 } 5104 self.deselectItems($menu, $item); 5105 } else { 5106 event.stopPropagation(); 5107 event.preventDefault(); 5108 self.selectItem($menu, $item); 5109 } 5110 } else { 5111 event.stopPropagation(); 5112 if (arrowWasClicked || !arrowWasClicked && self.isSelectedItem($item)) { 5113 event.preventDefault(); 5114 } 5115 self.deselectItems($menu, $item); 5116 } 5117 }, 5118 clickOnArrow: function clickOnArrow(event) { 5119 this.clickOnLink(event, true); 5120 }, 5121 selectItem: function selectItem($menu, $item) { 5122 this.deselectItems($menu, $item); 5123 $item.attr('data-selected-item', true); 5124 this.clearMenuHovers($menu, $item); 5125 $item.addClass('hover'); 5126 this.setOpenReverseClass($menu, $item); 5127 var self = this; 5128 $('body').on('tap.navigation-clear-selection', '*', function () { 5129 var $this = jQuery(this); 5130 self.clearSelectionWhenTapOutside($this, $menu); 5131 }); 5132 5133 $(window).on('scroll.navigation-clear-selection', function () { 5134 var $this = jQuery(this); 5135 self.clearSelectionWhenTapOutside($this, $menu); 5136 }); 5137 }, 5138 deselectItems: function deselectItems($menu, $item) { 5139 $item.removeClass('hover'); 5140 $menu.find('[data-selected-item]').each(function () { 5141 var $item = $(this); 5142 $item.removeAttr('data-selected-item'); 5143 var $submenu = $menu.children('ul'); 5144 5145 //TODO @catalin, check if this mobile menu code is needed 5146 if ($menu.is('.mobile-menu')) { 5147 $submenu.slideDown(); 5148 } 5149 }); 5150 }, 5151 isSelectedItem: function isSelectedItem($item) { 5152 return $item.is('[data-selected-item]'); 5153 }, 5154 clearMenuHovers: function clearMenuHovers($menu, except) { 5155 var self = this; 5156 $menu.find('li.hover').each(function () { 5157 if (except && self.containsSelectedItem($(this))) { 5158 return; 5159 } 5160 $(this).removeClass('hover'); 5161 }); 5162 }, 5163 containsSelectedItem: function containsSelectedItem($item) { 5164 return $item.find('[data-selected-item]').length > 0 || $item.is('[data-selected-item]'); 5165 }, 5166 clearSelectionWhenTapOutside: function clearSelectionWhenTapOutside($this, $menu) { 5167 $('body').off('tap.navigation-clear-selection'); 5168 $(window).off('scroll.navigation-clear-selection'); 5169 if ($this.is($menu) || $.contains($menu[0], this)) { 5170 return; 5171 } 5172 this.clearMenuHovers($menu); 5173 }, 5174 addMenuScrollSpy: function addMenuScrollSpy(startFrom) { 5175 var $menu = startFrom; 5176 if ($.fn.scrollSpy) { 5177 $menu.find('a').scrollSpy({ 5178 onChange: function onChange() { 5179 $menu.find(' > .current-menu-item, > .current_page_item').removeClass('current-menu-item current_page_item'); 5180 $(this).closest('li').addClass('current-menu-item current_page_item'); 5181 }, 5182 onLeave: function onLeave() { 5183 $(this).closest('li').removeClass('current-menu-item current_page_item'); 5184 }, 5185 5186 smoothScrollAnchor: true, 5187 offset: function offset() { 5188 //offset is needed only for sticky menu 5189 var $fixed = $menu.closest('.h-navigation_sticky'); 5190 if ($fixed.length) { 5191 return $fixed[0].getBoundingClientRect().height; 5192 } 5193 5194 return 0; 5195 } 5196 }); 5197 } 5198 5199 $(window).trigger('smoothscroll.update'); 5200 } 5201 }; 5202 5203 Component.inherits(Colibri); 5204 Colibri[className] = Component; 5205 5206 Colibri.Plugin.create(className); 5207 Colibri.Plugin.autoload(className); 5208})(jQuery, Colibri); 5209 5210/***/ }), 5211/* 156 */ 5212/***/ (function(module, exports, __webpack_require__) { 5213 5214"use strict"; 5215 5216 5217var _linksDefineSamePage = __webpack_require__(106); 5218 5219var _linksDefineSamePage2 = _interopRequireDefault(_linksDefineSamePage); 5220 5221function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 5222 5223(function ($, Colibri) { 5224 var className = 'accordion-menu'; 5225 5226 var arrowRightSvg = '<svg aria-hidden="true" data-prefix="fas" data-icon="angle-right" class="svg-inline--fa fa-angle-right fa-w-8" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 512">
5226<path fill="currentColor" d="M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34z"></path></svg>'; 5227 var arrowDownSvg = '<svg aria-hidden="true" data-prefix="fas" data-icon="angle-down" class="svg-inline--fa fa-angle-down fa-w-10" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="currentColor" d="M143 352.3L7 216.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.2 9.4-24.4 9.4-33.8 0z"></path></svg>'; 5228 5229 arrowRightSvg = '<div data-skip-smooth-scroll="1" class="h-global-transition-disable arrow-wrapper arrow-right">' + arrowRightSvg + '</div>'; 5230 arrowDownSvg = '<div data-skip-smooth-scroll="1" class="h-global-transition-disable arrow-wrapper arrow-down">' + arrowDownSvg + '</div>'; 5231 5232 var Component = function Component(element, options) { 5233 this.namespace = className; 5234 this.defaults = { 5235 menuSelector: '.colibri-menu', 5236 offCanvasWrapper: '.colibri-menu-container', 5237 linkSelector: '.menu-item-has-children > a, .page_item_has_children > a', 5238 linkLeafsSelector: 'li:not(.menu-item-has-children):not(.page_item_has_children) > a', 5239 arrowSelector: ['.menu-item-has-children > a > .arrow-wrapper, .page_item_has_children > a > .arrow-wrapper', '.menu-item-has-children > a > svg, .page_item_has_children > a > svg'].join(','), 5240 linkSelectorInLink: 'svg', 5241 $menu: null 5242 }; 5243 5244 // Parent Constructor 5245 Colibri.apply(this, arguments); 5246 5247 // Initialization 5248 this.initBindedFunctions(); 5249 this.initEventListenersData(); 5250 5251 this.start(); 5252 }; 5253 5254 Component.prototype = { 5255 start: function start() { 5256 var $menu = this.$element.find(this.opts.menuSelector).first(); 5257 this.opts.$menu = $menu; 5258 this.addSvgArrows(); 5259 5260 this.opts.$menu.find('a').data('allow-propagation', true); 5261 5262 this.removeEventListeners(); 5263 this.addEventListeners(); 5264 this.addFocusListener(); 5265 this.addMenuScrollSpy($menu); 5266 }, 5267 initBindedFunctions: function initBindedFunctions() { 5268 this.debounceApplyDropdownLogic = $.debounce(this.applyDropdownLogic.bind(this), 10); 5269 this.bindedLinkEventHandler = this.linkEventHandler.bind(this); 5270 this.bindedLinkArrowEventHandler = this.linkArrowEventHandler.bind(this); 5271 }, 5272 initEventListenersData: function initEventListenersData() { 5273 var menuNamespace = '.accordion-menu'; 5274 var events = ['click', 'tap']; 5275 var eventBase = events.map(function (event) { 5276 return '' + event + menuNamespace; 5277 }); 5278 5279 var linkSelectorEvent = eventBase.map(function (item) { 5280 return item + '.link-selector'; 5281 }).join(' '); 5282 5283 var arrowSelectorEvent = eventBase.map(function (item) { 5284 return item + '.arrow-selector'; 5285 }).join(' '); 5286 5287 var offCanvasEvent = eventBase.map(function (item) { 5288 return item + '.off-canvas'; 5289 }).join(' '); 5290 5291 this._eventOptions = { 5292 menuNamespace: menuNamespace, 5293 linkSelectorEvent: linkSelectorEvent, 5294 arrowSelectorEvent: arrowSelectorEvent, 5295 offCanvasEvent: offCanvasEvent 5296 }; 5297 }, 5298 toggleFocus: function toggleFocus(item) { 5299 while (this.opts.$menu[0] !== item) { 5300 if ('li' === item.tagName.toLowerCase()) { 5301 if (-1 !== item.className.indexOf('hover')) { 5302 item.className = item.className.replace(' hover', ''); 5303 } else { 5304 item.className += ' hover'; 5305 } 5306 } 5307 item = item.parentElement; 5308 } 5309 }, 5310 addFocusListener: function addFocusListener() { 5311 var _this = this; 5312 5313 var links = this.opts.$menu.find('a'); 5314 5315 links.on('focus', function (event) { 5316 _this.toggleFocus(event.currentTarget); 5317 }); 5318 5319 links.on('blur', function (event) { 5320 _this.toggleFocus(event.currentTarget, false); 5321 }); 5322 }, 5323 addEventListeners: function addEventListeners() { 5324 var $menu = this.opts.$menu; 5325 var eventOptions = this._eventOptions; 5326 $menu.on(eventOptions.arrowSelectorEvent, this.opts.arrowSelector, this.bindedLinkArrowEventHandler); 5327 5328 if (window.wp && window.wp.customize) { 5329 $menu.off(eventOptions.linkSelectorEvent, this.opts.linkSelector); 5330 } 5331 5332 $menu.on(eventOptions.linkSelectorEvent, this.opts.linkSelector, this.bindedLinkEventHandler); 5333 $menu.on(eventOptions.offCanvasEvent, this.opts.linkLeafsSelector, this.closeOffcanvasPanel); 5334 5335 $(document).on('keyup.' + this.namespace, $.proxy(this.handleKeyboard, this)); 5336 }, 5337 removeEventListeners: function removeEventListeners() { 5338 var $menu = this.opts.$menu; 5339 var eventOptions = this._eventOptions; 5340 $menu.off(eventOptions.menuNamespace); 5341 $(document).on('keyup.' + this.namespace); 5342 }, 5343 stop: function stop() { 5344 this.removeEventListeners(); 5345 this.removeAllSvgArrows(); 5346 }, 5347 handleKeyboard: function handleKeyboard(e) { 5348 var item = e.target; 5349 if ($.contains(this.opts.$menu[0], item)) { 5350 if ($(item).siblings('ul').length) { 5351 if (e.which === 37) { 5352 this.closeDropDown($(item).closest('li')); 5353 } 5354 5355 if (e.which === 39) { 5356 this.openDropDown($(item).closest('li')); 5357 } 5358 } 5359 } 5360 }, 5361 openDropDown: function openDropDown(item) { 5362 if (!item) { 5363 return; 5364 } 5365 5366 if ($(item).is('a')) { 5367 item = $(item).closest('li'); 5368 } else { 5369 item = $(item); 5370 } 5371 5372 item.addClass('open'); 5373 5374 item.children('ul').slideDown(100); 5375 }, 5376 closeDropDown: function closeDropDown(item) { 5377 if (!item) { 5378 return; 5379 } 5380 5381 if ($(item).is('a')) { 5382 item = $(item).closest('li'); 5383 } else { 5384 item = $(item); 5385 } 5386 5387 item.removeClass('open'); 5388 item.children('ul').slideUp(100); 5389 }, 5390 isDropDownOpen: function isDropDownOpen($parent) { 5391 return $parent.is('.open'); 5392 }, 5393 closeOffcanvasPanel: function closeOffcanvasPanel() { 5394 if (window.wp && window.wp.customize) { 5395 return; 5396 } 5397 5398 //some mobile menus do not work without this timeout, because the panel gets hidden before the link logic happens 5399 //and some browser stop the link for security reasons because it got fired from hidden elements. 5400 setTimeout(function () { 5401 $('.offscreen-overlay').trigger('click'); 5402 }, 500); 5403 }, 5404 linkEventHandler: function linkEventHandler(event, isForArrow) { 5405 var inCustomizer = window.wp && window.wp.customize; 5406 if (inCustomizer) { 5407 event.preventDefault(); 5408 } 5409 5410 var $this = $(event.target); 5411 var $li = $this.closest('li'); 5412 5413 if (!isForArrow && $li.hasClass('open') && !inCustomizer) { 5414 this.closeOffcanvasPanel(); 5415 return; 5416 } 5417 5418 //when the arrows are clicked the link should not redirect you, or when the item li is not opened. also stop 5419 //propagation to the link event handler 5420 if (isForArrow || !isForArrow && !$li.hasClass('open')) { 5421 event.preventDefault(); 5422 // do not trigger bubbling events e.g for offcanvas 5423 event.stopPropagation(); 5424 } 5425 // event.stopPropagation(); 5426 5427 /** 5428 * For mobile devices the event handler function is called two times one for the click event and the other time for 5429 * tap event. Because of this we had to split the logic in things that needs to be called for every call and things 5430 * that needs to be called once when the tap/click events are called at the same time. We use the debounce function 5431 * to apply the dropdown logic only once 5432 */ 5433 this.debounceApplyDropdownLogic(event, isForArrow); 5434 }, 5435 linkArrowEventHandler: function linkArrowEventHandler(event) { 5436 this.linkEventHandler(event, true); 5437 }, 5438 applyDropdownLogic: function applyDropdownLogic(event, isForArrow) { 5439 var $this = $(event.target); 5440 var $li = $this.closest('li'); 5441 5442 if (!($li.hasClass('menu-item-has-children') || $li.hasClass('page_item_has_children'))) { 5443 this.closeOffcanvasPanel(); 5444 return; 5445 } 5446 5447 if (isForArrow && this.isDropDownOpen($li)) { 5448 this.closeDropDown($li); 5449 } else { 5450 this.openDropDown($li); 5451 } 5452 }, 5453 addSvgArrows: function addSvgArrows() { 5454 var $menu = this.opts.$menu; 5455 var linkSelectorInLink = this.opts.linkSelectorInLink; 5456 $menu.find(this.opts.linkSelector).each(function () { 5457 var _this2 = this; 5458 5459 if ($(this).children(linkSelectorInLink).parent('.arrow-wrapper').length === 0) { 5460 $(this).children(linkSelectorInLink).remove(); 5461 $(this).append(arrowRightSvg); 5462 $(this).append(arrowDownSvg); 5463 } else { 5464 if ($(this).children(linkSelectorInLink).length === 0) { 5465 $(this).append(arrowRightSvg); 5466 $(this).append(arrowDownSvg); 5467 } 5468 } 5469 5470 setTimeout(function () { 5471 $(_this2).find('.h-global-transition-disable').removeClass('h-global-transition-disable'); 5472 }, 1000); 5473 }); 5474 }, 5475 removeAllSvgArrows: function removeAllSvgArrows() { 5476 if (this.opts.$menu) { 5477 this.opts.$menu.find(this.opts.arrowSelector).remove(); 5478 } 5479 }, 5480 addMenuScrollSpy: function addMenuScrollSpy(startFrom) { 5481 var $menu = startFrom; 5482 var _offset = 20; 5483 var component = this; 5484 if ($.fn.scrollSpy) { 5485 var linkSelector = component.opts.linkSelector; 5486 var arrowSelector = component.opts.arrowSelector; 5487 $menu.find('a').not(linkSelector).not(arrowSelector).scrollSpy({ 5488 onChange: function onChange() { 5489 $menu.find('.current-menu-item,.current_page_item').removeClass('current-menu-item current_page_item'); 5490 $(this).closest('li').addClass('current-menu-item current_page_item'); 5491 }, 5492 onLeave: function onLeave() { 5493 $(this).closest('li').removeClass('current-menu-item current_page_item'); 5494 }, 5495 clickCallback: function clickCallback() { 5496 component.closeOffcanvasPanel(); 5497 }, 5498 5499 smoothScrollAnchor: true, 5500 offset: function offset() { 5501 var $fixed = $menu.closest('[data-colibri-component="navigation"]'); 5502 if ($fixed.length) { 5503 return $fixed[0].getBoundingClientRect().height + _offset; 5504 } 5505 5506 return _offset; 5507 } 5508 }); 5509 } 5510 5511 $(window).trigger('smoothscroll.update'); 5512 } 5513 }; 5514 5515 Component.inherits(Colibri); 5516 Colibri[className] = Component; 5517 5518 Colibri.Plugin.create(className); 5519 Colibri.Plugin.autoload(className); 5520})(jQuery, Colibri); 5521 5522/***/ }), 5523/* 157 */ 5524/***/ (function(module, exports, __webpack_require__) { 5525 5526"use strict"; 5527 5528 5529(function ($, Colibri) { 5530 var className = 'navigation'; 5531 5532 var Component = function Component(element, options) { 5533 this.namespace = className; 5534 this.defaults = { 5535 data: { 5536 sticky: { 5537 className: 'h-navigation_sticky', 5538 startAfterNode: { 5539 enabled: false, 5540 selector: '' 5541 }, 5542 animations: { 5543 enabled: false, 5544 currentInAnimationClass: '', 5545 currentOutAnimationClass: '',
5546 allInAnimationsClasses: '', 5547 allOutAnimationsClasses: '', 5548 duration: 0 5549 }, 5550 zIndex: 9999, 5551 responsiveWidth: true, 5552 center: true, 5553 useShrink: true, 5554 toBottom: false, 5555 useNativeSticky: false, 5556 always: false 5557 }, 5558 overlap: false, 5559 overlapIsActive: false 5560 } 5561 }; 5562 // Parent Constructor 5563 Colibri.apply(this, arguments); 5564 this.computeOverlapPaddingDelayed = jQuery.debounce(this.computeOverlapPadding.bind(this), 10); 5565 //The script still is called two times but now both of the calls pass the check 5566 // if (!this.scriptCallIsValid()) { 5567 // return; 5568 // } 5569 5570 // Initialization 5571 this.start(); 5572 }; 5573 5574 Component.prototype = { 5575 start: function start() { 5576 var data = {}; 5577 if (this.opts.data) { 5578 data = this.opts.data; 5579 } 5580 if (data.sticky) { 5581 this.startSticky(data.sticky); 5582 } 5583 5584 if (data.overlap) { 5585 this.startOverlap(); 5586 } 5587 }, 5588 5589 5590 //TODO @catalin this is a temporary workaround, until the issue: #0030376 is fixed 5591 scriptCallIsValid: function scriptCallIsValid() { 5592 var isInCustomizer = Colibri.isCustomizerPreview(); 5593 if (!isInCustomizer) { 5594 return true; 5595 } 5596 var vueNavSelector = '.h-navigation_outer'; 5597 var vueNav = $(this.$element).closest(vueNavSelector).get(0); 5598 if (!vueNav) { 5599 return true; 5600 } 5601 if (vueNav.__vue__) { 5602 return true; 5603 } 5604 return false; 5605 }, 5606 startOverlap: function startOverlap() { 5607 var self = this; 5608 var $target = this.$element.closest('[data-colibri-navigation-overlap]'); 5609 //for backward compatibility reasons 5610 if ($target.length === 0) { 5611 $target = this.$element; 5612 } 5613 this.overlapTarget = $target.get(0); 5614 this.overlapIsActive = true; 5615 $(window).bind('resize.overlap orientationchange.overlap', this.computeOverlapPaddingDelayed); 5616 window.addResizeListener(this.overlapTarget, this.computeOverlapPaddingDelayed); 5617 self.computeOverlapPadding(); 5618 }, 5619 stopOverlap: function stopOverlap() { 5620 this.overlapIsActive = false; 5621 if (this.$sheet) { 5622 document.head.removeChild(this.$sheet); 5623 this.$sheet = null; 5624 } 5625 $(window).off('.overlap'); 5626 window.removeResizeListener(this.overlapTarget, this.computeOverlapPaddingDelayed); 5627 }, 5628 computeOverlapPadding: function computeOverlapPadding() { 5629 if (!this.overlapIsActive) { 5630 return; 5631 } 5632 if (!this.$sheet) { 5633 this.$sheet = document.createElement('style'); 5634 document.head.appendChild(this.$sheet); 5635 } 5636 var paddingTop = this.overlapTarget.offsetHeight + 'px !important;'; 5637 this.$sheet.innerHTML = '.h-navigation-padding{padding-top:' + paddingTop + '}'; 5638 }, 5639 startSticky: function startSticky(data) { 5640 var self = this; 5641 5642 this.$element.data('stickData', data); 5643 this.$element.fixTo('body', data); 5644 5645 if (!Colibri.isCustomizerPreview()) { 5646 this.prepareSticky(); 5647 } 5648 5649 this.$element.bind('fixto-added.sticky', function () { 5650 self.$element.attr('data-in-sticky-state', true); 5651 }); 5652 var navOuter = this.$element.closest('.h-navigation_outer'); 5653 this.$element.bind('fixto-add.sticky', function () { 5654 self.clearResetTimeouts(); 5655 var navOuter = self.$element.closest('.h-navigation_outer'); 5656 navOuter.css('animation-duration', ''); 5657 navOuter.css('min-height', navOuter[0].offsetHeight); 5658 }); 5659 5660 this.$element.bind('fixto-removed.sticky', function () { 5661 self.$element.removeAttr('data-in-sticky-state'); 5662 self.resetParentHeight(); 5663 }); 5664 5665 $(window).bind('resize.sticky orientationchange.sticky', function () { 5666 setTimeout(self.resizeCallback.bind(self), 50); 5667 }); 5668 $(window).trigger('resize.sticky'); 5669 }, 5670 stopSticky: function stopSticky() { 5671 var instance = this.fixToInstance(); 5672 if (instance) { 5673 instance.destroy(); 5674 $(window).off('.sticky'); 5675 this.$element.removeData('fixto-instance'); 5676 this.resetParentHeight(); 5677 } 5678 }, 5679 resetParentHeight: function resetParentHeight() { 5680 this.clearResetTimeouts(); 5681 var navOuter = this.$element.closest('.h-navigation_outer');
5682 var delay = parseFloat(this.$element.css('animation-duration')) * 1000; 5683 navOuter.css('animation-duration', '0s'); 5684 this.resetTimeoutHeight = setTimeout(function () { 5685 navOuter.css('min-height', ''); 5686 }, 1000); 5687 this.resetTimeoutAnimation = setTimeout(function () { 5688 navOuter.css('animation-duration', ''); 5689 }, delay + 50); 5690 }, 5691 clearResetTimeouts: function clearResetTimeouts() { 5692 clearTimeout(this.resetTimeoutHeight); 5693 clearTimeout(this.resetTimeoutAnimation); 5694 }, 5695 stop: function stop() { 5696 this.stopSticky(); 5697 this.stopOverlap(); 5698 }, 5699 prepareSticky: function prepareSticky() { 5700 var self = this; 5701 5702 this.normal = this.$element.find('[data-nav-normal]'); 5703 this.sticky = this.$element.find('[data-nav-sticky]'); 5704 5705 this.sticky.find('span[data-placeholder]').each(function () { 5706 $(this).parent().attr('data-placeholder', $(this).attr('data-placeholder')); 5707 $(this).remove(); 5708 }); 5709 5710 if (!this.sticky.length || !this.sticky.children().length) { 5711 return; 5712 } 5713 5714 this.$element.bind('fixto-added.sticky', function () { 5715 self.moveElementsToSticky(); 5716 }); 5717 5718 this.$element.bind('fixto-removed.sticky', function () { 5719 self.moveElementsToNormal(); 5720 }); 5721 }, 5722 moveElementsToSticky: function moveElementsToSticky() { 5723 var stickyEls = this.sticky.find('[data-placeholder]'); 5724 var self = this; 5725 stickyEls.each(function (index, el) { 5726 $this = $(this); 5727 5728 var type = $this.attr('data-placeholder'); 5729 5730 var content = self.normal.find('[data-placeholder-provider=' + type + '] .h-column__content >'); 5731 var stickyEquiv = $this; 5732 5733 if (stickyEquiv && content.length) { 5734 $(stickyEquiv).append(content); 5735 } 5736 }); 5737 5738 this.normal.hide(); 5739 this.sticky.show(); 5740 }, 5741 moveElementsToNormal: function moveElementsToNormal() { 5742 var stickyEls = this.sticky.find('[data-placeholder]'); 5743 var self = this; 5744 stickyEls.each(function (index, el) { 5745 $this = $(this); 5746 5747 var type = $this.attr('data-placeholder'); 5748 5749 var content = self.sticky.find('[data-placeholder=' + type + '] >'); 5750 var equiv = self.normal.find('[data-placeholder-provider=' + type + '] .h-column__content'); 5751 5752 if (equiv && content.length) { 5753 $(equiv).append(content); 5754 } 5755 }); 5756 5757 this.normal.show(); 5758 this.sticky.hide(); 5759 }, 5760 fixToInstance: function fixToInstance() { 5761 var data = this.$element.data(); 5762 if (data && data.fixtoInstance) { 5763 return data.fixtoInstance; 5764 } 5765 return false; 5766 }, 5767 resizeCallback: function resizeCallback() { 5768 if (window.innerWidth < 1024) { 5769 var data = this.$element.data(); 5770 var stickData = data.stickData; 5771 5772 if (!stickData) { 5773 return; 5774 } 5775 5776 var fixToInstance = data.fixtoInstance; 5777 if (!fixToInstance) { 5778 return true; 5779 } 5780 5781 if (window.innerWidth <= 767) { 5782 if (!stickData.stickyOnMobile) { 5783 fixToInstance.stop(); 5784 } 5785 } else { 5786 if (!stickData.stickyOnTablet) { 5787 fixToInstance.stop(); 5788 } 5789 } 5790 } else { 5791 var data = this.$element.data(); 5792 if (!data) { 5793 return; 5794 } 5795 5796 var fixToInstance = data.fixtoInstance; 5797 if (!fixToInstance) { 5798 return true; 5799 } 5800 5801 fixToInstance.refresh(); 5802 fixToInstance.start(); 5803 } 5804 } 5805 }; 5806 Component.inherits(Colibri); 5807 Colibri[className] = Component; 5808 5809 Colibri.Plugin.create(className); 5810 Colibri.Plugin.autoload(className); 5811})(jQuery, Colibri); 5812 5813/***/ }), 5814/* 158 */ 5815/***/ (function(module, exports, __webpack_require__) { 5816 5817"use strict"; 5818 5819 5820(function ($, window, document) { 5821 // Start Computed Style. Please do not modify this module here. Modify it from its own repo. See address below. 5822 5823 /*! Computed Style - v0.1.0 - 2012-07-19 5824 * https://github.com/bbarakaci/computed-style 5825 * Copyright (c) 2012 Burak Barakaci; Licensed MIT */ 5826 var computedStyle = function () { 5827 var computedStyle = { 5828 getAll: function getAll(element) { 5829 return document.defaultView.getComputedStyle(element); 5830 }, 5831 get: function get(element, name) { 5832 return this.getAll(element)[name]; 5833 }, 5834 toFloat: function toFloat(value) { 5835 return parseFloat(value, 10) || 0; 5836 }, 5837 getFloat: function getFloat(element, name) {
5838 return this.toFloat(this.get(element, name)); 5839 }, 5840 _getAllCurrentStyle: function _getAllCurrentStyle(element) { 5841 return element.currentStyle; 5842 } 5843 }; 5844 5845 if (document.documentElement.currentStyle) { 5846 computedStyle.getAll = computedStyle._getAllCurrentStyle; 5847 } 5848 5849 return computedStyle; 5850 }(); 5851 5852 // End Computed Style. Modify whatever you want to. 5853 5854 var mimicNode = function () { 5855 /* 5856 Class Mimic Node 5857 Dependency : Computed Style 5858 Tries to mimick a dom node taking his styles, dimensions. May go to his repo if gets mature. 5859 */ 5860 5861 function MimicNode(element) { 5862 this.element = element; 5863 this.replacer = document.createElement('div'); 5864 this.replacer.style.visibility = 'hidden'; 5865 this.hide(); 5866 element.parentNode.insertBefore(this.replacer, element); 5867 } 5868 5869 MimicNode.prototype = { 5870 replace: function replace() { 5871 var rst = this.replacer.style; 5872 var styles = computedStyle.getAll(this.element); 5873 5874 // rst.width = computedStyle.width(this.element) + 'px'; 5875 // rst.height = this.element.offsetHeight + 'px'; 5876 5877 // Setting offsetWidth 5878 rst.width = this._width(); 5879 rst.height = this._height(); 5880 5881 // Adopt margins 5882 rst.marginTop = styles.marginTop; 5883 rst.marginBottom = styles.marginBottom; 5884 rst.marginLeft = styles.marginLeft; 5885 rst.marginRight = styles.marginRight; 5886 5887 // Adopt positioning 5888 rst.cssFloat = styles.cssFloat; 5889 rst.styleFloat = styles.styleFloat; //ie8; 5890 rst.position = styles.position; 5891 rst.top = styles.top; 5892 rst.right = styles.right; 5893 rst.bottom = styles.bottom; 5894 rst.left = styles.left; 5895 // rst.borderStyle = styles.borderStyle; 5896 5897 rst.display = styles.display; 5898 }, 5899 hide: function hide() { 5900 this.replacer.style.display = 'none'; 5901 }, 5902 _width: function _width() { 5903 return this.element.getBoundingClientRect().width + 'px'; 5904 }, 5905 _widthOffset: function _widthOffset() { 5906 return this.element.offsetWidth + 'px'; 5907 }, 5908 _height: function _height() { 5909 return jQuery(this.element).outerHeight() + 'px'; 5910 }, 5911 _heightOffset: function _heightOffset() { 5912 return this.element.offsetHeight + 'px'; 5913 }, 5914 destroy: function destroy() { 5915 $(this.replacer).remove(); 5916 5917 // set properties to null to break references 5918 for (var prop in this) { 5919 if (this.hasOwnProperty(prop)) { 5920 this[prop] = null; 5921 } 5922 } 5923 } 5924 }; 5925 5926 var bcr = document.documentElement.getBoundingClientRect(); 5927 if (!bcr.width) { 5928 MimicNode.prototype._width = MimicNode.prototype._widthOffset; 5929 MimicNode.prototype._height = MimicNode.prototype._heightOffset; 5930 } 5931 5932 return { 5933 MimicNode: MimicNode, 5934 computedStyle: computedStyle 5935 }; 5936 }(); 5937 5938 // Class handles vendor prefixes 5939 function Prefix() { 5940 // Cached vendor will be stored when it is detected 5941 this._vendor = null; 5942 5943 //this._dummy = document.createElement('div'); 5944 } 5945 5946 Prefix.prototype = { 5947 _vendors: { 5948 webkit: { 5949 cssPrefix: '-webkit-', 5950 jsPrefix: 'Webkit' 5951 }, 5952 moz: { 5953 cssPrefix: '-moz-', 5954 jsPrefix: 'Moz' 5955 }, 5956 ms: { 5957 cssPrefix: '-ms-', 5958 jsPrefix: 'ms' 5959 }, 5960 opera: { 5961 cssPrefix: '-o-', 5962 jsPrefix: 'O' 5963 } 5964 }, 5965 5966 _prefixJsProperty: function _prefixJsProperty(vendor, prop) { 5967 return vendor.jsPrefix + prop[0].toUpperCase() + prop.substr(1); 5968 }, 5969 _prefixValue: function _prefixValue(vendor, value) { 5970 return vendor.cssPrefix + value; 5971 }, 5972 _valueSupported: function _valueSupported(prop, value, dummy) { 5973 // IE8 will throw Illegal Argument when you attempt to set a not supported value.
5974 try { 5975 dummy.style[prop] = value; 5976 return dummy.style[prop] === value; 5977 } catch (er) { 5978 return false; 5979 } 5980 }, 5981 5982 5983 /** 5984 * Returns true if the property is supported 5985 * @param {string} prop Property name 5986 * @returns {boolean} 5987 */ 5988 propertySupported: function propertySupported(prop) { 5989 // Supported property will return either inine style value or an empty string. 5990 // Undefined means property is not supported. 5991 return document.documentElement.style[prop] !== undefined; 5992 }, 5993 5994 5995 /** 5996 * Returns prefixed property name for js usage 5997 * @param {string} prop Property name 5998 * @returns {string|null} 5999 */ 6000 getJsProperty: function getJsProperty(prop) { 6001 // Try native property name first. 6002 if (this.propertySupported(prop)) { 6003 return prop; 6004 } 6005 6006 // Prefix it if we know the vendor already 6007 if (this._vendor) { 6008 return this._prefixJsProperty(this._vendor, prop); 6009 } 6010 6011 // We don't know the vendor, try all the possibilities 6012 var prefixed; 6013 for (var vendor in this._vendors) { 6014 prefixed = this._prefixJsProperty(this._vendors[vendor], prop); 6015 if (this.propertySupported(prefixed)) { 6016 // Vendor detected. Cache it. 6017 this._vendor = this._vendors[vendor]; 6018 return prefixed; 6019 } 6020 } 6021 6022 // Nothing worked 6023 return null; 6024 }, 6025 6026 6027 /** 6028 * Returns supported css value for css property. Could be used to check support or get prefixed value string. 6029 * @param {string} prop Property 6030 * @param {string} value Value name 6031 * @returns {string|null} 6032 */ 6033 getCssValue: function getCssValue(prop, value) { 6034 // Create dummy element to test value 6035 var dummy = document.createElement('div'); 6036 6037 // Get supported property name 6038 var jsProperty = this.getJsProperty(prop); 6039 6040 // Try unprefixed value 6041 if (this._valueSupported(jsProperty, value, dummy)) { 6042 return value; 6043 } 6044 6045 var prefixedValue; 6046 6047 // If we know the vendor already try prefixed value 6048 if (this._vendor) { 6049 prefixedValue = this._prefixValue(this._vendor, value); 6050 if (this._valueSupported(jsProperty, prefixedValue, dummy)) { 6051 return prefixedValue; 6052 } 6053 } 6054 6055 // Try all vendors 6056 for (var vendor in this._vendors) { 6057 prefixedValue = this._prefixValue(this._vendors[vendor], value); 6058 if (this._valueSupported(jsProperty, prefixedValue, dummy)) { 6059 // Vendor detected. Cache it. 6060 this._vendor = this._vendors[vendor]; 6061 return prefixedValue; 6062 } 6063 } 6064 // No support for value 6065 return null; 6066 } 6067 }; 6068 6069 var prefix = new Prefix(); 6070 6071 // We will need this frequently. Lets have it as a global until we encapsulate properly. 6072 var transformJsProperty = prefix.getJsProperty('transform'); 6073 6074 // Will hold if browser creates a positioning context for fixed elements. 6075 var fixedPositioningContext; 6076 6077 // Checks if browser creates a positioning context for fixed elements. 6078 // Transform rule will create a positioning context on browsers who follow the spec. 6079 // Ie for example will fix it according to documentElement 6080 // TODO: Other css rules also effects. perspective creates at chrome but not in firefox. transform-style preserve3d effects. 6081 function checkFixedPositioningContextSupport() { 6082 var support = false; 6083 var parent = document.createElement('div'); 6084 var child = document.createElement('div'); 6085 parent.appendChild(child); 6086 parent.style[transformJsProperty] = 'translate(0)'; 6087 // Make sure there is space on top of parent 6088 parent.style.marginTop = '10px'; 6089 parent.style.visibility = 'hidden'; 6090 child.style.position = 'fixed'; 6091 child.style.top = 0; 6092 document.body.appendChild(parent); 6093 var rect = child.getBoundingClientRect(); 6094 // If offset top is greater than 0 meand transformed element created a positioning context. 6095 if (rect.top > 0) { 6096 support = true; 6097 } 6098 // Remove dummy content 6099 document.body.removeChild(parent); 6100 return support; 6101 } 6102 6103 // It will return null if position sticky is not supported 6104 var nativeStickyValue = prefix.getCssValue('position', 'sticky'); 6105 6106 // It will return null if position fixed is not supported 6107 var fixedPositionValue = prefix.getCssValue('position', 'fixed'); 6108 6109 // Dirty business 6110 var ie = navigator.appName === 'Microsoft Internet Explorer'; 6111 var ieversion; 6112 6113 if (ie) { 6114 ieversion = parseFloat(navigator.appVersion.split('MSIE')[1]); 6115 } 6116 6117 function FixTo(child, parent, options) { 6118 this.child = child; 6119 this._$child = $(child); 6120 this.parent = parent; 6121 this.options = { 6122 className: 'fixto-fixed', 6123 startAfterNode: { 6124 enabled: false, 6125 selector: '' 6126 }, 6127 animations: { 6128 enabled: false, 6129 currentInAnimationClass: '', 6130 currentOutAnimationClass: '',
6131 allInAnimationsClasses: '', 6132 allOutAnimationsClasses: '', 6133 duration: 0 6134 }, 6135 top: 0, 6136 zIndex: '' 6137 }; 6138 this._setOptions(options); 6139 6140 this._initAnimations(); 6141 } 6142 6143 FixTo.prototype = { 6144 // Returns the total outerHeight of the elements passed to mind option. Will return 0 if none. 6145 _mindtop: function _mindtop() { 6146 var top = 0; 6147 if (this._$mind) { 6148 var el; 6149 var rect; 6150 var height; 6151 for (var i = 0, l = this._$mind.length; i < l; i++) { 6152 el = this._$mind[i]; 6153 rect = el.getBoundingClientRect(); 6154 if (rect.height) { 6155 top += rect.height; 6156 } else { 6157 var styles = computedStyle.getAll(el); 6158 top += el.offsetHeight + computedStyle.toFloat(styles.marginTop) + computedStyle.toFloat(styles.marginBottom); 6159 } 6160 } 6161 } 6162 return top; 6163 }, 6164 _updateOutAnimationDuration: function _updateOutAnimationDuration() { 6165 var animationDuration = this.options.animations.duration; 6166 if (isNaN(animationDuration)) { 6167 animationDuration = 0; 6168 } 6169 6170 this._animationDuration = animationDuration; 6171 }, 6172 _initAnimations: function _initAnimations() { 6173 var animations = this.options.animations; 6174 this._$child.removeClass(animations.allInAnimationsClasses); 6175 this._$child.removeClass(animations.allOutAnimationsClasses); 6176 6177 var self = this; 6178 this._updateOutAnimationDuration(); 6179 6180 this._animationOutDebounce = $.debounce(function () { 6181 self._$child.removeClass(self.options.animations.allOutAnimationsClasses); 6182 self._inOutAnimation = false; 6183 self._unfix(); 6184 self._removeTransitionFromOutAnimation(); 6185 }, 100); 6186 6187 this._animationInDebounce = $.debounce(function () { 6188 self._inInAnimation = false; 6189 self._$child.removeClass(self.options.animations.allInAnimationsClasses); 6190 }, this._animationDuration); 6191 }, 6192 _removeTransitionFromOutAnimation: function _removeTransitionFromOutAnimation() { 6193 var noTransitionClass = 'h-global-transition-disable'; 6194 this._$child.addClass(noTransitionClass); 6195 6196 var childTransitionDuration = this._$child.css('transition-duration'); 6197 var isNumberRegex = /\d+/; 6198 var transitionDurationInS = childTransitionDuration.match(isNumberRegex)[0]; 6199 if (!transitionDurationInS) { 6200 transitionDurationInS = 0; 6201 } 6202 6203 var transitionDurationInMs = transitionDurationInS * 1000; 6204 var transitionBuffer = 500; 6205 var transitionDuration = transitionDurationInMs + transitionBuffer; 6206 var self = this; 6207 setTimeout(function () { 6208 if (!self._$child) { 6209 return; 6210 } 6211 self._$child.removeClass(noTransitionClass); 6212 }, transitionDuration); 6213 }, 6214 _passedStartAfterNode: function _passedStartAfterNode() { 6215 var $startAfterNode = this._$startAfterNode; 6216 if ($startAfterNode && $startAfterNode.length > 0) { 6217 var offsetTop = this._afterElementOffsetTop; 6218 var height = $startAfterNode.outerHeight(); 6219 return this._scrollTop > offsetTop + height; 6220 } 6221 return true; 6222 }, 6223 6224 // Public method to stop the behaviour of this instance. 6225 stop: function stop() { 6226 this._stop(); 6227 this._running = false; 6228 }, 6229 6230 6231 // Public method starts the behaviour of this instance. 6232 start: function start() { 6233 // Start only if it is not running not to attach event listeners multiple times. 6234 if (!this._running) { 6235 this._start(); 6236 this._running = true; 6237 } 6238 }, 6239 6240 6241 //Public method to destroy fixto behaviour 6242 destroy: function destroy() { 6243 this.stop(); 6244 6245 this._destroy(); 6246 6247 // Remove jquery data from the element 6248 this._$child.removeData('fixto-instance'); 6249 6250 // set properties to null to break references 6251 for (var prop in this) { 6252 if (this.hasOwnProperty(prop)) { 6253 this[prop] = null; 6254 } 6255 } 6256 }, 6257 _setOptions: function _setOptions(options) { 6258 $.extend(true, this.options, options); 6259 if (this.options.mind) { 6260 this._$mind = $(this.options.mind); 6261 } 6262 if (this.options.startAfterNode.enabled && this.options.startAfterNode.selector) { 6263 this._$startAfterNode = $(this.options.startAfterNode.selector); 6264 } 6265 }, 6266 setOptions: function setOptions(options) { 6267 this._setOptions(options); 6268 this.refresh(); 6269 }, 6270 6271 6272 // Methods could be implemented by subclasses 6273 6274 _stop: function _stop() {}, 6275 _start: function _start() {}, 6276 _destroy: function _destroy() {}, 6277 refresh: function refresh() {} 6278 }; 6279 6280 // Class FixToContainer 6281 function FixToContainer(child, parent, options) { 6282 /** FIXME If you have a saved navigation with sticky, when you enter the page, this class creates two objects 6283 * and because of that there are two events listeners. There should be only one instance of this class for each 6284 * navigation 6285 */ 6286 //The script still is called two times but now both of the calls pass the check 6287 // if (!child || !this._scriptCallIsValid(child)) { 6288 // return; 6289 // } 6290 FixTo.call(this, child, parent, options); 6291 this._replacer = new mimicNode.MimicNode(child); 6292 this._ghostNode = this._replacer.replacer; 6293 6294 this._saveStyles(); 6295
6296 this._saveViewportHeight(); 6297 6298 // Create anonymous functions and keep references to register and unregister events. 6299 this._proxied_onscroll = this._bind(this._onscroll, this); 6300 this._proxied_onresize = this._bind(this._onresize, this); 6301 6302 this.start(); 6303 } 6304 6305 FixToContainer.prototype = new FixTo(); 6306 6307 $.extend(FixToContainer.prototype, { 6308 // Returns an anonymous function that will call the given function in the given context 6309 _bind: function _bind(fn, context) { 6310 return function () { 6311 return fn.call(context); 6312 }; 6313 }, 6314 6315 6316 // at ie8 maybe only in vm window resize event fires everytime an element is resized. 6317 _toresize: ieversion === 8 ? document.documentElement : window, 6318 6319 //TODO @catalin this is a temporary workaround, until the issue: #0030376 is fixed 6320 _scriptCallIsValid: function _scriptCallIsValid(child) { 6321 var isInCustomizer = Colibri.isCustomizerPreview(); 6322 if (!isInCustomizer) { 6323 return true; 6324 } 6325 var vueNavSelector = '.h-navigation_outer'; 6326 var vueNav = $(child).closest(vueNavSelector).get(0); 6327 if (!vueNav) { 6328 return true; 6329 } 6330 if (vueNav.__vue__) { 6331 return true; 6332 } 6333 return false; 6334 }, 6335 6336 _onscroll: function _onscroll() { 6337 /** 6338 * TODO @catalin, now sometimes the child height is 0, other times is correct that ruins the out animation logic, 6339 * until that is fixed this is a workaround to that problem. When the child height will always be correct remove 6340 * this condition. 6341 */ 6342 this._scrollTop = document.documentElement.scrollTop || document.body.scrollTop; 6343 this._parentBottom = this.parent.offsetHeight + this._fullOffset('offsetTop', this.parent); 6344 if (this.options.startAfterNode && !this._passedStartAfterNode()) { 6345 if (this.fixed && !this._inOutAnimation) { 6346 this._unfixFromScrollListener(); 6347 } 6348 return; 6349 } 6350 // if (this.options.mindBottomPadding !== false) { 6351 // this._parentBottom -= computedStyle.getFloat(this.parent, 'paddingBottom'); 6352 // } 6353 6354 // if (this.options.toBottom) { 6355 // this._fix(); 6356 // this._adjust(); 6357 // return 6358 // } 6359 6360 // if (this.options.toBottom) { 6361 // this.options.top = this._viewportHeight - computedStyle.toFloat(computedStyle.getAll(this.child).height) - this.options.topSpacing; 6362 // } 6363 if (!this.fixed) { 6364 var childStyles = computedStyle.getAll(this.child); 6365 6366 if (this._scrollTop < this._parentBottom && this._scrollTop > this._fullOffset('offsetTop', this.child) - this.options.top - this._mindtop() && this._viewportHeight > this.child.offsetHeight + computedStyle.toFloat(childStyles.marginTop) + computedStyle.toFloat(childStyles.marginBottom) || this.options.toBottom) { 6367 this._fix(); 6368 this._adjust(); 6369 } 6370 } else { 6371 if (this.options.toBottom) { 6372 if (this._scrollTop >= this._fullOffset('offsetTop', this._ghostNode)) { 6373 this._unfixFromScrollListener(); 6374 return; 6375 } 6376 } else { 6377 if (this._scrollTop > this._parentBottom || this._scrollTop <= this._fullOffset('offsetTop', this._ghostNode) - this.options.top - this._mindtop()) { 6378 this._unfixFromScrollListener(); 6379 return; 6380 } 6381 } 6382 this._adjust(); 6383 } 6384 }, 6385 6386 _adjust: function _adjust() { 6387 var top = 0; 6388 var mindTop = this._mindtop(); 6389 var diff = 0; 6390 var childStyles = computedStyle.getAll(this.child); 6391 var context = null; 6392 6393 if (fixedPositioningContext) { 6394 // Get positioning context. 6395 context = this._getContext(); 6396 if (context) { 6397 // There is a positioning context. Top should be according to the context. 6398 top = Math.abs(context.getBoundingClientRect().top); 6399 } 6400 } 6401 6402 diff = this._parentBottom - this._scrollTop - (this.child.offsetHeight + computedStyle.toFloat(childStyles.marginBottom) + mindTop + this.options.top); 6403 6404 if (diff > 0) { 6405 diff = 0; 6406 } 6407 6408 if (this.options.toBottom) { 6409 // this.child.style.top = (diff + mindTop + top + this.options.top) - computedStyle.toFloat(childStyles.marginTop) + 'px'; 6410 } else { 6411 var _top = this.options.top; 6412 if (_top === 0) { 6413 _top = $('body').offset().top; 6414 } 6415 6416 this.child.style.top = Math.round(diff + mindTop + top + _top - computedStyle.toFloat(childStyles.marginTop)) + 'px'; 6417 } 6418 }, 6419 6420 // Calculate cumulative offset of the element. 6421 // Optionally according to context 6422 _fullOffset: function _fullOffset(offsetName, elm, context) { 6423 var offset = elm[offsetName]; 6424 var offsetParent = elm.offsetParent; 6425 6426 // Add offset of the ascendent tree until we reach to the document root or to the given context 6427 while (offsetParent !== null && offsetParent !== context) { 6428 offset = offset + offsetParent[offsetName]; 6429 offsetParent = offsetParent.offsetParent; 6430 } 6431 6432 return offset; 6433 }, 6434 6435 // Get positioning context of the element. 6436 // We know that the closest parent that a transform rule applied will create a positioning context. 6437 _getContext: function _getContext() { 6438 var parent; 6439 var element = this.child; 6440 var context = null; 6441 var styles; 6442 6443 // Climb up the treee until reaching the context 6444 while (!context) { 6445 parent = element.parentNode; 6446 if (parent === document.documentElement) { 6447 return null; 6448 } 6449 6450 styles = computedStyle.getAll(parent); 6451 // Element has a transform rule
6452 if (styles[transformJsProperty] !== 'none') { 6453 context = parent; 6454 break; 6455 } 6456 element = parent; 6457 } 6458 return context; 6459 }, 6460 6461 6462 _fix: function _fix() { 6463 var child = this.child; 6464 var childStyle = child.style; 6465 var childStyles = computedStyle.getAll(child); 6466 var left = child.getBoundingClientRect().left; 6467 var width = childStyles.width; 6468 6469 this._$child.trigger('fixto-add'); 6470 6471 this._saveStyles(); 6472 6473 if (document.documentElement.currentStyle) { 6474 // Function for ie<9. When hasLayout is not triggered in ie7, he will report currentStyle as auto, clientWidth as 0. Thus using offsetWidth. 6475 // Opera also falls here 6476 6477 width = child.offsetWidth; 6478 if (childStyles.boxSizing !== 'border-box') { 6479 width = width - (computedStyle.toFloat(childStyles.paddingLeft) + computedStyle.toFloat(childStyles.paddingRight) + computedStyle.toFloat(childStyles.borderLeftWidth) + computedStyle.toFloat(childStyles.borderRightWidth)); 6480 } 6481 6482 width += 'px'; 6483 } 6484 6485 // Ie still fixes the container according to the viewport. 6486 if (fixedPositioningContext) { 6487 var context = this._getContext(); 6488 // if(context) { 6489 // // There is a positioning context. Left should be according to the context. 6490 // left = child.getBoundingClientRect().left - context.getBoundingClientRect().left; 6491 // } else { 6492 left = this._$child.offset().left; 6493 // } 6494 } 6495 6496 this._replacer.replace(); 6497 6498 childStyle.left = 6499 /*left + "px"; */left - computedStyle.toFloat(childStyles.marginLeft) + 'px'; 6500 childStyle.width = width; 6501 6502 childStyle.position = 'fixed'; 6503 if (this.options.toBottom) { 6504 childStyle.top = ''; 6505 childStyle.bottom = this.options.top + computedStyle.toFloat(childStyles.marginBottom) + 'px'; 6506 } else { 6507 childStyle.bottom = ''; 6508 var _top = this.options.top; 6509 6510 if (_top === 0) { 6511 _top = $('body').offset().top; 6512 } 6513 childStyle.top = this._mindtop() + _top - computedStyle.toFloat(childStyles.marginTop) + 'px'; 6514 } 6515 6516 if (this.options.zIndex) { 6517 this.child.style.zIndex = this.options.zIndex; 6518 } 6519 6520 this._$child.addClass(this.options.className); 6521 var animations = this.options.animations; 6522 this._$child.removeClass(animations.allInAnimationsClasses); 6523 if (animations.enabled) { 6524 this._$child.addClass(animations.currentInAnimationClass); 6525 if (!this._inInAnimation) { 6526 this._inInAnimation = true; 6527 this._animationInDebounce(); 6528 } 6529 } 6530 this.fixed = true; 6531 this._$child.trigger('fixto-added'); 6532 }, 6533 _unfixFromScrollListener: function _unfixFromScrollListener() { 6534 this._$child.trigger('fixto-unnfix-from-scroll'); 6535 if (this.options.animations.enabled) { 6536 this._unfixTriggerAnimation(); 6537 } else { 6538 this._unfix(); 6539 } 6540 }, 6541 _getAfterElementOffsetTop: function _getAfterElementOffsetTop() { 6542 var $node = this._$startAfterNode; 6543 var defaultValue = 0; 6544 if ($node && $node.length > 0) { 6545 var elem = $node.get(0); 6546 var distance = 0; 6547 do { 6548 // Increase our distance counter 6549 distance += elem.offsetTop; 6550 6551 // Set the element to it's parent 6552 elem = elem.offsetParent; 6553 } while (elem); 6554 distance = distance < defaultValue ? defaultValue : distance; 6555 return distance; 6556 } 6557 return defaultValue; 6558 }, 6559 6560 _unfix: function _unfix() { 6561 this._replacer.hide(); 6562 var childStyle = this.child.style; 6563 childStyle.position = this._childOriginalPosition; 6564 childStyle.top = this._childOriginalTop; 6565 childStyle.bottom = this._childOriginalBottom; 6566 childStyle.width = this._childOriginalWidth; 6567 childStyle.left = this._childOriginalLeft; 6568 childStyle.zIndex = this._childOriginalZIndex; 6569 if (!this.options.always) { 6570 this._$child.removeClass(this.options.className); 6571 this._$child.trigger('fixto-removed'); 6572 } 6573 this.fixed = false;
6574 }, 6575 _unfixTriggerAnimation: function _unfixTriggerAnimation() { 6576 this._$child.trigger('fixto-animated-remove'); 6577 this._animationInDebounce.flush(); 6578 var animations = this.options.animations; 6579 this._$child.removeClass(animations.allInAnimationsClasses); 6580 this._$child.removeClass(animations.allOutAnimationsClasses); 6581 if (animations.enabled) { 6582 this._$child.addClass(animations.currentOutAnimationClass); 6583 } 6584 this._inOutAnimation = true; 6585 this._animationOutDebounce(); 6586 }, 6587 _saveStyles: function _saveStyles() { 6588 this._animationOutDebounce.flush(); 6589 var childStyle = this.child.style; 6590 this._childOriginalPosition = childStyle.position; 6591 if (this.options.toBottom) { 6592 this._childOriginalTop = ''; 6593 this._childOriginalBottom = childStyle.bottom; 6594 } else { 6595 this._childOriginalTop = childStyle.top; 6596 this._childOriginalBottom = ''; 6597 } 6598 this._childOriginalWidth = childStyle.width; 6599 this._childOriginalLeft = childStyle.left; 6600 this._childOriginalZIndex = childStyle.zIndex; 6601 this._afterElementOffsetTop = this._getAfterElementOffsetTop(); 6602 }, 6603 _onresize: function _onresize() { 6604 this.refresh(); 6605 },
6606 _saveViewportHeight: function _saveViewportHeight() { 6607 // ie8 doesn't support innerHeight 6608 this._viewportHeight = window.innerHeight || document.documentElement.clientHeight; 6609 }, 6610 _stop: function _stop() { 6611 // Unfix the container immediately. 6612 this._unfix(); 6613 // remove event listeners 6614 $(window).unbind('scroll.fixto mousewheel', this._proxied_onscroll); 6615 $(this._toresize).unbind('resize.fixto', this._proxied_onresize); 6616 }, 6617 _start: function _start() { 6618 // Trigger onscroll to have the effect immediately. 6619 this._onscroll(); 6620 6621 // Attach event listeners 6622 $(window).bind('scroll.fixto mousewheel', this._proxied_onscroll); 6623 $(this._toresize).bind('resize.fixto', this._proxied_onresize); 6624 }, 6625 _destroy: function _destroy() { 6626 // Destroy mimic node instance 6627 this._replacer.destroy(); 6628 }, 6629 refresh: function refresh() { 6630 this._saveViewportHeight(); 6631 this._unfix(); 6632 this._onscroll(); 6633 } 6634 }); 6635 6636 function NativeSticky(child, parent, options) { 6637 FixTo.call(this, child, parent, options); 6638 this.start(); 6639 } 6640 6641 NativeSticky.prototype = new FixTo(); 6642 6643 $.extend(NativeSticky.prototype, { 6644 _start: function _start() { 6645 var childStyles = computedStyle.getAll(this.child); 6646 6647 this._childOriginalPosition = childStyles.position; 6648 this._childOriginalTop = childStyles.top; 6649 6650 this.child.style.position = nativeStickyValue; 6651 this.refresh(); 6652 }, 6653 _stop: function _stop() { 6654 this.child.style.position = this._childOriginalPosition; 6655 this.child.style.top = this._childOriginalTop; 6656 }, 6657 refresh: function refresh() { 6658 this.child.style.top = this._mindtop() + this.options.top + 'px'; 6659 } 6660 }); 6661 6662 var fixTo = function fixTo(childElement, parentElement, options) { 6663 if (nativeStickyValue && !options || nativeStickyValue && options && options.useNativeSticky !== false) { 6664 // Position sticky supported and user did not disabled the usage of it. 6665 return new NativeSticky(childElement, parentElement, options); 6666 } else if (fixedPositionValue) { 6667 // Position fixed supported 6668 6669 if (fixedPositioningContext === undefined) { 6670 // We don't know yet if browser creates fixed positioning contexts. Check it. 6671 fixedPositioningContext = checkFixedPositioningContextSupport(); 6672 } 6673 6674 return new FixToContainer(childElement, parentElement, options); 6675 } else { 6676 return 'Neither fixed nor sticky positioning supported'; 6677 } 6678 }; 6679 6680 /* 6681 No support for ie lt 8 6682 */ 6683 6684 if (ieversion < 8) { 6685 fixTo = function fixTo() { 6686 return 'not supported'; 6687 }; 6688 } 6689 6690 // Let it be a jQuery Plugin 6691 $.fn.fixTo = function (targetSelector, options) { 6692 var $targets = $(targetSelector); 6693 6694 var i = 0; 6695 return this.each(function () { 6696 // Check the data of the element. 6697 var instance = $(this).data('fixto-instance'); 6698 6699 // If the element is not bound to an instance, create the instance and save it to elements data. 6700 if (!instance) { 6701 $(this).data('fixto-instance', fixTo(this, $targets[i], options)); 6702 } else { 6703 // If we already have the instance here, expect that targetSelector parameter will be a string 6704 // equal to a public methods name. Run the method on the instance without checking if 6705 // it exists or it is a public method or not. Cause nasty errors when necessary. 6706 var method = targetSelector; 6707 instance[method].call(instance, options); 6708 } 6709 i++; 6710 }); 6711 }; 6712 6713 /* 6714 Expose 6715 */ 6716 6717 return { 6718 FixToContainer: FixToContainer, 6719 fixTo: fixTo, 6720 computedStyle: computedStyle, 6721 mimicNode: mimicNode 6722 }; 6723})(window.jQuery, window, document); 6724 6725/***/ }), 6726/* 159 */ 6727/***/ (function(module, exports, __webpack_require__) { 6728 6729"use strict"; 6730 6731 6732(function ($, Colibri) { 6733 var className = 'overlap'; 6734 6735 var Component = function Component(element, options) { 6736 this.namespace = className; 6737 this.defaults = { 6738 data: {} 6739 }; 6740 6741 // Parent Constructor 6742 Colibri.apply(this, arguments); 6743 6744 // Initialization 6745 this.start(); 6746 }; 6747 6748 Component.prototype = { 6749 start: function start() { 6750 var self = this; 6751 $(window).bind('resize.overlap orientationchange.overlap', function () { 6752 setTimeout(self.resizeCallback.bind(self), 50); 6753 }); 6754 self.resizeCallback(); 6755 }, 6756 stop: function stop() { 6757 $(window).off('.overlap'); 6758 if (this.$sheet) { 6759 document.head.removeChild(this.$sheet); 6760 this.$sheet = null; 6761 } 6762 }, 6763 computePadding: function computePadding() { 6764 if (!this.$sheet) { 6765 this.$sheet = document.createElement('style'); 6766 document.head.appendChild(this.$sheet); 6767 } 6768 var paddingTop = this.$element[0].getBoundingClientRect().height + 'px !important;'; 6769 this.$sheet.innerHTML = '.h-navigation-padding{padding-top:' + paddingTop + '}'; 6770 }, 6771 resizeCallback: function resizeCallback() { 6772 this.computePadding(); 6773 } 6774 }; 6775 Component.inherits(Colibri); 6776 Colibri[className] = Component; 6777 6778 Colibri.Plugin.create(className); 6779 Colibri.Plugin.autoload(className); 6780})(jQuery, Colibri); 6781 6782/***/ }), 6783/* 160 */ 6784/***/ (function(module, exports, __webpack_require__) { 6785 6786"use strict"; 6787 6788 6789(function ($, Colibri) { 6790 var className = 'masonry'; 6791 6792 var Component = function Component(element, options) { 6793 this.namespace = className; 6794 this.defaults = {}; 6795 // Parent Constructor 6796 Colibri.apply(this, arguments); 6797 this.bindedRestart = $.debounce(this.restart.bind(this), 50); 6798 this.start(); 6799 }; 6800 6801 function attributeExistsAndFalse($node, attrName) { 6802 if ($node[0].hasAttribute(attrName) && $node.attr(attrName) != 'true') { 6803 return true; 6804 } 6805 } 6806 function showMasonry($node) { 6807 // check for old version of masonry, atribute not used anymore// 6808 if (attributeExistsAndFalse($node, 'data-show-masonry') || attributeExistsAndFalse($node, 'show-masonry')) { 6809 return false;
6810 } 6811 return true; 6812 } 6813 Component.prototype = { 6814 start: function start() { 6815 var masonry = this.$element; 6816 6817 if (this.opts.data && this.opts.data.targetSelector) { 6818 masonry = this.$element.find(this.opts.data.targetSelector); 6819 } 6820 6821 this.$masonry = masonry; 6822 6823 if (!showMasonry(this.$element)) { 6824 return; 6825 } 6826 6827 this.$masonry.masonry({ 6828 itemSelector: '.masonry-item', 6829 columnWidth: '.masonry-item', 6830 percentPosition: true 6831 }); 6832 this.addEventListeners(); 6833 (function () { 6834 var images = masonry.find('img'); 6835 var loadedImages = 0; 6836 var completed = 0; 6837 6838 function imageLoaded() { 6839 loadedImages++; 6840 if (images.length === loadedImages) { 6841 try { 6842 masonry.data().masonry.layout(); 6843 } catch (e) { 6844 console.error(e); 6845 } 6846 } 6847 } 6848 6849 images.each(function () { 6850 if (this.complete) { 6851 completed++; 6852 imageLoaded(); 6853 } else { 6854 $(this).on('load', imageLoaded); 6855 $(this).on('error', imageLoaded); 6856 } 6857 }); 6858 if (images.length !== completed) { 6859 if (document.readyState == 'complete') { 6860 setTimeout(function () { 6861 masonry.data().masonry.layout(); 6862 }, 10); 6863 } 6864 } 6865 6866 $(window).on('load', function () { 6867 masonry.data().masonry.layout(); 6868 }); 6869 })(); 6870 }, 6871 stop: function stop() { 6872 this.removeEventListeners(); 6873 try { 6874 this.$masonry.masonry('destroy'); 6875 } catch (e) {} 6876 }, 6877 restart: function restart() { 6878 this.stop(); 6879 this.start(); 6880 }, 6881 addEventListeners: function addEventListeners() { 6882 this.$element.on('colibriContainerOpened', this.bindedRestart); 6883 }, 6884 removeEventListeners: function removeEventListeners() { 6885 this.$element.off('colibriContainerOpened', this.bindedRestart); 6886 }, 6887 loadImages: function loadImages() {} 6888 }; 6889 6890 Component.inherits(Colibri); 6891 Colibri[className] = Component; 6892 Colibri.Plugin.create(className); 6893 Colibri.Plugin.autoload(className); 6894})(jQuery, Colibri); 6895 6896/***/ }), 6897/* 161 */ 6898/***/ (function(module, exports, __webpack_require__) { 6899 6900"use strict"; 6901 6902 6903var _keys = __webpack_require__(162); 6904 6905var _keys2 = _interopRequireDefault(_keys); 6906 6907function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 6908 6909(function ($, Colibri) { 6910 var className = 'footer-parallax'; 6911 6912 var Component = function Component(element, options) { 6913 var _this = this; 6914 6915 this.namespace = className; 6916 this.defaults = { 6917 activeClasses: { 6918 header: 'h-footer-parallax-header-class', 6919 content: 'h-footer-parallax-content-class', 6920 footer: 'h-footer-parallax', 6921 container: 'new-stacking-context' 6922 }, 6923 selectors: { 6924 header: ' > .page-header,> .header', 6925 content: '> .page-content,> .content', 6926 container: '#page-top' 6927 } 6928 }; 6929 6930 this.bindedResizeListener = $.debounce(this.resizeListener.bind(this), 100); 6931 6932 // Parent Constructor 6933 Colibri.apply(this, arguments); 6934 // Initialization 6935 this.scriptStarted = false; 6936 this.initMediaById(); 6937 this.start(); 6938 window.addResizeListener(this.$element.get(0), this.bindedResizeListener); 6939 //sometimes the size in the preview is not correct, so i force a refresh to have the correct content margin bottom 6940 setTimeout(function () { 6941 _this.bindedResizeListener(); 6942 }, 5000); 6943 }; 6944 6945 Component.prototype = { 6946 start: function start() { 6947 this.scriptStarted = true; 6948 this.isEnabled = this.$element.attr('data-enabled'); 6949 6950 //backward compatible with the version with no attribute 6951 this.isEnabled = this.isEnabled !== undefined ? this.isEnabled == 'true' : true; 6952 if (this.getCurrentMedia() !== 'desktop' || !this.isEnabled) { 6953 return; 6954 } 6955 var selectors = this.opts.selectors; 6956 var activeClasses = this.opts.activeClasses; 6957 this.$container = $(selectors.container); 6958 this.$content = this.$container.find(selectors.content).first(); 6959 this.$header = this.$container.find(selectors.header).first(); 6960 6961 this.$container.addClass(activeClasses.container); 6962 this.$header.addClass(activeClasses.header); 6963 this.$content.addClass(activeClasses.content); 6964 this.$element.addClass(activeClasses.footer); 6965 6966 this.updateSiblingStyle(); 6967 }, 6968 stop: function stop() { 6969 this.scriptStarted = false;
6970 var activeClasses = this.opts.activeClasses; 6971 if (!this.$container) { 6972 return; 6973 } 6974 this.$container.removeClass(activeClasses.container); 6975 this.$header.removeClass(activeClasses.header); 6976 this.$content.removeClass(activeClasses.content); 6977 this.$element.removeClass(activeClasses.footer); 6978 this.$content.css('margin-bottom', ''); 6979 }, 6980 restart: function restart() { 6981 this.stop(); 6982 this.start(); 6983 }, 6984 resizeListener: function resizeListener() { 6985 // if (!this.resizeInited) { 6986 // this.resizeInited = true; 6987 // return; 6988 // } 6989 this.updateSiblingStyle(); 6990 if (this.getCurrentMedia() !== 'desktop') { 6991 this.stop(); 6992 } else { 6993 if (this.isEnabled && !this.footerParallaxStarted()) { 6994 this.start(); 6995 } 6996 } 6997 }, 6998 footerParallaxStarted: function footerParallaxStarted() { 6999 return this.scriptStarted; 7000 }, 7001 initMediaById: function initMediaById() { 7002 this.mediaById = { 7003 desktop: { 7004 min: 1024 7005 }, 7006 tablet: { 7007 min: 768, 7008 max: 1023 7009 }, 7010 mobile: { 7011 max: 767 7012 } 7013 }; 7014 }, 7015 isDragging: function isDragging() { 7016 return !!document.querySelector('body.h-ui-dragging'); 7017 }, 7018 getCurrentMedia: function getCurrentMedia() { 7019 var _this2 = this; 7020 7021 var windowWidth = window.innerWidth; 7022 var media = null; 7023 (0, _keys2.default)(this.mediaById).forEach(function (mediaId) { 7024 var limits = _this2.mediaById[mediaId]; 7025 if ((!limits.min || limits.min && windowWidth >= limits.min) && (!limits.max || limits.max && windowWidth <= limits.max)) { 7026 media = mediaId; 7027 } 7028 }); 7029 return media; 7030 }, 7031 updateSiblingStyle: function updateSiblingStyle() { 7032 7033 if (!this.$content) { 7034 return; 7035 } 7036 7037 if (!this.footerParallaxStarted()) { 7038 return; 7039 } 7040 var footerHeight = this.$element.outerHeight(); 7041 this.$content.css('margin-bottom', footerHeight + 'px'); 7042 } 7043 }; 7044 7045 Component.inherits(Colibri); 7046 Colibri[className] = Component; 7047 Colibri.Plugin.create(className); 7048 Colibri.Plugin.autoload(className); 7049})(jQuery, Colibri); 7050 7051/***/ }), 7052/* 162 */ 7053/***/ (function(module, exports, __webpack_require__) { 7054 7055module.exports = { "default": __webpack_require__(163), __esModule: true }; 7056 7057/***/ }), 7058/* 163 */ 7059/***/ (function(module, exports, __webpack_require__) { 7060 7061__webpack_require__(164); 7062module.exports = __webpack_require__(3).Object.keys; 7063 7064 7065/***/ }), 7066/* 164 */ 7067/***/ (function(module, exports, __webpack_require__) { 7068 7069// 19.1.2.14 Object.keys(O) 7070var toObject = __webpack_require__(41); 7071var $keys = __webpack_require__(20); 7072 7073__webpack_require__(90)('keys', function () { 7074 return function keys(it) { 7075 return $keys(toObject(it)); 7076 }; 7077}); 7078 7079 7080/***/ }), 7081/* 165 */ 7082/***/ (function(module, exports) { 7083 7084// removed by extract-text-webpack-plugin 7085 7086/***/ }), 7087/* 166 */ 7088/***/ (function(module, exports) { 7089 7090// removed by extract-text-webpack-plugin 7091 7092/***/ }), 7093/* 167 */ 7094/***/ (function(module, exports) { 7095 7096// removed by extract-text-webpack-plugin 7097 7098/***/ }), 7099/* 168 */ 7100/***/ (function(module, exports) { 7101 7102// removed by extract-text-webpack-plugin 7103 7104/***/ }) 7105/******/ ]);
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.