vendor: 9,288 bytes, lines 1-290
1/******/ (function() { // webpackBootstrap 2/******/ var __webpack_modules__ = ({ 3 4/***/ 9662: 5/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 6 7var isCallable = __webpack_require__(614); 8var tryToString = __webpack_require__(6330); 9 10var $TypeError = TypeError; 11 12// `Assert: IsCallable(argument) is true` 13module.exports = function (argument) { 14 if (isCallable(argument)) return argument; 15 throw $TypeError(tryToString(argument) + ' is not a function'); 16}; 17 18 19/***/ }), 20 21/***/ 9483: 22/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 23 24var isConstructor = __webpack_require__(4411); 25var tryToString = __webpack_require__(6330); 26 27var $TypeError = TypeError; 28 29// `Assert: IsConstructor(argument) is true` 30module.exports = function (argument) { 31 if (isConstructor(argument)) return argument; 32 throw $TypeError(tryToString(argument) + ' is not a constructor'); 33}; 34 35 36/***/ }), 37 38/***/ 6077: 39/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 40 41var isCallable = __webpack_require__(614); 42 43var $String = String; 44var $TypeError = TypeError; 45 46module.exports = function (argument) { 47 if (typeof argument == 'object' || isCallable(argument)) return argument; 48 throw $TypeError("Can't set " + $String(argument) + ' as a prototype'); 49}; 50 51 52/***/ }), 53 54/***/ 1223: 55/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 56 57var wellKnownSymbol = __webpack_require__(5112); 58var create = __webpack_require__(30); 59var defineProperty = (__webpack_require__(3070).f); 60 61var UNSCOPABLES = wellKnownSymbol('unscopables'); 62var ArrayPrototype = Array.prototype; 63 64// Array.prototype[@@unscopables] 65// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables 66if (ArrayPrototype[UNSCOPABLES] == undefined) { 67 defineProperty(ArrayPrototype, UNSCOPABLES, { 68 configurable: true, 69 value: create(null) 70 }); 71} 72 73// add a key to Array.prototype[@@unscopables] 74module.exports = function (key) { 75 ArrayPrototype[UNSCOPABLES][key] = true; 76}; 77 78 79/***/ }), 80 81/***/ 1530: 82/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 83 84"use strict"; 85 86var charAt = (__webpack_require__(8710).charAt); 87 88// `AdvanceStringIndex` abstract operation 89// https://tc39.es/ecma262/#sec-advancestringindex 90module.exports = function (S, index, unicode) { 91 return index + (unicode ? charAt(S, index).length : 1); 92}; 93 94 95/***/ }), 96 97/***/ 5787: 98/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 99 100var isPrototypeOf = __webpack_require__(7976); 101 102var $TypeError = TypeError; 103 104module.exports = function (it, Prototype) { 105 if (isPrototypeOf(Prototype, it)) return it; 106 throw $TypeError('Incorrect invocation'); 107}; 108 109 110/***/ }), 111 112/***/ 9670: 113/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 114 115var isObject = __webpack_require__(111); 116 117var $String = String; 118var $TypeError = TypeError; 119 120// `Assert: Type(argument) is Object` 121module.exports = function (argument) { 122 if (isObject(argument)) return argument; 123 throw $TypeError($String(argument) + ' is not an object'); 124}; 125 126 127/***/ }), 128 129/***/ 8533: 130/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 131 132"use strict"; 133 134var $forEach = (__webpack_require__(2092).forEach); 135var arrayMethodIsStrict = __webpack_require__(9341); 136 137var STRICT_METHOD = arrayMethodIsStrict('forEach'); 138 139// `Array.prototype.forEach` method implementation 140// https://tc39.es/ecma262/#sec-array.prototype.foreach 141module.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) { 142 return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); 143// eslint-disable-next-line es/no-array-prototype-foreach -- safe 144} : [].forEach; 145 146 147/***/ }), 148 149/***/ 8457: 150/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 151 152"use strict"; 153 154var bind = __webpack_require__(9974); 155var call = __webpack_require__(6916); 156var toObject = __webpack_require__(7908); 157var callWithSafeIterationClosing = __webpack_require__(3411); 158var isArrayIteratorMethod = __webpack_require__(7659); 159var isConstructor = __webpack_require__(4411); 160var lengthOfArrayLike = __webpack_require__(6244); 161var createProperty = __webpack_require__(6135); 162var getIterator = __webpack_require__(4121); 163var getIteratorMethod = __webpack_require__(1246); 164 165var $Array = Array; 166 167// `Array.from` method implementation 168// https://tc39.es/ecma262/#sec-array.from 169module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { 170 var O = toObject(arrayLike); 171 var IS_CONSTRUCTOR = isConstructor(this); 172 var argumentsLength = arguments.length; 173 var mapfn = argumentsLength > 1 ? arguments[1] : undefined; 174 var mapping = mapfn !== undefined; 175 if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined); 176 var iteratorMethod = getIteratorMethod(O); 177 var index = 0; 178 var length, result, step, iterator, next, value; 179 // if the target is not iterable or it's an array with the default iterator - use a simple case 180 if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) { 181 iterator = getIterator(O, iteratorMethod); 182 next = iterator.next; 183 result = IS_CONSTRUCTOR ? new this() : []; 184 for (;!(step = call(next, iterator)).done; index++) { 185 value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value; 186 createProperty(result, index, value); 187 } 188 } else { 189 length = lengthOfArrayLike(O); 190 result = IS_CONSTRUCTOR ? new this(length) : $Array(length); 191 for (;length > index; index++) { 192 value = mapping ? mapfn(O[index], index) : O[index]; 193 createProperty(result, index, value); 194 } 195 } 196 result.length = index; 197 return result; 198}; 199 200 201/***/ }), 202 203/***/ 1318: 204/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 205 206var toIndexedObject = __webpack_require__(5656); 207var toAbsoluteIndex = __webpack_require__(1400); 208var lengthOfArrayLike = __webpack_require__(6244); 209 210// `Array.prototype.{ indexOf, includes }` methods implementation 211var createMethod = function (IS_INCLUDES) { 212 return function ($this, el, fromIndex) { 213 var O = toIndexedObject($this); 214 var length = lengthOfArrayLike(O); 215 var index = toAbsoluteIndex(fromIndex, length); 216 var value; 217 // Array#includes uses SameValueZero equality algorithm 218 // eslint-disable-next-line no-self-compare -- NaN check 219 if (IS_INCLUDES && el != el) while (length > index) { 220 value = O[index++]; 221 // eslint-disable-next-line no-self-compare -- NaN check 222 if (value != value) return true; 223 // Array#indexOf ignores holes, Array#includes - not 224 } else for (;length > index; index++) { 225 if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0; 226 } return !IS_INCLUDES && -1; 227 }; 228}; 229 230module.exports = { 231 // `Array.prototype.includes` method 232 // https://tc39.es/ecma262/#sec-array.prototype.includes 233 includes: createMethod(true), 234 // `Array.prototype.indexOf` method 235 // https://tc39.es/ecma262/#sec-array.prototype.indexof 236 indexOf: createMethod(false) 237}; 238 239 240/***/ }), 241 242/***/ 2092: 243/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 244 245var bind = __webpack_require__(9974); 246var uncurryThis = __webpack_require__(1702); 247var IndexedObject = __webpack_require__(8361); 248var toObject = __webpack_require__(7908); 249var lengthOfArrayLike = __webpack_require__(6244); 250var arraySpeciesCreate = __webpack_require__(5417); 251 252var push = uncurryThis([].push); 253 254// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation 255var createMethod = function (TYPE) { 256 var IS_MAP = TYPE == 1; 257 var IS_FILTER = TYPE == 2; 258 var IS_SOME = TYPE == 3; 259 var IS_EVERY = TYPE == 4; 260 var IS_FIND_INDEX = TYPE == 6; 261 var IS_FILTER_REJECT = TYPE == 7; 262 var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; 263 return function ($this, callbackfn, that, specificCreate) { 264 var O = toObject($this); 265 var self = IndexedObject(O); 266 var boundFunction = bind(callbackfn, that); 267 var length = lengthOfArrayLike(self); 268 var index = 0; 269 var create = specificCreate || arraySpeciesCreate; 270 var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined; 271 var value, result; 272 for (;length > index; index++) if (NO_HOLES || index in self) { 273 value = self[index]; 274 result = boundFunction(value, index, O); 275 if (TYPE) { 276 if (IS_MAP) target[index] = result; // map 277 else if (result) switch (TYPE) { 278 case 3: return true; // some 279 case 5: return value; // find 280 case 6: return index; // findIndex 281 case 2: push(target, value); // filter 282 } else switch (TYPE) { 283 case 4: return false; // every 284 case 7: push(target, value); // filterReject 285 } 286 } 287 } 288 return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target; 289 }; 290};
vendor: 6,425 bytes, lines 291-513
291 292module.exports = { 293 // `Array.prototype.forEach` method 294 // https://tc39.es/ecma262/#sec-array.prototype.foreach 295 forEach: createMethod(0), 296 // `Array.prototype.map` method 297 // https://tc39.es/ecma262/#sec-array.prototype.map 298 map: createMethod(1), 299 // `Array.prototype.filter` method 300 // https://tc39.es/ecma262/#sec-array.prototype.filter 301 filter: createMethod(2), 302 // `Array.prototype.some` method 303 // https://tc39.es/ecma262/#sec-array.prototype.some 304 some: createMethod(3), 305 // `Array.prototype.every` method 306 // https://tc39.es/ecma262/#sec-array.prototype.every 307 every: createMethod(4), 308 // `Array.prototype.find` method 309 // https://tc39.es/ecma262/#sec-array.prototype.find 310 find: createMethod(5), 311 // `Array.prototype.findIndex` method 312 // https://tc39.es/ecma262/#sec-array.prototype.findIndex 313 findIndex: createMethod(6), 314 // `Array.prototype.filterReject` method 315 // https://github.com/tc39/proposal-array-filtering 316 filterReject: createMethod(7) 317}; 318 319 320/***/ }), 321 322/***/ 1194: 323/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 324 325var fails = __webpack_require__(7293); 326var wellKnownSymbol = __webpack_require__(5112); 327var V8_VERSION = __webpack_require__(7392); 328 329var SPECIES = wellKnownSymbol('species'); 330 331module.exports = function (METHOD_NAME) { 332 // We can't use this feature detection in V8 since it causes 333 // deoptimization and serious performance degradation 334 // https://github.com/zloirock/core-js/issues/677 335 return V8_VERSION >= 51 || !fails(function () { 336 var array = []; 337 var constructor = array.constructor = {}; 338 constructor[SPECIES] = function () { 339 return { foo: 1 }; 340 }; 341 return array[METHOD_NAME](Boolean).foo !== 1; 342 }); 343}; 344 345 346/***/ }), 347 348/***/ 9341: 349/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 350 351"use strict"; 352 353var fails = __webpack_require__(7293); 354 355module.exports = function (METHOD_NAME, argument) { 356 var method = [][METHOD_NAME]; 357 return !!method && fails(function () { 358 // eslint-disable-next-line no-useless-call -- required for testing 359 method.call(null, argument || function () { return 1; }, 1); 360 }); 361}; 362 363 364/***/ }), 365 366/***/ 3671: 367/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 368 369var aCallable = __webpack_require__(9662); 370var toObject = __webpack_require__(7908); 371var IndexedObject = __webpack_require__(8361); 372var lengthOfArrayLike = __webpack_require__(6244); 373 374var $TypeError = TypeError; 375 376// `Array.prototype.{ reduce, reduceRight }` methods implementation 377var createMethod = function (IS_RIGHT) { 378 return function (that, callbackfn, argumentsLength, memo) { 379 aCallable(callbackfn); 380 var O = toObject(that); 381 var self = IndexedObject(O); 382 var length = lengthOfArrayLike(O); 383 var index = IS_RIGHT ? length - 1 : 0; 384 var i = IS_RIGHT ? -1 : 1; 385 if (argumentsLength < 2) while (true) { 386 if (index in self) { 387 memo = self[index]; 388 index += i; 389 break; 390 } 391 index += i; 392 if (IS_RIGHT ? index < 0 : length <= index) { 393 throw $TypeError('Reduce of empty array with no initial value'); 394 } 395 } 396 for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) { 397 memo = callbackfn(memo, self[index], index, O); 398 } 399 return memo; 400 }; 401}; 402 403module.exports = { 404 // `Array.prototype.reduce` method 405 // https://tc39.es/ecma262/#sec-array.prototype.reduce 406 left: createMethod(false), 407 // `Array.prototype.reduceRight` method 408 // https://tc39.es/ecma262/#sec-array.prototype.reduceright 409 right: createMethod(true) 410}; 411 412 413/***/ }), 414 415/***/ 1589: 416/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 417 418var toAbsoluteIndex = __webpack_require__(1400); 419var lengthOfArrayLike = __webpack_require__(6244); 420var createProperty = __webpack_require__(6135); 421 422var $Array = Array; 423var max = Math.max; 424 425module.exports = function (O, start, end) { 426 var length = lengthOfArrayLike(O); 427 var k = toAbsoluteIndex(start, length); 428 var fin = toAbsoluteIndex(end === undefined ? length : end, length); 429 var result = $Array(max(fin - k, 0)); 430 for (var n = 0; k < fin; k++, n++) createProperty(result, n, O[k]); 431 result.length = n; 432 return result; 433}; 434 435 436/***/ }), 437 438/***/ 206: 439/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 440 441var uncurryThis = __webpack_require__(1702); 442 443module.exports = uncurryThis([].slice); 444 445 446/***/ }), 447 448/***/ 7475: 449/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 450 451var isArray = __webpack_require__(3157); 452var isConstructor = __webpack_require__(4411); 453var isObject = __webpack_require__(111); 454var wellKnownSymbol = __webpack_require__(5112); 455 456var SPECIES = wellKnownSymbol('species'); 457var $Array = Array; 458 459// a part of `ArraySpeciesCreate` abstract operation 460// https://tc39.es/ecma262/#sec-arrayspeciescreate 461module.exports = function (originalArray) { 462 var C; 463 if (isArray(originalArray)) { 464 C = originalArray.constructor; 465 // cross-realm fallback 466 if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined; 467 else if (isObject(C)) { 468 C = C[SPECIES]; 469 if (C === null) C = undefined; 470 } 471 } return C === undefined ? $Array : C; 472}; 473 474 475/***/ }), 476 477/***/ 5417: 478/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 479 480var arraySpeciesConstructor = __webpack_require__(7475); 481 482// `ArraySpeciesCreate` abstract operation 483// https://tc39.es/ecma262/#sec-arrayspeciescreate 484module.exports = function (originalArray, length) { 485 return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length); 486}; 487 488 489/***/ }), 490 491/***/ 3411: 492/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 493 494var anObject = __webpack_require__(9670); 495var iteratorClose = __webpack_require__(9212); 496 497// call something on iterator step with safe closing on error 498module.exports = function (iterator, fn, value, ENTRIES) { 499 try { 500 return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value); 501 } catch (error) { 502 iteratorClose(iterator, 'throw', error); 503 } 504}; 505 506 507/***/ }), 508 509/***/ 7072: 510/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 511 512var wellKnownSymbol = __webpack_require__(5112); 513
vendor: 8,692 bytes, lines 514-835
514var ITERATOR = wellKnownSymbol('iterator'); 515var SAFE_CLOSING = false; 516 517try { 518 var called = 0; 519 var iteratorWithReturn = { 520 next: function () { 521 return { done: !!called++ }; 522 }, 523 'return': function () { 524 SAFE_CLOSING = true; 525 } 526 }; 527 iteratorWithReturn[ITERATOR] = function () { 528 return this; 529 }; 530 // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing 531 Array.from(iteratorWithReturn, function () { throw 2; }); 532} catch (error) { /* empty */ } 533 534module.exports = function (exec, SKIP_CLOSING) { 535 if (!SKIP_CLOSING && !SAFE_CLOSING) return false; 536 var ITERATION_SUPPORT = false; 537 try { 538 var object = {}; 539 object[ITERATOR] = function () { 540 return { 541 next: function () { 542 return { done: ITERATION_SUPPORT = true }; 543 } 544 }; 545 }; 546 exec(object); 547 } catch (error) { /* empty */ } 548 return ITERATION_SUPPORT; 549}; 550 551 552/***/ }), 553 554/***/ 4326: 555/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 556 557var uncurryThis = __webpack_require__(1702); 558 559var toString = uncurryThis({}.toString); 560var stringSlice = uncurryThis(''.slice); 561 562module.exports = function (it) { 563 return stringSlice(toString(it), 8, -1); 564}; 565 566 567/***/ }), 568 569/***/ 648: 570/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 571 572var TO_STRING_TAG_SUPPORT = __webpack_require__(1694); 573var isCallable = __webpack_require__(614); 574var classofRaw = __webpack_require__(4326); 575var wellKnownSymbol = __webpack_require__(5112); 576 577var TO_STRING_TAG = wellKnownSymbol('toStringTag'); 578var $Object = Object; 579 580// ES3 wrong here 581var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments'; 582 583// fallback for IE11 Script Access Denied error 584var tryGet = function (it, key) { 585 try { 586 return it[key]; 587 } catch (error) { /* empty */ } 588}; 589 590// getting tag from ES6+ `Object.prototype.toString` 591module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) { 592 var O, tag, result; 593 return it === undefined ? 'Undefined' : it === null ? 'Null' 594 // @@toStringTag case 595 : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag 596 // builtinTag case 597 : CORRECT_ARGUMENTS ? classofRaw(O) 598 // ES3 arguments fallback 599 : (result = classofRaw(O)) == 'Object' && isCallable(O.callee) ? 'Arguments' : result; 600}; 601 602 603/***/ }), 604 605/***/ 9920: 606/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 607 608var hasOwn = __webpack_require__(2597); 609var ownKeys = __webpack_require__(3887); 610var getOwnPropertyDescriptorModule = __webpack_require__(1236); 611var definePropertyModule = __webpack_require__(3070); 612 613module.exports = function (target, source, exceptions) { 614 var keys = ownKeys(source); 615 var defineProperty = definePropertyModule.f; 616 var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; 617 for (var i = 0; i < keys.length; i++) { 618 var key = keys[i]; 619 if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) { 620 defineProperty(target, key, getOwnPropertyDescriptor(source, key)); 621 } 622 } 623}; 624 625 626/***/ }), 627 628/***/ 4964: 629/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 630 631var wellKnownSymbol = __webpack_require__(5112); 632 633var MATCH = wellKnownSymbol('match'); 634 635module.exports = function (METHOD_NAME) { 636 var regexp = /./; 637 try { 638 '/./'[METHOD_NAME](regexp); 639 } catch (error1) { 640 try { 641 regexp[MATCH] = false; 642 return '/./'[METHOD_NAME](regexp); 643 } catch (error2) { /* empty */ } 644 } return false; 645}; 646 647 648/***/ }), 649 650/***/ 8544: 651/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 652 653var fails = __webpack_require__(7293); 654 655module.exports = !fails(function () { 656 function F() { /* empty */ } 657 F.prototype.constructor = null; 658 // eslint-disable-next-line es/no-object-getprototypeof -- required for testing 659 return Object.getPrototypeOf(new F()) !== F.prototype; 660}); 661 662 663/***/ }), 664 665/***/ 6178: 666/***/ (function(module) { 667 668// `CreateIterResultObject` abstract operation 669// https://tc39.es/ecma262/#sec-createiterresultobject 670module.exports = function (value, done) { 671 return { value: value, done: done }; 672}; 673 674 675/***/ }), 676 677/***/ 8880: 678/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 679 680var DESCRIPTORS = __webpack_require__(9781); 681var definePropertyModule = __webpack_require__(3070); 682var createPropertyDescriptor = __webpack_require__(9114); 683 684module.exports = DESCRIPTORS ? function (object, key, value) { 685 return definePropertyModule.f(object, key, createPropertyDescriptor(1, value)); 686} : function (object, key, value) { 687 object[key] = value; 688 return object; 689}; 690 691 692/***/ }), 693 694/***/ 9114: 695/***/ (function(module) { 696 697module.exports = function (bitmap, value) { 698 return { 699 enumerable: !(bitmap & 1), 700 configurable: !(bitmap & 2), 701 writable: !(bitmap & 4), 702 value: value 703 }; 704}; 705 706 707/***/ }), 708 709/***/ 6135: 710/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 711 712"use strict"; 713 714var toPropertyKey = __webpack_require__(4948); 715var definePropertyModule = __webpack_require__(3070); 716var createPropertyDescriptor = __webpack_require__(9114); 717 718module.exports = function (object, key, value) { 719 var propertyKey = toPropertyKey(key); 720 if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value)); 721 else object[propertyKey] = value; 722}; 723 724 725/***/ }), 726 727/***/ 8709: 728/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 729 730"use strict"; 731 732var anObject = __webpack_require__(9670); 733var ordinaryToPrimitive = __webpack_require__(2140); 734 735var $TypeError = TypeError; 736 737// `Date.prototype[@@toPrimitive](hint)` method implementation 738// https://tc39.es/ecma262/#sec-date.prototype-@@toprimitive 739module.exports = function (hint) { 740 anObject(this); 741 if (hint === 'string' || hint === 'default') hint = 'string'; 742 else if (hint !== 'number') throw $TypeError('Incorrect hint'); 743 return ordinaryToPrimitive(this, hint); 744}; 745 746 747/***/ }), 748 749/***/ 7045: 750/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 751 752var makeBuiltIn = __webpack_require__(6339); 753var defineProperty = __webpack_require__(3070); 754 755module.exports = function (target, name, descriptor) { 756 if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true }); 757 if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true }); 758 return defineProperty.f(target, name, descriptor); 759}; 760 761 762/***/ }), 763 764/***/ 8052: 765/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 766 767var isCallable = __webpack_require__(614); 768var definePropertyModule = __webpack_require__(3070); 769var makeBuiltIn = __webpack_require__(6339); 770var defineGlobalProperty = __webpack_require__(3072); 771 772module.exports = function (O, key, value, options) { 773 if (!options) options = {}; 774 var simple = options.enumerable; 775 var name = options.name !== undefined ? options.name : key; 776 if (isCallable(value)) makeBuiltIn(value, name, options); 777 if (options.global) { 778 if (simple) O[key] = value; 779 else defineGlobalProperty(key, value); 780 } else { 781 try { 782 if (!options.unsafe) delete O[key]; 783 else if (O[key]) simple = true; 784 } catch (error) { /* empty */ } 785 if (simple) O[key] = value; 786 else definePropertyModule.f(O, key, { 787 value: value, 788 enumerable: false, 789 configurable: !options.nonConfigurable, 790 writable: !options.nonWritable 791 }); 792 } return O; 793}; 794 795 796/***/ }), 797 798/***/ 3072: 799/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 800 801var global = __webpack_require__(7854); 802 803// eslint-disable-next-line es/no-object-defineproperty -- safe 804var defineProperty = Object.defineProperty; 805 806module.exports = function (key, value) { 807 try { 808 defineProperty(global, key, { value: value, configurable: true, writable: true }); 809 } catch (error) { 810 global[key] = value; 811 } return value; 812}; 813 814 815/***/ }), 816 817/***/ 9781: 818/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 819 820var fails = __webpack_require__(7293); 821 822// Detect IE8's incomplete defineProperty implementation 823module.exports = !fails(function () { 824 // eslint-disable-next-line es/no-object-defineproperty -- required for testing 825 return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7; 826}); 827 828 829/***/ }), 830 831/***/ 4154: 832/***/ (function(module) { 833 834var documentAll = typeof document == 'object' && document.all; 835
vendor: 5,132 bytes, lines 836-1048
836// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot 837// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing 838var IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined; 839 840module.exports = { 841 all: documentAll, 842 IS_HTMLDDA: IS_HTMLDDA 843}; 844 845 846/***/ }), 847 848/***/ 317: 849/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 850 851var global = __webpack_require__(7854); 852var isObject = __webpack_require__(111); 853 854var document = global.document; 855// typeof document.createElement is 'object' in old IE 856var EXISTS = isObject(document) && isObject(document.createElement); 857 858module.exports = function (it) { 859 return EXISTS ? document.createElement(it) : {}; 860}; 861 862 863/***/ }), 864 865/***/ 7207: 866/***/ (function(module) { 867 868var $TypeError = TypeError; 869var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991 870 871module.exports = function (it) { 872 if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded'); 873 return it; 874}; 875 876 877/***/ }), 878 879/***/ 8324: 880/***/ (function(module) { 881 882// iterable DOM collections 883// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods 884module.exports = { 885 CSSRuleList: 0, 886 CSSStyleDeclaration: 0, 887 CSSValueList: 0, 888 ClientRectList: 0, 889 DOMRectList: 0, 890 DOMStringList: 0, 891 DOMTokenList: 1, 892 DataTransferItemList: 0, 893 FileList: 0, 894 HTMLAllCollection: 0, 895 HTMLCollection: 0, 896 HTMLFormElement: 0, 897 HTMLSelectElement: 0, 898 MediaList: 0, 899 MimeTypeArray: 0, 900 NamedNodeMap: 0, 901 NodeList: 1, 902 PaintRequestList: 0, 903 Plugin: 0, 904 PluginArray: 0, 905 SVGLengthList: 0, 906 SVGNumberList: 0, 907 SVGPathSegList: 0, 908 SVGPointList: 0, 909 SVGStringList: 0, 910 SVGTransformList: 0, 911 SourceBufferList: 0, 912 StyleSheetList: 0, 913 TextTrackCueList: 0, 914 TextTrackList: 0, 915 TouchList: 0 916}; 917 918 919/***/ }), 920 921/***/ 8509: 922/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 923 924// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList` 925var documentCreateElement = __webpack_require__(317); 926 927var classList = documentCreateElement('span').classList; 928var DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype; 929 930module.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype; 931 932 933/***/ }), 934 935/***/ 7871: 936/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 937 938var IS_DENO = __webpack_require__(3823); 939var IS_NODE = __webpack_require__(5268); 940 941module.exports = !IS_DENO && !IS_NODE 942 && typeof window == 'object' 943 && typeof document == 'object'; 944 945 946/***/ }), 947 948/***/ 3823: 949/***/ (function(module) { 950 951/* global Deno -- Deno case */ 952module.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object'; 953 954 955/***/ }), 956 957/***/ 1528: 958/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 959 960var userAgent = __webpack_require__(8113); 961 962module.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined'; 963 964 965/***/ }), 966 967/***/ 6833: 968/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 969 970var userAgent = __webpack_require__(8113); 971 972// eslint-disable-next-line redos/no-vulnerable -- safe 973module.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent); 974 975 976/***/ }), 977 978/***/ 5268: 979/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 980 981var classof = __webpack_require__(4326); 982 983module.exports = typeof process != 'undefined' && classof(process) == 'process'; 984 985 986/***/ }), 987 988/***/ 1036: 989/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 990 991var userAgent = __webpack_require__(8113); 992 993module.exports = /web0s(?!.*chrome)/i.test(userAgent); 994 995 996/***/ }), 997 998/***/ 8113: 999/***/ (function(module) { 1000 1001module.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || ''; 1002 1003 1004/***/ }), 1005 1006/***/ 7392: 1007/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1008 1009var global = __webpack_require__(7854); 1010var userAgent = __webpack_require__(8113); 1011 1012var process = global.process; 1013var Deno = global.Deno; 1014var versions = process && process.versions || Deno && Deno.version; 1015var v8 = versions && versions.v8; 1016var match, version; 1017 1018if (v8) { 1019 match = v8.split('.'); 1020 // in old Chrome, versions of V8 isn't V8 = Chrome / 10 1021 // but their correct versions are not interesting for us 1022 version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]); 1023} 1024 1025// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0` 1026// so check `userAgent` even if `.v8` exists, but 0 1027if (!version && userAgent) { 1028 match = userAgent.match(/Edge\/(\d+)/); 1029 if (!match || match[1] >= 74) { 1030 match = userAgent.match(/Chrome\/(\d+)/); 1031 if (match) version = +match[1]; 1032 } 1033} 1034 1035module.exports = version; 1036 1037 1038/***/ }), 1039 1040/***/ 748: 1041/***/ (function(module) { 1042 1043// IE8- don't enum bug keys 1044module.exports = [ 1045 'constructor', 1046 'hasOwnProperty', 1047 'isPrototypeOf', 1048 'propertyIsEnumerable',
vendor: 5,569 bytes, lines 1049-1202
1049 'toLocaleString', 1050 'toString', 1051 'valueOf' 1052]; 1053 1054 1055/***/ }), 1056 1057/***/ 2109: 1058/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1059 1060var global = __webpack_require__(7854); 1061var getOwnPropertyDescriptor = (__webpack_require__(1236).f); 1062var createNonEnumerableProperty = __webpack_require__(8880); 1063var defineBuiltIn = __webpack_require__(8052); 1064var defineGlobalProperty = __webpack_require__(3072); 1065var copyConstructorProperties = __webpack_require__(9920); 1066var isForced = __webpack_require__(4705); 1067 1068/* 1069 options.target - name of the target object 1070 options.global - target is the global object 1071 options.stat - export as static methods of target 1072 options.proto - export as prototype methods of target 1073 options.real - real prototype method for the `pure` version 1074 options.forced - export even if the native feature is available 1075 options.bind - bind methods to the target, required for the `pure` version 1076 options.wrap - wrap constructors to preventing global pollution, required for the `pure` version 1077 options.unsafe - use the simple assignment of property instead of delete + defineProperty 1078 options.sham - add a flag to not completely full polyfills 1079 options.enumerable - export as enumerable property 1080 options.dontCallGetSet - prevent calling a getter on target 1081 options.name - the .name of the function if it does not match the key 1082*/ 1083module.exports = function (options, source) { 1084 var TARGET = options.target; 1085 var GLOBAL = options.global; 1086 var STATIC = options.stat; 1087 var FORCED, target, key, targetProperty, sourceProperty, descriptor; 1088 if (GLOBAL) { 1089 target = global; 1090 } else if (STATIC) { 1091 target = global[TARGET] || defineGlobalProperty(TARGET, {}); 1092 } else { 1093 target = (global[TARGET] || {}).prototype; 1094 } 1095 if (target) for (key in source) { 1096 sourceProperty = source[key]; 1097 if (options.dontCallGetSet) { 1098 descriptor = getOwnPropertyDescriptor(target, key); 1099 targetProperty = descriptor && descriptor.value; 1100 } else targetProperty = target[key]; 1101 FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced); 1102 // contained in target 1103 if (!FORCED && targetProperty !== undefined) { 1104 if (typeof sourceProperty == typeof targetProperty) continue; 1105 copyConstructorProperties(sourceProperty, targetProperty); 1106 } 1107 // add a flag to not completely full polyfills 1108 if (options.sham || (targetProperty && targetProperty.sham)) { 1109 createNonEnumerableProperty(sourceProperty, 'sham', true); 1110 } 1111 defineBuiltIn(target, key, sourceProperty, options); 1112 } 1113}; 1114 1115 1116/***/ }), 1117 1118/***/ 7293: 1119/***/ (function(module) { 1120 1121module.exports = function (exec) { 1122 try { 1123 return !!exec(); 1124 } catch (error) { 1125 return true; 1126 } 1127}; 1128 1129 1130/***/ }), 1131 1132/***/ 7007: 1133/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1134 1135"use strict"; 1136 1137// TODO: Remove from `core-js@4` since it's moved to entry points 1138__webpack_require__(4916); 1139var uncurryThis = __webpack_require__(1470); 1140var defineBuiltIn = __webpack_require__(8052); 1141var regexpExec = __webpack_require__(2261); 1142var fails = __webpack_require__(7293); 1143var wellKnownSymbol = __webpack_require__(5112); 1144var createNonEnumerableProperty = __webpack_require__(8880); 1145 1146var SPECIES = wellKnownSymbol('species'); 1147var RegExpPrototype = RegExp.prototype; 1148 1149module.exports = function (KEY, exec, FORCED, SHAM) { 1150 var SYMBOL = wellKnownSymbol(KEY); 1151 1152 var DELEGATES_TO_SYMBOL = !fails(function () { 1153 // String methods call symbol-named RegEp methods 1154 var O = {}; 1155 O[SYMBOL] = function () { return 7; }; 1156 return ''[KEY](O) != 7; 1157 }); 1158 1159 var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () { 1160 // Symbol-named RegExp methods call .exec 1161 var execCalled = false; 1162 var re = /a/; 1163 1164 if (KEY === 'split') { 1165 // We can't use real regex here since it causes deoptimization 1166 // and serious performance degradation in V8 1167 // https://github.com/zloirock/core-js/issues/306 1168 re = {}; 1169 // RegExp[@@split] doesn't call the regex's exec method, but first creates 1170 // a new one. We need to return the patched regex when creating the new one. 1171 re.constructor = {}; 1172 re.constructor[SPECIES] = function () { return re; }; 1173 re.flags = ''; 1174 re[SYMBOL] = /./[SYMBOL]; 1175 } 1176 1177 re.exec = function () { execCalled = true; return null; }; 1178 1179 re[SYMBOL](''); 1180 return !execCalled; 1181 }); 1182 1183 if ( 1184 !DELEGATES_TO_SYMBOL || 1185 !DELEGATES_TO_EXEC || 1186 FORCED 1187 ) { 1188 var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]); 1189 var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) { 1190 var uncurriedNativeMethod = uncurryThis(nativeMethod); 1191 var $exec = regexp.exec; 1192 if ($exec === regexpExec || $exec === RegExpPrototype.exec) { 1193 if (DELEGATES_TO_SYMBOL && !forceStringMethod) { 1194 // The native String method already delegates to @@method (this 1195 // polyfilled function), leasing to infinite recursion. 1196 // We avoid it by directly calling the native @@method method. 1197 return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) }; 1198 } 1199 return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) }; 1200 } 1201 return { done: false }; 1202 });
vendor: 4,133 bytes, lines 1203-1349
1203 1204 defineBuiltIn(String.prototype, KEY, methods[0]); 1205 defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]); 1206 } 1207 1208 if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true); 1209}; 1210 1211 1212/***/ }), 1213 1214/***/ 2104: 1215/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1216 1217var NATIVE_BIND = __webpack_require__(4374); 1218 1219var FunctionPrototype = Function.prototype; 1220var apply = FunctionPrototype.apply; 1221var call = FunctionPrototype.call; 1222 1223// eslint-disable-next-line es/no-reflect -- safe 1224module.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () { 1225 return call.apply(apply, arguments); 1226}); 1227 1228 1229/***/ }), 1230 1231/***/ 9974: 1232/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1233 1234var uncurryThis = __webpack_require__(1470); 1235var aCallable = __webpack_require__(9662); 1236var NATIVE_BIND = __webpack_require__(4374); 1237 1238var bind = uncurryThis(uncurryThis.bind); 1239 1240// optional / simple context binding 1241module.exports = function (fn, that) { 1242 aCallable(fn); 1243 return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) { 1244 return fn.apply(that, arguments); 1245 }; 1246}; 1247 1248 1249/***/ }), 1250 1251/***/ 4374: 1252/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1253 1254var fails = __webpack_require__(7293); 1255 1256module.exports = !fails(function () { 1257 // eslint-disable-next-line es/no-function-prototype-bind -- safe 1258 var test = (function () { /* empty */ }).bind(); 1259 // eslint-disable-next-line no-prototype-builtins -- safe 1260 return typeof test != 'function' || test.hasOwnProperty('prototype'); 1261}); 1262 1263 1264/***/ }), 1265 1266/***/ 6916: 1267/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1268 1269var NATIVE_BIND = __webpack_require__(4374); 1270 1271var call = Function.prototype.call; 1272 1273module.exports = NATIVE_BIND ? call.bind(call) : function () { 1274 return call.apply(call, arguments); 1275}; 1276 1277 1278/***/ }), 1279 1280/***/ 6530: 1281/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1282 1283var DESCRIPTORS = __webpack_require__(9781); 1284var hasOwn = __webpack_require__(2597); 1285 1286var FunctionPrototype = Function.prototype; 1287// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe 1288var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor; 1289 1290var EXISTS = hasOwn(FunctionPrototype, 'name'); 1291// additional protection from minified / mangled / dropped function names 1292var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something'; 1293var CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable)); 1294 1295module.exports = { 1296 EXISTS: EXISTS, 1297 PROPER: PROPER, 1298 CONFIGURABLE: CONFIGURABLE 1299}; 1300 1301 1302/***/ }), 1303 1304/***/ 5668: 1305/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1306 1307var uncurryThis = __webpack_require__(1702); 1308var aCallable = __webpack_require__(9662); 1309 1310module.exports = function (object, key, method) { 1311 try { 1312 // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe 1313 return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method])); 1314 } catch (error) { /* empty */ } 1315}; 1316 1317 1318/***/ }), 1319 1320/***/ 1470: 1321/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1322 1323var classofRaw = __webpack_require__(4326); 1324var uncurryThis = __webpack_require__(1702); 1325 1326module.exports = function (fn) { 1327 // Nashorn bug: 1328 // https://github.com/zloirock/core-js/issues/1128 1329 // https://github.com/zloirock/core-js/issues/1130 1330 if (classofRaw(fn) === 'Function') return uncurryThis(fn); 1331}; 1332 1333 1334/***/ }), 1335 1336/***/ 1702: 1337/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1338 1339var NATIVE_BIND = __webpack_require__(4374); 1340 1341var FunctionPrototype = Function.prototype; 1342var call = FunctionPrototype.call; 1343var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call); 1344 1345module.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) { 1346 return function () { 1347 return call.apply(fn, arguments); 1348 }; 1349};
vendor: 1,674 bytes, lines 1350-1406
1350 1351 1352/***/ }), 1353 1354/***/ 5005: 1355/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1356 1357var global = __webpack_require__(7854); 1358var isCallable = __webpack_require__(614); 1359 1360var aFunction = function (argument) { 1361 return isCallable(argument) ? argument : undefined; 1362}; 1363 1364module.exports = function (namespace, method) { 1365 return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method]; 1366}; 1367 1368 1369/***/ }), 1370 1371/***/ 1246: 1372/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1373 1374var classof = __webpack_require__(648); 1375var getMethod = __webpack_require__(8173); 1376var isNullOrUndefined = __webpack_require__(8554); 1377var Iterators = __webpack_require__(7497); 1378var wellKnownSymbol = __webpack_require__(5112); 1379 1380var ITERATOR = wellKnownSymbol('iterator'); 1381 1382module.exports = function (it) { 1383 if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR) 1384 || getMethod(it, '@@iterator') 1385 || Iterators[classof(it)]; 1386}; 1387 1388 1389/***/ }), 1390 1391/***/ 4121: 1392/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1393 1394var call = __webpack_require__(6916); 1395var aCallable = __webpack_require__(9662); 1396var anObject = __webpack_require__(9670); 1397var tryToString = __webpack_require__(6330); 1398var getIteratorMethod = __webpack_require__(1246); 1399 1400var $TypeError = TypeError; 1401 1402module.exports = function (argument, usingIterator) { 1403 var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator; 1404 if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument)); 1405 throw $TypeError(tryToString(argument) + ' is not iterable'); 1406};
vendor: 7,101 bytes, lines 1407-1645
1407 1408 1409/***/ }), 1410 1411/***/ 8044: 1412/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1413 1414var uncurryThis = __webpack_require__(1702); 1415var isArray = __webpack_require__(3157); 1416var isCallable = __webpack_require__(614); 1417var classof = __webpack_require__(4326); 1418var toString = __webpack_require__(1340); 1419 1420var push = uncurryThis([].push); 1421 1422module.exports = function (replacer) { 1423 if (isCallable(replacer)) return replacer; 1424 if (!isArray(replacer)) return; 1425 var rawLength = replacer.length; 1426 var keys = []; 1427 for (var i = 0; i < rawLength; i++) { 1428 var element = replacer[i]; 1429 if (typeof element == 'string') push(keys, element); 1430 else if (typeof element == 'number' || classof(element) == 'Number' || classof(element) == 'String') push(keys, toString(element)); 1431 } 1432 var keysLength = keys.length; 1433 var root = true; 1434 return function (key, value) { 1435 if (root) { 1436 root = false; 1437 return value; 1438 } 1439 if (isArray(this)) return value; 1440 for (var j = 0; j < keysLength; j++) if (keys[j] === key) return value; 1441 }; 1442}; 1443 1444 1445/***/ }), 1446 1447/***/ 8173: 1448/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1449 1450var aCallable = __webpack_require__(9662); 1451var isNullOrUndefined = __webpack_require__(8554); 1452 1453// `GetMethod` abstract operation 1454// https://tc39.es/ecma262/#sec-getmethod 1455module.exports = function (V, P) { 1456 var func = V[P]; 1457 return isNullOrUndefined(func) ? undefined : aCallable(func); 1458}; 1459 1460 1461/***/ }), 1462 1463/***/ 647: 1464/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1465 1466var uncurryThis = __webpack_require__(1702); 1467var toObject = __webpack_require__(7908); 1468 1469var floor = Math.floor; 1470var charAt = uncurryThis(''.charAt); 1471var replace = uncurryThis(''.replace); 1472var stringSlice = uncurryThis(''.slice); 1473// eslint-disable-next-line redos/no-vulnerable -- safe 1474var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d{1,2}|<[^>]*>)/g; 1475var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d{1,2})/g; 1476 1477// `GetSubstitution` abstract operation 1478// https://tc39.es/ecma262/#sec-getsubstitution 1479module.exports = function (matched, str, position, captures, namedCaptures, replacement) { 1480 var tailPos = position + matched.length; 1481 var m = captures.length; 1482 var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED; 1483 if (namedCaptures !== undefined) { 1484 namedCaptures = toObject(namedCaptures); 1485 symbols = SUBSTITUTION_SYMBOLS; 1486 } 1487 return replace(replacement, symbols, function (match, ch) { 1488 var capture; 1489 switch (charAt(ch, 0)) { 1490 case '$': return '$'; 1491 case '&': return matched; 1492 case '`': return stringSlice(str, 0, position); 1493 case "'": return stringSlice(str, tailPos); 1494 case '<': 1495 capture = namedCaptures[stringSlice(ch, 1, -1)]; 1496 break; 1497 default: // \d\d? 1498 var n = +ch; 1499 if (n === 0) return match; 1500 if (n > m) { 1501 var f = floor(n / 10); 1502 if (f === 0) return match; 1503 if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1); 1504 return match; 1505 } 1506 capture = captures[n - 1]; 1507 } 1508 return capture === undefined ? '' : capture; 1509 }); 1510}; 1511 1512 1513/***/ }), 1514 1515/***/ 7854: 1516/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1517 1518var check = function (it) { 1519 return it && it.Math == Math && it; 1520}; 1521 1522// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 1523module.exports = 1524 // eslint-disable-next-line es/no-global-this -- safe 1525 check(typeof globalThis == 'object' && globalThis) || 1526 check(typeof window == 'object' && window) || 1527 // eslint-disable-next-line no-restricted-globals -- safe 1528 check(typeof self == 'object' && self) || 1529 check(typeof __webpack_require__.g == 'object' && __webpack_require__.g) || 1530 // eslint-disable-next-line no-new-func -- fallback 1531 (function () { return this; })() || Function('return this')(); 1532 1533 1534/***/ }), 1535 1536/***/ 2597: 1537/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1538 1539var uncurryThis = __webpack_require__(1702); 1540var toObject = __webpack_require__(7908); 1541 1542var hasOwnProperty = uncurryThis({}.hasOwnProperty); 1543 1544// `HasOwnProperty` abstract operation 1545// https://tc39.es/ecma262/#sec-hasownproperty 1546// eslint-disable-next-line es/no-object-hasown -- safe 1547module.exports = Object.hasOwn || function hasOwn(it, key) { 1548 return hasOwnProperty(toObject(it), key); 1549}; 1550 1551 1552/***/ }), 1553 1554/***/ 3501: 1555/***/ (function(module) { 1556 1557module.exports = {}; 1558 1559 1560/***/ }), 1561 1562/***/ 842: 1563/***/ (function(module) { 1564 1565module.exports = function (a, b) { 1566 try { 1567 // eslint-disable-next-line no-console -- safe 1568 arguments.length == 1 ? console.error(a) : console.error(a, b); 1569 } catch (error) { /* empty */ } 1570}; 1571 1572 1573/***/ }), 1574 1575/***/ 490: 1576/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1577 1578var getBuiltIn = __webpack_require__(5005); 1579 1580module.exports = getBuiltIn('document', 'documentElement'); 1581 1582 1583/***/ }), 1584 1585/***/ 4664: 1586/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1587 1588var DESCRIPTORS = __webpack_require__(9781); 1589var fails = __webpack_require__(7293); 1590var createElement = __webpack_require__(317); 1591 1592// Thanks to IE8 for its funny defineProperty 1593module.exports = !DESCRIPTORS && !fails(function () { 1594 // eslint-disable-next-line es/no-object-defineproperty -- required for testing 1595 return Object.defineProperty(createElement('div'), 'a', { 1596 get: function () { return 7; } 1597 }).a != 7; 1598}); 1599 1600 1601/***/ }), 1602 1603/***/ 8361: 1604/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1605 1606var uncurryThis = __webpack_require__(1702); 1607var fails = __webpack_require__(7293); 1608var classof = __webpack_require__(4326); 1609 1610var $Object = Object; 1611var split = uncurryThis(''.split); 1612 1613// fallback for non-array-like ES3 and non-enumerable old V8 strings 1614module.exports = fails(function () { 1615 // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346 1616 // eslint-disable-next-line no-prototype-builtins -- safe 1617 return !$Object('z').propertyIsEnumerable(0); 1618}) ? function (it) { 1619 return classof(it) == 'String' ? split(it, '') : $Object(it); 1620} : $Object; 1621 1622 1623/***/ }), 1624 1625/***/ 9587: 1626/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1627 1628var isCallable = __webpack_require__(614); 1629var isObject = __webpack_require__(111); 1630var setPrototypeOf = __webpack_require__(7674); 1631 1632// makes subclassing work correct for wrapped built-ins 1633module.exports = function ($this, dummy, Wrapper) { 1634 var NewTarget, NewTargetPrototype; 1635 if ( 1636 // it can work only with native `setPrototypeOf` 1637 setPrototypeOf && 1638 // we haven't completely correct pre-ES6 way for getting `new.target`, so use this 1639 isCallable(NewTarget = dummy.constructor) && 1640 NewTarget !== Wrapper && 1641 isObject(NewTargetPrototype = NewTarget.prototype) && 1642 NewTargetPrototype !== Wrapper.prototype 1643 ) setPrototypeOf($this, NewTargetPrototype); 1644 return $this; 1645};
vendor: 16,188 bytes, lines 1646-2165
1646 1647 1648/***/ }), 1649 1650/***/ 2788: 1651/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1652 1653var uncurryThis = __webpack_require__(1702); 1654var isCallable = __webpack_require__(614); 1655var store = __webpack_require__(5465); 1656 1657var functionToString = uncurryThis(Function.toString); 1658 1659// this helper broken in `[email protected]`, so we can't use `shared` helper 1660if (!isCallable(store.inspectSource)) { 1661 store.inspectSource = function (it) { 1662 return functionToString(it); 1663 }; 1664} 1665 1666module.exports = store.inspectSource; 1667 1668 1669/***/ }), 1670 1671/***/ 9909: 1672/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1673 1674var NATIVE_WEAK_MAP = __webpack_require__(4811); 1675var global = __webpack_require__(7854); 1676var isObject = __webpack_require__(111); 1677var createNonEnumerableProperty = __webpack_require__(8880); 1678var hasOwn = __webpack_require__(2597); 1679var shared = __webpack_require__(5465); 1680var sharedKey = __webpack_require__(6200); 1681var hiddenKeys = __webpack_require__(3501); 1682 1683var OBJECT_ALREADY_INITIALIZED = 'Object already initialized'; 1684var TypeError = global.TypeError; 1685var WeakMap = global.WeakMap; 1686var set, get, has; 1687 1688var enforce = function (it) { 1689 return has(it) ? get(it) : set(it, {}); 1690}; 1691 1692var getterFor = function (TYPE) { 1693 return function (it) { 1694 var state; 1695 if (!isObject(it) || (state = get(it)).type !== TYPE) { 1696 throw TypeError('Incompatible receiver, ' + TYPE + ' required'); 1697 } return state; 1698 }; 1699}; 1700 1701if (NATIVE_WEAK_MAP || shared.state) { 1702 var store = shared.state || (shared.state = new WeakMap()); 1703 /* eslint-disable no-self-assign -- prototype methods protection */ 1704 store.get = store.get; 1705 store.has = store.has; 1706 store.set = store.set; 1707 /* eslint-enable no-self-assign -- prototype methods protection */ 1708 set = function (it, metadata) { 1709 if (store.has(it)) throw TypeError(OBJECT_ALREADY_INITIALIZED); 1710 metadata.facade = it; 1711 store.set(it, metadata); 1712 return metadata; 1713 }; 1714 get = function (it) { 1715 return store.get(it) || {}; 1716 }; 1717 has = function (it) { 1718 return store.has(it); 1719 }; 1720} else { 1721 var STATE = sharedKey('state'); 1722 hiddenKeys[STATE] = true; 1723 set = function (it, metadata) { 1724 if (hasOwn(it, STATE)) throw TypeError(OBJECT_ALREADY_INITIALIZED); 1725 metadata.facade = it; 1726 createNonEnumerableProperty(it, STATE, metadata); 1727 return metadata; 1728 }; 1729 get = function (it) { 1730 return hasOwn(it, STATE) ? it[STATE] : {}; 1731 }; 1732 has = function (it) { 1733 return hasOwn(it, STATE); 1734 }; 1735} 1736 1737module.exports = { 1738 set: set, 1739 get: get, 1740 has: has, 1741 enforce: enforce, 1742 getterFor: getterFor 1743}; 1744 1745 1746/***/ }), 1747 1748/***/ 7659: 1749/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1750 1751var wellKnownSymbol = __webpack_require__(5112); 1752var Iterators = __webpack_require__(7497); 1753 1754var ITERATOR = wellKnownSymbol('iterator'); 1755var ArrayPrototype = Array.prototype; 1756 1757// check on default Array iterator 1758module.exports = function (it) { 1759 return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it); 1760}; 1761 1762 1763/***/ }), 1764 1765/***/ 3157: 1766/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1767 1768var classof = __webpack_require__(4326); 1769 1770// `IsArray` abstract operation 1771// https://tc39.es/ecma262/#sec-isarray 1772// eslint-disable-next-line es/no-array-isarray -- safe 1773module.exports = Array.isArray || function isArray(argument) { 1774 return classof(argument) == 'Array'; 1775}; 1776 1777 1778/***/ }), 1779 1780/***/ 614: 1781/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1782 1783var $documentAll = __webpack_require__(4154); 1784 1785var documentAll = $documentAll.all; 1786 1787// `IsCallable` abstract operation 1788// https://tc39.es/ecma262/#sec-iscallable 1789module.exports = $documentAll.IS_HTMLDDA ? function (argument) { 1790 return typeof argument == 'function' || argument === documentAll; 1791} : function (argument) { 1792 return typeof argument == 'function'; 1793}; 1794 1795 1796/***/ }), 1797 1798/***/ 4411: 1799/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1800 1801var uncurryThis = __webpack_require__(1702); 1802var fails = __webpack_require__(7293); 1803var isCallable = __webpack_require__(614); 1804var classof = __webpack_require__(648); 1805var getBuiltIn = __webpack_require__(5005); 1806var inspectSource = __webpack_require__(2788); 1807 1808var noop = function () { /* empty */ }; 1809var empty = []; 1810var construct = getBuiltIn('Reflect', 'construct'); 1811var constructorRegExp = /^\s*(?:class|function)\b/; 1812var exec = uncurryThis(constructorRegExp.exec); 1813var INCORRECT_TO_STRING = !constructorRegExp.exec(noop); 1814 1815var isConstructorModern = function isConstructor(argument) { 1816 if (!isCallable(argument)) return false; 1817 try { 1818 construct(noop, empty, argument); 1819 return true; 1820 } catch (error) { 1821 return false; 1822 } 1823}; 1824 1825var isConstructorLegacy = function isConstructor(argument) { 1826 if (!isCallable(argument)) return false; 1827 switch (classof(argument)) { 1828 case 'AsyncFunction': 1829 case 'GeneratorFunction': 1830 case 'AsyncGeneratorFunction': return false; 1831 } 1832 try { 1833 // we can't check .prototype since constructors produced by .bind haven't it 1834 // `Function#toString` throws on some built-it function in some legacy engines 1835 // (for example, `DOMQuad` and similar in FF41-) 1836 return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument)); 1837 } catch (error) { 1838 return true; 1839 } 1840}; 1841 1842isConstructorLegacy.sham = true; 1843 1844// `IsConstructor` abstract operation 1845// https://tc39.es/ecma262/#sec-isconstructor 1846module.exports = !construct || fails(function () { 1847 var called; 1848 return isConstructorModern(isConstructorModern.call) 1849 || !isConstructorModern(Object) 1850 || !isConstructorModern(function () { called = true; }) 1851 || called; 1852}) ? isConstructorLegacy : isConstructorModern; 1853 1854 1855/***/ }), 1856 1857/***/ 4705: 1858/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1859 1860var fails = __webpack_require__(7293); 1861var isCallable = __webpack_require__(614); 1862 1863var replacement = /#|\.prototype\./; 1864 1865var isForced = function (feature, detection) { 1866 var value = data[normalize(feature)]; 1867 return value == POLYFILL ? true 1868 : value == NATIVE ? false 1869 : isCallable(detection) ? fails(detection) 1870 : !!detection; 1871}; 1872 1873var normalize = isForced.normalize = function (string) { 1874 return String(string).replace(replacement, '.').toLowerCase(); 1875}; 1876 1877var data = isForced.data = {}; 1878var NATIVE = isForced.NATIVE = 'N'; 1879var POLYFILL = isForced.POLYFILL = 'P'; 1880 1881module.exports = isForced; 1882 1883 1884/***/ }), 1885 1886/***/ 8554: 1887/***/ (function(module) { 1888 1889// we can't use just `it == null` since of `document.all` special case 1890// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec 1891module.exports = function (it) { 1892 return it === null || it === undefined; 1893}; 1894 1895 1896/***/ }), 1897 1898/***/ 111: 1899/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1900 1901var isCallable = __webpack_require__(614); 1902var $documentAll = __webpack_require__(4154); 1903 1904var documentAll = $documentAll.all; 1905 1906module.exports = $documentAll.IS_HTMLDDA ? function (it) { 1907 return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll; 1908} : function (it) { 1909 return typeof it == 'object' ? it !== null : isCallable(it); 1910}; 1911 1912 1913/***/ }), 1914 1915/***/ 1913: 1916/***/ (function(module) { 1917 1918module.exports = false; 1919 1920 1921/***/ }), 1922 1923/***/ 7850: 1924/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1925 1926var isObject = __webpack_require__(111); 1927var classof = __webpack_require__(4326); 1928var wellKnownSymbol = __webpack_require__(5112); 1929 1930var MATCH = wellKnownSymbol('match'); 1931 1932// `IsRegExp` abstract operation 1933// https://tc39.es/ecma262/#sec-isregexp 1934module.exports = function (it) { 1935 var isRegExp; 1936 return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp'); 1937}; 1938 1939 1940/***/ }), 1941 1942/***/ 2190: 1943/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1944 1945var getBuiltIn = __webpack_require__(5005); 1946var isCallable = __webpack_require__(614); 1947var isPrototypeOf = __webpack_require__(7976); 1948var USE_SYMBOL_AS_UID = __webpack_require__(3307); 1949 1950var $Object = Object; 1951 1952module.exports = USE_SYMBOL_AS_UID ? function (it) { 1953 return typeof it == 'symbol'; 1954} : function (it) { 1955 var $Symbol = getBuiltIn('Symbol'); 1956 return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it)); 1957}; 1958 1959 1960/***/ }), 1961 1962/***/ 408: 1963/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 1964 1965var bind = __webpack_require__(9974); 1966var call = __webpack_require__(6916); 1967var anObject = __webpack_require__(9670); 1968var tryToString = __webpack_require__(6330); 1969var isArrayIteratorMethod = __webpack_require__(7659); 1970var lengthOfArrayLike = __webpack_require__(6244); 1971var isPrototypeOf = __webpack_require__(7976); 1972var getIterator = __webpack_require__(4121); 1973var getIteratorMethod = __webpack_require__(1246); 1974var iteratorClose = __webpack_require__(9212); 1975 1976var $TypeError = TypeError; 1977 1978var Result = function (stopped, result) { 1979 this.stopped = stopped; 1980 this.result = result; 1981}; 1982 1983var ResultPrototype = Result.prototype; 1984 1985module.exports = function (iterable, unboundFunction, options) { 1986 var that = options && options.that; 1987 var AS_ENTRIES = !!(options && options.AS_ENTRIES); 1988 var IS_RECORD = !!(options && options.IS_RECORD); 1989 var IS_ITERATOR = !!(options && options.IS_ITERATOR); 1990 var INTERRUPTED = !!(options && options.INTERRUPTED); 1991 var fn = bind(unboundFunction, that); 1992 var iterator, iterFn, index, length, result, next, step; 1993 1994 var stop = function (condition) { 1995 if (iterator) iteratorClose(iterator, 'normal', condition); 1996 return new Result(true, condition); 1997 }; 1998 1999 var callFn = function (value) { 2000 if (AS_ENTRIES) { 2001 anObject(value); 2002 return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]); 2003 } return INTERRUPTED ? fn(value, stop) : fn(value); 2004 }; 2005 2006 if (IS_RECORD) { 2007 iterator = iterable.iterator; 2008 } else if (IS_ITERATOR) { 2009 iterator = iterable; 2010 } else { 2011 iterFn = getIteratorMethod(iterable); 2012 if (!iterFn) throw $TypeError(tryToString(iterable) + ' is not iterable'); 2013 // optimisation for array iterators 2014 if (isArrayIteratorMethod(iterFn)) { 2015 for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) { 2016 result = callFn(iterable[index]); 2017 if (result && isPrototypeOf(ResultPrototype, result)) return result; 2018 } return new Result(false); 2019 } 2020 iterator = getIterator(iterable, iterFn); 2021 } 2022 2023 next = IS_RECORD ? iterable.next : iterator.next; 2024 while (!(step = call(next, iterator)).done) { 2025 try { 2026 result = callFn(step.value); 2027 } catch (error) { 2028 iteratorClose(iterator, 'throw', error); 2029 } 2030 if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result; 2031 } return new Result(false); 2032}; 2033 2034 2035/***/ }), 2036 2037/***/ 9212: 2038/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2039 2040var call = __webpack_require__(6916); 2041var anObject = __webpack_require__(9670); 2042var getMethod = __webpack_require__(8173); 2043 2044module.exports = function (iterator, kind, value) { 2045 var innerResult, innerError; 2046 anObject(iterator); 2047 try { 2048 innerResult = getMethod(iterator, 'return'); 2049 if (!innerResult) { 2050 if (kind === 'throw') throw value; 2051 return value; 2052 } 2053 innerResult = call(innerResult, iterator); 2054 } catch (error) { 2055 innerError = true; 2056 innerResult = error; 2057 } 2058 if (kind === 'throw') throw value; 2059 if (innerError) throw innerResult; 2060 anObject(innerResult); 2061 return value; 2062}; 2063 2064 2065/***/ }), 2066 2067/***/ 3061: 2068/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2069 2070"use strict"; 2071 2072var IteratorPrototype = (__webpack_require__(3383).IteratorPrototype); 2073var create = __webpack_require__(30); 2074var createPropertyDescriptor = __webpack_require__(9114); 2075var setToStringTag = __webpack_require__(8003); 2076var Iterators = __webpack_require__(7497); 2077 2078var returnThis = function () { return this; }; 2079 2080module.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) { 2081 var TO_STRING_TAG = NAME + ' Iterator'; 2082 IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) }); 2083 setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true); 2084 Iterators[TO_STRING_TAG] = returnThis; 2085 return IteratorConstructor; 2086}; 2087 2088 2089/***/ }), 2090 2091/***/ 1656: 2092/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2093 2094"use strict"; 2095 2096var $ = __webpack_require__(2109); 2097var call = __webpack_require__(6916); 2098var IS_PURE = __webpack_require__(1913); 2099var FunctionName = __webpack_require__(6530); 2100var isCallable = __webpack_require__(614); 2101var createIteratorConstructor = __webpack_require__(3061); 2102var getPrototypeOf = __webpack_require__(9518); 2103var setPrototypeOf = __webpack_require__(7674); 2104var setToStringTag = __webpack_require__(8003); 2105var createNonEnumerableProperty = __webpack_require__(8880); 2106var defineBuiltIn = __webpack_require__(8052); 2107var wellKnownSymbol = __webpack_require__(5112); 2108var Iterators = __webpack_require__(7497); 2109var IteratorsCore = __webpack_require__(3383); 2110 2111var PROPER_FUNCTION_NAME = FunctionName.PROPER; 2112var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE; 2113var IteratorPrototype = IteratorsCore.IteratorPrototype; 2114var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS; 2115var ITERATOR = wellKnownSymbol('iterator'); 2116var KEYS = 'keys'; 2117var VALUES = 'values'; 2118var ENTRIES = 'entries'; 2119 2120var returnThis = function () { return this; }; 2121 2122module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) { 2123 createIteratorConstructor(IteratorConstructor, NAME, next); 2124 2125 var getIterationMethod = function (KIND) { 2126 if (KIND === DEFAULT && defaultIterator) return defaultIterator; 2127 if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND]; 2128 switch (KIND) { 2129 case KEYS: return function keys() { return new IteratorConstructor(this, KIND); }; 2130 case VALUES: return function values() { return new IteratorConstructor(this, KIND); }; 2131 case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); }; 2132 } return function () { return new IteratorConstructor(this); }; 2133 }; 2134 2135 var TO_STRING_TAG = NAME + ' Iterator'; 2136 var INCORRECT_VALUES_NAME = false; 2137 var IterablePrototype = Iterable.prototype; 2138 var nativeIterator = IterablePrototype[ITERATOR] 2139 || IterablePrototype['@@iterator'] 2140 || DEFAULT && IterablePrototype[DEFAULT]; 2141 var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT); 2142 var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator; 2143 var CurrentIteratorPrototype, methods, KEY; 2144 2145 // fix native 2146 if (anyNativeIterator) { 2147 CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable())); 2148 if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) { 2149 if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) { 2150 if (setPrototypeOf) { 2151 setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype); 2152 } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) { 2153 defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis); 2154 } 2155 } 2156 // Set @@toStringTag to native iterators 2157 setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true); 2158 if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis; 2159 } 2160 } 2161 2162 // fix Array.prototype.{ values, @@iterator }.name in V8 / FF 2163 if (PROPER_FUNCTION_NAME && DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) { 2164 if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) { 2165 createNonEnumerableProperty(IterablePrototype, 'name', VALUES);
vendor: 4,236 bytes, lines 2166-2301
2166 } else { 2167 INCORRECT_VALUES_NAME = true; 2168 defaultIterator = function values() { return call(nativeIterator, this); }; 2169 } 2170 } 2171 2172 // export additional methods 2173 if (DEFAULT) { 2174 methods = { 2175 values: getIterationMethod(VALUES), 2176 keys: IS_SET ? defaultIterator : getIterationMethod(KEYS), 2177 entries: getIterationMethod(ENTRIES) 2178 }; 2179 if (FORCED) for (KEY in methods) { 2180 if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) { 2181 defineBuiltIn(IterablePrototype, KEY, methods[KEY]); 2182 } 2183 } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods); 2184 } 2185 2186 // define iterator 2187 if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) { 2188 defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT }); 2189 } 2190 Iterators[NAME] = defaultIterator; 2191 2192 return methods; 2193}; 2194 2195 2196/***/ }), 2197 2198/***/ 3383: 2199/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2200 2201"use strict"; 2202 2203var fails = __webpack_require__(7293); 2204var isCallable = __webpack_require__(614); 2205var isObject = __webpack_require__(111); 2206var create = __webpack_require__(30); 2207var getPrototypeOf = __webpack_require__(9518); 2208var defineBuiltIn = __webpack_require__(8052); 2209var wellKnownSymbol = __webpack_require__(5112); 2210var IS_PURE = __webpack_require__(1913); 2211 2212var ITERATOR = wellKnownSymbol('iterator'); 2213var BUGGY_SAFARI_ITERATORS = false; 2214 2215// `%IteratorPrototype%` object 2216// https://tc39.es/ecma262/#sec-%iteratorprototype%-object 2217var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator; 2218 2219/* eslint-disable es/no-array-prototype-keys -- safe */ 2220if ([].keys) { 2221 arrayIterator = [].keys(); 2222 // Safari 8 has buggy iterators w/o `next` 2223 if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true; 2224 else { 2225 PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator)); 2226 if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype; 2227 } 2228} 2229 2230var NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () { 2231 var test = {}; 2232 // FF44- legacy iterators case 2233 return IteratorPrototype[ITERATOR].call(test) !== test; 2234}); 2235 2236if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {}; 2237else if (IS_PURE) IteratorPrototype = create(IteratorPrototype); 2238 2239// `%IteratorPrototype%[@@iterator]()` method 2240// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator 2241if (!isCallable(IteratorPrototype[ITERATOR])) { 2242 defineBuiltIn(IteratorPrototype, ITERATOR, function () { 2243 return this; 2244 }); 2245} 2246 2247module.exports = { 2248 IteratorPrototype: IteratorPrototype, 2249 BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS 2250}; 2251 2252 2253/***/ }), 2254 2255/***/ 7497: 2256/***/ (function(module) { 2257 2258module.exports = {}; 2259 2260 2261/***/ }), 2262 2263/***/ 6244: 2264/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2265 2266var toLength = __webpack_require__(7466); 2267 2268// `LengthOfArrayLike` abstract operation 2269// https://tc39.es/ecma262/#sec-lengthofarraylike 2270module.exports = function (obj) { 2271 return toLength(obj.length); 2272}; 2273 2274 2275/***/ }), 2276 2277/***/ 6339: 2278/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2279 2280var uncurryThis = __webpack_require__(1702); 2281var fails = __webpack_require__(7293); 2282var isCallable = __webpack_require__(614); 2283var hasOwn = __webpack_require__(2597); 2284var DESCRIPTORS = __webpack_require__(9781); 2285var CONFIGURABLE_FUNCTION_NAME = (__webpack_require__(6530).CONFIGURABLE); 2286var inspectSource = __webpack_require__(2788); 2287var InternalStateModule = __webpack_require__(9909); 2288 2289var enforceInternalState = InternalStateModule.enforce; 2290var getInternalState = InternalStateModule.get; 2291var $String = String; 2292// eslint-disable-next-line es/no-object-defineproperty -- safe 2293var defineProperty = Object.defineProperty; 2294var stringSlice = uncurryThis(''.slice); 2295var replace = uncurryThis(''.replace); 2296var join = uncurryThis([].join); 2297 2298var CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () { 2299 return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8; 2300}); 2301
vendor: 7,009 bytes, lines 2302-2518
2302var TEMPLATE = String(String).split('String'); 2303 2304var makeBuiltIn = module.exports = function (value, name, options) { 2305 if (stringSlice($String(name), 0, 7) === 'Symbol(') { 2306 name = '[' + replace($String(name), /^Symbol\(([^)]*)\)/, '$1') + ']'; 2307 } 2308 if (options && options.getter) name = 'get ' + name; 2309 if (options && options.setter) name = 'set ' + name; 2310 if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) { 2311 if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true }); 2312 else value.name = name; 2313 } 2314 if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) { 2315 defineProperty(value, 'length', { value: options.arity }); 2316 } 2317 try { 2318 if (options && hasOwn(options, 'constructor') && options.constructor) { 2319 if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false }); 2320 // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable 2321 } else if (value.prototype) value.prototype = undefined; 2322 } catch (error) { /* empty */ } 2323 var state = enforceInternalState(value); 2324 if (!hasOwn(state, 'source')) { 2325 state.source = join(TEMPLATE, typeof name == 'string' ? name : ''); 2326 } return value; 2327}; 2328 2329// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative 2330// eslint-disable-next-line no-extend-native -- required 2331Function.prototype.toString = makeBuiltIn(function toString() { 2332 return isCallable(this) && getInternalState(this).source || inspectSource(this); 2333}, 'toString'); 2334 2335 2336/***/ }), 2337 2338/***/ 4758: 2339/***/ (function(module) { 2340 2341var ceil = Math.ceil; 2342var floor = Math.floor; 2343 2344// `Math.trunc` method 2345// https://tc39.es/ecma262/#sec-math.trunc 2346// eslint-disable-next-line es/no-math-trunc -- safe 2347module.exports = Math.trunc || function trunc(x) { 2348 var n = +x; 2349 return (n > 0 ? floor : ceil)(n); 2350}; 2351 2352 2353/***/ }), 2354 2355/***/ 5948: 2356/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2357 2358var global = __webpack_require__(7854); 2359var bind = __webpack_require__(9974); 2360var getOwnPropertyDescriptor = (__webpack_require__(1236).f); 2361var macrotask = (__webpack_require__(261).set); 2362var Queue = __webpack_require__(8572); 2363var IS_IOS = __webpack_require__(6833); 2364var IS_IOS_PEBBLE = __webpack_require__(1528); 2365var IS_WEBOS_WEBKIT = __webpack_require__(1036); 2366var IS_NODE = __webpack_require__(5268); 2367 2368var MutationObserver = global.MutationObserver || global.WebKitMutationObserver; 2369var document = global.document; 2370var process = global.process; 2371var Promise = global.Promise; 2372// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask` 2373var queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask'); 2374var microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value; 2375var notify, toggle, node, promise, then; 2376 2377// modern engines have queueMicrotask method 2378if (!microtask) { 2379 var queue = new Queue(); 2380 2381 var flush = function () { 2382 var parent, fn; 2383 if (IS_NODE && (parent = process.domain)) parent.exit(); 2384 while (fn = queue.get()) try { 2385 fn(); 2386 } catch (error) { 2387 if (queue.head) notify(); 2388 throw error; 2389 } 2390 if (parent) parent.enter(); 2391 }; 2392 2393 // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339 2394 // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898 2395 if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) { 2396 toggle = true; 2397 node = document.createTextNode(''); 2398 new MutationObserver(flush).observe(node, { characterData: true }); 2399 notify = function () { 2400 node.data = toggle = !toggle; 2401 }; 2402 // environments with maybe non-completely correct, but existent Promise 2403 } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) { 2404 // Promise.resolve without an argument throws an error in LG WebOS 2 2405 promise = Promise.resolve(undefined); 2406 // workaround of WebKit ~ iOS Safari 10.1 bug 2407 promise.constructor = Promise; 2408 then = bind(promise.then, promise); 2409 notify = function () { 2410 then(flush); 2411 }; 2412 // Node.js without promises 2413 } else if (IS_NODE) { 2414 notify = function () { 2415 process.nextTick(flush); 2416 }; 2417 // for other environments - macrotask based on: 2418 // - setImmediate 2419 // - MessageChannel 2420 // - window.postMessage 2421 // - onreadystatechange 2422 // - setTimeout 2423 } else { 2424 // `webpack` dev server bug on IE global methods - use bind(fn, global) 2425 macrotask = bind(macrotask, global); 2426 notify = function () { 2427 macrotask(flush); 2428 }; 2429 } 2430 2431 microtask = function (fn) { 2432 if (!queue.head) notify(); 2433 queue.add(fn); 2434 }; 2435} 2436 2437module.exports = microtask; 2438 2439 2440/***/ }), 2441 2442/***/ 8523: 2443/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2444 2445"use strict"; 2446 2447var aCallable = __webpack_require__(9662); 2448 2449var $TypeError = TypeError; 2450 2451var PromiseCapability = function (C) { 2452 var resolve, reject; 2453 this.promise = new C(function ($$resolve, $$reject) { 2454 if (resolve !== undefined || reject !== undefined) throw $TypeError('Bad Promise constructor'); 2455 resolve = $$resolve; 2456 reject = $$reject; 2457 }); 2458 this.resolve = aCallable(resolve); 2459 this.reject = aCallable(reject); 2460}; 2461 2462// `NewPromiseCapability` abstract operation 2463// https://tc39.es/ecma262/#sec-newpromisecapability 2464module.exports.f = function (C) { 2465 return new PromiseCapability(C); 2466}; 2467 2468 2469/***/ }), 2470 2471/***/ 3929: 2472/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2473 2474var isRegExp = __webpack_require__(7850); 2475 2476var $TypeError = TypeError; 2477 2478module.exports = function (it) { 2479 if (isRegExp(it)) { 2480 throw $TypeError("The method doesn't accept regular expressions"); 2481 } return it; 2482}; 2483 2484 2485/***/ }), 2486 2487/***/ 30: 2488/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2489 2490/* global ActiveXObject -- old IE, WSH */ 2491var anObject = __webpack_require__(9670); 2492var definePropertiesModule = __webpack_require__(6048); 2493var enumBugKeys = __webpack_require__(748); 2494var hiddenKeys = __webpack_require__(3501); 2495var html = __webpack_require__(490); 2496var documentCreateElement = __webpack_require__(317); 2497var sharedKey = __webpack_require__(6200); 2498 2499var GT = '>'; 2500var LT = '<'; 2501var PROTOTYPE = 'prototype'; 2502var SCRIPT = 'script'; 2503var IE_PROTO = sharedKey('IE_PROTO'); 2504 2505var EmptyConstructor = function () { /* empty */ }; 2506 2507var scriptTag = function (content) { 2508 return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT; 2509}; 2510 2511// Create object with fake `null` prototype: use ActiveX Object with cleared prototype 2512var NullProtoObjectViaActiveX = function (activeXDocument) { 2513 activeXDocument.write(scriptTag('')); 2514 activeXDocument.close(); 2515 var temp = activeXDocument.parentWindow.Object; 2516 activeXDocument = null; // avoid memory leak 2517 return temp; 2518};
vendor: 17,459 bytes, lines 2519-3032
2519 2520// Create object with fake `null` prototype: use iframe Object with cleared prototype 2521var NullProtoObjectViaIFrame = function () { 2522 // Thrash, waste and sodomy: IE GC bug 2523 var iframe = documentCreateElement('iframe'); 2524 var JS = 'java' + SCRIPT + ':'; 2525 var iframeDocument; 2526 iframe.style.display = 'none'; 2527 html.appendChild(iframe); 2528 // https://github.com/zloirock/core-js/issues/475 2529 iframe.src = String(JS); 2530 iframeDocument = iframe.contentWindow.document; 2531 iframeDocument.open(); 2532 iframeDocument.write(scriptTag('document.F=Object')); 2533 iframeDocument.close(); 2534 return iframeDocument.F; 2535}; 2536 2537// Check for document.domain and active x support 2538// No need to use active x approach when document.domain is not set 2539// see https://github.com/es-shims/es5-shim/issues/150 2540// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346 2541// avoid IE GC bug 2542var activeXDocument; 2543var NullProtoObject = function () { 2544 try { 2545 activeXDocument = new ActiveXObject('htmlfile'); 2546 } catch (error) { /* ignore */ } 2547 NullProtoObject = typeof document != 'undefined' 2548 ? document.domain && activeXDocument 2549 ? NullProtoObjectViaActiveX(activeXDocument) // old IE 2550 : NullProtoObjectViaIFrame() 2551 : NullProtoObjectViaActiveX(activeXDocument); // WSH 2552 var length = enumBugKeys.length; 2553 while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]]; 2554 return NullProtoObject(); 2555}; 2556 2557hiddenKeys[IE_PROTO] = true; 2558 2559// `Object.create` method 2560// https://tc39.es/ecma262/#sec-object.create 2561// eslint-disable-next-line es/no-object-create -- safe 2562module.exports = Object.create || function create(O, Properties) { 2563 var result; 2564 if (O !== null) { 2565 EmptyConstructor[PROTOTYPE] = anObject(O); 2566 result = new EmptyConstructor(); 2567 EmptyConstructor[PROTOTYPE] = null; 2568 // add "__proto__" for Object.getPrototypeOf polyfill 2569 result[IE_PROTO] = O; 2570 } else result = NullProtoObject(); 2571 return Properties === undefined ? result : definePropertiesModule.f(result, Properties); 2572}; 2573 2574 2575/***/ }), 2576 2577/***/ 6048: 2578/***/ (function(__unused_webpack_module, exports, __webpack_require__) { 2579 2580var DESCRIPTORS = __webpack_require__(9781); 2581var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(3353); 2582var definePropertyModule = __webpack_require__(3070); 2583var anObject = __webpack_require__(9670); 2584var toIndexedObject = __webpack_require__(5656); 2585var objectKeys = __webpack_require__(1956); 2586 2587// `Object.defineProperties` method 2588// https://tc39.es/ecma262/#sec-object.defineproperties 2589// eslint-disable-next-line es/no-object-defineproperties -- safe 2590exports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) { 2591 anObject(O); 2592 var props = toIndexedObject(Properties); 2593 var keys = objectKeys(Properties); 2594 var length = keys.length; 2595 var index = 0; 2596 var key; 2597 while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]); 2598 return O; 2599}; 2600 2601 2602/***/ }), 2603 2604/***/ 3070: 2605/***/ (function(__unused_webpack_module, exports, __webpack_require__) { 2606 2607var DESCRIPTORS = __webpack_require__(9781); 2608var IE8_DOM_DEFINE = __webpack_require__(4664); 2609var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(3353); 2610var anObject = __webpack_require__(9670); 2611var toPropertyKey = __webpack_require__(4948); 2612 2613var $TypeError = TypeError; 2614// eslint-disable-next-line es/no-object-defineproperty -- safe 2615var $defineProperty = Object.defineProperty; 2616// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe 2617var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; 2618var ENUMERABLE = 'enumerable'; 2619var CONFIGURABLE = 'configurable'; 2620var WRITABLE = 'writable'; 2621 2622// `Object.defineProperty` method 2623// https://tc39.es/ecma262/#sec-object.defineproperty 2624exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) { 2625 anObject(O); 2626 P = toPropertyKey(P); 2627 anObject(Attributes); 2628 if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) { 2629 var current = $getOwnPropertyDescriptor(O, P); 2630 if (current && current[WRITABLE]) { 2631 O[P] = Attributes.value; 2632 Attributes = { 2633 configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE], 2634 enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE], 2635 writable: false 2636 }; 2637 } 2638 } return $defineProperty(O, P, Attributes); 2639} : $defineProperty : function defineProperty(O, P, Attributes) { 2640 anObject(O); 2641 P = toPropertyKey(P); 2642 anObject(Attributes); 2643 if (IE8_DOM_DEFINE) try { 2644 return $defineProperty(O, P, Attributes); 2645 } catch (error) { /* empty */ } 2646 if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported'); 2647 if ('value' in Attributes) O[P] = Attributes.value; 2648 return O; 2649}; 2650 2651 2652/***/ }), 2653 2654/***/ 1236: 2655/***/ (function(__unused_webpack_module, exports, __webpack_require__) { 2656 2657var DESCRIPTORS = __webpack_require__(9781); 2658var call = __webpack_require__(6916); 2659var propertyIsEnumerableModule = __webpack_require__(5296); 2660var createPropertyDescriptor = __webpack_require__(9114); 2661var toIndexedObject = __webpack_require__(5656); 2662var toPropertyKey = __webpack_require__(4948); 2663var hasOwn = __webpack_require__(2597); 2664var IE8_DOM_DEFINE = __webpack_require__(4664); 2665 2666// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe 2667var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; 2668 2669// `Object.getOwnPropertyDescriptor` method 2670// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor 2671exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) { 2672 O = toIndexedObject(O); 2673 P = toPropertyKey(P); 2674 if (IE8_DOM_DEFINE) try { 2675 return $getOwnPropertyDescriptor(O, P); 2676 } catch (error) { /* empty */ } 2677 if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]); 2678}; 2679 2680 2681/***/ }), 2682 2683/***/ 1156: 2684/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2685 2686/* eslint-disable es/no-object-getownpropertynames -- safe */ 2687var classof = __webpack_require__(4326); 2688var toIndexedObject = __webpack_require__(5656); 2689var $getOwnPropertyNames = (__webpack_require__(8006).f); 2690var arraySlice = __webpack_require__(1589); 2691 2692var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames 2693 ? Object.getOwnPropertyNames(window) : []; 2694 2695var getWindowNames = function (it) { 2696 try { 2697 return $getOwnPropertyNames(it); 2698 } catch (error) { 2699 return arraySlice(windowNames); 2700 } 2701}; 2702 2703// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window 2704module.exports.f = function getOwnPropertyNames(it) { 2705 return windowNames && classof(it) == 'Window' 2706 ? getWindowNames(it) 2707 : $getOwnPropertyNames(toIndexedObject(it)); 2708}; 2709 2710 2711/***/ }), 2712 2713/***/ 8006: 2714/***/ (function(__unused_webpack_module, exports, __webpack_require__) { 2715 2716var internalObjectKeys = __webpack_require__(6324); 2717var enumBugKeys = __webpack_require__(748); 2718 2719var hiddenKeys = enumBugKeys.concat('length', 'prototype'); 2720 2721// `Object.getOwnPropertyNames` method 2722// https://tc39.es/ecma262/#sec-object.getownpropertynames 2723// eslint-disable-next-line es/no-object-getownpropertynames -- safe 2724exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { 2725 return internalObjectKeys(O, hiddenKeys); 2726}; 2727 2728 2729/***/ }), 2730 2731/***/ 5181: 2732/***/ (function(__unused_webpack_module, exports) { 2733 2734// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe 2735exports.f = Object.getOwnPropertySymbols; 2736 2737 2738/***/ }), 2739 2740/***/ 9518: 2741/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2742 2743var hasOwn = __webpack_require__(2597); 2744var isCallable = __webpack_require__(614); 2745var toObject = __webpack_require__(7908); 2746var sharedKey = __webpack_require__(6200); 2747var CORRECT_PROTOTYPE_GETTER = __webpack_require__(8544); 2748 2749var IE_PROTO = sharedKey('IE_PROTO'); 2750var $Object = Object; 2751var ObjectPrototype = $Object.prototype; 2752 2753// `Object.getPrototypeOf` method 2754// https://tc39.es/ecma262/#sec-object.getprototypeof 2755// eslint-disable-next-line es/no-object-getprototypeof -- safe 2756module.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) { 2757 var object = toObject(O); 2758 if (hasOwn(object, IE_PROTO)) return object[IE_PROTO]; 2759 var constructor = object.constructor; 2760 if (isCallable(constructor) && object instanceof constructor) { 2761 return constructor.prototype; 2762 } return object instanceof $Object ? ObjectPrototype : null; 2763}; 2764 2765 2766/***/ }), 2767 2768/***/ 7976: 2769/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2770 2771var uncurryThis = __webpack_require__(1702); 2772 2773module.exports = uncurryThis({}.isPrototypeOf); 2774 2775 2776/***/ }), 2777 2778/***/ 6324: 2779/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2780 2781var uncurryThis = __webpack_require__(1702); 2782var hasOwn = __webpack_require__(2597); 2783var toIndexedObject = __webpack_require__(5656); 2784var indexOf = (__webpack_require__(1318).indexOf); 2785var hiddenKeys = __webpack_require__(3501); 2786 2787var push = uncurryThis([].push); 2788 2789module.exports = function (object, names) { 2790 var O = toIndexedObject(object); 2791 var i = 0; 2792 var result = []; 2793 var key; 2794 for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key); 2795 // Don't enum bug & hidden keys 2796 while (names.length > i) if (hasOwn(O, key = names[i++])) { 2797 ~indexOf(result, key) || push(result, key); 2798 } 2799 return result; 2800}; 2801 2802 2803/***/ }), 2804 2805/***/ 1956: 2806/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2807 2808var internalObjectKeys = __webpack_require__(6324); 2809var enumBugKeys = __webpack_require__(748); 2810 2811// `Object.keys` method 2812// https://tc39.es/ecma262/#sec-object.keys 2813// eslint-disable-next-line es/no-object-keys -- safe 2814module.exports = Object.keys || function keys(O) { 2815 return internalObjectKeys(O, enumBugKeys); 2816}; 2817 2818 2819/***/ }), 2820 2821/***/ 5296: 2822/***/ (function(__unused_webpack_module, exports) { 2823 2824"use strict"; 2825 2826var $propertyIsEnumerable = {}.propertyIsEnumerable; 2827// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe 2828var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; 2829 2830// Nashorn ~ JDK8 bug 2831var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1); 2832 2833// `Object.prototype.propertyIsEnumerable` method implementation 2834// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable 2835exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) { 2836 var descriptor = getOwnPropertyDescriptor(this, V); 2837 return !!descriptor && descriptor.enumerable; 2838} : $propertyIsEnumerable; 2839 2840 2841/***/ }), 2842 2843/***/ 7674: 2844/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2845 2846/* eslint-disable no-proto -- safe */ 2847var uncurryThisAccessor = __webpack_require__(5668); 2848var anObject = __webpack_require__(9670); 2849var aPossiblePrototype = __webpack_require__(6077); 2850 2851// `Object.setPrototypeOf` method 2852// https://tc39.es/ecma262/#sec-object.setprototypeof 2853// Works with __proto__ only. Old v8 can't work with null proto objects. 2854// eslint-disable-next-line es/no-object-setprototypeof -- safe 2855module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () { 2856 var CORRECT_SETTER = false; 2857 var test = {}; 2858 var setter; 2859 try { 2860 setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set'); 2861 setter(test, []); 2862 CORRECT_SETTER = test instanceof Array; 2863 } catch (error) { /* empty */ } 2864 return function setPrototypeOf(O, proto) { 2865 anObject(O); 2866 aPossiblePrototype(proto); 2867 if (CORRECT_SETTER) setter(O, proto); 2868 else O.__proto__ = proto; 2869 return O; 2870 }; 2871}() : undefined); 2872 2873 2874/***/ }), 2875 2876/***/ 288: 2877/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2878 2879"use strict"; 2880 2881var TO_STRING_TAG_SUPPORT = __webpack_require__(1694); 2882var classof = __webpack_require__(648); 2883 2884// `Object.prototype.toString` method implementation 2885// https://tc39.es/ecma262/#sec-object.prototype.tostring 2886module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() { 2887 return '[object ' + classof(this) + ']'; 2888}; 2889 2890 2891/***/ }), 2892 2893/***/ 2140: 2894/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2895 2896var call = __webpack_require__(6916); 2897var isCallable = __webpack_require__(614); 2898var isObject = __webpack_require__(111); 2899 2900var $TypeError = TypeError; 2901 2902// `OrdinaryToPrimitive` abstract operation 2903// https://tc39.es/ecma262/#sec-ordinarytoprimitive 2904module.exports = function (input, pref) { 2905 var fn, val; 2906 if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val; 2907 if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val; 2908 if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val; 2909 throw $TypeError("Can't convert object to primitive value"); 2910}; 2911 2912 2913/***/ }), 2914 2915/***/ 3887: 2916/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2917 2918var getBuiltIn = __webpack_require__(5005); 2919var uncurryThis = __webpack_require__(1702); 2920var getOwnPropertyNamesModule = __webpack_require__(8006); 2921var getOwnPropertySymbolsModule = __webpack_require__(5181); 2922var anObject = __webpack_require__(9670); 2923 2924var concat = uncurryThis([].concat); 2925 2926// all object keys, includes non-enumerable and symbols 2927module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) { 2928 var keys = getOwnPropertyNamesModule.f(anObject(it)); 2929 var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; 2930 return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys; 2931}; 2932 2933 2934/***/ }), 2935 2936/***/ 857: 2937/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2938 2939var global = __webpack_require__(7854); 2940 2941module.exports = global; 2942 2943 2944/***/ }), 2945 2946/***/ 2534: 2947/***/ (function(module) { 2948 2949module.exports = function (exec) { 2950 try { 2951 return { error: false, value: exec() }; 2952 } catch (error) { 2953 return { error: true, value: error }; 2954 } 2955}; 2956 2957 2958/***/ }), 2959 2960/***/ 3702: 2961/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 2962 2963var global = __webpack_require__(7854); 2964var NativePromiseConstructor = __webpack_require__(2492); 2965var isCallable = __webpack_require__(614); 2966var isForced = __webpack_require__(4705); 2967var inspectSource = __webpack_require__(2788); 2968var wellKnownSymbol = __webpack_require__(5112); 2969var IS_BROWSER = __webpack_require__(7871); 2970var IS_DENO = __webpack_require__(3823); 2971var IS_PURE = __webpack_require__(1913); 2972var V8_VERSION = __webpack_require__(7392); 2973 2974var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype; 2975var SPECIES = wellKnownSymbol('species'); 2976var SUBCLASSING = false; 2977var NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent); 2978 2979var FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () { 2980 var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor); 2981 var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor); 2982 // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables 2983 // https://bugs.chromium.org/p/chromium/issues/detail?id=830565 2984 // We can't detect it synchronously, so just check versions 2985 if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true; 2986 // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution 2987 if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true; 2988 // We can't use @@species feature detection in V8 since it causes 2989 // deoptimization and performance degradation 2990 // https://github.com/zloirock/core-js/issues/679 2991 if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) { 2992 // Detect correctness of subclassing with @@species support 2993 var promise = new NativePromiseConstructor(function (resolve) { resolve(1); }); 2994 var FakePromise = function (exec) { 2995 exec(function () { /* empty */ }, function () { /* empty */ }); 2996 }; 2997 var constructor = promise.constructor = {}; 2998 constructor[SPECIES] = FakePromise; 2999 SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise; 3000 if (!SUBCLASSING) return true; 3001 // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test 3002 } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT; 3003}); 3004 3005module.exports = { 3006 CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR, 3007 REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT, 3008 SUBCLASSING: SUBCLASSING 3009}; 3010 3011 3012/***/ }), 3013 3014/***/ 2492: 3015/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3016 3017var global = __webpack_require__(7854); 3018 3019module.exports = global.Promise; 3020 3021 3022/***/ }), 3023 3024/***/ 9478: 3025/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3026 3027var anObject = __webpack_require__(9670); 3028var isObject = __webpack_require__(111); 3029var newPromiseCapability = __webpack_require__(8523); 3030 3031module.exports = function (C, x) { 3032 anObject(C);
vendor: 4,400 bytes, lines 3033-3184
3033 if (isObject(x) && x.constructor === C) return x; 3034 var promiseCapability = newPromiseCapability.f(C); 3035 var resolve = promiseCapability.resolve; 3036 resolve(x); 3037 return promiseCapability.promise; 3038}; 3039 3040 3041/***/ }), 3042 3043/***/ 612: 3044/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3045 3046var NativePromiseConstructor = __webpack_require__(2492); 3047var checkCorrectnessOfIteration = __webpack_require__(7072); 3048var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(3702).CONSTRUCTOR); 3049 3050module.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) { 3051 NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ }); 3052}); 3053 3054 3055/***/ }), 3056 3057/***/ 8572: 3058/***/ (function(module) { 3059 3060var Queue = function () { 3061 this.head = null; 3062 this.tail = null; 3063}; 3064 3065Queue.prototype = { 3066 add: function (item) { 3067 var entry = { item: item, next: null }; 3068 var tail = this.tail; 3069 if (tail) tail.next = entry; 3070 else this.head = entry; 3071 this.tail = entry; 3072 }, 3073 get: function () { 3074 var entry = this.head; 3075 if (entry) { 3076 var next = this.head = entry.next; 3077 if (next === null) this.tail = null; 3078 return entry.item; 3079 } 3080 } 3081}; 3082 3083module.exports = Queue; 3084 3085 3086/***/ }), 3087 3088/***/ 7651: 3089/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3090 3091var call = __webpack_require__(6916); 3092var anObject = __webpack_require__(9670); 3093var isCallable = __webpack_require__(614); 3094var classof = __webpack_require__(4326); 3095var regexpExec = __webpack_require__(2261); 3096 3097var $TypeError = TypeError; 3098 3099// `RegExpExec` abstract operation 3100// https://tc39.es/ecma262/#sec-regexpexec 3101module.exports = function (R, S) { 3102 var exec = R.exec; 3103 if (isCallable(exec)) { 3104 var result = call(exec, R, S); 3105 if (result !== null) anObject(result); 3106 return result; 3107 } 3108 if (classof(R) === 'RegExp') return call(regexpExec, R, S); 3109 throw $TypeError('RegExp#exec called on incompatible receiver'); 3110}; 3111 3112 3113/***/ }), 3114 3115/***/ 2261: 3116/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3117 3118"use strict"; 3119 3120/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */ 3121/* eslint-disable regexp/no-useless-quantifier -- testing */ 3122var call = __webpack_require__(6916); 3123var uncurryThis = __webpack_require__(1702); 3124var toString = __webpack_require__(1340); 3125var regexpFlags = __webpack_require__(7066); 3126var stickyHelpers = __webpack_require__(2999); 3127var shared = __webpack_require__(2309); 3128var create = __webpack_require__(30); 3129var getInternalState = (__webpack_require__(9909).get); 3130var UNSUPPORTED_DOT_ALL = __webpack_require__(9441); 3131var UNSUPPORTED_NCG = __webpack_require__(7168); 3132 3133var nativeReplace = shared('native-string-replace', String.prototype.replace); 3134var nativeExec = RegExp.prototype.exec; 3135var patchedExec = nativeExec; 3136var charAt = uncurryThis(''.charAt); 3137var indexOf = uncurryThis(''.indexOf); 3138var replace = uncurryThis(''.replace); 3139var stringSlice = uncurryThis(''.slice); 3140 3141var UPDATES_LAST_INDEX_WRONG = (function () { 3142 var re1 = /a/; 3143 var re2 = /b*/g; 3144 call(nativeExec, re1, 'a'); 3145 call(nativeExec, re2, 'a'); 3146 return re1.lastIndex !== 0 || re2.lastIndex !== 0; 3147})(); 3148 3149var UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET; 3150 3151// nonparticipating capturing group, copied from es5-shim's String#split patch. 3152var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined; 3153 3154var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG; 3155 3156if (PATCH) { 3157 patchedExec = function exec(string) { 3158 var re = this; 3159 var state = getInternalState(re); 3160 var str = toString(string); 3161 var raw = state.raw; 3162 var result, reCopy, lastIndex, match, i, object, group; 3163 3164 if (raw) { 3165 raw.lastIndex = re.lastIndex; 3166 result = call(patchedExec, raw, str); 3167 re.lastIndex = raw.lastIndex; 3168 return result; 3169 } 3170 3171 var groups = state.groups; 3172 var sticky = UNSUPPORTED_Y && re.sticky; 3173 var flags = call(regexpFlags, re); 3174 var source = re.source; 3175 var charsAdded = 0; 3176 var strCopy = str; 3177 3178 if (sticky) { 3179 flags = replace(flags, 'y', ''); 3180 if (indexOf(flags, 'g') === -1) { 3181 flags += 'g'; 3182 } 3183 3184 strCopy = stringSlice(str, re.lastIndex);
vendor: 10,487 bytes, lines 3185-3550
3185 // Support anchored sticky behavior. 3186 if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(str, re.lastIndex - 1) !== '\n')) { 3187 source = '(?: ' + source + ')'; 3188 strCopy = ' ' + strCopy; 3189 charsAdded++; 3190 } 3191 // ^(? + rx + ) is needed, in combination with some str slicing, to 3192 // simulate the 'y' flag. 3193 reCopy = new RegExp('^(?:' + source + ')', flags); 3194 } 3195 3196 if (NPCG_INCLUDED) { 3197 reCopy = new RegExp('^' + source + '$(?!\\s)', flags); 3198 } 3199 if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex; 3200 3201 match = call(nativeExec, sticky ? reCopy : re, strCopy); 3202 3203 if (sticky) { 3204 if (match) { 3205 match.input = stringSlice(match.input, charsAdded); 3206 match[0] = stringSlice(match[0], charsAdded); 3207 match.index = re.lastIndex; 3208 re.lastIndex += match[0].length; 3209 } else re.lastIndex = 0; 3210 } else if (UPDATES_LAST_INDEX_WRONG && match) { 3211 re.lastIndex = re.global ? match.index + match[0].length : lastIndex; 3212 } 3213 if (NPCG_INCLUDED && match && match.length > 1) { 3214 // Fix browsers whose `exec` methods don't consistently return `undefined` 3215 // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/ 3216 call(nativeReplace, match[0], reCopy, function () { 3217 for (i = 1; i < arguments.length - 2; i++) { 3218 if (arguments[i] === undefined) match[i] = undefined; 3219 } 3220 }); 3221 } 3222 3223 if (match && groups) { 3224 match.groups = object = create(null); 3225 for (i = 0; i < groups.length; i++) { 3226 group = groups[i]; 3227 object[group[0]] = match[group[1]]; 3228 } 3229 } 3230 3231 return match; 3232 }; 3233} 3234 3235module.exports = patchedExec; 3236 3237 3238/***/ }), 3239 3240/***/ 7066: 3241/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3242 3243"use strict"; 3244 3245var anObject = __webpack_require__(9670); 3246 3247// `RegExp.prototype.flags` getter implementation 3248// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags 3249module.exports = function () { 3250 var that = anObject(this); 3251 var result = ''; 3252 if (that.hasIndices) result += 'd'; 3253 if (that.global) result += 'g'; 3254 if (that.ignoreCase) result += 'i'; 3255 if (that.multiline) result += 'm'; 3256 if (that.dotAll) result += 's'; 3257 if (that.unicode) result += 'u'; 3258 if (that.unicodeSets) result += 'v'; 3259 if (that.sticky) result += 'y'; 3260 return result; 3261}; 3262 3263 3264/***/ }), 3265 3266/***/ 4706: 3267/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3268 3269var call = __webpack_require__(6916); 3270var hasOwn = __webpack_require__(2597); 3271var isPrototypeOf = __webpack_require__(7976); 3272var regExpFlags = __webpack_require__(7066); 3273 3274var RegExpPrototype = RegExp.prototype; 3275 3276module.exports = function (R) { 3277 var flags = R.flags; 3278 return flags === undefined && !('flags' in RegExpPrototype) && !hasOwn(R, 'flags') && isPrototypeOf(RegExpPrototype, R) 3279 ? call(regExpFlags, R) : flags; 3280}; 3281 3282 3283/***/ }), 3284 3285/***/ 2999: 3286/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3287 3288var fails = __webpack_require__(7293); 3289var global = __webpack_require__(7854); 3290 3291// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError 3292var $RegExp = global.RegExp; 3293 3294var UNSUPPORTED_Y = fails(function () { 3295 var re = $RegExp('a', 'y'); 3296 re.lastIndex = 2; 3297 return re.exec('abcd') != null; 3298}); 3299 3300// UC Browser bug 3301// https://github.com/zloirock/core-js/issues/1008 3302var MISSED_STICKY = UNSUPPORTED_Y || fails(function () { 3303 return !$RegExp('a', 'y').sticky; 3304}); 3305 3306var BROKEN_CARET = UNSUPPORTED_Y || fails(function () { 3307 // https://bugzilla.mozilla.org/show_bug.cgi?id=773687 3308 var re = $RegExp('^r', 'gy'); 3309 re.lastIndex = 2; 3310 return re.exec('str') != null; 3311}); 3312 3313module.exports = { 3314 BROKEN_CARET: BROKEN_CARET, 3315 MISSED_STICKY: MISSED_STICKY, 3316 UNSUPPORTED_Y: UNSUPPORTED_Y 3317}; 3318 3319 3320/***/ }), 3321 3322/***/ 9441: 3323/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3324 3325var fails = __webpack_require__(7293); 3326var global = __webpack_require__(7854); 3327 3328// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError 3329var $RegExp = global.RegExp; 3330 3331module.exports = fails(function () { 3332 var re = $RegExp('.', 's'); 3333 return !(re.dotAll && re.exec('\n') && re.flags === 's'); 3334}); 3335 3336 3337/***/ }), 3338 3339/***/ 7168: 3340/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3341 3342var fails = __webpack_require__(7293); 3343var global = __webpack_require__(7854); 3344 3345// babel-minify and Closure Compiler transpiles RegExp('(?<a>b)', 'g') -> /(?<a>b)/g and it causes SyntaxError 3346var $RegExp = global.RegExp; 3347 3348module.exports = fails(function () { 3349 var re = $RegExp('(?<a>b)', 'g'); 3350 return re.exec('b').groups.a !== 'b' || 3351 'b'.replace(re, '$<a>c') !== 'bc'; 3352}); 3353 3354 3355/***/ }), 3356 3357/***/ 4488: 3358/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3359 3360var isNullOrUndefined = __webpack_require__(8554); 3361 3362var $TypeError = TypeError; 3363 3364// `RequireObjectCoercible` abstract operation 3365// https://tc39.es/ecma262/#sec-requireobjectcoercible 3366module.exports = function (it) { 3367 if (isNullOrUndefined(it)) throw $TypeError("Can't call method on " + it); 3368 return it; 3369}; 3370 3371 3372/***/ }), 3373 3374/***/ 1150: 3375/***/ (function(module) { 3376 3377// `SameValue` abstract operation 3378// https://tc39.es/ecma262/#sec-samevalue 3379// eslint-disable-next-line es/no-object-is -- safe 3380module.exports = Object.is || function is(x, y) { 3381 // eslint-disable-next-line no-self-compare -- NaN check 3382 return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y; 3383}; 3384 3385 3386/***/ }), 3387 3388/***/ 6340: 3389/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3390 3391"use strict"; 3392 3393var getBuiltIn = __webpack_require__(5005); 3394var defineBuiltInAccessor = __webpack_require__(7045); 3395var wellKnownSymbol = __webpack_require__(5112); 3396var DESCRIPTORS = __webpack_require__(9781); 3397 3398var SPECIES = wellKnownSymbol('species'); 3399 3400module.exports = function (CONSTRUCTOR_NAME) { 3401 var Constructor = getBuiltIn(CONSTRUCTOR_NAME); 3402 3403 if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) { 3404 defineBuiltInAccessor(Constructor, SPECIES, { 3405 configurable: true, 3406 get: function () { return this; } 3407 }); 3408 } 3409}; 3410 3411 3412/***/ }), 3413 3414/***/ 8003: 3415/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3416 3417var defineProperty = (__webpack_require__(3070).f); 3418var hasOwn = __webpack_require__(2597); 3419var wellKnownSymbol = __webpack_require__(5112); 3420 3421var TO_STRING_TAG = wellKnownSymbol('toStringTag'); 3422 3423module.exports = function (target, TAG, STATIC) { 3424 if (target && !STATIC) target = target.prototype; 3425 if (target && !hasOwn(target, TO_STRING_TAG)) { 3426 defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG }); 3427 } 3428}; 3429 3430 3431/***/ }), 3432 3433/***/ 6200: 3434/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3435 3436var shared = __webpack_require__(2309); 3437var uid = __webpack_require__(9711); 3438 3439var keys = shared('keys'); 3440 3441module.exports = function (key) { 3442 return keys[key] || (keys[key] = uid(key)); 3443}; 3444 3445 3446/***/ }), 3447 3448/***/ 5465: 3449/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3450 3451var global = __webpack_require__(7854); 3452var defineGlobalProperty = __webpack_require__(3072); 3453 3454var SHARED = '__core-js_shared__'; 3455var store = global[SHARED] || defineGlobalProperty(SHARED, {}); 3456 3457module.exports = store; 3458 3459 3460/***/ }), 3461 3462/***/ 2309: 3463/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3464 3465var IS_PURE = __webpack_require__(1913); 3466var store = __webpack_require__(5465); 3467 3468(module.exports = function (key, value) { 3469 return store[key] || (store[key] = value !== undefined ? value : {}); 3470})('versions', []).push({ 3471 version: '3.29.1', 3472 mode: IS_PURE ? 'pure' : 'global', 3473 copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)', 3474 license: 'https://github.com/zloirock/core-js/blob/v3.29.1/LICENSE', 3475 source: 'https://github.com/zloirock/core-js' 3476}); 3477 3478 3479/***/ }), 3480 3481/***/ 6707: 3482/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3483 3484var anObject = __webpack_require__(9670); 3485var aConstructor = __webpack_require__(9483); 3486var isNullOrUndefined = __webpack_require__(8554); 3487var wellKnownSymbol = __webpack_require__(5112); 3488 3489var SPECIES = wellKnownSymbol('species'); 3490 3491// `SpeciesConstructor` abstract operation 3492// https://tc39.es/ecma262/#sec-speciesconstructor 3493module.exports = function (O, defaultConstructor) { 3494 var C = anObject(O).constructor; 3495 var S; 3496 return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S); 3497}; 3498 3499 3500/***/ }), 3501 3502/***/ 8710: 3503/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3504 3505var uncurryThis = __webpack_require__(1702); 3506var toIntegerOrInfinity = __webpack_require__(9303); 3507var toString = __webpack_require__(1340); 3508var requireObjectCoercible = __webpack_require__(4488); 3509 3510var charAt = uncurryThis(''.charAt); 3511var charCodeAt = uncurryThis(''.charCodeAt); 3512var stringSlice = uncurryThis(''.slice); 3513 3514var createMethod = function (CONVERT_TO_STRING) { 3515 return function ($this, pos) { 3516 var S = toString(requireObjectCoercible($this)); 3517 var position = toIntegerOrInfinity(pos); 3518 var size = S.length; 3519 var first, second; 3520 if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined; 3521 first = charCodeAt(S, position); 3522 return first < 0xD800 || first > 0xDBFF || position + 1 === size 3523 || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF 3524 ? CONVERT_TO_STRING 3525 ? charAt(S, position) 3526 : first 3527 : CONVERT_TO_STRING 3528 ? stringSlice(S, position, position + 2) 3529 : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000; 3530 }; 3531}; 3532 3533module.exports = { 3534 // `String.prototype.codePointAt` method 3535 // https://tc39.es/ecma262/#sec-string.prototype.codepointat 3536 codeAt: createMethod(false), 3537 // `String.prototype.at` method 3538 // https://github.com/mathiasbynens/String.prototype.at 3539 charAt: createMethod(true) 3540}; 3541 3542 3543/***/ }), 3544 3545/***/ 3111: 3546/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3547 3548var uncurryThis = __webpack_require__(1702); 3549var requireObjectCoercible = __webpack_require__(4488); 3550var toString = __webpack_require__(1340);
vendor: 4,331 bytes, lines 3551-3685
3551var whitespaces = __webpack_require__(1361); 3552 3553var replace = uncurryThis(''.replace); 3554var ltrim = RegExp('^[' + whitespaces + ']+'); 3555var rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$'); 3556 3557// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation 3558var createMethod = function (TYPE) { 3559 return function ($this) { 3560 var string = toString(requireObjectCoercible($this)); 3561 if (TYPE & 1) string = replace(string, ltrim, ''); 3562 if (TYPE & 2) string = replace(string, rtrim, '$1'); 3563 return string; 3564 }; 3565}; 3566 3567module.exports = { 3568 // `String.prototype.{ trimLeft, trimStart }` methods 3569 // https://tc39.es/ecma262/#sec-string.prototype.trimstart 3570 start: createMethod(1), 3571 // `String.prototype.{ trimRight, trimEnd }` methods 3572 // https://tc39.es/ecma262/#sec-string.prototype.trimend 3573 end: createMethod(2), 3574 // `String.prototype.trim` method 3575 // https://tc39.es/ecma262/#sec-string.prototype.trim 3576 trim: createMethod(3) 3577}; 3578 3579 3580/***/ }), 3581 3582/***/ 6293: 3583/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3584 3585/* eslint-disable es/no-symbol -- required for testing */ 3586var V8_VERSION = __webpack_require__(7392); 3587var fails = __webpack_require__(7293); 3588 3589// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing 3590module.exports = !!Object.getOwnPropertySymbols && !fails(function () { 3591 var symbol = Symbol(); 3592 // Chrome 38 Symbol has incorrect toString conversion 3593 // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances 3594 return !String(symbol) || !(Object(symbol) instanceof Symbol) || 3595 // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances 3596 !Symbol.sham && V8_VERSION && V8_VERSION < 41; 3597}); 3598 3599 3600/***/ }), 3601 3602/***/ 6532: 3603/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3604 3605var call = __webpack_require__(6916); 3606var getBuiltIn = __webpack_require__(5005); 3607var wellKnownSymbol = __webpack_require__(5112); 3608var defineBuiltIn = __webpack_require__(8052); 3609 3610module.exports = function () { 3611 var Symbol = getBuiltIn('Symbol'); 3612 var SymbolPrototype = Symbol && Symbol.prototype; 3613 var valueOf = SymbolPrototype && SymbolPrototype.valueOf; 3614 var TO_PRIMITIVE = wellKnownSymbol('toPrimitive'); 3615 3616 if (SymbolPrototype && !SymbolPrototype[TO_PRIMITIVE]) { 3617 // `Symbol.prototype[@@toPrimitive]` method 3618 // https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive 3619 // eslint-disable-next-line no-unused-vars -- required for .length 3620 defineBuiltIn(SymbolPrototype, TO_PRIMITIVE, function (hint) { 3621 return call(valueOf, this); 3622 }, { arity: 1 }); 3623 } 3624}; 3625 3626 3627/***/ }), 3628 3629/***/ 2015: 3630/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3631 3632var NATIVE_SYMBOL = __webpack_require__(6293); 3633 3634/* eslint-disable es/no-symbol -- safe */ 3635module.exports = NATIVE_SYMBOL && !!Symbol['for'] && !!Symbol.keyFor; 3636 3637 3638/***/ }), 3639 3640/***/ 261: 3641/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3642 3643var global = __webpack_require__(7854); 3644var apply = __webpack_require__(2104); 3645var bind = __webpack_require__(9974); 3646var isCallable = __webpack_require__(614); 3647var hasOwn = __webpack_require__(2597); 3648var fails = __webpack_require__(7293); 3649var html = __webpack_require__(490); 3650var arraySlice = __webpack_require__(206); 3651var createElement = __webpack_require__(317); 3652var validateArgumentsLength = __webpack_require__(8053); 3653var IS_IOS = __webpack_require__(6833); 3654var IS_NODE = __webpack_require__(5268); 3655 3656var set = global.setImmediate; 3657var clear = global.clearImmediate; 3658var process = global.process; 3659var Dispatch = global.Dispatch; 3660var Function = global.Function; 3661var MessageChannel = global.MessageChannel; 3662var String = global.String; 3663var counter = 0; 3664var queue = {}; 3665var ONREADYSTATECHANGE = 'onreadystatechange'; 3666var $location, defer, channel, port; 3667 3668fails(function () { 3669 // Deno throws a ReferenceError on `location` access without `--location` flag 3670 $location = global.location; 3671}); 3672 3673var run = function (id) { 3674 if (hasOwn(queue, id)) { 3675 var fn = queue[id]; 3676 delete queue[id]; 3677 fn(); 3678 } 3679}; 3680 3681var runner = function (id) { 3682 return function () { 3683 run(id); 3684 }; 3685};
vendor: 9,815 bytes, lines 3686-4062
3686 3687var eventListener = function (event) { 3688 run(event.data); 3689}; 3690 3691var globalPostMessageDefer = function (id) { 3692 // old engines have not location.origin 3693 global.postMessage(String(id), $location.protocol + '//' + $location.host); 3694}; 3695 3696// Node.js 0.9+ & IE10+ has setImmediate, otherwise: 3697if (!set || !clear) { 3698 set = function setImmediate(handler) { 3699 validateArgumentsLength(arguments.length, 1); 3700 var fn = isCallable(handler) ? handler : Function(handler); 3701 var args = arraySlice(arguments, 1); 3702 queue[++counter] = function () { 3703 apply(fn, undefined, args); 3704 }; 3705 defer(counter); 3706 return counter; 3707 }; 3708 clear = function clearImmediate(id) { 3709 delete queue[id]; 3710 }; 3711 // Node.js 0.8- 3712 if (IS_NODE) { 3713 defer = function (id) { 3714 process.nextTick(runner(id)); 3715 }; 3716 // Sphere (JS game engine) Dispatch API 3717 } else if (Dispatch && Dispatch.now) { 3718 defer = function (id) { 3719 Dispatch.now(runner(id)); 3720 }; 3721 // Browsers with MessageChannel, includes WebWorkers 3722 // except iOS - https://github.com/zloirock/core-js/issues/624 3723 } else if (MessageChannel && !IS_IOS) { 3724 channel = new MessageChannel(); 3725 port = channel.port2; 3726 channel.port1.onmessage = eventListener; 3727 defer = bind(port.postMessage, port); 3728 // Browsers with postMessage, skip WebWorkers 3729 // IE8 has postMessage, but it's sync & typeof its postMessage is 'object' 3730 } else if ( 3731 global.addEventListener && 3732 isCallable(global.postMessage) && 3733 !global.importScripts && 3734 $location && $location.protocol !== 'file:' && 3735 !fails(globalPostMessageDefer) 3736 ) { 3737 defer = globalPostMessageDefer; 3738 global.addEventListener('message', eventListener, false); 3739 // IE8- 3740 } else if (ONREADYSTATECHANGE in createElement('script')) { 3741 defer = function (id) { 3742 html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () { 3743 html.removeChild(this); 3744 run(id); 3745 }; 3746 }; 3747 // Rest old browsers 3748 } else { 3749 defer = function (id) { 3750 setTimeout(runner(id), 0); 3751 }; 3752 } 3753} 3754 3755module.exports = { 3756 set: set, 3757 clear: clear 3758}; 3759 3760 3761/***/ }), 3762 3763/***/ 863: 3764/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3765 3766var uncurryThis = __webpack_require__(1702); 3767 3768// `thisNumberValue` abstract operation 3769// https://tc39.es/ecma262/#sec-thisnumbervalue 3770module.exports = uncurryThis(1.0.valueOf); 3771 3772 3773/***/ }), 3774 3775/***/ 1400: 3776/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3777 3778var toIntegerOrInfinity = __webpack_require__(9303); 3779 3780var max = Math.max; 3781var min = Math.min; 3782 3783// Helper for a popular repeating case of the spec: 3784// Let integer be ? ToInteger(index). 3785// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length). 3786module.exports = function (index, length) { 3787 var integer = toIntegerOrInfinity(index); 3788 return integer < 0 ? max(integer + length, 0) : min(integer, length); 3789}; 3790 3791 3792/***/ }), 3793 3794/***/ 5656: 3795/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3796 3797// toObject with fallback for non-array-like ES3 strings 3798var IndexedObject = __webpack_require__(8361); 3799var requireObjectCoercible = __webpack_require__(4488); 3800 3801module.exports = function (it) { 3802 return IndexedObject(requireObjectCoercible(it)); 3803}; 3804 3805 3806/***/ }), 3807 3808/***/ 9303: 3809/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3810 3811var trunc = __webpack_require__(4758); 3812 3813// `ToIntegerOrInfinity` abstract operation 3814// https://tc39.es/ecma262/#sec-tointegerorinfinity 3815module.exports = function (argument) { 3816 var number = +argument; 3817 // eslint-disable-next-line no-self-compare -- NaN check 3818 return number !== number || number === 0 ? 0 : trunc(number); 3819}; 3820 3821 3822/***/ }), 3823 3824/***/ 7466: 3825/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3826 3827var toIntegerOrInfinity = __webpack_require__(9303); 3828 3829var min = Math.min; 3830 3831// `ToLength` abstract operation 3832// https://tc39.es/ecma262/#sec-tolength 3833module.exports = function (argument) { 3834 return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991 3835}; 3836 3837 3838/***/ }), 3839 3840/***/ 7908: 3841/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3842 3843var requireObjectCoercible = __webpack_require__(4488); 3844 3845var $Object = Object; 3846 3847// `ToObject` abstract operation 3848// https://tc39.es/ecma262/#sec-toobject 3849module.exports = function (argument) { 3850 return $Object(requireObjectCoercible(argument)); 3851}; 3852 3853 3854/***/ }), 3855 3856/***/ 7593: 3857/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3858 3859var call = __webpack_require__(6916); 3860var isObject = __webpack_require__(111); 3861var isSymbol = __webpack_require__(2190); 3862var getMethod = __webpack_require__(8173); 3863var ordinaryToPrimitive = __webpack_require__(2140); 3864var wellKnownSymbol = __webpack_require__(5112); 3865 3866var $TypeError = TypeError; 3867var TO_PRIMITIVE = wellKnownSymbol('toPrimitive'); 3868 3869// `ToPrimitive` abstract operation 3870// https://tc39.es/ecma262/#sec-toprimitive 3871module.exports = function (input, pref) { 3872 if (!isObject(input) || isSymbol(input)) return input; 3873 var exoticToPrim = getMethod(input, TO_PRIMITIVE); 3874 var result; 3875 if (exoticToPrim) { 3876 if (pref === undefined) pref = 'default'; 3877 result = call(exoticToPrim, input, pref); 3878 if (!isObject(result) || isSymbol(result)) return result; 3879 throw $TypeError("Can't convert object to primitive value"); 3880 } 3881 if (pref === undefined) pref = 'number'; 3882 return ordinaryToPrimitive(input, pref); 3883}; 3884 3885 3886/***/ }), 3887 3888/***/ 4948: 3889/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3890 3891var toPrimitive = __webpack_require__(7593); 3892var isSymbol = __webpack_require__(2190); 3893 3894// `ToPropertyKey` abstract operation 3895// https://tc39.es/ecma262/#sec-topropertykey 3896module.exports = function (argument) { 3897 var key = toPrimitive(argument, 'string'); 3898 return isSymbol(key) ? key : key + ''; 3899}; 3900 3901 3902/***/ }), 3903 3904/***/ 1694: 3905/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3906 3907var wellKnownSymbol = __webpack_require__(5112); 3908 3909var TO_STRING_TAG = wellKnownSymbol('toStringTag'); 3910var test = {}; 3911 3912test[TO_STRING_TAG] = 'z'; 3913 3914module.exports = String(test) === '[object z]'; 3915 3916 3917/***/ }), 3918 3919/***/ 1340: 3920/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3921 3922var classof = __webpack_require__(648); 3923 3924var $String = String; 3925 3926module.exports = function (argument) { 3927 if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string'); 3928 return $String(argument); 3929}; 3930 3931 3932/***/ }), 3933 3934/***/ 6330: 3935/***/ (function(module) { 3936 3937var $String = String; 3938 3939module.exports = function (argument) { 3940 try { 3941 return $String(argument); 3942 } catch (error) { 3943 return 'Object'; 3944 } 3945}; 3946 3947 3948/***/ }), 3949 3950/***/ 9711: 3951/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3952 3953var uncurryThis = __webpack_require__(1702); 3954 3955var id = 0; 3956var postfix = Math.random(); 3957var toString = uncurryThis(1.0.toString); 3958 3959module.exports = function (key) { 3960 return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36); 3961}; 3962 3963 3964/***/ }), 3965 3966/***/ 3307: 3967/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3968 3969/* eslint-disable es/no-symbol -- required for testing */ 3970var NATIVE_SYMBOL = __webpack_require__(6293); 3971 3972module.exports = NATIVE_SYMBOL 3973 && !Symbol.sham 3974 && typeof Symbol.iterator == 'symbol'; 3975 3976 3977/***/ }), 3978 3979/***/ 3353: 3980/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 3981 3982var DESCRIPTORS = __webpack_require__(9781); 3983var fails = __webpack_require__(7293); 3984 3985// V8 ~ Chrome 36- 3986// https://bugs.chromium.org/p/v8/issues/detail?id=3334 3987module.exports = DESCRIPTORS && fails(function () { 3988 // eslint-disable-next-line es/no-object-defineproperty -- required for testing 3989 return Object.defineProperty(function () { /* empty */ }, 'prototype', { 3990 value: 42, 3991 writable: false 3992 }).prototype != 42; 3993}); 3994 3995 3996/***/ }), 3997 3998/***/ 8053: 3999/***/ (function(module) { 4000 4001var $TypeError = TypeError; 4002 4003module.exports = function (passed, required) { 4004 if (passed < required) throw $TypeError('Not enough arguments'); 4005 return passed; 4006}; 4007 4008 4009/***/ }), 4010 4011/***/ 4811: 4012/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 4013 4014var global = __webpack_require__(7854); 4015var isCallable = __webpack_require__(614); 4016 4017var WeakMap = global.WeakMap; 4018 4019module.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap)); 4020 4021 4022/***/ }), 4023 4024/***/ 6800: 4025/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 4026 4027var path = __webpack_require__(857); 4028var hasOwn = __webpack_require__(2597); 4029var wrappedWellKnownSymbolModule = __webpack_require__(6061); 4030var defineProperty = (__webpack_require__(3070).f); 4031 4032module.exports = function (NAME) { 4033 var Symbol = path.Symbol || (path.Symbol = {}); 4034 if (!hasOwn(Symbol, NAME)) defineProperty(Symbol, NAME, { 4035 value: wrappedWellKnownSymbolModule.f(NAME) 4036 }); 4037}; 4038 4039 4040/***/ }), 4041 4042/***/ 6061: 4043/***/ (function(__unused_webpack_module, exports, __webpack_require__) { 4044 4045var wellKnownSymbol = __webpack_require__(5112); 4046 4047exports.f = wellKnownSymbol; 4048 4049 4050/***/ }), 4051 4052/***/ 5112: 4053/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 4054 4055var global = __webpack_require__(7854); 4056var shared = __webpack_require__(2309); 4057var hasOwn = __webpack_require__(2597); 4058var uid = __webpack_require__(9711); 4059var NATIVE_SYMBOL = __webpack_require__(6293); 4060var USE_SYMBOL_AS_UID = __webpack_require__(3307); 4061 4062var Symbol = global.Symbol;
vendor: 8,927 bytes, lines 4063-4328
4063var WellKnownSymbolsStore = shared('wks'); 4064var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid; 4065 4066module.exports = function (name) { 4067 if (!hasOwn(WellKnownSymbolsStore, name)) { 4068 WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name) 4069 ? Symbol[name] 4070 : createWellKnownSymbol('Symbol.' + name); 4071 } return WellKnownSymbolsStore[name]; 4072}; 4073 4074 4075/***/ }), 4076 4077/***/ 1361: 4078/***/ (function(module) { 4079 4080// a string of all valid unicode whitespaces 4081module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002' + 4082 '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; 4083 4084 4085/***/ }), 4086 4087/***/ 2222: 4088/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4089 4090"use strict"; 4091 4092var $ = __webpack_require__(2109); 4093var fails = __webpack_require__(7293); 4094var isArray = __webpack_require__(3157); 4095var isObject = __webpack_require__(111); 4096var toObject = __webpack_require__(7908); 4097var lengthOfArrayLike = __webpack_require__(6244); 4098var doesNotExceedSafeInteger = __webpack_require__(7207); 4099var createProperty = __webpack_require__(6135); 4100var arraySpeciesCreate = __webpack_require__(5417); 4101var arrayMethodHasSpeciesSupport = __webpack_require__(1194); 4102var wellKnownSymbol = __webpack_require__(5112); 4103var V8_VERSION = __webpack_require__(7392); 4104 4105var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable'); 4106 4107// We can't use this feature detection in V8 since it causes 4108// deoptimization and serious performance degradation 4109// https://github.com/zloirock/core-js/issues/679 4110var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () { 4111 var array = []; 4112 array[IS_CONCAT_SPREADABLE] = false; 4113 return array.concat()[0] !== array; 4114}); 4115 4116var isConcatSpreadable = function (O) { 4117 if (!isObject(O)) return false; 4118 var spreadable = O[IS_CONCAT_SPREADABLE]; 4119 return spreadable !== undefined ? !!spreadable : isArray(O); 4120}; 4121 4122var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat'); 4123 4124// `Array.prototype.concat` method 4125// https://tc39.es/ecma262/#sec-array.prototype.concat 4126// with adding support of @@isConcatSpreadable and @@species 4127$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, { 4128 // eslint-disable-next-line no-unused-vars -- required for `.length` 4129 concat: function concat(arg) { 4130 var O = toObject(this); 4131 var A = arraySpeciesCreate(O, 0); 4132 var n = 0; 4133 var i, k, length, len, E; 4134 for (i = -1, length = arguments.length; i < length; i++) { 4135 E = i === -1 ? O : arguments[i]; 4136 if (isConcatSpreadable(E)) { 4137 len = lengthOfArrayLike(E); 4138 doesNotExceedSafeInteger(n + len); 4139 for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]); 4140 } else { 4141 doesNotExceedSafeInteger(n + 1); 4142 createProperty(A, n++, E); 4143 } 4144 } 4145 A.length = n; 4146 return A; 4147 } 4148}); 4149 4150 4151/***/ }), 4152 4153/***/ 7327: 4154/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4155 4156"use strict"; 4157 4158var $ = __webpack_require__(2109); 4159var $filter = (__webpack_require__(2092).filter); 4160var arrayMethodHasSpeciesSupport = __webpack_require__(1194); 4161 4162var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter'); 4163 4164// `Array.prototype.filter` method 4165// https://tc39.es/ecma262/#sec-array.prototype.filter 4166// with adding support of @@species 4167$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { 4168 filter: function filter(callbackfn /* , thisArg */) { 4169 return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); 4170 } 4171}); 4172 4173 4174/***/ }), 4175 4176/***/ 1038: 4177/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4178 4179var $ = __webpack_require__(2109); 4180var from = __webpack_require__(8457); 4181var checkCorrectnessOfIteration = __webpack_require__(7072); 4182 4183var INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) { 4184 // eslint-disable-next-line es/no-array-from -- required for testing 4185 Array.from(iterable); 4186}); 4187 4188// `Array.from` method 4189// https://tc39.es/ecma262/#sec-array.from 4190$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, { 4191 from: from 4192}); 4193 4194 4195/***/ }), 4196 4197/***/ 6699: 4198/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4199 4200"use strict"; 4201 4202var $ = __webpack_require__(2109); 4203var $includes = (__webpack_require__(1318).includes); 4204var fails = __webpack_require__(7293); 4205var addToUnscopables = __webpack_require__(1223); 4206 4207// FF99+ bug 4208var BROKEN_ON_SPARSE = fails(function () { 4209 // eslint-disable-next-line es/no-array-prototype-includes -- detection 4210 return !Array(1).includes(); 4211}); 4212 4213// `Array.prototype.includes` method 4214// https://tc39.es/ecma262/#sec-array.prototype.includes 4215$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, { 4216 includes: function includes(el /* , fromIndex = 0 */) { 4217 return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined); 4218 } 4219}); 4220 4221// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables 4222addToUnscopables('includes'); 4223 4224 4225/***/ }), 4226 4227/***/ 6992: 4228/***/ (function(module, __unused_webpack_exports, __webpack_require__) { 4229 4230"use strict"; 4231 4232var toIndexedObject = __webpack_require__(5656); 4233var addToUnscopables = __webpack_require__(1223); 4234var Iterators = __webpack_require__(7497); 4235var InternalStateModule = __webpack_require__(9909); 4236var defineProperty = (__webpack_require__(3070).f); 4237var defineIterator = __webpack_require__(1656); 4238var createIterResultObject = __webpack_require__(6178); 4239var IS_PURE = __webpack_require__(1913); 4240var DESCRIPTORS = __webpack_require__(9781); 4241 4242var ARRAY_ITERATOR = 'Array Iterator'; 4243var setInternalState = InternalStateModule.set; 4244var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR); 4245 4246// `Array.prototype.entries` method 4247// https://tc39.es/ecma262/#sec-array.prototype.entries 4248// `Array.prototype.keys` method 4249// https://tc39.es/ecma262/#sec-array.prototype.keys 4250// `Array.prototype.values` method 4251// https://tc39.es/ecma262/#sec-array.prototype.values 4252// `Array.prototype[@@iterator]` method 4253// https://tc39.es/ecma262/#sec-array.prototype-@@iterator 4254// `CreateArrayIterator` internal method 4255// https://tc39.es/ecma262/#sec-createarrayiterator 4256module.exports = defineIterator(Array, 'Array', function (iterated, kind) { 4257 setInternalState(this, { 4258 type: ARRAY_ITERATOR, 4259 target: toIndexedObject(iterated), // target 4260 index: 0, // next index 4261 kind: kind // kind 4262 }); 4263// `%ArrayIteratorPrototype%.next` method 4264// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next 4265}, function () { 4266 var state = getInternalState(this); 4267 var target = state.target; 4268 var kind = state.kind; 4269 var index = state.index++; 4270 if (!target || index >= target.length) { 4271 state.target = undefined; 4272 return createIterResultObject(undefined, true); 4273 } 4274 if (kind == 'keys') return createIterResultObject(index, false); 4275 if (kind == 'values') return createIterResultObject(target[index], false); 4276 return createIterResultObject([index, target[index]], false); 4277}, 'values'); 4278 4279// argumentsList[@@iterator] is %ArrayProto_values% 4280// https://tc39.es/ecma262/#sec-createunmappedargumentsobject 4281// https://tc39.es/ecma262/#sec-createmappedargumentsobject 4282var values = Iterators.Arguments = Iterators.Array; 4283 4284// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables 4285addToUnscopables('keys'); 4286addToUnscopables('values'); 4287addToUnscopables('entries'); 4288 4289// V8 ~ Chrome 45- bug 4290if (!IS_PURE && DESCRIPTORS && values.name !== 'values') try { 4291 defineProperty(values, 'name', { value: 'values' }); 4292} catch (error) { /* empty */ } 4293 4294 4295/***/ }), 4296 4297/***/ 1249: 4298/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4299 4300"use strict"; 4301 4302var $ = __webpack_require__(2109); 4303var $map = (__webpack_require__(2092).map); 4304var arrayMethodHasSpeciesSupport = __webpack_require__(1194); 4305 4306var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map'); 4307 4308// `Array.prototype.map` method 4309// https://tc39.es/ecma262/#sec-array.prototype.map 4310// with adding support of @@species 4311$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { 4312 map: function map(callbackfn /* , thisArg */) { 4313 return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); 4314 } 4315}); 4316 4317 4318/***/ }), 4319 4320/***/ 5827: 4321/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4322 4323"use strict"; 4324 4325var $ = __webpack_require__(2109); 4326var $reduce = (__webpack_require__(3671).left); 4327var arrayMethodIsStrict = __webpack_require__(9341); 4328var CHROME_VERSION = __webpack_require__(7392);
vendor: 4,121 bytes, lines 4329-4443
4329var IS_NODE = __webpack_require__(5268); 4330 4331// Chrome 80-82 has a critical bug 4332// https://bugs.chromium.org/p/chromium/issues/detail?id=1049982 4333var CHROME_BUG = !IS_NODE && CHROME_VERSION > 79 && CHROME_VERSION < 83; 4334var FORCED = CHROME_BUG || !arrayMethodIsStrict('reduce'); 4335 4336// `Array.prototype.reduce` method 4337// https://tc39.es/ecma262/#sec-array.prototype.reduce 4338$({ target: 'Array', proto: true, forced: FORCED }, { 4339 reduce: function reduce(callbackfn /* , initialValue */) { 4340 var length = arguments.length; 4341 return $reduce(this, callbackfn, length, length > 1 ? arguments[1] : undefined); 4342 } 4343}); 4344 4345 4346/***/ }), 4347 4348/***/ 7042: 4349/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4350 4351"use strict"; 4352 4353var $ = __webpack_require__(2109); 4354var isArray = __webpack_require__(3157); 4355var isConstructor = __webpack_require__(4411); 4356var isObject = __webpack_require__(111); 4357var toAbsoluteIndex = __webpack_require__(1400); 4358var lengthOfArrayLike = __webpack_require__(6244); 4359var toIndexedObject = __webpack_require__(5656); 4360var createProperty = __webpack_require__(6135); 4361var wellKnownSymbol = __webpack_require__(5112); 4362var arrayMethodHasSpeciesSupport = __webpack_require__(1194); 4363var nativeSlice = __webpack_require__(206); 4364 4365var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice'); 4366 4367var SPECIES = wellKnownSymbol('species'); 4368var $Array = Array; 4369var max = Math.max; 4370 4371// `Array.prototype.slice` method 4372// https://tc39.es/ecma262/#sec-array.prototype.slice 4373// fallback for not array-like ES3 strings and DOM objects 4374$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { 4375 slice: function slice(start, end) { 4376 var O = toIndexedObject(this); 4377 var length = lengthOfArrayLike(O); 4378 var k = toAbsoluteIndex(start, length); 4379 var fin = toAbsoluteIndex(end === undefined ? length : end, length); 4380 // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible 4381 var Constructor, result, n; 4382 if (isArray(O)) { 4383 Constructor = O.constructor; 4384 // cross-realm fallback 4385 if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) { 4386 Constructor = undefined; 4387 } else if (isObject(Constructor)) { 4388 Constructor = Constructor[SPECIES]; 4389 if (Constructor === null) Constructor = undefined; 4390 } 4391 if (Constructor === $Array || Constructor === undefined) { 4392 return nativeSlice(O, k, fin); 4393 } 4394 } 4395 result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0)); 4396 for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]); 4397 result.length = n; 4398 return result; 4399 } 4400}); 4401 4402 4403/***/ }), 4404 4405/***/ 6078: 4406/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4407 4408var hasOwn = __webpack_require__(2597); 4409var defineBuiltIn = __webpack_require__(8052); 4410var dateToPrimitive = __webpack_require__(8709); 4411var wellKnownSymbol = __webpack_require__(5112); 4412 4413var TO_PRIMITIVE = wellKnownSymbol('toPrimitive'); 4414var DatePrototype = Date.prototype; 4415 4416// `Date.prototype[@@toPrimitive]` method 4417// https://tc39.es/ecma262/#sec-date.prototype-@@toprimitive 4418if (!hasOwn(DatePrototype, TO_PRIMITIVE)) { 4419 defineBuiltIn(DatePrototype, TO_PRIMITIVE, dateToPrimitive); 4420} 4421 4422 4423/***/ }), 4424 4425/***/ 8862: 4426/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4427 4428var $ = __webpack_require__(2109); 4429var getBuiltIn = __webpack_require__(5005); 4430var apply = __webpack_require__(2104); 4431var call = __webpack_require__(6916); 4432var uncurryThis = __webpack_require__(1702); 4433var fails = __webpack_require__(7293); 4434var isCallable = __webpack_require__(614); 4435var isSymbol = __webpack_require__(2190); 4436var arraySlice = __webpack_require__(206); 4437var getReplacerFunction = __webpack_require__(8044); 4438var NATIVE_SYMBOL = __webpack_require__(6293); 4439 4440var $String = String; 4441var $stringify = getBuiltIn('JSON', 'stringify'); 4442var exec = uncurryThis(/./.exec); 4443var charAt = uncurryThis(''.charAt);
vendor: 4,148 bytes, lines 4444-4558
4444var charCodeAt = uncurryThis(''.charCodeAt); 4445var replace = uncurryThis(''.replace); 4446var numberToString = uncurryThis(1.0.toString); 4447 4448var tester = /[\uD800-\uDFFF]/g; 4449var low = /^[\uD800-\uDBFF]$/; 4450var hi = /^[\uDC00-\uDFFF]$/; 4451 4452var WRONG_SYMBOLS_CONVERSION = !NATIVE_SYMBOL || fails(function () { 4453 var symbol = getBuiltIn('Symbol')(); 4454 // MS Edge converts symbol values to JSON as {} 4455 return $stringify([symbol]) != '[null]' 4456 // WebKit converts symbol values to JSON as null 4457 || $stringify({ a: symbol }) != '{}' 4458 // V8 throws on boxed symbols 4459 || $stringify(Object(symbol)) != '{}'; 4460}); 4461 4462// https://github.com/tc39/proposal-well-formed-stringify 4463var ILL_FORMED_UNICODE = fails(function () { 4464 return $stringify('\uDF06\uD834') !== '"\\udf06\\ud834"' 4465 || $stringify('\uDEAD') !== '"\\udead"'; 4466}); 4467 4468var stringifyWithSymbolsFix = function (it, replacer) { 4469 var args = arraySlice(arguments); 4470 var $replacer = getReplacerFunction(replacer); 4471 if (!isCallable($replacer) && (it === undefined || isSymbol(it))) return; // IE8 returns string on undefined 4472 args[1] = function (key, value) { 4473 // some old implementations (like WebKit) could pass numbers as keys 4474 if (isCallable($replacer)) value = call($replacer, this, $String(key), value); 4475 if (!isSymbol(value)) return value; 4476 }; 4477 return apply($stringify, null, args); 4478}; 4479 4480var fixIllFormed = function (match, offset, string) { 4481 var prev = charAt(string, offset - 1); 4482 var next = charAt(string, offset + 1); 4483 if ((exec(low, match) && !exec(hi, next)) || (exec(hi, match) && !exec(low, prev))) { 4484 return '\\u' + numberToString(charCodeAt(match, 0), 16); 4485 } return match; 4486}; 4487 4488if ($stringify) { 4489 // `JSON.stringify` method 4490 // https://tc39.es/ecma262/#sec-json.stringify 4491 $({ target: 'JSON', stat: true, arity: 3, forced: WRONG_SYMBOLS_CONVERSION || ILL_FORMED_UNICODE }, { 4492 // eslint-disable-next-line no-unused-vars -- required for `.length` 4493 stringify: function stringify(it, replacer, space) { 4494 var args = arraySlice(arguments); 4495 var result = apply(WRONG_SYMBOLS_CONVERSION ? stringifyWithSymbolsFix : $stringify, null, args); 4496 return ILL_FORMED_UNICODE && typeof result == 'string' ? replace(result, tester, fixIllFormed) : result; 4497 } 4498 }); 4499} 4500 4501 4502/***/ }), 4503 4504/***/ 3706: 4505/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4506 4507var global = __webpack_require__(7854); 4508var setToStringTag = __webpack_require__(8003); 4509 4510// JSON[@@toStringTag] property 4511// https://tc39.es/ecma262/#sec-json-@@tostringtag 4512setToStringTag(global.JSON, 'JSON', true); 4513 4514 4515/***/ }), 4516 4517/***/ 2703: 4518/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4519 4520var setToStringTag = __webpack_require__(8003); 4521 4522// Math[@@toStringTag] property 4523// https://tc39.es/ecma262/#sec-math-@@tostringtag 4524setToStringTag(Math, 'Math', true); 4525 4526 4527/***/ }), 4528 4529/***/ 9653: 4530/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4531 4532"use strict"; 4533 4534var $ = __webpack_require__(2109); 4535var IS_PURE = __webpack_require__(1913); 4536var DESCRIPTORS = __webpack_require__(9781); 4537var global = __webpack_require__(7854); 4538var path = __webpack_require__(857); 4539var uncurryThis = __webpack_require__(1702); 4540var isForced = __webpack_require__(4705); 4541var hasOwn = __webpack_require__(2597); 4542var inheritIfRequired = __webpack_require__(9587); 4543var isPrototypeOf = __webpack_require__(7976); 4544var isSymbol = __webpack_require__(2190); 4545var toPrimitive = __webpack_require__(7593); 4546var fails = __webpack_require__(7293); 4547var getOwnPropertyNames = (__webpack_require__(8006).f); 4548var getOwnPropertyDescriptor = (__webpack_require__(1236).f); 4549var defineProperty = (__webpack_require__(3070).f); 4550var thisNumberValue = __webpack_require__(863); 4551var trim = (__webpack_require__(3111).trim); 4552 4553var NUMBER = 'Number'; 4554var NativeNumber = global[NUMBER]; 4555var PureNumberNamespace = path[NUMBER]; 4556var NumberPrototype = NativeNumber.prototype; 4557var TypeError = global.TypeError; 4558var stringSlice = uncurryThis(''.slice);
vendor: 6,407 bytes, lines 4559-4731
4559var charCodeAt = uncurryThis(''.charCodeAt); 4560 4561// `ToNumeric` abstract operation 4562// https://tc39.es/ecma262/#sec-tonumeric 4563var toNumeric = function (value) { 4564 var primValue = toPrimitive(value, 'number'); 4565 return typeof primValue == 'bigint' ? primValue : toNumber(primValue); 4566}; 4567 4568// `ToNumber` abstract operation 4569// https://tc39.es/ecma262/#sec-tonumber 4570var toNumber = function (argument) { 4571 var it = toPrimitive(argument, 'number'); 4572 var first, third, radix, maxCode, digits, length, index, code; 4573 if (isSymbol(it)) throw TypeError('Cannot convert a Symbol value to a number'); 4574 if (typeof it == 'string' && it.length > 2) { 4575 it = trim(it); 4576 first = charCodeAt(it, 0); 4577 if (first === 43 || first === 45) { 4578 third = charCodeAt(it, 2); 4579 if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix 4580 } else if (first === 48) { 4581 switch (charCodeAt(it, 1)) { 4582 case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i 4583 case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i 4584 default: return +it; 4585 } 4586 digits = stringSlice(it, 2); 4587 length = digits.length; 4588 for (index = 0; index < length; index++) { 4589 code = charCodeAt(digits, index); 4590 // parseInt parses a string to a first unavailable symbol 4591 // but ToNumber should return NaN if a string contains unavailable symbols 4592 if (code < 48 || code > maxCode) return NaN; 4593 } return parseInt(digits, radix); 4594 } 4595 } return +it; 4596}; 4597 4598var FORCED = isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1')); 4599 4600var calledWithNew = function (dummy) { 4601 // includes check on 1..constructor(foo) case 4602 return isPrototypeOf(NumberPrototype, dummy) && fails(function () { thisNumberValue(dummy); }); 4603}; 4604 4605// `Number` constructor 4606// https://tc39.es/ecma262/#sec-number-constructor 4607var NumberWrapper = function Number(value) { 4608 var n = arguments.length < 1 ? 0 : NativeNumber(toNumeric(value)); 4609 return calledWithNew(this) ? inheritIfRequired(Object(n), this, NumberWrapper) : n; 4610}; 4611 4612NumberWrapper.prototype = NumberPrototype; 4613if (FORCED && !IS_PURE) NumberPrototype.constructor = NumberWrapper; 4614 4615$({ global: true, constructor: true, wrap: true, forced: FORCED }, { 4616 Number: NumberWrapper 4617}); 4618 4619// Use `internal/copy-constructor-properties` helper in `core-js@4` 4620var copyConstructorProperties = function (target, source) { 4621 for (var keys = DESCRIPTORS ? getOwnPropertyNames(source) : ( 4622 // ES3: 4623 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' + 4624 // ES2015 (in case, if modules with ES2015 Number statics required before): 4625 'EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,' + 4626 // ESNext 4627 'fromString,range' 4628 ).split(','), j = 0, key; keys.length > j; j++) { 4629 if (hasOwn(source, key = keys[j]) && !hasOwn(target, key)) { 4630 defineProperty(target, key, getOwnPropertyDescriptor(source, key)); 4631 } 4632 } 4633}; 4634 4635if (IS_PURE && PureNumberNamespace) copyConstructorProperties(path[NUMBER], PureNumberNamespace); 4636if (FORCED || IS_PURE) copyConstructorProperties(path[NUMBER], NativeNumber); 4637 4638 4639/***/ }), 4640 4641/***/ 9070: 4642/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4643 4644var $ = __webpack_require__(2109); 4645var DESCRIPTORS = __webpack_require__(9781); 4646var defineProperty = (__webpack_require__(3070).f); 4647 4648// `Object.defineProperty` method 4649// https://tc39.es/ecma262/#sec-object.defineproperty 4650// eslint-disable-next-line es/no-object-defineproperty -- safe 4651$({ target: 'Object', stat: true, forced: Object.defineProperty !== defineProperty, sham: !DESCRIPTORS }, { 4652 defineProperty: defineProperty 4653}); 4654 4655 4656/***/ }), 4657 4658/***/ 9660: 4659/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4660 4661var $ = __webpack_require__(2109); 4662var NATIVE_SYMBOL = __webpack_require__(6293); 4663var fails = __webpack_require__(7293); 4664var getOwnPropertySymbolsModule = __webpack_require__(5181); 4665var toObject = __webpack_require__(7908); 4666 4667// V8 ~ Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives 4668// https://bugs.chromium.org/p/v8/issues/detail?id=3443 4669var FORCED = !NATIVE_SYMBOL || fails(function () { getOwnPropertySymbolsModule.f(1); }); 4670 4671// `Object.getOwnPropertySymbols` method 4672// https://tc39.es/ecma262/#sec-object.getownpropertysymbols 4673$({ target: 'Object', stat: true, forced: FORCED }, { 4674 getOwnPropertySymbols: function getOwnPropertySymbols(it) { 4675 var $getOwnPropertySymbols = getOwnPropertySymbolsModule.f; 4676 return $getOwnPropertySymbols ? $getOwnPropertySymbols(toObject(it)) : []; 4677 } 4678}); 4679 4680 4681/***/ }), 4682 4683/***/ 489: 4684/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4685 4686var $ = __webpack_require__(2109); 4687var fails = __webpack_require__(7293); 4688var toObject = __webpack_require__(7908); 4689var nativeGetPrototypeOf = __webpack_require__(9518); 4690var CORRECT_PROTOTYPE_GETTER = __webpack_require__(8544); 4691 4692var FAILS_ON_PRIMITIVES = fails(function () { nativeGetPrototypeOf(1); }); 4693 4694// `Object.getPrototypeOf` method 4695// https://tc39.es/ecma262/#sec-object.getprototypeof 4696$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER }, { 4697 getPrototypeOf: function getPrototypeOf(it) { 4698 return nativeGetPrototypeOf(toObject(it)); 4699 } 4700}); 4701 4702 4703 4704/***/ }), 4705 4706/***/ 8304: 4707/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4708 4709var $ = __webpack_require__(2109); 4710var setPrototypeOf = __webpack_require__(7674); 4711 4712// `Object.setPrototypeOf` method 4713// https://tc39.es/ecma262/#sec-object.setprototypeof 4714$({ target: 'Object', stat: true }, { 4715 setPrototypeOf: setPrototypeOf 4716}); 4717 4718 4719/***/ }), 4720 4721/***/ 1539: 4722/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4723 4724var TO_STRING_TAG_SUPPORT = __webpack_require__(1694); 4725var defineBuiltIn = __webpack_require__(8052); 4726var toString = __webpack_require__(288); 4727 4728// `Object.prototype.toString` method 4729// https://tc39.es/ecma262/#sec-object.prototype.tostring 4730if (!TO_STRING_TAG_SUPPORT) { 4731 defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });
vendor: 18,882 bytes, lines 4732-5318
4732} 4733 4734 4735/***/ }), 4736 4737/***/ 821: 4738/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4739 4740"use strict"; 4741 4742var $ = __webpack_require__(2109); 4743var call = __webpack_require__(6916); 4744var aCallable = __webpack_require__(9662); 4745var newPromiseCapabilityModule = __webpack_require__(8523); 4746var perform = __webpack_require__(2534); 4747var iterate = __webpack_require__(408); 4748var PROMISE_STATICS_INCORRECT_ITERATION = __webpack_require__(612); 4749 4750// `Promise.all` method 4751// https://tc39.es/ecma262/#sec-promise.all 4752$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, { 4753 all: function all(iterable) { 4754 var C = this; 4755 var capability = newPromiseCapabilityModule.f(C); 4756 var resolve = capability.resolve; 4757 var reject = capability.reject; 4758 var result = perform(function () { 4759 var $promiseResolve = aCallable(C.resolve); 4760 var values = []; 4761 var counter = 0; 4762 var remaining = 1; 4763 iterate(iterable, function (promise) { 4764 var index = counter++; 4765 var alreadyCalled = false; 4766 remaining++; 4767 call($promiseResolve, C, promise).then(function (value) { 4768 if (alreadyCalled) return; 4769 alreadyCalled = true; 4770 values[index] = value; 4771 --remaining || resolve(values); 4772 }, reject); 4773 }); 4774 --remaining || resolve(values); 4775 }); 4776 if (result.error) reject(result.value); 4777 return capability.promise; 4778 } 4779}); 4780 4781 4782/***/ }), 4783 4784/***/ 4164: 4785/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4786 4787"use strict"; 4788 4789var $ = __webpack_require__(2109); 4790var IS_PURE = __webpack_require__(1913); 4791var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(3702).CONSTRUCTOR); 4792var NativePromiseConstructor = __webpack_require__(2492); 4793var getBuiltIn = __webpack_require__(5005); 4794var isCallable = __webpack_require__(614); 4795var defineBuiltIn = __webpack_require__(8052); 4796 4797var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype; 4798 4799// `Promise.prototype.catch` method 4800// https://tc39.es/ecma262/#sec-promise.prototype.catch 4801$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, { 4802 'catch': function (onRejected) { 4803 return this.then(undefined, onRejected); 4804 } 4805}); 4806 4807// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then` 4808if (!IS_PURE && isCallable(NativePromiseConstructor)) { 4809 var method = getBuiltIn('Promise').prototype['catch']; 4810 if (NativePromisePrototype['catch'] !== method) { 4811 defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true }); 4812 } 4813} 4814 4815 4816/***/ }), 4817 4818/***/ 3401: 4819/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 4820 4821"use strict"; 4822 4823var $ = __webpack_require__(2109); 4824var IS_PURE = __webpack_require__(1913); 4825var IS_NODE = __webpack_require__(5268); 4826var global = __webpack_require__(7854); 4827var call = __webpack_require__(6916); 4828var defineBuiltIn = __webpack_require__(8052); 4829var setPrototypeOf = __webpack_require__(7674); 4830var setToStringTag = __webpack_require__(8003); 4831var setSpecies = __webpack_require__(6340); 4832var aCallable = __webpack_require__(9662); 4833var isCallable = __webpack_require__(614); 4834var isObject = __webpack_require__(111); 4835var anInstance = __webpack_require__(5787); 4836var speciesConstructor = __webpack_require__(6707); 4837var task = (__webpack_require__(261).set); 4838var microtask = __webpack_require__(5948); 4839var hostReportErrors = __webpack_require__(842); 4840var perform = __webpack_require__(2534); 4841var Queue = __webpack_require__(8572); 4842var InternalStateModule = __webpack_require__(9909); 4843var NativePromiseConstructor = __webpack_require__(2492); 4844var PromiseConstructorDetection = __webpack_require__(3702); 4845var newPromiseCapabilityModule = __webpack_require__(8523); 4846 4847var PROMISE = 'Promise'; 4848var FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR; 4849var NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT; 4850var NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING; 4851var getInternalPromiseState = InternalStateModule.getterFor(PROMISE); 4852var setInternalState = InternalStateModule.set; 4853var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype; 4854var PromiseConstructor = NativePromiseConstructor; 4855var PromisePrototype = NativePromisePrototype; 4856var TypeError = global.TypeError; 4857var document = global.document; 4858var process = global.process; 4859var newPromiseCapability = newPromiseCapabilityModule.f; 4860var newGenericPromiseCapability = newPromiseCapability; 4861 4862var DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent); 4863var UNHANDLED_REJECTION = 'unhandledrejection'; 4864var REJECTION_HANDLED = 'rejectionhandled'; 4865var PENDING = 0; 4866var FULFILLED = 1; 4867var REJECTED = 2; 4868var HANDLED = 1; 4869var UNHANDLED = 2; 4870 4871var Internal, OwnPromiseCapability, PromiseWrapper, nativeThen; 4872 4873// helpers 4874var isThenable = function (it) { 4875 var then; 4876 return isObject(it) && isCallable(then = it.then) ? then : false; 4877}; 4878 4879var callReaction = function (reaction, state) { 4880 var value = state.value; 4881 var ok = state.state == FULFILLED; 4882 var handler = ok ? reaction.ok : reaction.fail; 4883 var resolve = reaction.resolve; 4884 var reject = reaction.reject; 4885 var domain = reaction.domain; 4886 var result, then, exited; 4887 try { 4888 if (handler) { 4889 if (!ok) { 4890 if (state.rejection === UNHANDLED) onHandleUnhandled(state); 4891 state.rejection = HANDLED; 4892 } 4893 if (handler === true) result = value; 4894 else { 4895 if (domain) domain.enter(); 4896 result = handler(value); // can throw 4897 if (domain) { 4898 domain.exit(); 4899 exited = true; 4900 } 4901 } 4902 if (result === reaction.promise) { 4903 reject(TypeError('Promise-chain cycle')); 4904 } else if (then = isThenable(result)) { 4905 call(then, result, resolve, reject); 4906 } else resolve(result); 4907 } else reject(value); 4908 } catch (error) { 4909 if (domain && !exited) domain.exit(); 4910 reject(error); 4911 } 4912}; 4913 4914var notify = function (state, isReject) { 4915 if (state.notified) return; 4916 state.notified = true; 4917 microtask(function () { 4918 var reactions = state.reactions; 4919 var reaction; 4920 while (reaction = reactions.get()) { 4921 callReaction(reaction, state); 4922 } 4923 state.notified = false; 4924 if (isReject && !state.rejection) onUnhandled(state); 4925 }); 4926}; 4927 4928var dispatchEvent = function (name, promise, reason) { 4929 var event, handler; 4930 if (DISPATCH_EVENT) { 4931 event = document.createEvent('Event'); 4932 event.promise = promise; 4933 event.reason = reason; 4934 event.initEvent(name, false, true); 4935 global.dispatchEvent(event); 4936 } else event = { promise: promise, reason: reason }; 4937 if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event); 4938 else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason); 4939}; 4940 4941var onUnhandled = function (state) { 4942 call(task, global, function () { 4943 var promise = state.facade; 4944 var value = state.value; 4945 var IS_UNHANDLED = isUnhandled(state); 4946 var result; 4947 if (IS_UNHANDLED) { 4948 result = perform(function () { 4949 if (IS_NODE) { 4950 process.emit('unhandledRejection', value, promise); 4951 } else dispatchEvent(UNHANDLED_REJECTION, promise, value); 4952 }); 4953 // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should 4954 state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED; 4955 if (result.error) throw result.value; 4956 } 4957 }); 4958}; 4959 4960var isUnhandled = function (state) { 4961 return state.rejection !== HANDLED && !state.parent; 4962}; 4963 4964var onHandleUnhandled = function (state) { 4965 call(task, global, function () { 4966 var promise = state.facade; 4967 if (IS_NODE) { 4968 process.emit('rejectionHandled', promise); 4969 } else dispatchEvent(REJECTION_HANDLED, promise, state.value); 4970 }); 4971}; 4972 4973var bind = function (fn, state, unwrap) { 4974 return function (value) { 4975 fn(state, value, unwrap); 4976 }; 4977}; 4978 4979var internalReject = function (state, value, unwrap) { 4980 if (state.done) return; 4981 state.done = true; 4982 if (unwrap) state = unwrap; 4983 state.value = value; 4984 state.state = REJECTED; 4985 notify(state, true); 4986}; 4987 4988var internalResolve = function (state, value, unwrap) { 4989 if (state.done) return; 4990 state.done = true; 4991 if (unwrap) state = unwrap; 4992 try { 4993 if (state.facade === value) throw TypeError("Promise can't be resolved itself"); 4994 var then = isThenable(value); 4995 if (then) { 4996 microtask(function () { 4997 var wrapper = { done: false }; 4998 try { 4999 call(then, value, 5000 bind(internalResolve, wrapper, state), 5001 bind(internalReject, wrapper, state) 5002 ); 5003 } catch (error) { 5004 internalReject(wrapper, error, state); 5005 } 5006 }); 5007 } else { 5008 state.value = value; 5009 state.state = FULFILLED; 5010 notify(state, false); 5011 } 5012 } catch (error) { 5013 internalReject({ done: false }, error, state); 5014 } 5015}; 5016 5017// constructor polyfill 5018if (FORCED_PROMISE_CONSTRUCTOR) { 5019 // 25.4.3.1 Promise(executor) 5020 PromiseConstructor = function Promise(executor) { 5021 anInstance(this, PromisePrototype); 5022 aCallable(executor); 5023 call(Internal, this); 5024 var state = getInternalPromiseState(this); 5025 try { 5026 executor(bind(internalResolve, state), bind(internalReject, state)); 5027 } catch (error) { 5028 internalReject(state, error); 5029 } 5030 }; 5031 5032 PromisePrototype = PromiseConstructor.prototype; 5033 5034 // eslint-disable-next-line no-unused-vars -- required for `.length` 5035 Internal = function Promise(executor) { 5036 setInternalState(this, { 5037 type: PROMISE, 5038 done: false, 5039 notified: false, 5040 parent: false, 5041 reactions: new Queue(), 5042 rejection: false, 5043 state: PENDING, 5044 value: undefined 5045 }); 5046 }; 5047 5048 // `Promise.prototype.then` method 5049 // https://tc39.es/ecma262/#sec-promise.prototype.then 5050 Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) { 5051 var state = getInternalPromiseState(this); 5052 var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor)); 5053 state.parent = true; 5054 reaction.ok = isCallable(onFulfilled) ? onFulfilled : true; 5055 reaction.fail = isCallable(onRejected) && onRejected; 5056 reaction.domain = IS_NODE ? process.domain : undefined; 5057 if (state.state == PENDING) state.reactions.add(reaction); 5058 else microtask(function () { 5059 callReaction(reaction, state); 5060 }); 5061 return reaction.promise; 5062 }); 5063 5064 OwnPromiseCapability = function () { 5065 var promise = new Internal(); 5066 var state = getInternalPromiseState(promise); 5067 this.promise = promise; 5068 this.resolve = bind(internalResolve, state); 5069 this.reject = bind(internalReject, state); 5070 }; 5071 5072 newPromiseCapabilityModule.f = newPromiseCapability = function (C) { 5073 return C === PromiseConstructor || C === PromiseWrapper 5074 ? new OwnPromiseCapability(C) 5075 : newGenericPromiseCapability(C); 5076 }; 5077 5078 if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) { 5079 nativeThen = NativePromisePrototype.then; 5080 5081 if (!NATIVE_PROMISE_SUBCLASSING) { 5082 // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs 5083 defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) { 5084 var that = this; 5085 return new PromiseConstructor(function (resolve, reject) { 5086 call(nativeThen, that, resolve, reject); 5087 }).then(onFulfilled, onRejected); 5088 // https://github.com/zloirock/core-js/issues/640 5089 }, { unsafe: true }); 5090 } 5091 5092 // make `.constructor === Promise` work for native promise-based APIs 5093 try { 5094 delete NativePromisePrototype.constructor; 5095 } catch (error) { /* empty */ } 5096 5097 // make `instanceof Promise` work for native promise-based APIs 5098 if (setPrototypeOf) { 5099 setPrototypeOf(NativePromisePrototype, PromisePrototype); 5100 } 5101 } 5102} 5103 5104$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, { 5105 Promise: PromiseConstructor 5106}); 5107 5108setToStringTag(PromiseConstructor, PROMISE, false, true); 5109setSpecies(PROMISE); 5110 5111 5112/***/ }), 5113 5114/***/ 8674: 5115/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5116 5117// TODO: Remove this module from `core-js@4` since it's split to modules listed below 5118__webpack_require__(3401); 5119__webpack_require__(821); 5120__webpack_require__(4164); 5121__webpack_require__(6027); 5122__webpack_require__(683); 5123__webpack_require__(6294); 5124 5125 5126/***/ }), 5127 5128/***/ 6027: 5129/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5130 5131"use strict"; 5132 5133var $ = __webpack_require__(2109); 5134var call = __webpack_require__(6916); 5135var aCallable = __webpack_require__(9662); 5136var newPromiseCapabilityModule = __webpack_require__(8523); 5137var perform = __webpack_require__(2534); 5138var iterate = __webpack_require__(408); 5139var PROMISE_STATICS_INCORRECT_ITERATION = __webpack_require__(612); 5140 5141// `Promise.race` method 5142// https://tc39.es/ecma262/#sec-promise.race 5143$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, { 5144 race: function race(iterable) { 5145 var C = this; 5146 var capability = newPromiseCapabilityModule.f(C); 5147 var reject = capability.reject; 5148 var result = perform(function () { 5149 var $promiseResolve = aCallable(C.resolve); 5150 iterate(iterable, function (promise) { 5151 call($promiseResolve, C, promise).then(capability.resolve, reject); 5152 }); 5153 }); 5154 if (result.error) reject(result.value); 5155 return capability.promise; 5156 } 5157}); 5158 5159 5160/***/ }), 5161 5162/***/ 683: 5163/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5164 5165"use strict"; 5166 5167var $ = __webpack_require__(2109); 5168var call = __webpack_require__(6916); 5169var newPromiseCapabilityModule = __webpack_require__(8523); 5170var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(3702).CONSTRUCTOR); 5171 5172// `Promise.reject` method 5173// https://tc39.es/ecma262/#sec-promise.reject 5174$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, { 5175 reject: function reject(r) { 5176 var capability = newPromiseCapabilityModule.f(this); 5177 call(capability.reject, undefined, r); 5178 return capability.promise; 5179 } 5180}); 5181 5182 5183/***/ }), 5184 5185/***/ 6294: 5186/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5187 5188"use strict"; 5189 5190var $ = __webpack_require__(2109); 5191var getBuiltIn = __webpack_require__(5005); 5192var IS_PURE = __webpack_require__(1913); 5193var NativePromiseConstructor = __webpack_require__(2492); 5194var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(3702).CONSTRUCTOR); 5195var promiseResolve = __webpack_require__(9478); 5196 5197var PromiseConstructorWrapper = getBuiltIn('Promise'); 5198var CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR; 5199 5200// `Promise.resolve` method 5201// https://tc39.es/ecma262/#sec-promise.resolve 5202$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, { 5203 resolve: function resolve(x) { 5204 return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x); 5205 } 5206}); 5207 5208 5209/***/ }), 5210 5211/***/ 4916: 5212/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5213 5214"use strict"; 5215 5216var $ = __webpack_require__(2109); 5217var exec = __webpack_require__(2261); 5218 5219// `RegExp.prototype.exec` method 5220// https://tc39.es/ecma262/#sec-regexp.prototype.exec 5221$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, { 5222 exec: exec 5223}); 5224 5225 5226/***/ }), 5227 5228/***/ 7601: 5229/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5230 5231"use strict"; 5232 5233// TODO: Remove from `core-js@4` since it's moved to entry points 5234__webpack_require__(4916); 5235var $ = __webpack_require__(2109); 5236var call = __webpack_require__(6916); 5237var isCallable = __webpack_require__(614); 5238var anObject = __webpack_require__(9670); 5239var toString = __webpack_require__(1340); 5240 5241var DELEGATES_TO_EXEC = function () { 5242 var execCalled = false; 5243 var re = /[ac]/; 5244 re.exec = function () { 5245 execCalled = true; 5246 return /./.exec.apply(this, arguments); 5247 }; 5248 return re.test('abc') === true && execCalled; 5249}(); 5250 5251var nativeTest = /./.test; 5252 5253// `RegExp.prototype.test` method 5254// https://tc39.es/ecma262/#sec-regexp.prototype.test 5255$({ target: 'RegExp', proto: true, forced: !DELEGATES_TO_EXEC }, { 5256 test: function (S) { 5257 var R = anObject(this); 5258 var string = toString(S); 5259 var exec = R.exec; 5260 if (!isCallable(exec)) return call(nativeTest, R, string); 5261 var result = call(exec, R, string); 5262 if (result === null) return false; 5263 anObject(result); 5264 return true; 5265 } 5266}); 5267 5268 5269/***/ }), 5270 5271/***/ 9714: 5272/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5273 5274"use strict"; 5275 5276var PROPER_FUNCTION_NAME = (__webpack_require__(6530).PROPER); 5277var defineBuiltIn = __webpack_require__(8052); 5278var anObject = __webpack_require__(9670); 5279var $toString = __webpack_require__(1340); 5280var fails = __webpack_require__(7293); 5281var getRegExpFlags = __webpack_require__(4706); 5282 5283var TO_STRING = 'toString'; 5284var RegExpPrototype = RegExp.prototype; 5285var nativeToString = RegExpPrototype[TO_STRING]; 5286 5287var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; }); 5288// FF44- RegExp#toString has a wrong name 5289var INCORRECT_NAME = PROPER_FUNCTION_NAME && nativeToString.name != TO_STRING; 5290 5291// `RegExp.prototype.toString` method 5292// https://tc39.es/ecma262/#sec-regexp.prototype.tostring 5293if (NOT_GENERIC || INCORRECT_NAME) { 5294 defineBuiltIn(RegExp.prototype, TO_STRING, function toString() { 5295 var R = anObject(this); 5296 var pattern = $toString(R.source); 5297 var flags = $toString(getRegExpFlags(R)); 5298 return '/' + pattern + '/' + flags; 5299 }, { unsafe: true }); 5300} 5301 5302 5303/***/ }), 5304 5305/***/ 2023: 5306/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5307 5308"use strict"; 5309 5310var $ = __webpack_require__(2109); 5311var uncurryThis = __webpack_require__(1702); 5312var notARegExp = __webpack_require__(3929); 5313var requireObjectCoercible = __webpack_require__(4488); 5314var toString = __webpack_require__(1340); 5315var correctIsRegExpLogic = __webpack_require__(4964); 5316 5317var stringIndexOf = uncurryThis(''.indexOf); 5318
vendor: 2,561 bytes, lines 5319-5392
5319// `String.prototype.includes` method 5320// https://tc39.es/ecma262/#sec-string.prototype.includes 5321$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, { 5322 includes: function includes(searchString /* , position = 0 */) { 5323 return !!~stringIndexOf( 5324 toString(requireObjectCoercible(this)), 5325 toString(notARegExp(searchString)), 5326 arguments.length > 1 ? arguments[1] : undefined 5327 ); 5328 } 5329}); 5330 5331 5332/***/ }), 5333 5334/***/ 8783: 5335/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5336 5337"use strict"; 5338 5339var charAt = (__webpack_require__(8710).charAt); 5340var toString = __webpack_require__(1340); 5341var InternalStateModule = __webpack_require__(9909); 5342var defineIterator = __webpack_require__(1656); 5343var createIterResultObject = __webpack_require__(6178); 5344 5345var STRING_ITERATOR = 'String Iterator'; 5346var setInternalState = InternalStateModule.set; 5347var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR); 5348 5349// `String.prototype[@@iterator]` method 5350// https://tc39.es/ecma262/#sec-string.prototype-@@iterator 5351defineIterator(String, 'String', function (iterated) { 5352 setInternalState(this, { 5353 type: STRING_ITERATOR, 5354 string: toString(iterated), 5355 index: 0 5356 }); 5357// `%StringIteratorPrototype%.next` method 5358// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next 5359}, function next() { 5360 var state = getInternalState(this); 5361 var string = state.string; 5362 var index = state.index; 5363 var point; 5364 if (index >= string.length) return createIterResultObject(undefined, true); 5365 point = charAt(string, index); 5366 state.index += point.length; 5367 return createIterResultObject(point, false); 5368}); 5369 5370 5371/***/ }), 5372 5373/***/ 5306: 5374/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5375 5376"use strict"; 5377 5378var apply = __webpack_require__(2104); 5379var call = __webpack_require__(6916); 5380var uncurryThis = __webpack_require__(1702); 5381var fixRegExpWellKnownSymbolLogic = __webpack_require__(7007); 5382var fails = __webpack_require__(7293); 5383var anObject = __webpack_require__(9670); 5384var isCallable = __webpack_require__(614); 5385var isNullOrUndefined = __webpack_require__(8554); 5386var toIntegerOrInfinity = __webpack_require__(9303); 5387var toLength = __webpack_require__(7466); 5388var toString = __webpack_require__(1340); 5389var requireObjectCoercible = __webpack_require__(4488); 5390var advanceStringIndex = __webpack_require__(1530); 5391var getMethod = __webpack_require__(8173); 5392var getSubstitution = __webpack_require__(647);
vendor: 4,139 bytes, lines 5393-5500
5393var regExpExec = __webpack_require__(7651); 5394var wellKnownSymbol = __webpack_require__(5112); 5395 5396var REPLACE = wellKnownSymbol('replace'); 5397var max = Math.max; 5398var min = Math.min; 5399var concat = uncurryThis([].concat); 5400var push = uncurryThis([].push); 5401var stringIndexOf = uncurryThis(''.indexOf); 5402var stringSlice = uncurryThis(''.slice); 5403 5404var maybeToString = function (it) { 5405 return it === undefined ? it : String(it); 5406}; 5407 5408// IE <= 11 replaces $0 with the whole match, as if it was $& 5409// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0 5410var REPLACE_KEEPS_$0 = (function () { 5411 // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing 5412 return 'a'.replace(/./, '$0') === '$0'; 5413})(); 5414 5415// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string 5416var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () { 5417 if (/./[REPLACE]) { 5418 return /./[REPLACE]('a', '$0') === ''; 5419 } 5420 return false; 5421})(); 5422 5423var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () { 5424 var re = /./; 5425 re.exec = function () { 5426 var result = []; 5427 result.groups = { a: '7' }; 5428 return result; 5429 }; 5430 // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive 5431 return ''.replace(re, '$<a>') !== '7'; 5432}); 5433 5434// @@replace logic 5435fixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) { 5436 var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0'; 5437 5438 return [ 5439 // `String.prototype.replace` method 5440 // https://tc39.es/ecma262/#sec-string.prototype.replace 5441 function replace(searchValue, replaceValue) { 5442 var O = requireObjectCoercible(this); 5443 var replacer = isNullOrUndefined(searchValue) ? undefined : getMethod(searchValue, REPLACE); 5444 return replacer 5445 ? call(replacer, searchValue, O, replaceValue) 5446 : call(nativeReplace, toString(O), searchValue, replaceValue); 5447 }, 5448 // `RegExp.prototype[@@replace]` method 5449 // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace 5450 function (string, replaceValue) { 5451 var rx = anObject(this); 5452 var S = toString(string); 5453 5454 if ( 5455 typeof replaceValue == 'string' && 5456 stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 && 5457 stringIndexOf(replaceValue, '$<') === -1 5458 ) { 5459 var res = maybeCallNative(nativeReplace, rx, S, replaceValue); 5460 if (res.done) return res.value; 5461 } 5462 5463 var functionalReplace = isCallable(replaceValue); 5464 if (!functionalReplace) replaceValue = toString(replaceValue); 5465 5466 var global = rx.global; 5467 if (global) { 5468 var fullUnicode = rx.unicode; 5469 rx.lastIndex = 0; 5470 } 5471 var results = []; 5472 while (true) { 5473 var result = regExpExec(rx, S); 5474 if (result === null) break; 5475 5476 push(results, result); 5477 if (!global) break; 5478 5479 var matchStr = toString(result[0]); 5480 if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); 5481 } 5482 5483 var accumulatedResult = ''; 5484 var nextSourcePosition = 0; 5485 for (var i = 0; i < results.length; i++) { 5486 result = results[i]; 5487 5488 var matched = toString(result[0]); 5489 var position = max(min(toIntegerOrInfinity(result.index), S.length), 0); 5490 var captures = []; 5491 // NOTE: This is equivalent to 5492 // captures = result.slice(1).map(maybeToString) 5493 // but for some reason `nativeSlice.call(result, 1, result.length)` (called in 5494 // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and 5495 // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it. 5496 for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j])); 5497 var namedCaptures = result.groups; 5498 if (functionalReplace) { 5499 var replacerArgs = concat([matched], captures, position, S); 5500 if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);
vendor: 5,319 bytes, lines 5501-5637
5501 var replacement = toString(apply(replaceValue, undefined, replacerArgs)); 5502 } else { 5503 replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue); 5504 } 5505 if (position >= nextSourcePosition) { 5506 accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement; 5507 nextSourcePosition = position + matched.length; 5508 } 5509 } 5510 return accumulatedResult + stringSlice(S, nextSourcePosition); 5511 } 5512 ]; 5513}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE); 5514 5515 5516/***/ }), 5517 5518/***/ 4765: 5519/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5520 5521"use strict"; 5522 5523var call = __webpack_require__(6916); 5524var fixRegExpWellKnownSymbolLogic = __webpack_require__(7007); 5525var anObject = __webpack_require__(9670); 5526var isNullOrUndefined = __webpack_require__(8554); 5527var requireObjectCoercible = __webpack_require__(4488); 5528var sameValue = __webpack_require__(1150); 5529var toString = __webpack_require__(1340); 5530var getMethod = __webpack_require__(8173); 5531var regExpExec = __webpack_require__(7651); 5532 5533// @@search logic 5534fixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) { 5535 return [ 5536 // `String.prototype.search` method 5537 // https://tc39.es/ecma262/#sec-string.prototype.search 5538 function search(regexp) { 5539 var O = requireObjectCoercible(this); 5540 var searcher = isNullOrUndefined(regexp) ? undefined : getMethod(regexp, SEARCH); 5541 return searcher ? call(searcher, regexp, O) : new RegExp(regexp)[SEARCH](toString(O)); 5542 }, 5543 // `RegExp.prototype[@@search]` method 5544 // https://tc39.es/ecma262/#sec-regexp.prototype-@@search 5545 function (string) { 5546 var rx = anObject(this); 5547 var S = toString(string); 5548 var res = maybeCallNative(nativeSearch, rx, S); 5549 5550 if (res.done) return res.value; 5551 5552 var previousLastIndex = rx.lastIndex; 5553 if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0; 5554 var result = regExpExec(rx, S); 5555 if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex; 5556 return result === null ? -1 : result.index; 5557 } 5558 ]; 5559}); 5560 5561 5562/***/ }), 5563 5564/***/ 2443: 5565/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5566 5567var defineWellKnownSymbol = __webpack_require__(6800); 5568 5569// `Symbol.asyncIterator` well-known symbol 5570// https://tc39.es/ecma262/#sec-symbol.asynciterator 5571defineWellKnownSymbol('asyncIterator'); 5572 5573 5574/***/ }), 5575 5576/***/ 4032: 5577/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5578 5579"use strict"; 5580 5581var $ = __webpack_require__(2109); 5582var global = __webpack_require__(7854); 5583var call = __webpack_require__(6916); 5584var uncurryThis = __webpack_require__(1702); 5585var IS_PURE = __webpack_require__(1913); 5586var DESCRIPTORS = __webpack_require__(9781); 5587var NATIVE_SYMBOL = __webpack_require__(6293); 5588var fails = __webpack_require__(7293); 5589var hasOwn = __webpack_require__(2597); 5590var isPrototypeOf = __webpack_require__(7976); 5591var anObject = __webpack_require__(9670); 5592var toIndexedObject = __webpack_require__(5656); 5593var toPropertyKey = __webpack_require__(4948); 5594var $toString = __webpack_require__(1340); 5595var createPropertyDescriptor = __webpack_require__(9114); 5596var nativeObjectCreate = __webpack_require__(30); 5597var objectKeys = __webpack_require__(1956); 5598var getOwnPropertyNamesModule = __webpack_require__(8006); 5599var getOwnPropertyNamesExternal = __webpack_require__(1156); 5600var getOwnPropertySymbolsModule = __webpack_require__(5181); 5601var getOwnPropertyDescriptorModule = __webpack_require__(1236); 5602var definePropertyModule = __webpack_require__(3070); 5603var definePropertiesModule = __webpack_require__(6048); 5604var propertyIsEnumerableModule = __webpack_require__(5296); 5605var defineBuiltIn = __webpack_require__(8052); 5606var defineBuiltInAccessor = __webpack_require__(7045); 5607var shared = __webpack_require__(2309); 5608var sharedKey = __webpack_require__(6200); 5609var hiddenKeys = __webpack_require__(3501); 5610var uid = __webpack_require__(9711); 5611var wellKnownSymbol = __webpack_require__(5112); 5612var wrappedWellKnownSymbolModule = __webpack_require__(6061); 5613var defineWellKnownSymbol = __webpack_require__(6800); 5614var defineSymbolToPrimitive = __webpack_require__(6532); 5615var setToStringTag = __webpack_require__(8003); 5616var InternalStateModule = __webpack_require__(9909); 5617var $forEach = (__webpack_require__(2092).forEach); 5618 5619var HIDDEN = sharedKey('hidden'); 5620var SYMBOL = 'Symbol'; 5621var PROTOTYPE = 'prototype'; 5622 5623var setInternalState = InternalStateModule.set; 5624var getInternalState = InternalStateModule.getterFor(SYMBOL); 5625 5626var ObjectPrototype = Object[PROTOTYPE]; 5627var $Symbol = global.Symbol; 5628var SymbolPrototype = $Symbol && $Symbol[PROTOTYPE]; 5629var TypeError = global.TypeError; 5630var QObject = global.QObject; 5631var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; 5632var nativeDefineProperty = definePropertyModule.f; 5633var nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f; 5634var nativePropertyIsEnumerable = propertyIsEnumerableModule.f; 5635var push = uncurryThis([].push); 5636 5637var AllSymbols = shared('symbols');
vendor: 4,799 bytes, lines 5638-5750
5638var ObjectPrototypeSymbols = shared('op-symbols'); 5639var WellKnownSymbolsStore = shared('wks'); 5640 5641// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 5642var USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; 5643 5644// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 5645var setSymbolDescriptor = DESCRIPTORS && fails(function () { 5646 return nativeObjectCreate(nativeDefineProperty({}, 'a', { 5647 get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; } 5648 })).a != 7; 5649}) ? function (O, P, Attributes) { 5650 var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P); 5651 if (ObjectPrototypeDescriptor) delete ObjectPrototype[P]; 5652 nativeDefineProperty(O, P, Attributes); 5653 if (ObjectPrototypeDescriptor && O !== ObjectPrototype) { 5654 nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor); 5655 } 5656} : nativeDefineProperty; 5657 5658var wrap = function (tag, description) { 5659 var symbol = AllSymbols[tag] = nativeObjectCreate(SymbolPrototype); 5660 setInternalState(symbol, { 5661 type: SYMBOL, 5662 tag: tag, 5663 description: description 5664 }); 5665 if (!DESCRIPTORS) symbol.description = description; 5666 return symbol; 5667}; 5668 5669var $defineProperty = function defineProperty(O, P, Attributes) { 5670 if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes); 5671 anObject(O); 5672 var key = toPropertyKey(P); 5673 anObject(Attributes); 5674 if (hasOwn(AllSymbols, key)) { 5675 if (!Attributes.enumerable) { 5676 if (!hasOwn(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {})); 5677 O[HIDDEN][key] = true; 5678 } else { 5679 if (hasOwn(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false; 5680 Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) }); 5681 } return setSymbolDescriptor(O, key, Attributes); 5682 } return nativeDefineProperty(O, key, Attributes); 5683}; 5684 5685var $defineProperties = function defineProperties(O, Properties) { 5686 anObject(O); 5687 var properties = toIndexedObject(Properties); 5688 var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties)); 5689 $forEach(keys, function (key) { 5690 if (!DESCRIPTORS || call($propertyIsEnumerable, properties, key)) $defineProperty(O, key, properties[key]); 5691 }); 5692 return O; 5693}; 5694 5695var $create = function create(O, Properties) { 5696 return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties); 5697}; 5698 5699var $propertyIsEnumerable = function propertyIsEnumerable(V) { 5700 var P = toPropertyKey(V); 5701 var enumerable = call(nativePropertyIsEnumerable, this, P); 5702 if (this === ObjectPrototype && hasOwn(AllSymbols, P) && !hasOwn(ObjectPrototypeSymbols, P)) return false; 5703 return enumerable || !hasOwn(this, P) || !hasOwn(AllSymbols, P) || hasOwn(this, HIDDEN) && this[HIDDEN][P] 5704 ? enumerable : true; 5705}; 5706 5707var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) { 5708 var it = toIndexedObject(O); 5709 var key = toPropertyKey(P); 5710 if (it === ObjectPrototype && hasOwn(AllSymbols, key) && !hasOwn(ObjectPrototypeSymbols, key)) return; 5711 var descriptor = nativeGetOwnPropertyDescriptor(it, key); 5712 if (descriptor && hasOwn(AllSymbols, key) && !(hasOwn(it, HIDDEN) && it[HIDDEN][key])) { 5713 descriptor.enumerable = true; 5714 } 5715 return descriptor; 5716}; 5717 5718var $getOwnPropertyNames = function getOwnPropertyNames(O) { 5719 var names = nativeGetOwnPropertyNames(toIndexedObject(O)); 5720 var result = []; 5721 $forEach(names, function (key) { 5722 if (!hasOwn(AllSymbols, key) && !hasOwn(hiddenKeys, key)) push(result, key); 5723 }); 5724 return result; 5725}; 5726 5727var $getOwnPropertySymbols = function (O) { 5728 var IS_OBJECT_PROTOTYPE = O === ObjectPrototype; 5729 var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O)); 5730 var result = []; 5731 $forEach(names, function (key) { 5732 if (hasOwn(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || hasOwn(ObjectPrototype, key))) { 5733 push(result, AllSymbols[key]); 5734 } 5735 }); 5736 return result; 5737}; 5738 5739// `Symbol` constructor 5740// https://tc39.es/ecma262/#sec-symbol-constructor 5741if (!NATIVE_SYMBOL) { 5742 $Symbol = function Symbol() { 5743 if (isPrototypeOf(SymbolPrototype, this)) throw TypeError('Symbol is not a constructor'); 5744 var description = !arguments.length || arguments[0] === undefined ? undefined : $toString(arguments[0]); 5745 var tag = uid(description); 5746 var setter = function (value) { 5747 if (this === ObjectPrototype) call(setter, ObjectPrototypeSymbols, value); 5748 if (hasOwn(this, HIDDEN) && hasOwn(this[HIDDEN], tag)) this[HIDDEN][tag] = false; 5749 setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value)); 5750 };
vendor: 12,781 bytes, lines 5751-6126
5751 if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter }); 5752 return wrap(tag, description); 5753 }; 5754 5755 SymbolPrototype = $Symbol[PROTOTYPE]; 5756 5757 defineBuiltIn(SymbolPrototype, 'toString', function toString() { 5758 return getInternalState(this).tag; 5759 }); 5760 5761 defineBuiltIn($Symbol, 'withoutSetter', function (description) { 5762 return wrap(uid(description), description); 5763 }); 5764 5765 propertyIsEnumerableModule.f = $propertyIsEnumerable; 5766 definePropertyModule.f = $defineProperty; 5767 definePropertiesModule.f = $defineProperties; 5768 getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor; 5769 getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames; 5770 getOwnPropertySymbolsModule.f = $getOwnPropertySymbols; 5771 5772 wrappedWellKnownSymbolModule.f = function (name) { 5773 return wrap(wellKnownSymbol(name), name); 5774 }; 5775 5776 if (DESCRIPTORS) { 5777 // https://github.com/tc39/proposal-Symbol-description 5778 defineBuiltInAccessor(SymbolPrototype, 'description', { 5779 configurable: true, 5780 get: function description() { 5781 return getInternalState(this).description; 5782 } 5783 }); 5784 if (!IS_PURE) { 5785 defineBuiltIn(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true }); 5786 } 5787 } 5788} 5789 5790$({ global: true, constructor: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, { 5791 Symbol: $Symbol 5792}); 5793 5794$forEach(objectKeys(WellKnownSymbolsStore), function (name) { 5795 defineWellKnownSymbol(name); 5796}); 5797 5798$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, { 5799 useSetter: function () { USE_SETTER = true; }, 5800 useSimple: function () { USE_SETTER = false; } 5801}); 5802 5803$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, { 5804 // `Object.create` method 5805 // https://tc39.es/ecma262/#sec-object.create 5806 create: $create, 5807 // `Object.defineProperty` method 5808 // https://tc39.es/ecma262/#sec-object.defineproperty 5809 defineProperty: $defineProperty, 5810 // `Object.defineProperties` method 5811 // https://tc39.es/ecma262/#sec-object.defineproperties 5812 defineProperties: $defineProperties, 5813 // `Object.getOwnPropertyDescriptor` method 5814 // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors 5815 getOwnPropertyDescriptor: $getOwnPropertyDescriptor 5816}); 5817 5818$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, { 5819 // `Object.getOwnPropertyNames` method 5820 // https://tc39.es/ecma262/#sec-object.getownpropertynames 5821 getOwnPropertyNames: $getOwnPropertyNames 5822}); 5823 5824// `Symbol.prototype[@@toPrimitive]` method 5825// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive 5826defineSymbolToPrimitive(); 5827 5828// `Symbol.prototype[@@toStringTag]` property 5829// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag 5830setToStringTag($Symbol, SYMBOL); 5831 5832hiddenKeys[HIDDEN] = true; 5833 5834 5835/***/ }), 5836 5837/***/ 1817: 5838/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5839 5840"use strict"; 5841// `Symbol.prototype.description` getter 5842// https://tc39.es/ecma262/#sec-symbol.prototype.description 5843 5844var $ = __webpack_require__(2109); 5845var DESCRIPTORS = __webpack_require__(9781); 5846var global = __webpack_require__(7854); 5847var uncurryThis = __webpack_require__(1702); 5848var hasOwn = __webpack_require__(2597); 5849var isCallable = __webpack_require__(614); 5850var isPrototypeOf = __webpack_require__(7976); 5851var toString = __webpack_require__(1340); 5852var defineBuiltInAccessor = __webpack_require__(7045); 5853var copyConstructorProperties = __webpack_require__(9920); 5854 5855var NativeSymbol = global.Symbol; 5856var SymbolPrototype = NativeSymbol && NativeSymbol.prototype; 5857 5858if (DESCRIPTORS && isCallable(NativeSymbol) && (!('description' in SymbolPrototype) || 5859 // Safari 12 bug 5860 NativeSymbol().description !== undefined 5861)) { 5862 var EmptyStringDescriptionStore = {}; 5863 // wrap Symbol constructor for correct work with undefined description 5864 var SymbolWrapper = function Symbol() { 5865 var description = arguments.length < 1 || arguments[0] === undefined ? undefined : toString(arguments[0]); 5866 var result = isPrototypeOf(SymbolPrototype, this) 5867 ? new NativeSymbol(description) 5868 // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)' 5869 : description === undefined ? NativeSymbol() : NativeSymbol(description); 5870 if (description === '') EmptyStringDescriptionStore[result] = true; 5871 return result; 5872 }; 5873 5874 copyConstructorProperties(SymbolWrapper, NativeSymbol); 5875 SymbolWrapper.prototype = SymbolPrototype; 5876 SymbolPrototype.constructor = SymbolWrapper; 5877 5878 var NATIVE_SYMBOL = String(NativeSymbol('test')) == 'Symbol(test)'; 5879 var thisSymbolValue = uncurryThis(SymbolPrototype.valueOf); 5880 var symbolDescriptiveString = uncurryThis(SymbolPrototype.toString); 5881 var regexp = /^Symbol\((.*)\)[^)]+$/; 5882 var replace = uncurryThis(''.replace); 5883 var stringSlice = uncurryThis(''.slice); 5884 5885 defineBuiltInAccessor(SymbolPrototype, 'description', { 5886 configurable: true, 5887 get: function description() { 5888 var symbol = thisSymbolValue(this); 5889 if (hasOwn(EmptyStringDescriptionStore, symbol)) return ''; 5890 var string = symbolDescriptiveString(symbol); 5891 var desc = NATIVE_SYMBOL ? stringSlice(string, 7, -1) : replace(string, regexp, '$1'); 5892 return desc === '' ? undefined : desc; 5893 } 5894 }); 5895 5896 $({ global: true, constructor: true, forced: true }, { 5897 Symbol: SymbolWrapper 5898 }); 5899} 5900 5901 5902/***/ }), 5903 5904/***/ 763: 5905/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5906 5907var $ = __webpack_require__(2109); 5908var getBuiltIn = __webpack_require__(5005); 5909var hasOwn = __webpack_require__(2597); 5910var toString = __webpack_require__(1340); 5911var shared = __webpack_require__(2309); 5912var NATIVE_SYMBOL_REGISTRY = __webpack_require__(2015); 5913 5914var StringToSymbolRegistry = shared('string-to-symbol-registry'); 5915var SymbolToStringRegistry = shared('symbol-to-string-registry'); 5916 5917// `Symbol.for` method 5918// https://tc39.es/ecma262/#sec-symbol.for 5919$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, { 5920 'for': function (key) { 5921 var string = toString(key); 5922 if (hasOwn(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string]; 5923 var symbol = getBuiltIn('Symbol')(string); 5924 StringToSymbolRegistry[string] = symbol; 5925 SymbolToStringRegistry[symbol] = string; 5926 return symbol; 5927 } 5928}); 5929 5930 5931/***/ }), 5932 5933/***/ 2165: 5934/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5935 5936var defineWellKnownSymbol = __webpack_require__(6800); 5937 5938// `Symbol.iterator` well-known symbol 5939// https://tc39.es/ecma262/#sec-symbol.iterator 5940defineWellKnownSymbol('iterator'); 5941 5942 5943/***/ }), 5944 5945/***/ 2526: 5946/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5947 5948// TODO: Remove this module from `core-js@4` since it's split to modules listed below 5949__webpack_require__(4032); 5950__webpack_require__(763); 5951__webpack_require__(6620); 5952__webpack_require__(8862); 5953__webpack_require__(9660); 5954 5955 5956/***/ }), 5957 5958/***/ 6620: 5959/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5960 5961var $ = __webpack_require__(2109); 5962var hasOwn = __webpack_require__(2597); 5963var isSymbol = __webpack_require__(2190); 5964var tryToString = __webpack_require__(6330); 5965var shared = __webpack_require__(2309); 5966var NATIVE_SYMBOL_REGISTRY = __webpack_require__(2015); 5967 5968var SymbolToStringRegistry = shared('symbol-to-string-registry'); 5969 5970// `Symbol.keyFor` method 5971// https://tc39.es/ecma262/#sec-symbol.keyfor 5972$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, { 5973 keyFor: function keyFor(sym) { 5974 if (!isSymbol(sym)) throw TypeError(tryToString(sym) + ' is not a symbol'); 5975 if (hasOwn(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym]; 5976 } 5977}); 5978 5979 5980/***/ }), 5981 5982/***/ 6649: 5983/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 5984 5985var defineWellKnownSymbol = __webpack_require__(6800); 5986var defineSymbolToPrimitive = __webpack_require__(6532); 5987 5988// `Symbol.toPrimitive` well-known symbol 5989// https://tc39.es/ecma262/#sec-symbol.toprimitive 5990defineWellKnownSymbol('toPrimitive'); 5991 5992// `Symbol.prototype[@@toPrimitive]` method 5993// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive 5994defineSymbolToPrimitive(); 5995 5996 5997/***/ }), 5998 5999/***/ 3680: 6000/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 6001 6002var getBuiltIn = __webpack_require__(5005); 6003var defineWellKnownSymbol = __webpack_require__(6800); 6004var setToStringTag = __webpack_require__(8003); 6005 6006// `Symbol.toStringTag` well-known symbol 6007// https://tc39.es/ecma262/#sec-symbol.tostringtag 6008defineWellKnownSymbol('toStringTag'); 6009 6010// `Symbol.prototype[@@toStringTag]` property 6011// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag 6012setToStringTag(getBuiltIn('Symbol'), 'Symbol'); 6013 6014 6015/***/ }), 6016 6017/***/ 4747: 6018/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 6019 6020var global = __webpack_require__(7854); 6021var DOMIterables = __webpack_require__(8324); 6022var DOMTokenListPrototype = __webpack_require__(8509); 6023var forEach = __webpack_require__(8533); 6024var createNonEnumerableProperty = __webpack_require__(8880); 6025 6026var handlePrototype = function (CollectionPrototype) { 6027 // some Chrome versions have non-configurable methods on DOMTokenList 6028 if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try { 6029 createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach); 6030 } catch (error) { 6031 CollectionPrototype.forEach = forEach; 6032 } 6033}; 6034 6035for (var COLLECTION_NAME in DOMIterables) { 6036 if (DOMIterables[COLLECTION_NAME]) { 6037 handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype); 6038 } 6039} 6040 6041handlePrototype(DOMTokenListPrototype); 6042 6043 6044/***/ }), 6045 6046/***/ 3948: 6047/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { 6048 6049var global = __webpack_require__(7854); 6050var DOMIterables = __webpack_require__(8324); 6051var DOMTokenListPrototype = __webpack_require__(8509); 6052var ArrayIteratorMethods = __webpack_require__(6992); 6053var createNonEnumerableProperty = __webpack_require__(8880); 6054var wellKnownSymbol = __webpack_require__(5112); 6055 6056var ITERATOR = wellKnownSymbol('iterator'); 6057var TO_STRING_TAG = wellKnownSymbol('toStringTag'); 6058var ArrayValues = ArrayIteratorMethods.values; 6059 6060var handlePrototype = function (CollectionPrototype, COLLECTION_NAME) { 6061 if (CollectionPrototype) { 6062 // some Chrome versions have non-configurable methods on DOMTokenList 6063 if (CollectionPrototype[ITERATOR] !== ArrayValues) try { 6064 createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues); 6065 } catch (error) { 6066 CollectionPrototype[ITERATOR] = ArrayValues; 6067 } 6068 if (!CollectionPrototype[TO_STRING_TAG]) { 6069 createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME); 6070 } 6071 if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) { 6072 // some Chrome versions have non-configurable methods on DOMTokenList 6073 if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try { 6074 createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]); 6075 } catch (error) { 6076 CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME]; 6077 } 6078 } 6079 } 6080}; 6081 6082for (var COLLECTION_NAME in DOMIterables) { 6083 handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME); 6084} 6085 6086handlePrototype(DOMTokenListPrototype, 'DOMTokenList'); 6087 6088 6089/***/ }), 6090 6091/***/ 7090: 6092/***/ (function(module) { 6093 6094(function(window, factory) { 6095 var lazySizes = factory(window, window.document, Date); 6096 window.lazySizes = lazySizes; 6097 if( true && module.exports){ 6098 module.exports = lazySizes; 6099 } 6100}(typeof window != 'undefined' ? 6101 window : {}, 6102/** 6103 * import("./types/global") 6104 * @typedef { import("./types/lazysizes-config").LazySizesConfigPartial } LazySizesConfigPartial 6105 */ 6106function l(window, document, Date) { // Pass in the window Date function also for SSR because the Date class can be lost 6107 'use strict'; 6108 /*jshint eqnull:true */ 6109 6110 var lazysizes, 6111 /** 6112 * @type { LazySizesConfigPartial } 6113 */ 6114 lazySizesCfg; 6115 6116 (function(){ 6117 var prop; 6118 6119 var lazySizesDefaults = { 6120 lazyClass: 'lazyload', 6121 loadedClass: 'lazyloaded', 6122 loadingClass: 'lazyloading', 6123 preloadClass: 'lazypreload', 6124 errorClass: 'lazyerror', 6125 //strictClass: 'lazystrict', 6126 autosizesClass: 'lazyautosizes',
vendor: 16,457 bytes, lines 6127-6762
6127 fastLoadedClass: 'ls-is-cached', 6128 iframeLoadMode: 0, 6129 srcAttr: 'data-src', 6130 srcsetAttr: 'data-srcset', 6131 sizesAttr: 'data-sizes', 6132 //preloadAfterLoad: false, 6133 minSize: 40, 6134 customMedia: {}, 6135 init: true, 6136 expFactor: 1.5, 6137 hFac: 0.8, 6138 loadMode: 2, 6139 loadHidden: true, 6140 ricTimeout: 0, 6141 throttleDelay: 125, 6142 }; 6143 6144 lazySizesCfg = window.lazySizesConfig || window.lazysizesConfig || {}; 6145 6146 for(prop in lazySizesDefaults){ 6147 if(!(prop in lazySizesCfg)){ 6148 lazySizesCfg[prop] = lazySizesDefaults[prop]; 6149 } 6150 } 6151 })(); 6152 6153 if (!document || !document.getElementsByClassName) { 6154 return { 6155 init: function () {}, 6156 /** 6157 * @type { LazySizesConfigPartial } 6158 */ 6159 cfg: lazySizesCfg, 6160 /** 6161 * @type { true } 6162 */ 6163 noSupport: true, 6164 }; 6165 } 6166 6167 var docElem = document.documentElement; 6168 6169 var supportPicture = window.HTMLPictureElement; 6170 6171 var _addEventListener = 'addEventListener'; 6172 6173 var _getAttribute = 'getAttribute'; 6174 6175 /** 6176 * Update to bind to window because 'this' becomes null during SSR 6177 * builds. 6178 */ 6179 var addEventListener = window[_addEventListener].bind(window); 6180 6181 var setTimeout = window.setTimeout; 6182 6183 var requestAnimationFrame = window.requestAnimationFrame || setTimeout; 6184 6185 var requestIdleCallback = window.requestIdleCallback; 6186 6187 var regPicture = /^picture$/i; 6188 6189 var loadEvents = ['load', 'error', 'lazyincluded', '_lazyloaded']; 6190 6191 var regClassCache = {}; 6192 6193 var forEach = Array.prototype.forEach; 6194 6195 /** 6196 * @param ele {Element} 6197 * @param cls {string} 6198 */ 6199 var hasClass = function(ele, cls) { 6200 if(!regClassCache[cls]){ 6201 regClassCache[cls] = new RegExp('(\\s|^)'+cls+'(\\s|$)'); 6202 } 6203 return regClassCache[cls].test(ele[_getAttribute]('class') || '') && regClassCache[cls]; 6204 }; 6205 6206 /** 6207 * @param ele {Element} 6208 * @param cls {string} 6209 */ 6210 var addClass = function(ele, cls) { 6211 if (!hasClass(ele, cls)){ 6212 ele.setAttribute('class', (ele[_getAttribute]('class') || '').trim() + ' ' + cls); 6213 } 6214 }; 6215 6216 /** 6217 * @param ele {Element} 6218 * @param cls {string} 6219 */ 6220 var removeClass = function(ele, cls) { 6221 var reg; 6222 if ((reg = hasClass(ele,cls))) { 6223 ele.setAttribute('class', (ele[_getAttribute]('class') || '').replace(reg, ' ')); 6224 } 6225 }; 6226 6227 var addRemoveLoadEvents = function(dom, fn, add){ 6228 var action = add ? _addEventListener : 'removeEventListener'; 6229 if(add){ 6230 addRemoveLoadEvents(dom, fn); 6231 } 6232 loadEvents.forEach(function(evt){ 6233 dom[action](evt, fn); 6234 }); 6235 }; 6236 6237 /** 6238 * @param elem { Element } 6239 * @param name { string } 6240 * @param detail { any } 6241 * @param noBubbles { boolean } 6242 * @param noCancelable { boolean } 6243 * @returns { CustomEvent } 6244 */ 6245 var triggerEvent = function(elem, name, detail, noBubbles, noCancelable){ 6246 var event = document.createEvent('Event'); 6247 6248 if(!detail){ 6249 detail = {}; 6250 } 6251 6252 detail.instance = lazysizes; 6253 6254 event.initEvent(name, !noBubbles, !noCancelable); 6255 6256 event.detail = detail; 6257 6258 elem.dispatchEvent(event); 6259 return event; 6260 }; 6261 6262 var updatePolyfill = function (el, full){ 6263 var polyfill; 6264 if( !supportPicture && ( polyfill = (window.picturefill || lazySizesCfg.pf) ) ){ 6265 if(full && full.src && !el[_getAttribute]('srcset')){ 6266 el.setAttribute('srcset', full.src); 6267 } 6268 polyfill({reevaluate: true, elements: [el]}); 6269 } else if(full && full.src){ 6270 el.src = full.src; 6271 } 6272 }; 6273 6274 var getCSS = function (elem, style){ 6275 return (getComputedStyle(elem, null) || {})[style]; 6276 }; 6277 6278 /** 6279 * 6280 * @param elem { Element } 6281 * @param parent { Element } 6282 * @param [width] {number} 6283 * @returns {number} 6284 */ 6285 var getWidth = function(elem, parent, width){ 6286 width = width || elem.offsetWidth; 6287 6288 while(width < lazySizesCfg.minSize && parent && !elem._lazysizesWidth){ 6289 width = parent.offsetWidth; 6290 parent = parent.parentNode; 6291 } 6292 6293 return width; 6294 }; 6295 6296 var rAF = (function(){ 6297 var running, waiting; 6298 var firstFns = []; 6299 var secondFns = []; 6300 var fns = firstFns; 6301 6302 var run = function(){ 6303 var runFns = fns; 6304 6305 fns = firstFns.length ? secondFns : firstFns; 6306 6307 running = true; 6308 waiting = false; 6309 6310 while(runFns.length){ 6311 runFns.shift()(); 6312 } 6313 6314 running = false; 6315 }; 6316 6317 var rafBatch = function(fn, queue){ 6318 if(running && !queue){ 6319 fn.apply(this, arguments); 6320 } else { 6321 fns.push(fn); 6322 6323 if(!waiting){ 6324 waiting = true; 6325 (document.hidden ? setTimeout : requestAnimationFrame)(run); 6326 } 6327 } 6328 }; 6329 6330 rafBatch._lsFlush = run; 6331 6332 return rafBatch; 6333 })(); 6334 6335 var rAFIt = function(fn, simple){ 6336 return simple ? 6337 function() { 6338 rAF(fn); 6339 } : 6340 function(){ 6341 var that = this; 6342 var args = arguments; 6343 rAF(function(){ 6344 fn.apply(that, args); 6345 }); 6346 } 6347 ; 6348 }; 6349 6350 var throttle = function(fn){ 6351 var running; 6352 var lastTime = 0; 6353 var gDelay = lazySizesCfg.throttleDelay; 6354 var rICTimeout = lazySizesCfg.ricTimeout; 6355 var run = function(){ 6356 running = false; 6357 lastTime = Date.now(); 6358 fn(); 6359 }; 6360 var idleCallback = requestIdleCallback && rICTimeout > 49 ? 6361 function(){ 6362 requestIdleCallback(run, {timeout: rICTimeout}); 6363 6364 if(rICTimeout !== lazySizesCfg.ricTimeout){ 6365 rICTimeout = lazySizesCfg.ricTimeout; 6366 } 6367 } : 6368 rAFIt(function(){ 6369 setTimeout(run); 6370 }, true) 6371 ; 6372 6373 return function(isPriority){ 6374 var delay; 6375 6376 if((isPriority = isPriority === true)){ 6377 rICTimeout = 33; 6378 } 6379 6380 if(running){ 6381 return; 6382 } 6383 6384 running = true; 6385 6386 delay = gDelay - (Date.now() - lastTime); 6387 6388 if(delay < 0){ 6389 delay = 0; 6390 } 6391 6392 if(isPriority || delay < 9){ 6393 idleCallback(); 6394 } else { 6395 setTimeout(idleCallback, delay); 6396 } 6397 }; 6398 }; 6399 6400 //based on http://modernjavascript.blogspot.de/2013/08/building-better-debounce.html 6401 var debounce = function(func) { 6402 var timeout, timestamp; 6403 var wait = 99; 6404 var run = function(){ 6405 timeout = null; 6406 func(); 6407 }; 6408 var later = function() { 6409 var last = Date.now() - timestamp; 6410 6411 if (last < wait) { 6412 setTimeout(later, wait - last); 6413 } else { 6414 (requestIdleCallback || run)(run); 6415 } 6416 }; 6417 6418 return function() { 6419 timestamp = Date.now(); 6420 6421 if (!timeout) { 6422 timeout = setTimeout(later, wait); 6423 } 6424 }; 6425 }; 6426 6427 var loader = (function(){ 6428 var preloadElems, isCompleted, resetPreloadingTimer, loadMode, started; 6429 6430 var eLvW, elvH, eLtop, eLleft, eLright, eLbottom, isBodyHidden; 6431 6432 var regImg = /^img$/i; 6433 var regIframe = /^iframe$/i; 6434 6435 var supportScroll = ('onscroll' in window) && !(/(gle|ing)bot/.test(navigator.userAgent)); 6436 6437 var shrinkExpand = 0; 6438 var currentExpand = 0; 6439 6440 var isLoading = 0; 6441 var lowRuns = -1; 6442 6443 var resetPreloading = function(e){ 6444 isLoading--; 6445 if(!e || isLoading < 0 || !e.target){ 6446 isLoading = 0; 6447 } 6448 }; 6449 6450 var isVisible = function (elem) { 6451 if (isBodyHidden == null) { 6452 isBodyHidden = getCSS(document.body, 'visibility') == 'hidden'; 6453 } 6454 6455 return isBodyHidden || !(getCSS(elem.parentNode, 'visibility') == 'hidden' && getCSS(elem, 'visibility') == 'hidden'); 6456 }; 6457 6458 var isNestedVisible = function(elem, elemExpand){ 6459 var outerRect; 6460 var parent = elem; 6461 var visible = isVisible(elem); 6462 6463 eLtop -= elemExpand; 6464 eLbottom += elemExpand; 6465 eLleft -= elemExpand; 6466 eLright += elemExpand; 6467 6468 while(visible && (parent = parent.offsetParent) && parent != document.body && parent != docElem){ 6469 visible = ((getCSS(parent, 'opacity') || 1) > 0); 6470 6471 if(visible && getCSS(parent, 'overflow') != 'visible'){ 6472 outerRect = parent.getBoundingClientRect(); 6473 visible = eLright > outerRect.left && 6474 eLleft < outerRect.right && 6475 eLbottom > outerRect.top - 1 && 6476 eLtop < outerRect.bottom + 1 6477 ; 6478 } 6479 } 6480 6481 return visible; 6482 }; 6483 6484 var checkElements = function() { 6485 var eLlen, i, rect, autoLoadElem, loadedSomething, elemExpand, elemNegativeExpand, elemExpandVal, 6486 beforeExpandVal, defaultExpand, preloadExpand, hFac; 6487 var lazyloadElems = lazysizes.elements; 6488 6489 if((loadMode = lazySizesCfg.loadMode) && isLoading < 8 && (eLlen = lazyloadElems.length)){ 6490 6491 i = 0; 6492 6493 lowRuns++; 6494 6495 for(; i < eLlen; i++){ 6496 6497 if(!lazyloadElems[i] || lazyloadElems[i]._lazyRace){continue;} 6498 6499 if(!supportScroll || (lazysizes.prematureUnveil && lazysizes.prematureUnveil(lazyloadElems[i]))){unveilElement(lazyloadElems[i]);continue;} 6500 6501 if(!(elemExpandVal = lazyloadElems[i][_getAttribute]('data-expand')) || !(elemExpand = elemExpandVal * 1)){ 6502 elemExpand = currentExpand; 6503 } 6504 6505 if (!defaultExpand) { 6506 defaultExpand = (!lazySizesCfg.expand || lazySizesCfg.expand < 1) ? 6507 docElem.clientHeight > 500 && docElem.clientWidth > 500 ? 500 : 370 : 6508 lazySizesCfg.expand; 6509 6510 lazysizes._defEx = defaultExpand; 6511 6512 preloadExpand = defaultExpand * lazySizesCfg.expFactor; 6513 hFac = lazySizesCfg.hFac; 6514 isBodyHidden = null; 6515 6516 if(currentExpand < preloadExpand && isLoading < 1 && lowRuns > 2 && loadMode > 2 && !document.hidden){ 6517 currentExpand = preloadExpand; 6518 lowRuns = 0; 6519 } else if(loadMode > 1 && lowRuns > 1 && isLoading < 6){ 6520 currentExpand = defaultExpand; 6521 } else { 6522 currentExpand = shrinkExpand; 6523 } 6524 } 6525 6526 if(beforeExpandVal !== elemExpand){ 6527 eLvW = innerWidth + (elemExpand * hFac); 6528 elvH = innerHeight + elemExpand; 6529 elemNegativeExpand = elemExpand * -1; 6530 beforeExpandVal = elemExpand; 6531 } 6532 6533 rect = lazyloadElems[i].getBoundingClientRect(); 6534 6535 if ((eLbottom = rect.bottom) >= elemNegativeExpand && 6536 (eLtop = rect.top) <= elvH && 6537 (eLright = rect.right) >= elemNegativeExpand * hFac && 6538 (eLleft = rect.left) <= eLvW && 6539 (eLbottom || eLright || eLleft || eLtop) && 6540 (lazySizesCfg.loadHidden || isVisible(lazyloadElems[i])) && 6541 ((isCompleted && isLoading < 3 && !elemExpandVal && (loadMode < 3 || lowRuns < 4)) || isNestedVisible(lazyloadElems[i], elemExpand))){ 6542 unveilElement(lazyloadElems[i]); 6543 loadedSomething = true; 6544 if(isLoading > 9){break;} 6545 } else if(!loadedSomething && isCompleted && !autoLoadElem && 6546 isLoading < 4 && lowRuns < 4 && loadMode > 2 && 6547 (preloadElems[0] || lazySizesCfg.preloadAfterLoad) && 6548 (preloadElems[0] || (!elemExpandVal && ((eLbottom || eLright || eLleft || eLtop) || lazyloadElems[i][_getAttribute](lazySizesCfg.sizesAttr) != 'auto')))){ 6549 autoLoadElem = preloadElems[0] || lazyloadElems[i]; 6550 } 6551 } 6552 6553 if(autoLoadElem && !loadedSomething){ 6554 unveilElement(autoLoadElem); 6555 } 6556 } 6557 }; 6558 6559 var throttledCheckElements = throttle(checkElements); 6560 6561 var switchLoadingClass = function(e){ 6562 var elem = e.target; 6563 6564 if (elem._lazyCache) { 6565 delete elem._lazyCache; 6566 return; 6567 } 6568 6569 resetPreloading(e); 6570 addClass(elem, lazySizesCfg.loadedClass); 6571 removeClass(elem, lazySizesCfg.loadingClass); 6572 addRemoveLoadEvents(elem, rafSwitchLoadingClass); 6573 triggerEvent(elem, 'lazyloaded'); 6574 }; 6575 var rafedSwitchLoadingClass = rAFIt(switchLoadingClass); 6576 var rafSwitchLoadingClass = function(e){ 6577 rafedSwitchLoadingClass({target: e.target}); 6578 }; 6579 6580 var changeIframeSrc = function(elem, src){ 6581 var loadMode = elem.getAttribute('data-load-mode') || lazySizesCfg.iframeLoadMode; 6582 6583 // loadMode can be also a string! 6584 if (loadMode == 0) { 6585 elem.contentWindow.location.replace(src); 6586 } else if (loadMode == 1) { 6587 elem.src = src; 6588 } 6589 }; 6590 6591 var handleSources = function(source){ 6592 var customMedia; 6593 6594 var sourceSrcset = source[_getAttribute](lazySizesCfg.srcsetAttr); 6595 6596 if( (customMedia = lazySizesCfg.customMedia[source[_getAttribute]('data-media') || source[_getAttribute]('media')]) ){ 6597 source.setAttribute('media', customMedia); 6598 } 6599 6600 if(sourceSrcset){ 6601 source.setAttribute('srcset', sourceSrcset); 6602 } 6603 }; 6604 6605 var lazyUnveil = rAFIt(function (elem, detail, isAuto, sizes, isImg){ 6606 var src, srcset, parent, isPicture, event, firesLoad; 6607 6608 if(!(event = triggerEvent(elem, 'lazybeforeunveil', detail)).defaultPrevented){ 6609 6610 if(sizes){ 6611 if(isAuto){ 6612 addClass(elem, lazySizesCfg.autosizesClass); 6613 } else { 6614 elem.setAttribute('sizes', sizes); 6615 } 6616 } 6617 6618 srcset = elem[_getAttribute](lazySizesCfg.srcsetAttr); 6619 src = elem[_getAttribute](lazySizesCfg.srcAttr); 6620 6621 if(isImg) { 6622 parent = elem.parentNode; 6623 isPicture = parent && regPicture.test(parent.nodeName || ''); 6624 } 6625 6626 firesLoad = detail.firesLoad || (('src' in elem) && (srcset || src || isPicture)); 6627 6628 event = {target: elem}; 6629 6630 addClass(elem, lazySizesCfg.loadingClass); 6631 6632 if(firesLoad){ 6633 clearTimeout(resetPreloadingTimer); 6634 resetPreloadingTimer = setTimeout(resetPreloading, 2500); 6635 addRemoveLoadEvents(elem, rafSwitchLoadingClass, true); 6636 } 6637 6638 if(isPicture){ 6639 forEach.call(parent.getElementsByTagName('source'), handleSources); 6640 } 6641 6642 if(srcset){ 6643 elem.setAttribute('srcset', srcset); 6644 } else if(src && !isPicture){ 6645 if(regIframe.test(elem.nodeName)){ 6646 changeIframeSrc(elem, src); 6647 } else { 6648 elem.src = src; 6649 } 6650 } 6651 6652 if(isImg && (srcset || isPicture)){ 6653 updatePolyfill(elem, {src: src}); 6654 } 6655 } 6656 6657 if(elem._lazyRace){ 6658 delete elem._lazyRace; 6659 } 6660 removeClass(elem, lazySizesCfg.lazyClass); 6661 6662 rAF(function(){ 6663 // Part of this can be removed as soon as this fix is older: https://bugs.chromium.org/p/chromium/issues/detail?id=7731 (2015) 6664 var isLoaded = elem.complete && elem.naturalWidth > 1; 6665 6666 if( !firesLoad || isLoaded){ 6667 if (isLoaded) { 6668 addClass(elem, lazySizesCfg.fastLoadedClass); 6669 } 6670 switchLoadingClass(event); 6671 elem._lazyCache = true; 6672 setTimeout(function(){ 6673 if ('_lazyCache' in elem) { 6674 delete elem._lazyCache; 6675 } 6676 }, 9); 6677 } 6678 if (elem.loading == 'lazy') { 6679 isLoading--; 6680 } 6681 }, true); 6682 }); 6683 6684 /** 6685 * 6686 * @param elem { Element } 6687 */ 6688 var unveilElement = function (elem){ 6689 if (elem._lazyRace) {return;} 6690 var detail; 6691 6692 var isImg = regImg.test(elem.nodeName); 6693 6694 //allow using sizes="auto", but don't use. it's invalid. Use data-sizes="auto" or a valid value for sizes instead (i.e.: sizes="80vw") 6695 var sizes = isImg && (elem[_getAttribute](lazySizesCfg.sizesAttr) || elem[_getAttribute]('sizes')); 6696 var isAuto = sizes == 'auto'; 6697 6698 if( (isAuto || !isCompleted) && isImg && (elem[_getAttribute]('src') || elem.srcset) && !elem.complete && !hasClass(elem, lazySizesCfg.errorClass) && hasClass(elem, lazySizesCfg.lazyClass)){return;} 6699 6700 detail = triggerEvent(elem, 'lazyunveilread').detail; 6701 6702 if(isAuto){ 6703 autoSizer.updateElem(elem, true, elem.offsetWidth); 6704 } 6705 6706 elem._lazyRace = true; 6707 isLoading++; 6708 6709 lazyUnveil(elem, detail, isAuto, sizes, isImg); 6710 }; 6711 6712 var afterScroll = debounce(function(){ 6713 lazySizesCfg.loadMode = 3; 6714 throttledCheckElements(); 6715 }); 6716 6717 var altLoadmodeScrollListner = function(){ 6718 if(lazySizesCfg.loadMode == 3){ 6719 lazySizesCfg.loadMode = 2; 6720 } 6721 afterScroll(); 6722 }; 6723 6724 var onload = function(){ 6725 if(isCompleted){return;} 6726 if(Date.now() - started < 999){ 6727 setTimeout(onload, 999); 6728 return; 6729 } 6730 6731 6732 isCompleted = true; 6733 6734 lazySizesCfg.loadMode = 3; 6735 6736 throttledCheckElements(); 6737 6738 addEventListener('scroll', altLoadmodeScrollListner, true); 6739 }; 6740 6741 return { 6742 _: function(){ 6743 started = Date.now(); 6744 6745 lazysizes.elements = document.getElementsByClassName(lazySizesCfg.lazyClass); 6746 preloadElems = document.getElementsByClassName(lazySizesCfg.lazyClass + ' ' + lazySizesCfg.preloadClass); 6747 6748 addEventListener('scroll', throttledCheckElements, true); 6749 6750 addEventListener('resize', throttledCheckElements, true); 6751 6752 addEventListener('pageshow', function (e) { 6753 if (e.persisted) { 6754 var loadingElements = document.querySelectorAll('.' + lazySizesCfg.loadingClass); 6755 6756 if (loadingElements.length && loadingElements.forEach) { 6757 requestAnimationFrame(function () { 6758 loadingElements.forEach( function (img) { 6759 if (img.complete) { 6760 unveilElement(img); 6761 } 6762 });
6763 }); 6764 } 6765 } 6766 }); 6767 6768 if(window.MutationObserver){ 6769 new MutationObserver( throttledCheckElements ).observe( docElem, {childList: true, subtree: true, attributes: true} ); 6770 } else { 6771 docElem[_addEventListener]('DOMNodeInserted', throttledCheckElements, true); 6772 docElem[_addEventListener]('DOMAttrModified', throttledCheckElements, true); 6773 setInterval(throttledCheckElements, 999); 6774 } 6775 6776 addEventListener('hashchange', throttledCheckElements, true); 6777 6778 //, 'fullscreenchange' 6779 ['focus', 'mouseover', 'click', 'load', 'transitionend', 'animationend'].forEach(function(name){ 6780 document[_addEventListener](name, throttledCheckElements, true); 6781 }); 6782 6783 if((/d$|^c/.test(document.readyState))){ 6784 onload(); 6785 } else { 6786 addEventListener('load', onload); 6787 document[_addEventListener]('DOMContentLoaded', throttledCheckElements); 6788 setTimeout(onload, 20000); 6789 } 6790 6791 if(lazysizes.elements.length){ 6792 checkElements(); 6793 rAF._lsFlush(); 6794 } else { 6795 throttledCheckElements(); 6796 } 6797 }, 6798 checkElems: throttledCheckElements, 6799 unveil: unveilElement, 6800 _aLSL: altLoadmodeScrollListner, 6801 }; 6802 })(); 6803 6804 6805 var autoSizer = (function(){ 6806 var autosizesElems; 6807 6808 var sizeElement = rAFIt(function(elem, parent, event, width){ 6809 var sources, i, len; 6810 elem._lazysizesWidth = width; 6811 width += 'px'; 6812 6813 elem.setAttribute('sizes', width); 6814 6815 if(regPicture.test(parent.nodeName || '')){ 6816 sources = parent.getElementsByTagName('source'); 6817 for(i = 0, len = sources.length; i < len; i++){ 6818 sources[i].setAttribute('sizes', width); 6819 } 6820 } 6821 6822 if(!event.detail.dataAttr){ 6823 updatePolyfill(elem, event.detail); 6824 } 6825 }); 6826 /** 6827 * 6828 * @param elem {Element} 6829 * @param dataAttr 6830 * @param [width] { number } 6831 */ 6832 var getSizeElement = function (elem, dataAttr, width){ 6833 var event; 6834 var parent = elem.parentNode; 6835 6836 if(parent){ 6837 width = getWidth(elem, parent, width); 6838 event = triggerEvent(elem, 'lazybeforesizes', {width: width, dataAttr: !!dataAttr}); 6839 6840 if(!event.defaultPrevented){ 6841 width = event.detail.width; 6842 6843 if(width && width !== elem._lazysizesWidth){ 6844 sizeElement(elem, parent, event, width); 6845 } 6846 } 6847 } 6848 }; 6849 6850 var updateElementsSizes = function(){ 6851 var i; 6852 var len = autosizesElems.length; 6853 if(len){ 6854 i = 0; 6855 6856 for(; i < len; i++){ 6857 getSizeElement(autosizesElems[i]); 6858 } 6859 } 6860 }; 6861 6862 var debouncedUpdateElementsSizes = debounce(updateElementsSizes); 6863 6864 return { 6865 _: function(){ 6866 autosizesElems = document.getElementsByClassName(lazySizesCfg.autosizesClass); 6867 addEventListener('resize', debouncedUpdateElementsSizes); 6868 }, 6869 checkElems: debouncedUpdateElementsSizes, 6870 updateElem: getSizeElement 6871 }; 6872 })(); 6873 6874 var init = function(){ 6875 if(!init.i && document.getElementsByClassName){ 6876 init.i = true; 6877 autoSizer._(); 6878 loader._(); 6879 } 6880 }; 6881 6882 setTimeout(function(){ 6883 if(lazySizesCfg.init){ 6884 init(); 6885 } 6886 }); 6887 6888 lazysizes = { 6889 /** 6890 * @type { LazySizesConfigPartial } 6891 */ 6892 cfg: lazySizesCfg, 6893 autoSizer: autoSizer, 6894 loader: loader, 6895 init: init, 6896 uP: updatePolyfill, 6897 aC: addClass, 6898 rC: removeClass, 6899 hC: hasClass, 6900 fire: triggerEvent, 6901 gW: getWidth, 6902 rAF: rAF, 6903 }; 6904 6905 return lazysizes; 6906} 6907)); 6908 6909 6910/***/ }), 6911 6912/***/ 1770: 6913/***/ (function(module, exports, __webpack_require__) { 6914 6915var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function(window, factory) { 6916 if(!window) {return;} 6917 var globalInstall = function(){ 6918 factory(window.lazySizes); 6919 window.removeEventListener('lazyunveilread', globalInstall, true); 6920 }; 6921 6922 factory = factory.bind(null, window, window.document); 6923 6924 if( true && module.exports){ 6925 factory(__webpack_require__(7090)); 6926 } else if (true) { 6927 !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(7090)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), 6928 __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? 6929 (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), 6930 __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); 6931 } else {} 6932}(typeof window != 'undefined' ? 6933 window : 0, function(window, document, lazySizes) { 6934 'use strict'; 6935 6936 if(!window.addEventListener){return;} 6937 6938 var regDescriptors = /\s+(\d+)(w|h)\s+(\d+)(w|h)/; 6939 var regCssFit = /parent-fit["']*\s*:\s*["']*(contain|cover|width)/; 6940 var regCssObject = /parent-container["']*\s*:\s*["']*(.+?)(?=(\s|$|,|'|"|;))/; 6941 var regPicture = /^picture$/i; 6942 var cfg = lazySizes.cfg; 6943 6944 var getCSS = function (elem){ 6945 return (getComputedStyle(elem, null) || {}); 6946 }; 6947 6948 var parentFit = { 6949 6950 getParent: function(element, parentSel){ 6951 var parent = element; 6952 var parentNode = element.parentNode; 6953 6954 if((!parentSel || parentSel == 'prev') && parentNode && regPicture.test(parentNode.nodeName || '')){ 6955 parentNode = parentNode.parentNode; 6956 } 6957 6958 if(parentSel != 'self'){ 6959 if(parentSel == 'prev'){ 6960 parent = element.previousElementSibling; 6961 } else if(parentSel && (parentNode.closest || window.jQuery)){ 6962 parent = (parentNode.closest ? 6963 parentNode.closest(parentSel) : 6964 jQuery(parentNode).closest(parentSel)[0]) || 6965 parentNode 6966 ; 6967 } else { 6968 parent = parentNode; 6969 } 6970 } 6971 6972 return parent; 6973 }, 6974 6975 getFit: function(element){ 6976 var tmpMatch, parentObj; 6977 var css = getCSS(element); 6978 var content = css.content || css.fontFamily; 6979 var obj = { 6980 fit: element._lazysizesParentFit || element.getAttribute('data-parent-fit') 6981 }; 6982 6983 if(!obj.fit && content && (tmpMatch = content.match(regCssFit))){ 6984 obj.fit = tmpMatch[1]; 6985 } 6986 6987 if(obj.fit){ 6988 parentObj = element._lazysizesParentContainer || element.getAttribute('data-parent-container'); 6989 6990 if(!parentObj && content && (tmpMatch = content.match(regCssObject))){ 6991 parentObj = tmpMatch[1]; 6992 } 6993 6994 obj.parent = parentFit.getParent(element, parentObj); 6995 6996 6997 } else { 6998 obj.fit = css.objectFit; 6999 } 7000 7001 return obj;
7002 }, 7003 7004 getImageRatio: function(element){ 7005 var i, srcset, media, ratio, match, width, height; 7006 var parent = element.parentNode; 7007 var elements = parent && regPicture.test(parent.nodeName || '') ? 7008 parent.querySelectorAll('source, img') : 7009 [element] 7010 ; 7011 7012 for(i = 0; i < elements.length; i++){ 7013 element = elements[i]; 7014 srcset = element.getAttribute(cfg.srcsetAttr) || element.getAttribute('srcset') || element.getAttribute('data-pfsrcset') || element.getAttribute('data-risrcset') || ''; 7015 media = element._lsMedia || element.getAttribute('media'); 7016 media = cfg.customMedia[element.getAttribute('data-media') || media] || media; 7017 7018 if(srcset && (!media || (window.matchMedia && matchMedia(media) || {}).matches )){ 7019 ratio = parseFloat(element.getAttribute('data-aspectratio')); 7020 7021 if (!ratio) { 7022 match = srcset.match(regDescriptors); 7023 7024 if (match) { 7025 if(match[2] == 'w'){ 7026 width = match[1]; 7027 height = match[3]; 7028 } else { 7029 width = match[3]; 7030 height = match[1]; 7031 } 7032 } else { 7033 width = element.getAttribute('width'); 7034 height = element.getAttribute('height'); 7035 } 7036 7037 ratio = width / height; 7038 } 7039 7040 break; 7041 } 7042 } 7043 7044 return ratio; 7045 }, 7046 7047 calculateSize: function(element, width){ 7048 var displayRatio, height, imageRatio, retWidth; 7049 var fitObj = this.getFit(element); 7050 var fit = fitObj.fit; 7051 var fitElem = fitObj.parent; 7052 7053 if(fit != 'width' && ((fit != 'contain' && fit != 'cover') || !(imageRatio = this.getImageRatio(element)))){ 7054 return width; 7055 } 7056 7057 if(fitElem){ 7058 width = fitElem.clientWidth; 7059 } else { 7060 fitElem = element; 7061 } 7062 7063 retWidth = width; 7064 7065 if(fit == 'width'){ 7066 retWidth = width; 7067 } else { 7068 height = fitElem.clientHeight; 7069 7070 if((displayRatio = width / height) && ((fit == 'cover' && displayRatio < imageRatio) || (fit == 'contain' && displayRatio > imageRatio))){ 7071 retWidth = width * (imageRatio / displayRatio); 7072 } 7073 } 7074 7075 return retWidth; 7076 } 7077 }; 7078 7079 lazySizes.parentFit = parentFit; 7080 7081 document.addEventListener('lazybeforesizes', function(e){ 7082 if(e.defaultPrevented || e.detail.instance != lazySizes){return;} 7083 7084 var element = e.target; 7085 e.detail.width = parentFit.calculateSize(element, e.detail.width); 7086 }); 7087})); 7088 7089 7090/***/ }) 7091 7092/******/ }); 7093/************************************************************************/ 7094/******/ // The module cache 7095/******/ var __webpack_module_cache__ = {}; 7096/******/ 7097/******/ // The require function 7098/******/ function __webpack_require__(moduleId) { 7099/******/ // Check if module is in cache 7100/******/ var cachedModule = __webpack_module_cache__[moduleId]; 7101/******/ if (cachedModule !== undefined) { 7102/******/ return cachedModule.exports; 7103/******/ } 7104/******/ // Create a new module (and put it into the cache) 7105/******/ var module = __webpack_module_cache__[moduleId] = { 7106/******/ // no module.id needed 7107/******/ // no module.loaded needed 7108/******/ exports: {} 7109/******/ }; 7110/******/ 7111/******/ // Execute the module function 7112/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); 7113/******/ 7114/******/ // Return the exports of the module 7115/******/ return module.exports; 7116/******/ } 7117/******/ 7118/************************************************************************/ 7119/******/ /* webpack/runtime/global */ 7120/******/ !function() { 7121/******/ __webpack_require__.g = (function() { 7122/******/ if (typeof globalThis === 'object') return globalThis; 7123/******/ try { 7124/******/ return this || new Function('return this')(); 7125/******/ } catch (e) { 7126/******/ if (typeof window === 'object') return window; 7127/******/ } 7128/******/ })(); 7129/******/ }(); 7130/******/ 7131/************************************************************************/ 7132var __webpack_exports__ = {}; 7133// This entry need to be wrapped in an IIFE because it need to be in strict mode. 7134!function() { 7135"use strict"; 7136 7137// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js 7138var es_object_to_string = __webpack_require__(1539); 7139// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.for-each.js 7140var web_dom_collections_for_each = __webpack_require__(4747);
7141// EXTERNAL MODULE: ./node_modules/core-js/modules/es.promise.js 7142var es_promise = __webpack_require__(8674); 7143// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.define-property.js 7144var es_object_define_property = __webpack_require__(9070); 7145// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.js 7146var es_symbol = __webpack_require__(2526); 7147// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.description.js 7148var es_symbol_description = __webpack_require__(1817); 7149// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.iterator.js 7150var es_symbol_iterator = __webpack_require__(2165); 7151// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.iterator.js 7152var es_array_iterator = __webpack_require__(6992); 7153// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.iterator.js 7154var es_string_iterator = __webpack_require__(8783); 7155// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.iterator.js 7156var web_dom_collections_iterator = __webpack_require__(3948); 7157// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.async-iterator.js 7158var es_symbol_async_iterator = __webpack_require__(2443); 7159// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.to-string-tag.js 7160var es_symbol_to_string_tag = __webpack_require__(3680); 7161// EXTERNAL MODULE: ./node_modules/core-js/modules/es.json.to-string-tag.js 7162var es_json_to_string_tag = __webpack_require__(3706); 7163// EXTERNAL MODULE: ./node_modules/core-js/modules/es.math.to-string-tag.js 7164var es_math_to_string_tag = __webpack_require__(2703); 7165// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-prototype-of.js 7166var es_object_get_prototype_of = __webpack_require__(489); 7167// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.set-prototype-of.js 7168var es_object_set_prototype_of = __webpack_require__(8304); 7169// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.slice.js 7170var es_array_slice = __webpack_require__(7042); 7171// EXTERNAL MODULE: ./node_modules/lazysizes/lazysizes.js 7172var lazysizes = __webpack_require__(7090); 7173// EXTERNAL MODULE: ./node_modules/lazysizes/plugins/parent-fit/ls.parent-fit.js 7174var ls_parent_fit = __webpack_require__(1770); 7175;// CONCATENATED MODULE: ./src/scripts/components/video.ts 7176 7177 7178function Video() { 7179 // Load the IFrame Player API code asynchronously. 7180 var tag = document.createElement('script'); 7181 tag.src = 'https://www.youtube.com/player_api'; 7182 var firstScriptTag = document.getElementsByTagName('script')[0]; 7183 firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 7184 window.onYouTubeIframeAPIReady = function () { 7185 var videos = document.querySelectorAll('div[data-youtube]'); 7186 videos.forEach(function (video) { 7187 var id = video.id; 7188 var youTube = JSON.parse(video.getAttribute('data-youtube')); 7189 new YT.Player(id, { 7190 height: youTube.Height, 7191 width: youTube.Width, 7192 videoId: youTube.YouTubeEmbedId, 7193 playerVars: { 7194 autoplay: youTube.AutoPlay ? 1 : 0, 7195 controls: youTube.Controls ? 1 : 0, 7196 loop: youTube.Loop ? 1 : 0, 7197 mute: youTube.Mute ? 1 : 0 7198 } 7199 }); 7200 }); 7201 }; 7202} 7203// EXTERNAL MODULE: ./node_modules/core-js/modules/es.json.stringify.js 7204var es_json_stringify = __webpack_require__(8862); 7205// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.to-string.js 7206var es_regexp_to_string = __webpack_require__(9714); 7207// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.to-primitive.js 7208var es_symbol_to_primitive = __webpack_require__(6649); 7209// EXTERNAL MODULE: ./node_modules/core-js/modules/es.date.to-primitive.js 7210var es_date_to_primitive = __webpack_require__(6078); 7211// EXTERNAL MODULE: ./node_modules/core-js/modules/es.number.constructor.js 7212var es_number_constructor = __webpack_require__(9653); 7213;// CONCATENATED MODULE: ./src/scripts/components/accordion.ts 7214function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } 7215function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; }
vendor: 7,629 bytes, line 7215
7215 function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEac
vendor: 4,968 bytes, lines 7215-7244
7215h(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; } 7216 7217 7218 7219 7220 7221 7222 7223 7224 7225 7226 7227 7228 7229 7230 7231 7232 7233 7234 7235 7236 7237 7238function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } 7239function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } 7240function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } 7241function _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, _toPropertyKey(descriptor.key), descriptor); } } 7242function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } 7243function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } 7244function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string");
7244 return _typeof(key) === "symbol" ? key : String(key); } 7245function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } 7246var Accordion = /*#__PURE__*/function () { 7247 function Accordion() { 7248 var _this = this; 7249 _classCallCheck(this, Accordion); 7250 _defineProperty(this, "_cc_accordion", void 0); 7251 _defineProperty(this, "_cc_accordion_content", void 0); 7252 _defineProperty(this, "_cc_accordion_header", void 0); 7253 _defineProperty(this, "_apiPrefix", '/umbraco/api/votingapi/'); 7254 _defineProperty(this, "_thumbs", void 0); 7255 _defineProperty(this, "vote", /*#__PURE__*/function () { 7256 var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(thumbsUp, question) { 7257 var res; 7258 return _regeneratorRuntime().wrap(function _callee$(_context) { 7259 while (1) switch (_context.prev = _context.next) { 7260 case 0: 7261 _context.prev = 0; 7262 _context.next = 3; 7263 return fetch(_this._apiPrefix + 'vote', { 7264 method: 'POST', 7265 headers: { 7266 "Content-Type": "application/json", 7267 "X-EndPoint-Key": window.ak 7268 }, 7269 body: JSON.stringify({ 7270 "resolved": thumbsUp, 7271 "question": question 7272 }) 7273 }); 7274 case 3: 7275 res = _context.sent; 7276 _context.next = 9; 7277 break; 7278 case 6: 7279 _context.prev = 6; 7280 _context.t0 = _context["catch"](0); 7281 console.log(_context.t0); 7282 case 9: 7283 case "end": 7284 return _context.stop(); 7285 } 7286 }, _callee, null, [[0, 6]]); 7287 })); 7288 return function (_x, _x2) { 7289 return _ref.apply(this, arguments); 7290 }; 7291 }()); 7292 _defineProperty(this, "getElm", function (fromElm, elmToGet) { 7293 if (fromElm.classList.contains(elmToGet)) { 7294 return fromElm; 7295 } else if (fromElm.classList.contains('container')) { 7296 return null; 7297 } 7298 return _this.getElm(fromElm.parentElement, elmToGet); 7299 }); 7300 _defineProperty(this, "getQuestion", function (fromThumb) { 7301 var acc = _this.getElm(fromThumb, 'cc-accordion'); 7302 if (acc) { 7303 var question = acc.querySelector('.cc-accordion-header h3'); 7304 var questionData = question.getAttribute('data-question'); 7305 if (question.textContent === questionData) { 7306 return questionData; 7307 } 7308 } 7309 return null; 7310 }); 7311 if (Accordion.instance) { 7312 return Accordion.instance; 7313 } 7314 Accordion.instance = this; 7315 this._cc_accordion = document.querySelectorAll('.cc-accordion'); 7316 this._cc_accordion_content = document.querySelectorAll('.cc-accordion-content'); 7317 this._cc_accordion_header = document.querySelectorAll('.cc-accordion-header'); 7318 this._thumbs = document.querySelectorAll('.thumbs-up-btn,.thumbs-down-btn'); 7319 this.addEvents(); 7320 this.sizer(); 7321 } 7322 _createClass(Accordion, [{ 7323 key: "sizer", 7324 value: function sizer() { 7325 if (this._cc_accordion.length > -1) { 7326 for (var i = 0; i < this._cc_accordion_content.length; i++) { 7327 var accContent = this._cc_accordion_content[i]; 7328 accContent.style.height = "auto"; 7329 accContent.parentElement.dataset.height = accContent.offsetHeight.toString(); 7330 if (!this._cc_accordion_content[i].parentElement.classList.contains("open")) { 7331 accContent.style.height = '0'; 7332 } 7333 } 7334 } 7335 } 7336 }, { 7337 key: "addEvents", 7338 value: function addEvents() { 7339 var _this2 = this; 7340 window.addEventListener('resize', function () { 7341 _this2.sizer(); 7342 }); 7343 if (this._cc_accordion.length > -1) { 7344 for (var i = 0; i < this._cc_accordion_header.length; i++) { 7345 var targetheight = 0; 7346 this._cc_accordion_header[i].addEventListener('click', function () { 7347 var parent = this.parentElement, 7348 targetheight = 0; 7349 if (parent.classList.contains("open")) { 7350 targetheight = 0; 7351 parent.classList.remove("open"); 7352 } else { 7353 targetheight = parent.dataset.height; 7354 parent.classList.add("open"); 7355 } 7356 var sb = this.nextElementSibling.style.height = targetheight + "px"; 7357 }); 7358 } 7359 }
7360 this._thumbs.forEach(function (elm) { 7361 elm.addEventListener('click', function (e) { 7362 var _this2$getQuestion; 7363 var btn = e.currentTarget; 7364 var question = (_this2$getQuestion = _this2.getQuestion(btn)) !== null && _this2$getQuestion !== void 0 ? _this2$getQuestion : ''; 7365 if (question) { 7366 _this2.vote(btn.classList.contains('thumbs-up-btn'), question); 7367 var voteElm = _this2.getElm(btn, 'voting'); 7368 var thumbsElms = voteElm.querySelectorAll('.thumbs-up,.thumbs-down'); 7369 thumbsElms.forEach(function (elm) { 7370 elm.classList.add('hidden'); 7371 }); 7372 var votingComplete = "<div class=\"voting-feedback\">\n <p>Thanks for your feedback.</p>\n </div>"; 7373 voteElm.innerHTML = votingComplete; 7374 } 7375 }); 7376 }); 7377 } 7378 }], [{ 7379 key: "getInstance", 7380 value: function getInstance() { 7381 if (!Accordion.instance) { 7382 Accordion.instance = new Accordion(); 7383 } 7384 return Accordion.instance; 7385 } 7386 }]); 7387 return Accordion; 7388}(); 7389_defineProperty(Accordion, "instance", void 0); 7390/* harmony default export */ var accordion = (Accordion); 7391// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.from.js 7392var es_array_from = __webpack_require__(1038); 7393// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.includes.js 7394var es_array_includes = __webpack_require__(6699); 7395;// CONCATENATED MODULE: ./src/scripts/components/nav.ts 7396 7397 7398 7399 7400 7401function Nav() { 7402 var topmenu = document.querySelector(".cc-primary-nav"); 7403 var inputToggleElm = document.querySelector("input#toggle_menu"); 7404 var desktopChildMenus = topmenu.querySelectorAll('.primary li ul'); 7405 var parentLinks = topmenu.querySelectorAll(".primary > li"); 7406 var logo = document.querySelector('#header-logo'); 7407 var mainButtons = document.querySelectorAll("label[for='toggle_menu']"); 7408 var skipButtons = document.querySelectorAll("a[href='#skiplink-menu']"); 7409 var breakpoint = 'lg'; 7410 var resizeTimeout; 7411 var mobileResetNeeded = true; 7412 var isMainButton = function isMainButton(elem) { 7413 return Array.from(mainButtons).some(function (btn) { 7414 return btn.contains(elem) || elem.isEqualNode(btn); 7415 }); 7416 }; 7417 var isVisible = function isVisible(elem) { 7418 return !!elem && !!(elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length); 7419 }; 7420 7421 // Event handlers 7422 var attachEventHandlers = function attachEventHandlers() { 7423 // Skip buttons trigger the main menu toggle 7424 skipButtons.forEach(function (btn) { 7425 btn.addEventListener('keydown', function (e) { 7426 if (['Space', 'Enter'].includes(e.key)) mainButtons[0].click(); 7427 }); 7428 }); 7429 7430 // Main buttons keyboard toggle 7431 mainButtons.forEach(function (btn, idx) { 7432 btn.addEventListener('keydown', function (e) { 7433 if (['Space', 'Enter'].includes(e.key)) { 7434 e.currentTarget.click(); 7435 e.preventDefault(); 7436 } 7437 // Optional: for second button or any, close menu on Tab/Enter/Space 7438 if (idx === 1 && ['Space', 'Enter', 'Tab'].includes(e.key)) { 7439 inputToggleElm.checked = false; 7440 } 7441 }); 7442 }); 7443 7444 // Click outside menu closes mobile 7445 document.addEventListener('click', function (e) { 7446 var element = e.target; 7447 if (inputToggleElm.checked && !isMainButton(element) && !topmenu.contains(element) && isVisible(element)) { 7448 mainButtons[0].click(); 7449 } 7450 }); 7451 7452 // Window resize 7453 window.addEventListener('resize', function () { 7454 document.body.classList.add("is-resizing"); 7455 clearTimeout(resizeTimeout); 7456 resizeTimeout = window.setTimeout(function () { 7457 document.body.classList.remove("is-resizing"); 7458 onResize(); 7459 logo.style.width = ''; 7460 }, 150); 7461 }); 7462 setupDesktopArrowKeyNavigation(); 7463 }; 7464 var setBreakpoint = function setBreakpoint() { 7465 var width = window.innerWidth; 7466 breakpoint = width >= 1200 ? 'lg' : width >= 800 ? 'md' : 'sm'; 7467 }; 7468 var killMobileMenu = function killMobileMenu() { 7469 inputToggleElm.checked = false; 7470 }; 7471 7472 // Logo fix 7473 var fixLogoSizeChangeOnMenuToggle = function fixLogoSizeChangeOnMenuToggle() { 7474 if (!logo) return; 7475 inputToggleElm.addEventListener('change', function (e) { 7476 var element = e.target; 7477 var checked = element.checked; 7478 element.checked = !checked; 7479 logo.style.width = checked ? "".concat(logo.clientWidth, "px") : ''; 7480 element.checked = checked; 7481 });
7482 }; 7483 var checkForOffscreen = function checkForOffscreen() { 7484 desktopChildMenus.forEach(function (element) { 7485 element.classList.remove('offscreen-right-fix'); 7486 if (element.getBoundingClientRect().right > window.innerWidth) { 7487 element.classList.add('offscreen-right-fix'); 7488 } 7489 }); 7490 }; 7491 var closeAllDesktopSubmenus = function closeAllDesktopSubmenus() { 7492 topmenu.querySelectorAll(".primary > li[aria-expanded='true']").forEach(function (link) { 7493 link.setAttribute("aria-expanded", "false"); 7494 link.classList.remove("open"); 7495 }); 7496 }; 7497 var setupDesktopArrowKeyNavigation = function setupDesktopArrowKeyNavigation() { 7498 parentLinks.forEach(function (link) { 7499 link.addEventListener("keydown", function (e) { 7500 var submenu = link.querySelector("ul"); 7501 7502 // â = open submenu 7503 if (e.key === "ArrowDown") { 7504 var _submenu$querySelecto; 7505 e.preventDefault(); 7506 closeAllDesktopSubmenus(); 7507 link.setAttribute("aria-expanded", "true"); 7508 link.classList.add("open"); 7509 submenu === null || submenu === void 0 ? void 0 : (_submenu$querySelecto = submenu.querySelector("a")) === null || _submenu$querySelecto === void 0 ? void 0 : _submenu$querySelecto.focus(); 7510 } 7511 7512 // Escape closes submenu 7513 if (e.key === "Escape") { 7514 closeAllDesktopSubmenus(); 7515 link.focus(); 7516 } 7517 }); 7518 }); 7519 }; 7520 var onResize = function onResize() { 7521 setBreakpoint(); 7522 if (breakpoint === 'lg') { 7523 checkForOffscreen(); 7524 killMobileMenu(); 7525 mobileResetNeeded = true; 7526 } else { 7527 if (mobileResetNeeded) { 7528 //remove a tag classes added for desktop 7529 //remove right offscreen fixes 7530 desktopChildMenus.forEach(function (element) { 7531 element.classList.remove('offscreen-right-fix'); 7532 }); 7533 mobileResetNeeded = false; 7534 } 7535 } 7536 }; 7537 7538 // Initialization 7539 var init = function init() { 7540 fixLogoSizeChangeOnMenuToggle(); 7541 attachEventHandlers(); 7542 setBreakpoint(); 7543 if (breakpoint === 'lg') { 7544 checkForOffscreen(); 7545 } 7546 }; 7547 init(); 7548} 7549;// CONCATENATED MODULE: ./node_modules/@splidejs/splide/dist/js/splide.esm.js 7550function splide_esm_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); } } 7551 7552function splide_esm_createClass(Constructor, protoProps, staticProps) { if (protoProps) splide_esm_defineProperties(Constructor.prototype, protoProps); if (staticProps) splide_esm_defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } 7553 7554/*! 7555 * Splide.js 7556 * Version : 4.1.4 7557 * License : MIT 7558 * Copyright: 2022 Naotoshi Fujita 7559 */ 7560var MEDIA_PREFERS_REDUCED_MOTION = "(prefers-reduced-motion: reduce)"; 7561var CREATED = 1; 7562var MOUNTED = 2; 7563var IDLE = 3; 7564var MOVING = 4; 7565var SCROLLING = 5; 7566var DRAGGING = 6; 7567var DESTROYED = 7; 7568var STATES = { 7569 CREATED: CREATED, 7570 MOUNTED: MOUNTED, 7571 IDLE: IDLE, 7572 MOVING: MOVING, 7573 SCROLLING: SCROLLING, 7574 DRAGGING: DRAGGING, 7575 DESTROYED: DESTROYED 7576}; 7577 7578function empty(array) { 7579 array.length = 0; 7580} 7581 7582function slice(arrayLike, start, end) { 7583 return Array.prototype.slice.call(arrayLike, start, end); 7584} 7585 7586function apply(func) { 7587 return func.bind.apply(func, [null].concat(slice(arguments, 1))); 7588} 7589 7590var nextTick = setTimeout; 7591 7592var noop = function noop() {}; 7593 7594function raf(func) { 7595 return requestAnimationFrame(func); 7596} 7597 7598function typeOf(type, subject) { 7599 return typeof subject === type; 7600} 7601 7602function isObject(subject) { 7603 return !isNull(subject) && typeOf("object", subject); 7604} 7605 7606var isArray = Array.isArray; 7607var isFunction = apply(typeOf, "function"); 7608var isString = apply(typeOf, "string"); 7609var isUndefined = apply(typeOf, "undefined"); 7610 7611function isNull(subject) { 7612 return subject === null; 7613} 7614 7615function isHTMLElement(subject) { 7616 try { 7617 return subject instanceof (subject.ownerDocument.defaultView || window).HTMLElement; 7618 } catch (e) { 7619 return false; 7620 } 7621} 7622 7623function toArray(value) { 7624 return isArray(value) ? value : [value]; 7625} 7626 7627function forEach(values, iteratee) {
vendor: 97,813 bytes, lines 7628-11232
7628 toArray(values).forEach(iteratee); 7629} 7630 7631function includes(array, value) { 7632 return array.indexOf(value) > -1; 7633} 7634 7635function push(array, items) { 7636 array.push.apply(array, toArray(items)); 7637 return array; 7638} 7639 7640function toggleClass(elm, classes, add) { 7641 if (elm) { 7642 forEach(classes, function (name) { 7643 if (name) { 7644 elm.classList[add ? "add" : "remove"](name); 7645 } 7646 }); 7647 } 7648} 7649 7650function addClass(elm, classes) { 7651 toggleClass(elm, isString(classes) ? classes.split(" ") : classes, true); 7652} 7653 7654function append(parent, children) { 7655 forEach(children, parent.appendChild.bind(parent)); 7656} 7657 7658function before(nodes, ref) { 7659 forEach(nodes, function (node) { 7660 var parent = (ref || node).parentNode; 7661 7662 if (parent) { 7663 parent.insertBefore(node, ref); 7664 } 7665 }); 7666} 7667 7668function matches(elm, selector) { 7669 return isHTMLElement(elm) && (elm["msMatchesSelector"] || elm.matches).call(elm, selector); 7670} 7671 7672function children(parent, selector) { 7673 var children2 = parent ? slice(parent.children) : []; 7674 return selector ? children2.filter(function (child) { 7675 return matches(child, selector); 7676 }) : children2; 7677} 7678 7679function child(parent, selector) { 7680 return selector ? children(parent, selector)[0] : parent.firstElementChild; 7681} 7682 7683var ownKeys = Object.keys; 7684 7685function forOwn(object, iteratee, right) { 7686 if (object) { 7687 (right ? ownKeys(object).reverse() : ownKeys(object)).forEach(function (key) { 7688 key !== "__proto__" && iteratee(object[key], key); 7689 }); 7690 } 7691 7692 return object; 7693} 7694 7695function splide_esm_assign(object) { 7696 slice(arguments, 1).forEach(function (source) { 7697 forOwn(source, function (value, key) { 7698 object[key] = source[key]; 7699 }); 7700 }); 7701 return object; 7702} 7703 7704function merge(object) { 7705 slice(arguments, 1).forEach(function (source) { 7706 forOwn(source, function (value, key) { 7707 if (isArray(value)) { 7708 object[key] = value.slice(); 7709 } else if (isObject(value)) { 7710 object[key] = merge({}, isObject(object[key]) ? object[key] : {}, value); 7711 } else { 7712 object[key] = value; 7713 } 7714 }); 7715 }); 7716 return object; 7717} 7718 7719function omit(object, keys) { 7720 forEach(keys || ownKeys(object), function (key) { 7721 delete object[key]; 7722 }); 7723} 7724 7725function removeAttribute(elms, attrs) { 7726 forEach(elms, function (elm) { 7727 forEach(attrs, function (attr) { 7728 elm && elm.removeAttribute(attr); 7729 }); 7730 }); 7731} 7732 7733function setAttribute(elms, attrs, value) { 7734 if (isObject(attrs)) { 7735 forOwn(attrs, function (value2, name) { 7736 setAttribute(elms, name, value2); 7737 }); 7738 } else { 7739 forEach(elms, function (elm) { 7740 isNull(value) || value === "" ? removeAttribute(elm, attrs) : elm.setAttribute(attrs, String(value)); 7741 }); 7742 } 7743} 7744 7745function create(tag, attrs, parent) { 7746 var elm = document.createElement(tag); 7747 7748 if (attrs) { 7749 isString(attrs) ? addClass(elm, attrs) : setAttribute(elm, attrs); 7750 } 7751 7752 parent && append(parent, elm); 7753 return elm; 7754} 7755 7756function style(elm, prop, value) { 7757 if (isUndefined(value)) { 7758 return getComputedStyle(elm)[prop]; 7759 } 7760 7761 if (!isNull(value)) { 7762 elm.style[prop] = "" + value; 7763 } 7764} 7765 7766function display(elm, display2) { 7767 style(elm, "display", display2); 7768} 7769 7770function splide_esm_focus(elm) { 7771 elm["setActive"] && elm["setActive"]() || elm.focus({ 7772 preventScroll: true 7773 }); 7774} 7775 7776function getAttribute(elm, attr) { 7777 return elm.getAttribute(attr); 7778} 7779 7780function hasClass(elm, className) { 7781 return elm && elm.classList.contains(className); 7782} 7783 7784function rect(target) { 7785 return target.getBoundingClientRect(); 7786} 7787 7788function remove(nodes) { 7789 forEach(nodes, function (node) { 7790 if (node && node.parentNode) { 7791 node.parentNode.removeChild(node); 7792 } 7793 }); 7794} 7795 7796function parseHtml(html) { 7797 return child(new DOMParser().parseFromString(html, "text/html").body); 7798} 7799 7800function prevent(e, stopPropagation) { 7801 e.preventDefault(); 7802 7803 if (stopPropagation) { 7804 e.stopPropagation(); 7805 e.stopImmediatePropagation(); 7806 } 7807} 7808 7809function query(parent, selector) { 7810 return parent && parent.querySelector(selector); 7811} 7812 7813function queryAll(parent, selector) { 7814 return selector ? slice(parent.querySelectorAll(selector)) : []; 7815} 7816 7817function removeClass(elm, classes) { 7818 toggleClass(elm, classes, false); 7819} 7820 7821function timeOf(e) { 7822 return e.timeStamp; 7823} 7824 7825function unit(value) { 7826 return isString(value) ? value : value ? value + "px" : ""; 7827} 7828 7829var PROJECT_CODE = "splide"; 7830var DATA_ATTRIBUTE = "data-" + PROJECT_CODE; 7831 7832function assert(condition, message) { 7833 if (!condition) { 7834 throw new Error("[" + PROJECT_CODE + "] " + (message || "")); 7835 } 7836} 7837 7838var min = Math.min, 7839 max = Math.max, 7840 floor = Math.floor, 7841 ceil = Math.ceil, 7842 abs = Math.abs; 7843 7844function approximatelyEqual(x, y, epsilon) { 7845 return abs(x - y) < epsilon; 7846} 7847 7848function between(number, x, y, exclusive) { 7849 var minimum = min(x, y); 7850 var maximum = max(x, y); 7851 return exclusive ? minimum < number && number < maximum : minimum <= number && number <= maximum; 7852} 7853 7854function clamp(number, x, y) { 7855 var minimum = min(x, y); 7856 var maximum = max(x, y); 7857 return min(max(minimum, number), maximum); 7858} 7859 7860function sign(x) { 7861 return +(x > 0) - +(x < 0); 7862} 7863 7864function camelToKebab(string) { 7865 return string.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(); 7866} 7867 7868function format(string, replacements) { 7869 forEach(replacements, function (replacement) { 7870 string = string.replace("%s", "" + replacement); 7871 }); 7872 return string; 7873} 7874 7875function pad(number) { 7876 return number < 10 ? "0" + number : "" + number; 7877} 7878 7879var ids = {}; 7880 7881function uniqueId(prefix) { 7882 return "" + prefix + pad(ids[prefix] = (ids[prefix] || 0) + 1); 7883} 7884 7885function EventBinder() { 7886 var listeners = []; 7887 7888 function bind(targets, events, callback, options) { 7889 forEachEvent(targets, events, function (target, event, namespace) { 7890 var isEventTarget = ("addEventListener" in target); 7891 var remover = isEventTarget ? target.removeEventListener.bind(target, event, callback, options) : target["removeListener"].bind(target, callback); 7892 isEventTarget ? target.addEventListener(event, callback, options) : target["addListener"](callback); 7893 listeners.push([target, event, namespace, callback, remover]); 7894 }); 7895 } 7896 7897 function unbind(targets, events, callback) { 7898 forEachEvent(targets, events, function (target, event, namespace) { 7899 listeners = listeners.filter(function (listener) { 7900 if (listener[0] === target && listener[1] === event && listener[2] === namespace && (!callback || listener[3] === callback)) { 7901 listener[4](); 7902 return false; 7903 } 7904 7905 return true; 7906 }); 7907 }); 7908 } 7909 7910 function dispatch(target, type, detail) { 7911 var e; 7912 var bubbles = true; 7913 7914 if (typeof CustomEvent === "function") { 7915 e = new CustomEvent(type, { 7916 bubbles: bubbles, 7917 detail: detail 7918 }); 7919 } else { 7920 e = document.createEvent("CustomEvent"); 7921 e.initCustomEvent(type, bubbles, false, detail); 7922 } 7923 7924 target.dispatchEvent(e); 7925 return e; 7926 } 7927 7928 function forEachEvent(targets, events, iteratee) { 7929 forEach(targets, function (target) { 7930 target && forEach(events, function (events2) { 7931 events2.split(" ").forEach(function (eventNS) { 7932 var fragment = eventNS.split("."); 7933 iteratee(target, fragment[0], fragment[1]); 7934 }); 7935 }); 7936 }); 7937 } 7938 7939 function destroy() { 7940 listeners.forEach(function (data) { 7941 data[4](); 7942 }); 7943 empty(listeners); 7944 } 7945 7946 return { 7947 bind: bind, 7948 unbind: unbind, 7949 dispatch: dispatch, 7950 destroy: destroy 7951 }; 7952} 7953 7954var EVENT_MOUNTED = "mounted"; 7955var EVENT_READY = "ready"; 7956var EVENT_MOVE = "move"; 7957var EVENT_MOVED = "moved"; 7958var EVENT_CLICK = "click"; 7959var EVENT_ACTIVE = "active"; 7960var EVENT_INACTIVE = "inactive"; 7961var EVENT_VISIBLE = "visible"; 7962var EVENT_HIDDEN = "hidden"; 7963var EVENT_REFRESH = "refresh"; 7964var EVENT_UPDATED = "updated"; 7965var EVENT_RESIZE = "resize"; 7966var EVENT_RESIZED = "resized"; 7967var EVENT_DRAG = "drag"; 7968var EVENT_DRAGGING = "dragging"; 7969var EVENT_DRAGGED = "dragged"; 7970var EVENT_SCROLL = "scroll"; 7971var EVENT_SCROLLED = "scrolled"; 7972var EVENT_OVERFLOW = "overflow"; 7973var EVENT_DESTROY = "destroy"; 7974var EVENT_ARROWS_MOUNTED = "arrows:mounted"; 7975var EVENT_ARROWS_UPDATED = "arrows:updated"; 7976var EVENT_PAGINATION_MOUNTED = "pagination:mounted"; 7977var EVENT_PAGINATION_UPDATED = "pagination:updated"; 7978var EVENT_NAVIGATION_MOUNTED = "navigation:mounted"; 7979var EVENT_AUTOPLAY_PLAY = "autoplay:play"; 7980var EVENT_AUTOPLAY_PLAYING = "autoplay:playing"; 7981var EVENT_AUTOPLAY_PAUSE = "autoplay:pause"; 7982var EVENT_LAZYLOAD_LOADED = "lazyload:loaded"; 7983var EVENT_SLIDE_KEYDOWN = "sk"; 7984var EVENT_SHIFTED = "sh"; 7985var EVENT_END_INDEX_CHANGED = "ei"; 7986 7987function EventInterface(Splide2) { 7988 var bus = Splide2 ? Splide2.event.bus : document.createDocumentFragment(); 7989 var binder = EventBinder(); 7990 7991 function on(events, callback) { 7992 binder.bind(bus, toArray(events).join(" "), function (e) { 7993 callback.apply(callback, isArray(e.detail) ? e.detail : []); 7994 }); 7995 } 7996 7997 function emit(event) { 7998 binder.dispatch(bus, event, slice(arguments, 1)); 7999 } 8000 8001 if (Splide2) { 8002 Splide2.event.on(EVENT_DESTROY, binder.destroy); 8003 } 8004 8005 return splide_esm_assign(binder, { 8006 bus: bus, 8007 on: on, 8008 off: apply(binder.unbind, bus), 8009 emit: emit 8010 }); 8011} 8012 8013function RequestInterval(interval, onInterval, onUpdate, limit) { 8014 var now = Date.now; 8015 var startTime; 8016 var rate = 0; 8017 var id; 8018 var paused = true; 8019 var count = 0; 8020 8021 function update() { 8022 if (!paused) { 8023 rate = interval ? min((now() - startTime) / interval, 1) : 1; 8024 onUpdate && onUpdate(rate); 8025 8026 if (rate >= 1) { 8027 onInterval(); 8028 startTime = now(); 8029 8030 if (limit && ++count >= limit) { 8031 return pause(); 8032 } 8033 } 8034 8035 id = raf(update); 8036 } 8037 } 8038 8039 function start(resume) { 8040 resume || cancel(); 8041 startTime = now() - (resume ? rate * interval : 0); 8042 paused = false; 8043 id = raf(update); 8044 } 8045 8046 function pause() { 8047 paused = true; 8048 } 8049 8050 function rewind() { 8051 startTime = now(); 8052 rate = 0; 8053 8054 if (onUpdate) { 8055 onUpdate(rate); 8056 } 8057 } 8058 8059 function cancel() { 8060 id && cancelAnimationFrame(id); 8061 rate = 0; 8062 id = 0; 8063 paused = true; 8064 } 8065 8066 function set(time) { 8067 interval = time; 8068 } 8069 8070 function isPaused() { 8071 return paused; 8072 } 8073 8074 return { 8075 start: start, 8076 rewind: rewind, 8077 pause: pause, 8078 cancel: cancel, 8079 set: set, 8080 isPaused: isPaused 8081 }; 8082} 8083 8084function State(initialState) { 8085 var state = initialState; 8086 8087 function set(value) { 8088 state = value; 8089 } 8090 8091 function is(states) { 8092 return includes(toArray(states), state); 8093 } 8094 8095 return { 8096 set: set, 8097 is: is 8098 }; 8099} 8100 8101function Throttle(func, duration) { 8102 var interval = RequestInterval(duration || 0, func, null, 1); 8103 return function () { 8104 interval.isPaused() && interval.start(); 8105 }; 8106} 8107 8108function Media(Splide2, Components2, options) { 8109 var state = Splide2.state; 8110 var breakpoints = options.breakpoints || {}; 8111 var reducedMotion = options.reducedMotion || {}; 8112 var binder = EventBinder(); 8113 var queries = []; 8114 8115 function setup() { 8116 var isMin = options.mediaQuery === "min"; 8117 ownKeys(breakpoints).sort(function (n, m) { 8118 return isMin ? +n - +m : +m - +n; 8119 }).forEach(function (key) { 8120 register(breakpoints[key], "(" + (isMin ? "min" : "max") + "-width:" + key + "px)"); 8121 }); 8122 register(reducedMotion, MEDIA_PREFERS_REDUCED_MOTION); 8123 update(); 8124 } 8125 8126 function destroy(completely) { 8127 if (completely) { 8128 binder.destroy(); 8129 } 8130 } 8131 8132 function register(options2, query) { 8133 var queryList = matchMedia(query); 8134 binder.bind(queryList, "change", update); 8135 queries.push([options2, queryList]); 8136 } 8137 8138 function update() { 8139 var destroyed = state.is(DESTROYED); 8140 var direction = options.direction; 8141 var merged = queries.reduce(function (merged2, entry) { 8142 return merge(merged2, entry[1].matches ? entry[0] : {}); 8143 }, {}); 8144 omit(options); 8145 set(merged); 8146 8147 if (options.destroy) { 8148 Splide2.destroy(options.destroy === "completely"); 8149 } else if (destroyed) { 8150 destroy(true); 8151 Splide2.mount(); 8152 } else { 8153 direction !== options.direction && Splide2.refresh(); 8154 } 8155 } 8156 8157 function reduce(enable) { 8158 if (matchMedia(MEDIA_PREFERS_REDUCED_MOTION).matches) { 8159 enable ? merge(options, reducedMotion) : omit(options, ownKeys(reducedMotion)); 8160 } 8161 } 8162 8163 function set(opts, base, notify) { 8164 merge(options, opts); 8165 base && merge(Object.getPrototypeOf(options), opts); 8166 8167 if (notify || !state.is(CREATED)) { 8168 Splide2.emit(EVENT_UPDATED, options); 8169 } 8170 } 8171 8172 return { 8173 setup: setup, 8174 destroy: destroy, 8175 reduce: reduce, 8176 set: set 8177 }; 8178} 8179 8180var ARROW = "Arrow"; 8181var ARROW_LEFT = ARROW + "Left"; 8182var ARROW_RIGHT = ARROW + "Right"; 8183var ARROW_UP = ARROW + "Up"; 8184var ARROW_DOWN = ARROW + "Down"; 8185var LTR = "ltr"; 8186var RTL = "rtl"; 8187var TTB = "ttb"; 8188var ORIENTATION_MAP = { 8189 width: ["height"], 8190 left: ["top", "right"], 8191 right: ["bottom", "left"], 8192 x: ["y"], 8193 X: ["Y"], 8194 Y: ["X"], 8195 ArrowLeft: [ARROW_UP, ARROW_RIGHT], 8196 ArrowRight: [ARROW_DOWN, ARROW_LEFT] 8197}; 8198 8199function Direction(Splide2, Components2, options) { 8200 function resolve(prop, axisOnly, direction) { 8201 direction = direction || options.direction; 8202 var index = direction === RTL && !axisOnly ? 1 : direction === TTB ? 0 : -1; 8203 return ORIENTATION_MAP[prop] && ORIENTATION_MAP[prop][index] || prop.replace(/width|left|right/i, function (match, offset) { 8204 var replacement = ORIENTATION_MAP[match.toLowerCase()][index] || match; 8205 return offset > 0 ? replacement.charAt(0).toUpperCase() + replacement.slice(1) : replacement; 8206 }); 8207 } 8208 8209 function orient(value) { 8210 return value * (options.direction === RTL ? 1 : -1); 8211 } 8212 8213 return { 8214 resolve: resolve, 8215 orient: orient 8216 }; 8217} 8218 8219var ROLE = "role"; 8220var TAB_INDEX = "tabindex"; 8221var DISABLED = "disabled"; 8222var ARIA_PREFIX = "aria-"; 8223var ARIA_CONTROLS = ARIA_PREFIX + "controls"; 8224var ARIA_CURRENT = ARIA_PREFIX + "current"; 8225var ARIA_SELECTED = ARIA_PREFIX + "selected"; 8226var ARIA_LABEL = ARIA_PREFIX + "label"; 8227var ARIA_LABELLEDBY = ARIA_PREFIX + "labelledby"; 8228var ARIA_HIDDEN = ARIA_PREFIX + "hidden"; 8229var ARIA_ORIENTATION = ARIA_PREFIX + "orientation"; 8230var ARIA_ROLEDESCRIPTION = ARIA_PREFIX + "roledescription"; 8231var ARIA_LIVE = ARIA_PREFIX + "live"; 8232var ARIA_BUSY = ARIA_PREFIX + "busy"; 8233var ARIA_ATOMIC = ARIA_PREFIX + "atomic"; 8234var ALL_ATTRIBUTES = [ROLE, TAB_INDEX, DISABLED, ARIA_CONTROLS, ARIA_CURRENT, ARIA_LABEL, ARIA_LABELLEDBY, ARIA_HIDDEN, ARIA_ORIENTATION, ARIA_ROLEDESCRIPTION]; 8235var CLASS_PREFIX = PROJECT_CODE + "__"; 8236var STATUS_CLASS_PREFIX = "is-"; 8237var CLASS_ROOT = PROJECT_CODE; 8238var CLASS_TRACK = CLASS_PREFIX + "track"; 8239var CLASS_LIST = CLASS_PREFIX + "list"; 8240var CLASS_SLIDE = CLASS_PREFIX + "slide"; 8241var CLASS_CLONE = CLASS_SLIDE + "--clone"; 8242var CLASS_CONTAINER = CLASS_SLIDE + "__container"; 8243var CLASS_ARROWS = CLASS_PREFIX + "arrows"; 8244var CLASS_ARROW = CLASS_PREFIX + "arrow"; 8245var CLASS_ARROW_PREV = CLASS_ARROW + "--prev"; 8246var CLASS_ARROW_NEXT = CLASS_ARROW + "--next"; 8247var CLASS_PAGINATION = CLASS_PREFIX + "pagination"; 8248var CLASS_PAGINATION_PAGE = CLASS_PAGINATION + "__page"; 8249var CLASS_PROGRESS = CLASS_PREFIX + "progress"; 8250var CLASS_PROGRESS_BAR = CLASS_PROGRESS + "__bar"; 8251var CLASS_TOGGLE = CLASS_PREFIX + "toggle"; 8252var CLASS_TOGGLE_PLAY = CLASS_TOGGLE + "__play"; 8253var CLASS_TOGGLE_PAUSE = CLASS_TOGGLE + "__pause"; 8254var CLASS_SPINNER = CLASS_PREFIX + "spinner"; 8255var CLASS_SR = CLASS_PREFIX + "sr"; 8256var CLASS_INITIALIZED = STATUS_CLASS_PREFIX + "initialized"; 8257var CLASS_ACTIVE = STATUS_CLASS_PREFIX + "active"; 8258var CLASS_PREV = STATUS_CLASS_PREFIX + "prev"; 8259var CLASS_NEXT = STATUS_CLASS_PREFIX + "next"; 8260var CLASS_VISIBLE = STATUS_CLASS_PREFIX + "visible"; 8261var CLASS_LOADING = STATUS_CLASS_PREFIX + "loading"; 8262var CLASS_FOCUS_IN = STATUS_CLASS_PREFIX + "focus-in"; 8263var CLASS_OVERFLOW = STATUS_CLASS_PREFIX + "overflow"; 8264var STATUS_CLASSES = [CLASS_ACTIVE, CLASS_VISIBLE, CLASS_PREV, CLASS_NEXT, CLASS_LOADING, CLASS_FOCUS_IN, CLASS_OVERFLOW]; 8265var CLASSES = { 8266 slide: CLASS_SLIDE, 8267 clone: CLASS_CLONE, 8268 arrows: CLASS_ARROWS, 8269 arrow: CLASS_ARROW, 8270 prev: CLASS_ARROW_PREV, 8271 next: CLASS_ARROW_NEXT, 8272 pagination: CLASS_PAGINATION, 8273 page: CLASS_PAGINATION_PAGE, 8274 spinner: CLASS_SPINNER 8275}; 8276 8277function closest(from, selector) { 8278 if (isFunction(from.closest)) { 8279 return from.closest(selector); 8280 } 8281 8282 var elm = from; 8283 8284 while (elm && elm.nodeType === 1) { 8285 if (matches(elm, selector)) { 8286 break; 8287 } 8288 8289 elm = elm.parentElement; 8290 } 8291 8292 return elm; 8293} 8294 8295var FRICTION = 5; 8296var LOG_INTERVAL = 200; 8297var POINTER_DOWN_EVENTS = "touchstart mousedown"; 8298var POINTER_MOVE_EVENTS = "touchmove mousemove"; 8299var POINTER_UP_EVENTS = "touchend touchcancel mouseup click"; 8300 8301function Elements(Splide2, Components2, options) { 8302 var _EventInterface = EventInterface(Splide2), 8303 on = _EventInterface.on, 8304 bind = _EventInterface.bind; 8305 8306 var root = Splide2.root; 8307 var i18n = options.i18n; 8308 var elements = {}; 8309 var slides = []; 8310 var rootClasses = []; 8311 var trackClasses = []; 8312 var track; 8313 var list; 8314 var isUsingKey; 8315 8316 function setup() { 8317 collect(); 8318 init(); 8319 update(); 8320 } 8321 8322 function mount() { 8323 on(EVENT_REFRESH, destroy); 8324 on(EVENT_REFRESH, setup); 8325 on(EVENT_UPDATED, update); 8326 bind(document, POINTER_DOWN_EVENTS + " keydown", function (e) { 8327 isUsingKey = e.type === "keydown"; 8328 }, { 8329 capture: true 8330 }); 8331 bind(root, "focusin", function () { 8332 toggleClass(root, CLASS_FOCUS_IN, !!isUsingKey); 8333 }); 8334 } 8335 8336 function destroy(completely) { 8337 var attrs = ALL_ATTRIBUTES.concat("style"); 8338 empty(slides); 8339 removeClass(root, rootClasses); 8340 removeClass(track, trackClasses); 8341 removeAttribute([track, list], attrs); 8342 removeAttribute(root, completely ? attrs : ["style", ARIA_ROLEDESCRIPTION]); 8343 } 8344 8345 function update() { 8346 removeClass(root, rootClasses); 8347 removeClass(track, trackClasses); 8348 rootClasses = getClasses(CLASS_ROOT); 8349 trackClasses = getClasses(CLASS_TRACK); 8350 addClass(root, rootClasses); 8351 addClass(track, trackClasses); 8352 setAttribute(root, ARIA_LABEL, options.label); 8353 setAttribute(root, ARIA_LABELLEDBY, options.labelledby); 8354 } 8355 8356 function collect() { 8357 track = find("." + CLASS_TRACK); 8358 list = child(track, "." + CLASS_LIST); 8359 assert(track && list, "A track/list element is missing."); 8360 push(slides, children(list, "." + CLASS_SLIDE + ":not(." + CLASS_CLONE + ")")); 8361 forOwn({ 8362 arrows: CLASS_ARROWS, 8363 pagination: CLASS_PAGINATION, 8364 prev: CLASS_ARROW_PREV, 8365 next: CLASS_ARROW_NEXT, 8366 bar: CLASS_PROGRESS_BAR, 8367 toggle: CLASS_TOGGLE 8368 }, function (className, key) { 8369 elements[key] = find("." + className); 8370 }); 8371 splide_esm_assign(elements, { 8372 root: root, 8373 track: track, 8374 list: list, 8375 slides: slides 8376 }); 8377 } 8378 8379 function init() { 8380 var id = root.id || uniqueId(PROJECT_CODE); 8381 var role = options.role; 8382 root.id = id; 8383 track.id = track.id || id + "-track"; 8384 list.id = list.id || id + "-list"; 8385 8386 if (!getAttribute(root, ROLE) && root.tagName !== "SECTION" && role) { 8387 setAttribute(root, ROLE, role); 8388 } 8389 8390 setAttribute(root, ARIA_ROLEDESCRIPTION, i18n.carousel); 8391 setAttribute(list, ROLE, "presentation"); 8392 } 8393 8394 function find(selector) { 8395 var elm = query(root, selector); 8396 return elm && closest(elm, "." + CLASS_ROOT) === root ? elm : void 0; 8397 } 8398 8399 function getClasses(base) { 8400 return [base + "--" + options.type, base + "--" + options.direction, options.drag && base + "--draggable", options.isNavigation && base + "--nav", base === CLASS_ROOT && CLASS_ACTIVE]; 8401 } 8402 8403 return splide_esm_assign(elements, { 8404 setup: setup, 8405 mount: mount, 8406 destroy: destroy 8407 }); 8408} 8409 8410var SLIDE = "slide"; 8411var LOOP = "loop"; 8412var FADE = "fade"; 8413 8414function Slide$1(Splide2, index, slideIndex, slide) { 8415 var event = EventInterface(Splide2); 8416 var on = event.on, 8417 emit = event.emit, 8418 bind = event.bind; 8419 var Components = Splide2.Components, 8420 root = Splide2.root, 8421 options = Splide2.options; 8422 var isNavigation = options.isNavigation, 8423 updateOnMove = options.updateOnMove, 8424 i18n = options.i18n, 8425 pagination = options.pagination, 8426 slideFocus = options.slideFocus; 8427 var resolve = Components.Direction.resolve; 8428 var styles = getAttribute(slide, "style"); 8429 var label = getAttribute(slide, ARIA_LABEL); 8430 var isClone = slideIndex > -1; 8431 var container = child(slide, "." + CLASS_CONTAINER); 8432 var destroyed; 8433 8434 function mount() { 8435 if (!isClone) { 8436 slide.id = root.id + "-slide" + pad(index + 1); 8437 setAttribute(slide, ROLE, pagination ? "tabpanel" : "group"); 8438 setAttribute(slide, ARIA_ROLEDESCRIPTION, i18n.slide); 8439 setAttribute(slide, ARIA_LABEL, label || format(i18n.slideLabel, [index + 1, Splide2.length])); 8440 } 8441 8442 listen(); 8443 } 8444 8445 function listen() { 8446 bind(slide, "click", apply(emit, EVENT_CLICK, self)); 8447 bind(slide, "keydown", apply(emit, EVENT_SLIDE_KEYDOWN, self)); 8448 on([EVENT_MOVED, EVENT_SHIFTED, EVENT_SCROLLED], update); 8449 on(EVENT_NAVIGATION_MOUNTED, initNavigation); 8450 8451 if (updateOnMove) { 8452 on(EVENT_MOVE, onMove); 8453 } 8454 } 8455 8456 function destroy() { 8457 destroyed = true; 8458 event.destroy(); 8459 removeClass(slide, STATUS_CLASSES); 8460 removeAttribute(slide, ALL_ATTRIBUTES); 8461 setAttribute(slide, "style", styles); 8462 setAttribute(slide, ARIA_LABEL, label || ""); 8463 } 8464 8465 function initNavigation() { 8466 var controls = Splide2.splides.map(function (target) { 8467 var Slide2 = target.splide.Components.Slides.getAt(index); 8468 return Slide2 ? Slide2.slide.id : ""; 8469 }).join(" "); 8470 setAttribute(slide, ARIA_LABEL, format(i18n.slideX, (isClone ? slideIndex : index) + 1)); 8471 setAttribute(slide, ARIA_CONTROLS, controls); 8472 setAttribute(slide, ROLE, slideFocus ? "button" : ""); 8473 slideFocus && removeAttribute(slide, ARIA_ROLEDESCRIPTION); 8474 } 8475 8476 function onMove() { 8477 if (!destroyed) { 8478 update(); 8479 } 8480 } 8481 8482 function update() { 8483 if (!destroyed) { 8484 var curr = Splide2.index; 8485 updateActivity(); 8486 updateVisibility(); 8487 toggleClass(slide, CLASS_PREV, index === curr - 1); 8488 toggleClass(slide, CLASS_NEXT, index === curr + 1); 8489 } 8490 } 8491 8492 function updateActivity() { 8493 var active = isActive(); 8494 8495 if (active !== hasClass(slide, CLASS_ACTIVE)) { 8496 toggleClass(slide, CLASS_ACTIVE, active); 8497 setAttribute(slide, ARIA_CURRENT, isNavigation && active || ""); 8498 emit(active ? EVENT_ACTIVE : EVENT_INACTIVE, self); 8499 } 8500 } 8501 8502 function updateVisibility() { 8503 var visible = isVisible(); 8504 var hidden = !visible && (!isActive() || isClone); 8505 8506 if (!Splide2.state.is([MOVING, SCROLLING])) { 8507 setAttribute(slide, ARIA_HIDDEN, hidden || ""); 8508 } 8509 8510 setAttribute(queryAll(slide, options.focusableNodes || ""), TAB_INDEX, hidden ? -1 : ""); 8511 8512 if (slideFocus) { 8513 setAttribute(slide, TAB_INDEX, hidden ? -1 : 0); 8514 } 8515 8516 if (visible !== hasClass(slide, CLASS_VISIBLE)) { 8517 toggleClass(slide, CLASS_VISIBLE, visible); 8518 emit(visible ? EVENT_VISIBLE : EVENT_HIDDEN, self); 8519 } 8520 8521 if (!visible && document.activeElement === slide) { 8522 var Slide2 = Components.Slides.getAt(Splide2.index); 8523 Slide2 && splide_esm_focus(Slide2.slide); 8524 } 8525 } 8526 8527 function style$1(prop, value, useContainer) { 8528 style(useContainer && container || slide, prop, value); 8529 } 8530 8531 function isActive() { 8532 var curr = Splide2.index; 8533 return curr === index || options.cloneStatus && curr === slideIndex; 8534 } 8535 8536 function isVisible() { 8537 if (Splide2.is(FADE)) { 8538 return isActive(); 8539 } 8540 8541 var trackRect = rect(Components.Elements.track); 8542 var slideRect = rect(slide); 8543 var left = resolve("left", true); 8544 var right = resolve("right", true); 8545 return floor(trackRect[left]) <= ceil(slideRect[left]) && floor(slideRect[right]) <= ceil(trackRect[right]); 8546 } 8547 8548 function isWithin(from, distance) { 8549 var diff = abs(from - index); 8550 8551 if (!isClone && (options.rewind || Splide2.is(LOOP))) { 8552 diff = min(diff, Splide2.length - diff); 8553 } 8554 8555 return diff <= distance; 8556 } 8557 8558 var self = { 8559 index: index, 8560 slideIndex: slideIndex, 8561 slide: slide, 8562 container: container, 8563 isClone: isClone, 8564 mount: mount, 8565 destroy: destroy, 8566 update: update, 8567 style: style$1, 8568 isWithin: isWithin 8569 }; 8570 return self; 8571} 8572 8573function Slides(Splide2, Components2, options) { 8574 var _EventInterface2 = EventInterface(Splide2), 8575 on = _EventInterface2.on, 8576 emit = _EventInterface2.emit, 8577 bind = _EventInterface2.bind; 8578 8579 var _Components2$Elements = Components2.Elements, 8580 slides = _Components2$Elements.slides, 8581 list = _Components2$Elements.list; 8582 var Slides2 = []; 8583 8584 function mount() { 8585 init(); 8586 on(EVENT_REFRESH, destroy); 8587 on(EVENT_REFRESH, init); 8588 } 8589 8590 function init() { 8591 slides.forEach(function (slide, index) { 8592 register(slide, index, -1); 8593 }); 8594 } 8595 8596 function destroy() { 8597 forEach$1(function (Slide2) { 8598 Slide2.destroy(); 8599 }); 8600 empty(Slides2); 8601 } 8602 8603 function update() { 8604 forEach$1(function (Slide2) { 8605 Slide2.update(); 8606 }); 8607 } 8608 8609 function register(slide, index, slideIndex) { 8610 var object = Slide$1(Splide2, index, slideIndex, slide); 8611 object.mount(); 8612 Slides2.push(object); 8613 Slides2.sort(function (Slide1, Slide2) { 8614 return Slide1.index - Slide2.index; 8615 }); 8616 } 8617 8618 function get(excludeClones) { 8619 return excludeClones ? filter(function (Slide2) { 8620 return !Slide2.isClone; 8621 }) : Slides2; 8622 } 8623 8624 function getIn(page) { 8625 var Controller = Components2.Controller; 8626 var index = Controller.toIndex(page); 8627 var max = Controller.hasFocus() ? 1 : options.perPage; 8628 return filter(function (Slide2) { 8629 return between(Slide2.index, index, index + max - 1); 8630 }); 8631 } 8632 8633 function getAt(index) { 8634 return filter(index)[0]; 8635 } 8636 8637 function add(items, index) { 8638 forEach(items, function (slide) { 8639 if (isString(slide)) { 8640 slide = parseHtml(slide); 8641 } 8642 8643 if (isHTMLElement(slide)) { 8644 var ref = slides[index]; 8645 ref ? before(slide, ref) : append(list, slide); 8646 addClass(slide, options.classes.slide); 8647 observeImages(slide, apply(emit, EVENT_RESIZE)); 8648 } 8649 }); 8650 emit(EVENT_REFRESH); 8651 } 8652 8653 function remove$1(matcher) { 8654 remove(filter(matcher).map(function (Slide2) { 8655 return Slide2.slide; 8656 })); 8657 emit(EVENT_REFRESH); 8658 } 8659 8660 function forEach$1(iteratee, excludeClones) { 8661 get(excludeClones).forEach(iteratee); 8662 } 8663 8664 function filter(matcher) { 8665 return Slides2.filter(isFunction(matcher) ? matcher : function (Slide2) { 8666 return isString(matcher) ? matches(Slide2.slide, matcher) : includes(toArray(matcher), Slide2.index); 8667 }); 8668 } 8669 8670 function style(prop, value, useContainer) { 8671 forEach$1(function (Slide2) { 8672 Slide2.style(prop, value, useContainer); 8673 }); 8674 } 8675 8676 function observeImages(elm, callback) { 8677 var images = queryAll(elm, "img"); 8678 var length = images.length; 8679 8680 if (length) { 8681 images.forEach(function (img) { 8682 bind(img, "load error", function () { 8683 if (! --length) { 8684 callback(); 8685 } 8686 }); 8687 }); 8688 } else { 8689 callback(); 8690 } 8691 } 8692 8693 function getLength(excludeClones) { 8694 return excludeClones ? slides.length : Slides2.length; 8695 } 8696 8697 function isEnough() { 8698 return Slides2.length > options.perPage; 8699 } 8700 8701 return { 8702 mount: mount, 8703 destroy: destroy, 8704 update: update, 8705 register: register, 8706 get: get, 8707 getIn: getIn, 8708 getAt: getAt, 8709 add: add, 8710 remove: remove$1, 8711 forEach: forEach$1, 8712 filter: filter, 8713 style: style, 8714 getLength: getLength, 8715 isEnough: isEnough 8716 }; 8717} 8718 8719function Layout(Splide2, Components2, options) { 8720 var _EventInterface3 = EventInterface(Splide2), 8721 on = _EventInterface3.on, 8722 bind = _EventInterface3.bind, 8723 emit = _EventInterface3.emit; 8724 8725 var Slides = Components2.Slides; 8726 var resolve = Components2.Direction.resolve; 8727 var _Components2$Elements2 = Components2.Elements, 8728 root = _Components2$Elements2.root, 8729 track = _Components2$Elements2.track, 8730 list = _Components2$Elements2.list; 8731 var getAt = Slides.getAt, 8732 styleSlides = Slides.style; 8733 var vertical; 8734 var rootRect; 8735 var overflow; 8736 8737 function mount() { 8738 init(); 8739 bind(window, "resize load", Throttle(apply(emit, EVENT_RESIZE))); 8740 on([EVENT_UPDATED, EVENT_REFRESH], init); 8741 on(EVENT_RESIZE, resize); 8742 } 8743 8744 function init() { 8745 vertical = options.direction === TTB; 8746 style(root, "maxWidth", unit(options.width)); 8747 style(track, resolve("paddingLeft"), cssPadding(false)); 8748 style(track, resolve("paddingRight"), cssPadding(true)); 8749 resize(true); 8750 } 8751 8752 function resize(force) { 8753 var newRect = rect(root); 8754 8755 if (force || rootRect.width !== newRect.width || rootRect.height !== newRect.height) { 8756 style(track, "height", cssTrackHeight()); 8757 styleSlides(resolve("marginRight"), unit(options.gap)); 8758 styleSlides("width", cssSlideWidth()); 8759 styleSlides("height", cssSlideHeight(), true); 8760 rootRect = newRect; 8761 emit(EVENT_RESIZED); 8762 8763 if (overflow !== (overflow = isOverflow())) { 8764 toggleClass(root, CLASS_OVERFLOW, overflow); 8765 emit(EVENT_OVERFLOW, overflow); 8766 } 8767 } 8768 } 8769 8770 function cssPadding(right) { 8771 var padding = options.padding; 8772 var prop = resolve(right ? "right" : "left"); 8773 return padding && unit(padding[prop] || (isObject(padding) ? 0 : padding)) || "0px"; 8774 } 8775 8776 function cssTrackHeight() { 8777 var height = ""; 8778 8779 if (vertical) { 8780 height = cssHeight(); 8781 assert(height, "height or heightRatio is missing."); 8782 height = "calc(" + height + " - " + cssPadding(false) + " - " + cssPadding(true) + ")"; 8783 } 8784 8785 return height; 8786 } 8787 8788 function cssHeight() { 8789 return unit(options.height || rect(list).width * options.heightRatio); 8790 } 8791 8792 function cssSlideWidth() { 8793 return options.autoWidth ? null : unit(options.fixedWidth) || (vertical ? "" : cssSlideSize()); 8794 } 8795 8796 function cssSlideHeight() { 8797 return unit(options.fixedHeight) || (vertical ? options.autoHeight ? null : cssSlideSize() : cssHeight()); 8798 } 8799 8800 function cssSlideSize() { 8801 var gap = unit(options.gap); 8802 return "calc((100%" + (gap && " + " + gap) + ")/" + (options.perPage || 1) + (gap && " - " + gap) + ")"; 8803 } 8804 8805 function listSize() { 8806 return rect(list)[resolve("width")]; 8807 } 8808 8809 function slideSize(index, withoutGap) { 8810 var Slide = getAt(index || 0); 8811 return Slide ? rect(Slide.slide)[resolve("width")] + (withoutGap ? 0 : getGap()) : 0; 8812 } 8813 8814 function totalSize(index, withoutGap) { 8815 var Slide = getAt(index); 8816 8817 if (Slide) { 8818 var right = rect(Slide.slide)[resolve("right")]; 8819 var left = rect(list)[resolve("left")]; 8820 return abs(right - left) + (withoutGap ? 0 : getGap()); 8821 } 8822 8823 return 0; 8824 } 8825 8826 function sliderSize(withoutGap) { 8827 return totalSize(Splide2.length - 1) - totalSize(0) + slideSize(0, withoutGap); 8828 } 8829 8830 function getGap() { 8831 var Slide = getAt(0); 8832 return Slide && parseFloat(style(Slide.slide, resolve("marginRight"))) || 0; 8833 } 8834 8835 function getPadding(right) { 8836 return parseFloat(style(track, resolve("padding" + (right ? "Right" : "Left")))) || 0; 8837 } 8838 8839 function isOverflow() { 8840 return Splide2.is(FADE) || sliderSize(true) > listSize(); 8841 } 8842 8843 return { 8844 mount: mount, 8845 resize: resize, 8846 listSize: listSize, 8847 slideSize: slideSize, 8848 sliderSize: sliderSize, 8849 totalSize: totalSize, 8850 getPadding: getPadding, 8851 isOverflow: isOverflow 8852 }; 8853} 8854 8855var MULTIPLIER = 2; 8856 8857function Clones(Splide2, Components2, options) { 8858 var event = EventInterface(Splide2); 8859 var on = event.on; 8860 var Elements = Components2.Elements, 8861 Slides = Components2.Slides; 8862 var resolve = Components2.Direction.resolve; 8863 var clones = []; 8864 var cloneCount; 8865 8866 function mount() { 8867 on(EVENT_REFRESH, remount); 8868 on([EVENT_UPDATED, EVENT_RESIZE], observe); 8869 8870 if (cloneCount = computeCloneCount()) { 8871 generate(cloneCount); 8872 Components2.Layout.resize(true); 8873 } 8874 } 8875 8876 function remount() { 8877 destroy(); 8878 mount(); 8879 } 8880 8881 function destroy() { 8882 remove(clones); 8883 empty(clones); 8884 event.destroy(); 8885 } 8886 8887 function observe() { 8888 var count = computeCloneCount(); 8889 8890 if (cloneCount !== count) { 8891 if (cloneCount < count || !count) { 8892 event.emit(EVENT_REFRESH); 8893 } 8894 } 8895 } 8896 8897 function generate(count) { 8898 var slides = Slides.get().slice(); 8899 var length = slides.length; 8900 8901 if (length) { 8902 while (slides.length < count) { 8903 push(slides, slides); 8904 } 8905 8906 push(slides.slice(-count), slides.slice(0, count)).forEach(function (Slide, index) { 8907 var isHead = index < count; 8908 var clone = cloneDeep(Slide.slide, index); 8909 isHead ? before(clone, slides[0].slide) : append(Elements.list, clone); 8910 push(clones, clone); 8911 Slides.register(clone, index - count + (isHead ? 0 : length), Slide.index); 8912 }); 8913 } 8914 } 8915 8916 function cloneDeep(elm, index) { 8917 var clone = elm.cloneNode(true); 8918 addClass(clone, options.classes.clone); 8919 clone.id = Splide2.root.id + "-clone" + pad(index + 1); 8920 return clone; 8921 } 8922 8923 function computeCloneCount() { 8924 var clones2 = options.clones; 8925 8926 if (!Splide2.is(LOOP)) { 8927 clones2 = 0; 8928 } else if (isUndefined(clones2)) { 8929 var fixedSize = options[resolve("fixedWidth")] && Components2.Layout.slideSize(0); 8930 var fixedCount = fixedSize && ceil(rect(Elements.track)[resolve("width")] / fixedSize); 8931 clones2 = fixedCount || options[resolve("autoWidth")] && Splide2.length || options.perPage * MULTIPLIER; 8932 } 8933 8934 return clones2; 8935 } 8936 8937 return { 8938 mount: mount, 8939 destroy: destroy 8940 }; 8941} 8942 8943function Move(Splide2, Components2, options) { 8944 var _EventInterface4 = EventInterface(Splide2), 8945 on = _EventInterface4.on, 8946 emit = _EventInterface4.emit; 8947 8948 var set = Splide2.state.set; 8949 var _Components2$Layout = Components2.Layout, 8950 slideSize = _Components2$Layout.slideSize, 8951 getPadding = _Components2$Layout.getPadding, 8952 totalSize = _Components2$Layout.totalSize, 8953 listSize = _Components2$Layout.listSize, 8954 sliderSize = _Components2$Layout.sliderSize; 8955 var _Components2$Directio = Components2.Direction, 8956 resolve = _Components2$Directio.resolve, 8957 orient = _Components2$Directio.orient; 8958 var _Components2$Elements3 = Components2.Elements, 8959 list = _Components2$Elements3.list, 8960 track = _Components2$Elements3.track; 8961 var Transition; 8962 8963 function mount() { 8964 Transition = Components2.Transition; 8965 on([EVENT_MOUNTED, EVENT_RESIZED, EVENT_UPDATED, EVENT_REFRESH], reposition); 8966 } 8967 8968 function reposition() { 8969 if (!Components2.Controller.isBusy()) { 8970 Components2.Scroll.cancel(); 8971 jump(Splide2.index); 8972 Components2.Slides.update(); 8973 } 8974 } 8975 8976 function move(dest, index, prev, callback) { 8977 if (dest !== index && canShift(dest > prev)) { 8978 cancel(); 8979 translate(shift(getPosition(), dest > prev), true); 8980 } 8981 8982 set(MOVING); 8983 emit(EVENT_MOVE, index, prev, dest); 8984 Transition.start(index, function () { 8985 set(IDLE); 8986 emit(EVENT_MOVED, index, prev, dest); 8987 callback && callback(); 8988 }); 8989 } 8990 8991 function jump(index) { 8992 translate(toPosition(index, true)); 8993 } 8994 8995 function translate(position, preventLoop) { 8996 if (!Splide2.is(FADE)) { 8997 var destination = preventLoop ? position : loop(position); 8998 style(list, "transform", "translate" + resolve("X") + "(" + destination + "px)"); 8999 position !== destination && emit(EVENT_SHIFTED); 9000 } 9001 } 9002 9003 function loop(position) { 9004 if (Splide2.is(LOOP)) { 9005 var index = toIndex(position); 9006 var exceededMax = index > Components2.Controller.getEnd(); 9007 var exceededMin = index < 0; 9008 9009 if (exceededMin || exceededMax) { 9010 position = shift(position, exceededMax); 9011 } 9012 } 9013 9014 return position; 9015 } 9016 9017 function shift(position, backwards) { 9018 var excess = position - getLimit(backwards); 9019 var size = sliderSize(); 9020 position -= orient(size * (ceil(abs(excess) / size) || 1)) * (backwards ? 1 : -1); 9021 return position; 9022 } 9023 9024 function cancel() { 9025 translate(getPosition(), true); 9026 Transition.cancel(); 9027 } 9028 9029 function toIndex(position) { 9030 var Slides = Components2.Slides.get(); 9031 var index = 0; 9032 var minDistance = Infinity; 9033 9034 for (var i = 0; i < Slides.length; i++) { 9035 var slideIndex = Slides[i].index; 9036 var distance = abs(toPosition(slideIndex, true) - position); 9037 9038 if (distance <= minDistance) { 9039 minDistance = distance; 9040 index = slideIndex; 9041 } else { 9042 break; 9043 } 9044 } 9045 9046 return index; 9047 } 9048 9049 function toPosition(index, trimming) { 9050 var position = orient(totalSize(index - 1) - offset(index)); 9051 return trimming ? trim(position) : position; 9052 } 9053 9054 function getPosition() { 9055 var left = resolve("left"); 9056 return rect(list)[left] - rect(track)[left] + orient(getPadding(false)); 9057 } 9058 9059 function trim(position) { 9060 if (options.trimSpace && Splide2.is(SLIDE)) { 9061 position = clamp(position, 0, orient(sliderSize(true) - listSize())); 9062 } 9063 9064 return position; 9065 } 9066 9067 function offset(index) { 9068 var focus = options.focus; 9069 return focus === "center" ? (listSize() - slideSize(index, true)) / 2 : +focus * slideSize(index) || 0; 9070 } 9071 9072 function getLimit(max) { 9073 return toPosition(max ? Components2.Controller.getEnd() : 0, !!options.trimSpace); 9074 } 9075 9076 function canShift(backwards) { 9077 var shifted = orient(shift(getPosition(), backwards)); 9078 return backwards ? shifted >= 0 : shifted <= list[resolve("scrollWidth")] - rect(track)[resolve("width")]; 9079 } 9080 9081 function exceededLimit(max, position) { 9082 position = isUndefined(position) ? getPosition() : position; 9083 var exceededMin = max !== true && orient(position) < orient(getLimit(false)); 9084 var exceededMax = max !== false && orient(position) > orient(getLimit(true)); 9085 return exceededMin || exceededMax; 9086 } 9087 9088 return { 9089 mount: mount, 9090 move: move, 9091 jump: jump, 9092 translate: translate, 9093 shift: shift, 9094 cancel: cancel, 9095 toIndex: toIndex, 9096 toPosition: toPosition, 9097 getPosition: getPosition, 9098 getLimit: getLimit, 9099 exceededLimit: exceededLimit, 9100 reposition: reposition 9101 }; 9102} 9103 9104function Controller(Splide2, Components2, options) { 9105 var _EventInterface5 = EventInterface(Splide2), 9106 on = _EventInterface5.on, 9107 emit = _EventInterface5.emit; 9108 9109 var Move = Components2.Move; 9110 var getPosition = Move.getPosition, 9111 getLimit = Move.getLimit, 9112 toPosition = Move.toPosition; 9113 var _Components2$Slides = Components2.Slides, 9114 isEnough = _Components2$Slides.isEnough, 9115 getLength = _Components2$Slides.getLength; 9116 var omitEnd = options.omitEnd; 9117 var isLoop = Splide2.is(LOOP); 9118 var isSlide = Splide2.is(SLIDE); 9119 var getNext = apply(getAdjacent, false); 9120 var getPrev = apply(getAdjacent, true); 9121 var currIndex = options.start || 0; 9122 var endIndex; 9123 var prevIndex = currIndex; 9124 var slideCount; 9125 var perMove; 9126 var perPage; 9127 9128 function mount() { 9129 init(); 9130 on([EVENT_UPDATED, EVENT_REFRESH, EVENT_END_INDEX_CHANGED], init); 9131 on(EVENT_RESIZED, onResized); 9132 } 9133 9134 function init() { 9135 slideCount = getLength(true); 9136 perMove = options.perMove; 9137 perPage = options.perPage; 9138 endIndex = getEnd(); 9139 var index = clamp(currIndex, 0, omitEnd ? endIndex : slideCount - 1); 9140 9141 if (index !== currIndex) { 9142 currIndex = index; 9143 Move.reposition(); 9144 } 9145 } 9146 9147 function onResized() { 9148 if (endIndex !== getEnd()) { 9149 emit(EVENT_END_INDEX_CHANGED); 9150 } 9151 } 9152 9153 function go(control, allowSameIndex, callback) { 9154 if (!isBusy()) { 9155 var dest = parse(control); 9156 var index = loop(dest); 9157 9158 if (index > -1 && (allowSameIndex || index !== currIndex)) { 9159 setIndex(index); 9160 Move.move(dest, index, prevIndex, callback); 9161 } 9162 } 9163 } 9164 9165 function scroll(destination, duration, snap, callback) { 9166 Components2.Scroll.scroll(destination, duration, snap, function () { 9167 var index = loop(Move.toIndex(getPosition())); 9168 setIndex(omitEnd ? min(index, endIndex) : index); 9169 callback && callback(); 9170 }); 9171 } 9172 9173 function parse(control) { 9174 var index = currIndex; 9175 9176 if (isString(control)) { 9177 var _ref = control.match(/([+\-<>])(\d+)?/) || [], 9178 indicator = _ref[1], 9179 number = _ref[2]; 9180 9181 if (indicator === "+" || indicator === "-") { 9182 index = computeDestIndex(currIndex + +("" + indicator + (+number || 1)), currIndex); 9183 } else if (indicator === ">") { 9184 index = number ? toIndex(+number) : getNext(true); 9185 } else if (indicator === "<") { 9186 index = getPrev(true); 9187 } 9188 } else { 9189 index = isLoop ? control : clamp(control, 0, endIndex); 9190 } 9191 9192 return index; 9193 } 9194 9195 function getAdjacent(prev, destination) { 9196 var number = perMove || (hasFocus() ? 1 : perPage); 9197 var dest = computeDestIndex(currIndex + number * (prev ? -1 : 1), currIndex, !(perMove || hasFocus())); 9198 9199 if (dest === -1 && isSlide) { 9200 if (!approximatelyEqual(getPosition(), getLimit(!prev), 1)) { 9201 return prev ? 0 : endIndex; 9202 } 9203 } 9204 9205 return destination ? dest : loop(dest); 9206 } 9207 9208 function computeDestIndex(dest, from, snapPage) { 9209 if (isEnough() || hasFocus()) { 9210 var index = computeMovableDestIndex(dest); 9211 9212 if (index !== dest) { 9213 from = dest; 9214 dest = index; 9215 snapPage = false; 9216 } 9217 9218 if (dest < 0 || dest > endIndex) { 9219 if (!perMove && (between(0, dest, from, true) || between(endIndex, from, dest, true))) { 9220 dest = toIndex(toPage(dest)); 9221 } else { 9222 if (isLoop) { 9223 dest = snapPage ? dest < 0 ? -(slideCount % perPage || perPage) : slideCount : dest; 9224 } else if (options.rewind) { 9225 dest = dest < 0 ? endIndex : 0; 9226 } else { 9227 dest = -1; 9228 } 9229 } 9230 } else { 9231 if (snapPage && dest !== from) { 9232 dest = toIndex(toPage(from) + (dest < from ? -1 : 1)); 9233 } 9234 } 9235 } else { 9236 dest = -1; 9237 } 9238 9239 return dest; 9240 } 9241 9242 function computeMovableDestIndex(dest) { 9243 if (isSlide && options.trimSpace === "move" && dest !== currIndex) { 9244 var position = getPosition(); 9245 9246 while (position === toPosition(dest, true) && between(dest, 0, Splide2.length - 1, !options.rewind)) { 9247 dest < currIndex ? --dest : ++dest; 9248 } 9249 } 9250 9251 return dest; 9252 } 9253 9254 function loop(index) { 9255 return isLoop ? (index + slideCount) % slideCount || 0 : index; 9256 } 9257 9258 function getEnd() { 9259 var end = slideCount - (hasFocus() || isLoop && perMove ? 1 : perPage); 9260 9261 while (omitEnd && end-- > 0) { 9262 if (toPosition(slideCount - 1, true) !== toPosition(end, true)) { 9263 end++; 9264 break; 9265 } 9266 } 9267 9268 return clamp(end, 0, slideCount - 1); 9269 } 9270 9271 function toIndex(page) { 9272 return clamp(hasFocus() ? page : perPage * page, 0, endIndex); 9273 } 9274 9275 function toPage(index) { 9276 return hasFocus() ? min(index, endIndex) : floor((index >= endIndex ? slideCount - 1 : index) / perPage); 9277 } 9278 9279 function toDest(destination) { 9280 var closest = Move.toIndex(destination); 9281 return isSlide ? clamp(closest, 0, endIndex) : closest; 9282 } 9283 9284 function setIndex(index) { 9285 if (index !== currIndex) { 9286 prevIndex = currIndex; 9287 currIndex = index; 9288 } 9289 } 9290 9291 function getIndex(prev) { 9292 return prev ? prevIndex : currIndex; 9293 } 9294 9295 function hasFocus() { 9296 return !isUndefined(options.focus) || options.isNavigation; 9297 } 9298 9299 function isBusy() { 9300 return Splide2.state.is([MOVING, SCROLLING]) && !!options.waitForTransition; 9301 } 9302 9303 return { 9304 mount: mount, 9305 go: go, 9306 scroll: scroll, 9307 getNext: getNext, 9308 getPrev: getPrev, 9309 getAdjacent: getAdjacent, 9310 getEnd: getEnd, 9311 setIndex: setIndex, 9312 getIndex: getIndex, 9313 toIndex: toIndex, 9314 toPage: toPage, 9315 toDest: toDest, 9316 hasFocus: hasFocus, 9317 isBusy: isBusy 9318 }; 9319} 9320 9321var XML_NAME_SPACE = "http://www.w3.org/2000/svg"; 9322var PATH = "m15.5 0.932-4.3 4.38 14.5 14.6-14.5 14.5 4.3 4.4 14.6-14.6 4.4-4.3-4.4-4.4-14.6-14.6z"; 9323var SIZE = 40; 9324 9325function Arrows(Splide2, Components2, options) { 9326 var event = EventInterface(Splide2); 9327 var on = event.on, 9328 bind = event.bind, 9329 emit = event.emit; 9330 var classes = options.classes, 9331 i18n = options.i18n; 9332 var Elements = Components2.Elements, 9333 Controller = Components2.Controller; 9334 var placeholder = Elements.arrows, 9335 track = Elements.track; 9336 var wrapper = placeholder; 9337 var prev = Elements.prev; 9338 var next = Elements.next; 9339 var created; 9340 var wrapperClasses; 9341 var arrows = {}; 9342 9343 function mount() { 9344 init(); 9345 on(EVENT_UPDATED, remount); 9346 } 9347 9348 function remount() { 9349 destroy(); 9350 mount(); 9351 } 9352 9353 function init() { 9354 var enabled = options.arrows; 9355 9356 if (enabled && !(prev && next)) { 9357 createArrows(); 9358 } 9359 9360 if (prev && next) { 9361 splide_esm_assign(arrows, { 9362 prev: prev, 9363 next: next 9364 }); 9365 display(wrapper, enabled ? "" : "none"); 9366 addClass(wrapper, wrapperClasses = CLASS_ARROWS + "--" + options.direction); 9367 9368 if (enabled) { 9369 listen(); 9370 update(); 9371 setAttribute([prev, next], ARIA_CONTROLS, track.id); 9372 emit(EVENT_ARROWS_MOUNTED, prev, next); 9373 } 9374 } 9375 } 9376 9377 function destroy() { 9378 event.destroy(); 9379 removeClass(wrapper, wrapperClasses); 9380 9381 if (created) { 9382 remove(placeholder ? [prev, next] : wrapper); 9383 prev = next = null; 9384 } else { 9385 removeAttribute([prev, next], ALL_ATTRIBUTES); 9386 } 9387 } 9388 9389 function listen() { 9390 on([EVENT_MOUNTED, EVENT_MOVED, EVENT_REFRESH, EVENT_SCROLLED, EVENT_END_INDEX_CHANGED], update); 9391 bind(next, "click", apply(go, ">")); 9392 bind(prev, "click", apply(go, "<")); 9393 } 9394 9395 function go(control) { 9396 Controller.go(control, true); 9397 } 9398 9399 function createArrows() { 9400 wrapper = placeholder || create("div", classes.arrows); 9401 prev = createArrow(true); 9402 next = createArrow(false); 9403 created = true; 9404 append(wrapper, [prev, next]); 9405 !placeholder && before(wrapper, track); 9406 } 9407 9408 function createArrow(prev2) { 9409 var arrow = "<button class=\"" + classes.arrow + " " + (prev2 ? classes.prev : classes.next) + "\" type=\"button\"><svg xmlns=\"" + XML_NAME_SPACE + "\" viewBox=\"0 0 " + SIZE + " " + SIZE + "\" width=\"" + SIZE + "\" height=\"" + SIZE + "\" focusable=\"false\"><path d=\"" + (options.arrowPath || PATH) + "\" />"; 9410 return parseHtml(arrow); 9411 } 9412 9413 function update() { 9414 if (prev && next) { 9415 var index = Splide2.index; 9416 var prevIndex = Controller.getPrev(); 9417 var nextIndex = Controller.getNext(); 9418 var prevLabel = prevIndex > -1 && index < prevIndex ? i18n.last : i18n.prev; 9419 var nextLabel = nextIndex > -1 && index > nextIndex ? i18n.first : i18n.next; 9420 prev.disabled = prevIndex < 0; 9421 next.disabled = nextIndex < 0; 9422 setAttribute(prev, ARIA_LABEL, prevLabel); 9423 setAttribute(next, ARIA_LABEL, nextLabel); 9424 emit(EVENT_ARROWS_UPDATED, prev, next, prevIndex, nextIndex); 9425 } 9426 } 9427 9428 return { 9429 arrows: arrows, 9430 mount: mount, 9431 destroy: destroy, 9432 update: update 9433 }; 9434} 9435 9436var INTERVAL_DATA_ATTRIBUTE = DATA_ATTRIBUTE + "-interval"; 9437 9438function Autoplay(Splide2, Components2, options) { 9439 var _EventInterface6 = EventInterface(Splide2), 9440 on = _EventInterface6.on, 9441 bind = _EventInterface6.bind, 9442 emit = _EventInterface6.emit; 9443 9444 var interval = RequestInterval(options.interval, Splide2.go.bind(Splide2, ">"), onAnimationFrame); 9445 var isPaused = interval.isPaused; 9446 var Elements = Components2.Elements, 9447 _Components2$Elements4 = Components2.Elements, 9448 root = _Components2$Elements4.root, 9449 toggle = _Components2$Elements4.toggle; 9450 var autoplay = options.autoplay; 9451 var hovered; 9452 var focused; 9453 var stopped = autoplay === "pause"; 9454 9455 function mount() { 9456 if (autoplay) { 9457 listen(); 9458 toggle && setAttribute(toggle, ARIA_CONTROLS, Elements.track.id); 9459 stopped || play(); 9460 update(); 9461 } 9462 } 9463 9464 function listen() { 9465 if (options.pauseOnHover) { 9466 bind(root, "mouseenter mouseleave", function (e) { 9467 hovered = e.type === "mouseenter"; 9468 autoToggle(); 9469 }); 9470 } 9471 9472 if (options.pauseOnFocus) { 9473 bind(root, "focusin focusout", function (e) { 9474 focused = e.type === "focusin"; 9475 autoToggle(); 9476 }); 9477 } 9478 9479 if (toggle) { 9480 bind(toggle, "click", function () { 9481 stopped ? play() : pause(true); 9482 }); 9483 } 9484 9485 on([EVENT_MOVE, EVENT_SCROLL, EVENT_REFRESH], interval.rewind); 9486 on(EVENT_MOVE, onMove); 9487 } 9488 9489 function play() { 9490 if (isPaused() && Components2.Slides.isEnough()) { 9491 interval.start(!options.resetProgress); 9492 focused = hovered = stopped = false; 9493 update(); 9494 emit(EVENT_AUTOPLAY_PLAY); 9495 } 9496 } 9497 9498 function pause(stop) { 9499 if (stop === void 0) { 9500 stop = true; 9501 } 9502 9503 stopped = !!stop; 9504 update(); 9505 9506 if (!isPaused()) { 9507 interval.pause(); 9508 emit(EVENT_AUTOPLAY_PAUSE); 9509 } 9510 } 9511 9512 function autoToggle() { 9513 if (!stopped) { 9514 hovered || focused ? pause(false) : play(); 9515 } 9516 } 9517 9518 function update() { 9519 if (toggle) { 9520 toggleClass(toggle, CLASS_ACTIVE, !stopped); 9521 setAttribute(toggle, ARIA_LABEL, options.i18n[stopped ? "play" : "pause"]); 9522 } 9523 } 9524 9525 function onAnimationFrame(rate) { 9526 var bar = Elements.bar; 9527 bar && style(bar, "width", rate * 100 + "%"); 9528 emit(EVENT_AUTOPLAY_PLAYING, rate); 9529 } 9530 9531 function onMove(index) { 9532 var Slide = Components2.Slides.getAt(index); 9533 interval.set(Slide && +getAttribute(Slide.slide, INTERVAL_DATA_ATTRIBUTE) || options.interval); 9534 } 9535 9536 return { 9537 mount: mount, 9538 destroy: interval.cancel, 9539 play: play, 9540 pause: pause, 9541 isPaused: isPaused 9542 }; 9543} 9544 9545function Cover(Splide2, Components2, options) { 9546 var _EventInterface7 = EventInterface(Splide2), 9547 on = _EventInterface7.on; 9548 9549 function mount() { 9550 if (options.cover) { 9551 on(EVENT_LAZYLOAD_LOADED, apply(toggle, true)); 9552 on([EVENT_MOUNTED, EVENT_UPDATED, EVENT_REFRESH], apply(cover, true)); 9553 } 9554 } 9555 9556 function cover(cover2) { 9557 Components2.Slides.forEach(function (Slide) { 9558 var img = child(Slide.container || Slide.slide, "img"); 9559 9560 if (img && img.src) { 9561 toggle(cover2, img, Slide); 9562 } 9563 }); 9564 } 9565 9566 function toggle(cover2, img, Slide) { 9567 Slide.style("background", cover2 ? "center/cover no-repeat url(\"" + img.src + "\")" : "", true); 9568 display(img, cover2 ? "none" : ""); 9569 } 9570 9571 return { 9572 mount: mount, 9573 destroy: apply(cover, false) 9574 }; 9575} 9576 9577var BOUNCE_DIFF_THRESHOLD = 10; 9578var BOUNCE_DURATION = 600; 9579var FRICTION_FACTOR = 0.6; 9580var BASE_VELOCITY = 1.5; 9581var MIN_DURATION = 800; 9582 9583function Scroll(Splide2, Components2, options) { 9584 var _EventInterface8 = EventInterface(Splide2), 9585 on = _EventInterface8.on, 9586 emit = _EventInterface8.emit; 9587 9588 var set = Splide2.state.set; 9589 var Move = Components2.Move; 9590 var getPosition = Move.getPosition, 9591 getLimit = Move.getLimit, 9592 exceededLimit = Move.exceededLimit, 9593 translate = Move.translate; 9594 var isSlide = Splide2.is(SLIDE); 9595 var interval; 9596 var callback; 9597 var friction = 1; 9598 9599 function mount() { 9600 on(EVENT_MOVE, clear); 9601 on([EVENT_UPDATED, EVENT_REFRESH], cancel); 9602 } 9603 9604 function scroll(destination, duration, snap, onScrolled, noConstrain) { 9605 var from = getPosition(); 9606 clear(); 9607 9608 if (snap && (!isSlide || !exceededLimit())) { 9609 var size = Components2.Layout.sliderSize(); 9610 var offset = sign(destination) * size * floor(abs(destination) / size) || 0; 9611 destination = Move.toPosition(Components2.Controller.toDest(destination % size)) + offset; 9612 } 9613 9614 var noDistance = approximatelyEqual(from, destination, 1); 9615 friction = 1; 9616 duration = noDistance ? 0 : duration || max(abs(destination - from) / BASE_VELOCITY, MIN_DURATION); 9617 callback = onScrolled; 9618 interval = RequestInterval(duration, onEnd, apply(update, from, destination, noConstrain), 1); 9619 set(SCROLLING); 9620 emit(EVENT_SCROLL); 9621 interval.start(); 9622 } 9623 9624 function onEnd() { 9625 set(IDLE); 9626 callback && callback(); 9627 emit(EVENT_SCROLLED); 9628 } 9629 9630 function update(from, to, noConstrain, rate) { 9631 var position = getPosition(); 9632 var target = from + (to - from) * easing(rate); 9633 var diff = (target - position) * friction; 9634 translate(position + diff); 9635 9636 if (isSlide && !noConstrain && exceededLimit()) { 9637 friction *= FRICTION_FACTOR; 9638 9639 if (abs(diff) < BOUNCE_DIFF_THRESHOLD) { 9640 scroll(getLimit(exceededLimit(true)), BOUNCE_DURATION, false, callback, true); 9641 } 9642 } 9643 } 9644 9645 function clear() { 9646 if (interval) { 9647 interval.cancel(); 9648 } 9649 } 9650 9651 function cancel() { 9652 if (interval && !interval.isPaused()) { 9653 clear(); 9654 onEnd(); 9655 } 9656 } 9657 9658 function easing(t) { 9659 var easingFunc = options.easingFunc; 9660 return easingFunc ? easingFunc(t) : 1 - Math.pow(1 - t, 4); 9661 } 9662 9663 return { 9664 mount: mount, 9665 destroy: clear, 9666 scroll: scroll, 9667 cancel: cancel 9668 }; 9669} 9670 9671var SCROLL_LISTENER_OPTIONS = { 9672 passive: false, 9673 capture: true 9674}; 9675 9676function Drag(Splide2, Components2, options) { 9677 var _EventInterface9 = EventInterface(Splide2), 9678 on = _EventInterface9.on, 9679 emit = _EventInterface9.emit, 9680 bind = _EventInterface9.bind, 9681 unbind = _EventInterface9.unbind; 9682 9683 var state = Splide2.state; 9684 var Move = Components2.Move, 9685 Scroll = Components2.Scroll, 9686 Controller = Components2.Controller, 9687 track = Components2.Elements.track, 9688 reduce = Components2.Media.reduce; 9689 var _Components2$Directio2 = Components2.Direction, 9690 resolve = _Components2$Directio2.resolve, 9691 orient = _Components2$Directio2.orient; 9692 var getPosition = Move.getPosition, 9693 exceededLimit = Move.exceededLimit; 9694 var basePosition; 9695 var baseEvent; 9696 var prevBaseEvent; 9697 var isFree; 9698 var dragging; 9699 var exceeded = false; 9700 var clickPrevented; 9701 var disabled; 9702 var target; 9703 9704 function mount() { 9705 bind(track, POINTER_MOVE_EVENTS, noop, SCROLL_LISTENER_OPTIONS); 9706 bind(track, POINTER_UP_EVENTS, noop, SCROLL_LISTENER_OPTIONS); 9707 bind(track, POINTER_DOWN_EVENTS, onPointerDown, SCROLL_LISTENER_OPTIONS); 9708 bind(track, "click", onClick, { 9709 capture: true 9710 }); 9711 bind(track, "dragstart", prevent); 9712 on([EVENT_MOUNTED, EVENT_UPDATED], init); 9713 } 9714 9715 function init() { 9716 var drag = options.drag; 9717 disable(!drag); 9718 isFree = drag === "free"; 9719 } 9720 9721 function onPointerDown(e) { 9722 clickPrevented = false; 9723 9724 if (!disabled) { 9725 var isTouch = isTouchEvent(e); 9726 9727 if (isDraggable(e.target) && (isTouch || !e.button)) { 9728 if (!Controller.isBusy()) { 9729 target = isTouch ? track : window; 9730 dragging = state.is([MOVING, SCROLLING]); 9731 prevBaseEvent = null; 9732 bind(target, POINTER_MOVE_EVENTS, onPointerMove, SCROLL_LISTENER_OPTIONS); 9733 bind(target, POINTER_UP_EVENTS, onPointerUp, SCROLL_LISTENER_OPTIONS); 9734 Move.cancel(); 9735 Scroll.cancel(); 9736 save(e); 9737 } else { 9738 prevent(e, true); 9739 } 9740 } 9741 } 9742 } 9743 9744 function onPointerMove(e) { 9745 if (!state.is(DRAGGING)) { 9746 state.set(DRAGGING); 9747 emit(EVENT_DRAG); 9748 } 9749 9750 if (e.cancelable) { 9751 if (dragging) { 9752 Move.translate(basePosition + constrain(diffCoord(e))); 9753 var expired = diffTime(e) > LOG_INTERVAL; 9754 var hasExceeded = exceeded !== (exceeded = exceededLimit()); 9755 9756 if (expired || hasExceeded) { 9757 save(e); 9758 } 9759 9760 clickPrevented = true; 9761 emit(EVENT_DRAGGING); 9762 prevent(e); 9763 } else if (isSliderDirection(e)) { 9764 dragging = shouldStart(e); 9765 prevent(e); 9766 } 9767 } 9768 } 9769 9770 function onPointerUp(e) { 9771 if (state.is(DRAGGING)) { 9772 state.set(IDLE); 9773 emit(EVENT_DRAGGED); 9774 } 9775 9776 if (dragging) { 9777 move(e); 9778 prevent(e); 9779 } 9780 9781 unbind(target, POINTER_MOVE_EVENTS, onPointerMove); 9782 unbind(target, POINTER_UP_EVENTS, onPointerUp); 9783 dragging = false; 9784 } 9785 9786 function onClick(e) { 9787 if (!disabled && clickPrevented) { 9788 prevent(e, true); 9789 } 9790 } 9791 9792 function save(e) { 9793 prevBaseEvent = baseEvent; 9794 baseEvent = e; 9795 basePosition = getPosition(); 9796 } 9797 9798 function move(e) { 9799 var velocity = computeVelocity(e); 9800 var destination = computeDestination(velocity); 9801 var rewind = options.rewind && options.rewindByDrag; 9802 reduce(false); 9803 9804 if (isFree) { 9805 Controller.scroll(destination, 0, options.snap); 9806 } else if (Splide2.is(FADE)) { 9807 Controller.go(orient(sign(velocity)) < 0 ? rewind ? "<" : "-" : rewind ? ">" : "+"); 9808 } else if (Splide2.is(SLIDE) && exceeded && rewind) { 9809 Controller.go(exceededLimit(true) ? ">" : "<"); 9810 } else { 9811 Controller.go(Controller.toDest(destination), true); 9812 } 9813 9814 reduce(true); 9815 } 9816 9817 function shouldStart(e) { 9818 var thresholds = options.dragMinThreshold; 9819 var isObj = isObject(thresholds); 9820 var mouse = isObj && thresholds.mouse || 0; 9821 var touch = (isObj ? thresholds.touch : +thresholds) || 10; 9822 return abs(diffCoord(e)) > (isTouchEvent(e) ? touch : mouse); 9823 } 9824 9825 function isSliderDirection(e) { 9826 return abs(diffCoord(e)) > abs(diffCoord(e, true)); 9827 } 9828 9829 function computeVelocity(e) { 9830 if (Splide2.is(LOOP) || !exceeded) { 9831 var time = diffTime(e); 9832 9833 if (time && time < LOG_INTERVAL) { 9834 return diffCoord(e) / time; 9835 } 9836 } 9837 9838 return 0; 9839 } 9840 9841 function computeDestination(velocity) { 9842 return getPosition() + sign(velocity) * min(abs(velocity) * (options.flickPower || 600), isFree ? Infinity : Components2.Layout.listSize() * (options.flickMaxPages || 1)); 9843 } 9844 9845 function diffCoord(e, orthogonal) { 9846 return coordOf(e, orthogonal) - coordOf(getBaseEvent(e), orthogonal); 9847 } 9848 9849 function diffTime(e) { 9850 return timeOf(e) - timeOf(getBaseEvent(e)); 9851 } 9852 9853 function getBaseEvent(e) { 9854 return baseEvent === e && prevBaseEvent || baseEvent; 9855 } 9856 9857 function coordOf(e, orthogonal) { 9858 return (isTouchEvent(e) ? e.changedTouches[0] : e)["page" + resolve(orthogonal ? "Y" : "X")]; 9859 } 9860 9861 function constrain(diff) { 9862 return diff / (exceeded && Splide2.is(SLIDE) ? FRICTION : 1); 9863 } 9864 9865 function isDraggable(target2) { 9866 var noDrag = options.noDrag; 9867 return !matches(target2, "." + CLASS_PAGINATION_PAGE + ", ." + CLASS_ARROW) && (!noDrag || !matches(target2, noDrag)); 9868 } 9869 9870 function isTouchEvent(e) { 9871 return typeof TouchEvent !== "undefined" && e instanceof TouchEvent; 9872 } 9873 9874 function isDragging() { 9875 return dragging; 9876 } 9877 9878 function disable(value) { 9879 disabled = value; 9880 } 9881 9882 return { 9883 mount: mount, 9884 disable: disable, 9885 isDragging: isDragging 9886 }; 9887} 9888 9889var NORMALIZATION_MAP = { 9890 Spacebar: " ", 9891 Right: ARROW_RIGHT, 9892 Left: ARROW_LEFT, 9893 Up: ARROW_UP, 9894 Down: ARROW_DOWN 9895}; 9896 9897function normalizeKey(key) { 9898 key = isString(key) ? key : key.key; 9899 return NORMALIZATION_MAP[key] || key; 9900} 9901 9902var KEYBOARD_EVENT = "keydown"; 9903 9904function Keyboard(Splide2, Components2, options) { 9905 var _EventInterface10 = EventInterface(Splide2), 9906 on = _EventInterface10.on, 9907 bind = _EventInterface10.bind, 9908 unbind = _EventInterface10.unbind; 9909 9910 var root = Splide2.root; 9911 var resolve = Components2.Direction.resolve; 9912 var target; 9913 var disabled; 9914 9915 function mount() { 9916 init(); 9917 on(EVENT_UPDATED, destroy); 9918 on(EVENT_UPDATED, init); 9919 on(EVENT_MOVE, onMove); 9920 } 9921 9922 function init() { 9923 var keyboard = options.keyboard; 9924 9925 if (keyboard) { 9926 target = keyboard === "global" ? window : root; 9927 bind(target, KEYBOARD_EVENT, onKeydown); 9928 } 9929 } 9930 9931 function destroy() { 9932 unbind(target, KEYBOARD_EVENT); 9933 } 9934 9935 function disable(value) { 9936 disabled = value; 9937 } 9938 9939 function onMove() { 9940 var _disabled = disabled; 9941 disabled = true; 9942 nextTick(function () { 9943 disabled = _disabled; 9944 }); 9945 } 9946 9947 function onKeydown(e) { 9948 if (!disabled) { 9949 var key = normalizeKey(e); 9950 9951 if (key === resolve(ARROW_LEFT)) { 9952 Splide2.go("<"); 9953 } else if (key === resolve(ARROW_RIGHT)) { 9954 Splide2.go(">"); 9955 } 9956 } 9957 } 9958 9959 return { 9960 mount: mount, 9961 destroy: destroy, 9962 disable: disable 9963 }; 9964} 9965 9966var SRC_DATA_ATTRIBUTE = DATA_ATTRIBUTE + "-lazy"; 9967var SRCSET_DATA_ATTRIBUTE = SRC_DATA_ATTRIBUTE + "-srcset"; 9968var IMAGE_SELECTOR = "[" + SRC_DATA_ATTRIBUTE + "], [" + SRCSET_DATA_ATTRIBUTE + "]"; 9969 9970function LazyLoad(Splide2, Components2, options) { 9971 var _EventInterface11 = EventInterface(Splide2), 9972 on = _EventInterface11.on, 9973 off = _EventInterface11.off, 9974 bind = _EventInterface11.bind, 9975 emit = _EventInterface11.emit; 9976 9977 var isSequential = options.lazyLoad === "sequential"; 9978 var events = [EVENT_MOVED, EVENT_SCROLLED]; 9979 var entries = []; 9980 9981 function mount() { 9982 if (options.lazyLoad) { 9983 init(); 9984 on(EVENT_REFRESH, init); 9985 } 9986 } 9987 9988 function init() { 9989 empty(entries); 9990 register(); 9991 9992 if (isSequential) { 9993 loadNext(); 9994 } else { 9995 off(events); 9996 on(events, check); 9997 check(); 9998 } 9999 } 10000 10001 function register() { 10002 Components2.Slides.forEach(function (Slide) { 10003 queryAll(Slide.slide, IMAGE_SELECTOR).forEach(function (img) { 10004 var src = getAttribute(img, SRC_DATA_ATTRIBUTE); 10005 var srcset = getAttribute(img, SRCSET_DATA_ATTRIBUTE); 10006 10007 if (src !== img.src || srcset !== img.srcset) { 10008 var className = options.classes.spinner; 10009 var parent = img.parentElement; 10010 var spinner = child(parent, "." + className) || create("span", className, parent); 10011 entries.push([img, Slide, spinner]); 10012 img.src || display(img, "none"); 10013 } 10014 }); 10015 }); 10016 } 10017 10018 function check() { 10019 entries = entries.filter(function (data) { 10020 var distance = options.perPage * ((options.preloadPages || 1) + 1) - 1; 10021 return data[1].isWithin(Splide2.index, distance) ? load(data) : true; 10022 }); 10023 entries.length || off(events); 10024 } 10025 10026 function load(data) { 10027 var img = data[0]; 10028 addClass(data[1].slide, CLASS_LOADING); 10029 bind(img, "load error", apply(onLoad, data)); 10030 setAttribute(img, "src", getAttribute(img, SRC_DATA_ATTRIBUTE)); 10031 setAttribute(img, "srcset", getAttribute(img, SRCSET_DATA_ATTRIBUTE)); 10032 removeAttribute(img, SRC_DATA_ATTRIBUTE); 10033 removeAttribute(img, SRCSET_DATA_ATTRIBUTE); 10034 } 10035 10036 function onLoad(data, e) { 10037 var img = data[0], 10038 Slide = data[1]; 10039 removeClass(Slide.slide, CLASS_LOADING); 10040 10041 if (e.type !== "error") { 10042 remove(data[2]); 10043 display(img, ""); 10044 emit(EVENT_LAZYLOAD_LOADED, img, Slide); 10045 emit(EVENT_RESIZE); 10046 } 10047 10048 isSequential && loadNext(); 10049 } 10050 10051 function loadNext() { 10052 entries.length && load(entries.shift()); 10053 } 10054 10055 return { 10056 mount: mount, 10057 destroy: apply(empty, entries), 10058 check: check 10059 }; 10060} 10061 10062function Pagination(Splide2, Components2, options) { 10063 var event = EventInterface(Splide2); 10064 var on = event.on, 10065 emit = event.emit, 10066 bind = event.bind; 10067 var Slides = Components2.Slides, 10068 Elements = Components2.Elements, 10069 Controller = Components2.Controller; 10070 var hasFocus = Controller.hasFocus, 10071 getIndex = Controller.getIndex, 10072 go = Controller.go; 10073 var resolve = Components2.Direction.resolve; 10074 var placeholder = Elements.pagination; 10075 var items = []; 10076 var list; 10077 var paginationClasses; 10078 10079 function mount() { 10080 destroy(); 10081 on([EVENT_UPDATED, EVENT_REFRESH, EVENT_END_INDEX_CHANGED], mount); 10082 var enabled = options.pagination; 10083 placeholder && display(placeholder, enabled ? "" : "none"); 10084 10085 if (enabled) { 10086 on([EVENT_MOVE, EVENT_SCROLL, EVENT_SCROLLED], update); 10087 createPagination(); 10088 update(); 10089 emit(EVENT_PAGINATION_MOUNTED, { 10090 list: list, 10091 items: items 10092 }, getAt(Splide2.index)); 10093 } 10094 } 10095 10096 function destroy() { 10097 if (list) { 10098 remove(placeholder ? slice(list.children) : list); 10099 removeClass(list, paginationClasses); 10100 empty(items); 10101 list = null; 10102 } 10103 10104 event.destroy(); 10105 } 10106 10107 function createPagination() { 10108 var length = Splide2.length; 10109 var classes = options.classes, 10110 i18n = options.i18n, 10111 perPage = options.perPage; 10112 var max = hasFocus() ? Controller.getEnd() + 1 : ceil(length / perPage); 10113 list = placeholder || create("ul", classes.pagination, Elements.track.parentElement); 10114 addClass(list, paginationClasses = CLASS_PAGINATION + "--" + getDirection()); 10115 setAttribute(list, ROLE, "tablist"); 10116 setAttribute(list, ARIA_LABEL, i18n.select); 10117 setAttribute(list, ARIA_ORIENTATION, getDirection() === TTB ? "vertical" : ""); 10118 10119 for (var i = 0; i < max; i++) { 10120 var li = create("li", null, list); 10121 var button = create("button", { 10122 class: classes.page, 10123 type: "button" 10124 }, li); 10125 var controls = Slides.getIn(i).map(function (Slide) { 10126 return Slide.slide.id; 10127 }); 10128 var text = !hasFocus() && perPage > 1 ? i18n.pageX : i18n.slideX; 10129 bind(button, "click", apply(onClick, i)); 10130 10131 if (options.paginationKeyboard) { 10132 bind(button, "keydown", apply(onKeydown, i)); 10133 } 10134 10135 setAttribute(li, ROLE, "presentation"); 10136 setAttribute(button, ROLE, "tab"); 10137 setAttribute(button, ARIA_CONTROLS, controls.join(" ")); 10138 setAttribute(button, ARIA_LABEL, format(text, i + 1)); 10139 setAttribute(button, TAB_INDEX, -1); 10140 items.push({ 10141 li: li, 10142 button: button, 10143 page: i 10144 }); 10145 } 10146 } 10147 10148 function onClick(page) { 10149 go(">" + page, true); 10150 } 10151 10152 function onKeydown(page, e) { 10153 var length = items.length; 10154 var key = normalizeKey(e); 10155 var dir = getDirection(); 10156 var nextPage = -1; 10157 10158 if (key === resolve(ARROW_RIGHT, false, dir)) { 10159 nextPage = ++page % length; 10160 } else if (key === resolve(ARROW_LEFT, false, dir)) { 10161 nextPage = (--page + length) % length; 10162 } else if (key === "Home") { 10163 nextPage = 0; 10164 } else if (key === "End") { 10165 nextPage = length - 1; 10166 } 10167 10168 var item = items[nextPage]; 10169 10170 if (item) { 10171 splide_esm_focus(item.button); 10172 go(">" + nextPage); 10173 prevent(e, true); 10174 } 10175 } 10176 10177 function getDirection() { 10178 return options.paginationDirection || options.direction; 10179 } 10180 10181 function getAt(index) { 10182 return items[Controller.toPage(index)]; 10183 } 10184 10185 function update() { 10186 var prev = getAt(getIndex(true)); 10187 var curr = getAt(getIndex()); 10188 10189 if (prev) { 10190 var button = prev.button; 10191 removeClass(button, CLASS_ACTIVE); 10192 removeAttribute(button, ARIA_SELECTED); 10193 setAttribute(button, TAB_INDEX, -1); 10194 } 10195 10196 if (curr) { 10197 var _button = curr.button; 10198 addClass(_button, CLASS_ACTIVE); 10199 setAttribute(_button, ARIA_SELECTED, true); 10200 setAttribute(_button, TAB_INDEX, ""); 10201 } 10202 10203 emit(EVENT_PAGINATION_UPDATED, { 10204 list: list, 10205 items: items 10206 }, prev, curr); 10207 } 10208 10209 return { 10210 items: items, 10211 mount: mount, 10212 destroy: destroy, 10213 getAt: getAt, 10214 update: update 10215 }; 10216} 10217 10218var TRIGGER_KEYS = [" ", "Enter"]; 10219 10220function Sync(Splide2, Components2, options) { 10221 var isNavigation = options.isNavigation, 10222 slideFocus = options.slideFocus; 10223 var events = []; 10224 10225 function mount() { 10226 Splide2.splides.forEach(function (target) { 10227 if (!target.isParent) { 10228 sync(Splide2, target.splide); 10229 sync(target.splide, Splide2); 10230 } 10231 }); 10232 10233 if (isNavigation) { 10234 navigate(); 10235 } 10236 } 10237 10238 function destroy() { 10239 events.forEach(function (event) { 10240 event.destroy(); 10241 }); 10242 empty(events); 10243 } 10244 10245 function remount() { 10246 destroy(); 10247 mount(); 10248 } 10249 10250 function sync(splide, target) { 10251 var event = EventInterface(splide); 10252 event.on(EVENT_MOVE, function (index, prev, dest) { 10253 target.go(target.is(LOOP) ? dest : index); 10254 }); 10255 events.push(event); 10256 } 10257 10258 function navigate() { 10259 var event = EventInterface(Splide2); 10260 var on = event.on; 10261 on(EVENT_CLICK, onClick); 10262 on(EVENT_SLIDE_KEYDOWN, onKeydown); 10263 on([EVENT_MOUNTED, EVENT_UPDATED], update); 10264 events.push(event); 10265 event.emit(EVENT_NAVIGATION_MOUNTED, Splide2.splides); 10266 } 10267 10268 function update() { 10269 setAttribute(Components2.Elements.list, ARIA_ORIENTATION, options.direction === TTB ? "vertical" : ""); 10270 } 10271 10272 function onClick(Slide) { 10273 Splide2.go(Slide.index); 10274 } 10275 10276 function onKeydown(Slide, e) { 10277 if (includes(TRIGGER_KEYS, normalizeKey(e))) { 10278 onClick(Slide); 10279 prevent(e); 10280 } 10281 } 10282 10283 return { 10284 setup: apply(Components2.Media.set, { 10285 slideFocus: isUndefined(slideFocus) ? isNavigation : slideFocus 10286 }, true), 10287 mount: mount, 10288 destroy: destroy, 10289 remount: remount 10290 }; 10291} 10292 10293function Wheel(Splide2, Components2, options) { 10294 var _EventInterface12 = EventInterface(Splide2), 10295 bind = _EventInterface12.bind; 10296 10297 var lastTime = 0; 10298 10299 function mount() { 10300 if (options.wheel) { 10301 bind(Components2.Elements.track, "wheel", onWheel, SCROLL_LISTENER_OPTIONS); 10302 } 10303 } 10304 10305 function onWheel(e) { 10306 if (e.cancelable) { 10307 var deltaY = e.deltaY; 10308 var backwards = deltaY < 0; 10309 var timeStamp = timeOf(e); 10310 10311 var _min = options.wheelMinThreshold || 0; 10312 10313 var sleep = options.wheelSleep || 0; 10314 10315 if (abs(deltaY) > _min && timeStamp - lastTime > sleep) { 10316 Splide2.go(backwards ? "<" : ">"); 10317 lastTime = timeStamp; 10318 } 10319 10320 shouldPrevent(backwards) && prevent(e); 10321 } 10322 } 10323 10324 function shouldPrevent(backwards) { 10325 return !options.releaseWheel || Splide2.state.is(MOVING) || Components2.Controller.getAdjacent(backwards) !== -1; 10326 } 10327 10328 return { 10329 mount: mount 10330 }; 10331} 10332 10333var SR_REMOVAL_DELAY = 90; 10334 10335function Live(Splide2, Components2, options) { 10336 var _EventInterface13 = EventInterface(Splide2), 10337 on = _EventInterface13.on; 10338 10339 var track = Components2.Elements.track; 10340 var enabled = options.live && !options.isNavigation; 10341 var sr = create("span", CLASS_SR); 10342 var interval = RequestInterval(SR_REMOVAL_DELAY, apply(toggle, false)); 10343 10344 function mount() { 10345 if (enabled) { 10346 disable(!Components2.Autoplay.isPaused()); 10347 setAttribute(track, ARIA_ATOMIC, true); 10348 sr.textContent = "\u2026"; 10349 on(EVENT_AUTOPLAY_PLAY, apply(disable, true)); 10350 on(EVENT_AUTOPLAY_PAUSE, apply(disable, false)); 10351 on([EVENT_MOVED, EVENT_SCROLLED], apply(toggle, true)); 10352 } 10353 } 10354 10355 function toggle(active) { 10356 setAttribute(track, ARIA_BUSY, active); 10357 10358 if (active) { 10359 append(track, sr); 10360 interval.start(); 10361 } else { 10362 remove(sr); 10363 interval.cancel(); 10364 } 10365 } 10366 10367 function destroy() { 10368 removeAttribute(track, [ARIA_LIVE, ARIA_ATOMIC, ARIA_BUSY]); 10369 remove(sr); 10370 } 10371 10372 function disable(disabled) { 10373 if (enabled) { 10374 setAttribute(track, ARIA_LIVE, disabled ? "off" : "polite"); 10375 } 10376 } 10377 10378 return { 10379 mount: mount, 10380 disable: disable, 10381 destroy: destroy 10382 }; 10383} 10384 10385var ComponentConstructors = /*#__PURE__*/Object.freeze({ 10386 __proto__: null, 10387 Media: Media, 10388 Direction: Direction, 10389 Elements: Elements, 10390 Slides: Slides, 10391 Layout: Layout, 10392 Clones: Clones, 10393 Move: Move, 10394 Controller: Controller, 10395 Arrows: Arrows, 10396 Autoplay: Autoplay, 10397 Cover: Cover, 10398 Scroll: Scroll, 10399 Drag: Drag, 10400 Keyboard: Keyboard, 10401 LazyLoad: LazyLoad, 10402 Pagination: Pagination, 10403 Sync: Sync, 10404 Wheel: Wheel, 10405 Live: Live 10406}); 10407var I18N = { 10408 prev: "Previous slide", 10409 next: "Next slide", 10410 first: "Go to first slide", 10411 last: "Go to last slide", 10412 slideX: "Go to slide %s", 10413 pageX: "Go to page %s", 10414 play: "Start autoplay", 10415 pause: "Pause autoplay", 10416 carousel: "carousel", 10417 slide: "slide", 10418 select: "Select a slide to show", 10419 slideLabel: "%s of %s" 10420}; 10421var DEFAULTS = { 10422 type: "slide", 10423 role: "region", 10424 speed: 400, 10425 perPage: 1, 10426 cloneStatus: true, 10427 arrows: true, 10428 pagination: true, 10429 paginationKeyboard: true, 10430 interval: 5e3, 10431 pauseOnHover: true, 10432 pauseOnFocus: true, 10433 resetProgress: true, 10434 easing: "cubic-bezier(0.25, 1, 0.5, 1)", 10435 drag: true, 10436 direction: "ltr", 10437 trimSpace: true, 10438 focusableNodes: "a, button, textarea, input, select, iframe", 10439 live: true, 10440 classes: CLASSES, 10441 i18n: I18N, 10442 reducedMotion: { 10443 speed: 0, 10444 rewindSpeed: 0, 10445 autoplay: "pause" 10446 } 10447}; 10448 10449function Fade(Splide2, Components2, options) { 10450 var Slides = Components2.Slides; 10451 10452 function mount() { 10453 EventInterface(Splide2).on([EVENT_MOUNTED, EVENT_REFRESH], init); 10454 } 10455 10456 function init() { 10457 Slides.forEach(function (Slide) { 10458 Slide.style("transform", "translateX(-" + 100 * Slide.index + "%)"); 10459 }); 10460 } 10461 10462 function start(index, done) { 10463 Slides.style("transition", "opacity " + options.speed + "ms " + options.easing); 10464 nextTick(done); 10465 } 10466 10467 return { 10468 mount: mount, 10469 start: start, 10470 cancel: noop 10471 }; 10472} 10473 10474function Slide(Splide2, Components2, options) { 10475 var Move = Components2.Move, 10476 Controller = Components2.Controller, 10477 Scroll = Components2.Scroll; 10478 var list = Components2.Elements.list; 10479 var transition = apply(style, list, "transition"); 10480 var endCallback; 10481 10482 function mount() { 10483 EventInterface(Splide2).bind(list, "transitionend", function (e) { 10484 if (e.target === list && endCallback) { 10485 cancel(); 10486 endCallback(); 10487 } 10488 }); 10489 } 10490 10491 function start(index, done) { 10492 var destination = Move.toPosition(index, true); 10493 var position = Move.getPosition(); 10494 var speed = getSpeed(index); 10495 10496 if (abs(destination - position) >= 1 && speed >= 1) { 10497 if (options.useScroll) { 10498 Scroll.scroll(destination, speed, false, done); 10499 } else { 10500 transition("transform " + speed + "ms " + options.easing); 10501 Move.translate(destination, true); 10502 endCallback = done; 10503 } 10504 } else { 10505 Move.jump(index); 10506 done(); 10507 } 10508 } 10509 10510 function cancel() { 10511 transition(""); 10512 Scroll.cancel(); 10513 } 10514 10515 function getSpeed(index) { 10516 var rewindSpeed = options.rewindSpeed; 10517 10518 if (Splide2.is(SLIDE) && rewindSpeed) { 10519 var prev = Controller.getIndex(true); 10520 var end = Controller.getEnd(); 10521 10522 if (prev === 0 && index >= end || prev >= end && index === 0) { 10523 return rewindSpeed; 10524 } 10525 } 10526 10527 return options.speed; 10528 } 10529 10530 return { 10531 mount: mount, 10532 start: start, 10533 cancel: cancel 10534 }; 10535} 10536 10537var _Splide = /*#__PURE__*/function () { 10538 function _Splide(target, options) { 10539 this.event = EventInterface(); 10540 this.Components = {}; 10541 this.state = State(CREATED); 10542 this.splides = []; 10543 this._o = {}; 10544 this._E = {}; 10545 var root = isString(target) ? query(document, target) : target; 10546 assert(root, root + " is invalid."); 10547 this.root = root; 10548 options = merge({ 10549 label: getAttribute(root, ARIA_LABEL) || "", 10550 labelledby: getAttribute(root, ARIA_LABELLEDBY) || "" 10551 }, DEFAULTS, _Splide.defaults, options || {}); 10552 10553 try { 10554 merge(options, JSON.parse(getAttribute(root, DATA_ATTRIBUTE))); 10555 } catch (e) { 10556 assert(false, "Invalid JSON"); 10557 } 10558 10559 this._o = Object.create(merge({}, options)); 10560 } 10561 10562 var _proto = _Splide.prototype; 10563 10564 _proto.mount = function mount(Extensions, Transition) { 10565 var _this = this; 10566 10567 var state = this.state, 10568 Components2 = this.Components; 10569 assert(state.is([CREATED, DESTROYED]), "Already mounted!"); 10570 state.set(CREATED); 10571 this._C = Components2; 10572 this._T = Transition || this._T || (this.is(FADE) ? Fade : Slide); 10573 this._E = Extensions || this._E; 10574 var Constructors = splide_esm_assign({}, ComponentConstructors, this._E, { 10575 Transition: this._T 10576 }); 10577 forOwn(Constructors, function (Component, key) { 10578 var component = Component(_this, Components2, _this._o); 10579 Components2[key] = component; 10580 component.setup && component.setup(); 10581 }); 10582 forOwn(Components2, function (component) { 10583 component.mount && component.mount(); 10584 }); 10585 this.emit(EVENT_MOUNTED); 10586 addClass(this.root, CLASS_INITIALIZED); 10587 state.set(IDLE); 10588 this.emit(EVENT_READY); 10589 return this; 10590 }; 10591 10592 _proto.sync = function sync(splide) { 10593 this.splides.push({ 10594 splide: splide 10595 }); 10596 splide.splides.push({ 10597 splide: this, 10598 isParent: true 10599 }); 10600 10601 if (this.state.is(IDLE)) { 10602 this._C.Sync.remount(); 10603 10604 splide.Components.Sync.remount(); 10605 } 10606 10607 return this; 10608 }; 10609 10610 _proto.go = function go(control) { 10611 this._C.Controller.go(control); 10612 10613 return this; 10614 }; 10615 10616 _proto.on = function on(events, callback) { 10617 this.event.on(events, callback); 10618 return this; 10619 }; 10620 10621 _proto.off = function off(events) { 10622 this.event.off(events); 10623 return this; 10624 }; 10625 10626 _proto.emit = function emit(event) { 10627 var _this$event; 10628 10629 (_this$event = this.event).emit.apply(_this$event, [event].concat(slice(arguments, 1))); 10630 10631 return this; 10632 }; 10633 10634 _proto.add = function add(slides, index) { 10635 this._C.Slides.add(slides, index); 10636 10637 return this; 10638 }; 10639 10640 _proto.remove = function remove(matcher) { 10641 this._C.Slides.remove(matcher); 10642 10643 return this; 10644 }; 10645 10646 _proto.is = function is(type) { 10647 return this._o.type === type; 10648 }; 10649 10650 _proto.refresh = function refresh() { 10651 this.emit(EVENT_REFRESH); 10652 return this; 10653 }; 10654 10655 _proto.destroy = function destroy(completely) { 10656 if (completely === void 0) { 10657 completely = true; 10658 } 10659 10660 var event = this.event, 10661 state = this.state; 10662 10663 if (state.is(CREATED)) { 10664 EventInterface(this).on(EVENT_READY, this.destroy.bind(this, completely)); 10665 } else { 10666 forOwn(this._C, function (component) { 10667 component.destroy && component.destroy(completely); 10668 }, true); 10669 event.emit(EVENT_DESTROY); 10670 event.destroy(); 10671 completely && empty(this.splides); 10672 state.set(DESTROYED); 10673 } 10674 10675 return this; 10676 }; 10677 10678 splide_esm_createClass(_Splide, [{ 10679 key: "options", 10680 get: function get() { 10681 return this._o; 10682 }, 10683 set: function set(options) { 10684 this._C.Media.set(options, true, true); 10685 } 10686 }, { 10687 key: "length", 10688 get: function get() { 10689 return this._C.Slides.getLength(true); 10690 } 10691 }, { 10692 key: "index", 10693 get: function get() { 10694 return this._C.Controller.getIndex(); 10695 } 10696 }]); 10697 10698 return _Splide; 10699}(); 10700 10701var Splide = _Splide; 10702Splide.defaults = {}; 10703Splide.STATES = STATES; 10704var CLASS_RENDERED = "is-rendered"; 10705var RENDERER_DEFAULT_CONFIG = { 10706 listTag: "ul", 10707 slideTag: "li" 10708}; 10709 10710var Style = /*#__PURE__*/(/* unused pure expression or super */ null && (function () { 10711 function Style(id, options) { 10712 this.styles = {}; 10713 this.id = id; 10714 this.options = options; 10715 } 10716 10717 var _proto2 = Style.prototype; 10718 10719 _proto2.rule = function rule(selector, prop, value, breakpoint) { 10720 breakpoint = breakpoint || "default"; 10721 var selectors = this.styles[breakpoint] = this.styles[breakpoint] || {}; 10722 var styles = selectors[selector] = selectors[selector] || {}; 10723 styles[prop] = value; 10724 }; 10725 10726 _proto2.build = function build() { 10727 var _this2 = this; 10728 10729 var css = ""; 10730 10731 if (this.styles.default) { 10732 css += this.buildSelectors(this.styles.default); 10733 } 10734 10735 Object.keys(this.styles).sort(function (n, m) { 10736 return _this2.options.mediaQuery === "min" ? +n - +m : +m - +n; 10737 }).forEach(function (breakpoint) { 10738 if (breakpoint !== "default") { 10739 css += "@media screen and (max-width: " + breakpoint + "px) {"; 10740 css += _this2.buildSelectors(_this2.styles[breakpoint]); 10741 css += "}"; 10742 } 10743 }); 10744 return css; 10745 }; 10746 10747 _proto2.buildSelectors = function buildSelectors(selectors) { 10748 var _this3 = this; 10749 10750 var css = ""; 10751 forOwn(selectors, function (styles, selector) { 10752 selector = ("#" + _this3.id + " " + selector).trim(); 10753 css += selector + " {"; 10754 forOwn(styles, function (value, prop) { 10755 if (value || value === 0) { 10756 css += prop + ": " + value + ";"; 10757 } 10758 }); 10759 css += "}"; 10760 }); 10761 return css; 10762 }; 10763 10764 return Style; 10765}())); 10766 10767var SplideRenderer = /*#__PURE__*/(/* unused pure expression or super */ null && (function () { 10768 function SplideRenderer(contents, options, config, defaults) { 10769 this.slides = []; 10770 this.options = {}; 10771 this.breakpoints = []; 10772 merge(DEFAULTS, defaults || {}); 10773 merge(merge(this.options, DEFAULTS), options || {}); 10774 this.contents = contents; 10775 this.config = splide_esm_assign({}, RENDERER_DEFAULT_CONFIG, config || {}); 10776 this.id = this.config.id || uniqueId("splide"); 10777 this.Style = new Style(this.id, this.options); 10778 this.Direction = Direction(null, null, this.options); 10779 assert(this.contents.length, "Provide at least 1 content."); 10780 this.init(); 10781 } 10782 10783 SplideRenderer.clean = function clean(splide) { 10784 var _EventInterface14 = EventInterface(splide), 10785 on = _EventInterface14.on; 10786 10787 var root = splide.root; 10788 var clones = queryAll(root, "." + CLASS_CLONE); 10789 on(EVENT_MOUNTED, function () { 10790 remove(child(root, "style")); 10791 }); 10792 remove(clones); 10793 }; 10794 10795 var _proto3 = SplideRenderer.prototype; 10796 10797 _proto3.init = function init() { 10798 this.parseBreakpoints(); 10799 this.initSlides(); 10800 this.registerRootStyles(); 10801 this.registerTrackStyles(); 10802 this.registerSlideStyles(); 10803 this.registerListStyles(); 10804 }; 10805 10806 _proto3.initSlides = function initSlides() { 10807 var _this4 = this; 10808 10809 push(this.slides, this.contents.map(function (content, index) { 10810 content = isString(content) ? { 10811 html: content 10812 } : content; 10813 content.styles = content.styles || {}; 10814 content.attrs = content.attrs || {}; 10815 10816 _this4.cover(content); 10817 10818 var classes = _this4.options.classes.slide + " " + (index === 0 ? CLASS_ACTIVE : ""); 10819 splide_esm_assign(content.attrs, { 10820 class: (classes + " " + (content.attrs.class || "")).trim(), 10821 style: _this4.buildStyles(content.styles) 10822 }); 10823 return content; 10824 })); 10825 10826 if (this.isLoop()) { 10827 this.generateClones(this.slides); 10828 } 10829 }; 10830 10831 _proto3.registerRootStyles = function registerRootStyles() { 10832 var _this5 = this; 10833 10834 this.breakpoints.forEach(function (_ref2) { 10835 var width = _ref2[0], 10836 options = _ref2[1]; 10837 10838 _this5.Style.rule(" ", "max-width", unit(options.width), width); 10839 }); 10840 }; 10841 10842 _proto3.registerTrackStyles = function registerTrackStyles() { 10843 var _this6 = this; 10844 10845 var Style2 = this.Style; 10846 var selector = "." + CLASS_TRACK; 10847 this.breakpoints.forEach(function (_ref3) { 10848 var width = _ref3[0], 10849 options = _ref3[1]; 10850 Style2.rule(selector, _this6.resolve("paddingLeft"), _this6.cssPadding(options, false), width); 10851 Style2.rule(selector, _this6.resolve("paddingRight"), _this6.cssPadding(options, true), width); 10852 Style2.rule(selector, "height", _this6.cssTrackHeight(options), width); 10853 }); 10854 }; 10855 10856 _proto3.registerListStyles = function registerListStyles() { 10857 var _this7 = this; 10858 10859 var Style2 = this.Style; 10860 var selector = "." + CLASS_LIST; 10861 this.breakpoints.forEach(function (_ref4) { 10862 var width = _ref4[0], 10863 options = _ref4[1]; 10864 Style2.rule(selector, "transform", _this7.buildTranslate(options), width); 10865 10866 if (!_this7.cssSlideHeight(options)) { 10867 Style2.rule(selector, "aspect-ratio", _this7.cssAspectRatio(options), width); 10868 } 10869 }); 10870 }; 10871 10872 _proto3.registerSlideStyles = function registerSlideStyles() { 10873 var _this8 = this; 10874 10875 var Style2 = this.Style; 10876 var selector = "." + CLASS_SLIDE; 10877 this.breakpoints.forEach(function (_ref5) { 10878 var width = _ref5[0], 10879 options = _ref5[1]; 10880 Style2.rule(selector, "width", _this8.cssSlideWidth(options), width); 10881 Style2.rule(selector, "height", _this8.cssSlideHeight(options) || "100%", width); 10882 Style2.rule(selector, _this8.resolve("marginRight"), unit(options.gap) || "0px", width); 10883 Style2.rule(selector + " > img", "display", options.cover ? "none" : "inline", width); 10884 }); 10885 }; 10886 10887 _proto3.buildTranslate = function buildTranslate(options) { 10888 var _this$Direction = this.Direction, 10889 resolve = _this$Direction.resolve, 10890 orient = _this$Direction.orient; 10891 var values = []; 10892 values.push(this.cssOffsetClones(options)); 10893 values.push(this.cssOffsetGaps(options)); 10894 10895 if (this.isCenter(options)) { 10896 values.push(this.buildCssValue(orient(-50), "%")); 10897 values.push.apply(values, this.cssOffsetCenter(options)); 10898 } 10899 10900 return values.filter(Boolean).map(function (value) { 10901 return "translate" + resolve("X") + "(" + value + ")"; 10902 }).join(" "); 10903 }; 10904 10905 _proto3.cssOffsetClones = function cssOffsetClones(options) { 10906 var _this$Direction2 = this.Direction, 10907 resolve = _this$Direction2.resolve, 10908 orient = _this$Direction2.orient; 10909 var cloneCount = this.getCloneCount(); 10910 10911 if (this.isFixedWidth(options)) { 10912 var _this$parseCssValue = this.parseCssValue(options[resolve("fixedWidth")]), 10913 value = _this$parseCssValue.value, 10914 unit2 = _this$parseCssValue.unit; 10915 10916 return this.buildCssValue(orient(value) * cloneCount, unit2); 10917 } 10918 10919 var percent = 100 * cloneCount / options.perPage; 10920 return orient(percent) + "%"; 10921 }; 10922 10923 _proto3.cssOffsetCenter = function cssOffsetCenter(options) { 10924 var _this$Direction3 = this.Direction, 10925 resolve = _this$Direction3.resolve, 10926 orient = _this$Direction3.orient; 10927 10928 if (this.isFixedWidth(options)) { 10929 var _this$parseCssValue2 = this.parseCssValue(options[resolve("fixedWidth")]), 10930 value = _this$parseCssValue2.value, 10931 unit2 = _this$parseCssValue2.unit; 10932 10933 return [this.buildCssValue(orient(value / 2), unit2)]; 10934 } 10935 10936 var values = []; 10937 var perPage = options.perPage, 10938 gap = options.gap; 10939 values.push(orient(50 / perPage) + "%"); 10940 10941 if (gap) { 10942 var _this$parseCssValue3 = this.parseCssValue(gap), 10943 _value = _this$parseCssValue3.value, 10944 _unit = _this$parseCssValue3.unit; 10945 10946 var gapOffset = (_value / perPage - _value) / 2; 10947 values.push(this.buildCssValue(orient(gapOffset), _unit)); 10948 } 10949 10950 return values; 10951 }; 10952 10953 _proto3.cssOffsetGaps = function cssOffsetGaps(options) { 10954 var cloneCount = this.getCloneCount(); 10955 10956 if (cloneCount && options.gap) { 10957 var orient = this.Direction.orient; 10958 10959 var _this$parseCssValue4 = this.parseCssValue(options.gap), 10960 value = _this$parseCssValue4.value, 10961 unit2 = _this$parseCssValue4.unit; 10962 10963 if (this.isFixedWidth(options)) { 10964 return this.buildCssValue(orient(value * cloneCount), unit2); 10965 } 10966 10967 var perPage = options.perPage; 10968 var gaps = cloneCount / perPage; 10969 return this.buildCssValue(orient(gaps * value), unit2); 10970 } 10971 10972 return ""; 10973 }; 10974 10975 _proto3.resolve = function resolve(prop) { 10976 return camelToKebab(this.Direction.resolve(prop)); 10977 }; 10978 10979 _proto3.cssPadding = function cssPadding(options, right) { 10980 var padding = options.padding; 10981 var prop = this.Direction.resolve(right ? "right" : "left", true); 10982 return padding && unit(padding[prop] || (isObject(padding) ? 0 : padding)) || "0px"; 10983 }; 10984 10985 _proto3.cssTrackHeight = function cssTrackHeight(options) { 10986 var height = ""; 10987 10988 if (this.isVertical()) { 10989 height = this.cssHeight(options); 10990 assert(height, '"height" is missing.'); 10991 height = "calc(" + height + " - " + this.cssPadding(options, false) + " - " + this.cssPadding(options, true) + ")"; 10992 } 10993 10994 return height; 10995 }; 10996 10997 _proto3.cssHeight = function cssHeight(options) { 10998 return unit(options.height); 10999 }; 11000 11001 _proto3.cssSlideWidth = function cssSlideWidth(options) { 11002 return options.autoWidth ? "" : unit(options.fixedWidth) || (this.isVertical() ? "" : this.cssSlideSize(options)); 11003 }; 11004 11005 _proto3.cssSlideHeight = function cssSlideHeight(options) { 11006 return unit(options.fixedHeight) || (this.isVertical() ? options.autoHeight ? "" : this.cssSlideSize(options) : this.cssHeight(options)); 11007 }; 11008 11009 _proto3.cssSlideSize = function cssSlideSize(options) { 11010 var gap = unit(options.gap); 11011 return "calc((100%" + (gap && " + " + gap) + ")/" + (options.perPage || 1) + (gap && " - " + gap) + ")"; 11012 }; 11013 11014 _proto3.cssAspectRatio = function cssAspectRatio(options) { 11015 var heightRatio = options.heightRatio; 11016 return heightRatio ? "" + 1 / heightRatio : ""; 11017 }; 11018 11019 _proto3.buildCssValue = function buildCssValue(value, unit2) { 11020 return "" + value + unit2; 11021 }; 11022 11023 _proto3.parseCssValue = function parseCssValue(value) { 11024 if (isString(value)) { 11025 var number = parseFloat(value) || 0; 11026 var unit2 = value.replace(/\d*(\.\d*)?/, "") || "px"; 11027 return { 11028 value: number, 11029 unit: unit2 11030 }; 11031 } 11032 11033 return { 11034 value: value, 11035 unit: "px" 11036 }; 11037 }; 11038 11039 _proto3.parseBreakpoints = function parseBreakpoints() { 11040 var _this9 = this; 11041 11042 var breakpoints = this.options.breakpoints; 11043 this.breakpoints.push(["default", this.options]); 11044 11045 if (breakpoints) { 11046 forOwn(breakpoints, function (options, width) { 11047 _this9.breakpoints.push([width, merge(merge({}, _this9.options), options)]); 11048 }); 11049 } 11050 }; 11051 11052 _proto3.isFixedWidth = function isFixedWidth(options) { 11053 return !!options[this.Direction.resolve("fixedWidth")]; 11054 }; 11055 11056 _proto3.isLoop = function isLoop() { 11057 return this.options.type === LOOP; 11058 }; 11059 11060 _proto3.isCenter = function isCenter(options) { 11061 if (options.focus === "center") { 11062 if (this.isLoop()) { 11063 return true; 11064 } 11065 11066 if (this.options.type === SLIDE) { 11067 return !this.options.trimSpace; 11068 } 11069 } 11070 11071 return false; 11072 }; 11073 11074 _proto3.isVertical = function isVertical() { 11075 return this.options.direction === TTB; 11076 }; 11077 11078 _proto3.buildClasses = function buildClasses() { 11079 var options = this.options; 11080 return [CLASS_ROOT, CLASS_ROOT + "--" + options.type, CLASS_ROOT + "--" + options.direction, options.drag && CLASS_ROOT + "--draggable", options.isNavigation && CLASS_ROOT + "--nav", CLASS_ACTIVE, !this.config.hidden && CLASS_RENDERED].filter(Boolean).join(" "); 11081 }; 11082 11083 _proto3.buildAttrs = function buildAttrs(attrs) { 11084 var attr = ""; 11085 forOwn(attrs, function (value, key) { 11086 attr += value ? " " + camelToKebab(key) + "=\"" + value + "\"" : ""; 11087 }); 11088 return attr.trim(); 11089 }; 11090 11091 _proto3.buildStyles = function buildStyles(styles) { 11092 var style = ""; 11093 forOwn(styles, function (value, key) { 11094 style += " " + camelToKebab(key) + ":" + value + ";"; 11095 }); 11096 return style.trim(); 11097 }; 11098 11099 _proto3.renderSlides = function renderSlides() { 11100 var _this10 = this; 11101 11102 var tag = this.config.slideTag; 11103 return this.slides.map(function (content) { 11104 return "<" + tag + " " + _this10.buildAttrs(content.attrs) + ">" + (content.html || "") + "</" + tag + ">"; 11105 }).join(""); 11106 }; 11107 11108 _proto3.cover = function cover(content) { 11109 var styles = content.styles, 11110 _content$html = content.html, 11111 html = _content$html === void 0 ? "" : _content$html; 11112 11113 if (this.options.cover && !this.options.lazyLoad) { 11114 var src = html.match(/<img.*?src\s*=\s*(['"])(.+?)\1.*?>/); 11115 11116 if (src && src[2]) { 11117 styles.background = "center/cover no-repeat url('" + src[2] + "')"; 11118 } 11119 } 11120 }; 11121 11122 _proto3.generateClones = function generateClones(contents) { 11123 var classes = this.options.classes; 11124 var count = this.getCloneCount(); 11125 var slides = contents.slice(); 11126 11127 while (slides.length < count) { 11128 push(slides, slides); 11129 } 11130 11131 push(slides.slice(-count).reverse(), slides.slice(0, count)).forEach(function (content, index) { 11132 var attrs = splide_esm_assign({}, content.attrs, { 11133 class: content.attrs.class + " " + classes.clone 11134 }); 11135 var clone = splide_esm_assign({}, content, { 11136 attrs: attrs 11137 }); 11138 index < count ? contents.unshift(clone) : contents.push(clone); 11139 }); 11140 }; 11141 11142 _proto3.getCloneCount = function getCloneCount() { 11143 if (this.isLoop()) { 11144 var options = this.options; 11145 11146 if (options.clones) { 11147 return options.clones; 11148 } 11149 11150 var perPage = max.apply(void 0, this.breakpoints.map(function (_ref6) { 11151 var options2 = _ref6[1]; 11152 return options2.perPage; 11153 })); 11154 return perPage * ((options.flickMaxPages || 1) + 1); 11155 } 11156 11157 return 0; 11158 }; 11159 11160 _proto3.renderArrows = function renderArrows() { 11161 var html = ""; 11162 html += "<div class=\"" + this.options.classes.arrows + "\">"; 11163 html += this.renderArrow(true); 11164 html += this.renderArrow(false); 11165 html += "</div>"; 11166 return html; 11167 }; 11168 11169 _proto3.renderArrow = function renderArrow(prev) { 11170 var _this$options = this.options, 11171 classes = _this$options.classes, 11172 i18n = _this$options.i18n; 11173 var attrs = { 11174 class: classes.arrow + " " + (prev ? classes.prev : classes.next), 11175 type: "button", 11176 ariaLabel: prev ? i18n.prev : i18n.next 11177 }; 11178 return "<button " + this.buildAttrs(attrs) + "><svg xmlns=\"" + XML_NAME_SPACE + "\" viewBox=\"0 0 " + SIZE + " " + SIZE + "\" width=\"" + SIZE + "\" height=\"" + SIZE + "\"><path d=\"" + (this.options.arrowPath || PATH) + "\" /></svg></button>"; 11179 }; 11180 11181 _proto3.html = function html() { 11182 var _this$config = this.config, 11183 rootClass = _this$config.rootClass, 11184 listTag = _this$config.listTag, 11185 arrows = _this$config.arrows, 11186 beforeTrack = _this$config.beforeTrack, 11187 afterTrack = _this$config.afterTrack, 11188 slider = _this$config.slider, 11189 beforeSlider = _this$config.beforeSlider, 11190 afterSlider = _this$config.afterSlider; 11191 var html = ""; 11192 html += "<div id=\"" + this.id + "\" class=\"" + this.buildClasses() + " " + (rootClass || "") + "\">"; 11193 html += "<style>" + this.Style.build() + "</style>"; 11194 11195 if (slider) { 11196 html += beforeSlider || ""; 11197 html += "<div class=\"splide__slider\">"; 11198 } 11199 11200 html += beforeTrack || ""; 11201 11202 if (arrows) { 11203 html += this.renderArrows(); 11204 } 11205 11206 html += "<div class=\"splide__track\">"; 11207 html += "<" + listTag + " class=\"splide__list\">"; 11208 html += this.renderSlides(); 11209 html += "</" + listTag + ">"; 11210 html += "</div>"; 11211 html += afterTrack || ""; 11212 11213 if (slider) { 11214 html += "</div>"; 11215 html += afterSlider || ""; 11216 } 11217 11218 html += "</div>"; 11219 return html; 11220 }; 11221 11222 return SplideRenderer; 11223}())); 11224 11225 11226 11227;// CONCATENATED MODULE: ./src/scripts/components/tutorCarousel.ts 11228 11229 11230 11231function TutorCarousel() { 11232 var splideContainers = document.querySelectorAll('.tutorlink-carousel.splide');
vendor: 5,595 bytes, lines 11233-11265
11233 for (var _i = 0, _Array$from = Array.from(splideContainers); _i < _Array$from.length; _i++) { 11234 var splideContainer = _Array$from[_i]; 11235 var splideSlides = splideContainer.querySelectorAll('.splide__slide'); 11236 new Splide(splideContainer, { 11237 omitEnd: true, 11238 speed: 750, 11239 perPage: 3, 11240 autoHeight: true, 11241 gap: '1.111em', 11242 focus: 0, 11243 perMove: 1, 11244 arrows: splideSlides.length > 3, 11245 drag: splideSlides.length > 3, 11246 breakpoints: { 11247 '800': { 11248 perPage: 2, 11249 arrows: splideSlides.length > 2, 11250 drag: splideSlides.length > 2 11251 }, 11252 '500': { 11253 perPage: 1, 11254 arrows: splideSlides.length > 1, 11255 drag: splideSlides.length > 1 11256 } 11257 } 11258 }).mount(); 11259 } 11260} 11261// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.concat.js 11262var es_array_concat = __webpack_require__(2222); 11263;// CONCATENATED MODULE: ./src/scripts/components/tutormodal.ts 11264function tutormodal_typeof(obj) { "@babel/helpers - typeof"; return tutormodal_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, tutormodal_typeof(obj); } 11265function tutormodal_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ tutormodal_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == tutormodal_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context);
vendor: 4,705 bytes, line 11265
11265 if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEac
vendor: 4,628 bytes, lines 11265-11298
11265h(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; } 11266 11267 11268 11269 11270 11271 11272 11273 11274 11275 11276 11277 11278 11279 11280 11281 11282 11283 11284 11285function tutormodal_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } 11286function tutormodal_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { tutormodal_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { tutormodal_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } 11287 11288function TutorModal() { 11289 var overlay = document.querySelector(".modal-overlay"); 11290 var tutorModal = document.querySelector(".tutor-modal"); 11291 var tutorImgParent = document.querySelector(".tutor-modal-img"); 11292 var tutorname = document.querySelector(".tutor-modal-name"); 11293 var tutorjobtitle = document.querySelector(".tutor-modal-job-title"); 11294 var tutorbio = document.querySelector(".tutor-modal-bio"); 11295 var tutorbtns = document.querySelectorAll('.tutor-link'); 11296 var closebtn = document.querySelector("a.close"); 11297 var populateTutorDetails = /*#__PURE__*/function () { 11298 var _ref = tutormodal_asyncToGenerator( /*#__PURE__*/tutormodal_regeneratorRuntime().mark(function _callee(tutorId) {
11299 var res, personDetails, img; 11300 return tutormodal_regeneratorRuntime().wrap(function _callee$(_context) { 11301 while (1) switch (_context.prev = _context.next) { 11302 case 0: 11303 _context.prev = 0; 11304 _context.next = 3; 11305 return fetch("/umbraco/api/tutorsapi/GetTutorById?tutorid=".concat(encodeURIComponent(tutorId), "&culture=").concat(window.culture)); 11306 case 3: 11307 res = _context.sent; 11308 if (res.ok) { 11309 _context.next = 6; 11310 break; 11311 } 11312 throw new Error("Request failed: ".concat(res.status)); 11313 case 6: 11314 _context.next = 8; 11315 return res.json(); 11316 case 8: 11317 personDetails = _context.sent; 11318 img = document.createElement("img"); 11319 img.dataset.srcset = personDetails.imageSrcSet; 11320 img.dataset.src = personDetails.imageCrop; 11321 img.alt = "photo of ".concat(personDetails.tutorName); 11322 img.classList.add("lazyload"); 11323 tutorImgParent.replaceChildren(img); 11324 tutorname.textContent = personDetails.tutorName; 11325 tutorjobtitle.textContent = personDetails.jobTitle; 11326 tutorbio.innerHTML = personDetails.bio; 11327 overlay.classList.remove("hidden"); 11328 lazysizes.autoSizer.checkElems(); 11329 tutorModal.focus(); 11330 closebtn.dataset.id = personDetails.id; 11331 _context.next = 27; 11332 break; 11333 case 24: 11334 _context.prev = 24; 11335 _context.t0 = _context["catch"](0); 11336 console.error("Failed to populate tutor details", _context.t0); 11337 case 27: 11338 case "end": 11339 return _context.stop(); 11340 } 11341 }, _callee, null, [[0, 24]]); 11342 })); 11343 return function populateTutorDetails(_x) { 11344 return _ref.apply(this, arguments); 11345 }; 11346 }(); 11347 Array.from(tutorbtns).forEach(function (btn) { 11348 var tutorId = btn.getAttribute('data-id'); 11349 btn.addEventListener('click', function (e) { 11350 e.preventDefault(); 11351 populateTutorDetails(tutorId); 11352 }); 11353 }); 11354 closebtn.addEventListener('click', function (e) { 11355 e.preventDefault(); 11356 overlay === null || overlay === void 0 ? void 0 : overlay.classList.add("hidden"); 11357 var targetid = e.currentTarget.getAttribute('data-id'); 11358 var targetprofile = document.querySelector("a.tutor-link[data-id='" + targetid + "']"); 11359 targetprofile.focus(); 11360 tutorImgParent.childNodes.forEach(function (cn) { 11361 return cn.remove(); 11362 }); 11363 }); 11364} 11365;// CONCATENATED MODULE: ./src/scripts/components/heroactions.ts 11366function HeroActions() { 11367 var videoElm = document.querySelector("#headervideo"); 11368 var videoControlElm = document.querySelector("#headervideocontrol"); 11369 var topMenuElm = document.querySelector("label[for='toggle_menu']"); 11370 var discoverElm = document.querySelector("header .discover"); 11371 var menutoggle = document.querySelector("#toggle_menu"); 11372 var headerBlockElm = document.querySelector("header.header-media"); 11373 var menuActive = false; 11374 var videoPlaying = true; 11375 var init = function init() { 11376 menutoggle.addEventListener('change', function (e) { 11377 if (videoElm) { 11378 if (menutoggle.checked) { 11379 menuActive = true; 11380 videoisplaying(); 11381 } else { 11382 menuActive = false; 11383 videoispaused(); 11384 } 11385 } 11386 }); 11387 if (menutoggle.checked) { 11388 menuActive = true; 11389 videoisplaying(); 11390 } 11391 buttons(); 11392 }; 11393 var videoispaused = function videoispaused() { 11394 if (videoElm) { 11395 videoElm.play(); 11396 } 11397 if (videoControlElm) { 11398 videoControlElm.setAttribute("aria-pressed", "true"); 11399 videoControlElm.innerHTML = "⏸ <span>Pause</span>"; 11400 } 11401 }; 11402 var videoisplaying = function videoisplaying() { 11403 if (videoElm) { 11404 videoElm.pause(); 11405 } 11406 if (videoControlElm) { 11407 videoControlElm.setAttribute("aria-pressed", "false"); 11408 videoControlElm.innerHTML = "▶ <span>Play</span>"; 11409 } 11410 }; 11411 var buttons = function buttons() { 11412 if (discoverElm) { 11413 discoverElm.addEventListener('click', function (e) { 11414 var nextblock = headerBlockElm.nextElementSibling; 11415 scroll({ 11416 top: nextblock.offsetTop, 11417 behavior: "smooth" 11418 }); 11419 }); 11420 } 11421 if (topMenuElm) { 11422 topMenuElm.addEventListener('click', function (e) { 11423 if (menuActive) { 11424 if (videoPlaying) { 11425 videoispaused(); 11426 } 11427 menuActive = false; 11428 } else { 11429 videoisplaying(); 11430 menuActive = true; 11431 } 11432 }); 11433 } 11434 if (videoControlElm) { 11435 videoControlElm.addEventListener('click', function (e) { 11436 if (videoPlaying) { 11437 videoisplaying(); 11438 videoPlaying = false; 11439 } else { 11440 videoispaused(); 11441 videoPlaying = true; 11442 } 11443 }); 11444 } 11445 }; 11446 init(); 11447} 11448// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.exec.js 11449var es_regexp_exec = __webpack_require__(4916); 11450// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.search.js 11451var es_string_search = __webpack_require__(4765); 11452// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.map.js 11453var es_array_map = __webpack_require__(1249); 11454// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.filter.js 11455var es_array_filter = __webpack_require__(7327);
11456// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.includes.js 11457var es_string_includes = __webpack_require__(2023); 11458;// CONCATENATED MODULE: ./node_modules/js-search/dist/esm/js-search.js 11459/** 11460 * Indexes for all substring searches (e.g. the term "cat" is indexed as "c", "ca", "cat", "a", "at", and "t"). 11461 */ 11462var AllSubstringsIndexStrategy = /*#__PURE__*/(/* unused pure expression or super */ null && (function () { 11463 function AllSubstringsIndexStrategy() {} 11464 11465 var _proto = AllSubstringsIndexStrategy.prototype; 11466 11467 /** 11468 * @inheritDocs 11469 */ 11470 _proto.expandToken = function expandToken(token) { 11471 var expandedTokens = []; 11472 var string; 11473 11474 for (var i = 0, length = token.length; i < length; ++i) { 11475 string = ''; 11476 11477 for (var j = i; j < length; ++j) { 11478 string += token.charAt(j); 11479 expandedTokens.push(string); 11480 } 11481 } 11482 11483 return expandedTokens; 11484 }; 11485 11486 return AllSubstringsIndexStrategy; 11487}())); 11488 11489/** 11490 * Indexes for exact word matches. 11491 */ 11492var ExactWordIndexStrategy = /*#__PURE__*/(/* unused pure expression or super */ null && (function () { 11493 function ExactWordIndexStrategy() {} 11494 11495 var _proto = ExactWordIndexStrategy.prototype; 11496 11497 /** 11498 * @inheritDocs 11499 */ 11500 _proto.expandToken = function expandToken(token) { 11501 return token ? [token] : []; 11502 }; 11503 11504 return ExactWordIndexStrategy; 11505}())); 11506 11507/** 11508 * Indexes for prefix searches (e.g. the term "cat" is indexed as "c", "ca", and "cat" allowing prefix search lookups). 11509 */ 11510var PrefixIndexStrategy = /*#__PURE__*/function () { 11511 function PrefixIndexStrategy() {} 11512 11513 var _proto = PrefixIndexStrategy.prototype; 11514 11515 /** 11516 * @inheritDocs 11517 */ 11518 _proto.expandToken = function expandToken(token) { 11519 var expandedTokens = []; 11520 var string = ''; 11521 11522 for (var i = 0, length = token.length; i < length; ++i) { 11523 string += token.charAt(i); 11524 expandedTokens.push(string); 11525 } 11526 11527 return expandedTokens; 11528 }; 11529 11530 return PrefixIndexStrategy; 11531}(); 11532 11533/** 11534 * Enforces case-sensitive text matches. 11535 */ 11536var CaseSensitiveSanitizer = /*#__PURE__*/(/* unused pure expression or super */ null && (function () { 11537 function CaseSensitiveSanitizer() {} 11538 11539 var _proto = CaseSensitiveSanitizer.prototype; 11540 11541 /** 11542 * @inheritDocs 11543 */ 11544 _proto.sanitize = function sanitize(text) { 11545 return text ? text.trim() : ''; 11546 }; 11547 11548 return CaseSensitiveSanitizer; 11549}
vendor: 7,650 bytes, lines 11549-11829
11549())); 11550 11551/** 11552 * Sanitizes text by converting to a locale-friendly lower-case version and triming leading and trailing whitespace. 11553 */ 11554var LowerCaseSanitizer = /*#__PURE__*/function () { 11555 function LowerCaseSanitizer() {} 11556 11557 var _proto = LowerCaseSanitizer.prototype; 11558 11559 /** 11560 * @inheritDocs 11561 */ 11562 _proto.sanitize = function sanitize(text) { 11563 return text ? text.toLocaleLowerCase().trim() : ''; 11564 }; 11565 11566 return LowerCaseSanitizer; 11567}(); 11568 11569/** 11570 * Find and return a nested object value. 11571 * 11572 * @param object to crawl 11573 * @param path Property path 11574 * @returns {any} 11575 */ 11576function getNestedFieldValue(object, path) { 11577 path = path || []; 11578 object = object || {}; 11579 var value = object; // walk down the property path 11580 11581 for (var i = 0; i < path.length; i++) { 11582 value = value[path[i]]; 11583 11584 if (value == null) { 11585 return null; 11586 } 11587 } 11588 11589 return value; 11590} 11591 11592/** 11593 * Search index capable of returning results matching a set of tokens and ranked according to TF-IDF. 11594 */ 11595var TfIdfSearchIndex = /*#__PURE__*/function () { 11596 function TfIdfSearchIndex(uidFieldName) { 11597 this._uidFieldName = uidFieldName; 11598 this._tokenToIdfCache = {}; 11599 this._tokenMap = {}; 11600 } 11601 /** 11602 * @inheritDocs 11603 */ 11604 11605 11606 var _proto = TfIdfSearchIndex.prototype; 11607 11608 _proto.indexDocument = function indexDocument(token, uid, doc) { 11609 this._tokenToIdfCache = {}; // New index invalidates previous IDF caches 11610 11611 var tokenMap = this._tokenMap; 11612 var tokenDatum; 11613 11614 if (typeof tokenMap[token] !== 'object') { 11615 tokenMap[token] = tokenDatum = { 11616 $numDocumentOccurrences: 0, 11617 $totalNumOccurrences: 1, 11618 $uidMap: {} 11619 }; 11620 } else { 11621 tokenDatum = tokenMap[token]; 11622 tokenDatum.$totalNumOccurrences++; 11623 } 11624 11625 var uidMap = tokenDatum.$uidMap; 11626 11627 if (typeof uidMap[uid] !== 'object') { 11628 tokenDatum.$numDocumentOccurrences++; 11629 uidMap[uid] = { 11630 $document: doc, 11631 $numTokenOccurrences: 1 11632 }; 11633 } else { 11634 uidMap[uid].$numTokenOccurrences++; 11635 } 11636 } 11637 /** 11638 * @inheritDocs 11639 */ 11640 ; 11641 11642 _proto.search = function search(tokens, corpus) { 11643 var uidToDocumentMap = {}; 11644 11645 for (var i = 0, numTokens = tokens.length; i < numTokens; i++) { 11646 var token = tokens[i]; 11647 var tokenMetadata = this._tokenMap[token]; // Short circuit if no matches were found for any given token. 11648 11649 if (!tokenMetadata) { 11650 return []; 11651 } 11652 11653 if (i === 0) { 11654 var keys = Object.keys(tokenMetadata.$uidMap); 11655 11656 for (var j = 0, numKeys = keys.length; j < numKeys; j++) { 11657 var uid = keys[j]; 11658 uidToDocumentMap[uid] = tokenMetadata.$uidMap[uid].$document; 11659 } 11660 } else { 11661 var keys = Object.keys(uidToDocumentMap); 11662 11663 for (var j = 0, numKeys = keys.length; j < numKeys; j++) { 11664 var uid = keys[j]; 11665 11666 if (typeof tokenMetadata.$uidMap[uid] !== 'object') { 11667 delete uidToDocumentMap[uid]; 11668 } 11669 } 11670 } 11671 } 11672 11673 var documents = []; 11674 11675 for (var uid in uidToDocumentMap) { 11676 documents.push(uidToDocumentMap[uid]); 11677 } 11678 11679 var calculateTfIdf = this._createCalculateTfIdf(); // Return documents sorted by TF-IDF 11680 11681 11682 return documents.sort(function (documentA, documentB) { 11683 return calculateTfIdf(tokens, documentB, corpus) - calculateTfIdf(tokens, documentA, corpus); 11684 }); 11685 }; 11686 11687 _proto._createCalculateIdf = function _createCalculateIdf() { 11688 var tokenMap = this._tokenMap; 11689 var tokenToIdfCache = this._tokenToIdfCache; 11690 return function calculateIdf(token, documents) { 11691 if (!tokenToIdfCache[token]) { 11692 var numDocumentsWithToken = typeof tokenMap[token] !== 'undefined' ? tokenMap[token].$numDocumentOccurrences : 0; 11693 tokenToIdfCache[token] = 1 + Math.log(documents.length / (1 + numDocumentsWithToken)); 11694 } 11695 11696 return tokenToIdfCache[token]; 11697 }; 11698 }; 11699 11700 _proto._createCalculateTfIdf = function _createCalculateTfIdf() { 11701 var tokenMap = this._tokenMap; 11702 var uidFieldName = this._uidFieldName; 11703 11704 var calculateIdf = this._createCalculateIdf(); 11705 11706 return function calculateTfIdf(tokens, document, documents) { 11707 var score = 0; 11708 11709 for (var i = 0, numTokens = tokens.length; i < numTokens; ++i) { 11710 var token = tokens[i]; 11711 var inverseDocumentFrequency = calculateIdf(token, documents); 11712 11713 if (inverseDocumentFrequency === Infinity) { 11714 inverseDocumentFrequency = 0; 11715 } 11716 11717 var uid; 11718 11719 if (uidFieldName instanceof Array) { 11720 uid = document && getNestedFieldValue(document, uidFieldName); 11721 } else { 11722 uid = document && document[uidFieldName]; 11723 } 11724 11725 var termFrequency = typeof tokenMap[token] !== 'undefined' && typeof tokenMap[token].$uidMap[uid] !== 'undefined' ? tokenMap[token].$uidMap[uid].$numTokenOccurrences : 0; 11726 score += termFrequency * inverseDocumentFrequency; 11727 } 11728 11729 return score; 11730 }; 11731 }; 11732 11733 return TfIdfSearchIndex; 11734}(); 11735 11736/** 11737 * Search index capable of returning results matching a set of tokens but without any meaningful rank or order. 11738 */ 11739var UnorderedSearchIndex = /*#__PURE__*/(/* unused pure expression or super */ null && (function () { 11740 function UnorderedSearchIndex() { 11741 this._tokenToUidToDocumentMap = {}; 11742 } 11743 /** 11744 * @inheritDocs 11745 */ 11746 11747 11748 var _proto = UnorderedSearchIndex.prototype; 11749 11750 _proto.indexDocument = function indexDocument(token, uid, doc) { 11751 if (typeof this._tokenToUidToDocumentMap[token] !== 'object') { 11752 this._tokenToUidToDocumentMap[token] = {}; 11753 } 11754 11755 this._tokenToUidToDocumentMap[token][uid] = doc; 11756 } 11757 /** 11758 * @inheritDocs 11759 */ 11760 ; 11761 11762 _proto.search = function search(tokens, corpus) { 11763 var intersectingDocumentMap = {}; 11764 var tokenToUidToDocumentMap = this._tokenToUidToDocumentMap; 11765 11766 for (var i = 0, numTokens = tokens.length; i < numTokens; i++) { 11767 var token = tokens[i]; 11768 var documentMap = tokenToUidToDocumentMap[token]; // Short circuit if no matches were found for any given token. 11769 11770 if (!documentMap) { 11771 return []; 11772 } 11773 11774 if (i === 0) { 11775 var keys = Object.keys(documentMap); 11776 11777 for (var j = 0, numKeys = keys.length; j < numKeys; j++) { 11778 var uid = keys[j]; 11779 intersectingDocumentMap[uid] = documentMap[uid]; 11780 } 11781 } else { 11782 var keys = Object.keys(intersectingDocumentMap); 11783 11784 for (var j = 0, numKeys = keys.length; j < numKeys; j++) { 11785 var uid = keys[j]; 11786 11787 if (typeof documentMap[uid] !== 'object') { 11788 delete intersectingDocumentMap[uid]; 11789 } 11790 } 11791 } 11792 } 11793 11794 var keys = Object.keys(intersectingDocumentMap); 11795 var documents = []; 11796 11797 for (var i = 0, numKeys = keys.length; i < numKeys; i++) { 11798 var uid = keys[i]; 11799 documents.push(intersectingDocumentMap[uid]); 11800 } 11801 11802 return documents; 11803 }; 11804 11805 return UnorderedSearchIndex; 11806}())); 11807 11808var REGEX = /[^a-zа-ÑÑ0-9\-']+/i; 11809/** 11810 * Simple tokenizer that splits strings on whitespace characters and returns an array of all non-empty substrings. 11811 */ 11812 11813var SimpleTokenizer = /*#__PURE__*/function () { 11814 function SimpleTokenizer() {} 11815 11816 var _proto = SimpleTokenizer.prototype; 11817 11818 /** 11819 * @inheritDocs 11820 */ 11821 _proto.tokenize = function tokenize(text) { 11822 return text.split(REGEX).filter(function (text) { 11823 return text; 11824 } // Filter empty tokens 11825 ); 11826 }; 11827 11828 return SimpleTokenizer; 11829}();
11830 11831/** 11832 * Stemming is the process of reducing search tokens to their root (or stem) so that searches for different forms of a 11833 * word will match. For example "search", "searching" and "searched" are all reduced to the stem "search". 11834 * 11835 * <p>This stemming tokenizer converts tokens (words) to their stem forms before returning them. It requires an 11836 * external stemming function to be provided; for this purpose I recommend the NPM 'porter-stemmer' library. 11837 * 11838 * <p>For more information see http : //tartarus.org/~martin/PorterStemmer/ 11839 */ 11840var StemmingTokenizer = /*#__PURE__*/(/* unused pure expression or super */ null && (function () { 11841 /** 11842 * Constructor. 11843 * 11844 * @param stemmingFunction Function capable of accepting a word and returning its stem. 11845 * @param decoratedIndexStrategy Index strategy to be run after all stop words have been removed. 11846 */ 11847 function StemmingTokenizer(stemmingFunction, decoratedTokenizer) { 11848 this._stemmingFunction = stemmingFunction; 11849 this._tokenizer = decoratedTokenizer; 11850 } 11851 /** 11852 * @inheritDocs 11853 */ 11854 11855 11856 var _proto = StemmingTokenizer.prototype; 11857 11858 _proto.tokenize = function tokenize(text) { 11859 return this._tokenizer.tokenize(text).map(this._stemmingFunction); 11860 }; 11861 11862 return StemmingTokenizer; 11863}())); 11864 11865/** 11866 * Stop words list copied from Lunr JS. 11867 */ 11868var StopWordsMap = { 11869 a: true, 11870 able: true, 11871 about: true, 11872 across: true, 11873 after: true, 11874 all: true, 11875 almost: true, 11876 also: true, 11877 am: true, 11878 among: true, 11879 an: true, 11880 and: true, 11881 any: true, 11882 are: true, 11883 as: true, 11884 at: true, 11885 be: true, 11886 because: true, 11887 been: true, 11888 but: true, 11889 by: true, 11890 can: true, 11891 cannot: true, 11892 could: true, 11893 dear: true, 11894 did: true, 11895 'do': true, 11896 does: true, 11897 either: true, 11898 'else': true, 11899 ever: true, 11900 every: true, 11901 'for': true, 11902 from: true, 11903 'get': true, 11904 got: true, 11905 had: true, 11906 has: true, 11907 have: true, 11908 he: true, 11909 her: true, 11910 hers: true, 11911 him: true, 11912 his: true, 11913 how: true, 11914 however: true, 11915 i: true, 11916 'if': true, 11917 'in': true, 11918 into: true, 11919 is: true, 11920 it: true, 11921 its: true, 11922 just: true, 11923 least: true, 11924 "let": true, 11925 like: true, 11926 likely: true, 11927 may: true, 11928 me: true, 11929 might: true, 11930 most: true, 11931 must: true, 11932 my: true, 11933 neither: true, 11934 no: true, 11935 nor: true, 11936 not: true, 11937 of: true, 11938 off: true, 11939 often: true, 11940 on: true, 11941 only: true, 11942 or: true, 11943 other: true, 11944 our: true, 11945 own: true, 11946 rather: true, 11947 said: true, 11948 say: true, 11949 says: true, 11950 she: true, 11951 should: true, 11952 since: true, 11953 so: true, 11954 some: true, 11955 than: true, 11956 that: true, 11957 the: true, 11958 their: true, 11959 them: true, 11960 then: true, 11961 there: true, 11962 these: true, 11963 they: true, 11964 'this': true, 11965 tis: true, 11966 to: true, 11967 too: true, 11968 twas: true, 11969 us: true, 11970 wants: true, 11971 was: true, 11972 we: true, 11973 were: true, 11974 what: true, 11975 when: true, 11976 where: true, 11977 which: true, 11978 'while': true, 11979 who: true, 11980 whom: true, 11981 why: true, 11982 will: true, 11983 'with': true, 11984 would: true, 11985 yet: true, 11986 you: true, 11987 your: true 11988}; // Prevent false positives for inherited properties 11989 11990StopWordsMap.constructor = false; 11991StopWordsMap.hasOwnProperty = false; 11992StopWordsMap.isPrototypeOf = false; 11993StopWordsMap.propertyIsEnumerable = false; 11994StopWordsMap.toLocaleString = false; 11995StopWordsMap.toString = false; 11996StopWordsMap.valueOf = false; 11997 11998/** 11999 * Stop words are very common (e.g. "a", "and", "the") and are often not semantically meaningful in the context of a 12000 * search. This tokenizer removes stop words from a set of tokens before passing the remaining tokens along for 12001 * indexing or searching purposes. 12002 */ 12003 12004var StopWordsTokenizer = /*#__PURE__*/(/* unused pure expression or super */ null && (function () { 12005 /** 12006 * Constructor. 12007 * 12008 * @param decoratedIndexStrategy Index strategy to be run after all stop words have been removed. 12009 */ 12010 function StopWordsTokenizer(decoratedTokenizer) { 12011 this._tokenizer = decoratedTokenizer; 12012 } 12013 /** 12014 * @inheritDocs 12015 */ 12016 12017 12018 var _proto = StopWordsTokenizer.prototype; 12019 12020 _proto.tokenize = function tokenize(text) { 12021 return this._tokenizer.tokenize(text).filter(function (token) { 12022 return !StopWordsMap[token]; 12023 });
vendor: 10,368 bytes, lines 12024-12338
12024 }; 12025 12026 return StopWordsTokenizer; 12027}())); 12028 12029function js_search_defineProperties(target, props) { 12030 for (var i = 0; i < props.length; i++) { 12031 var descriptor = props[i]; 12032 descriptor.enumerable = descriptor.enumerable || false; 12033 descriptor.configurable = true; 12034 if ("value" in descriptor) descriptor.writable = true; 12035 Object.defineProperty(target, descriptor.key, descriptor); 12036 } 12037} 12038 12039function js_search_createClass(Constructor, protoProps, staticProps) { 12040 if (protoProps) js_search_defineProperties(Constructor.prototype, protoProps); 12041 if (staticProps) js_search_defineProperties(Constructor, staticProps); 12042 return Constructor; 12043} 12044 12045/** 12046 * Simple client-side searching within a set of documents. 12047 * 12048 * <p>Documents can be searched by any number of fields. Indexing and search strategies are highly customizable. 12049 */ 12050var Search = /*#__PURE__*/function () { 12051 /** 12052 * Array containing either a property name or a path (list of property names) to a nested value 12053 */ 12054 12055 /** 12056 * Constructor. 12057 * @param uidFieldName Field containing values that uniquely identify search documents; this field's values are used 12058 * to ensure that a search result set does not contain duplicate objects. 12059 */ 12060 function Search(uidFieldName) { 12061 if (!uidFieldName) { 12062 throw Error('js-search requires a uid field name constructor parameter'); 12063 } 12064 12065 this._uidFieldName = uidFieldName; // Set default/recommended strategies 12066 12067 this._indexStrategy = new PrefixIndexStrategy(); 12068 this._searchIndex = new TfIdfSearchIndex(uidFieldName); 12069 this._sanitizer = new LowerCaseSanitizer(); 12070 this._tokenizer = new SimpleTokenizer(); 12071 this._documents = []; 12072 this._searchableFields = []; 12073 } 12074 /** 12075 * Override the default index strategy. 12076 * @param value Custom index strategy 12077 * @throws Error if documents have already been indexed by this search instance 12078 */ 12079 12080 12081 var _proto = Search.prototype; 12082 12083 /** 12084 * Add a searchable document to the index. Document will automatically be indexed for search. 12085 * @param document 12086 */ 12087 _proto.addDocument = function addDocument(document) { 12088 this.addDocuments([document]); 12089 } 12090 /** 12091 * Adds searchable documents to the index. Documents will automatically be indexed for search. 12092 * @param document 12093 */ 12094 ; 12095 12096 _proto.addDocuments = function addDocuments(documents) { 12097 this._documents = this._documents.concat(documents); 12098 this.indexDocuments_(documents, this._searchableFields); 12099 } 12100 /** 12101 * Add a new searchable field to the index. Existing documents will automatically be indexed using this new field. 12102 * 12103 * @param field Searchable field or field path. Pass a string to index a top-level field and an array of strings for nested fields. 12104 */ 12105 ; 12106 12107 _proto.addIndex = function addIndex(field) { 12108 this._searchableFields.push(field); 12109 12110 this.indexDocuments_(this._documents, [field]); 12111 } 12112 /** 12113 * Search all documents for ones matching the specified query text. 12114 * @param query 12115 * @returns {Array<Object>} 12116 */ 12117 ; 12118 12119 _proto.search = function search(query) { 12120 var tokens = this._tokenizer.tokenize(this._sanitizer.sanitize(query)); 12121 12122 return this._searchIndex.search(tokens, this._documents); 12123 } 12124 /** 12125 * @param documents 12126 * @param _searchableFields Array containing property names and paths (lists of property names) to nested values 12127 * @private 12128 */ 12129 ; 12130 12131 _proto.indexDocuments_ = function indexDocuments_(documents, _searchableFields) { 12132 this._initialized = true; 12133 var indexStrategy = this._indexStrategy; 12134 var sanitizer = this._sanitizer; 12135 var searchIndex = this._searchIndex; 12136 var tokenizer = this._tokenizer; 12137 var uidFieldName = this._uidFieldName; 12138 12139 for (var di = 0, numDocuments = documents.length; di < numDocuments; di++) { 12140 var doc = documents[di]; 12141 var uid; 12142 12143 if (uidFieldName instanceof Array) { 12144 uid = getNestedFieldValue(doc, uidFieldName); 12145 } else { 12146 uid = doc[uidFieldName]; 12147 } 12148 12149 for (var sfi = 0, numSearchableFields = _searchableFields.length; sfi < numSearchableFields; sfi++) { 12150 var fieldValue; 12151 var searchableField = _searchableFields[sfi]; 12152 12153 if (searchableField instanceof Array) { 12154 fieldValue = getNestedFieldValue(doc, searchableField); 12155 } else { 12156 fieldValue = doc[searchableField]; 12157 } 12158 12159 if (fieldValue != null && typeof fieldValue !== 'string' && fieldValue.toString) { 12160 fieldValue = fieldValue.toString(); 12161 } 12162 12163 if (typeof fieldValue === 'string') { 12164 var fieldTokens = tokenizer.tokenize(sanitizer.sanitize(fieldValue)); 12165 12166 for (var fti = 0, numFieldValues = fieldTokens.length; fti < numFieldValues; fti++) { 12167 var fieldToken = fieldTokens[fti]; 12168 var expandedTokens = indexStrategy.expandToken(fieldToken); 12169 12170 for (var eti = 0, nummExpandedTokens = expandedTokens.length; eti < nummExpandedTokens; eti++) { 12171 var expandedToken = expandedTokens[eti]; 12172 searchIndex.indexDocument(expandedToken, uid, doc); 12173 } 12174 } 12175 } 12176 } 12177 } 12178 }; 12179 12180 js_search_createClass(Search, [{ 12181 key: "indexStrategy", 12182 set: function set(value) { 12183 if (this._initialized) { 12184 throw Error('IIndexStrategy cannot be set after initialization'); 12185 } 12186 12187 this._indexStrategy = value; 12188 }, 12189 get: function get() { 12190 return this._indexStrategy; 12191 } 12192 /** 12193 * Override the default text sanitizing strategy. 12194 * @param value Custom text sanitizing strategy 12195 * @throws Error if documents have already been indexed by this search instance 12196 */ 12197 12198 }, { 12199 key: "sanitizer", 12200 set: function set(value) { 12201 if (this._initialized) { 12202 throw Error('ISanitizer cannot be set after initialization'); 12203 } 12204 12205 this._sanitizer = value; 12206 }, 12207 get: function get() { 12208 return this._sanitizer; 12209 } 12210 /** 12211 * Override the default search index strategy. 12212 * @param value Custom search index strategy 12213 * @throws Error if documents have already been indexed 12214 */ 12215 12216 }, { 12217 key: "searchIndex", 12218 set: function set(value) { 12219 if (this._initialized) { 12220 throw Error('ISearchIndex cannot be set after initialization'); 12221 } 12222 12223 this._searchIndex = value; 12224 }, 12225 get: function get() { 12226 return this._searchIndex; 12227 } 12228 /** 12229 * Override the default text tokenizing strategy. 12230 * @param value Custom text tokenizing strategy 12231 * @throws Error if documents have already been indexed by this search instance 12232 */ 12233 12234 }, { 12235 key: "tokenizer", 12236 set: function set(value) { 12237 if (this._initialized) { 12238 throw Error('ITokenizer cannot be set after initialization'); 12239 } 12240 12241 this._tokenizer = value; 12242 }, 12243 get: function get() { 12244 return this._tokenizer; 12245 } 12246 }]); 12247 12248 return Search; 12249}(); 12250 12251/** 12252 * This utility highlights the occurrences of tokens within a string of text. It can be used to give visual indicators 12253 * of match criteria within searchable fields. 12254 * 12255 * <p>For performance purposes this highlighter only works with full-word or prefix token indexes. 12256 */ 12257var TokenHighlighter = /*#__PURE__*/(/* unused pure expression or super */ null && (function () { 12258 /** 12259 * Constructor. 12260 * 12261 * @param opt_indexStrategy Index strategy used by Search 12262 * @param opt_sanitizer Sanitizer used by Search 12263 * @param opt_wrapperTagName Optional wrapper tag name; defaults to 'mark' (e.g. <mark>) 12264 */ 12265 function TokenHighlighter(opt_indexStrategy, opt_sanitizer, opt_wrapperTagName) { 12266 this._indexStrategy = opt_indexStrategy || new PrefixIndexStrategy(); 12267 this._sanitizer = opt_sanitizer || new LowerCaseSanitizer(); 12268 this._wrapperTagName = opt_wrapperTagName || 'mark'; 12269 } 12270 /** 12271 * Highlights token occurrences within a string by wrapping them with a DOM element. 12272 * 12273 * @param text e.g. "john wayne" 12274 * @param tokens e.g. ["wa"] 12275 * @returns {string} e.g. "john <mark>wa</mark>yne" 12276 */ 12277 12278 12279 var _proto = TokenHighlighter.prototype; 12280 12281 _proto.highlight = function highlight(text, tokens) { 12282 var tagsLength = this._wrapText('').length; 12283 12284 var tokenDictionary = Object.create(null); // Create a token map for easier lookup below. 12285 12286 for (var i = 0, numTokens = tokens.length; i < numTokens; i++) { 12287 var token = this._sanitizer.sanitize(tokens[i]); 12288 12289 var expandedTokens = this._indexStrategy.expandToken(token); 12290 12291 for (var j = 0, numExpandedTokens = expandedTokens.length; j < numExpandedTokens; j++) { 12292 var expandedToken = expandedTokens[j]; 12293 12294 if (!tokenDictionary[expandedToken]) { 12295 tokenDictionary[expandedToken] = [token]; 12296 } else { 12297 tokenDictionary[expandedToken].push(token); 12298 } 12299 } 12300 } // Track actualCurrentWord and sanitizedCurrentWord separately in case we encounter nested tags. 12301 12302 12303 var actualCurrentWord = ''; 12304 var sanitizedCurrentWord = ''; 12305 var currentWordStartIndex = 0; // Note this assumes either prefix or full word matching. 12306 12307 for (var i = 0, textLength = text.length; i < textLength; i++) { 12308 var character = text.charAt(i); 12309 12310 if (character === ' ') { 12311 actualCurrentWord = ''; 12312 sanitizedCurrentWord = ''; 12313 currentWordStartIndex = i + 1; 12314 } else { 12315 actualCurrentWord += character; 12316 sanitizedCurrentWord += this._sanitizer.sanitize(character); 12317 } 12318 12319 if (tokenDictionary[sanitizedCurrentWord] && tokenDictionary[sanitizedCurrentWord].indexOf(sanitizedCurrentWord) >= 0) { 12320 actualCurrentWord = this._wrapText(actualCurrentWord); 12321 text = text.substring(0, currentWordStartIndex) + actualCurrentWord + text.substring(i + 1); 12322 i += tagsLength; 12323 textLength += tagsLength; 12324 } 12325 } 12326 12327 return text; 12328 } 12329 /** 12330 * @param text to wrap 12331 * @returns Text wrapped by wrapper tag (e.g. "foo" becomes "<mark>foo</mark>") 12332 * @private 12333 */ 12334 ; 12335 12336 _proto._wrapText = function _wrapText(text) { 12337 var tagName = this._wrapperTagName; 12338 return "<" + tagName + ">
12338" + text + "</" + tagName + ">"; 12339 }; 12340 12341 return TokenHighlighter; 12342}())); 12343 12344 12345 12346;// CONCATENATED MODULE: ./src/scripts/components/faqsearch.ts 12347 12348 12349 12350 12351 12352 12353 12354 12355 12356 12357 12358 12359function FAQSearch() { 12360 var faqWrapperElm = document.querySelector('.faq-block'); 12361 var containerElms = faqWrapperElm.querySelectorAll('.container'); 12362 var faqQAElms = faqWrapperElm.querySelectorAll('.cc-accordion'); 12363 var headerElms = faqWrapperElm.querySelectorAll('.faq-group-header'); 12364 var columnElms = faqWrapperElm.querySelectorAll('.faq-column'); 12365 var clearButtonElm = faqWrapperElm.querySelector('.clearfaqs'); 12366 var searchBoxElm = document.querySelector('.faqsearch'); 12367 var faqGroup = Array(); 12368 faqQAElms.forEach(function (elm) { 12369 var faqData = {}; 12370 var id = crypto.randomUUID(); 12371 elm.setAttribute('data-id', id); 12372 faqData.id = id; 12373 faqData.question = elm.querySelector('.cc-accordion-header [data-question]').getAttribute('data-question'); 12374 var answerElms = elm.querySelectorAll('.cc-accordion-content .answer p'); 12375 var answerText = ''; 12376 answerElms.forEach(function (answerElm) { 12377 answerText += ' ' + answerElm.textContent; 12378 }); 12379 faqData.answer = answerText; 12380 faqGroup.push(faqData); 12381 }); 12382 var options = { 12383 keys: ['question', 'answer'], 12384 findAllMatches: true, 12385 ignoreLocation: true 12386 }; 12387 var search = new Search('id'); 12388 search.indexStrategy = new PrefixIndexStrategy(); 12389 search.sanitizer = new LowerCaseSanitizer(); 12390 search.searchIndex = new TfIdfSearchIndex('id'); 12391 search.addIndex('question'); 12392 search.addIndex('answer'); 12393 search.addDocuments(faqGroup); 12394 if (searchBoxElm) { 12395 searchBoxElm.addEventListener('keyup', function (e) { 12396 if (searchBoxElm.value.length > 2) { 12397 setTimeout(function () { 12398 var results = search.search(searchBoxElm.value); 12399 if (results) { 12400 faqWrapperElm.classList.add('searching'); 12401 headerElms.forEach(function (header) { 12402 header.classList.add('hidden'); 12403 }); 12404 var foundIds = results.map(function (r) { 12405 return r.id; 12406 }); 12407 var toHide = Array.from(faqQAElms).filter(function (item) { 12408 return !foundIds.includes(item.getAttribute('data-id')); 12409 }); 12410 toHide.forEach(function (elm) { 12411 elm.classList.add('hidden'); 12412 }); 12413 columnElms.forEach(function (col) { 12414 var accItems = col.querySelectorAll('.cc-accordion'); 12415 var hidden = 0; 12416 accItems.forEach(function (accItem) { 12417 if (accItem.classList.contains('hidden')) { 12418 hidden += 1; 12419 } 12420 }); 12421 if (accItems.length === hidden) { 12422 col.classList.add('hidden'); 12423 } 12424 }); 12425 containerElms.forEach(function (elm) { 12426 elm.classList.add('hide-row-gap'); 12427 var notHidden = elm.querySelectorAll('.faq-column:not(.hidden)'); 12428 notHidden.forEach(function (nhElm) { 12429 nhElm.classList.add('col-12'); 12430 }); 12431 }); 12432 var acc = accordion.getInstance(); 12433 acc.sizer(); 12434 } 12435 }, 500); 12436 } else if (searchBoxElm.value.length < 3) { 12437 clearResults(); 12438 } 12439 }); 12440 clearButtonElm.addEventListener('click', function (e) { 12441 e.preventDefault(); 12442 searchBoxElm.value = ''; 12443 clearResults(); 12444 }); 12445 } 12446 var clearResults = function clearResults() { 12447 faqQAElms.forEach(function (elm) { 12448 elm.classList.remove('hidden'); 12449 }); 12450 headerElms.forEach(function (header) { 12451 header.classList.remove('hidden'); 12452 }); 12453 columnElms.forEach(function (col) { 12454 col.classList.remove('hidden'); 12455 col.classList.remove('col-12'); 12456 }); 12457 containerElms.forEach(function (elm) { 12458 elm.classList.remove('hide-row-gap'); 12459 }); 12460 faqWrapperElm.classList.remove('searching'); 12461 }; 12462} 12463;// CONCATENATED MODULE: ./src/scripts/components/tablecontainer.ts 12464 12465 12466function TableContainer() { 12467 var tablecontainer = { 12468 tables: [],
12469 init: function init() { 12470 tablecontainer.tables = document.querySelectorAll('.content table'); 12471 tablecontainer.tables.forEach(function (ele) { 12472 tablecontainer.nest(ele); 12473 }); 12474 }, 12475 nest: function nest(table) { 12476 var wrapper = document.createElement('div'); 12477 wrapper.className = 'table-container'; 12478 table.parentNode.insertBefore(wrapper, table); 12479 wrapper.appendChild(table); 12480 } 12481 }; 12482 tablecontainer.init(); 12483} 12484;// CONCATENATED MODULE: ./src/scripts/components/search.ts 12485function search_typeof(obj) { "@babel/helpers - typeof"; return search_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, search_typeof(obj); } 12486 12487 12488 12489 12490 12491 12492 12493 12494 12495 12496 12497 12498 12499function search_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } 12500function search_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, search_toPropertyKey(descriptor.key), descriptor); } } 12501function search_createClass(Constructor, protoProps, staticProps) { if (protoProps) search_defineProperties(Constructor.prototype, protoProps); if (staticProps) search_defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } 12502function search_defineProperty(obj, key, value) { key = search_toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } 12503function search_toPropertyKey(arg) { var key = search_toPrimitive(arg, "string"); return search_typeof(key) === "symbol" ? key : String(key); } 12504function search_toPrimitive(input, hint) { if (search_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (search_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } 12505var search_Search = /*#__PURE__*/function () { 12506 function Search(searchForm) { 12507 search_classCallCheck(this, Search); 12508 search_defineProperty(this, "_searchContextActive", false); 12509 search_defineProperty(this, "_searchForm", undefined); 12510 search_defineProperty(this, "_searchInput", undefined); 12511 search_defineProperty(this, "_resultslistElm", undefined); 12512 search_defineProperty(this, "_searchClose", undefined); 12513 search_defineProperty(this, "_searchSubmitBtn", undefined); 12514 search_defineProperty(this, "_currentId", ''); 12515 this._searchForm = searchForm; 12516 this._searchInput = searchForm.querySelector('.search-input'); 12517 this._resultslistElm = searchForm.querySelector('.contextual-search-results-list'); 12518 this._searchClose = searchForm.querySelector('label.close'); 12519 this._searchSubmitBtn = searchForm.querySelector('button'); 12520 this._currentId = searchForm.getAttribute('data-id'); 12521 this.addEvents(); 12522 this.phSwitch(); 12523 } 12524 search_createClass(Search, [{ 12525 key: "debounce", 12526 value: function debounce(func) { 12527 var _this = this; 12528 var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500; 12529 var timer; 12530 return function () { 12531 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { 12532 args[_key] = arguments[_key]; 12533 } 12534 clearTimeout(timer); 12535 timer = setTimeout(function () { 12536 func.apply(_this, args); 12537 }, timeout); 12538 }; 12539 } 12540 }, { 12541 key: "doSearch", 12542 value: function doSearch() { 12543 var _this2 = this; 12544 this._searchContextActive = true; 12545 var paritalstring = this._searchInput.value; 12546 if (this._resultslistElm) { 12547 if (paritalstring != '' && paritalstring.length > 2) { 12548 var url = '/umbraco/api/searchapi/GetContextualResults?c=' + window.culture + '&id=' + this._currentId + '&searchterm=' + paritalstring; 12549 fetch(url, { 12550 method: 'POST' 12551 }).then(function (res) { 12552 return res.json(); 12553 }).then(function (response) { 12554 _this2._resultslistElm.innerHTML = ""; 12555 if (response.length > 0) { 12556 _this2._resultslistElm.classList.remove('hidden'); 12557 response.forEach(function (group) { 12558 if (group.results.length > 0) { 12559 var groupul = document.createElement('ul'); 12560 var groupnameli = document.createElement('li'); 12561 groupnameli.innerHTML = group.groupName; 12562 groupul.appendChild(groupnameli);
12563 group.results.forEach(function (result) { 12564 var link = document.createElement('a'); 12565 link.href = result.url; 12566 link.innerHTML = result.pageTitle; 12567 link.target = "_self"; 12568 var li = document.createElement('li'); 12569 li.appendChild(link); 12570 groupul.appendChild(li); 12571 }); 12572 var groupli = document.createElement('li'); 12573 groupli.appendChild(groupul); 12574 _this2._resultslistElm.append(groupli); 12575 } 12576 }); 12577 _this2._searchContextActive = true; 12578 } 12579 }).catch(function (error) { 12580 return console.error('Error:', error); 12581 }); 12582 } else { 12583 if (!this._resultslistElm.classList.contains('hidden')) { 12584 this._resultslistElm.classList.add('hidden'); 12585 this._searchContextActive = false; 12586 } 12587 } 12588 } 12589 } 12590 }, { 12591 key: "clearSearch", 12592 value: function clearSearch() { 12593 this._searchInput.value = ''; 12594 if (this._resultslistElm != undefined) { 12595 this._resultslistElm.innerHTML = ''; 12596 } 12597 this._searchContextActive = false; 12598 } 12599 }, { 12600 key: "phSwitch", 12601 value: function phSwitch() { 12602 var txt = window.innerWidth < 400 ? 'Search...' : 'Type here to search the site...'; 12603 this._searchInput.placeholder = txt; 12604 } 12605 }, { 12606 key: "addEvents", 12607 value: function addEvents() { 12608 var _this3 = this; 12609 var instance = this; 12610 document.body.addEventListener('click', function (e) { 12611 if (instance._searchContextActive && e.srcElement != instance._searchSubmitBtn && e.srcElement != instance._searchInput) { 12612 instance.clearSearch(); 12613 } 12614 }, true); 12615 this._searchInput.addEventListener('input', function (e) { 12616 _this3.debounce(_this3.doSearch()).bind(_this3); 12617 }); 12618 window.addEventListener('resize', function (e) { 12619 _this3.phSwitch(); 12620 }); 12621 var observer = new IntersectionObserver(function (entries) { 12622 if (entries[0].isIntersecting) { 12623 entries[0].target.focus(); 12624 } 12625 }, { 12626 threshold: [1] 12627 }); 12628 observer.observe(this._searchInput); 12629 } 12630 }]); 12631 return Search; 12632}(); 12633/* harmony default export */ var search = (search_Search); 12634// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.replace.js 12635var es_string_replace = __webpack_require__(5306); 12636;// CONCATENATED MODULE: ./node_modules/typescript-cookie/dist/typescript-cookie.mjs 12637/*! typescript-cookie v1.0.6 | MIT */ 12638var index = /*#__PURE__*/Object.freeze({ 12639 __proto__: null 12640}); 12641 12642const encodeName = (name) => encodeURIComponent(name) 12643 .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent) 12644 .replace(/[()]/g, escape); 12645const encodeValue = (value) => { 12646 return encodeURIComponent(value).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g, decodeURIComponent); 12647}; 12648const decodeName = decodeURIComponent; 12649const decodeValue = (value) => { 12650 if (value[0] === '"') { 12651 value = value.slice(1, -1); 12652 } 12653 return value.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent); 12654}; 12655 12656function stringifyAttributes(attributes) { 12657 // Copy incoming attributes as to not alter the original object.. 12658 attributes = Object.assign({}, attributes); 12659 if (typeof attributes.expires === 'number') { 12660 attributes.expires = new Date(Date.now() + attributes.expires * 864e5); 12661 } 12662 if (attributes.expires != null) { 12663 attributes.expires = attributes.expires.toUTCString(); 12664 } 12665 return (Object.entries(attributes) 12666 .filter(([key, value]) => value != null && value !== false) 12667 // Considers RFC 6265 section 5.2: 12668 // ... 12669 // 3. If the remaining unparsed-attributes contains a %x3B (";") 12670 // character: 12671 // Consume the characters of the unparsed-attributes up to, 12672 // not including, the first %x3B (";") character. 12673 // ... 12674 .map(([key, value]) => value === true ? `; ${key}` : `; ${key}=${value.split(';')[0]}`) 12675 .join(''));
12676} 12677function get(name, decodeValue, decodeName) { 12678 const scan = /(?:^|; )([^=]*)=([^;]*)/g; 12679 const jar = {}; 12680 let match; 12681 while ((match = scan.exec(document.cookie)) != null) { 12682 try { 12683 const found = decodeName(match[1]); 12684 jar[found] = decodeValue(match[2], found); 12685 if (name === found) { 12686 break; 12687 } 12688 } 12689 catch (e) { } 12690 } 12691 return name != null ? jar[name] : jar; 12692} 12693const DEFAULT_CODEC = Object.freeze({ 12694 decodeName: decodeName, 12695 decodeValue: decodeValue, 12696 encodeName: encodeName, 12697 encodeValue: encodeValue 12698}); 12699const DEFAULT_ATTRIBUTES = Object.freeze({ 12700 path: '/' 12701}); 12702function setCookie(name, value, attributes = DEFAULT_ATTRIBUTES, { encodeValue: encodeValue$1 = encodeValue, encodeName: encodeName$1 = encodeName } = {}) { 12703 return (document.cookie = `${encodeName$1(name)}=${encodeValue$1(value, name)}${stringifyAttributes(attributes)}`); 12704} 12705function getCookie(name, { decodeValue: decodeValue$1 = decodeValue, decodeName: decodeName$1 = decodeName } = {}) { 12706 return get(name, decodeValue$1, decodeName$1); 12707} 12708function getCookies({ decodeValue: decodeValue$1 = decodeValue, decodeName: decodeName$1 = decodeName } = {}) { 12709 return get(undefined, decodeValue$1, decodeName$1); 12710} 12711function removeCookie(name, attributes = DEFAULT_ATTRIBUTES) { 12712 setCookie(name, '', Object.assign({}, attributes, { 12713 expires: -1 12714 })); 12715} 12716 12717function init(converter, defaultAttributes) { 12718 const api = { 12719 set: function (name, value, attributes) { 12720 return setCookie(name, value, Object.assign({}, this.attributes, attributes), { 12721 encodeValue: this.converter.write 12722 }); 12723 }, 12724 get: function (name) { 12725 if (arguments.length === 0) { 12726 return getCookies(this.converter.read); 12727 } 12728 if (name == null) { 12729 return; 12730 } 12731 return getCookie(name, this.converter.read); 12732 }, 12733 remove: function (name, attributes) { 12734 removeCookie(name, Object.assign({}, this.attributes, attributes)); 12735 }, 12736 withAttributes: function (attributes) { 12737 return init(this.converter, Object.assign({}, this.attributes, attributes)); 12738 }, 12739 withConverter: function (converter) { 12740 return init(Object.assign({}, this.converter, converter), this.attributes); 12741 } 12742 }; 12743 const config = { 12744 attributes: { value: Object.freeze(defaultAttributes) }, 12745 converter: { value: Object.freeze(converter) } 12746 }; 12747 return Object.create(api, config); 12748} 12749var compat = init({ read: DEFAULT_CODEC.decodeValue, write: DEFAULT_CODEC.encodeValue }, DEFAULT_ATTRIBUTES); 12750 12751 12752 12753;// CONCATENATED MODULE: ./src/scripts/components/ecom.ts 12754var ecom; 12755(function (_ecom) { 12756 var cartCookieName = _ecom.cartCookieName = 'umbraco-session'; 12757 var apiCartPrefix = _ecom.apiCartPrefix = '/umbraco/api/cartapi/'; 12758 var apiCoursePrefix = _ecom.apiCoursePrefix = '/umbraco/api/courseapi/'; 12759 var storageKey = _ecom.storageKey = 'cart'; 12760 var apiMembershipPrefix = _ecom.apiMembershipPrefix = '/umbraco/api/singleproductapi/'; 12761 var defaultCartAddText = _ecom.defaultCartAddText = 'Add to cart'; 12762 var defaultProcessingCartText = _ecom.defaultProcessingCartText = "Adding..."; 12763 var defaultCompleteCartText = _ecom.defaultCompleteCartText = "✓"; 12764 var defaultFailMessage = _ecom.defaultFailMessage = 'Unable to add to cart, please try again.'; 12765})(ecom || (ecom = {})); 12766; 12767;// CONCATENATED MODULE: ./src/scripts/components/cart.ts 12768function cart_typeof(obj) { "@babel/helpers - typeof"; return cart_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, cart_typeof(obj); } 12769 12770 12771 12772 12773 12774 12775 12776 12777 12778 12779 12780 12781 12782 12783 12784 12785 12786 12787 12788 12789 12790 12791 12792function cart_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ cart_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; }
vendor: 7,633 bytes, line 12792
12792 function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == cart_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEac
vendor: 4,983 bytes, lines 12792-12799
12792h(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; } 12793function cart_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } 12794function cart_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { cart_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { cart_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } 12795function cart_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } 12796function cart_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, cart_toPropertyKey(descriptor.key), descriptor); } } 12797function cart_createClass(Constructor, protoProps, staticProps) { if (protoProps) cart_defineProperties(Constructor.prototype, protoProps); if (staticProps) cart_defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } 12798function cart_defineProperty(obj, key, value) { key = cart_toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } 12799function cart_toPropertyKey(arg) { var key = cart_toPrimitive(arg, "string");
12799 return cart_typeof(key) === "symbol" ? key : String(key); } 12800function cart_toPrimitive(input, hint) { if (cart_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (cart_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } 12801 12802 12803var Cart = /*#__PURE__*/function () { 12804 //private _animateQueue = []; 12805 12806 function Cart() { 12807 var _this = this; 12808 cart_classCallCheck(this, Cart); 12809 cart_defineProperty(this, "cartId", ''); 12810 cart_defineProperty(this, "isCartReady", false); 12811 cart_defineProperty(this, "_cartActiveElm", document.querySelector('.siteheader .cart .cart-active')); 12812 cart_defineProperty(this, "_cartStorage", { 12813 cartId: '', 12814 currency: 0 12815 }); 12816 cart_defineProperty(this, "_modalOverlay", document.querySelector('.basket-modal-overlay')); 12817 cart_defineProperty(this, "_statusDiv", this._modalOverlay.querySelector('.status-text')); 12818 cart_defineProperty(this, "_errordiv", this._modalOverlay.querySelector('.error-div')); 12819 cart_defineProperty(this, "_successdiv", this._modalOverlay.querySelector('.success-div')); 12820 cart_defineProperty(this, "init", /*#__PURE__*/cart_asyncToGenerator( /*#__PURE__*/cart_regeneratorRuntime().mark(function _callee() { 12821 return cart_regeneratorRuntime().wrap(function _callee$(_context) { 12822 while (1) switch (_context.prev = _context.next) { 12823 case 0: 12824 _context.next = 2; 12825 return _this.updateSession(); 12826 case 2: 12827 _context.next = 4; 12828 return _this.updateCartDisplay(); 12829 case 4: 12830 document.addEventListener('click', function (e) { 12831 var target = e.target; 12832 if (target && target.classList.contains('modal-continue') || target.classList.contains('error-close')) { 12833 e.preventDefault(); 12834 _this.resetModal(); 12835 } 12836 }); 12837 _this.isCartReady = true; 12838 case 6: 12839 case "end": 12840 return _context.stop(); 12841 } 12842 }, _callee); 12843 }))); 12844 cart_defineProperty(this, "hasActiveBasketAPI", /*#__PURE__*/function () { 12845 var _ref2 = cart_asyncToGenerator( /*#__PURE__*/cart_regeneratorRuntime().mark(function _callee2(cartId) { 12846 var res, itemsJson; 12847 return cart_regeneratorRuntime().wrap(function _callee2$(_context2) { 12848 while (1) switch (_context2.prev = _context2.next) { 12849 case 0: 12850 _context2.prev = 0; 12851 _context2.next = 3; 12852 return fetch(ecom.apiCartPrefix + 'hasActiveCart?cartId=' + cartId + '&node=' + window.node, { 12853 method: 'GET', 12854 headers: { 12855 "Content-Type": "application/json" 12856 } 12857 }); 12858 case 3: 12859 res = _context2.sent; 12860 if (!res.ok) { 12861 _context2.next = 11; 12862 break; 12863 } 12864 _context2.next = 7; 12865 return res.json(); 12866 case 7: 12867 itemsJson = _context2.sent; 12868 return _context2.abrupt("return", itemsJson); 12869 case 11: 12870 console.log('HTTP error:::' + res.status + ' ' + res.statusText); 12871 case 12: 12872 _context2.next = 17; 12873 break; 12874 case 14: 12875 _context2.prev = 14; 12876 _context2.t0 = _context2["catch"](0); 12877 console.log(_context2.t0); 12878 case 17: 12879 case "end": 12880 return _context2.stop(); 12881 } 12882 }, _callee2, null, [[0, 14]]); 12883 })); 12884 return function (_x) { 12885 return _ref2.apply(this, arguments); 12886 }; 12887 }()); 12888 cart_defineProperty(this, "hasActiveCurrencyAPI", /*#__PURE__*/function () { 12889 var _ref3 = cart_asyncToGenerator( /*#__PURE__*/cart_regeneratorRuntime().mark(function _callee3(cartId) { 12890 var res, itemsJson; 12891 return cart_regeneratorRuntime().wrap(function _callee3$(_context3) { 12892 while (1) switch (_context3.prev = _context3.next) { 12893 case 0: 12894 _context3.prev = 0; 12895 _context3.next = 3; 12896 return fetch(ecom.apiCartPrefix + 'hasActiveCurrency?cartId=' + cartId + '&node=' + window.node, { 12897 method: 'GET', 12898 headers: { 12899 "Content-Type": "application/json" 12900 } 12901 }); 12902 case 3: 12903 res = _context3.sent; 12904 if (!res.ok) { 12905 _context3.next = 11; 12906 break; 12907 } 12908 _context3.next = 7; 12909 return res.json(); 12910 case 7: 12911 itemsJson = _context3.sent; 12912 return _context3.abrupt("return", itemsJson); 12913 case 11: 12914 console.log('HTTP error:::' + res.status + ' ' + res.statusText); 12915 case 12: 12916 _context3.next = 17; 12917 break; 12918 case 14: 12919 _context3.prev = 14; 12920 _context3.t0 = _context3["catch"](0); 12921 console.log(_context3.t0); 12922 case 17: 12923 case "end": 12924 return _context3.stop(); 12925 } 12926 }, _callee3, null, [[0, 14]]); 12927 })); 12928 return function (_x2) { 12929 return _ref3.apply(this, arguments); 12930 }; 12931 }()); 12932 cart_defineProperty(this, "updateCookie", function (cartId, token) {
12933 setCookie(ecom.cartCookieName, token, { 12934 domain: window.location.hostname.replace('www.', ''), 12935 path: '/' 12936 }); 12937 _this._cartStorage.cartId = cartId; 12938 }); 12939 cart_defineProperty(this, "updateSession", /*#__PURE__*/cart_asyncToGenerator( /*#__PURE__*/cart_regeneratorRuntime().mark(function _callee4() { 12940 var token, tokenResponse, hasActiveCurrency; 12941 return cart_regeneratorRuntime().wrap(function _callee4$(_context4) { 12942 while (1) switch (_context4.prev = _context4.next) { 12943 case 0: 12944 //get local storage and update _cartStorage object 12945 _this.getLocalStorage(); 12946 //get cookie data 12947 token = getCookie(ecom.cartCookieName); 12948 if (!token) { 12949 _context4.next = 12; 12950 break; 12951 } 12952 _context4.next = 5; 12953 return _this.getTokenApi(token); 12954 case 5: 12955 tokenResponse = _context4.sent; 12956 _context4.next = 8; 12957 return _this.hasActiveCurrencyAPI(tokenResponse); 12958 case 8: 12959 hasActiveCurrency = _context4.sent; 12960 _this.updateLocalStorage(tokenResponse, hasActiveCurrency ? null : 0); 12961 _context4.next = 13; 12962 break; 12963 case 12: 12964 _this.emptyCartStorage(); 12965 case 13: 12966 case "end": 12967 return _context4.stop(); 12968 } 12969 }, _callee4); 12970 }))); 12971 cart_defineProperty(this, "getTokenApi", /*#__PURE__*/function () { 12972 var _ref5 = cart_asyncToGenerator( /*#__PURE__*/cart_regeneratorRuntime().mark(function _callee5(token) { 12973 var res, itemsJson; 12974 return cart_regeneratorRuntime().wrap(function _callee5$(_context5) { 12975 while (1) switch (_context5.prev = _context5.next) { 12976 case 0: 12977 _context5.prev = 0; 12978 _context5.next = 3; 12979 return fetch(ecom.apiCartPrefix + 'tokenToCartId?token=' + token, { 12980 method: 'POST', 12981 headers: { 12982 "Content-Type": "application/json" 12983 } 12984 }); 12985 case 3: 12986 res = _context5.sent; 12987 if (!res.ok) { 12988 _context5.next = 11; 12989 break; 12990 } 12991 _context5.next = 7; 12992 return res.json(); 12993 case 7: 12994 itemsJson = _context5.sent; 12995 return _context5.abrupt("return", itemsJson); 12996 case 11: 12997 console.log('HTTP error:::' + res.status + ' ' + res.statusText); 12998 case 12: 12999 _context5.next = 17; 13000 break; 13001 case 14: 13002 _context5.prev = 14; 13003 _context5.t0 = _context5["catch"](0); 13004 console.log(_context5.t0); 13005 case 17: 13006 case "end": 13007 return _context5.stop(); 13008 } 13009 }, _callee5, null, [[0, 14]]); 13010 })); 13011 return function (_x3) { 13012 return _ref5.apply(this, arguments); 13013 }; 13014 }()); 13015 cart_defineProperty(this, "addToBasketApi", /*#__PURE__*/function () { 13016 var _ref6 = cart_asyncToGenerator( /*#__PURE__*/cart_regeneratorRuntime().mark(function _callee6(request) { 13017 var res, itemsJson; 13018 return cart_regeneratorRuntime().wrap(function _callee6$(_context6) { 13019 while (1) switch (_context6.prev = _context6.next) { 13020 case 0: 13021 _context6.prev = 0; 13022 _context6.next = 3; 13023 return fetch(ecom.apiCartPrefix + 'addToBasket?node=' + window.node, { 13024 method: 'POST', 13025 headers: { 13026 "Content-Type": "application/json" 13027 }, 13028 body: JSON.stringify(request) 13029 }); 13030 case 3: 13031 res = _context6.sent; 13032 if (!res.ok) { 13033 _context6.next = 11; 13034 break; 13035 } 13036 _context6.next = 7; 13037 return res.json(); 13038 case 7: 13039 itemsJson = _context6.sent; 13040 return _context6.abrupt("return", itemsJson); 13041 case 11: 13042 console.log('HTTP error:::' + res.status + ' ' + res.statusText); 13043 return _context6.abrupt("return", { 13044 errorMessage: res.status + ' ' + res.statusText, 13045 cartId: null, 13046 token: null 13047 }); 13048 case 13: 13049 _context6.next = 19; 13050 break; 13051 case 15: 13052 _context6.prev = 15; 13053 _context6.t0 = _context6["catch"](0); 13054 console.log(_context6.t0); 13055 return _context6.abrupt("return", { 13056 errorMessage: _context6.t0, 13057 cartId: null, 13058 token: null 13059 }); 13060 case 19: 13061 case "end": 13062 return _context6.stop(); 13063 } 13064 }, _callee6, null, [[0, 15]]); 13065 })); 13066 return function (_x4) { 13067 return _ref6.apply(this, arguments); 13068 }; 13069 }()); 13070 cart_defineProperty(this, "canAddToBasket", function (currency) { 13071 if (!_this._cartStorage || _this._cartStorage.currency == 0) { 13072 return true; 13073 } 13074 return +_this._cartStorage.currency == currency; 13075 });
13076 cart_defineProperty(this, "hasActiveBasket", /*#__PURE__*/cart_asyncToGenerator( /*#__PURE__*/cart_regeneratorRuntime().mark(function _callee7() { 13077 var isActive; 13078 return cart_regeneratorRuntime().wrap(function _callee7$(_context7) { 13079 while (1) switch (_context7.prev = _context7.next) { 13080 case 0: 13081 if (!_this._cartStorage.cartId) { 13082 _context7.next = 6; 13083 break; 13084 } 13085 _context7.next = 3; 13086 return _this.hasActiveBasketAPI(_this._cartStorage.cartId); 13087 case 3: 13088 isActive = _context7.sent; 13089 if (!isActive) { 13090 _this.emptyCartStorage(); 13091 } 13092 return _context7.abrupt("return", isActive); 13093 case 6: 13094 case "end": 13095 return _context7.stop(); 13096 } 13097 }, _callee7); 13098 }))); 13099 cart_defineProperty(this, "updateCartDisplay", /*#__PURE__*/cart_asyncToGenerator( /*#__PURE__*/cart_regeneratorRuntime().mark(function _callee8() { 13100 var isActive; 13101 return cart_regeneratorRuntime().wrap(function _callee8$(_context8) { 13102 while (1) switch (_context8.prev = _context8.next) { 13103 case 0: 13104 if (!_this._cartStorage.cartId) { 13105 _context8.next = 5; 13106 break; 13107 } 13108 _context8.next = 3; 13109 return _this.hasActiveBasket(); 13110 case 3: 13111 isActive = _context8.sent; 13112 //if cart exists display cart active 13113 if (isActive) { 13114 _this._cartActiveElm.classList.remove('hidden'); 13115 } else { 13116 if (_this._cartActiveElm) { 13117 _this._cartActiveElm.classList.add('hidden'); 13118 } 13119 } 13120 case 5: 13121 case "end": 13122 return _context8.stop(); 13123 } 13124 }, _callee8); 13125 }))); 13126 cart_defineProperty(this, "addToBasket", /*#__PURE__*/function () { 13127 var _ref9 = cart_asyncToGenerator( /*#__PURE__*/cart_regeneratorRuntime().mark(function _callee9(request, currentElm) { 13128 var response; 13129 return cart_regeneratorRuntime().wrap(function _callee9$(_context9) { 13130 while (1) switch (_context9.prev = _context9.next) { 13131 case 0: 13132 if (!_this.isCartReady) { 13133 _context9.next = 23; 13134 break; 13135 } 13136 if (!(!request || request && !request.sku || !request.currency)) { 13137 _context9.next = 4; 13138 break; 13139 } 13140 _this.showFailMessage(); 13141 return _context9.abrupt("return"); 13142 case 4: 13143 if (_this.canAddToBasket(request.currency)) { 13144 _context9.next = 7; 13145 break; 13146 } 13147 _this.showFailMessage('Unable to add product to cart, all products added to the cart must be in the same currency.'); 13148 return _context9.abrupt("return"); 13149 case 7: 13150 _context9.next = 9; 13151 return _this.addToBasketApi(request); 13152 case 9: 13153 response = _context9.sent; 13154 if (!(response && response.cartId && response.errorMessage == null)) { 13155 _context9.next = 19; 13156 break; 13157 } 13158 _this.updateCookie(response.cartId, response.token); 13159 _this.updateLocalStorage(response.cartId, request.currency); 13160 _context9.next = 15; 13161 return _this.updateCartDisplay(); 13162 case 15: 13163 _this.showSuccessMessage(); 13164 return _context9.abrupt("return"); 13165 case 19: 13166 if (response && response.errorMessage) { 13167 _this.showFailMessage(response.errorMessage); 13168 } else { 13169 _this.showFailMessage(); 13170 } 13171 return _context9.abrupt("return"); 13172 case 21: 13173 _context9.next = 24; 13174 break; 13175 case 23: 13176 _this.showFailMessage(); 13177 case 24: 13178 case "end": 13179 return _context9.stop(); 13180 } 13181 }, _callee9); 13182 })); 13183 return function (_x5, _x6) { 13184 return _ref9.apply(this, arguments); 13185 }; 13186 }()); 13187 } 13188 cart_createClass(Cart, [{ 13189 key: "getLocalStorage", 13190 value: function getLocalStorage() { 13191 var local = localStorage.getItem(ecom.storageKey); 13192 if (local) { 13193 this._cartStorage = JSON.parse(local); 13194 this.cartId = this._cartStorage.cartId; 13195 } 13196 //console.log(this._cartStorage); 13197 } 13198 }, { 13199 key: "setLocalStorage", 13200 value: function setLocalStorage() {
13201 //console.log('setLocalStorage' + ecom.storageKey); 13202 localStorage.setItem(ecom.storageKey, JSON.stringify(this._cartStorage)); 13203 } 13204 }, { 13205 key: "updateLocalStorage", 13206 value: function updateLocalStorage(cartId, currency) { 13207 if (currency || currency === 0) { 13208 this._cartStorage.currency = currency; 13209 } 13210 this._cartStorage.cartId = cartId; 13211 this.cartId = cartId; 13212 this.setLocalStorage(); 13213 } 13214 }, { 13215 key: "emptyCartStorage", 13216 value: function emptyCartStorage() { 13217 this.updateLocalStorage('', 0); 13218 } 13219 }, { 13220 key: "initModal", 13221 value: function initModal() { 13222 this._modalOverlay.classList.remove("hidden"); 13223 } 13224 }, { 13225 key: "showFailMessage", 13226 value: function showFailMessage() { 13227 var failMessage = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ""; 13228 this.initModal(); 13229 if (failMessage == "") { 13230 failMessage = ecom.defaultFailMessage; 13231 } 13232 var errorPara = document.createElement("p"); 13233 errorPara.classList.add("t-c-pink-mid", "t-s-22"); 13234 errorPara.append(failMessage); 13235 this._errordiv.prepend(errorPara); 13236 this._statusDiv.classList.add("hidden"); 13237 this._errordiv.classList.remove("hidden"); 13238 } 13239 }, { 13240 key: "showSuccessMessage", 13241 value: function showSuccessMessage() { 13242 this.initModal(); 13243 this._statusDiv.classList.add("hidden"); 13244 this._successdiv.classList.remove("hidden"); 13245 } 13246 }, { 13247 key: "resetModal", 13248 value: function resetModal() { 13249 this._modalOverlay.classList.add("hidden"); 13250 if (this._statusDiv.classList.contains("hidden")) { 13251 this._statusDiv.classList.remove("hidden"); 13252 } 13253 if (!this._errordiv.classList.contains("hidden")) { 13254 this._errordiv.classList.add("hidden"); 13255 } 13256 if (!this._successdiv.classList.contains("hidden")) { 13257 this._successdiv.classList.add("hidden"); 13258 } 13259 var errorpara = this._errordiv.querySelector('p'); 13260 if (errorpara) { 13261 this._errordiv.removeChild(errorpara); 13262 } 13263 } 13264 }]); 13265 return Cart; 13266}(); 13267cart_defineProperty(Cart, "build", /*#__PURE__*/cart_asyncToGenerator( /*#__PURE__*/cart_regeneratorRuntime().mark(function _callee10() { 13268 var cart; 13269 return cart_regeneratorRuntime().wrap(function _callee10$(_context10) { 13270 while (1) switch (_context10.prev = _context10.next) { 13271 case 0: 13272 cart = new Cart(); 13273 _context10.next = 3; 13274 return cart.init(); 13275 case 3: 13276 return _context10.abrupt("return", cart); 13277 case 4: 13278 case "end": 13279 return _context10.stop(); 13280 } 13281 }, _callee10); 13282}))); 13283/* harmony default export */ var cart = (Cart); 13284;// CONCATENATED MODULE: ./src/scripts/components/productType.ts 13285var ProductType; 13286(function (ProductType) { 13287 ProductType[ProductType["LearningPath"] = 1] = "LearningPath"; 13288 ProductType[ProductType["Standard"] = 2] = "Standard"; 13289 ProductType[ProductType["Bundle"] = 3] = "Bundle"; 13290 ProductType[ProductType["SingleProduct"] = 4] = "SingleProduct"; 13291 ProductType[ProductType["LearningPathNoCohort"] = 5] = "LearningPathNoCohort"; 13292 ProductType[ProductType["SingleProductBundle"] = 6] = "SingleProductBundle"; 13293})(ProductType || (ProductType = {})); 13294;// CONCATENATED MODULE: ./src/scripts/components/singleProduct.ts 13295function singleProduct_typeof(obj) { "@babel/helpers - typeof"; return singleProduct_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, singleProduct_typeof(obj); } 13296function singleProduct_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ singleProduct_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; }
vendor: 7,642 bytes, line 13296
13296 function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == singleProduct_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEac
13296h(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; } 13297 13298 13299 13300 13301 13302 13303 13304 13305 13306 13307 13308 13309 13310 13311 13312 13313 13314 13315 13316 13317function singleProduct_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } 13318function singleProduct_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { singleProduct_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { singleProduct_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } 13319 13320 13321var getProducts = /*#__PURE__*/function () { 13322 var _ref = singleProduct_asyncToGenerator( /*#__PURE__*/singleProduct_regeneratorRuntime().mark(function _callee(country, id, nodeId) { 13323 var res, itemsJson; 13324 return singleProduct_regeneratorRuntime().wrap(function _callee$(_context) { 13325 while (1) switch (_context.prev = _context.next) { 13326 case 0: 13327 _context.prev = 0; 13328 _context.next = 3; 13329 return fetch(ecom.apiMembershipPrefix + 'getSingleProduct', { 13330 method: 'POST', 13331 headers: { 13332 "Content-Type": "application/json" 13333 }, 13334 body: JSON.stringify({ 13335 "country": country, 13336 "id": id, 13337 "nodeId": nodeId 13338 }) 13339 }); 13340 case 3: 13341 res = _context.sent; 13342 if (!res.ok) { 13343 _context.next = 11; 13344 break; 13345 } 13346 _context.next = 7; 13347 return res.json(); 13348 case 7: 13349 itemsJson = _context.sent; 13350 return _context.abrupt("return", itemsJson); 13351 case 11: 13352 console.log('HTTP error:::' + res.status + ' ' + res.statusText); 13353 case 12: 13354 _context.next = 17; 13355 break; 13356 case 14: 13357 _context.prev = 14; 13358 _context.t0 = _context["catch"](0); 13359 console.log(_context.t0); 13360 case 17: 13361 case "end": 13362 return _context.stop(); 13363 } 13364 }, _callee, null, [[0, 14]]); 13365 })); 13366 return function getProducts(_x, _x2, _x3) { 13367 return _ref.apply(this, arguments); 13368 }; 13369}(); 13370var displayProducts = /*#__PURE__*/function () { 13371 var _ref2 = singleProduct_asyncToGenerator( /*#__PURE__*/singleProduct_regeneratorRuntime().mark(function _callee2(country, id, nodeId) { 13372 var membershipContainer, membershipOptions, membershipProducts, html; 13373 return singleProduct_regeneratorRuntime().wrap(function _callee2$(_context2) { 13374 while (1) switch (_context2.prev = _context2.next) { 13375 case 0: 13376 membershipContainer = document.querySelector('.single-product-block[data-id="' + id + '"]'); 13377 membershipOptions = membershipContainer.querySelector('.single-product-options'); 13378 _context2.next = 4; 13379 return getProducts(country, id, nodeId); 13380 case 4: 13381 membershipProducts = _context2.sent; 13382 html = "\n <div class=\"single-product-selections\">\n "; 13383 if (membershipProducts && membershipProducts.length !== 0) {
13384 membershipProducts.forEach(function (product, idx) { 13385 html += "\n <button class=\"block button single-product-option-btn\" data-bundleVariantIds=\"".concat(product.bundleVariantIds.join(','), "\" data-masterId=\"").concat(product.masterProductId, "\" data-currency=\"").concat(product.currency.currencySymbol, "\" data-currencyId=\"").concat(product.currency.currencyId, "\" data-price=\"").concat(product.currency.currencySymbol + product.price, "\">").concat(product.text, "</button>\n "); 13386 }); 13387 html += "\n </div>\n <div class=\"action hidden\">\n <div class=\"price\"></div>\n <button class=\"block button single-product-basket\">".concat(ecom.defaultCartAddText, "</button>\n </div>\n <div class=\"single-product-fail-message hidden\"></div>\n "); 13388 } else { 13389 html = "<div class=\"\">No options found</div>"; 13390 } 13391 membershipOptions.innerHTML = html; 13392 membershipOptions.classList.remove('hidden'); 13393 case 9: 13394 case "end": 13395 return _context2.stop(); 13396 } 13397 }, _callee2); 13398 })); 13399 return function displayProducts(_x4, _x5, _x6) { 13400 return _ref2.apply(this, arguments); 13401 }; 13402}(); 13403var displayFail = function displayFail(failContainer, message) { 13404 failContainer.innerText = message ? message : ecom.defaultFailMessage; 13405 failContainer.classList.remove('hidden'); 13406}; 13407var initialiseBlocksWithDefaultSelector = function initialiseBlocksWithDefaultSelector() { 13408 var blocksWithDefaultSelector = document.querySelectorAll('[data-default-selector]'); 13409 blocksWithDefaultSelector.forEach(function (elm) { 13410 var membershipBlock = elm.closest('.single-product-block'); 13411 var countryId = Number(elm.dataset.defaultSelector); 13412 displayProducts(countryId, membershipBlock.dataset.id, Number(membershipBlock.dataset.node)); 13413 }); 13414}; 13415function SingleProduct() { 13416 initialiseBlocksWithDefaultSelector(); 13417 var memberCountry = document.querySelector('.single-product-country'); 13418 if (memberCountry) { 13419 document.addEventListener('change', /*#__PURE__*/function () { 13420 var _ref3 = singleProduct_asyncToGenerator( /*#__PURE__*/singleProduct_regeneratorRuntime().mark(function _callee3(e) { 13421 var target, elm, selectedOption, membershipBlock, optionsContainerElm; 13422 return singleProduct_regeneratorRuntime().wrap(function _callee3$(_context3) { 13423 while (1) switch (_context3.prev = _context3.next) { 13424 case 0: 13425 target = e.target; 13426 if (target && target.classList.contains('single-product-country')) { 13427 e.preventDefault(); 13428 elm = target; 13429 selectedOption = elm.options[elm.selectedIndex]; 13430 membershipBlock = elm.closest('.single-product-block'); 13431 optionsContainerElm = membershipBlock.querySelector('.single-product-options'); 13432 optionsContainerElm.classList.remove('hidden'); 13433 if (selectedOption.value !== '0') { 13434 displayProducts(Number(selectedOption.value), membershipBlock.dataset.id, Number(membershipBlock.dataset.node)); 13435 } 13436 } 13437 case 2: 13438 case "end": 13439 return _context3.stop(); 13440 } 13441 }, _callee3); 13442 })); 13443 return function (_x7) { 13444 return _ref3.apply(this, arguments); 13445 }; 13446 }()); 13447 } 13448 document.addEventListener('click', /*#__PURE__*/function () { 13449 var _ref4 = singleProduct_asyncToGenerator( /*#__PURE__*/singleProduct_regeneratorRuntime().mark(function _callee4(e) { 13450 var target, membershipContainer, id, price, allOptions, priceElm, addBasketElm, singleProductContainer, selectedOption, currency, bundleVariantIds, mId, basketRequest, failContainer; 13451 return singleProduct_regeneratorRuntime().wrap(function _callee4$(_context4) { 13452 while (1) switch (_context4.prev = _context4.next) { 13453 case 0: 13454 target = e.target; 13455 if (target && target.classList.contains('single-product-option-btn')) { 13456 e.preventDefault(); 13457 membershipContainer = target.closest('.single-product-block'); 13458 id = target.dataset.masterid; 13459 price = target.dataset.price; //deselect all other options 13460 allOptions = membershipContainer.querySelectorAll('.single-product-option-btn'); 13461 allOptions.forEach(function (option) { 13462 option.setAttribute('data-isselected', 'false'); 13463 option.classList.remove('selected'); 13464 }); 13465 target.classList.add('selected'); 13466 //set this option as the selected option 13467 target.dataset.isselected = "true"; 13468 if (id && price) { 13469 //set price 13470 13471 if (membershipContainer) { 13472 priceElm = membershipContainer.querySelector('.price'); 13473 priceElm.innerText = price; 13474 addBasketElm = membershipContainer.querySelector('.action'); 13475 addBasketElm.classList.remove('hidden'); 13476 } 13477 } 13478 } 13479 if (!(target && target.classList.contains('single-product-basket'))) { 13480 _context4.next = 19; 13481 break; 13482 } 13483 e.preventDefault(); 13484 singleProductContainer = target.closest('.single-product-block'); 13485 selectedOption = singleProductContainer.querySelector('.single-product-option-btn[data-isselected="true"]'); 13486 currency = +selectedOption.dataset.currencyid;
13487 bundleVariantIds = selectedOption.dataset.bundlevariantids ? selectedOption.dataset.bundlevariantids.split(',') : null; 13488 mId = selectedOption.dataset.masterid; 13489 if (!(mId && currency)) { 13490 _context4.next = 16; 13491 break; 13492 } 13493 basketRequest = { 13494 sku: mId, 13495 currency: currency, 13496 productType: ProductType.SingleProduct, 13497 cartId: window.Cart.cartId 13498 }; 13499 if (bundleVariantIds) { 13500 basketRequest.bundleSku = bundleVariantIds; 13501 basketRequest.productType = ProductType.SingleProductBundle; 13502 } 13503 _context4.next = 14; 13504 return window.Cart.addToBasket(basketRequest, singleProductContainer); 13505 case 14: 13506 _context4.next = 19; 13507 break; 13508 case 16: 13509 //fail 13510 failContainer = singleProductContainer.querySelector('.single-product-fail-message'); 13511 displayFail(failContainer, ecom.defaultFailMessage); 13512 target.innerText = ecom.defaultCartAddText; 13513 case 19: 13514 case "end": 13515 return _context4.stop(); 13516 } 13517 }, _callee4); 13518 })); 13519 return function (_x8) { 13520 return _ref4.apply(this, arguments); 13521 }; 13522 }()); 13523} 13524// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.reduce.js 13525var es_array_reduce = __webpack_require__(5827); 13526// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.test.js 13527var es_regexp_test = __webpack_require__(7601); 13528;// CONCATENATED MODULE: ./src/scripts/components/enrolment.ts 13529function enrolment_typeof(obj) { "@babel/helpers - typeof"; return enrolment_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, enrolment_typeof(obj); } 13530function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } 13531 13532 13533 13534 13535 13536 13537 13538 13539 13540 13541 13542 13543 13544 13545 13546 13547 13548 13549 13550 13551 13552 13553 13554 13555function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } 13556function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } 13557function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } 13558function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } 13559function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } 13560function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } 13561function enrolment_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ enrolment_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; }
vendor: 7,638 bytes, line 13561
13561 function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == enrolment_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEac
13561h(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; } 13562function enrolment_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } 13563function enrolment_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { enrolment_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { enrolment_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } 13564 13565 13566function InitEnrolmentBlock() { 13567 try { 13568 Enrolment(); 13569 } catch (error) { 13570 console.error('Could not initialise enrolment block', error); 13571 } 13572} 13573function Enrolment() { 13574 var product = {}; 13575 var noCohortSelections = {}; 13576 var noCohortDisplayGroups; 13577 var cachedOptions = null; 13578 var enrolBlock = requireElement('.enrolment-block'); 13579 var enrolContainer = requireElement('.enrol-options'); 13580 var enrolCountry = document.querySelector('.enrol-country'); 13581 var locationSelectContainer = document.querySelector('.location-select-wrapper'); 13582 var locationSelectEl = enrolBlock === null || enrolBlock === void 0 ? void 0 : enrolBlock.querySelector('.enrol-location'); 13583 getOptions(); 13584 if (enrolCountry && locationSelectEl) { 13585 enrolCountry.addEventListener('change', /*#__PURE__*/function () { 13586 var _ref = enrolment_asyncToGenerator( /*#__PURE__*/enrolment_regeneratorRuntime().mark(function _callee(e) { 13587 var elm, selectedOption, enableDependentSelector, locations; 13588 return enrolment_regeneratorRuntime().wrap(function _callee$(_context) { 13589 while (1) switch (_context.prev = _context.next) { 13590 case 0: 13591 e.preventDefault(); 13592 //get enrolments 13593 elm = e.currentTarget; 13594 selectedOption = elm.options[elm.selectedIndex]; 13595 enableDependentSelector = selectedOption.dataset.enableDependentSelector === 'true'; 13596 if (!(selectedOption.value === '0')) { 13597 _context.next = 6; 13598 break; 13599 } 13600 return _context.abrupt("return"); 13601 case 6: 13602 if (!enableDependentSelector) { 13603 _context.next = 14; 13604 break; 13605 } 13606 _context.next = 9; 13607 return getLocations(cachedOptions.id, +selectedOption.value); 13608 case 9: 13609 locations = _context.sent; 13610 if (!locations.length) { 13611 _context.next = 14; 13612 break; 13613 } 13614 clearAndHideVariants(); 13615 displayLocations(locations); 13616 return _context.abrupt("return"); 13617 case 14: 13618 clearAndHideLocations(); 13619 displayVariants(cachedOptions.id, +selectedOption.value); 13620 case 16: 13621 case "end": 13622 return _context.stop(); 13623 } 13624 }, _callee); 13625 })); 13626 return function (_x) { 13627 return _ref.apply(this, arguments); 13628 }; 13629 }()); 13630 locationSelectEl.addEventListener('change', /*#__PURE__*/function () { 13631 var _ref2 = enrolment_asyncToGenerator( /*#__PURE__*/enrolment_regeneratorRuntime().mark(function _callee2(e) { 13632 var elm, selectedLocation, selectedOption; 13633 return enrolment_regeneratorRuntime().wrap(function _callee2$(_context2) { 13634 while (1) switch (_context2.prev = _context2.next) { 13635 case 0: 13636 e.preventDefault(); 13637 elm = e.currentTarget; 13638 selectedLocation = elm.options[elm.selectedIndex]; 13639 if (!(selectedLocation.value === '0')) { 13640 _context2.next = 5; 13641 break; 13642 } 13643 return _context2.abrupt("return"); 13644 case 5: 13645 selectedOption = enrolCountry.options[enrolCountry.selectedIndex]; 13646 if (!(selectedOption.value === '0')) { 13647 _context2.next = 8; 13648 break; 13649 } 13650 return _context2.abrupt("return"); 13651 case 8: 13652 displayVariants(cachedOptions.id, +selectedOption.value, false, selectedLocation.value); 13653 case 9: 13654 case "end": 13655 return _context2.stop(); 13656 } 13657 }, _callee2); 13658 })); 13659 return function (_x2) { 13660 return _ref2.apply(this, arguments); 13661 }; 13662 }()); 13663 } else if (cachedOptions.options.noSelectors) { 13664 displayVariants(cachedOptions.id, null, true); 13665 } 13666 document.addEventListener('click', /*#__PURE__*/function () { 13667 var _ref3 = enrolment_asyncToGenerator( /*#__PURE__*/enrolment_regeneratorRuntime().mark(function _callee3(e) { 13668 var target; 13669 return enrolment_regeneratorRuntime().wrap(function _callee3$(_context3) { 13670 while (1) switch (_context3.prev = _context3.next) { 13671 case 0: 13672 target = e.target; 13673 if (target) { 13674 _context3.next = 3; 13675 break; 13676 } 13677 return _context3.abrupt("return"); 13678 case 3: 13679 if (!target.classList.contains('enrol-basket')) { 13680 _context3.next = 9; 13681 break; 13682 } 13683 e.preventDefault(); 13684 _context3.next = 7; 13685 return handleEnrolBasketClick(target); 13686 case 7: 13687 _context3.next = 10; 13688 break; 13689 case 9: 13690 if (target.classList.contains('no-cohort-select')) { 13691 e.preventDefault(); 13692 handleNoCohortSelectClick(target); 13693 } else if (target.classList.contains('groups-select')) { 13694 e.preventDefault(); 13695 handleGroupsSelectClick(target); 13696 } 13697 case 10: 13698 case "end": 13699 return _context3.stop(); 13700 } 13701 }, _callee3); 13702 })); 13703 return function (_x3) { 13704 return _ref3.apply(this, arguments); 13705 }; 13706 }()); 13707 function requireElement(selector) { 13708 var el = document.querySelector(selector); 13709 if (!el) { 13710 throw new Error("Required element not found: ".concat(selector)); 13711 } 13712 return el; 13713 } 13714 function getOptions() { 13715 if (cachedOptions) { 13716 return cachedOptions; 13717 } 13718 var el = document.querySelector('#enrolment-config'); 13719 if (!el || !el.textContent) { 13720 throw new Error('enrolment-config not found'); 13721 } 13722 cachedOptions = JSON.parse(el.textContent); 13723 return cachedOptions; 13724 } 13725 function getMethods(_x4, _x5) { 13726 return _getMethods.apply(this, arguments); 13727 } 13728 function _getMethods() { 13729 _getMethods = enrolment_asyncToGenerator( /*#__PURE__*/enrolment_regeneratorRuntime().mark(function _callee4(nodeId, selector) { 13730 var noSelectors, 13731 locationFilter, 13732 res, 13733 itemsJson, 13734 _args4 = arguments; 13735 return enrolment_regeneratorRuntime().wrap(function _callee4$(_context4) { 13736 while (1) switch (_context4.prev = _context4.next) { 13737 case 0: 13738 noSelectors = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : false; 13739 locationFilter = _args4.length > 3 ? _args4[3] : undefined; 13740 _context4.prev = 2; 13741 _context4.next = 5; 13742 return fetch(ecom.apiCoursePrefix + 'getEnrolments', { 13743 method: 'POST', 13744 headers: { 13745 'Content-Type': 'application/json' 13746 }, 13747 body: JSON.stringify({ 13748 selector: selector !== null && selector !== void 0 ? selector : 0, 13749 nodeId: nodeId, 13750 cartId: window.Cart.cartId, 13751 noSelectors: noSelectors, 13752 culture: window.culture, 13753 locationFilter: locationFilter 13754 }) 13755 }); 13756 case 5: 13757 res = _context4.sent; 13758 if (!res.ok) { 13759 _context4.next = 13; 13760 break; 13761 } 13762 _context4.next = 9; 13763 return res.json(); 13764 case 9: 13765 itemsJson = _context4.sent; 13766 return _context4.abrupt("return", itemsJson); 13767 case 13: 13768 console.log('HTTP error:::' + res.status + ' ' + res.statusText); 13769 case 14: 13770 _context4.next = 19; 13771 break; 13772 case 16: 13773 _context4.prev = 16; 13774 _context4.t0 = _context4["catch"](2); 13775 console.log(_context4.t0); 13776 case 19: 13777 case "end": 13778 return _context4.stop(); 13779 } 13780 }, _callee4, null, [[2, 16]]); 13781 })); 13782 return _getMethods.apply(this, arguments); 13783 } 13784 function displayVariants(_x6, _x7) { 13785 return _displayVariants.apply(this, arguments); 13786 } 13787 function _displayVariants() { 13788 _displayVariants = enrolment_asyncToGenerator( /*#__PURE__*/enrolment_regeneratorRuntime().mark(function _callee5(nodeId, selector) { 13789 var noSelectors, 13790 locationFilter, 13791 html, 13792 _args5 = arguments; 13793 return enrolment_regeneratorRuntime().wrap(function _callee5$(_context5) { 13794 while (1) switch (_context5.prev = _context5.next) { 13795 case 0: 13796 noSelectors = _args5.length > 2 && _args5[2] !== undefined ? _args5[2] : false; 13797 locationFilter = _args5.length > 3 ? _args5[3] : undefined; 13798 _context5.next = 4; 13799 return getMethods(nodeId, selector, noSelectors, locationFilter); 13800 case 4: 13801 product = _context5.sent; 13802 html = ''; //if the product doesn't have a group we will assume it is unpublished 13803 if (!product.groups || product.groups.length === 0) { 13804 html = renderUnavailableProduct(); 13805 } else if (product.productType !== ProductType.LearningPathNoCohort) { 13806 html = renderStandardVariants(product); 13807 } else { 13808 html = renderNoCohortVariants(product); 13809 } 13810 enrolContainer.innerHTML = html; 13811 enrolContainer.classList.remove('hidden'); 13812 noCohortDisplayGroups = document.querySelectorAll('.no-cohort-group'); 13813 case 10: 13814 case "end": 13815 return _context5.stop(); 13816 } 13817 }, _callee5); 13818 })); 13819 return _displayVariants.apply(this, arguments); 13820 } 13821 function renderNoCohortVariants(product) { 13822 var html = ''; 13823 13824 //initialize selections array from groups data 13825 noCohortSelections.selections = new Array(product.groups.length); 13826 noCohortSelections.selections = _toConsumableArray(noCohortSelections.selections); 13827 product.groups.forEach(function (group, idx) { 13828 //we have a no cohort learning path 13829 var htmlSegment = "<div class=\"no-cohort-group ".concat(idx === 0 ? 'open' : '', "\">\n Module ").concat(idx + 1, ": <strong>").concat(group.groupMasterProduct.description, "</strong>\n </div>"); 13830 if (idx === 0) { 13831 htmlSegment += noCohortsGroupBuilder(idx); 13832 } 13833 html += htmlSegment; 13834 });
13835 html += "<div class=\"no-cohort-cart-wrapper\">\n <div class=\"no-cohort-cart-button-wrapper radius-1\">\n <div>".concat(product.currency.currencySymbol + product.price, "</div>\n <button class=\"block button enrol-btn enrol-basket\">").concat(ecom.defaultCartAddText, "</button>\n </div>\n </div>"); 13836 return html; 13837 } 13838 function renderStandardVariants(product) { 13839 var html = ''; 13840 var productGroup = product.groups; 13841 13842 //if we have no cohorts then there will only be one element in array 13843 var enrolmentMethods = productGroup[0].items; 13844 if (enrolmentMethods && enrolmentMethods.length !== 0) { 13845 enrolmentMethods.forEach(function (method, idx) { 13846 var displayStartDate = ''; 13847 if (method.startDate) { 13848 if (method.startDate.displayDate) { 13849 displayStartDate = method.startDate.displayDate; 13850 } else { 13851 displayStartDate = method.startDate.dateFormatted.toString(); 13852 } 13853 } 13854 var displayEndDate = ''; 13855 if (method.endDate && method.endDate.displayDate) { 13856 if (method.startDate.displayDate) { 13857 displayEndDate = method.endDate.displayDate; 13858 } 13859 } 13860 13861 //if the method is classroom we don't want to display it due to confusion 13862 //between classroom and virtual 13863 var htmlSegment = "<div class=\"enrolment bg-white radius-1\">\n <div class=\"event-variant\">\n <div>".concat(method.method.toLowerCase() === 'classroom' ? '' : method.method, "</div>\n <div class=\"enrol-desc\">").concat(method.description ? method.description : '').concat(method.location ? '<br>' + method.location : '').concat(method.venue ? '<br>' + method.venue : '').concat(method.speaker ? '<br><strong>Speaker:</strong> ' + method.speaker : '').concat(displayStartDate ? '<br><strong>Starts:</strong> ' + displayStartDate : '', " ").concat(displayEndDate ? '<strong>Ends:</strong> ' + displayEndDate : '', "</div>\n <div>").concat(method.method.toLowerCase() === 'partner' ? '' : method.currency.currencySymbol + method.price, "</div>\n ").concat(function () { 13864 if (method.method.toLowerCase() === 'partner') { 13865 return "<div class=\"enrol-wrapper\"><a class=\"block button enrol-btn\" href=\"".concat(method.partnerLink, "\" target=\"_blank\">Enrol with our partner</a></div>"); 13866 } else { 13867 var buttonConfig = { 13868 label: ecom.defaultCartAddText, 13869 css: 'enrol-basket' 13870 }; 13871 if (product.productType === ProductType.LearningPath) { 13872 buttonConfig.label = 'Select'; 13873 buttonConfig.css = 'groups-select'; 13874 } 13875 return "<div class=\"enrol-wrapper\"><button class=\"block button enrol-btn ".concat(method.quantityAvailable === 0 ? 'sold-out' : buttonConfig.css, "\" ").concat(method.quantityAvailable === 0 ? 'disabled' : '', " data-index=\"").concat(idx, "\">").concat(method.quantityAvailable === 0 ? 'Sold Out' : buttonConfig.label, "</button></div>"); 13876 } 13877 }(), "\n </div>\n </div>"); 13878 html += htmlSegment; 13879 }); 13880 } else if ((enrolCountry === null || enrolCountry === void 0 ? void 0 : enrolCountry.value) !== '0' && (!enrolmentMethods || enrolmentMethods && enrolmentMethods.length === 0)) { 13881 html = "<div class=\"\">No course dates found</div>"; 13882 } 13883 return html; 13884 } 13885 function renderUnavailableProduct() { 13886 return "<div>This product is currently unavailable.</div>"; 13887 } 13888 function clearAndHideVariants() { 13889 if (!enrolContainer) return; 13890 enrolContainer.classList.add('hidden'); 13891 enrolContainer.innerHTML = ''; 13892 } 13893 function getLocations(_x8, _x9) { 13894 return _getLocations.apply(this, arguments); 13895 } 13896 function _getLocations() { 13897 _getLocations = enrolment_asyncToGenerator( /*#__PURE__*/enrolment_regeneratorRuntime().mark(function _callee6(nodeId, selector) { 13898 var res; 13899 return enrolment_regeneratorRuntime().wrap(function _callee6$(_context6) { 13900 while (1) switch (_context6.prev = _context6.next) { 13901 case 0: 13902 _context6.prev = 0; 13903 _context6.next = 3; 13904 return fetch(ecom.apiCoursePrefix + 'getLocations', { 13905 method: 'POST', 13906 headers: { 13907 'Content-Type': 'application/json' 13908 }, 13909 body: JSON.stringify({ 13910 selector: selector !== null && selector !== void 0 ? selector : 0, 13911 nodeId: nodeId, 13912 cartId: window.Cart.cartId, 13913 noSelectors: false, 13914 culture: window.culture 13915 }) 13916 }); 13917 case 3: 13918 res = _context6.sent; 13919 if (!res.ok) { 13920 _context6.next = 10; 13921 break; 13922 } 13923 _context6.next = 7; 13924 return res.json(); 13925 case 7: 13926 return _context6.abrupt("return", _context6.sent); 13927 case 10: 13928 console.log('HTTP error:::' + res.status + ' ' + res.statusText); 13929 case 11: 13930 _context6.next = 16; 13931 break; 13932 case 13: 13933 _context6.prev = 13; 13934 _context6.t0 = _context6["catch"](0); 13935 console.log(_context6.t0); 13936 case 16: 13937 return _context6.abrupt("return", []); 13938 case 17: 13939 case "end": 13940 return _context6.stop(); 13941 } 13942 }, _callee6, null, [[0, 13]]); 13943 })); 13944 return _getLocations.apply(this, arguments); 13945 } 13946 function displayLocations(locations) { 13947 if (!locationSelectContainer || !locationSelectEl) return; 13948 var html = ''; 13949 html += "<option value=\"0\">Select a location</option>"; 13950 var _iterator = _createForOfIteratorHelper(locations), 13951 _step; 13952 try { 13953 for (_iterator.s();
13953 !(_step = _iterator.n()).done;) { 13954 var location = _step.value; 13955 html += "<option value=\"".concat(location, "\">").concat(location, "</option>"); 13956 } 13957 } catch (err) { 13958 _iterator.e(err); 13959 } finally { 13960 _iterator.f(); 13961 } 13962 locationSelectEl.innerHTML = html; 13963 locationSelectContainer.classList.remove('hidden'); 13964 } 13965 function clearAndHideLocations() { 13966 if (!locationSelectContainer || !locationSelectEl) return; 13967 locationSelectContainer.classList.add('hidden'); 13968 locationSelectEl.innerHTML = ''; 13969 } 13970 function cohortGroupsBuilder(groups, variantIndex) { 13971 var htmlSegment = ""; 13972 if (groups) { 13973 htmlSegment += "<div class=\"cohort-groups-outer pl-1 pr-1\"><h5>Select your group:</h5><div class=\"cohort-groups-wrapper\" data-index=\"".concat(variantIndex, "\">"); 13974 groups.forEach(function (group, idx) { 13975 htmlSegment += "<div class=\"cohort-group\" >"; 13976 group.events.forEach(function (group) { 13977 htmlSegment += "<div class=\"cohort-group-event t-s-14\">\n <div class=\"t-w-700\">".concat(group.name, "</div>\n <div><span class=\"t-w-700\">Starts: </span>").concat(group.startDate.displayDate, "</div>\n </div>"); 13978 }); 13979 htmlSegment += "<button class=\"block button enrol-btn enrol-basket\" data-index=\"".concat(idx, "\">").concat(ecom.defaultCartAddText, "</button>"); 13980 htmlSegment += '</div>'; 13981 }); 13982 htmlSegment += "<div>"; 13983 } 13984 return htmlSegment; 13985 } 13986 function noCohortsDisplayGroup(groupIndex) { 13987 if (groupIndex < noCohortDisplayGroups.length) { 13988 var currentGroupElm = noCohortDisplayGroups[groupIndex]; 13989 if (currentGroupElm && !currentGroupElm.classList.contains('open')) { 13990 var htmlString = noCohortsGroupBuilder(groupIndex); 13991 currentGroupElm.insertAdjacentHTML('afterend', htmlString); 13992 currentGroupElm.classList.add('open'); 13993 } 13994 } 13995 } 13996 function noCohortsGroupBuilder(groupIndex) { 13997 var buildFor = product.groups[groupIndex]; 13998 var htmlSegment = '<div class="no-cohort-selections"><div>Select one event</div>'; 13999 buildFor.items.forEach(function (item, idx) { 14000 var displayDate = ''; 14001 if (item.startDate) { 14002 if (item.startDate.displayDate) { 14003 displayDate = item.startDate.displayDate; 14004 } else { 14005 displayDate = item.startDate.dateFormatted.toString(); 14006 } 14007 } 14008 htmlSegment += "<div class=\"enrolment no-cohort bg-white radius-1\">\n <div class=\"event-variant\">\n <div class=\"enrol-desc\">".concat(item.description ? item.description : '', "</div>\n <div>").concat(displayDate ? "<span class=\"t-w-700\">Starts:</span>".concat(displayDate) : "", "</div>\n <div class=\"enrol-wrapper\"><button class=\"block button no-cohort-select\" ").concat(item.quantityAvailable === 0 ? 'disabled' : '', " data-groupindex=\"").concat(groupIndex, "\" data-index=\"").concat(idx, "\">Select</button></div>\n </div>\n </div>"); 14009 }); 14010 return htmlSegment += '</div>'; 14011 } 14012 function disableButton(button) { 14013 button.setAttribute('disabled', 'true'); 14014 } 14015 function enableButton(button) { 14016 button.removeAttribute('disabled'); 14017 } 14018 function handleGroupsSelectClick(target) { 14019 var eventVariantElm = target.closest('.event-variant'); 14020 var currentEventVariant = enrolBlock.querySelector('.event-variant.selected'); 14021 var currentSelectButton = null; 14022 var currentCohortGroupsOuterElm = null; 14023 if (currentEventVariant) { 14024 currentSelectButton = currentEventVariant.querySelector('.groups-select'); 14025 currentCohortGroupsOuterElm = currentEventVariant.nextElementSibling; 14026 } 14027 14028 //First remove existing selected cohort 14029 //slide up the block first then remove 14030 // TODO need to add animation 14031 if (currentEventVariant) { 14032 currentEventVariant.classList.remove('selected'); 14033 } 14034 if (currentSelectButton) { 14035 currentSelectButton.innerText = 'Select'; 14036 } 14037 if (currentCohortGroupsOuterElm) { 14038 currentCohortGroupsOuterElm.remove(); 14039 } 14040 eventVariantElm.classList.add('selected'); 14041 target.innerText = 'Selected'; 14042 var idx = target.dataset.index; 14043 if (idx) { 14044 var currentVariant = product.groups[0].items[idx]; 14045 var groups = currentVariant.cohortGroups; 14046 var htmlString = cohortGroupsBuilder(groups, idx); 14047 target.closest('.event-variant').insertAdjacentHTML('afterend', htmlString); 14048 } 14049 } 14050 function handleNoCohortSelectClick(target) { 14051 //disable button so can't be clicked again 14052 disableButton(target); 14053 var idx = target.dataset.index; 14054 if (idx) { 14055 var selectedVariant; 14056 var currentGroupIdx = +target.dataset.groupindex; 14057 selectedVariant = product.groups[currentGroupIdx].items[idx]; 14058 14059 //first deselect 14060 var currentGroupElm = noCohortDisplayGroups[currentGroupIdx]; 14061 var noCohortSelectGroup = currentGroupElm.nextElementSibling; 14062 14063 //reset existing button 14064 if (noCohortSelectGroup && noCohortSelectGroup.classList.contains('no-cohort-selections')) { 14065 var selectedEvent = noCohortSelectGroup.querySelector('.selected'); 14066 if (selectedEvent) { 14067 selectedEvent.classList.remove('selected'); 14068 var selectButtonElm = selectedEvent.querySelector('.no-cohort-select'); 14069 selectButtonElm.textContent = 'Select'; 14070 enableButton(selectButtonElm); 14071 } 14072 } 14073 if (!noCohortSelections.masterProductSKU) { 14074 noCohortSelections.masterProductSKU = product.sku; 14075 } 14076 noCohortSelections.selections[currentGroupIdx] = selectedVariant.sku; 14077 14078 //update new button 14079 var parent = target.closest('.no-cohort'); 14080 parent.classList.add('selected'); 14081 target.textContent = 'Selected'; 14082 noCohortsDisplayGroup(currentGroupIdx + 1); 14083 } 14084 } 14085 function handleEnrolBasketClick(_x10) { 14086 return _handleEnrolBasketClick.apply(this, arguments); 14087 } 14088 function _handleEnrolBasketClick() { 14089 _handleEnrolBasketClick = enrolment_asyncToGenerator( /*#__PURE__*/enrolment_regeneratorRuntime().mark(function _callee7(target) { 14090 var selectionsValid, basketRequest, lpEarlistVariant, currentWrapperElm, variantIdx, groupIdx, currentVariant, selectedGroup, idx, _currentVariant; 14091 return enrolment_regeneratorRuntime().wrap(function _callee7$(_context7) { 14092 while (1) switch (_context7.prev = _context7.next) { 14093 case 0: 14094 disableButton(target); 14095 selectionsValid = true; 14096 basketRequest = { 14097 productType: product.productType, 14098 cartId: window.Cart.cartId 14099 }; 14100 if (product.productType === ProductType.LearningPathNoCohort) { 14101 //this is a no cohort learning path 14102 //check we have all groups selected 14103 if (noCohortSelections.selections) { 14104 noCohortSelections.selections.forEach(function (sel) { 14105 if (!sel) { 14106 selectionsValid = false; 14107 } 14108 }); 14109 } 14110 if (selectionsValid) { 14111 //find start date 14112 lpEarlistVariant = product.groups[0].items.reduce(function (prev, current, idx) { 14113 var prevSplitDate = prev.startDate.dateFormatted.toString().split('/'); 14114 var currentSplitDate = current.startDate.dateFormatted.toString().split('/'); 14115 var prevDate = new Date(+prevSplitDate[2], +prevSplitDate[1] - 1, +prevSplitDate[0]); 14116 var currentDate = new Date(+currentSplitDate[2], +currentSplitDate[1] - 1, +currentSplitDate[0]); 14117 return prevDate.getTime() < currentDate.getTime() ? prev : current; 14118 }); 14119 basketRequest.sku = noCohortSelections.masterProductSKU; 14120 basketRequest.bundleSku = noCohortSelections.selections; 14121 basketRequest.startDate = lpEarlistVariant.startDate.dateFormatted; 14122 basketRequest.currency = product.currency.currencyId; 14123 } else { 14124 window.Cart.showFailMessage('Please select an event from each Module.'); 14125 } 14126 } else if (product.productType === ProductType.LearningPath) { 14127 currentWrapperElm = target.closest('.cohort-groups-wrapper'); 14128 variantIdx = ''; 14129 groupIdx = target.dataset.index; 14130 if (currentWrapperElm) { 14131 variantIdx = currentWrapperElm.dataset.index; 14132 } else { 14133 //if currentWrapperElm doesn't exist 14134 //we must be in a one group variant 14135 variantIdx = target.dataset.index; 14136 groupIdx = '0'; 14137 } 14138 if (variantIdx && groupIdx) { 14139 currentVariant = product.groups[0].items[variantIdx]; 14140 selectedGroup = currentVariant.cohortGroups[groupIdx]; 14141 basketRequest.bundleSku = selectedGroup.courseSKUs; 14142 basketRequest.sku = currentVariant.sku; 14143 basketRequest.currency = currentVariant.currency.currencyId; 14144 basketRequest.startDate = selectedGroup.startDate.dateFormatted; 14145 } 14146 } else { 14147 idx = target.dataset.index; 14148 if (idx) { 14149 _currentVariant = product.groups[0].items[idx]; 14150 basketRequest.sku = _currentVariant.sku; 14151 basketRequest.currency = _currentVariant.currency.currencyId; 14152 basketRequest.startDate = _currentVariant.startDate.dateFormatted; 14153 } 14154 } 14155 if (!selectionsValid) { 14156 _context7.next = 7; 14157 break; 14158 } 14159 _context7.next = 7; 14160 return window.Cart.addToBasket(basketRequest, enrolBlock); 14161 case 7: 14162 enableButton(target); 14163 case 8: 14164 case "end": 14165 return _context7.stop(); 14166 } 14167 }, _callee7); 14168 })); 14169 return _handleEnrolBasketClick.apply(this, arguments); 14170 } 14171} 14172;// CONCATENATED MODULE: ./src/scripts/index.ts 14173function scripts_typeof(obj) { "@babel/helpers - typeof"; return scripts_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, scripts_typeof(obj); } 14174function scripts_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ scripts_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; }
vendor: 7,636 bytes, line 14174
14174 function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == scripts_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEac
vendor: 4,564 bytes, lines 14174-14221
14174h(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; } 14175 14176 14177 14178 14179 14180 14181 14182 14183 14184 14185 14186 14187 14188 14189 14190 14191 14192function scripts_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } 14193function scripts_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { scripts_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { scripts_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } 14194 14195 14196 14197 14198 14199 14200 14201 14202 14203 14204 14205 14206 14207 14208document.addEventListener('DOMContentLoaded', /*#__PURE__*/scripts_asyncToGenerator( /*#__PURE__*/scripts_regeneratorRuntime().mark(function _callee() { 14209 var contextSearch; 14210 return scripts_regeneratorRuntime().wrap(function _callee$(_context) { 14211 while (1) switch (_context.prev = _context.next) { 14212 case 0: 14213 _context.next = 2; 14214 return cart.build(); 14215 case 2: 14216 window.Cart = _context.sent; 14217 if (document.querySelector('div[data-youtube]')) { 14218 Video(); 14219 } 14220 contextSearch = document.querySelectorAll('.form-contextualsearch'); 14221 if (contextSearch) {
14222 contextSearch.forEach(function (cs) { 14223 new search(cs); 14224 }); 14225 } 14226 if (document.querySelector('.cc-accordion')) { 14227 accordion.getInstance(); 14228 } 14229 if (document.querySelector('.cc-primary-nav')) { 14230 Nav(); 14231 } 14232 if (document.querySelector('.tutorlink-carousel.splide')) { 14233 TutorCarousel(); 14234 } 14235 if (document.querySelector('.tutorlink,.personlink')) { 14236 TutorModal(); 14237 } 14238 if (document.querySelector('.header-media')) { 14239 HeroActions(); 14240 } 14241 if (document.querySelector('.enrolment-block')) { 14242 InitEnrolmentBlock(); 14243 } 14244 if (document.querySelector('.faq-block')) { 14245 FAQSearch(); 14246 } 14247 if (document.querySelector('.content table')) { 14248 TableContainer(); 14249 } 14250 if (document.querySelector('.single-product-block')) { 14251 SingleProduct(); 14252 } 14253 case 15: 14254 case "end": 14255 return _context.stop(); 14256 } 14257 }, _callee); 14258}))); 14259}(); 14260/******/ })() 14261;
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.