WooCommerce Admin - Version 1.7.4

Version Description

2021-09-21 =

  • Fix unsecured reports
Download this release

Release Info

Developer joshuaflow
Plugin Icon 128x128 WooCommerce Admin
Version 1.7.4
Comparing to
See all releases

Code changes from version 2.2.6 to 1.7.4

Files changed (1) hide show
  1. dist/app/index.js +14109 -11349
dist/app/index.js CHANGED
@@ -35,7 +35,7 @@ this["wc"] = this["wc"] || {}; this["wc"]["app"] =
35
  /******/
36
  /******/ // object to store loaded CSS chunks
37
  /******/ var installedCssChunks = {
38
- /******/ 21: 0
39
  /******/ }
40
  /******/ var isCssRtlEnabled = function() {
41
  /******/ return document.dir === 'rtl';
@@ -45,14 +45,14 @@ this["wc"] = this["wc"] || {}; this["wc"]["app"] =
45
  /******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
46
  /******/ // Promise = chunk loading, 0 = chunk loaded
47
  /******/ var installedChunks = {
48
- /******/ 21: 0
49
  /******/ };
50
  /******/
51
  /******/
52
  /******/
53
  /******/ // script path function
54
  /******/ function webpackJsonpScriptSrc(chunkId) {
55
- /******/ return __webpack_require__.p + "chunks/" + ({"7":"activity-panels-help","8":"activity-panels-inbox","9":"analytics-report","10":"analytics-report-categories","11":"analytics-report-coupons","12":"analytics-report-customers","13":"analytics-report-downloads","14":"analytics-report-orders","15":"analytics-report-products","16":"analytics-report-revenue","17":"analytics-report-stock","18":"analytics-report-taxes","19":"analytics-report-variations","20":"analytics-settings","27":"customizable-dashboard","28":"dashboard","29":"dashboard-charts","32":"homescreen","34":"leaderboards","36":"marketing-overview","46":"profile-wizard","47":"store-alerts","48":"store-performance","49":"task-list","51":"wcpay-usage-modal"}[chunkId]||chunkId) + ".js"
56
  /******/ }
57
  /******/
58
  /******/ function jsonpScriptSrc(chunkId) {
@@ -95,7 +95,7 @@ this["wc"] = this["wc"] || {}; this["wc"]["app"] =
95
  /******/
96
  /******/
97
  /******/ // mini-css-extract-plugin CSS loading
98
- /******/ var cssChunks = {"0":1,"4":1,"7":1,"9":1,"10":1,"14":1,"15":1,"20":1,"28":1,"29":1,"32":1,"34":1,"36":1,"46":1,"47":1,"48":1,"49":1};
99
  /******/ if(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);
100
  /******/ else if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {
101
  /******/ promises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {
@@ -259,17 +259,19 @@ this["wc"] = this["wc"] || {}; this["wc"]["app"] =
259
  /******/
260
  /******/
261
  /******/ // Load entry module and return exports
262
- /******/ return __webpack_require__(__webpack_require__.s = 418);
263
  /******/ })
264
  /************************************************************************/
265
- /******/ ([
266
- /* 0 */
 
267
  /***/ (function(module, exports) {
268
 
269
- (function() { module.exports = window["wp"]["element"]; }());
270
 
271
  /***/ }),
272
- /* 1 */
 
273
  /***/ (function(module, exports, __webpack_require__) {
274
 
275
  /**
@@ -282,7235 +284,7149 @@ this["wc"] = this["wc"] || {}; this["wc"]["app"] =
282
  if (false) { var throwOnDirectAccess, ReactIs; } else {
283
  // By explicitly using `prop-types` you are opting into new production behavior.
284
  // http://fb.me/prop-types-in-prod
285
- module.exports = __webpack_require__(215)();
286
  }
287
 
288
 
289
  /***/ }),
290
- /* 2 */
291
- /***/ (function(module, exports) {
292
-
293
- (function() { module.exports = window["wp"]["i18n"]; }());
294
-
295
- /***/ }),
296
- /* 3 */
297
- /***/ (function(module, exports, __webpack_require__) {
298
-
299
- /* WEBPACK VAR INJECTION */(function(global) {var check = function (it) {
300
- return it && it.Math == Math && it;
301
- };
302
 
303
- // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
304
- module.exports =
305
- /* global globalThis -- safe */
306
- check(typeof globalThis == 'object' && globalThis) ||
307
- check(typeof window == 'object' && window) ||
308
- check(typeof self == 'object' && self) ||
309
- check(typeof global == 'object' && global) ||
310
- // eslint-disable-next-line no-new-func -- fallback
311
- (function () { return this; })() || Function('return this')();
312
 
313
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(96)))
 
 
 
 
 
 
 
314
 
315
  /***/ }),
316
- /* 4 */
 
317
  /***/ (function(module, exports) {
318
 
319
- (function() { module.exports = window["wp"]["components"]; }());
320
 
321
  /***/ }),
322
- /* 5 */
323
- /***/ (function(module, exports) {
324
 
325
- (function() { module.exports = window["lodash"]; }());
 
326
 
327
- /***/ }),
328
- /* 6 */
329
- /***/ (function(module, exports) {
330
 
331
- module.exports = function (exec) {
332
- try {
333
- return !!exec();
334
- } catch (error) {
335
- return true;
336
- }
337
- };
338
 
 
 
339
 
340
- /***/ }),
341
- /* 7 */
342
- /***/ (function(module, exports) {
343
 
344
- function _defineProperty(obj, key, value) {
345
- if (key in obj) {
346
- Object.defineProperty(obj, key, {
347
- value: value,
348
- enumerable: true,
349
- configurable: true,
350
- writable: true
351
- });
352
- } else {
353
- obj[key] = value;
354
  }
355
 
356
- return obj;
357
  }
 
358
 
359
- module.exports = _defineProperty;
 
 
 
 
 
 
 
360
 
361
- /***/ }),
362
- /* 8 */
363
- /***/ (function(module, exports, __webpack_require__) {
364
 
365
- var global = __webpack_require__(3);
366
- var shared = __webpack_require__(58);
367
- var has = __webpack_require__(11);
368
- var uid = __webpack_require__(55);
369
- var NATIVE_SYMBOL = __webpack_require__(62);
370
- var USE_SYMBOL_AS_UID = __webpack_require__(93);
371
-
372
- var WellKnownSymbolsStore = shared('wks');
373
- var Symbol = global.Symbol;
374
- var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;
375
-
376
- module.exports = function (name) {
377
- if (!has(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {
378
- if (NATIVE_SYMBOL && has(Symbol, name)) {
379
- WellKnownSymbolsStore[name] = Symbol[name];
380
- } else {
381
- WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
382
- }
383
- } return WellKnownSymbolsStore[name];
384
- };
385
 
 
 
386
 
387
  /***/ }),
388
- /* 9 */
389
- /***/ (function(module, exports, __webpack_require__) {
390
 
391
- var isObject = __webpack_require__(10);
 
392
 
393
- module.exports = function (it) {
394
- if (!isObject(it)) {
395
- throw TypeError(String(it) + ' is not an object');
396
- } return it;
397
- };
 
 
 
 
 
398
 
399
 
400
  /***/ }),
401
- /* 10 */
402
- /***/ (function(module, exports) {
403
 
404
- module.exports = function (it) {
405
- return typeof it === 'object' ? it !== null : typeof it === 'function';
406
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
407
 
408
 
409
  /***/ }),
410
- /* 11 */
 
411
  /***/ (function(module, exports) {
412
 
413
- var hasOwnProperty = {}.hasOwnProperty;
 
 
 
414
 
415
- module.exports = function (it, key) {
416
- return hasOwnProperty.call(it, key);
417
- };
418
 
 
419
 
420
  /***/ }),
421
- /* 12 */
422
- /***/ (function(module, exports, __webpack_require__) {
423
 
424
- var global = __webpack_require__(3);
425
- var getOwnPropertyDescriptor = __webpack_require__(33).f;
426
- var createNonEnumerableProperty = __webpack_require__(19);
427
- var redefine = __webpack_require__(27);
428
- var setGlobal = __webpack_require__(46);
429
- var copyConstructorProperties = __webpack_require__(103);
430
- var isForced = __webpack_require__(74);
431
 
432
- /*
433
- options.target - name of the target object
434
- options.global - target is the global object
435
- options.stat - export as static methods of target
436
- options.proto - export as prototype methods of target
437
- options.real - real prototype method for the `pure` version
438
- options.forced - export even if the native feature is available
439
- options.bind - bind methods to the target, required for the `pure` version
440
- options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
441
- options.unsafe - use the simple assignment of property instead of delete + defineProperty
442
- options.sham - add a flag to not completely full polyfills
443
- options.enumerable - export as enumerable property
444
- options.noTargetGet - prevent calling a getter on target
445
- */
446
- module.exports = function (options, source) {
447
- var TARGET = options.target;
448
- var GLOBAL = options.global;
449
- var STATIC = options.stat;
450
- var FORCED, target, key, targetProperty, sourceProperty, descriptor;
451
- if (GLOBAL) {
452
- target = global;
453
- } else if (STATIC) {
454
- target = global[TARGET] || setGlobal(TARGET, {});
455
- } else {
456
- target = (global[TARGET] || {}).prototype;
457
- }
458
- if (target) for (key in source) {
459
- sourceProperty = source[key];
460
- if (options.noTargetGet) {
461
- descriptor = getOwnPropertyDescriptor(target, key);
462
- targetProperty = descriptor && descriptor.value;
463
- } else targetProperty = target[key];
464
- FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
465
- // contained in target
466
- if (!FORCED && targetProperty !== undefined) {
467
- if (typeof sourceProperty === typeof targetProperty) continue;
468
- copyConstructorProperties(sourceProperty, targetProperty);
469
- }
470
- // add a flag to not completely full polyfills
471
- if (options.sham || (targetProperty && targetProperty.sham)) {
472
- createNonEnumerableProperty(sourceProperty, 'sham', true);
473
- }
474
- // extend global
475
- redefine(target, key, sourceProperty, options);
476
- }
477
- };
478
 
479
 
480
- /***/ }),
481
- /* 13 */
482
- /***/ (function(module, exports, __webpack_require__) {
483
 
484
- var fails = __webpack_require__(6);
 
 
 
 
 
485
 
486
- // Detect IE8's incomplete defineProperty implementation
487
- module.exports = !fails(function () {
488
- return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
489
- });
 
490
 
 
 
 
 
491
 
492
- /***/ }),
493
- /* 14 */
494
- /***/ (function(module, exports) {
495
 
496
- function _getPrototypeOf(o) {
497
- module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
498
- return o.__proto__ || Object.getPrototypeOf(o);
499
- };
500
- return _getPrototypeOf(o);
 
 
 
501
  }
502
-
503
- module.exports = _getPrototypeOf;
504
 
505
  /***/ }),
506
- /* 15 */
507
- /***/ (function(module, exports, __webpack_require__) {
508
 
509
- /*!
510
- Copyright (c) 2017 Jed Watson.
511
- Licensed under the MIT License (MIT), see
512
- http://jedwatson.github.io/classnames
513
- */
514
- /* global define */
515
 
516
- (function () {
517
- 'use strict';
518
 
519
- var hasOwn = {}.hasOwnProperty;
 
 
520
 
521
- function classNames () {
522
- var classes = [];
523
 
524
- for (var i = 0; i < arguments.length; i++) {
525
- var arg = arguments[i];
526
- if (!arg) continue;
527
 
528
- var argType = typeof arg;
 
529
 
530
- if (argType === 'string' || argType === 'number') {
531
- classes.push(arg);
532
- } else if (Array.isArray(arg) && arg.length) {
533
- var inner = classNames.apply(null, arg);
534
- if (inner) {
535
- classes.push(inner);
536
- }
537
- } else if (argType === 'object') {
538
- for (var key in arg) {
539
- if (hasOwn.call(arg, key) && arg[key]) {
540
- classes.push(key);
541
- }
542
- }
543
- }
544
- }
545
 
546
- return classes.join(' ');
547
- }
548
 
549
- if ( true && module.exports) {
550
- classNames.default = classNames;
551
- module.exports = classNames;
552
- } else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {
553
- // register as 'classnames', consistent with npm package name
554
- define('classnames', [], function () {
555
- return classNames;
556
- });
557
- } else {
558
- window.classNames = classNames;
559
- }
560
- }());
561
 
 
 
562
 
563
- /***/ }),
564
- /* 16 */
565
- /***/ (function(module, exports) {
566
 
567
- (function() { module.exports = window["regeneratorRuntime"]; }());
 
568
 
569
- /***/ }),
570
- /* 17 */
571
- /***/ (function(module, exports, __webpack_require__) {
572
 
573
- var DESCRIPTORS = __webpack_require__(13);
574
- var IE8_DOM_DEFINE = __webpack_require__(72);
575
- var anObject = __webpack_require__(9);
576
- var toPrimitive = __webpack_require__(40);
577
-
578
- var nativeDefineProperty = Object.defineProperty;
579
-
580
- // `Object.defineProperty` method
581
- // https://tc39.es/ecma262/#sec-object.defineproperty
582
- exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
583
- anObject(O);
584
- P = toPrimitive(P, true);
585
- anObject(Attributes);
586
- if (IE8_DOM_DEFINE) try {
587
- return nativeDefineProperty(O, P, Attributes);
588
- } catch (error) { /* empty */ }
589
- if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
590
- if ('value' in Attributes) O[P] = Attributes.value;
591
- return O;
592
- };
593
 
 
 
594
 
595
- /***/ }),
596
- /* 18 */
597
- /***/ (function(module, exports) {
598
 
599
- function _assertThisInitialized(self) {
600
- if (self === void 0) {
601
- throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
602
- }
603
 
604
- return self;
605
- }
606
 
607
- module.exports = _assertThisInitialized;
608
 
609
- /***/ }),
610
- /* 19 */
611
- /***/ (function(module, exports, __webpack_require__) {
612
 
613
- var DESCRIPTORS = __webpack_require__(13);
614
- var definePropertyModule = __webpack_require__(17);
615
- var createPropertyDescriptor = __webpack_require__(39);
616
 
617
- module.exports = DESCRIPTORS ? function (object, key, value) {
618
- return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
619
- } : function (object, key, value) {
620
- object[key] = value;
621
- return object;
622
- };
623
 
624
 
625
- /***/ }),
626
- /* 20 */
627
- /***/ (function(module, exports) {
628
 
629
- (function() { module.exports = window["React"]; }());
630
 
631
- /***/ }),
632
- /* 21 */
633
- /***/ (function(module, exports, __webpack_require__) {
634
 
635
- // toObject with fallback for non-array-like ES3 strings
636
- var IndexedObject = __webpack_require__(71);
637
- var requireObjectCoercible = __webpack_require__(32);
638
 
639
- module.exports = function (it) {
640
- return IndexedObject(requireObjectCoercible(it));
641
- };
642
 
 
 
 
643
 
644
- /***/ }),
645
- /* 22 */
646
- /***/ (function(module, exports) {
647
 
648
- function _classCallCheck(instance, Constructor) {
649
- if (!(instance instanceof Constructor)) {
650
- throw new TypeError("Cannot call a class as a function");
651
- }
652
- }
653
 
654
- module.exports = _classCallCheck;
 
 
655
 
656
- /***/ }),
657
- /* 23 */
658
- /***/ (function(module, exports) {
659
 
660
- function _defineProperties(target, props) {
661
- for (var i = 0; i < props.length; i++) {
662
- var descriptor = props[i];
663
- descriptor.enumerable = descriptor.enumerable || false;
664
- descriptor.configurable = true;
665
- if ("value" in descriptor) descriptor.writable = true;
666
- Object.defineProperty(target, descriptor.key, descriptor);
667
- }
668
- }
669
 
670
- function _createClass(Constructor, protoProps, staticProps) {
671
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
672
- if (staticProps) _defineProperties(Constructor, staticProps);
673
- return Constructor;
674
- }
675
 
676
- module.exports = _createClass;
677
 
678
- /***/ }),
679
- /* 24 */
680
- /***/ (function(module, exports, __webpack_require__) {
681
 
682
- var setPrototypeOf = __webpack_require__(204);
683
 
684
- function _inherits(subClass, superClass) {
685
- if (typeof superClass !== "function" && superClass !== null) {
686
- throw new TypeError("Super expression must either be null or a function");
 
687
  }
688
 
689
- subClass.prototype = Object.create(superClass && superClass.prototype, {
690
- constructor: {
691
- value: subClass,
692
- writable: true,
693
- configurable: true
694
  }
695
- });
696
- if (superClass) setPrototypeOf(subClass, superClass);
697
- }
698
-
699
- module.exports = _inherits;
700
-
701
- /***/ }),
702
- /* 25 */
703
- /***/ (function(module, exports, __webpack_require__) {
704
-
705
- var _typeof = __webpack_require__(108);
706
-
707
- var assertThisInitialized = __webpack_require__(18);
 
708
 
709
- function _possibleConstructorReturn(self, call) {
710
- if (call && (_typeof(call) === "object" || typeof call === "function")) {
711
- return call;
712
- }
 
 
 
 
 
 
 
 
 
 
 
 
713
 
714
- return assertThisInitialized(self);
715
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
716
 
717
- module.exports = _possibleConstructorReturn;
 
 
 
 
 
 
 
 
 
 
 
718
 
719
- /***/ }),
720
- /* 26 */
721
- /***/ (function(module, exports) {
 
 
 
 
 
 
 
 
 
 
 
 
722
 
723
- (function() { module.exports = window["wp"]["data"]; }());
 
 
724
 
725
- /***/ }),
726
- /* 27 */
727
- /***/ (function(module, exports, __webpack_require__) {
728
 
729
- var global = __webpack_require__(3);
730
- var createNonEnumerableProperty = __webpack_require__(19);
731
- var has = __webpack_require__(11);
732
- var setGlobal = __webpack_require__(46);
733
- var inspectSource = __webpack_require__(68);
734
- var InternalStateModule = __webpack_require__(45);
735
-
736
- var getInternalState = InternalStateModule.get;
737
- var enforceInternalState = InternalStateModule.enforce;
738
- var TEMPLATE = String(String).split('String');
739
-
740
- (module.exports = function (O, key, value, options) {
741
- var unsafe = options ? !!options.unsafe : false;
742
- var simple = options ? !!options.enumerable : false;
743
- var noTargetGet = options ? !!options.noTargetGet : false;
744
- var state;
745
- if (typeof value == 'function') {
746
- if (typeof key == 'string' && !has(value, 'name')) {
747
- createNonEnumerableProperty(value, 'name', key);
748
- }
749
- state = enforceInternalState(value);
750
- if (!state.source) {
751
- state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
752
- }
753
- }
754
- if (O === global) {
755
- if (simple) O[key] = value;
756
- else setGlobal(key, value);
757
- return;
758
- } else if (!unsafe) {
759
- delete O[key];
760
- } else if (!noTargetGet && O[key]) {
761
- simple = true;
762
- }
763
- if (simple) O[key] = value;
764
- else createNonEnumerableProperty(O, key, value);
765
- // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
766
- })(Function.prototype, 'toString', function toString() {
767
- return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
768
- });
769
 
 
 
 
770
 
771
- /***/ }),
772
- /* 28 */
773
- /***/ (function(module, exports) {
774
 
775
- (function() { module.exports = window["wp"]["primitives"]; }());
776
 
777
- /***/ }),
778
- /* 29 */
779
- /***/ (function(module, exports) {
780
 
781
- (function() { module.exports = window["moment"]; }());
782
 
783
- /***/ }),
784
- /* 30 */
785
- /***/ (function(module, exports) {
786
 
787
- var toString = {}.toString;
 
 
 
 
 
 
 
 
 
788
 
789
- module.exports = function (it) {
790
- return toString.call(it).slice(8, -1);
791
- };
792
 
 
 
 
 
 
 
 
 
793
 
794
- /***/ }),
795
- /* 31 */
796
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
797
 
798
- var path = __webpack_require__(81);
799
- var global = __webpack_require__(3);
 
 
800
 
801
- var aFunction = function (variable) {
802
- return typeof variable == 'function' ? variable : undefined;
803
- };
804
 
805
- module.exports = function (namespace, method) {
806
- return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])
807
- : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];
808
- };
809
 
 
 
 
810
 
811
- /***/ }),
812
- /* 32 */
813
- /***/ (function(module, exports) {
814
 
815
- // `RequireObjectCoercible` abstract operation
816
- // https://tc39.es/ecma262/#sec-requireobjectcoercible
817
- module.exports = function (it) {
818
- if (it == undefined) throw TypeError("Can't call method on " + it);
819
- return it;
 
 
 
 
820
  };
821
 
 
 
 
 
822
 
823
- /***/ }),
824
- /* 33 */
825
- /***/ (function(module, exports, __webpack_require__) {
826
 
827
- var DESCRIPTORS = __webpack_require__(13);
828
- var propertyIsEnumerableModule = __webpack_require__(76);
829
- var createPropertyDescriptor = __webpack_require__(39);
830
- var toIndexedObject = __webpack_require__(21);
831
- var toPrimitive = __webpack_require__(40);
832
- var has = __webpack_require__(11);
833
- var IE8_DOM_DEFINE = __webpack_require__(72);
834
-
835
- var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
836
-
837
- // `Object.getOwnPropertyDescriptor` method
838
- // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
839
- exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
840
- O = toIndexedObject(O);
841
- P = toPrimitive(P, true);
842
- if (IE8_DOM_DEFINE) try {
843
- return nativeGetOwnPropertyDescriptor(O, P);
844
- } catch (error) { /* empty */ }
845
- if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);
846
- };
847
 
848
 
849
- /***/ }),
850
- /* 34 */
851
- /***/ (function(module, exports, __webpack_require__) {
852
 
853
- var toInteger = __webpack_require__(42);
 
 
854
 
855
- var min = Math.min;
 
 
856
 
857
- // `ToLength` abstract operation
858
- // https://tc39.es/ecma262/#sec-tolength
859
- module.exports = function (argument) {
860
- return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
861
- };
862
 
 
 
 
 
 
 
 
863
 
864
- /***/ }),
865
- /* 35 */
866
- /***/ (function(module, exports) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
867
 
868
- (function() { module.exports = window["wp"]["dataControls"]; }());
 
869
 
870
- /***/ }),
871
- /* 36 */
872
- /***/ (function(module, exports) {
873
 
874
- module.exports = {};
875
 
 
 
 
876
 
877
- /***/ }),
878
- /* 37 */
879
- /***/ (function(module, exports, __webpack_require__) {
880
 
881
- var $ = __webpack_require__(12);
882
- var toObject = __webpack_require__(38);
883
- var nativeKeys = __webpack_require__(54);
884
- var fails = __webpack_require__(6);
885
 
886
- var FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });
887
 
888
- // `Object.keys` method
889
- // https://tc39.es/ecma262/#sec-object.keys
890
- $({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {
891
- keys: function keys(it) {
892
- return nativeKeys(toObject(it));
893
- }
894
- });
895
 
 
 
 
 
896
 
897
- /***/ }),
898
- /* 38 */
899
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
900
 
901
- var requireObjectCoercible = __webpack_require__(32);
 
 
902
 
903
- // `ToObject` abstract operation
904
- // https://tc39.es/ecma262/#sec-toobject
905
- module.exports = function (argument) {
906
- return Object(requireObjectCoercible(argument));
907
- };
908
 
 
 
 
 
909
 
910
- /***/ }),
911
- /* 39 */
912
- /***/ (function(module, exports) {
913
 
914
- module.exports = function (bitmap, value) {
915
- return {
916
- enumerable: !(bitmap & 1),
917
- configurable: !(bitmap & 2),
918
- writable: !(bitmap & 4),
919
- value: value
920
- };
921
- };
922
 
923
 
924
- /***/ }),
925
- /* 40 */
926
- /***/ (function(module, exports, __webpack_require__) {
927
 
928
- var isObject = __webpack_require__(10);
929
-
930
- // `ToPrimitive` abstract operation
931
- // https://tc39.es/ecma262/#sec-toprimitive
932
- // instead of the ES6 spec version, we didn't implement @@toPrimitive case
933
- // and the second argument - flag - preferred type is a string
934
- module.exports = function (input, PREFERRED_STRING) {
935
- if (!isObject(input)) return input;
936
- var fn, val;
937
- if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
938
- if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
939
- if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
940
- throw TypeError("Can't convert object to primitive value");
941
- };
942
 
943
 
944
- /***/ }),
945
- /* 41 */
946
- /***/ (function(module, exports, __webpack_require__) {
947
 
948
- "use strict";
949
 
950
- var $ = __webpack_require__(12);
951
- var $filter = __webpack_require__(75).filter;
952
- var arrayMethodHasSpeciesSupport = __webpack_require__(89);
953
 
954
- var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');
 
 
955
 
956
- // `Array.prototype.filter` method
957
- // https://tc39.es/ecma262/#sec-array.prototype.filter
958
- // with adding support of @@species
959
- $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
960
- filter: function filter(callbackfn /* , thisArg */) {
961
- return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
962
  }
963
- });
964
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
965
 
966
- /***/ }),
967
- /* 42 */
968
- /***/ (function(module, exports) {
969
 
970
- var ceil = Math.ceil;
971
- var floor = Math.floor;
 
 
 
972
 
973
- // `ToInteger` abstract operation
974
- // https://tc39.es/ecma262/#sec-tointeger
975
- module.exports = function (argument) {
976
- return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
977
- };
 
978
 
 
979
 
980
  /***/ }),
981
- /* 43 */
982
- /***/ (function(module, exports, __webpack_require__) {
983
 
984
- var arrayWithHoles = __webpack_require__(182);
985
-
986
- var iterableToArrayLimit = __webpack_require__(183);
987
 
988
- var unsupportedIterableToArray = __webpack_require__(131);
989
 
990
- var nonIterableRest = __webpack_require__(184);
991
 
992
- function _slicedToArray(arr, i) {
993
- return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
994
- }
995
 
996
- module.exports = _slicedToArray;
997
 
998
- /***/ }),
999
- /* 44 */
1000
- /***/ (function(module, exports, __webpack_require__) {
 
1001
 
1002
- var arrayWithoutHoles = __webpack_require__(179);
 
 
 
 
 
 
 
 
 
 
 
 
 
1003
 
1004
- var iterableToArray = __webpack_require__(180);
1005
 
1006
- var unsupportedIterableToArray = __webpack_require__(131);
1007
 
1008
- var nonIterableSpread = __webpack_require__(181);
 
1009
 
1010
- function _toConsumableArray(arr) {
1011
- return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
1012
  }
1013
 
1014
- module.exports = _toConsumableArray;
1015
 
1016
  /***/ }),
1017
- /* 45 */
1018
- /***/ (function(module, exports, __webpack_require__) {
1019
 
1020
- var NATIVE_WEAK_MAP = __webpack_require__(106);
1021
- var global = __webpack_require__(3);
1022
- var isObject = __webpack_require__(10);
1023
- var createNonEnumerableProperty = __webpack_require__(19);
1024
- var objectHas = __webpack_require__(11);
1025
- var shared = __webpack_require__(47);
1026
- var sharedKey = __webpack_require__(52);
1027
- var hiddenKeys = __webpack_require__(36);
1028
 
1029
- var WeakMap = global.WeakMap;
1030
- var set, get, has;
 
 
 
 
1031
 
1032
- var enforce = function (it) {
1033
- return has(it) ? get(it) : set(it, {});
1034
- };
1035
 
1036
- var getterFor = function (TYPE) {
1037
- return function (it) {
1038
- var state;
1039
- if (!isObject(it) || (state = get(it)).type !== TYPE) {
1040
- throw TypeError('Incompatible receiver, ' + TYPE + ' required');
1041
- } return state;
1042
- };
1043
- };
 
 
 
 
1044
 
1045
- if (NATIVE_WEAK_MAP) {
1046
- var store = shared.state || (shared.state = new WeakMap());
1047
- var wmget = store.get;
1048
- var wmhas = store.has;
1049
- var wmset = store.set;
1050
- set = function (it, metadata) {
1051
- metadata.facade = it;
1052
- wmset.call(store, it, metadata);
1053
- return metadata;
1054
- };
1055
- get = function (it) {
1056
- return wmget.call(store, it) || {};
1057
- };
1058
- has = function (it) {
1059
- return wmhas.call(store, it);
1060
- };
1061
- } else {
1062
- var STATE = sharedKey('state');
1063
- hiddenKeys[STATE] = true;
1064
- set = function (it, metadata) {
1065
- metadata.facade = it;
1066
- createNonEnumerableProperty(it, STATE, metadata);
1067
- return metadata;
1068
- };
1069
- get = function (it) {
1070
- return objectHas(it, STATE) ? it[STATE] : {};
1071
- };
1072
- has = function (it) {
1073
- return objectHas(it, STATE);
1074
- };
1075
  }
1076
 
1077
- module.exports = {
1078
- set: set,
1079
- get: get,
1080
- has: has,
1081
- enforce: enforce,
1082
- getterFor: getterFor
1083
- };
1084
-
1085
 
1086
  /***/ }),
1087
- /* 46 */
1088
- /***/ (function(module, exports, __webpack_require__) {
1089
 
1090
- var global = __webpack_require__(3);
1091
- var createNonEnumerableProperty = __webpack_require__(19);
1092
 
1093
- module.exports = function (key, value) {
1094
- try {
1095
- createNonEnumerableProperty(global, key, value);
1096
- } catch (error) {
1097
- global[key] = value;
1098
- } return value;
1099
- };
1100
 
 
1101
 
1102
  /***/ }),
1103
- /* 47 */
1104
- /***/ (function(module, exports, __webpack_require__) {
1105
-
1106
- var global = __webpack_require__(3);
1107
- var setGlobal = __webpack_require__(46);
1108
 
1109
- var SHARED = '__core-js_shared__';
1110
- var store = global[SHARED] || setGlobal(SHARED, {});
1111
 
1112
- module.exports = store;
 
 
1113
 
 
 
 
 
1114
 
1115
- /***/ }),
1116
- /* 48 */
1117
- /***/ (function(module, exports) {
1118
 
1119
- // IE8- don't enum bug keys
1120
- module.exports = [
1121
- 'constructor',
1122
- 'hasOwnProperty',
1123
- 'isPrototypeOf',
1124
- 'propertyIsEnumerable',
1125
- 'toLocaleString',
1126
- 'toString',
1127
- 'valueOf'
1128
- ];
1129
 
 
 
1130
 
1131
  /***/ }),
1132
- /* 49 */
 
1133
  /***/ (function(module, exports, __webpack_require__) {
1134
 
1135
- var global = __webpack_require__(3);
1136
- var DOMIterables = __webpack_require__(127);
1137
- var forEach = __webpack_require__(149);
1138
- var createNonEnumerableProperty = __webpack_require__(19);
1139
-
1140
- for (var COLLECTION_NAME in DOMIterables) {
1141
- var Collection = global[COLLECTION_NAME];
1142
- var CollectionPrototype = Collection && Collection.prototype;
1143
- // some Chrome versions have non-configurable methods on DOMTokenList
1144
- if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {
1145
- createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);
1146
- } catch (error) {
1147
- CollectionPrototype.forEach = forEach;
1148
- }
1149
- }
1150
 
1151
 
1152
  /***/ }),
1153
- /* 50 */
1154
- /***/ (function(module, exports) {
1155
 
1156
- (function() { module.exports = window["wc"]["navigation"]; }());
1157
-
1158
- /***/ }),
1159
- /* 51 */
1160
- /***/ (function(module, exports, __webpack_require__) {
1161
 
1162
  "use strict";
 
 
 
 
1163
 
1164
- var $ = __webpack_require__(12);
1165
- var $map = __webpack_require__(75).map;
1166
- var arrayMethodHasSpeciesSupport = __webpack_require__(89);
1167
 
1168
- var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');
1169
 
1170
- // `Array.prototype.map` method
1171
- // https://tc39.es/ecma262/#sec-array.prototype.map
1172
- // with adding support of @@species
1173
- $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
1174
- map: function map(callbackfn /* , thisArg */) {
1175
- return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
1176
- }
1177
- });
1178
 
 
 
 
 
 
 
1179
 
1180
- /***/ }),
1181
- /* 52 */
1182
- /***/ (function(module, exports, __webpack_require__) {
1183
-
1184
- var shared = __webpack_require__(58);
1185
- var uid = __webpack_require__(55);
1186
-
1187
- var keys = shared('keys');
1188
-
1189
- module.exports = function (key) {
1190
- return keys[key] || (keys[key] = uid(key));
1191
- };
1192
 
 
 
1193
 
1194
  /***/ }),
1195
- /* 53 */
1196
- /***/ (function(module, exports, __webpack_require__) {
1197
-
1198
- "use strict";
1199
 
1200
- var $ = __webpack_require__(12);
1201
- var global = __webpack_require__(3);
1202
- var getBuiltIn = __webpack_require__(31);
1203
- var IS_PURE = __webpack_require__(57);
1204
- var DESCRIPTORS = __webpack_require__(13);
1205
- var NATIVE_SYMBOL = __webpack_require__(62);
1206
- var USE_SYMBOL_AS_UID = __webpack_require__(93);
1207
- var fails = __webpack_require__(6);
1208
- var has = __webpack_require__(11);
1209
- var isArray = __webpack_require__(84);
1210
- var isObject = __webpack_require__(10);
1211
- var anObject = __webpack_require__(9);
1212
- var toObject = __webpack_require__(38);
1213
- var toIndexedObject = __webpack_require__(21);
1214
- var toPrimitive = __webpack_require__(40);
1215
- var createPropertyDescriptor = __webpack_require__(39);
1216
- var nativeObjectCreate = __webpack_require__(69);
1217
- var objectKeys = __webpack_require__(54);
1218
- var getOwnPropertyNamesModule = __webpack_require__(56);
1219
- var getOwnPropertyNamesExternal = __webpack_require__(147);
1220
- var getOwnPropertySymbolsModule = __webpack_require__(79);
1221
- var getOwnPropertyDescriptorModule = __webpack_require__(33);
1222
- var definePropertyModule = __webpack_require__(17);
1223
- var propertyIsEnumerableModule = __webpack_require__(76);
1224
- var createNonEnumerableProperty = __webpack_require__(19);
1225
- var redefine = __webpack_require__(27);
1226
- var shared = __webpack_require__(58);
1227
- var sharedKey = __webpack_require__(52);
1228
- var hiddenKeys = __webpack_require__(36);
1229
- var uid = __webpack_require__(55);
1230
- var wellKnownSymbol = __webpack_require__(8);
1231
- var wrappedWellKnownSymbolModule = __webpack_require__(119);
1232
- var defineWellKnownSymbol = __webpack_require__(148);
1233
- var setToStringTag = __webpack_require__(90);
1234
- var InternalStateModule = __webpack_require__(45);
1235
- var $forEach = __webpack_require__(75).forEach;
1236
-
1237
- var HIDDEN = sharedKey('hidden');
1238
- var SYMBOL = 'Symbol';
1239
- var PROTOTYPE = 'prototype';
1240
- var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
1241
- var setInternalState = InternalStateModule.set;
1242
- var getInternalState = InternalStateModule.getterFor(SYMBOL);
1243
- var ObjectPrototype = Object[PROTOTYPE];
1244
- var $Symbol = global.Symbol;
1245
- var $stringify = getBuiltIn('JSON', 'stringify');
1246
- var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
1247
- var nativeDefineProperty = definePropertyModule.f;
1248
- var nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;
1249
- var nativePropertyIsEnumerable = propertyIsEnumerableModule.f;
1250
- var AllSymbols = shared('symbols');
1251
- var ObjectPrototypeSymbols = shared('op-symbols');
1252
- var StringToSymbolRegistry = shared('string-to-symbol-registry');
1253
- var SymbolToStringRegistry = shared('symbol-to-string-registry');
1254
- var WellKnownSymbolsStore = shared('wks');
1255
- var QObject = global.QObject;
1256
- // Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
1257
- var USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
1258
-
1259
- // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
1260
- var setSymbolDescriptor = DESCRIPTORS && fails(function () {
1261
- return nativeObjectCreate(nativeDefineProperty({}, 'a', {
1262
- get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }
1263
- })).a != 7;
1264
- }) ? function (O, P, Attributes) {
1265
- var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);
1266
- if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];
1267
- nativeDefineProperty(O, P, Attributes);
1268
- if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {
1269
- nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);
1270
- }
1271
- } : nativeDefineProperty;
1272
-
1273
- var wrap = function (tag, description) {
1274
- var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);
1275
- setInternalState(symbol, {
1276
- type: SYMBOL,
1277
- tag: tag,
1278
- description: description
1279
- });
1280
- if (!DESCRIPTORS) symbol.description = description;
1281
- return symbol;
1282
- };
1283
 
1284
- var isSymbol = USE_SYMBOL_AS_UID ? function (it) {
1285
- return typeof it == 'symbol';
1286
- } : function (it) {
1287
- return Object(it) instanceof $Symbol;
1288
- };
1289
 
1290
- var $defineProperty = function defineProperty(O, P, Attributes) {
1291
- if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);
1292
- anObject(O);
1293
- var key = toPrimitive(P, true);
1294
- anObject(Attributes);
1295
- if (has(AllSymbols, key)) {
1296
- if (!Attributes.enumerable) {
1297
- if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));
1298
- O[HIDDEN][key] = true;
1299
- } else {
1300
- if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;
1301
- Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });
1302
- } return setSymbolDescriptor(O, key, Attributes);
1303
- } return nativeDefineProperty(O, key, Attributes);
1304
- };
1305
 
1306
- var $defineProperties = function defineProperties(O, Properties) {
1307
- anObject(O);
1308
- var properties = toIndexedObject(Properties);
1309
- var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));
1310
- $forEach(keys, function (key) {
1311
- if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);
1312
- });
1313
- return O;
1314
- };
1315
 
1316
- var $create = function create(O, Properties) {
1317
- return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);
1318
- };
1319
 
1320
- var $propertyIsEnumerable = function propertyIsEnumerable(V) {
1321
- var P = toPrimitive(V, true);
1322
- var enumerable = nativePropertyIsEnumerable.call(this, P);
1323
- if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;
1324
- return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;
1325
- };
1326
 
1327
- var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {
1328
- var it = toIndexedObject(O);
1329
- var key = toPrimitive(P, true);
1330
- if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;
1331
- var descriptor = nativeGetOwnPropertyDescriptor(it, key);
1332
- if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {
1333
- descriptor.enumerable = true;
1334
  }
1335
- return descriptor;
1336
- };
1337
-
1338
- var $getOwnPropertyNames = function getOwnPropertyNames(O) {
1339
- var names = nativeGetOwnPropertyNames(toIndexedObject(O));
1340
- var result = [];
1341
- $forEach(names, function (key) {
1342
- if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);
1343
- });
1344
- return result;
1345
- };
1346
-
1347
- var $getOwnPropertySymbols = function getOwnPropertySymbols(O) {
1348
- var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;
1349
- var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));
1350
- var result = [];
1351
- $forEach(names, function (key) {
1352
- if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {
1353
- result.push(AllSymbols[key]);
1354
- }
1355
- });
1356
- return result;
1357
- };
1358
-
1359
- // `Symbol` constructor
1360
- // https://tc39.es/ecma262/#sec-symbol-constructor
1361
- if (!NATIVE_SYMBOL) {
1362
- $Symbol = function Symbol() {
1363
- if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');
1364
- var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);
1365
- var tag = uid(description);
1366
- var setter = function (value) {
1367
- if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);
1368
- if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
1369
- setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));
1370
- };
1371
- if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });
1372
- return wrap(tag, description);
1373
- };
1374
 
1375
- redefine($Symbol[PROTOTYPE], 'toString', function toString() {
1376
- return getInternalState(this).tag;
1377
- });
1378
-
1379
- redefine($Symbol, 'withoutSetter', function (description) {
1380
- return wrap(uid(description), description);
1381
- });
1382
-
1383
- propertyIsEnumerableModule.f = $propertyIsEnumerable;
1384
- definePropertyModule.f = $defineProperty;
1385
- getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;
1386
- getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;
1387
- getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;
1388
-
1389
- wrappedWellKnownSymbolModule.f = function (name) {
1390
- return wrap(wellKnownSymbol(name), name);
1391
- };
1392
-
1393
- if (DESCRIPTORS) {
1394
- // https://github.com/tc39/proposal-Symbol-description
1395
- nativeDefineProperty($Symbol[PROTOTYPE], 'description', {
1396
- configurable: true,
1397
- get: function description() {
1398
- return getInternalState(this).description;
1399
- }
1400
- });
1401
- if (!IS_PURE) {
1402
- redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });
1403
- }
1404
- }
1405
  }
1406
 
1407
- $({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {
1408
- Symbol: $Symbol
1409
- });
1410
 
1411
- $forEach(objectKeys(WellKnownSymbolsStore), function (name) {
1412
- defineWellKnownSymbol(name);
1413
- });
1414
 
1415
- $({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {
1416
- // `Symbol.for` method
1417
- // https://tc39.es/ecma262/#sec-symbol.for
1418
- 'for': function (key) {
1419
- var string = String(key);
1420
- if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];
1421
- var symbol = $Symbol(string);
1422
- StringToSymbolRegistry[string] = symbol;
1423
- SymbolToStringRegistry[symbol] = string;
1424
- return symbol;
1425
- },
1426
- // `Symbol.keyFor` method
1427
- // https://tc39.es/ecma262/#sec-symbol.keyfor
1428
- keyFor: function keyFor(sym) {
1429
- if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');
1430
- if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];
1431
- },
1432
- useSetter: function () { USE_SETTER = true; },
1433
- useSimple: function () { USE_SETTER = false; }
1434
- });
1435
 
1436
- $({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {
1437
- // `Object.create` method
1438
- // https://tc39.es/ecma262/#sec-object.create
1439
- create: $create,
1440
- // `Object.defineProperty` method
1441
- // https://tc39.es/ecma262/#sec-object.defineproperty
1442
- defineProperty: $defineProperty,
1443
- // `Object.defineProperties` method
1444
- // https://tc39.es/ecma262/#sec-object.defineproperties
1445
- defineProperties: $defineProperties,
1446
- // `Object.getOwnPropertyDescriptor` method
1447
- // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
1448
- getOwnPropertyDescriptor: $getOwnPropertyDescriptor
1449
- });
1450
 
1451
- $({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {
1452
- // `Object.getOwnPropertyNames` method
1453
- // https://tc39.es/ecma262/#sec-object.getownpropertynames
1454
- getOwnPropertyNames: $getOwnPropertyNames,
1455
- // `Object.getOwnPropertySymbols` method
1456
- // https://tc39.es/ecma262/#sec-object.getownpropertysymbols
1457
- getOwnPropertySymbols: $getOwnPropertySymbols
1458
- });
1459
 
1460
- // Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
1461
- // https://bugs.chromium.org/p/v8/issues/detail?id=3443
1462
- $({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {
1463
- getOwnPropertySymbols: function getOwnPropertySymbols(it) {
1464
- return getOwnPropertySymbolsModule.f(toObject(it));
 
1465
  }
1466
- });
1467
 
1468
- // `JSON.stringify` method behavior with symbols
1469
- // https://tc39.es/ecma262/#sec-json.stringify
1470
- if ($stringify) {
1471
- var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {
1472
- var symbol = $Symbol();
1473
- // MS Edge converts symbol values to JSON as {}
1474
- return $stringify([symbol]) != '[null]'
1475
- // WebKit converts symbol values to JSON as null
1476
- || $stringify({ a: symbol }) != '{}'
1477
- // V8 throws on boxed symbols
1478
- || $stringify(Object(symbol)) != '{}';
1479
- });
1480
 
1481
- $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {
1482
- // eslint-disable-next-line no-unused-vars -- required for `.length`
1483
- stringify: function stringify(it, replacer, space) {
1484
- var args = [it];
1485
- var index = 1;
1486
- var $replacer;
1487
- while (arguments.length > index) args.push(arguments[index++]);
1488
- $replacer = replacer;
1489
- if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
1490
- if (!isArray(replacer)) replacer = function (key, value) {
1491
- if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
1492
- if (!isSymbol(value)) return value;
1493
- };
1494
- args[1] = replacer;
1495
- return $stringify.apply(null, args);
1496
  }
1497
- });
1498
- }
1499
-
1500
- // `Symbol.prototype[@@toPrimitive]` method
1501
- // https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive
1502
- if (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {
1503
- createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
1504
- }
1505
- // `Symbol.prototype[@@toStringTag]` property
1506
- // https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag
1507
- setToStringTag($Symbol, SYMBOL);
1508
-
1509
- hiddenKeys[HIDDEN] = true;
1510
-
1511
-
1512
- /***/ }),
1513
- /* 54 */
1514
- /***/ (function(module, exports, __webpack_require__) {
1515
-
1516
- var internalObjectKeys = __webpack_require__(73);
1517
- var enumBugKeys = __webpack_require__(48);
1518
 
1519
- // `Object.keys` method
1520
- // https://tc39.es/ecma262/#sec-object.keys
1521
- module.exports = Object.keys || function keys(O) {
1522
- return internalObjectKeys(O, enumBugKeys);
1523
- };
1524
 
 
 
 
 
 
 
1525
 
1526
- /***/ }),
1527
- /* 55 */
1528
- /***/ (function(module, exports) {
1529
 
1530
- var id = 0;
1531
- var postfix = Math.random();
1532
 
1533
- module.exports = function (key) {
1534
- return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
1535
- };
1536
 
 
1537
 
1538
- /***/ }),
1539
- /* 56 */
1540
- /***/ (function(module, exports, __webpack_require__) {
 
1541
 
1542
- var internalObjectKeys = __webpack_require__(73);
1543
- var enumBugKeys = __webpack_require__(48);
 
1544
 
1545
- var hiddenKeys = enumBugKeys.concat('length', 'prototype');
 
1546
 
1547
- // `Object.getOwnPropertyNames` method
1548
- // https://tc39.es/ecma262/#sec-object.getownpropertynames
1549
- exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
1550
- return internalObjectKeys(O, hiddenKeys);
1551
- };
 
 
 
 
1552
 
 
 
 
1553
 
1554
- /***/ }),
1555
- /* 57 */
1556
- /***/ (function(module, exports) {
1557
 
1558
- module.exports = false;
 
 
 
1559
 
 
 
1560
 
1561
- /***/ }),
1562
- /* 58 */
1563
- /***/ (function(module, exports, __webpack_require__) {
1564
 
1565
- var IS_PURE = __webpack_require__(57);
1566
- var store = __webpack_require__(47);
1567
 
1568
- (module.exports = function (key, value) {
1569
- return store[key] || (store[key] = value !== undefined ? value : {});
1570
- })('versions', []).push({
1571
- version: '3.9.1',
1572
- mode: IS_PURE ? 'pure' : 'global',
1573
- copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
1574
- });
1575
 
1576
 
1577
- /***/ }),
1578
- /* 59 */
1579
- /***/ (function(module, exports) {
1580
 
1581
- (function() { module.exports = window["wc"]["data"]; }());
1582
 
1583
- /***/ }),
1584
- /* 60 */
1585
- /***/ (function(module, exports, __webpack_require__) {
1586
 
1587
- var $ = __webpack_require__(12);
1588
- var fails = __webpack_require__(6);
1589
- var toIndexedObject = __webpack_require__(21);
1590
- var nativeGetOwnPropertyDescriptor = __webpack_require__(33).f;
1591
- var DESCRIPTORS = __webpack_require__(13);
1592
 
1593
- var FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); });
1594
- var FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1595
 
1596
- // `Object.getOwnPropertyDescriptor` method
1597
- // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
1598
- $({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {
1599
- getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {
1600
- return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);
1601
  }
1602
- });
1603
-
1604
 
1605
- /***/ }),
1606
- /* 61 */
1607
- /***/ (function(module, exports, __webpack_require__) {
1608
 
1609
- var $ = __webpack_require__(12);
1610
- var DESCRIPTORS = __webpack_require__(13);
1611
- var ownKeys = __webpack_require__(86);
1612
- var toIndexedObject = __webpack_require__(21);
1613
- var getOwnPropertyDescriptorModule = __webpack_require__(33);
1614
- var createProperty = __webpack_require__(102);
1615
-
1616
- // `Object.getOwnPropertyDescriptors` method
1617
- // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
1618
- $({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {
1619
- getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
1620
- var O = toIndexedObject(object);
1621
- var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
1622
- var keys = ownKeys(O);
1623
- var result = {};
1624
- var index = 0;
1625
- var key, descriptor;
1626
- while (keys.length > index) {
1627
- descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);
1628
- if (descriptor !== undefined) createProperty(result, key, descriptor);
1629
- }
1630
- return result;
1631
  }
1632
- });
1633
-
1634
 
1635
- /***/ }),
1636
- /* 62 */
1637
- /***/ (function(module, exports, __webpack_require__) {
1638
-
1639
- var IS_NODE = __webpack_require__(77);
1640
- var V8_VERSION = __webpack_require__(63);
1641
- var fails = __webpack_require__(6);
1642
-
1643
- module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
1644
- /* global Symbol -- required for testing */
1645
- return !Symbol.sham &&
1646
- // Chrome 38 Symbol has incorrect toString conversion
1647
- // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
1648
- (IS_NODE ? V8_VERSION === 38 : V8_VERSION > 37 && V8_VERSION < 41);
1649
- });
1650
 
 
 
1651
 
1652
- /***/ }),
1653
- /* 63 */
1654
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
1655
 
1656
- var global = __webpack_require__(3);
1657
- var userAgent = __webpack_require__(87);
 
 
 
1658
 
1659
- var process = global.process;
1660
- var versions = process && process.versions;
1661
- var v8 = versions && versions.v8;
1662
- var match, version;
 
1663
 
1664
- if (v8) {
1665
- match = v8.split('.');
1666
- version = match[0] + match[1];
1667
- } else if (userAgent) {
1668
- match = userAgent.match(/Edge\/(\d+)/);
1669
- if (!match || match[1] >= 74) {
1670
- match = userAgent.match(/Chrome\/(\d+)/);
1671
- if (match) version = match[1];
1672
  }
1673
- }
1674
 
1675
- module.exports = version && +version;
1676
-
1677
-
1678
- /***/ }),
1679
- /* 64 */
1680
- /***/ (function(module, exports, __webpack_require__) {
1681
-
1682
- var $ = __webpack_require__(12);
1683
- var getBuiltIn = __webpack_require__(31);
1684
- var aFunction = __webpack_require__(70);
1685
- var anObject = __webpack_require__(9);
1686
- var isObject = __webpack_require__(10);
1687
- var create = __webpack_require__(69);
1688
- var bind = __webpack_require__(212);
1689
- var fails = __webpack_require__(6);
1690
-
1691
- var nativeConstruct = getBuiltIn('Reflect', 'construct');
1692
-
1693
- // `Reflect.construct` method
1694
- // https://tc39.es/ecma262/#sec-reflect.construct
1695
- // MS Edge supports only 2 arguments and argumentsList argument is optional
1696
- // FF Nightly sets third argument as `new.target`, but does not create `this` from it
1697
- var NEW_TARGET_BUG = fails(function () {
1698
- function F() { /* empty */ }
1699
- return !(nativeConstruct(function () { /* empty */ }, [], F) instanceof F);
1700
- });
1701
- var ARGS_BUG = !fails(function () {
1702
- nativeConstruct(function () { /* empty */ });
1703
- });
1704
- var FORCED = NEW_TARGET_BUG || ARGS_BUG;
1705
-
1706
- $({ target: 'Reflect', stat: true, forced: FORCED, sham: FORCED }, {
1707
- construct: function construct(Target, args /* , newTarget */) {
1708
- aFunction(Target);
1709
- anObject(args);
1710
- var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
1711
- if (ARGS_BUG && !NEW_TARGET_BUG) return nativeConstruct(Target, args, newTarget);
1712
- if (Target == newTarget) {
1713
- // w/o altered newTarget, optimization for 0-4 arguments
1714
- switch (args.length) {
1715
- case 0: return new Target();
1716
- case 1: return new Target(args[0]);
1717
- case 2: return new Target(args[0], args[1]);
1718
- case 3: return new Target(args[0], args[1], args[2]);
1719
- case 4: return new Target(args[0], args[1], args[2], args[3]);
1720
- }
1721
- // w/o altered newTarget, lot of arguments case
1722
- var $args = [null];
1723
- $args.push.apply($args, args);
1724
- return new (bind.apply(Target, $args))();
1725
  }
1726
- // with altered newTarget, not support built-in constructors
1727
- var proto = newTarget.prototype;
1728
- var instance = create(isObject(proto) ? proto : Object.prototype);
1729
- var result = Function.apply.call(Target, instance, args);
1730
- return isObject(result) ? result : instance;
1731
  }
1732
- });
1733
-
1734
-
1735
- /***/ }),
1736
- /* 65 */
1737
- /***/ (function(module, exports) {
1738
 
1739
- (function() { module.exports = window["wp"]["compose"]; }());
1740
 
1741
- /***/ }),
1742
- /* 66 */
1743
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
1744
 
1745
- "use strict";
 
 
 
 
1746
 
1747
- var $ = __webpack_require__(12);
1748
- var fails = __webpack_require__(6);
1749
- var isArray = __webpack_require__(84);
1750
- var isObject = __webpack_require__(10);
1751
- var toObject = __webpack_require__(38);
1752
- var toLength = __webpack_require__(34);
1753
- var createProperty = __webpack_require__(102);
1754
- var arraySpeciesCreate = __webpack_require__(109);
1755
- var arrayMethodHasSpeciesSupport = __webpack_require__(89);
1756
- var wellKnownSymbol = __webpack_require__(8);
1757
- var V8_VERSION = __webpack_require__(63);
1758
-
1759
- var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
1760
- var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
1761
- var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
1762
-
1763
- // We can't use this feature detection in V8 since it causes
1764
- // deoptimization and serious performance degradation
1765
- // https://github.com/zloirock/core-js/issues/679
1766
- var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {
1767
- var array = [];
1768
- array[IS_CONCAT_SPREADABLE] = false;
1769
- return array.concat()[0] !== array;
1770
- });
1771
 
1772
- var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
 
 
 
 
 
 
1773
 
1774
- var isConcatSpreadable = function (O) {
1775
- if (!isObject(O)) return false;
1776
- var spreadable = O[IS_CONCAT_SPREADABLE];
1777
- return spreadable !== undefined ? !!spreadable : isArray(O);
1778
- };
 
1779
 
1780
- var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
1781
-
1782
- // `Array.prototype.concat` method
1783
- // https://tc39.es/ecma262/#sec-array.prototype.concat
1784
- // with adding support of @@isConcatSpreadable and @@species
1785
- $({ target: 'Array', proto: true, forced: FORCED }, {
1786
- // eslint-disable-next-line no-unused-vars -- required for `.length`
1787
- concat: function concat(arg) {
1788
- var O = toObject(this);
1789
- var A = arraySpeciesCreate(O, 0);
1790
- var n = 0;
1791
- var i, k, length, len, E;
1792
- for (i = -1, length = arguments.length; i < length; i++) {
1793
- E = i === -1 ? O : arguments[i];
1794
- if (isConcatSpreadable(E)) {
1795
- len = toLength(E.length);
1796
- if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
1797
- for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
1798
  } else {
1799
- if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
1800
- createProperty(A, n++, E);
1801
  }
 
 
1802
  }
1803
- A.length = n;
1804
- return A;
1805
  }
1806
- });
1807
-
1808
-
1809
- /***/ }),
1810
- /* 67 */
1811
- /***/ (function(module, exports, __webpack_require__) {
1812
-
1813
- var global = __webpack_require__(3);
1814
- var isObject = __webpack_require__(10);
1815
 
1816
- var document = global.document;
1817
- // typeof document.createElement is 'object' in old IE
1818
- var EXISTS = isObject(document) && isObject(document.createElement);
1819
 
1820
- module.exports = function (it) {
1821
- return EXISTS ? document.createElement(it) : {};
1822
- };
1823
 
 
 
 
1824
 
1825
- /***/ }),
1826
- /* 68 */
1827
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
1828
 
1829
- var store = __webpack_require__(47);
 
 
 
1830
 
1831
- var functionToString = Function.toString;
 
 
 
1832
 
1833
- // this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
1834
- if (typeof store.inspectSource != 'function') {
1835
- store.inspectSource = function (it) {
1836
- return functionToString.call(it);
 
1837
  };
1838
  }
1839
 
1840
- module.exports = store.inspectSource;
1841
-
1842
-
1843
- /***/ }),
1844
- /* 69 */
1845
- /***/ (function(module, exports, __webpack_require__) {
1846
-
1847
- var anObject = __webpack_require__(9);
1848
- var defineProperties = __webpack_require__(104);
1849
- var enumBugKeys = __webpack_require__(48);
1850
- var hiddenKeys = __webpack_require__(36);
1851
- var html = __webpack_require__(98);
1852
- var documentCreateElement = __webpack_require__(67);
1853
- var sharedKey = __webpack_require__(52);
1854
 
1855
- var GT = '>';
1856
- var LT = '<';
1857
- var PROTOTYPE = 'prototype';
1858
- var SCRIPT = 'script';
1859
- var IE_PROTO = sharedKey('IE_PROTO');
 
 
 
 
1860
 
1861
- var EmptyConstructor = function () { /* empty */ };
 
 
 
 
 
1862
 
1863
- var scriptTag = function (content) {
1864
- return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
1865
- };
 
 
 
 
 
1866
 
1867
- // Create object with fake `null` prototype: use ActiveX Object with cleared prototype
1868
- var NullProtoObjectViaActiveX = function (activeXDocument) {
1869
- activeXDocument.write(scriptTag(''));
1870
- activeXDocument.close();
1871
- var temp = activeXDocument.parentWindow.Object;
1872
- activeXDocument = null; // avoid memory leak
1873
- return temp;
1874
- };
1875
 
1876
- // Create object with fake `null` prototype: use iframe Object with cleared prototype
1877
- var NullProtoObjectViaIFrame = function () {
1878
- // Thrash, waste and sodomy: IE GC bug
1879
- var iframe = documentCreateElement('iframe');
1880
- var JS = 'java' + SCRIPT + ':';
1881
- var iframeDocument;
1882
- iframe.style.display = 'none';
1883
- html.appendChild(iframe);
1884
- // https://github.com/zloirock/core-js/issues/475
1885
- iframe.src = String(JS);
1886
- iframeDocument = iframe.contentWindow.document;
1887
- iframeDocument.open();
1888
- iframeDocument.write(scriptTag('document.F=Object'));
1889
- iframeDocument.close();
1890
- return iframeDocument.F;
1891
- };
1892
 
1893
- // Check for document.domain and active x support
1894
- // No need to use active x approach when document.domain is not set
1895
- // see https://github.com/es-shims/es5-shim/issues/150
1896
- // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
1897
- // avoid IE GC bug
1898
- var activeXDocument;
1899
- var NullProtoObject = function () {
1900
  try {
1901
- /* global ActiveXObject -- old IE */
1902
- activeXDocument = document.domain && new ActiveXObject('htmlfile');
1903
- } catch (error) { /* ignore */ }
1904
- NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
1905
- var length = enumBugKeys.length;
1906
- while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
1907
- return NullProtoObject();
1908
- };
1909
-
1910
- hiddenKeys[IE_PROTO] = true;
1911
-
1912
- // `Object.create` method
1913
- // https://tc39.es/ecma262/#sec-object.create
1914
- module.exports = Object.create || function create(O, Properties) {
1915
- var result;
1916
- if (O !== null) {
1917
- EmptyConstructor[PROTOTYPE] = anObject(O);
1918
- result = new EmptyConstructor();
1919
- EmptyConstructor[PROTOTYPE] = null;
1920
- // add "__proto__" for Object.getPrototypeOf polyfill
1921
- result[IE_PROTO] = O;
1922
- } else result = NullProtoObject();
1923
- return Properties === undefined ? result : defineProperties(result, Properties);
1924
- };
1925
 
1926
 
1927
- /***/ }),
1928
- /* 70 */
1929
- /***/ (function(module, exports) {
 
1930
 
1931
- module.exports = function (it) {
1932
- if (typeof it != 'function') {
1933
- throw TypeError(String(it) + ' is not a function');
1934
- } return it;
1935
- };
 
 
 
 
 
 
 
1936
 
 
 
 
 
1937
 
1938
- /***/ }),
1939
- /* 71 */
1940
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
1941
 
1942
- var fails = __webpack_require__(6);
1943
- var classof = __webpack_require__(30);
 
1944
 
1945
- var split = ''.split;
1946
 
1947
- // fallback for non-array-like ES3 and non-enumerable old V8 strings
1948
- module.exports = fails(function () {
1949
- // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
1950
- // eslint-disable-next-line no-prototype-builtins -- safe
1951
- return !Object('z').propertyIsEnumerable(0);
1952
- }) ? function (it) {
1953
- return classof(it) == 'String' ? split.call(it, '') : Object(it);
1954
- } : Object;
1955
 
 
 
 
1956
 
1957
- /***/ }),
1958
- /* 72 */
1959
- /***/ (function(module, exports, __webpack_require__) {
 
 
1960
 
1961
- var DESCRIPTORS = __webpack_require__(13);
1962
- var fails = __webpack_require__(6);
1963
- var createElement = __webpack_require__(67);
1964
 
1965
- // Thank's IE8 for his funny defineProperty
1966
- module.exports = !DESCRIPTORS && !fails(function () {
1967
- return Object.defineProperty(createElement('div'), 'a', {
1968
- get: function () { return 7; }
1969
- }).a != 7;
1970
- });
1971
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1972
 
1973
- /***/ }),
1974
- /* 73 */
1975
- /***/ (function(module, exports, __webpack_require__) {
 
1976
 
1977
- var has = __webpack_require__(11);
1978
- var toIndexedObject = __webpack_require__(21);
1979
- var indexOf = __webpack_require__(83).indexOf;
1980
- var hiddenKeys = __webpack_require__(36);
 
1981
 
1982
- module.exports = function (object, names) {
1983
- var O = toIndexedObject(object);
1984
- var i = 0;
1985
- var result = [];
1986
- var key;
1987
- for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);
1988
- // Don't enum bug & hidden keys
1989
- while (names.length > i) if (has(O, key = names[i++])) {
1990
- ~indexOf(result, key) || result.push(key);
1991
  }
1992
- return result;
1993
- };
1994
-
1995
 
1996
- /***/ }),
1997
- /* 74 */
1998
- /***/ (function(module, exports, __webpack_require__) {
1999
-
2000
- var fails = __webpack_require__(6);
2001
-
2002
- var replacement = /#|\.prototype\./;
2003
-
2004
- var isForced = function (feature, detection) {
2005
- var value = data[normalize(feature)];
2006
- return value == POLYFILL ? true
2007
- : value == NATIVE ? false
2008
- : typeof detection == 'function' ? fails(detection)
2009
- : !!detection;
2010
- };
2011
-
2012
- var normalize = isForced.normalize = function (string) {
2013
- return String(string).replace(replacement, '.').toLowerCase();
2014
- };
2015
-
2016
- var data = isForced.data = {};
2017
- var NATIVE = isForced.NATIVE = 'N';
2018
- var POLYFILL = isForced.POLYFILL = 'P';
2019
 
2020
- module.exports = isForced;
 
 
2021
 
 
 
 
 
 
 
 
 
 
2022
 
2023
- /***/ }),
2024
- /* 75 */
2025
- /***/ (function(module, exports, __webpack_require__) {
 
 
2026
 
2027
- var bind = __webpack_require__(94);
2028
- var IndexedObject = __webpack_require__(71);
2029
- var toObject = __webpack_require__(38);
2030
- var toLength = __webpack_require__(34);
2031
- var arraySpeciesCreate = __webpack_require__(109);
2032
-
2033
- var push = [].push;
2034
-
2035
- // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
2036
- var createMethod = function (TYPE) {
2037
- var IS_MAP = TYPE == 1;
2038
- var IS_FILTER = TYPE == 2;
2039
- var IS_SOME = TYPE == 3;
2040
- var IS_EVERY = TYPE == 4;
2041
- var IS_FIND_INDEX = TYPE == 6;
2042
- var IS_FILTER_OUT = TYPE == 7;
2043
- var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
2044
- return function ($this, callbackfn, that, specificCreate) {
2045
- var O = toObject($this);
2046
- var self = IndexedObject(O);
2047
- var boundFunction = bind(callbackfn, that, 3);
2048
- var length = toLength(self.length);
2049
- var index = 0;
2050
- var create = specificCreate || arraySpeciesCreate;
2051
- var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;
2052
- var value, result;
2053
- for (;length > index; index++) if (NO_HOLES || index in self) {
2054
- value = self[index];
2055
- result = boundFunction(value, index, O);
2056
- if (TYPE) {
2057
- if (IS_MAP) target[index] = result; // map
2058
- else if (result) switch (TYPE) {
2059
- case 3: return true; // some
2060
- case 5: return value; // find
2061
- case 6: return index; // findIndex
2062
- case 2: push.call(target, value); // filter
2063
- } else switch (TYPE) {
2064
- case 4: return false; // every
2065
- case 7: push.call(target, value); // filterOut
2066
  }
 
 
 
2067
  }
2068
- }
2069
- return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
2070
- };
2071
- };
2072
-
2073
- module.exports = {
2074
- // `Array.prototype.forEach` method
2075
- // https://tc39.es/ecma262/#sec-array.prototype.foreach
2076
- forEach: createMethod(0),
2077
- // `Array.prototype.map` method
2078
- // https://tc39.es/ecma262/#sec-array.prototype.map
2079
- map: createMethod(1),
2080
- // `Array.prototype.filter` method
2081
- // https://tc39.es/ecma262/#sec-array.prototype.filter
2082
- filter: createMethod(2),
2083
- // `Array.prototype.some` method
2084
- // https://tc39.es/ecma262/#sec-array.prototype.some
2085
- some: createMethod(3),
2086
- // `Array.prototype.every` method
2087
- // https://tc39.es/ecma262/#sec-array.prototype.every
2088
- every: createMethod(4),
2089
- // `Array.prototype.find` method
2090
- // https://tc39.es/ecma262/#sec-array.prototype.find
2091
- find: createMethod(5),
2092
- // `Array.prototype.findIndex` method
2093
- // https://tc39.es/ecma262/#sec-array.prototype.findIndex
2094
- findIndex: createMethod(6),
2095
- // `Array.prototype.filterOut` method
2096
- // https://github.com/tc39/proposal-array-filtering
2097
- filterOut: createMethod(7)
2098
- };
2099
-
2100
 
2101
- /***/ }),
2102
- /* 76 */
2103
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
2104
 
2105
- "use strict";
 
 
 
 
2106
 
2107
- var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
2108
- var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2109
 
2110
- // Nashorn ~ JDK8 bug
2111
- var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
 
2112
 
2113
- // `Object.prototype.propertyIsEnumerable` method implementation
2114
- // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
2115
- exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
2116
- var descriptor = getOwnPropertyDescriptor(this, V);
2117
- return !!descriptor && descriptor.enumerable;
2118
- } : nativePropertyIsEnumerable;
2119
 
 
 
 
2120
 
2121
- /***/ }),
2122
- /* 77 */
2123
- /***/ (function(module, exports, __webpack_require__) {
2124
 
2125
- var classof = __webpack_require__(30);
2126
- var global = __webpack_require__(3);
2127
 
2128
- module.exports = classof(global.process) == 'process';
 
 
 
 
 
 
 
2129
 
 
2130
 
2131
- /***/ }),
2132
- /* 78 */
2133
- /***/ (function(module, exports) {
 
2134
 
2135
- (function() { module.exports = window["wp"]["url"]; }());
2136
 
2137
- /***/ }),
2138
- /* 79 */
2139
- /***/ (function(module, exports) {
 
2140
 
2141
- exports.f = Object.getOwnPropertySymbols;
 
 
 
 
2142
 
 
 
 
2143
 
2144
- /***/ }),
2145
- /* 80 */
2146
- /***/ (function(module, exports) {
 
 
 
 
 
2147
 
2148
- function _extends() {
2149
- module.exports = _extends = Object.assign || function (target) {
2150
- for (var i = 1; i < arguments.length; i++) {
2151
- var source = arguments[i];
 
 
 
 
 
 
 
 
 
 
 
2152
 
2153
- for (var key in source) {
2154
- if (Object.prototype.hasOwnProperty.call(source, key)) {
2155
- target[key] = source[key];
2156
- }
2157
- }
 
 
 
2158
  }
 
 
 
 
 
 
 
 
 
 
2159
 
2160
- return target;
2161
- };
 
 
2162
 
2163
- return _extends.apply(this, arguments);
 
 
 
 
 
2164
  }
2165
 
2166
- module.exports = _extends;
 
 
2167
 
2168
- /***/ }),
2169
- /* 81 */
2170
- /***/ (function(module, exports, __webpack_require__) {
2171
 
2172
- var global = __webpack_require__(3);
 
 
 
2173
 
2174
- module.exports = global;
 
 
 
 
 
 
 
 
 
 
 
2175
 
 
 
 
 
 
 
2176
 
2177
- /***/ }),
2178
- /* 82 */
2179
- /***/ (function(module, exports, __webpack_require__) {
2180
 
2181
- var wellKnownSymbol = __webpack_require__(8);
 
2182
 
2183
- var TO_STRING_TAG = wellKnownSymbol('toStringTag');
2184
- var test = {};
 
2185
 
2186
- test[TO_STRING_TAG] = 'z';
 
2187
 
2188
- module.exports = String(test) === '[object z]';
 
 
2189
 
 
 
 
2190
 
2191
- /***/ }),
2192
- /* 83 */
2193
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
2194
 
2195
- var toIndexedObject = __webpack_require__(21);
2196
- var toLength = __webpack_require__(34);
2197
- var toAbsoluteIndex = __webpack_require__(97);
2198
-
2199
- // `Array.prototype.{ indexOf, includes }` methods implementation
2200
- var createMethod = function (IS_INCLUDES) {
2201
- return function ($this, el, fromIndex) {
2202
- var O = toIndexedObject($this);
2203
- var length = toLength(O.length);
2204
- var index = toAbsoluteIndex(fromIndex, length);
2205
- var value;
2206
- // Array#includes uses SameValueZero equality algorithm
2207
- // eslint-disable-next-line no-self-compare -- NaN check
2208
- if (IS_INCLUDES && el != el) while (length > index) {
2209
- value = O[index++];
2210
- // eslint-disable-next-line no-self-compare -- NaN check
2211
- if (value != value) return true;
2212
- // Array#indexOf ignores holes, Array#includes - not
2213
- } else for (;length > index; index++) {
2214
- if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
2215
- } return !IS_INCLUDES && -1;
2216
- };
2217
- };
2218
 
2219
- module.exports = {
2220
- // `Array.prototype.includes` method
2221
- // https://tc39.es/ecma262/#sec-array.prototype.includes
2222
- includes: createMethod(true),
2223
- // `Array.prototype.indexOf` method
2224
- // https://tc39.es/ecma262/#sec-array.prototype.indexof
2225
- indexOf: createMethod(false)
2226
- };
2227
-
2228
-
2229
- /***/ }),
2230
- /* 84 */
2231
- /***/ (function(module, exports, __webpack_require__) {
2232
-
2233
- var classof = __webpack_require__(30);
2234
 
2235
- // `IsArray` abstract operation
2236
- // https://tc39.es/ecma262/#sec-isarray
2237
- module.exports = Array.isArray || function isArray(arg) {
2238
- return classof(arg) == 'Array';
2239
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
2240
 
 
 
 
 
2241
 
2242
- /***/ }),
2243
- /* 85 */
2244
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
2245
 
2246
- "use strict";
2247
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ADMIN_URL; });
2248
- /* unused harmony export COUNTRIES */
2249
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return CURRENCY; });
2250
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return LOCALE; });
2251
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return ORDER_STATUSES; });
2252
- /* unused harmony export SITE_TITLE */
2253
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return WC_ASSET_URL; });
2254
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return getSetting; });
2255
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return setSetting; });
2256
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return getAdminLink; });
2257
- /* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(108);
2258
- /* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__);
2259
- /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(37);
2260
- /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_1__);
2261
- /* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(107);
2262
- /* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_2__);
2263
- /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2);
2264
- /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__);
2265
 
2266
 
 
 
 
 
 
2267
 
 
 
 
2268
 
2269
- /**
2270
- * External dependencies
2271
- */
2272
- // Remove mutable data from settings object to prevent access. Data stores should be used instead.
2273
 
2274
- var mutableSources = ['wcAdminSettings', 'preloadSettings'];
2275
- var settings = (typeof wcSettings === "undefined" ? "undefined" : _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(wcSettings)) === 'object' ? wcSettings : {};
2276
- var SOURCE = Object.keys(settings).reduce(function (source, key) {
2277
- if (!mutableSources.includes(key)) {
2278
- source[key] = settings[key];
2279
  }
2280
 
2281
- return source;
2282
- }, {});
2283
- var ADMIN_URL = SOURCE.adminUrl;
2284
- var COUNTRIES = SOURCE.countries;
2285
- var CURRENCY = SOURCE.currency;
2286
- var LOCALE = SOURCE.locale;
2287
- var ORDER_STATUSES = SOURCE.orderStatuses;
2288
- var SITE_TITLE = SOURCE.siteTitle;
2289
- var WC_ASSET_URL = SOURCE.wcAssetUrl;
2290
- /**
2291
- * Retrieves a setting value from the setting state.
2292
- *
2293
- * @param {string} name The identifier for the setting.
2294
- * @param {*} [fallback=false] The value to use as a fallback
2295
- * if the setting is not in the
2296
- * state.
2297
- * @param {Function} [filter=( val ) => val] A callback for filtering the
2298
- * value before it's returned.
2299
- * Receives both the found value
2300
- * (if it exists for the key) and
2301
- * the provided fallback arg.
2302
- *
2303
- * @return {*} The value present in the settings state for the given
2304
- * name.
2305
- */
2306
-
2307
- function getSetting(name) {
2308
- var fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
2309
- var filter = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (val) {
2310
- return val;
2311
- };
2312
 
2313
- if (mutableSources.includes(name)) {
2314
- throw new Error(Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Mutable settings should be accessed via data store.'));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2315
  }
2316
 
2317
- var value = SOURCE.hasOwnProperty(name) ? SOURCE[name] : fallback;
2318
- return filter(value, fallback);
2319
- }
2320
- /**
2321
- * Sets a value to a property on the settings state.
2322
- *
2323
- * NOTE: This feature is to be removed in favour of data stores when a full migration
2324
- * is complete.
2325
- *
2326
- * @deprecated
2327
- *
2328
- * @param {string} name The setting property key for the
2329
- * setting being mutated.
2330
- * @param {*} value The value to set.
2331
- * @param {Function} [filter=( val ) => val] Allows for providing a callback
2332
- * to sanitize the setting (eg.
2333
- * ensure it's a number)
2334
- */
2335
 
2336
- function setSetting(name, value) {
2337
- var filter = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (val) {
2338
- return val;
2339
- };
 
 
 
2340
 
2341
- if (mutableSources.includes(name)) {
2342
- throw new Error(Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Mutable settings should be mutated via data store.'));
 
 
 
 
 
2343
  }
2344
 
2345
- SOURCE[name] = filter(value);
2346
- }
2347
- /**
2348
- * Returns a string with the site's wp-admin URL appended. JS version of `admin_url`.
2349
- *
2350
- * @param {string} path Relative path.
2351
- * @return {string} Full admin URL.
2352
- */
2353
-
2354
- function getAdminLink(path) {
2355
- return (ADMIN_URL || '') + path;
2356
- }
2357
-
2358
- /***/ }),
2359
- /* 86 */
2360
- /***/ (function(module, exports, __webpack_require__) {
2361
-
2362
- var getBuiltIn = __webpack_require__(31);
2363
- var getOwnPropertyNamesModule = __webpack_require__(56);
2364
- var getOwnPropertySymbolsModule = __webpack_require__(79);
2365
- var anObject = __webpack_require__(9);
2366
-
2367
- // all object keys, includes non-enumerable and symbols
2368
- module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
2369
- var keys = getOwnPropertyNamesModule.f(anObject(it));
2370
- var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
2371
- return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
2372
- };
2373
-
2374
-
2375
- /***/ }),
2376
- /* 87 */
2377
- /***/ (function(module, exports, __webpack_require__) {
2378
-
2379
- var getBuiltIn = __webpack_require__(31);
2380
 
2381
- module.exports = getBuiltIn('navigator', 'userAgent') || '';
 
 
2382
 
 
 
 
2383
 
2384
- /***/ }),
2385
- /* 88 */
2386
- /***/ (function(module, exports, __webpack_require__) {
2387
 
2388
- "use strict";
 
2389
 
2390
- var $ = __webpack_require__(12);
2391
- var exec = __webpack_require__(91);
 
 
 
 
2392
 
2393
- // `RegExp.prototype.exec` method
2394
- // https://tc39.es/ecma262/#sec-regexp.prototype.exec
2395
- $({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {
2396
- exec: exec
2397
- });
2398
 
 
 
 
 
2399
 
2400
- /***/ }),
2401
- /* 89 */
2402
- /***/ (function(module, exports, __webpack_require__) {
2403
 
2404
- var fails = __webpack_require__(6);
2405
- var wellKnownSymbol = __webpack_require__(8);
2406
- var V8_VERSION = __webpack_require__(63);
 
2407
 
2408
- var SPECIES = wellKnownSymbol('species');
 
 
 
 
2409
 
2410
- module.exports = function (METHOD_NAME) {
2411
- // We can't use this feature detection in V8 since it causes
2412
- // deoptimization and serious performance degradation
2413
- // https://github.com/zloirock/core-js/issues/677
2414
- return V8_VERSION >= 51 || !fails(function () {
2415
- var array = [];
2416
- var constructor = array.constructor = {};
2417
- constructor[SPECIES] = function () {
2418
- return { foo: 1 };
2419
  };
2420
- return array[METHOD_NAME](Boolean).foo !== 1;
2421
- });
2422
- };
2423
-
2424
-
2425
- /***/ }),
2426
- /* 90 */
2427
- /***/ (function(module, exports, __webpack_require__) {
2428
 
2429
- var defineProperty = __webpack_require__(17).f;
2430
- var has = __webpack_require__(11);
2431
- var wellKnownSymbol = __webpack_require__(8);
2432
-
2433
- var TO_STRING_TAG = wellKnownSymbol('toStringTag');
2434
-
2435
- module.exports = function (it, TAG, STATIC) {
2436
- if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {
2437
- defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });
2438
  }
2439
- };
2440
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2441
 
2442
- /***/ }),
2443
- /* 91 */
2444
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
2445
 
2446
- "use strict";
2447
 
2448
- var regexpFlags = __webpack_require__(114);
2449
- var stickyHelpers = __webpack_require__(137);
 
 
2450
 
2451
- var nativeExec = RegExp.prototype.exec;
2452
- // This always refers to the native implementation, because the
2453
- // String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
2454
- // which loads this file before patching the method.
2455
- var nativeReplace = String.prototype.replace;
 
 
 
 
2456
 
2457
- var patchedExec = nativeExec;
 
2458
 
2459
- var UPDATES_LAST_INDEX_WRONG = (function () {
2460
- var re1 = /a/;
2461
- var re2 = /b*/g;
2462
- nativeExec.call(re1, 'a');
2463
- nativeExec.call(re2, 'a');
2464
- return re1.lastIndex !== 0 || re2.lastIndex !== 0;
2465
- })();
2466
 
2467
- var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;
 
 
2468
 
2469
- // nonparticipating capturing group, copied from es5-shim's String#split patch.
2470
- // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing
2471
- var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
 
2472
 
2473
- var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;
2474
 
2475
- if (PATCH) {
2476
- patchedExec = function exec(str) {
2477
- var re = this;
2478
- var lastIndex, reCopy, match, i;
2479
- var sticky = UNSUPPORTED_Y && re.sticky;
2480
- var flags = regexpFlags.call(re);
2481
- var source = re.source;
2482
- var charsAdded = 0;
2483
- var strCopy = str;
2484
 
2485
- if (sticky) {
2486
- flags = flags.replace('y', '');
2487
- if (flags.indexOf('g') === -1) {
2488
- flags += 'g';
2489
  }
2490
 
2491
- strCopy = String(str).slice(re.lastIndex);
2492
- // Support anchored sticky behavior.
2493
- if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) {
2494
- source = '(?: ' + source + ')';
2495
- strCopy = ' ' + strCopy;
2496
- charsAdded++;
2497
- }
2498
- // ^(? + rx + ) is needed, in combination with some str slicing, to
2499
- // simulate the 'y' flag.
2500
- reCopy = new RegExp('^(?:' + source + ')', flags);
2501
- }
2502
-
2503
- if (NPCG_INCLUDED) {
2504
- reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
2505
- }
2506
- if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
2507
-
2508
- match = nativeExec.call(sticky ? reCopy : re, strCopy);
2509
-
2510
- if (sticky) {
2511
- if (match) {
2512
- match.input = match.input.slice(charsAdded);
2513
- match[0] = match[0].slice(charsAdded);
2514
- match.index = re.lastIndex;
2515
- re.lastIndex += match[0].length;
2516
- } else re.lastIndex = 0;
2517
- } else if (UPDATES_LAST_INDEX_WRONG && match) {
2518
- re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
2519
- }
2520
- if (NPCG_INCLUDED && match && match.length > 1) {
2521
- // Fix browsers whose `exec` methods don't consistently return `undefined`
2522
- // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
2523
- nativeReplace.call(match[0], reCopy, function () {
2524
- for (i = 1; i < arguments.length - 2; i++) {
2525
- if (arguments[i] === undefined) match[i] = undefined;
2526
- }
2527
  });
2528
- }
2529
-
2530
- return match;
2531
- };
2532
- }
2533
-
2534
- module.exports = patchedExec;
2535
-
2536
-
2537
- /***/ }),
2538
- /* 92 */
2539
- /***/ (function(module, exports) {
2540
 
2541
- (function() { module.exports = window["wc"]["tracks"]; }());
 
 
 
 
 
 
 
 
 
 
 
 
2542
 
2543
- /***/ }),
2544
- /* 93 */
2545
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2546
 
2547
- var NATIVE_SYMBOL = __webpack_require__(62);
 
 
2548
 
2549
- module.exports = NATIVE_SYMBOL
2550
- /* global Symbol -- safe */
2551
- && !Symbol.sham
2552
- && typeof Symbol.iterator == 'symbol';
2553
 
 
 
 
 
2554
 
2555
- /***/ }),
2556
- /* 94 */
2557
- /***/ (function(module, exports, __webpack_require__) {
 
2558
 
2559
- var aFunction = __webpack_require__(70);
 
2560
 
2561
- // optional / simple context binding
2562
- module.exports = function (fn, that, length) {
2563
- aFunction(fn);
2564
- if (that === undefined) return fn;
2565
- switch (length) {
2566
- case 0: return function () {
2567
- return fn.call(that);
2568
- };
2569
- case 1: return function (a) {
2570
- return fn.call(that, a);
2571
- };
2572
- case 2: return function (a, b) {
2573
- return fn.call(that, a, b);
2574
- };
2575
- case 3: return function (a, b, c) {
2576
- return fn.call(that, a, b, c);
2577
- };
2578
  }
2579
- return function (/* ...args */) {
2580
- return fn.apply(that, arguments);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2581
  };
2582
- };
 
2583
 
2584
 
2585
- /***/ }),
2586
- /* 95 */
2587
- /***/ (function(module, exports) {
2588
 
2589
- (function() { module.exports = window["wp"]["apiFetch"]; }());
2590
 
2591
  /***/ }),
2592
- /* 96 */
2593
- /***/ (function(module, exports) {
2594
-
2595
- var g;
2596
 
2597
- // This works in non-strict mode
2598
- g = (function() {
2599
- return this;
2600
- })();
2601
 
2602
- try {
2603
- // This works if eval is allowed (see CSP)
2604
- g = g || new Function("return this")();
2605
- } catch (e) {
2606
- // This works if the window reference is available
2607
- if (typeof window === "object") g = window;
2608
- }
 
 
 
 
 
2609
 
2610
- // g can still be undefined, but nothing to do about it...
2611
- // We return undefined, instead of nothing here, so it's
2612
- // easier to handle this case. if(!global) { ...}
2613
 
2614
- module.exports = g;
2615
 
2616
 
2617
- /***/ }),
2618
- /* 97 */
2619
- /***/ (function(module, exports, __webpack_require__) {
2620
 
2621
- var toInteger = __webpack_require__(42);
2622
 
2623
- var max = Math.max;
2624
- var min = Math.min;
2625
 
2626
- // Helper for a popular repeating case of the spec:
2627
- // Let integer be ? ToInteger(index).
2628
- // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
2629
- module.exports = function (index, length) {
2630
- var integer = toInteger(index);
2631
- return integer < 0 ? max(integer + length, 0) : min(integer, length);
2632
- };
2633
 
 
2634
 
2635
- /***/ }),
2636
- /* 98 */
2637
- /***/ (function(module, exports, __webpack_require__) {
2638
 
2639
- var getBuiltIn = __webpack_require__(31);
 
 
2640
 
2641
- module.exports = getBuiltIn('document', 'documentElement');
2642
 
2643
 
2644
- /***/ }),
2645
- /* 99 */,
2646
- /* 100 */
2647
- /***/ (function(module, exports, __webpack_require__) {
2648
 
2649
- var TO_STRING_TAG_SUPPORT = __webpack_require__(82);
2650
- var redefine = __webpack_require__(27);
2651
- var toString = __webpack_require__(130);
2652
 
2653
- // `Object.prototype.toString` method
2654
- // https://tc39.es/ecma262/#sec-object.prototype.tostring
2655
- if (!TO_STRING_TAG_SUPPORT) {
2656
- redefine(Object.prototype, 'toString', toString, { unsafe: true });
2657
- }
2658
 
 
 
2659
 
2660
- /***/ }),
2661
- /* 101 */
2662
- /***/ (function(module, exports) {
2663
 
2664
- (function() { module.exports = window["wc"]["date"]; }());
 
 
 
 
2665
 
2666
- /***/ }),
2667
- /* 102 */
2668
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
2669
 
2670
- "use strict";
2671
 
2672
- var toPrimitive = __webpack_require__(40);
2673
- var definePropertyModule = __webpack_require__(17);
2674
- var createPropertyDescriptor = __webpack_require__(39);
2675
 
2676
- module.exports = function (object, key, value) {
2677
- var propertyKey = toPrimitive(key);
2678
- if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));
2679
- else object[propertyKey] = value;
2680
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2681
 
 
 
 
 
 
2682
 
2683
  /***/ }),
2684
- /* 103 */
2685
- /***/ (function(module, exports, __webpack_require__) {
2686
 
2687
- var has = __webpack_require__(11);
2688
- var ownKeys = __webpack_require__(86);
2689
- var getOwnPropertyDescriptorModule = __webpack_require__(33);
2690
- var definePropertyModule = __webpack_require__(17);
2691
 
2692
- module.exports = function (target, source) {
2693
- var keys = ownKeys(source);
2694
- var defineProperty = definePropertyModule.f;
2695
- var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
2696
- for (var i = 0; i < keys.length; i++) {
2697
- var key = keys[i];
2698
- if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
2699
  }
2700
- };
2701
 
 
 
2702
 
2703
  /***/ }),
2704
- /* 104 */
2705
- /***/ (function(module, exports, __webpack_require__) {
2706
-
2707
- var DESCRIPTORS = __webpack_require__(13);
2708
- var definePropertyModule = __webpack_require__(17);
2709
- var anObject = __webpack_require__(9);
2710
- var objectKeys = __webpack_require__(54);
2711
-
2712
- // `Object.defineProperties` method
2713
- // https://tc39.es/ecma262/#sec-object.defineproperties
2714
- module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {
2715
- anObject(O);
2716
- var keys = objectKeys(Properties);
2717
- var length = keys.length;
2718
- var index = 0;
2719
- var key;
2720
- while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);
2721
- return O;
2722
- };
2723
-
2724
 
2725
- /***/ }),
2726
- /* 105 */
2727
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2728
 
2729
  "use strict";
2730
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Navigation; });
2731
- /* unused harmony export NavigationBackButton */
2732
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return NavigationGroup; });
2733
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return NavigationMenu; });
2734
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return NavigationItem; });
2735
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return Text; });
2736
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return useSlot; });
2737
- /* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);
2738
- /* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_0__);
2739
- /**
2740
- * External dependencies
2741
- */
2742
 
2743
- /**
2744
- * Prioritize exports of non-experimental components over experimental.
2745
- */
2746
 
2747
- var Navigation = _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["Navigation"] || _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["__experimentalNavigation"];
2748
- var NavigationBackButton = _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["NavigationBackButton"] || _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["__experimentalNavigationBackButton"];
2749
- var NavigationGroup = _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["NavigationGroup"] || _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["__experimentalNavigationGroup"];
2750
- var NavigationMenu = _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["NavigationMenu"] || _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["__experimentalNavigationMenu"];
2751
- var NavigationItem = _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["NavigationItem"] || _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["__experimentalNavigationItem"];
2752
- var Text = _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["Text"] || _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["__experimentalText"];
2753
- var useSlot = _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["useSlot"] || _wordpress_components__WEBPACK_IMPORTED_MODULE_0__["__experimentalUseSlot"];
2754
-
2755
- /***/ }),
2756
- /* 106 */
2757
- /***/ (function(module, exports, __webpack_require__) {
2758
 
2759
- var global = __webpack_require__(3);
2760
- var inspectSource = __webpack_require__(68);
2761
 
2762
- var WeakMap = global.WeakMap;
2763
 
2764
- module.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));
2765
 
2766
 
2767
- /***/ }),
2768
- /* 107 */
2769
- /***/ (function(module, exports, __webpack_require__) {
2770
 
2771
- "use strict";
2772
 
2773
- var $ = __webpack_require__(12);
2774
- var $includes = __webpack_require__(83).includes;
2775
- var addToUnscopables = __webpack_require__(118);
2776
 
2777
- // `Array.prototype.includes` method
2778
- // https://tc39.es/ecma262/#sec-array.prototype.includes
2779
- $({ target: 'Array', proto: true }, {
2780
- includes: function includes(el /* , fromIndex = 0 */) {
2781
- return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
2782
- }
2783
- });
2784
 
2785
- // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
2786
- addToUnscopables('includes');
 
2787
 
 
 
 
2788
 
2789
- /***/ }),
2790
- /* 108 */
2791
- /***/ (function(module, exports) {
2792
 
2793
- function _typeof(obj) {
2794
- "@babel/helpers - typeof";
2795
 
2796
- if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
2797
- module.exports = _typeof = function _typeof(obj) {
2798
- return typeof obj;
2799
- };
2800
- } else {
2801
- module.exports = _typeof = function _typeof(obj) {
2802
- return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
2803
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2804
  }
2805
 
2806
- return _typeof(obj);
2807
  }
2808
 
2809
- module.exports = _typeof;
 
 
2810
 
2811
- /***/ }),
2812
- /* 109 */
2813
- /***/ (function(module, exports, __webpack_require__) {
2814
 
2815
- var isObject = __webpack_require__(10);
2816
- var isArray = __webpack_require__(84);
2817
- var wellKnownSymbol = __webpack_require__(8);
2818
-
2819
- var SPECIES = wellKnownSymbol('species');
2820
-
2821
- // `ArraySpeciesCreate` abstract operation
2822
- // https://tc39.es/ecma262/#sec-arrayspeciescreate
2823
- module.exports = function (originalArray, length) {
2824
- var C;
2825
- if (isArray(originalArray)) {
2826
- C = originalArray.constructor;
2827
- // cross-realm fallback
2828
- if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
2829
- else if (isObject(C)) {
2830
- C = C[SPECIES];
2831
- if (C === null) C = undefined;
2832
- }
2833
- } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
2834
- };
2835
 
 
2836
 
2837
- /***/ }),
2838
- /* 110 */
2839
- /***/ (function(module, exports) {
 
 
 
 
2840
 
2841
- module.exports = {};
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2842
 
 
 
 
2843
 
2844
- /***/ }),
2845
- /* 111 */
2846
- /***/ (function(module, exports, __webpack_require__) {
2847
 
2848
- "use strict";
 
 
 
 
 
 
 
 
2849
 
2850
- // TODO: Remove from `core-js@4` since it's moved to entry points
2851
- __webpack_require__(88);
2852
- var redefine = __webpack_require__(27);
2853
- var fails = __webpack_require__(6);
2854
- var wellKnownSymbol = __webpack_require__(8);
2855
- var regexpExec = __webpack_require__(91);
2856
- var createNonEnumerableProperty = __webpack_require__(19);
2857
-
2858
- var SPECIES = wellKnownSymbol('species');
2859
-
2860
- var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
2861
- // #replace needs built-in support for named groups.
2862
- // #match works fine because it just return the exec results, even if it has
2863
- // a "grops" property.
2864
- var re = /./;
2865
- re.exec = function () {
2866
- var result = [];
2867
- result.groups = { a: '7' };
2868
- return result;
2869
- };
2870
- return ''.replace(re, '$<a>') !== '7';
2871
- });
2872
 
2873
- // IE <= 11 replaces $0 with the whole match, as if it was $&
2874
- // https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
2875
- var REPLACE_KEEPS_$0 = (function () {
2876
- return 'a'.replace(/./, '$0') === '$0';
2877
- })();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2878
 
2879
- var REPLACE = wellKnownSymbol('replace');
2880
- // Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string
2881
- var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {
2882
- if (/./[REPLACE]) {
2883
- return /./[REPLACE]('a', '$0') === '';
2884
- }
2885
- return false;
2886
- })();
2887
 
2888
- // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
2889
- // Weex JS has frozen built-in prototypes, so use try / catch wrapper
2890
- var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
2891
- // eslint-disable-next-line regexp/no-empty-group -- required for testing
2892
- var re = /(?:)/;
2893
- var originalExec = re.exec;
2894
- re.exec = function () { return originalExec.apply(this, arguments); };
2895
- var result = 'ab'.split(re);
2896
- return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
2897
- });
2898
 
2899
- module.exports = function (KEY, length, exec, sham) {
2900
- var SYMBOL = wellKnownSymbol(KEY);
2901
 
2902
- var DELEGATES_TO_SYMBOL = !fails(function () {
2903
- // String methods call symbol-named RegEp methods
2904
- var O = {};
2905
- O[SYMBOL] = function () { return 7; };
2906
- return ''[KEY](O) != 7;
2907
- });
2908
 
2909
- var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {
2910
- // Symbol-named RegExp methods call .exec
2911
- var execCalled = false;
2912
- var re = /a/;
2913
 
2914
- if (KEY === 'split') {
2915
- // We can't use real regex here since it causes deoptimization
2916
- // and serious performance degradation in V8
2917
- // https://github.com/zloirock/core-js/issues/306
2918
- re = {};
2919
- // RegExp[@@split] doesn't call the regex's exec method, but first creates
2920
- // a new one. We need to return the patched regex when creating the new one.
2921
- re.constructor = {};
2922
- re.constructor[SPECIES] = function () { return re; };
2923
- re.flags = '';
2924
- re[SYMBOL] = /./[SYMBOL];
2925
- }
2926
 
2927
- re.exec = function () { execCalled = true; return null; };
2928
 
2929
- re[SYMBOL]('');
2930
- return !execCalled;
2931
- });
2932
 
2933
- if (
2934
- !DELEGATES_TO_SYMBOL ||
2935
- !DELEGATES_TO_EXEC ||
2936
- (KEY === 'replace' && !(
2937
- REPLACE_SUPPORTS_NAMED_GROUPS &&
2938
- REPLACE_KEEPS_$0 &&
2939
- !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
2940
- )) ||
2941
- (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
2942
- ) {
2943
- var nativeRegExpMethod = /./[SYMBOL];
2944
- var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
2945
- if (regexp.exec === regexpExec) {
2946
- if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
2947
- // The native String method already delegates to @@method (this
2948
- // polyfilled function), leasing to infinite recursion.
2949
- // We avoid it by directly calling the native @@method method.
2950
- return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
2951
- }
2952
- return { done: true, value: nativeMethod.call(str, regexp, arg2) };
2953
- }
2954
- return { done: false };
2955
- }, {
2956
- REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,
2957
- REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
2958
- });
2959
- var stringMethod = methods[0];
2960
- var regexMethod = methods[1];
2961
-
2962
- redefine(String.prototype, KEY, stringMethod);
2963
- redefine(RegExp.prototype, SYMBOL, length == 2
2964
- // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
2965
- // 21.2.5.11 RegExp.prototype[@@split](string, limit)
2966
- ? function (string, arg) { return regexMethod.call(string, this, arg); }
2967
- // 21.2.5.6 RegExp.prototype[@@match](string)
2968
- // 21.2.5.9 RegExp.prototype[@@search](string)
2969
- : function (string) { return regexMethod.call(string, this); }
2970
- );
2971
- }
2972
 
2973
- if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);
2974
- };
 
2975
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2976
 
2977
  /***/ }),
2978
- /* 112 */
2979
- /***/ (function(module, exports, __webpack_require__) {
2980
 
2981
- var classof = __webpack_require__(30);
2982
- var regexpExec = __webpack_require__(91);
2983
 
2984
- // `RegExpExec` abstract operation
2985
- // https://tc39.es/ecma262/#sec-regexpexec
2986
- module.exports = function (R, S) {
2987
- var exec = R.exec;
2988
- if (typeof exec === 'function') {
2989
- var result = exec.call(R, S);
2990
- if (typeof result !== 'object') {
2991
- throw TypeError('RegExp exec method returned something other than an Object or null');
2992
- }
2993
- return result;
2994
- }
2995
 
2996
- if (classof(R) !== 'RegExp') {
2997
- throw TypeError('RegExp#exec called on incompatible receiver');
2998
- }
2999
 
3000
- return regexpExec.call(R, S);
3001
- };
3002
 
 
 
3003
 
 
 
3004
 
3005
- /***/ }),
3006
- /* 113 */
3007
- /***/ (function(module, exports, __webpack_require__) {
3008
 
3009
- var TO_STRING_TAG_SUPPORT = __webpack_require__(82);
3010
- var classofRaw = __webpack_require__(30);
3011
- var wellKnownSymbol = __webpack_require__(8);
3012
 
3013
- var TO_STRING_TAG = wellKnownSymbol('toStringTag');
3014
- // ES3 wrong here
3015
- var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
3016
 
3017
- // fallback for IE11 Script Access Denied error
3018
- var tryGet = function (it, key) {
3019
- try {
3020
- return it[key];
3021
- } catch (error) { /* empty */ }
3022
- };
3023
 
3024
- // getting tag from ES6+ `Object.prototype.toString`
3025
- module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
3026
- var O, tag, result;
3027
- return it === undefined ? 'Undefined' : it === null ? 'Null'
3028
- // @@toStringTag case
3029
- : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag
3030
- // builtinTag case
3031
- : CORRECT_ARGUMENTS ? classofRaw(O)
3032
- // ES3 arguments fallback
3033
- : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;
3034
- };
3035
 
 
 
3036
 
3037
- /***/ }),
3038
- /* 114 */
3039
- /***/ (function(module, exports, __webpack_require__) {
3040
 
3041
- "use strict";
3042
 
3043
- var anObject = __webpack_require__(9);
3044
-
3045
- // `RegExp.prototype.flags` getter implementation
3046
- // https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
3047
- module.exports = function () {
3048
- var that = anObject(this);
3049
- var result = '';
3050
- if (that.global) result += 'g';
3051
- if (that.ignoreCase) result += 'i';
3052
- if (that.multiline) result += 'm';
3053
- if (that.dotAll) result += 's';
3054
- if (that.unicode) result += 'u';
3055
- if (that.sticky) result += 'y';
3056
- return result;
3057
- };
3058
 
3059
 
3060
- /***/ }),
3061
- /* 115 */,
3062
- /* 116 */
3063
- /***/ (function(module, exports, __webpack_require__) {
3064
 
3065
- var objectWithoutPropertiesLoose = __webpack_require__(233);
3066
 
3067
- function _objectWithoutProperties(source, excluded) {
3068
- if (source == null) return {};
3069
- var target = objectWithoutPropertiesLoose(source, excluded);
3070
- var key, i;
3071
 
3072
- if (Object.getOwnPropertySymbols) {
3073
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
3074
 
3075
- for (i = 0; i < sourceSymbolKeys.length; i++) {
3076
- key = sourceSymbolKeys[i];
3077
- if (excluded.indexOf(key) >= 0) continue;
3078
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
3079
- target[key] = source[key];
3080
- }
3081
- }
3082
 
3083
- return target;
3084
- }
3085
 
3086
- module.exports = _objectWithoutProperties;
3087
 
3088
- /***/ }),
3089
- /* 117 */
3090
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
3091
 
3092
- "use strict";
3093
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _extends; });
3094
- function _extends() {
3095
- _extends = Object.assign || function (target) {
3096
- for (var i = 1; i < arguments.length; i++) {
3097
- var source = arguments[i];
3098
 
3099
- for (var key in source) {
3100
- if (Object.prototype.hasOwnProperty.call(source, key)) {
3101
- target[key] = source[key];
3102
- }
3103
- }
3104
- }
3105
 
3106
- return target;
3107
- };
3108
 
3109
- return _extends.apply(this, arguments);
3110
- }
3111
 
3112
- /***/ }),
3113
- /* 118 */
3114
- /***/ (function(module, exports, __webpack_require__) {
 
 
3115
 
3116
- var wellKnownSymbol = __webpack_require__(8);
3117
- var create = __webpack_require__(69);
3118
- var definePropertyModule = __webpack_require__(17);
 
 
 
 
 
3119
 
3120
- var UNSCOPABLES = wellKnownSymbol('unscopables');
3121
- var ArrayPrototype = Array.prototype;
3122
 
3123
- // Array.prototype[@@unscopables]
3124
- // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
3125
- if (ArrayPrototype[UNSCOPABLES] == undefined) {
3126
- definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {
3127
- configurable: true,
3128
- value: create(null)
3129
- });
3130
- }
3131
 
3132
- // add a key to Array.prototype[@@unscopables]
3133
- module.exports = function (key) {
3134
- ArrayPrototype[UNSCOPABLES][key] = true;
3135
- };
3136
 
 
 
3137
 
3138
- /***/ }),
3139
- /* 119 */
3140
- /***/ (function(module, exports, __webpack_require__) {
3141
 
3142
- var wellKnownSymbol = __webpack_require__(8);
 
 
 
 
 
 
3143
 
3144
- exports.f = wellKnownSymbol;
 
 
 
 
 
 
 
 
 
 
3145
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3146
 
3147
- /***/ }),
3148
- /* 120 */,
3149
- /* 121 */
3150
- /***/ (function(module, exports, __webpack_require__) {
3151
 
3152
- "use strict";
3153
 
3154
- var fails = __webpack_require__(6);
 
3155
 
3156
- module.exports = function (METHOD_NAME, argument) {
3157
- var method = [][METHOD_NAME];
3158
- return !!method && fails(function () {
3159
- // eslint-disable-next-line no-useless-call,no-throw-literal -- required for testing
3160
- method.call(null, argument || function () { throw 1; }, 1);
3161
- });
3162
- };
3163
 
3164
 
3165
- /***/ }),
3166
- /* 122 */
3167
- /***/ (function(module, exports, __webpack_require__) {
3168
 
3169
- "use strict";
3170
 
3171
- var charAt = __webpack_require__(125).charAt;
3172
 
3173
- // `AdvanceStringIndex` abstract operation
3174
- // https://tc39.es/ecma262/#sec-advancestringindex
3175
- module.exports = function (S, index, unicode) {
3176
- return index + (unicode ? charAt(S, index).length : 1);
3177
- };
3178
 
3179
 
3180
- /***/ }),
3181
- /* 123 */
3182
- /***/ (function(module, exports, __webpack_require__) {
3183
 
3184
- "use strict";
3185
 
3186
- var toIndexedObject = __webpack_require__(21);
3187
- var addToUnscopables = __webpack_require__(118);
3188
- var Iterators = __webpack_require__(110);
3189
- var InternalStateModule = __webpack_require__(45);
3190
- var defineIterator = __webpack_require__(166);
3191
-
3192
- var ARRAY_ITERATOR = 'Array Iterator';
3193
- var setInternalState = InternalStateModule.set;
3194
- var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);
3195
-
3196
- // `Array.prototype.entries` method
3197
- // https://tc39.es/ecma262/#sec-array.prototype.entries
3198
- // `Array.prototype.keys` method
3199
- // https://tc39.es/ecma262/#sec-array.prototype.keys
3200
- // `Array.prototype.values` method
3201
- // https://tc39.es/ecma262/#sec-array.prototype.values
3202
- // `Array.prototype[@@iterator]` method
3203
- // https://tc39.es/ecma262/#sec-array.prototype-@@iterator
3204
- // `CreateArrayIterator` internal method
3205
- // https://tc39.es/ecma262/#sec-createarrayiterator
3206
- module.exports = defineIterator(Array, 'Array', function (iterated, kind) {
3207
- setInternalState(this, {
3208
- type: ARRAY_ITERATOR,
3209
- target: toIndexedObject(iterated), // target
3210
- index: 0, // next index
3211
- kind: kind // kind
3212
- });
3213
- // `%ArrayIteratorPrototype%.next` method
3214
- // https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
3215
- }, function () {
3216
- var state = getInternalState(this);
3217
- var target = state.target;
3218
- var kind = state.kind;
3219
- var index = state.index++;
3220
- if (!target || index >= target.length) {
3221
- state.target = undefined;
3222
- return { value: undefined, done: true };
3223
- }
3224
- if (kind == 'keys') return { value: index, done: false };
3225
- if (kind == 'values') return { value: target[index], done: false };
3226
- return { value: [index, target[index]], done: false };
3227
- }, 'values');
3228
 
3229
- // argumentsList[@@iterator] is %ArrayProto_values%
3230
- // https://tc39.es/ecma262/#sec-createunmappedargumentsobject
3231
- // https://tc39.es/ecma262/#sec-createmappedargumentsobject
3232
- Iterators.Arguments = Iterators.Array;
3233
 
3234
- // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
3235
- addToUnscopables('keys');
3236
- addToUnscopables('values');
3237
- addToUnscopables('entries');
3238
 
3239
 
3240
- /***/ }),
3241
- /* 124 */
3242
- /***/ (function(module, exports) {
3243
 
3244
- function _arrayLikeToArray(arr, len) {
3245
- if (len == null || len > arr.length) len = arr.length;
3246
 
3247
- for (var i = 0, arr2 = new Array(len); i < len; i++) {
3248
- arr2[i] = arr[i];
3249
- }
 
 
 
 
 
3250
 
3251
- return arr2;
 
3252
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
3253
 
3254
- module.exports = _arrayLikeToArray;
3255
 
3256
- /***/ }),
3257
- /* 125 */
3258
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
3259
 
3260
- var toInteger = __webpack_require__(42);
3261
- var requireObjectCoercible = __webpack_require__(32);
3262
-
3263
- // `String.prototype.{ codePointAt, at }` methods implementation
3264
- var createMethod = function (CONVERT_TO_STRING) {
3265
- return function ($this, pos) {
3266
- var S = String(requireObjectCoercible($this));
3267
- var position = toInteger(pos);
3268
- var size = S.length;
3269
- var first, second;
3270
- if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
3271
- first = S.charCodeAt(position);
3272
- return first < 0xD800 || first > 0xDBFF || position + 1 === size
3273
- || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
3274
- ? CONVERT_TO_STRING ? S.charAt(position) : first
3275
- : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
3276
- };
3277
- };
3278
 
3279
- module.exports = {
3280
- // `String.prototype.codePointAt` method
3281
- // https://tc39.es/ecma262/#sec-string.prototype.codepointat
3282
- codeAt: createMethod(false),
3283
- // `String.prototype.at` method
3284
- // https://github.com/mathiasbynens/String.prototype.at
3285
- charAt: createMethod(true)
3286
- };
3287
 
 
 
3288
 
3289
- /***/ }),
3290
- /* 126 */
3291
- /***/ (function(module, exports) {
3292
 
3293
- (function() { module.exports = window["wp"]["keycodes"]; }());
 
 
3294
 
3295
- /***/ }),
3296
- /* 127 */
3297
- /***/ (function(module, exports) {
3298
 
3299
- // iterable DOM collections
3300
- // flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
3301
- module.exports = {
3302
- CSSRuleList: 0,
3303
- CSSStyleDeclaration: 0,
3304
- CSSValueList: 0,
3305
- ClientRectList: 0,
3306
- DOMRectList: 0,
3307
- DOMStringList: 0,
3308
- DOMTokenList: 1,
3309
- DataTransferItemList: 0,
3310
- FileList: 0,
3311
- HTMLAllCollection: 0,
3312
- HTMLCollection: 0,
3313
- HTMLFormElement: 0,
3314
- HTMLSelectElement: 0,
3315
- MediaList: 0,
3316
- MimeTypeArray: 0,
3317
- NamedNodeMap: 0,
3318
- NodeList: 1,
3319
- PaintRequestList: 0,
3320
- Plugin: 0,
3321
- PluginArray: 0,
3322
- SVGLengthList: 0,
3323
- SVGNumberList: 0,
3324
- SVGPathSegList: 0,
3325
- SVGPointList: 0,
3326
- SVGStringList: 0,
3327
- SVGTransformList: 0,
3328
- SourceBufferList: 0,
3329
- StyleSheetList: 0,
3330
- TextTrackCueList: 0,
3331
- TextTrackList: 0,
3332
- TouchList: 0
3333
- };
3334
 
 
 
3335
 
3336
- /***/ }),
3337
- /* 128 */
3338
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
3339
 
3340
- "use strict";
 
 
 
 
 
3341
 
3342
- // EXPORTS
3343
- __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _inheritsLoose; });
 
 
 
 
 
3344
 
3345
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
3346
- function _setPrototypeOf(o, p) {
3347
- _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
3348
- o.__proto__ = p;
3349
- return o;
3350
- };
3351
 
3352
- return _setPrototypeOf(o, p);
3353
- }
3354
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
3355
 
3356
- function _inheritsLoose(subClass, superClass) {
3357
- subClass.prototype = Object.create(superClass.prototype);
3358
- subClass.prototype.constructor = subClass;
3359
- _setPrototypeOf(subClass, superClass);
3360
- }
3361
-
3362
- /***/ }),
3363
- /* 129 */
3364
- /***/ (function(module, exports, __webpack_require__) {
3365
 
3366
- var DESCRIPTORS = __webpack_require__(13);
3367
- var defineProperty = __webpack_require__(17).f;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3368
 
3369
- var FunctionPrototype = Function.prototype;
3370
- var FunctionPrototypeToString = FunctionPrototype.toString;
3371
- var nameRE = /^\s*function ([^ (]*)/;
3372
- var NAME = 'name';
3373
 
3374
- // Function instances `.name` property
3375
- // https://tc39.es/ecma262/#sec-function-instances-name
3376
- if (DESCRIPTORS && !(NAME in FunctionPrototype)) {
3377
- defineProperty(FunctionPrototype, NAME, {
3378
- configurable: true,
3379
- get: function () {
3380
- try {
3381
- return FunctionPrototypeToString.call(this).match(nameRE)[1];
3382
- } catch (error) {
3383
- return '';
3384
- }
3385
- }
3386
- });
3387
  }
3388
 
 
 
 
3389
 
3390
  /***/ }),
3391
- /* 130 */
3392
- /***/ (function(module, exports, __webpack_require__) {
 
3393
 
3394
  "use strict";
 
 
 
 
 
 
 
3395
 
3396
- var TO_STRING_TAG_SUPPORT = __webpack_require__(82);
3397
- var classof = __webpack_require__(113);
3398
 
3399
- // `Object.prototype.toString` method implementation
3400
- // https://tc39.es/ecma262/#sec-object.prototype.tostring
3401
- module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {
3402
- return '[object ' + classof(this) + ']';
3403
- };
3404
 
3405
 
3406
- /***/ }),
3407
- /* 131 */
3408
- /***/ (function(module, exports, __webpack_require__) {
3409
 
3410
- var arrayLikeToArray = __webpack_require__(124);
3411
 
3412
- function _unsupportedIterableToArray(o, minLen) {
3413
- if (!o) return;
3414
- if (typeof o === "string") return arrayLikeToArray(o, minLen);
3415
- var n = Object.prototype.toString.call(o).slice(8, -1);
3416
- if (n === "Object" && o.constructor) n = o.constructor.name;
3417
- if (n === "Map" || n === "Set") return Array.from(o);
3418
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
3419
- }
3420
 
3421
- module.exports = _unsupportedIterableToArray;
3422
 
3423
- /***/ }),
3424
- /* 132 */
3425
- /***/ (function(module, exports) {
3426
 
3427
- (function() { module.exports = window["wp"]["htmlEntities"]; }());
3428
 
3429
- /***/ }),
3430
- /* 133 */
3431
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
3432
 
3433
- "use strict";
3434
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutPropertiesLoose; });
3435
- function _objectWithoutPropertiesLoose(source, excluded) {
3436
- if (source == null) return {};
3437
- var target = {};
3438
- var sourceKeys = Object.keys(source);
3439
- var key, i;
3440
 
3441
- for (i = 0; i < sourceKeys.length; i++) {
3442
- key = sourceKeys[i];
3443
- if (excluded.indexOf(key) >= 0) continue;
3444
- target[key] = source[key];
 
 
 
 
3445
  }
3446
 
3447
- return target;
3448
- }
 
 
 
3449
 
3450
- /***/ }),
3451
- /* 134 */
3452
- /***/ (function(module, exports) {
3453
 
3454
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
3455
- try {
3456
- var info = gen[key](arg);
3457
- var value = info.value;
3458
- } catch (error) {
3459
- reject(error);
3460
- return;
3461
- }
3462
 
3463
- if (info.done) {
3464
- resolve(value);
3465
- } else {
3466
- Promise.resolve(value).then(_next, _throw);
 
 
 
 
 
 
3467
  }
3468
- }
3469
 
3470
- function _asyncToGenerator(fn) {
3471
- return function () {
3472
- var self = this,
3473
- args = arguments;
3474
- return new Promise(function (resolve, reject) {
3475
- var gen = fn.apply(self, args);
3476
 
3477
- function _next(value) {
3478
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
3479
- }
3480
 
3481
- function _throw(err) {
3482
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
3483
- }
 
 
3484
 
3485
- _next(undefined);
3486
- });
3487
- };
3488
  }
3489
 
3490
- module.exports = _asyncToGenerator;
 
3491
 
3492
  /***/ }),
3493
- /* 135 */
3494
- /***/ (function(module, exports, __webpack_require__) {
 
3495
 
3496
  "use strict";
 
 
 
 
3497
 
3498
- var fixRegExpWellKnownSymbolLogic = __webpack_require__(111);
3499
- var anObject = __webpack_require__(9);
3500
- var toLength = __webpack_require__(34);
3501
- var toInteger = __webpack_require__(42);
3502
- var requireObjectCoercible = __webpack_require__(32);
3503
- var advanceStringIndex = __webpack_require__(122);
3504
- var getSubstitution = __webpack_require__(168);
3505
- var regExpExec = __webpack_require__(112);
3506
 
3507
- var max = Math.max;
3508
- var min = Math.min;
3509
 
3510
- var maybeToString = function (it) {
3511
- return it === undefined ? it : String(it);
3512
- };
3513
 
3514
- // @@replace logic
3515
- fixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {
3516
- var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;
3517
- var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;
3518
- var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';
3519
-
3520
- return [
3521
- // `String.prototype.replace` method
3522
- // https://tc39.es/ecma262/#sec-string.prototype.replace
3523
- function replace(searchValue, replaceValue) {
3524
- var O = requireObjectCoercible(this);
3525
- var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];
3526
- return replacer !== undefined
3527
- ? replacer.call(searchValue, O, replaceValue)
3528
- : nativeReplace.call(String(O), searchValue, replaceValue);
3529
- },
3530
- // `RegExp.prototype[@@replace]` method
3531
- // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
3532
- function (regexp, replaceValue) {
3533
- if (
3534
- (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||
3535
- (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)
3536
- ) {
3537
- var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);
3538
- if (res.done) return res.value;
3539
- }
3540
 
3541
- var rx = anObject(regexp);
3542
- var S = String(this);
 
 
 
3543
 
3544
- var functionalReplace = typeof replaceValue === 'function';
3545
- if (!functionalReplace) replaceValue = String(replaceValue);
3546
 
3547
- var global = rx.global;
3548
- if (global) {
3549
- var fullUnicode = rx.unicode;
3550
- rx.lastIndex = 0;
3551
- }
3552
- var results = [];
3553
- while (true) {
3554
- var result = regExpExec(rx, S);
3555
- if (result === null) break;
3556
 
3557
- results.push(result);
3558
- if (!global) break;
 
 
 
3559
 
3560
- var matchStr = String(result[0]);
3561
- if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
3562
- }
 
3563
 
3564
- var accumulatedResult = '';
3565
- var nextSourcePosition = 0;
3566
- for (var i = 0; i < results.length; i++) {
3567
- result = results[i];
3568
-
3569
- var matched = String(result[0]);
3570
- var position = max(min(toInteger(result.index), S.length), 0);
3571
- var captures = [];
3572
- // NOTE: This is equivalent to
3573
- // captures = result.slice(1).map(maybeToString)
3574
- // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
3575
- // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
3576
- // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
3577
- for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
3578
- var namedCaptures = result.groups;
3579
- if (functionalReplace) {
3580
- var replacerArgs = [matched].concat(captures, position, S);
3581
- if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
3582
- var replacement = String(replaceValue.apply(undefined, replacerArgs));
3583
- } else {
3584
- replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
3585
- }
3586
- if (position >= nextSourcePosition) {
3587
- accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
3588
- nextSourcePosition = position + matched.length;
3589
- }
3590
- }
3591
- return accumulatedResult + S.slice(nextSourcePosition);
3592
- }
3593
- ];
3594
- });
3595
 
 
 
 
 
3596
 
3597
- /***/ }),
3598
- /* 136 */
3599
- /***/ (function(module, exports) {
 
 
3600
 
3601
- module.exports = function (it, Constructor, name) {
3602
- if (!(it instanceof Constructor)) {
3603
- throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');
3604
- } return it;
3605
- };
3606
 
 
 
3607
 
3608
  /***/ }),
3609
- /* 137 */
3610
- /***/ (function(module, exports, __webpack_require__) {
3611
-
3612
- "use strict";
3613
 
 
 
3614
 
3615
- var fails = __webpack_require__(6);
3616
-
3617
- // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,
3618
- // so we use an intermediate function.
3619
- function RE(s, f) {
3620
- return RegExp(s, f);
3621
- }
3622
-
3623
- exports.UNSUPPORTED_Y = fails(function () {
3624
- // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
3625
- var re = RE('a', 'y');
3626
- re.lastIndex = 2;
3627
- return re.exec('abcd') != null;
3628
- });
3629
 
3630
- exports.BROKEN_CARET = fails(function () {
3631
- // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
3632
- var re = RE('^r', 'gy');
3633
- re.lastIndex = 2;
3634
- return re.exec('str') != null;
3635
- });
3636
 
 
 
 
3637
 
3638
- /***/ }),
3639
- /* 138 */,
3640
- /* 139 */
3641
- /***/ (function(module, exports, __webpack_require__) {
3642
 
3643
- "use strict";
 
 
3644
 
3645
- var $ = __webpack_require__(12);
3646
- var IndexedObject = __webpack_require__(71);
3647
- var toIndexedObject = __webpack_require__(21);
3648
- var arrayMethodIsStrict = __webpack_require__(121);
3649
 
3650
- var nativeJoin = [].join;
 
3651
 
3652
- var ES3_STRINGS = IndexedObject != Object;
3653
- var STRICT_METHOD = arrayMethodIsStrict('join', ',');
 
3654
 
3655
- // `Array.prototype.join` method
3656
- // https://tc39.es/ecma262/#sec-array.prototype.join
3657
- $({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {
3658
- join: function join(separator) {
3659
- return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);
3660
  }
3661
- });
3662
 
 
 
 
 
 
 
 
 
3663
 
3664
  /***/ }),
3665
- /* 140 */
3666
- /***/ (function(module, exports, __webpack_require__) {
 
3667
 
3668
  "use strict";
3669
 
3670
- var $ = __webpack_require__(12);
3671
- var notARegExp = __webpack_require__(207);
3672
- var requireObjectCoercible = __webpack_require__(32);
3673
- var correctIsRegExpLogic = __webpack_require__(208);
3674
 
3675
- // `String.prototype.includes` method
3676
- // https://tc39.es/ecma262/#sec-string.prototype.includes
3677
- $({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {
3678
- includes: function includes(searchString /* , position = 0 */) {
3679
- return !!~String(requireObjectCoercible(this))
3680
- .indexOf(notARegExp(searchString), arguments.length > 1 ? arguments[1] : undefined);
3681
- }
3682
- });
3683
 
 
 
3684
 
3685
- /***/ }),
3686
- /* 141 */
3687
- /***/ (function(module, exports) {
3688
 
3689
- (function() { module.exports = window["wp"]["hooks"]; }());
 
 
3690
 
3691
- /***/ }),
3692
- /* 142 */
3693
- /***/ (function(module, exports, __webpack_require__) {
3694
 
3695
- "use strict";
 
3696
 
3697
- var redefine = __webpack_require__(27);
3698
- var anObject = __webpack_require__(9);
3699
- var fails = __webpack_require__(6);
3700
- var flags = __webpack_require__(114);
3701
 
3702
- var TO_STRING = 'toString';
3703
- var RegExpPrototype = RegExp.prototype;
3704
- var nativeToString = RegExpPrototype[TO_STRING];
3705
 
3706
- var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });
3707
- // FF44- RegExp#toString has a wrong name
3708
- var INCORRECT_NAME = nativeToString.name != TO_STRING;
3709
 
3710
- // `RegExp.prototype.toString` method
3711
- // https://tc39.es/ecma262/#sec-regexp.prototype.tostring
3712
- if (NOT_GENERIC || INCORRECT_NAME) {
3713
- redefine(RegExp.prototype, TO_STRING, function toString() {
3714
- var R = anObject(this);
3715
- var p = String(R.source);
3716
- var rf = R.flags;
3717
- var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);
3718
- return '/' + p + '/' + f;
3719
- }, { unsafe: true });
3720
- }
3721
 
 
 
 
 
3722
 
3723
- /***/ }),
3724
- /* 143 */
3725
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3726
 
3727
- /* eslint-disable no-proto -- safe */
3728
- var anObject = __webpack_require__(9);
3729
- var aPossiblePrototype = __webpack_require__(160);
3730
-
3731
- // `Object.setPrototypeOf` method
3732
- // https://tc39.es/ecma262/#sec-object.setprototypeof
3733
- // Works with __proto__ only. Old v8 can't work with null proto objects.
3734
- module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
3735
- var CORRECT_SETTER = false;
3736
- var test = {};
3737
- var setter;
3738
- try {
3739
- setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;
3740
- setter.call(test, []);
3741
- CORRECT_SETTER = test instanceof Array;
3742
- } catch (error) { /* empty */ }
3743
- return function setPrototypeOf(O, proto) {
3744
- anObject(O);
3745
- aPossiblePrototype(proto);
3746
- if (CORRECT_SETTER) setter.call(O, proto);
3747
- else O.__proto__ = proto;
3748
- return O;
3749
- };
3750
- }() : undefined);
3751
 
 
 
3752
 
3753
- /***/ }),
3754
- /* 144 */
3755
- /***/ (function(module, exports, __webpack_require__) {
3756
 
3757
- var isObject = __webpack_require__(10);
3758
- var classof = __webpack_require__(30);
3759
- var wellKnownSymbol = __webpack_require__(8);
3760
 
3761
- var MATCH = wellKnownSymbol('match');
3762
 
3763
- // `IsRegExp` abstract operation
3764
- // https://tc39.es/ecma262/#sec-isregexp
3765
- module.exports = function (it) {
3766
- var isRegExp;
3767
- return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');
3768
- };
3769
 
 
3770
 
3771
- /***/ }),
3772
- /* 145 */
3773
- /***/ (function(module, exports) {
3774
 
3775
- (function() { module.exports = window["wc"]["components"]; }());
 
 
3776
 
3777
- /***/ }),
3778
- /* 146 */
3779
- /***/ (function(module, exports, __webpack_require__) {
3780
 
3781
- var global = __webpack_require__(3);
3782
- var DOMIterables = __webpack_require__(127);
3783
- var ArrayIteratorMethods = __webpack_require__(123);
3784
- var createNonEnumerableProperty = __webpack_require__(19);
3785
- var wellKnownSymbol = __webpack_require__(8);
3786
-
3787
- var ITERATOR = wellKnownSymbol('iterator');
3788
- var TO_STRING_TAG = wellKnownSymbol('toStringTag');
3789
- var ArrayValues = ArrayIteratorMethods.values;
3790
-
3791
- for (var COLLECTION_NAME in DOMIterables) {
3792
- var Collection = global[COLLECTION_NAME];
3793
- var CollectionPrototype = Collection && Collection.prototype;
3794
- if (CollectionPrototype) {
3795
- // some Chrome versions have non-configurable methods on DOMTokenList
3796
- if (CollectionPrototype[ITERATOR] !== ArrayValues) try {
3797
- createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);
3798
- } catch (error) {
3799
- CollectionPrototype[ITERATOR] = ArrayValues;
3800
- }
3801
- if (!CollectionPrototype[TO_STRING_TAG]) {
3802
- createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);
3803
- }
3804
- if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {
3805
- // some Chrome versions have non-configurable methods on DOMTokenList
3806
- if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {
3807
- createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);
3808
- } catch (error) {
3809
- CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];
3810
- }
3811
- }
3812
- }
3813
- }
3814
 
 
 
 
3815
 
3816
- /***/ }),
3817
- /* 147 */
3818
- /***/ (function(module, exports, __webpack_require__) {
 
 
3819
 
3820
- var toIndexedObject = __webpack_require__(21);
3821
- var nativeGetOwnPropertyNames = __webpack_require__(56).f;
 
 
 
3822
 
3823
- var toString = {}.toString;
3824
 
3825
- var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
3826
- ? Object.getOwnPropertyNames(window) : [];
 
 
 
 
3827
 
3828
- var getWindowNames = function (it) {
3829
- try {
3830
- return nativeGetOwnPropertyNames(it);
3831
- } catch (error) {
3832
- return windowNames.slice();
3833
  }
3834
- };
3835
-
3836
- // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
3837
- module.exports.f = function getOwnPropertyNames(it) {
3838
- return windowNames && toString.call(it) == '[object Window]'
3839
- ? getWindowNames(it)
3840
- : nativeGetOwnPropertyNames(toIndexedObject(it));
3841
- };
3842
 
 
3843
 
3844
- /***/ }),
3845
- /* 148 */
3846
- /***/ (function(module, exports, __webpack_require__) {
 
 
3847
 
3848
- var path = __webpack_require__(81);
3849
- var has = __webpack_require__(11);
3850
- var wrappedWellKnownSymbolModule = __webpack_require__(119);
3851
- var defineProperty = __webpack_require__(17).f;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3852
 
3853
- module.exports = function (NAME) {
3854
- var Symbol = path.Symbol || (path.Symbol = {});
3855
- if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {
3856
- value: wrappedWellKnownSymbolModule.f(NAME)
3857
- });
3858
- };
3859
 
 
 
 
 
 
 
 
3860
 
3861
- /***/ }),
3862
- /* 149 */
3863
- /***/ (function(module, exports, __webpack_require__) {
 
3864
 
3865
- "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3866
 
3867
- var $forEach = __webpack_require__(75).forEach;
3868
- var arrayMethodIsStrict = __webpack_require__(121);
3869
 
3870
- var STRICT_METHOD = arrayMethodIsStrict('forEach');
 
 
 
3871
 
3872
- // `Array.prototype.forEach` method implementation
3873
- // https://tc39.es/ecma262/#sec-array.prototype.foreach
3874
- module.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {
3875
- return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
3876
- } : [].forEach;
 
 
3877
 
3878
 
3879
- /***/ }),
3880
- /* 150 */
3881
- /***/ (function(module, exports, __webpack_require__) {
3882
 
3883
- var anObject = __webpack_require__(9);
3884
- var aFunction = __webpack_require__(70);
3885
- var wellKnownSymbol = __webpack_require__(8);
 
 
3886
 
3887
- var SPECIES = wellKnownSymbol('species');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3888
 
3889
- // `SpeciesConstructor` abstract operation
3890
- // https://tc39.es/ecma262/#sec-speciesconstructor
3891
- module.exports = function (O, defaultConstructor) {
3892
- var C = anObject(O).constructor;
3893
- var S;
3894
- return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);
3895
- };
3896
 
 
 
 
 
 
 
 
3897
 
3898
- /***/ }),
3899
- /* 151 */
3900
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3901
 
3902
- "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3903
 
3904
- var charAt = __webpack_require__(125).charAt;
3905
- var InternalStateModule = __webpack_require__(45);
3906
- var defineIterator = __webpack_require__(166);
3907
-
3908
- var STRING_ITERATOR = 'String Iterator';
3909
- var setInternalState = InternalStateModule.set;
3910
- var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);
3911
-
3912
- // `String.prototype[@@iterator]` method
3913
- // https://tc39.es/ecma262/#sec-string.prototype-@@iterator
3914
- defineIterator(String, 'String', function (iterated) {
3915
- setInternalState(this, {
3916
- type: STRING_ITERATOR,
3917
- string: String(iterated),
3918
- index: 0
3919
- });
3920
- // `%StringIteratorPrototype%.next` method
3921
- // https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next
3922
- }, function next() {
3923
- var state = getInternalState(this);
3924
- var string = state.string;
3925
- var index = state.index;
3926
- var point;
3927
- if (index >= string.length) return { value: undefined, done: true };
3928
- point = charAt(string, index);
3929
- state.index += point.length;
3930
- return { value: point, done: false };
3931
- });
3932
 
 
 
3933
 
3934
- /***/ }),
3935
- /* 152 */
3936
- /***/ (function(module, exports, __webpack_require__) {
3937
 
3938
- var redefine = __webpack_require__(27);
 
3939
 
3940
- module.exports = function (target, src, options) {
3941
- for (var key in src) redefine(target, key, src[key], options);
3942
- return target;
3943
- };
3944
 
 
 
3945
 
3946
- /***/ }),
3947
- /* 153 */
3948
- /***/ (function(module, exports, __webpack_require__) {
3949
 
3950
- "use strict";
3951
 
3952
- var getBuiltIn = __webpack_require__(31);
3953
- var definePropertyModule = __webpack_require__(17);
3954
- var wellKnownSymbol = __webpack_require__(8);
3955
- var DESCRIPTORS = __webpack_require__(13);
3956
 
3957
- var SPECIES = wellKnownSymbol('species');
3958
 
3959
- module.exports = function (CONSTRUCTOR_NAME) {
3960
- var Constructor = getBuiltIn(CONSTRUCTOR_NAME);
3961
- var defineProperty = definePropertyModule.f;
3962
 
3963
- if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {
3964
- defineProperty(Constructor, SPECIES, {
3965
- configurable: true,
3966
- get: function () { return this; }
3967
- });
3968
- }
3969
- };
3970
 
3971
 
3972
- /***/ }),
3973
- /* 154 */
3974
- /***/ (function(module, exports, __webpack_require__) {
3975
 
3976
- var anObject = __webpack_require__(9);
3977
- var isArrayIteratorMethod = __webpack_require__(171);
3978
- var toLength = __webpack_require__(34);
3979
- var bind = __webpack_require__(94);
3980
- var getIteratorMethod = __webpack_require__(155);
3981
- var iteratorClose = __webpack_require__(172);
3982
 
3983
- var Result = function (stopped, result) {
3984
- this.stopped = stopped;
3985
- this.result = result;
3986
- };
3987
 
3988
- module.exports = function (iterable, unboundFunction, options) {
3989
- var that = options && options.that;
3990
- var AS_ENTRIES = !!(options && options.AS_ENTRIES);
3991
- var IS_ITERATOR = !!(options && options.IS_ITERATOR);
3992
- var INTERRUPTED = !!(options && options.INTERRUPTED);
3993
- var fn = bind(unboundFunction, that, 1 + AS_ENTRIES + INTERRUPTED);
3994
- var iterator, iterFn, index, length, result, next, step;
3995
-
3996
- var stop = function (condition) {
3997
- if (iterator) iteratorClose(iterator);
3998
- return new Result(true, condition);
3999
- };
4000
 
4001
- var callFn = function (value) {
4002
- if (AS_ENTRIES) {
4003
- anObject(value);
4004
- return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);
4005
- } return INTERRUPTED ? fn(value, stop) : fn(value);
4006
- };
4007
 
4008
- if (IS_ITERATOR) {
4009
- iterator = iterable;
4010
- } else {
4011
- iterFn = getIteratorMethod(iterable);
4012
- if (typeof iterFn != 'function') throw TypeError('Target is not iterable');
4013
- // optimisation for array iterators
4014
- if (isArrayIteratorMethod(iterFn)) {
4015
- for (index = 0, length = toLength(iterable.length); length > index; index++) {
4016
- result = callFn(iterable[index]);
4017
- if (result && result instanceof Result) return result;
4018
- } return new Result(false);
4019
- }
4020
- iterator = iterFn.call(iterable);
4021
  }
4022
 
4023
- next = iterator.next;
4024
- while (!(step = next.call(iterator)).done) {
4025
- try {
4026
- result = callFn(step.value);
4027
- } catch (error) {
4028
- iteratorClose(iterator);
4029
- throw error;
4030
  }
4031
- if (typeof result == 'object' && result && result instanceof Result) return result;
4032
- } return new Result(false);
4033
- };
 
 
 
4034
 
 
 
4035
 
4036
- /***/ }),
4037
- /* 155 */
4038
- /***/ (function(module, exports, __webpack_require__) {
 
4039
 
4040
- var classof = __webpack_require__(113);
4041
- var Iterators = __webpack_require__(110);
4042
- var wellKnownSymbol = __webpack_require__(8);
4043
 
4044
- var ITERATOR = wellKnownSymbol('iterator');
4045
 
4046
- module.exports = function (it) {
4047
- if (it != undefined) return it[ITERATOR]
4048
- || it['@@iterator']
4049
- || Iterators[classof(it)];
4050
- };
4051
 
4052
 
4053
- /***/ }),
4054
- /* 156 */
4055
- /***/ (function(module, exports, __webpack_require__) {
4056
 
4057
- var isObject = __webpack_require__(10);
4058
- var setPrototypeOf = __webpack_require__(143);
4059
 
4060
- // makes subclassing work correct for wrapped built-ins
4061
- module.exports = function ($this, dummy, Wrapper) {
4062
- var NewTarget, NewTargetPrototype;
4063
- if (
4064
- // it can work only with native `setPrototypeOf`
4065
- setPrototypeOf &&
4066
- // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
4067
- typeof (NewTarget = dummy.constructor) == 'function' &&
4068
- NewTarget !== Wrapper &&
4069
- isObject(NewTargetPrototype = NewTarget.prototype) &&
4070
- NewTargetPrototype !== Wrapper.prototype
4071
- ) setPrototypeOf($this, NewTargetPrototype);
4072
- return $this;
4073
- };
4074
 
 
4075
 
4076
- /***/ }),
4077
- /* 157 */
4078
- /***/ (function(module, exports, __webpack_require__) {
4079
 
4080
- var global = __webpack_require__(3);
4081
- var fails = __webpack_require__(6);
4082
- var bind = __webpack_require__(94);
4083
- var html = __webpack_require__(98);
4084
- var createElement = __webpack_require__(67);
4085
- var IS_IOS = __webpack_require__(158);
4086
- var IS_NODE = __webpack_require__(77);
4087
-
4088
- var location = global.location;
4089
- var set = global.setImmediate;
4090
- var clear = global.clearImmediate;
4091
- var process = global.process;
4092
- var MessageChannel = global.MessageChannel;
4093
- var Dispatch = global.Dispatch;
4094
- var counter = 0;
4095
- var queue = {};
4096
- var ONREADYSTATECHANGE = 'onreadystatechange';
4097
- var defer, channel, port;
4098
-
4099
- var run = function (id) {
4100
- // eslint-disable-next-line no-prototype-builtins -- safe
4101
- if (queue.hasOwnProperty(id)) {
4102
- var fn = queue[id];
4103
- delete queue[id];
4104
- fn();
4105
- }
4106
- };
4107
 
4108
- var runner = function (id) {
4109
- return function () {
4110
- run(id);
4111
- };
4112
- };
 
 
 
 
 
 
 
 
 
 
4113
 
4114
- var listener = function (event) {
4115
- run(event.data);
4116
- };
 
 
 
4117
 
4118
- var post = function (id) {
4119
- // old engines have not location.origin
4120
- global.postMessage(id + '', location.protocol + '//' + location.host);
4121
- };
4122
 
4123
- // Node.js 0.9+ & IE10+ has setImmediate, otherwise:
4124
- if (!set || !clear) {
4125
- set = function setImmediate(fn) {
4126
- var args = [];
4127
- var i = 1;
4128
- while (arguments.length > i) args.push(arguments[i++]);
4129
- queue[++counter] = function () {
4130
- // eslint-disable-next-line no-new-func -- spec requirement
4131
- (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);
4132
- };
4133
- defer(counter);
4134
- return counter;
4135
- };
4136
- clear = function clearImmediate(id) {
4137
- delete queue[id];
4138
- };
4139
- // Node.js 0.8-
4140
- if (IS_NODE) {
4141
- defer = function (id) {
4142
- process.nextTick(runner(id));
4143
- };
4144
- // Sphere (JS game engine) Dispatch API
4145
- } else if (Dispatch && Dispatch.now) {
4146
- defer = function (id) {
4147
- Dispatch.now(runner(id));
4148
- };
4149
- // Browsers with MessageChannel, includes WebWorkers
4150
- // except iOS - https://github.com/zloirock/core-js/issues/624
4151
- } else if (MessageChannel && !IS_IOS) {
4152
- channel = new MessageChannel();
4153
- port = channel.port2;
4154
- channel.port1.onmessage = listener;
4155
- defer = bind(port.postMessage, port, 1);
4156
- // Browsers with postMessage, skip WebWorkers
4157
- // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
4158
- } else if (
4159
- global.addEventListener &&
4160
- typeof postMessage == 'function' &&
4161
- !global.importScripts &&
4162
- location && location.protocol !== 'file:' &&
4163
- !fails(post)
4164
- ) {
4165
- defer = post;
4166
- global.addEventListener('message', listener, false);
4167
- // IE8-
4168
- } else if (ONREADYSTATECHANGE in createElement('script')) {
4169
- defer = function (id) {
4170
- html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {
4171
- html.removeChild(this);
4172
- run(id);
4173
- };
4174
- };
4175
- // Rest old browsers
4176
- } else {
4177
- defer = function (id) {
4178
- setTimeout(runner(id), 0);
4179
- };
4180
  }
4181
- }
 
 
 
 
 
 
4182
 
4183
- module.exports = {
4184
- set: set,
4185
- clear: clear
4186
- };
4187
 
 
 
 
 
4188
 
4189
- /***/ }),
4190
- /* 158 */
4191
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
4192
 
4193
- var userAgent = __webpack_require__(87);
4194
 
4195
- module.exports = /(iphone|ipod|ipad).*applewebkit/i.test(userAgent);
 
 
 
4196
 
 
 
4197
 
4198
- /***/ }),
4199
- /* 159 */
4200
- /***/ (function(module, exports, __webpack_require__) {
4201
 
4202
- "use strict";
4203
 
4204
- var aFunction = __webpack_require__(70);
 
4205
 
4206
- var PromiseCapability = function (C) {
4207
- var resolve, reject;
4208
- this.promise = new C(function ($$resolve, $$reject) {
4209
- if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
4210
- resolve = $$resolve;
4211
- reject = $$reject;
4212
- });
4213
- this.resolve = aFunction(resolve);
4214
- this.reject = aFunction(reject);
4215
- };
4216
 
4217
- // 25.4.1.5 NewPromiseCapability(C)
4218
- module.exports.f = function (C) {
4219
- return new PromiseCapability(C);
4220
- };
4221
 
 
 
 
 
 
 
 
 
 
4222
 
4223
- /***/ }),
4224
- /* 160 */
4225
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
4226
 
4227
- var isObject = __webpack_require__(10);
 
 
 
 
 
4228
 
4229
- module.exports = function (it) {
4230
- if (!isObject(it) && it !== null) {
4231
- throw TypeError("Can't set " + String(it) + ' as a prototype');
4232
- } return it;
4233
- };
 
 
4234
 
 
 
4235
 
4236
- /***/ }),
4237
- /* 161 */,
4238
- /* 162 */
4239
- /***/ (function(module, exports, __webpack_require__) {
4240
 
4241
- "use strict";
 
4242
 
 
4243
 
4244
- var stringify = __webpack_require__(227);
4245
- var parse = __webpack_require__(228);
4246
- var formats = __webpack_require__(169);
4247
 
4248
- module.exports = {
4249
- formats: formats,
4250
- parse: parse,
4251
- stringify: stringify
4252
- };
4253
 
4254
 
4255
- /***/ }),
4256
- /* 163 */
4257
- /***/ (function(module, exports) {
4258
 
4259
- (function() { module.exports = window["ReactDOM"]; }());
 
 
4260
 
4261
- /***/ }),
4262
- /* 164 */
4263
- /***/ (function(module, exports, __webpack_require__) {
4264
 
4265
- "use strict";
4266
 
4267
- var $ = __webpack_require__(12);
4268
- var IS_PURE = __webpack_require__(57);
4269
- var global = __webpack_require__(3);
4270
- var getBuiltIn = __webpack_require__(31);
4271
- var NativePromise = __webpack_require__(193);
4272
- var redefine = __webpack_require__(27);
4273
- var redefineAll = __webpack_require__(152);
4274
- var setToStringTag = __webpack_require__(90);
4275
- var setSpecies = __webpack_require__(153);
4276
- var isObject = __webpack_require__(10);
4277
- var aFunction = __webpack_require__(70);
4278
- var anInstance = __webpack_require__(136);
4279
- var inspectSource = __webpack_require__(68);
4280
- var iterate = __webpack_require__(154);
4281
- var checkCorrectnessOfIteration = __webpack_require__(165);
4282
- var speciesConstructor = __webpack_require__(150);
4283
- var task = __webpack_require__(157).set;
4284
- var microtask = __webpack_require__(194);
4285
- var promiseResolve = __webpack_require__(196);
4286
- var hostReportErrors = __webpack_require__(197);
4287
- var newPromiseCapabilityModule = __webpack_require__(159);
4288
- var perform = __webpack_require__(198);
4289
- var InternalStateModule = __webpack_require__(45);
4290
- var isForced = __webpack_require__(74);
4291
- var wellKnownSymbol = __webpack_require__(8);
4292
- var IS_NODE = __webpack_require__(77);
4293
- var V8_VERSION = __webpack_require__(63);
4294
-
4295
- var SPECIES = wellKnownSymbol('species');
4296
- var PROMISE = 'Promise';
4297
- var getInternalState = InternalStateModule.get;
4298
- var setInternalState = InternalStateModule.set;
4299
- var getInternalPromiseState = InternalStateModule.getterFor(PROMISE);
4300
- var PromiseConstructor = NativePromise;
4301
- var TypeError = global.TypeError;
4302
- var document = global.document;
4303
- var process = global.process;
4304
- var $fetch = getBuiltIn('fetch');
4305
- var newPromiseCapability = newPromiseCapabilityModule.f;
4306
- var newGenericPromiseCapability = newPromiseCapability;
4307
- var DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);
4308
- var NATIVE_REJECTION_EVENT = typeof PromiseRejectionEvent == 'function';
4309
- var UNHANDLED_REJECTION = 'unhandledrejection';
4310
- var REJECTION_HANDLED = 'rejectionhandled';
4311
- var PENDING = 0;
4312
- var FULFILLED = 1;
4313
- var REJECTED = 2;
4314
- var HANDLED = 1;
4315
- var UNHANDLED = 2;
4316
- var Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;
4317
-
4318
- var FORCED = isForced(PROMISE, function () {
4319
- var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);
4320
- if (!GLOBAL_CORE_JS_PROMISE) {
4321
- // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
4322
- // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
4323
- // We can't detect it synchronously, so just check versions
4324
- if (V8_VERSION === 66) return true;
4325
- // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test
4326
- if (!IS_NODE && !NATIVE_REJECTION_EVENT) return true;
4327
- }
4328
- // We need Promise#finally in the pure version for preventing prototype pollution
4329
- if (IS_PURE && !PromiseConstructor.prototype['finally']) return true;
4330
- // We can't use @@species feature detection in V8 since it causes
4331
- // deoptimization and performance degradation
4332
- // https://github.com/zloirock/core-js/issues/679
4333
- if (V8_VERSION >= 51 && /native code/.test(PromiseConstructor)) return false;
4334
- // Detect correctness of subclassing with @@species support
4335
- var promise = PromiseConstructor.resolve(1);
4336
- var FakePromise = function (exec) {
4337
- exec(function () { /* empty */ }, function () { /* empty */ });
4338
- };
4339
- var constructor = promise.constructor = {};
4340
- constructor[SPECIES] = FakePromise;
4341
- return !(promise.then(function () { /* empty */ }) instanceof FakePromise);
4342
- });
4343
 
4344
- var INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {
4345
- PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });
4346
- });
4347
 
4348
- // helpers
4349
- var isThenable = function (it) {
4350
- var then;
4351
- return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
4352
- };
4353
 
4354
- var notify = function (state, isReject) {
4355
- if (state.notified) return;
4356
- state.notified = true;
4357
- var chain = state.reactions;
4358
- microtask(function () {
4359
- var value = state.value;
4360
- var ok = state.state == FULFILLED;
4361
- var index = 0;
4362
- // variable length - can't use forEach
4363
- while (chain.length > index) {
4364
- var reaction = chain[index++];
4365
- var handler = ok ? reaction.ok : reaction.fail;
4366
- var resolve = reaction.resolve;
4367
- var reject = reaction.reject;
4368
- var domain = reaction.domain;
4369
- var result, then, exited;
4370
- try {
4371
- if (handler) {
4372
- if (!ok) {
4373
- if (state.rejection === UNHANDLED) onHandleUnhandled(state);
4374
- state.rejection = HANDLED;
4375
- }
4376
- if (handler === true) result = value;
4377
- else {
4378
- if (domain) domain.enter();
4379
- result = handler(value); // can throw
4380
- if (domain) {
4381
- domain.exit();
4382
- exited = true;
4383
- }
4384
- }
4385
- if (result === reaction.promise) {
4386
- reject(TypeError('Promise-chain cycle'));
4387
- } else if (then = isThenable(result)) {
4388
- then.call(result, resolve, reject);
4389
- } else resolve(result);
4390
- } else reject(value);
4391
- } catch (error) {
4392
- if (domain && !exited) domain.exit();
4393
- reject(error);
4394
- }
4395
- }
4396
- state.reactions = [];
4397
- state.notified = false;
4398
- if (isReject && !state.rejection) onUnhandled(state);
4399
- });
4400
- };
4401
 
4402
- var dispatchEvent = function (name, promise, reason) {
4403
- var event, handler;
4404
- if (DISPATCH_EVENT) {
4405
- event = document.createEvent('Event');
4406
- event.promise = promise;
4407
- event.reason = reason;
4408
- event.initEvent(name, false, true);
4409
- global.dispatchEvent(event);
4410
- } else event = { promise: promise, reason: reason };
4411
- if (!NATIVE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);
4412
- else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);
4413
- };
4414
 
4415
- var onUnhandled = function (state) {
4416
- task.call(global, function () {
4417
- var promise = state.facade;
4418
- var value = state.value;
4419
- var IS_UNHANDLED = isUnhandled(state);
4420
- var result;
4421
- if (IS_UNHANDLED) {
4422
- result = perform(function () {
4423
- if (IS_NODE) {
4424
- process.emit('unhandledRejection', value, promise);
4425
- } else dispatchEvent(UNHANDLED_REJECTION, promise, value);
4426
- });
4427
- // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
4428
- state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;
4429
- if (result.error) throw result.value;
4430
- }
4431
- });
4432
- };
4433
 
4434
- var isUnhandled = function (state) {
4435
- return state.rejection !== HANDLED && !state.parent;
4436
- };
4437
 
4438
- var onHandleUnhandled = function (state) {
4439
- task.call(global, function () {
4440
- var promise = state.facade;
4441
- if (IS_NODE) {
4442
- process.emit('rejectionHandled', promise);
4443
- } else dispatchEvent(REJECTION_HANDLED, promise, state.value);
4444
- });
4445
- };
4446
 
4447
- var bind = function (fn, state, unwrap) {
4448
- return function (value) {
4449
- fn(state, value, unwrap);
4450
- };
4451
- };
4452
 
4453
- var internalReject = function (state, value, unwrap) {
4454
- if (state.done) return;
4455
- state.done = true;
4456
- if (unwrap) state = unwrap;
4457
- state.value = value;
4458
- state.state = REJECTED;
4459
- notify(state, true);
4460
- };
4461
 
4462
- var internalResolve = function (state, value, unwrap) {
4463
- if (state.done) return;
4464
- state.done = true;
4465
- if (unwrap) state = unwrap;
4466
- try {
4467
- if (state.facade === value) throw TypeError("Promise can't be resolved itself");
4468
- var then = isThenable(value);
4469
- if (then) {
4470
- microtask(function () {
4471
- var wrapper = { done: false };
4472
- try {
4473
- then.call(value,
4474
- bind(internalResolve, wrapper, state),
4475
- bind(internalReject, wrapper, state)
4476
- );
4477
- } catch (error) {
4478
- internalReject(wrapper, error, state);
4479
- }
4480
- });
4481
- } else {
4482
- state.value = value;
4483
- state.state = FULFILLED;
4484
- notify(state, false);
4485
- }
4486
- } catch (error) {
4487
- internalReject({ done: false }, error, state);
4488
- }
4489
- };
4490
 
4491
- // constructor polyfill
4492
- if (FORCED) {
4493
- // 25.4.3.1 Promise(executor)
4494
- PromiseConstructor = function Promise(executor) {
4495
- anInstance(this, PromiseConstructor, PROMISE);
4496
- aFunction(executor);
4497
- Internal.call(this);
4498
- var state = getInternalState(this);
4499
- try {
4500
- executor(bind(internalResolve, state), bind(internalReject, state));
4501
- } catch (error) {
4502
- internalReject(state, error);
4503
- }
4504
- };
4505
- // eslint-disable-next-line no-unused-vars -- required for `.length`
4506
- Internal = function Promise(executor) {
4507
- setInternalState(this, {
4508
- type: PROMISE,
4509
- done: false,
4510
- notified: false,
4511
- parent: false,
4512
- reactions: [],
4513
- rejection: false,
4514
- state: PENDING,
4515
- value: undefined
4516
- });
4517
- };
4518
- Internal.prototype = redefineAll(PromiseConstructor.prototype, {
4519
- // `Promise.prototype.then` method
4520
- // https://tc39.es/ecma262/#sec-promise.prototype.then
4521
- then: function then(onFulfilled, onRejected) {
4522
- var state = getInternalPromiseState(this);
4523
- var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));
4524
- reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
4525
- reaction.fail = typeof onRejected == 'function' && onRejected;
4526
- reaction.domain = IS_NODE ? process.domain : undefined;
4527
- state.parent = true;
4528
- state.reactions.push(reaction);
4529
- if (state.state != PENDING) notify(state, false);
4530
- return reaction.promise;
4531
- },
4532
- // `Promise.prototype.catch` method
4533
- // https://tc39.es/ecma262/#sec-promise.prototype.catch
4534
- 'catch': function (onRejected) {
4535
- return this.then(undefined, onRejected);
4536
- }
4537
- });
4538
- OwnPromiseCapability = function () {
4539
- var promise = new Internal();
4540
- var state = getInternalState(promise);
4541
- this.promise = promise;
4542
- this.resolve = bind(internalResolve, state);
4543
- this.reject = bind(internalReject, state);
4544
- };
4545
- newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
4546
- return C === PromiseConstructor || C === PromiseWrapper
4547
- ? new OwnPromiseCapability(C)
4548
- : newGenericPromiseCapability(C);
4549
- };
4550
 
4551
- if (!IS_PURE && typeof NativePromise == 'function') {
4552
- nativeThen = NativePromise.prototype.then;
4553
-
4554
- // wrap native Promise#then for native async functions
4555
- redefine(NativePromise.prototype, 'then', function then(onFulfilled, onRejected) {
4556
- var that = this;
4557
- return new PromiseConstructor(function (resolve, reject) {
4558
- nativeThen.call(that, resolve, reject);
4559
- }).then(onFulfilled, onRejected);
4560
- // https://github.com/zloirock/core-js/issues/640
4561
- }, { unsafe: true });
4562
-
4563
- // wrap fetch result
4564
- if (typeof $fetch == 'function') $({ global: true, enumerable: true, forced: true }, {
4565
- // eslint-disable-next-line no-unused-vars -- required for `.length`
4566
- fetch: function fetch(input /* , init */) {
4567
- return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments));
4568
- }
4569
- });
4570
- }
4571
- }
4572
 
4573
- $({ global: true, wrap: true, forced: FORCED }, {
4574
- Promise: PromiseConstructor
4575
- });
4576
 
4577
- setToStringTag(PromiseConstructor, PROMISE, false, true);
4578
- setSpecies(PROMISE);
4579
 
4580
- PromiseWrapper = getBuiltIn(PROMISE);
 
 
 
 
 
 
 
 
4581
 
4582
- // statics
4583
- $({ target: PROMISE, stat: true, forced: FORCED }, {
4584
- // `Promise.reject` method
4585
- // https://tc39.es/ecma262/#sec-promise.reject
4586
- reject: function reject(r) {
4587
- var capability = newPromiseCapability(this);
4588
- capability.reject.call(undefined, r);
4589
- return capability.promise;
4590
- }
4591
- });
4592
 
4593
- $({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {
4594
- // `Promise.resolve` method
4595
- // https://tc39.es/ecma262/#sec-promise.resolve
4596
- resolve: function resolve(x) {
4597
- return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);
4598
- }
4599
- });
4600
 
4601
- $({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {
4602
- // `Promise.all` method
4603
- // https://tc39.es/ecma262/#sec-promise.all
4604
- all: function all(iterable) {
4605
- var C = this;
4606
- var capability = newPromiseCapability(C);
4607
- var resolve = capability.resolve;
4608
- var reject = capability.reject;
4609
- var result = perform(function () {
4610
- var $promiseResolve = aFunction(C.resolve);
4611
- var values = [];
4612
- var counter = 0;
4613
- var remaining = 1;
4614
- iterate(iterable, function (promise) {
4615
- var index = counter++;
4616
- var alreadyCalled = false;
4617
- values.push(undefined);
4618
- remaining++;
4619
- $promiseResolve.call(C, promise).then(function (value) {
4620
- if (alreadyCalled) return;
4621
- alreadyCalled = true;
4622
- values[index] = value;
4623
- --remaining || resolve(values);
4624
- }, reject);
4625
- });
4626
- --remaining || resolve(values);
4627
- });
4628
- if (result.error) reject(result.value);
4629
- return capability.promise;
4630
- },
4631
- // `Promise.race` method
4632
- // https://tc39.es/ecma262/#sec-promise.race
4633
- race: function race(iterable) {
4634
- var C = this;
4635
- var capability = newPromiseCapability(C);
4636
- var reject = capability.reject;
4637
- var result = perform(function () {
4638
- var $promiseResolve = aFunction(C.resolve);
4639
- iterate(iterable, function (promise) {
4640
- $promiseResolve.call(C, promise).then(capability.resolve, reject);
4641
- });
4642
- });
4643
- if (result.error) reject(result.value);
4644
- return capability.promise;
4645
  }
4646
- });
4647
-
4648
 
4649
- /***/ }),
4650
- /* 165 */
4651
- /***/ (function(module, exports, __webpack_require__) {
 
4652
 
4653
- var wellKnownSymbol = __webpack_require__(8);
 
4654
 
4655
- var ITERATOR = wellKnownSymbol('iterator');
4656
- var SAFE_CLOSING = false;
 
 
4657
 
4658
- try {
4659
- var called = 0;
4660
- var iteratorWithReturn = {
4661
- next: function () {
4662
- return { done: !!called++ };
4663
- },
4664
- 'return': function () {
4665
- SAFE_CLOSING = true;
4666
  }
4667
- };
4668
- iteratorWithReturn[ITERATOR] = function () {
4669
- return this;
4670
- };
4671
- // eslint-disable-next-line no-throw-literal -- required for testing
4672
- Array.from(iteratorWithReturn, function () { throw 2; });
4673
- } catch (error) { /* empty */ }
4674
 
4675
- module.exports = function (exec, SKIP_CLOSING) {
4676
- if (!SKIP_CLOSING && !SAFE_CLOSING) return false;
4677
- var ITERATION_SUPPORT = false;
4678
- try {
4679
- var object = {};
4680
- object[ITERATOR] = function () {
4681
- return {
4682
- next: function () {
4683
- return { done: ITERATION_SUPPORT = true };
4684
- }
4685
- };
4686
- };
4687
- exec(object);
4688
- } catch (error) { /* empty */ }
4689
- return ITERATION_SUPPORT;
4690
- };
4691
 
 
 
 
4692
 
4693
- /***/ }),
4694
- /* 166 */
4695
- /***/ (function(module, exports, __webpack_require__) {
4696
 
4697
- "use strict";
 
 
 
4698
 
4699
- var $ = __webpack_require__(12);
4700
- var createIteratorConstructor = __webpack_require__(199);
4701
- var getPrototypeOf = __webpack_require__(174);
4702
- var setPrototypeOf = __webpack_require__(143);
4703
- var setToStringTag = __webpack_require__(90);
4704
- var createNonEnumerableProperty = __webpack_require__(19);
4705
- var redefine = __webpack_require__(27);
4706
- var wellKnownSymbol = __webpack_require__(8);
4707
- var IS_PURE = __webpack_require__(57);
4708
- var Iterators = __webpack_require__(110);
4709
- var IteratorsCore = __webpack_require__(173);
4710
-
4711
- var IteratorPrototype = IteratorsCore.IteratorPrototype;
4712
- var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
4713
- var ITERATOR = wellKnownSymbol('iterator');
4714
- var KEYS = 'keys';
4715
- var VALUES = 'values';
4716
- var ENTRIES = 'entries';
4717
-
4718
- var returnThis = function () { return this; };
4719
-
4720
- module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
4721
- createIteratorConstructor(IteratorConstructor, NAME, next);
4722
-
4723
- var getIterationMethod = function (KIND) {
4724
- if (KIND === DEFAULT && defaultIterator) return defaultIterator;
4725
- if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];
4726
- switch (KIND) {
4727
- case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
4728
- case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
4729
- case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
4730
- } return function () { return new IteratorConstructor(this); };
4731
- };
4732
 
4733
- var TO_STRING_TAG = NAME + ' Iterator';
4734
- var INCORRECT_VALUES_NAME = false;
4735
- var IterablePrototype = Iterable.prototype;
4736
- var nativeIterator = IterablePrototype[ITERATOR]
4737
- || IterablePrototype['@@iterator']
4738
- || DEFAULT && IterablePrototype[DEFAULT];
4739
- var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
4740
- var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
4741
- var CurrentIteratorPrototype, methods, KEY;
4742
-
4743
- // fix native
4744
- if (anyNativeIterator) {
4745
- CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));
4746
- if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
4747
- if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {
4748
- if (setPrototypeOf) {
4749
- setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
4750
- } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {
4751
- createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);
4752
- }
4753
- }
4754
- // Set @@toStringTag to native iterators
4755
- setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);
4756
- if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;
4757
  }
4758
- }
4759
 
4760
- // fix Array#{values, @@iterator}.name in V8 / FF
4761
- if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
4762
- INCORRECT_VALUES_NAME = true;
4763
- defaultIterator = function values() { return nativeIterator.call(this); };
4764
  }
4765
 
4766
- // define iterator
4767
- if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {
4768
- createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);
4769
  }
4770
- Iterators[NAME] = defaultIterator;
4771
 
4772
- // export additional methods
4773
- if (DEFAULT) {
4774
- methods = {
4775
- values: getIterationMethod(VALUES),
4776
- keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
4777
- entries: getIterationMethod(ENTRIES)
4778
- };
4779
- if (FORCED) for (KEY in methods) {
4780
- if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
4781
- redefine(IterablePrototype, KEY, methods[KEY]);
4782
- }
4783
- } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
4784
  }
4785
 
4786
- return methods;
4787
- };
4788
 
 
 
 
4789
 
4790
- /***/ }),
4791
- /* 167 */,
4792
- /* 168 */
4793
- /***/ (function(module, exports, __webpack_require__) {
4794
-
4795
- var toObject = __webpack_require__(38);
4796
-
4797
- var floor = Math.floor;
4798
- var replace = ''.replace;
4799
- var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d{1,2}|<[^>]*>)/g;
4800
- var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d{1,2})/g;
4801
-
4802
- // https://tc39.es/ecma262/#sec-getsubstitution
4803
- module.exports = function (matched, str, position, captures, namedCaptures, replacement) {
4804
- var tailPos = position + matched.length;
4805
- var m = captures.length;
4806
- var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
4807
- if (namedCaptures !== undefined) {
4808
- namedCaptures = toObject(namedCaptures);
4809
- symbols = SUBSTITUTION_SYMBOLS;
4810
- }
4811
- return replace.call(replacement, symbols, function (match, ch) {
4812
- var capture;
4813
- switch (ch.charAt(0)) {
4814
- case '$': return '$';
4815
- case '&': return matched;
4816
- case '`': return str.slice(0, position);
4817
- case "'": return str.slice(tailPos);
4818
- case '<':
4819
- capture = namedCaptures[ch.slice(1, -1)];
4820
- break;
4821
- default: // \d\d?
4822
- var n = +ch;
4823
- if (n === 0) return match;
4824
- if (n > m) {
4825
- var f = floor(n / 10);
4826
- if (f === 0) return match;
4827
- if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
4828
- return match;
4829
- }
4830
- capture = captures[n - 1];
4831
- }
4832
- return capture === undefined ? '' : capture;
4833
- });
4834
- };
4835
-
4836
-
4837
- /***/ }),
4838
- /* 169 */
4839
- /***/ (function(module, exports, __webpack_require__) {
4840
-
4841
- "use strict";
4842
 
4843
 
4844
- var replace = String.prototype.replace;
4845
- var percentTwenties = /%20/g;
 
 
 
 
 
 
 
 
 
 
 
4846
 
4847
- var Format = {
4848
- RFC1738: 'RFC1738',
4849
- RFC3986: 'RFC3986'
4850
- };
4851
 
4852
- module.exports = {
4853
- 'default': Format.RFC3986,
4854
- formatters: {
4855
- RFC1738: function (value) {
4856
- return replace.call(value, percentTwenties, '+');
4857
- },
4858
- RFC3986: function (value) {
4859
- return String(value);
4860
  }
4861
- },
4862
- RFC1738: Format.RFC1738,
4863
- RFC3986: Format.RFC3986
4864
- };
4865
-
4866
-
4867
- /***/ }),
4868
- /* 170 */
4869
- /***/ (function(module, exports, __webpack_require__) {
4870
-
4871
- "use strict";
4872
-
4873
- var fixRegExpWellKnownSymbolLogic = __webpack_require__(111);
4874
- var anObject = __webpack_require__(9);
4875
- var requireObjectCoercible = __webpack_require__(32);
4876
- var sameValue = __webpack_require__(214);
4877
- var regExpExec = __webpack_require__(112);
4878
-
4879
- // @@search logic
4880
- fixRegExpWellKnownSymbolLogic('search', 1, function (SEARCH, nativeSearch, maybeCallNative) {
4881
- return [
4882
- // `String.prototype.search` method
4883
- // https://tc39.es/ecma262/#sec-string.prototype.search
4884
- function search(regexp) {
4885
- var O = requireObjectCoercible(this);
4886
- var searcher = regexp == undefined ? undefined : regexp[SEARCH];
4887
- return searcher !== undefined ? searcher.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
4888
- },
4889
- // `RegExp.prototype[@@search]` method
4890
- // https://tc39.es/ecma262/#sec-regexp.prototype-@@search
4891
- function (regexp) {
4892
- var res = maybeCallNative(nativeSearch, regexp, this);
4893
- if (res.done) return res.value;
4894
-
4895
- var rx = anObject(regexp);
4896
- var S = String(this);
4897
-
4898
- var previousLastIndex = rx.lastIndex;
4899
- if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;
4900
- var result = regExpExec(rx, S);
4901
- if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;
4902
- return result === null ? -1 : result.index;
4903
- }
4904
- ];
4905
- });
4906
 
 
 
4907
 
4908
- /***/ }),
4909
- /* 171 */
4910
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4911
 
4912
- var wellKnownSymbol = __webpack_require__(8);
4913
- var Iterators = __webpack_require__(110);
4914
 
4915
- var ITERATOR = wellKnownSymbol('iterator');
4916
- var ArrayPrototype = Array.prototype;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4917
 
4918
- // check on default Array iterator
4919
- module.exports = function (it) {
4920
- return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);
4921
- };
4922
 
 
 
4923
 
4924
- /***/ }),
4925
- /* 172 */
4926
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
4927
 
4928
- var anObject = __webpack_require__(9);
4929
 
4930
- module.exports = function (iterator) {
4931
- var returnMethod = iterator['return'];
4932
- if (returnMethod !== undefined) {
4933
- return anObject(returnMethod.call(iterator)).value;
 
 
 
4934
  }
4935
- };
4936
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4937
 
4938
- /***/ }),
4939
- /* 173 */
4940
- /***/ (function(module, exports, __webpack_require__) {
 
4941
 
4942
- "use strict";
4943
 
4944
- var fails = __webpack_require__(6);
4945
- var getPrototypeOf = __webpack_require__(174);
4946
- var createNonEnumerableProperty = __webpack_require__(19);
4947
- var has = __webpack_require__(11);
4948
- var wellKnownSymbol = __webpack_require__(8);
4949
- var IS_PURE = __webpack_require__(57);
4950
 
4951
- var ITERATOR = wellKnownSymbol('iterator');
4952
- var BUGGY_SAFARI_ITERATORS = false;
 
 
 
 
 
 
 
 
 
 
 
 
4953
 
4954
- var returnThis = function () { return this; };
4955
 
4956
- // `%IteratorPrototype%` object
4957
- // https://tc39.es/ecma262/#sec-%iteratorprototype%-object
4958
- var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;
4959
 
4960
- if ([].keys) {
4961
- arrayIterator = [].keys();
4962
- // Safari 8 has buggy iterators w/o `next`
4963
- if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
4964
- else {
4965
- PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
4966
- if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
4967
- }
4968
- }
4969
 
4970
- var NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {
4971
- var test = {};
4972
- // FF44- legacy iterators case
4973
- return IteratorPrototype[ITERATOR].call(test) !== test;
4974
- });
4975
 
4976
- if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};
 
 
 
 
 
 
4977
 
4978
- // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
4979
- if ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !has(IteratorPrototype, ITERATOR)) {
4980
- createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);
4981
- }
4982
 
4983
- module.exports = {
4984
- IteratorPrototype: IteratorPrototype,
4985
- BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS
4986
- };
 
 
4987
 
 
 
 
 
 
 
 
 
 
 
 
 
4988
 
4989
- /***/ }),
4990
- /* 174 */
4991
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4992
 
4993
- var has = __webpack_require__(11);
4994
- var toObject = __webpack_require__(38);
4995
- var sharedKey = __webpack_require__(52);
4996
- var CORRECT_PROTOTYPE_GETTER = __webpack_require__(213);
4997
-
4998
- var IE_PROTO = sharedKey('IE_PROTO');
4999
- var ObjectPrototype = Object.prototype;
5000
-
5001
- // `Object.getPrototypeOf` method
5002
- // https://tc39.es/ecma262/#sec-object.getprototypeof
5003
- module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {
5004
- O = toObject(O);
5005
- if (has(O, IE_PROTO)) return O[IE_PROTO];
5006
- if (typeof O.constructor == 'function' && O instanceof O.constructor) {
5007
- return O.constructor.prototype;
5008
- } return O instanceof Object ? ObjectPrototype : null;
5009
- };
5010
 
 
 
 
 
 
 
5011
 
5012
- /***/ }),
5013
- /* 175 */,
5014
- /* 176 */
5015
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
5016
 
5017
- "use strict";
5018
- var isProduction = "production" === 'production';
5019
- var prefix = 'Invariant failed';
5020
- function invariant(condition, message) {
5021
- if (condition) {
5022
- return;
5023
- }
5024
- if (isProduction) {
5025
- throw new Error(prefix);
5026
  }
5027
- throw new Error(prefix + ": " + (message || ''));
5028
- }
5029
-
5030
- /* harmony default export */ __webpack_exports__["a"] = (invariant);
5031
-
5032
-
5033
- /***/ }),
5034
- /* 177 */
5035
- /***/ (function(module, exports, __webpack_require__) {
5036
 
5037
- "use strict";
5038
 
5039
- var fixRegExpWellKnownSymbolLogic = __webpack_require__(111);
5040
- var isRegExp = __webpack_require__(144);
5041
- var anObject = __webpack_require__(9);
5042
- var requireObjectCoercible = __webpack_require__(32);
5043
- var speciesConstructor = __webpack_require__(150);
5044
- var advanceStringIndex = __webpack_require__(122);
5045
- var toLength = __webpack_require__(34);
5046
- var callRegExpExec = __webpack_require__(112);
5047
- var regexpExec = __webpack_require__(91);
5048
- var fails = __webpack_require__(6);
5049
-
5050
- var arrayPush = [].push;
5051
- var min = Math.min;
5052
- var MAX_UINT32 = 0xFFFFFFFF;
5053
-
5054
- // babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
5055
- var SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });
5056
-
5057
- // @@split logic
5058
- fixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {
5059
- var internalSplit;
5060
- if (
5061
- 'abbc'.split(/(b)*/)[1] == 'c' ||
5062
- // eslint-disable-next-line regexp/no-empty-group -- required for testing
5063
- 'test'.split(/(?:)/, -1).length != 4 ||
5064
- 'ab'.split(/(?:ab)*/).length != 2 ||
5065
- '.'.split(/(.?)(.?)/).length != 4 ||
5066
- // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing
5067
- '.'.split(/()()/).length > 1 ||
5068
- ''.split(/.?/).length
5069
- ) {
5070
- // based on es5-shim implementation, need to rework it
5071
- internalSplit = function (separator, limit) {
5072
- var string = String(requireObjectCoercible(this));
5073
- var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
5074
- if (lim === 0) return [];
5075
- if (separator === undefined) return [string];
5076
- // If `separator` is not a regex, use native split
5077
- if (!isRegExp(separator)) {
5078
- return nativeSplit.call(string, separator, lim);
5079
- }
5080
- var output = [];
5081
- var flags = (separator.ignoreCase ? 'i' : '') +
5082
- (separator.multiline ? 'm' : '') +
5083
- (separator.unicode ? 'u' : '') +
5084
- (separator.sticky ? 'y' : '');
5085
- var lastLastIndex = 0;
5086
- // Make `global` and avoid `lastIndex` issues by working with a copy
5087
- var separatorCopy = new RegExp(separator.source, flags + 'g');
5088
- var match, lastIndex, lastLength;
5089
- while (match = regexpExec.call(separatorCopy, string)) {
5090
- lastIndex = separatorCopy.lastIndex;
5091
- if (lastIndex > lastLastIndex) {
5092
- output.push(string.slice(lastLastIndex, match.index));
5093
- if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));
5094
- lastLength = match[0].length;
5095
- lastLastIndex = lastIndex;
5096
- if (output.length >= lim) break;
5097
- }
5098
- if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop
5099
- }
5100
- if (lastLastIndex === string.length) {
5101
- if (lastLength || !separatorCopy.test('')) output.push('');
5102
- } else output.push(string.slice(lastLastIndex));
5103
- return output.length > lim ? output.slice(0, lim) : output;
5104
- };
5105
- // Chakra, V8
5106
- } else if ('0'.split(undefined, 0).length) {
5107
- internalSplit = function (separator, limit) {
5108
- return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);
5109
- };
5110
- } else internalSplit = nativeSplit;
5111
-
5112
- return [
5113
- // `String.prototype.split` method
5114
- // https://tc39.es/ecma262/#sec-string.prototype.split
5115
- function split(separator, limit) {
5116
- var O = requireObjectCoercible(this);
5117
- var splitter = separator == undefined ? undefined : separator[SPLIT];
5118
- return splitter !== undefined
5119
- ? splitter.call(separator, O, limit)
5120
- : internalSplit.call(String(O), separator, limit);
5121
- },
5122
- // `RegExp.prototype[@@split]` method
5123
- // https://tc39.es/ecma262/#sec-regexp.prototype-@@split
5124
- //
5125
- // NOTE: This cannot be properly polyfilled in engines that don't support
5126
- // the 'y' flag.
5127
- function (regexp, limit) {
5128
- var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);
5129
- if (res.done) return res.value;
5130
-
5131
- var rx = anObject(regexp);
5132
- var S = String(this);
5133
- var C = speciesConstructor(rx, RegExp);
5134
-
5135
- var unicodeMatching = rx.unicode;
5136
- var flags = (rx.ignoreCase ? 'i' : '') +
5137
- (rx.multiline ? 'm' : '') +
5138
- (rx.unicode ? 'u' : '') +
5139
- (SUPPORTS_Y ? 'y' : 'g');
5140
-
5141
- // ^(? + rx + ) is needed, in combination with some S slicing, to
5142
- // simulate the 'y' flag.
5143
- var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
5144
- var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
5145
- if (lim === 0) return [];
5146
- if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
5147
- var p = 0;
5148
- var q = 0;
5149
- var A = [];
5150
- while (q < S.length) {
5151
- splitter.lastIndex = SUPPORTS_Y ? q : 0;
5152
- var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
5153
- var e;
5154
- if (
5155
- z === null ||
5156
- (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
5157
- ) {
5158
- q = advanceStringIndex(S, q, unicodeMatching);
5159
- } else {
5160
- A.push(S.slice(p, q));
5161
- if (A.length === lim) return A;
5162
- for (var i = 1; i <= z.length - 1; i++) {
5163
- A.push(z[i]);
5164
- if (A.length === lim) return A;
5165
- }
5166
- q = p = e;
5167
- }
5168
  }
5169
- A.push(S.slice(p));
5170
- return A;
5171
- }
5172
- ];
5173
- }, !SUPPORTS_Y);
5174
 
 
 
 
5175
 
5176
- /***/ }),
5177
- /* 178 */
5178
- /***/ (function(module, exports, __webpack_require__) {
5179
-
5180
- "use strict";
5181
 
5182
- var DESCRIPTORS = __webpack_require__(13);
5183
- var global = __webpack_require__(3);
5184
- var isForced = __webpack_require__(74);
5185
- var redefine = __webpack_require__(27);
5186
- var has = __webpack_require__(11);
5187
- var classof = __webpack_require__(30);
5188
- var inheritIfRequired = __webpack_require__(156);
5189
- var toPrimitive = __webpack_require__(40);
5190
- var fails = __webpack_require__(6);
5191
- var create = __webpack_require__(69);
5192
- var getOwnPropertyNames = __webpack_require__(56).f;
5193
- var getOwnPropertyDescriptor = __webpack_require__(33).f;
5194
- var defineProperty = __webpack_require__(17).f;
5195
- var trim = __webpack_require__(188).trim;
5196
-
5197
- var NUMBER = 'Number';
5198
- var NativeNumber = global[NUMBER];
5199
- var NumberPrototype = NativeNumber.prototype;
5200
-
5201
- // Opera ~12 has broken Object#toString
5202
- var BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;
5203
-
5204
- // `ToNumber` abstract operation
5205
- // https://tc39.es/ecma262/#sec-tonumber
5206
- var toNumber = function (argument) {
5207
- var it = toPrimitive(argument, false);
5208
- var first, third, radix, maxCode, digits, length, index, code;
5209
- if (typeof it == 'string' && it.length > 2) {
5210
- it = trim(it);
5211
- first = it.charCodeAt(0);
5212
- if (first === 43 || first === 45) {
5213
- third = it.charCodeAt(2);
5214
- if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix
5215
- } else if (first === 48) {
5216
- switch (it.charCodeAt(1)) {
5217
- case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i
5218
- case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i
5219
- default: return +it;
5220
- }
5221
- digits = it.slice(2);
5222
- length = digits.length;
5223
- for (index = 0; index < length; index++) {
5224
- code = digits.charCodeAt(index);
5225
- // parseInt parses a string to a first unavailable symbol
5226
- // but ToNumber should return NaN if a string contains unavailable symbols
5227
- if (code < 48 || code > maxCode) return NaN;
5228
- } return parseInt(digits, radix);
5229
- }
5230
- } return +it;
5231
- };
5232
 
5233
- // `Number` constructor
5234
- // https://tc39.es/ecma262/#sec-number-constructor
5235
- if (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {
5236
- var NumberWrapper = function Number(value) {
5237
- var it = arguments.length < 1 ? 0 : value;
5238
- var dummy = this;
5239
- return dummy instanceof NumberWrapper
5240
- // check on 1..constructor(foo) case
5241
- && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)
5242
- ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);
5243
- };
5244
- for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (
5245
- // ES3:
5246
- 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
5247
- // ES2015 (in case, if modules with ES2015 Number statics required before):
5248
- 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
5249
- 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,' +
5250
- // ESNext
5251
- 'fromString,range'
5252
- ).split(','), j = 0, key; keys.length > j; j++) {
5253
- if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {
5254
- defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));
5255
  }
5256
- }
5257
- NumberWrapper.prototype = NumberPrototype;
5258
- NumberPrototype.constructor = NumberWrapper;
5259
- redefine(global, NUMBER, NumberWrapper);
5260
- }
5261
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5262
 
5263
- /***/ }),
5264
- /* 179 */
5265
- /***/ (function(module, exports, __webpack_require__) {
5266
 
5267
- var arrayLikeToArray = __webpack_require__(124);
 
 
 
 
5268
 
5269
- function _arrayWithoutHoles(arr) {
5270
- if (Array.isArray(arr)) return arrayLikeToArray(arr);
5271
- }
5272
 
5273
- module.exports = _arrayWithoutHoles;
 
 
 
5274
 
5275
- /***/ }),
5276
- /* 180 */
5277
- /***/ (function(module, exports) {
5278
 
5279
- function _iterableToArray(iter) {
5280
- if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter);
5281
- }
 
 
 
 
 
 
5282
 
5283
- module.exports = _iterableToArray;
 
5284
 
5285
  /***/ }),
5286
- /* 181 */
5287
- /***/ (function(module, exports) {
5288
 
5289
- function _nonIterableSpread() {
5290
- throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
5291
- }
5292
 
5293
- module.exports = _nonIterableSpread;
 
 
 
 
 
5294
 
5295
- /***/ }),
5296
- /* 182 */
5297
- /***/ (function(module, exports) {
5298
 
5299
- function _arrayWithHoles(arr) {
5300
- if (Array.isArray(arr)) return arr;
5301
- }
 
 
 
 
5302
 
5303
- module.exports = _arrayWithHoles;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5304
 
5305
- /***/ }),
5306
- /* 183 */
5307
- /***/ (function(module, exports) {
 
 
5308
 
5309
- function _iterableToArrayLimit(arr, i) {
5310
- if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;
5311
- var _arr = [];
5312
- var _n = true;
5313
- var _d = false;
5314
- var _e = undefined;
5315
 
5316
- try {
5317
- for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
5318
- _arr.push(_s.value);
5319
 
5320
- if (i && _arr.length === i) break;
5321
- }
5322
- } catch (err) {
5323
- _d = true;
5324
- _e = err;
5325
- } finally {
 
 
 
 
 
5326
  try {
5327
- if (!_n && _i["return"] != null) _i["return"]();
5328
- } finally {
5329
- if (_d) throw _e;
5330
  }
5331
  }
5332
 
5333
- return _arr;
5334
- }
 
 
5335
 
5336
- module.exports = _iterableToArrayLimit;
 
 
5337
 
5338
- /***/ }),
5339
- /* 184 */
5340
- /***/ (function(module, exports) {
 
 
 
 
5341
 
5342
- function _nonIterableRest() {
5343
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
5344
- }
 
 
 
5345
 
5346
- module.exports = _nonIterableRest;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5347
 
5348
- /***/ }),
5349
- /* 185 */,
5350
- /* 186 */,
5351
- /* 187 */
5352
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
5353
 
5354
- "use strict";
 
 
 
 
 
 
 
 
5355
 
5356
- var $ = __webpack_require__(12);
5357
- var isObject = __webpack_require__(10);
5358
- var isArray = __webpack_require__(84);
5359
- var toAbsoluteIndex = __webpack_require__(97);
5360
- var toLength = __webpack_require__(34);
5361
- var toIndexedObject = __webpack_require__(21);
5362
- var createProperty = __webpack_require__(102);
5363
- var wellKnownSymbol = __webpack_require__(8);
5364
- var arrayMethodHasSpeciesSupport = __webpack_require__(89);
5365
-
5366
- var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');
5367
-
5368
- var SPECIES = wellKnownSymbol('species');
5369
- var nativeSlice = [].slice;
5370
- var max = Math.max;
5371
-
5372
- // `Array.prototype.slice` method
5373
- // https://tc39.es/ecma262/#sec-array.prototype.slice
5374
- // fallback for not array-like ES3 strings and DOM objects
5375
- $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
5376
- slice: function slice(start, end) {
5377
- var O = toIndexedObject(this);
5378
- var length = toLength(O.length);
5379
- var k = toAbsoluteIndex(start, length);
5380
- var fin = toAbsoluteIndex(end === undefined ? length : end, length);
5381
- // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible
5382
- var Constructor, result, n;
5383
- if (isArray(O)) {
5384
- Constructor = O.constructor;
5385
- // cross-realm fallback
5386
- if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {
5387
- Constructor = undefined;
5388
- } else if (isObject(Constructor)) {
5389
- Constructor = Constructor[SPECIES];
5390
- if (Constructor === null) Constructor = undefined;
5391
- }
5392
- if (Constructor === Array || Constructor === undefined) {
5393
- return nativeSlice.call(O, k, fin);
5394
- }
5395
  }
5396
- result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));
5397
- for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);
5398
- result.length = n;
5399
- return result;
5400
- }
5401
- });
5402
 
 
 
 
 
 
 
 
5403
 
5404
- /***/ }),
5405
- /* 188 */
5406
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5407
 
5408
- var requireObjectCoercible = __webpack_require__(32);
5409
- var whitespaces = __webpack_require__(189);
 
 
 
 
 
 
 
 
 
 
 
5410
 
5411
- var whitespace = '[' + whitespaces + ']';
5412
- var ltrim = RegExp('^' + whitespace + whitespace + '*');
5413
- var rtrim = RegExp(whitespace + whitespace + '*$');
5414
 
5415
- // `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation
5416
- var createMethod = function (TYPE) {
5417
- return function ($this) {
5418
- var string = String(requireObjectCoercible($this));
5419
- if (TYPE & 1) string = string.replace(ltrim, '');
5420
- if (TYPE & 2) string = string.replace(rtrim, '');
5421
- return string;
5422
- };
5423
- };
5424
 
5425
- module.exports = {
5426
- // `String.prototype.{ trimLeft, trimStart }` methods
5427
- // https://tc39.es/ecma262/#sec-string.prototype.trimstart
5428
- start: createMethod(1),
5429
- // `String.prototype.{ trimRight, trimEnd }` methods
5430
- // https://tc39.es/ecma262/#sec-string.prototype.trimend
5431
- end: createMethod(2),
5432
- // `String.prototype.trim` method
5433
- // https://tc39.es/ecma262/#sec-string.prototype.trim
5434
- trim: createMethod(3)
5435
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5436
 
 
 
 
 
 
5437
 
5438
- /***/ }),
5439
- /* 189 */
5440
- /***/ (function(module, exports) {
 
5441
 
5442
- // a string of all valid unicode whitespaces
5443
- module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002' +
5444
- '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
 
 
 
5445
 
 
 
5446
 
5447
- /***/ }),
5448
- /* 190 */,
5449
- /* 191 */,
5450
- /* 192 */
5451
- /***/ (function(module, exports, __webpack_require__) {
5452
 
5453
- "use strict";
 
 
 
5454
 
5455
- var $ = __webpack_require__(12);
5456
- var $find = __webpack_require__(75).find;
5457
- var addToUnscopables = __webpack_require__(118);
 
5458
 
5459
- var FIND = 'find';
5460
- var SKIPS_HOLES = true;
5461
 
5462
- // Shouldn't skip holes
5463
- if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });
 
 
 
 
 
 
 
5464
 
5465
- // `Array.prototype.find` method
5466
- // https://tc39.es/ecma262/#sec-array.prototype.find
5467
- $({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {
5468
- find: function find(callbackfn /* , that = undefined */) {
5469
- return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
5470
- }
5471
- });
5472
 
5473
- // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
5474
- addToUnscopables(FIND);
 
 
 
5475
 
 
5476
 
5477
- /***/ }),
5478
- /* 193 */
5479
- /***/ (function(module, exports, __webpack_require__) {
5480
 
5481
- var global = __webpack_require__(3);
5482
 
5483
- module.exports = global.Promise;
 
 
 
 
 
 
5484
 
 
 
 
5485
 
5486
- /***/ }),
5487
- /* 194 */
5488
- /***/ (function(module, exports, __webpack_require__) {
 
5489
 
5490
- var global = __webpack_require__(3);
5491
- var getOwnPropertyDescriptor = __webpack_require__(33).f;
5492
- var macrotask = __webpack_require__(157).set;
5493
- var IS_IOS = __webpack_require__(158);
5494
- var IS_WEBOS_WEBKIT = __webpack_require__(195);
5495
- var IS_NODE = __webpack_require__(77);
5496
-
5497
- var MutationObserver = global.MutationObserver || global.WebKitMutationObserver;
5498
- var document = global.document;
5499
- var process = global.process;
5500
- var Promise = global.Promise;
5501
- // Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`
5502
- var queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');
5503
- var queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;
5504
-
5505
- var flush, head, last, notify, toggle, node, promise, then;
5506
-
5507
- // modern engines have queueMicrotask method
5508
- if (!queueMicrotask) {
5509
- flush = function () {
5510
- var parent, fn;
5511
- if (IS_NODE && (parent = process.domain)) parent.exit();
5512
- while (head) {
5513
- fn = head.fn;
5514
- head = head.next;
5515
- try {
5516
- fn();
5517
- } catch (error) {
5518
- if (head) notify();
5519
- else last = undefined;
5520
- throw error;
5521
  }
5522
- } last = undefined;
5523
- if (parent) parent.enter();
5524
- };
5525
-
5526
- // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339
5527
- // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898
5528
- if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {
5529
- toggle = true;
5530
- node = document.createTextNode('');
5531
- new MutationObserver(flush).observe(node, { characterData: true });
5532
- notify = function () {
5533
- node.data = toggle = !toggle;
5534
- };
5535
- // environments with maybe non-completely correct, but existent Promise
5536
- } else if (Promise && Promise.resolve) {
5537
- // Promise.resolve without an argument throws an error in LG WebOS 2
5538
- promise = Promise.resolve(undefined);
5539
- then = promise.then;
5540
- notify = function () {
5541
- then.call(promise, flush);
5542
- };
5543
- // Node.js without promises
5544
- } else if (IS_NODE) {
5545
- notify = function () {
5546
- process.nextTick(flush);
5547
- };
5548
- // for other environments - macrotask based on:
5549
- // - setImmediate
5550
- // - MessageChannel
5551
- // - window.postMessag
5552
- // - onreadystatechange
5553
- // - setTimeout
5554
- } else {
5555
- notify = function () {
5556
- // strange IE + webpack dev server bug - use .call(global)
5557
- macrotask.call(global, flush);
5558
  };
5559
  }
5560
- }
5561
 
5562
- module.exports = queueMicrotask || function (fn) {
5563
- var task = { fn: fn, next: undefined };
5564
- if (last) last.next = task;
5565
- if (!head) {
5566
- head = task;
5567
- notify();
5568
- } last = task;
5569
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5570
 
 
 
 
 
5571
 
5572
- /***/ }),
5573
- /* 195 */
5574
- /***/ (function(module, exports, __webpack_require__) {
5575
 
5576
- var userAgent = __webpack_require__(87);
5577
 
5578
- module.exports = /web0s(?!.*chrome)/i.test(userAgent);
 
 
 
 
 
5579
 
 
5580
 
5581
- /***/ }),
5582
- /* 196 */
5583
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
5584
 
5585
- var anObject = __webpack_require__(9);
5586
- var isObject = __webpack_require__(10);
5587
- var newPromiseCapability = __webpack_require__(159);
5588
-
5589
- module.exports = function (C, x) {
5590
- anObject(C);
5591
- if (isObject(x) && x.constructor === C) return x;
5592
- var promiseCapability = newPromiseCapability.f(C);
5593
- var resolve = promiseCapability.resolve;
5594
- resolve(x);
5595
- return promiseCapability.promise;
5596
- };
5597
 
 
 
5598
 
5599
- /***/ }),
5600
- /* 197 */
5601
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
5602
 
5603
- var global = __webpack_require__(3);
 
 
 
5604
 
5605
- module.exports = function (a, b) {
5606
- var console = global.console;
5607
- if (console && console.error) {
5608
- arguments.length === 1 ? console.error(a) : console.error(a, b);
5609
  }
5610
- };
5611
 
 
 
 
5612
 
5613
- /***/ }),
5614
- /* 198 */
5615
- /***/ (function(module, exports) {
5616
 
5617
- module.exports = function (exec) {
5618
- try {
5619
- return { error: false, value: exec() };
5620
- } catch (error) {
5621
- return { error: true, value: error };
5622
- }
5623
- };
 
5624
 
 
 
 
5625
 
5626
- /***/ }),
5627
- /* 199 */
5628
- /***/ (function(module, exports, __webpack_require__) {
5629
 
5630
- "use strict";
 
 
5631
 
5632
- var IteratorPrototype = __webpack_require__(173).IteratorPrototype;
5633
- var create = __webpack_require__(69);
5634
- var createPropertyDescriptor = __webpack_require__(39);
5635
- var setToStringTag = __webpack_require__(90);
5636
- var Iterators = __webpack_require__(110);
5637
 
5638
- var returnThis = function () { return this; };
 
5639
 
5640
- module.exports = function (IteratorConstructor, NAME, next) {
5641
- var TO_STRING_TAG = NAME + ' Iterator';
5642
- IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });
5643
- setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);
5644
- Iterators[TO_STRING_TAG] = returnThis;
5645
- return IteratorConstructor;
5646
- };
5647
 
 
 
 
 
 
 
 
 
5648
 
5649
- /***/ }),
5650
- /* 200 */
5651
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5652
 
5653
- "use strict";
 
 
 
 
 
 
5654
 
 
 
 
 
 
 
5655
 
5656
- var formats = __webpack_require__(169);
 
 
5657
 
5658
- var has = Object.prototype.hasOwnProperty;
5659
- var isArray = Array.isArray;
 
 
 
 
 
 
 
5660
 
5661
- var hexTable = (function () {
5662
- var array = [];
5663
- for (var i = 0; i < 256; ++i) {
5664
- array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());
 
 
 
 
5665
  }
5666
 
5667
- return array;
5668
- }());
 
 
5669
 
5670
- var compactQueue = function compactQueue(queue) {
5671
- while (queue.length > 1) {
5672
- var item = queue.pop();
5673
- var obj = item.obj[item.prop];
5674
 
5675
- if (isArray(obj)) {
5676
- var compacted = [];
5677
 
5678
- for (var j = 0; j < obj.length; ++j) {
5679
- if (typeof obj[j] !== 'undefined') {
5680
- compacted.push(obj[j]);
5681
- }
5682
- }
 
 
 
5683
 
5684
- item.obj[item.prop] = compacted;
 
 
 
 
 
 
 
 
 
 
 
 
5685
  }
5686
- }
5687
- };
5688
 
5689
- var arrayToObject = function arrayToObject(source, options) {
5690
- var obj = options && options.plainObjects ? Object.create(null) : {};
5691
- for (var i = 0; i < source.length; ++i) {
5692
- if (typeof source[i] !== 'undefined') {
5693
- obj[i] = source[i];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5694
  }
5695
- }
5696
 
5697
- return obj;
5698
- };
5699
 
5700
- var merge = function merge(target, source, options) {
5701
- /* eslint no-param-reassign: 0 */
5702
- if (!source) {
5703
- return target;
5704
- }
5705
 
5706
- if (typeof source !== 'object') {
5707
- if (isArray(target)) {
5708
- target.push(source);
5709
- } else if (target && typeof target === 'object') {
5710
- if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) {
5711
- target[source] = true;
5712
- }
5713
- } else {
5714
- return [target, source];
5715
  }
5716
 
5717
- return target;
5718
- }
 
5719
 
5720
- if (!target || typeof target !== 'object') {
5721
- return [target].concat(source);
5722
- }
 
 
 
5723
 
5724
- var mergeTarget = target;
5725
- if (isArray(target) && !isArray(source)) {
5726
- mergeTarget = arrayToObject(target, options);
5727
- }
5728
 
5729
- if (isArray(target) && isArray(source)) {
5730
- source.forEach(function (item, i) {
5731
- if (has.call(target, i)) {
5732
- var targetItem = target[i];
5733
- if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {
5734
- target[i] = merge(targetItem, item, options);
5735
- } else {
5736
- target.push(item);
5737
- }
5738
- } else {
5739
- target[i] = item;
5740
  }
5741
- });
5742
- return target;
5743
- }
5744
 
5745
- return Object.keys(source).reduce(function (acc, key) {
5746
- var value = source[key];
 
 
 
 
5747
 
5748
- if (has.call(acc, key)) {
5749
- acc[key] = merge(acc[key], value, options);
5750
- } else {
5751
- acc[key] = value;
 
 
 
 
5752
  }
5753
- return acc;
5754
- }, mergeTarget);
5755
- };
5756
 
5757
- var assign = function assignSingleSource(target, source) {
5758
- return Object.keys(source).reduce(function (acc, key) {
5759
- acc[key] = source[key];
5760
- return acc;
5761
- }, target);
5762
- };
 
 
 
5763
 
5764
- var decode = function (str, decoder, charset) {
5765
- var strWithoutPlus = str.replace(/\+/g, ' ');
5766
- if (charset === 'iso-8859-1') {
5767
- // unescape never throws, no try...catch needed:
5768
- return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);
5769
- }
5770
- // utf-8
5771
- try {
5772
- return decodeURIComponent(strWithoutPlus);
5773
- } catch (e) {
5774
- return strWithoutPlus;
5775
- }
5776
- };
5777
 
5778
- var encode = function encode(str, defaultEncoder, charset, kind, format) {
5779
- // This code was originally written by Brian White (mscdex) for the io.js core querystring library.
5780
- // It has been adapted here for stricter adherence to RFC 3986
5781
- if (str.length === 0) {
5782
- return str;
5783
- }
5784
 
5785
- var string = str;
5786
- if (typeof str === 'symbol') {
5787
- string = Symbol.prototype.toString.call(str);
5788
- } else if (typeof str !== 'string') {
5789
- string = String(str);
5790
- }
5791
 
5792
- if (charset === 'iso-8859-1') {
5793
- return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {
5794
- return '%26%23' + parseInt($0.slice(2), 16) + '%3B';
5795
- });
5796
- }
5797
 
5798
- var out = '';
5799
- for (var i = 0; i < string.length; ++i) {
5800
- var c = string.charCodeAt(i);
 
 
 
 
 
 
 
5801
 
5802
- if (
5803
- c === 0x2D // -
5804
- || c === 0x2E // .
5805
- || c === 0x5F // _
5806
- || c === 0x7E // ~
5807
- || (c >= 0x30 && c <= 0x39) // 0-9
5808
- || (c >= 0x41 && c <= 0x5A) // a-z
5809
- || (c >= 0x61 && c <= 0x7A) // A-Z
5810
- || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )
5811
- ) {
5812
- out += string.charAt(i);
5813
- continue;
5814
  }
 
 
5815
 
5816
- if (c < 0x80) {
5817
- out = out + hexTable[c];
5818
- continue;
 
 
 
 
 
 
 
5819
  }
 
5820
 
5821
- if (c < 0x800) {
5822
- out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);
5823
- continue;
5824
- }
5825
 
5826
- if (c < 0xD800 || c >= 0xE000) {
5827
- out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);
5828
- continue;
5829
- }
 
 
5830
 
5831
- i += 1;
5832
- c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));
5833
- out += hexTable[0xF0 | (c >> 18)]
5834
- + hexTable[0x80 | ((c >> 12) & 0x3F)]
5835
- + hexTable[0x80 | ((c >> 6) & 0x3F)]
5836
- + hexTable[0x80 | (c & 0x3F)];
 
5837
  }
 
5838
 
5839
- return out;
5840
- };
 
 
 
5841
 
5842
- var compact = function compact(value) {
5843
- var queue = [{ obj: { o: value }, prop: 'o' }];
5844
- var refs = [];
 
 
 
 
5845
 
5846
- for (var i = 0; i < queue.length; ++i) {
5847
- var item = queue[i];
5848
- var obj = item.obj[item.prop];
 
 
 
 
 
 
 
 
 
 
 
5849
 
5850
- var keys = Object.keys(obj);
5851
- for (var j = 0; j < keys.length; ++j) {
5852
- var key = keys[j];
5853
- var val = obj[key];
5854
- if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {
5855
- queue.push({ obj: obj, prop: key });
5856
- refs.push(val);
5857
- }
5858
- }
5859
- }
5860
 
5861
- compactQueue(queue);
5862
 
5863
- return value;
5864
- };
5865
 
5866
- var isRegExp = function isRegExp(obj) {
5867
- return Object.prototype.toString.call(obj) === '[object RegExp]';
5868
- };
 
 
 
 
5869
 
5870
- var isBuffer = function isBuffer(obj) {
5871
- if (!obj || typeof obj !== 'object') {
5872
- return false;
5873
- }
5874
 
5875
- return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
5876
- };
5877
 
5878
- var combine = function combine(a, b) {
5879
- return [].concat(a, b);
5880
- };
5881
 
5882
- var maybeMap = function maybeMap(val, fn) {
5883
- if (isArray(val)) {
5884
- var mapped = [];
5885
- for (var i = 0; i < val.length; i += 1) {
5886
- mapped.push(fn(val[i]));
5887
- }
5888
- return mapped;
 
 
5889
  }
5890
- return fn(val);
5891
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5892
 
5893
- module.exports = {
5894
- arrayToObject: arrayToObject,
5895
- assign: assign,
5896
- combine: combine,
5897
- compact: compact,
5898
- decode: decode,
5899
- encode: encode,
5900
- isBuffer: isBuffer,
5901
- isRegExp: isRegExp,
5902
- maybeMap: maybeMap,
5903
- merge: merge
 
 
 
 
 
 
 
 
5904
  };
5905
 
5906
 
5907
  /***/ }),
5908
- /* 201 */,
5909
- /* 202 */
5910
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
5911
 
5912
  "use strict";
 
 
 
 
 
 
5913
 
5914
- // EXPORTS
5915
- __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ createBrowserHistory; });
5916
- __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ createMemoryHistory; });
5917
- __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ createLocation; });
5918
- __webpack_require__.d(__webpack_exports__, "e", function() { return /* binding */ locationsAreEqual; });
5919
- __webpack_require__.d(__webpack_exports__, "d", function() { return /* binding */ createPath; });
5920
 
5921
- // UNUSED EXPORTS: createHashHistory, parsePath
5922
 
5923
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
5924
- var esm_extends = __webpack_require__(117);
5925
 
5926
- // CONCATENATED MODULE: ./node_modules/resolve-pathname/esm/resolve-pathname.js
5927
- function isAbsolute(pathname) {
5928
- return pathname.charAt(0) === '/';
5929
- }
5930
 
5931
- // About 1.5x faster than the two-arg version of Array#splice()
5932
- function spliceOne(list, index) {
5933
- for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1) {
5934
- list[i] = list[k];
5935
- }
5936
 
5937
- list.pop();
5938
- }
5939
 
5940
- // This implementation is based heavily on node's url.parse
5941
- function resolvePathname(to, from) {
5942
- if (from === undefined) from = '';
5943
 
5944
- var toParts = (to && to.split('/')) || [];
5945
- var fromParts = (from && from.split('/')) || [];
5946
 
5947
- var isToAbs = to && isAbsolute(to);
5948
- var isFromAbs = from && isAbsolute(from);
5949
- var mustEndAbs = isToAbs || isFromAbs;
5950
 
5951
- if (to && isAbsolute(to)) {
5952
- // to is absolute
5953
- fromParts = toParts;
5954
- } else if (toParts.length) {
5955
- // to is relative, drop the filename
5956
- fromParts.pop();
5957
- fromParts = fromParts.concat(toParts);
5958
- }
5959
 
5960
- if (!fromParts.length) return '/';
 
5961
 
5962
- var hasTrailingSlash;
5963
- if (fromParts.length) {
5964
- var last = fromParts[fromParts.length - 1];
5965
- hasTrailingSlash = last === '.' || last === '..' || last === '';
5966
- } else {
5967
- hasTrailingSlash = false;
5968
- }
5969
 
5970
- var up = 0;
5971
- for (var i = fromParts.length; i >= 0; i--) {
5972
- var part = fromParts[i];
5973
 
5974
- if (part === '.') {
5975
- spliceOne(fromParts, i);
5976
- } else if (part === '..') {
5977
- spliceOne(fromParts, i);
5978
- up++;
5979
- } else if (up) {
5980
- spliceOne(fromParts, i);
5981
- up--;
5982
- }
5983
- }
5984
 
5985
- if (!mustEndAbs) for (; up--; up) fromParts.unshift('..');
5986
 
5987
- if (
5988
- mustEndAbs &&
5989
- fromParts[0] !== '' &&
5990
- (!fromParts[0] || !isAbsolute(fromParts[0]))
5991
- )
5992
- fromParts.unshift('');
5993
 
5994
- var result = fromParts.join('/');
 
 
5995
 
5996
- if (hasTrailingSlash && result.substr(-1) !== '/') result += '/';
5997
 
5998
- return result;
5999
- }
6000
 
6001
- /* harmony default export */ var resolve_pathname = (resolvePathname);
 
6002
 
6003
- // CONCATENATED MODULE: ./node_modules/value-equal/esm/value-equal.js
6004
- function value_equal_valueOf(obj) {
6005
- return obj.valueOf ? obj.valueOf() : Object.prototype.valueOf.call(obj);
6006
  }
6007
 
6008
- function valueEqual(a, b) {
6009
- // Test for strict equality first.
6010
- if (a === b) return true;
6011
 
6012
- // Otherwise, if either of them == null they are not equal.
6013
- if (a == null || b == null) return false;
6014
 
6015
- if (Array.isArray(a)) {
6016
- return (
6017
- Array.isArray(b) &&
6018
- a.length === b.length &&
6019
- a.every(function(item, index) {
6020
- return valueEqual(item, b[index]);
6021
- })
6022
- );
6023
- }
6024
 
6025
- if (typeof a === 'object' || typeof b === 'object') {
6026
- var aValue = value_equal_valueOf(a);
6027
- var bValue = value_equal_valueOf(b);
6028
 
6029
- if (aValue !== a || bValue !== b) return valueEqual(aValue, bValue);
6030
 
6031
- return Object.keys(Object.assign({}, a, b)).every(function(key) {
6032
- return valueEqual(a[key], b[key]);
6033
- });
6034
- }
6035
 
6036
- return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6037
  }
6038
 
6039
- /* harmony default export */ var value_equal = (valueEqual);
6040
 
6041
- // EXTERNAL MODULE: ./node_modules/tiny-invariant/dist/tiny-invariant.esm.js
6042
- var tiny_invariant_esm = __webpack_require__(176);
6043
 
6044
- // CONCATENATED MODULE: ./node_modules/history/esm/history.js
6045
 
 
 
6046
 
 
6047
 
6048
 
 
 
 
 
 
 
 
 
 
 
6049
 
 
 
 
6050
 
6051
- function addLeadingSlash(path) {
6052
- return path.charAt(0) === '/' ? path : '/' + path;
6053
- }
6054
- function stripLeadingSlash(path) {
6055
- return path.charAt(0) === '/' ? path.substr(1) : path;
 
 
 
 
 
 
6056
  }
6057
- function hasBasename(path, prefix) {
6058
- return path.toLowerCase().indexOf(prefix.toLowerCase()) === 0 && '/?#'.indexOf(path.charAt(prefix.length)) !== -1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6059
  }
6060
- function stripBasename(path, prefix) {
6061
- return hasBasename(path, prefix) ? path.substr(prefix.length) : path;
 
 
 
6062
  }
6063
- function stripTrailingSlash(path) {
6064
- return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6065
  }
6066
- function parsePath(path) {
6067
- var pathname = path || '/';
6068
- var search = '';
6069
- var hash = '';
6070
- var hashIndex = pathname.indexOf('#');
 
 
 
 
 
6071
 
6072
- if (hashIndex !== -1) {
6073
- hash = pathname.substr(hashIndex);
6074
- pathname = pathname.substr(0, hashIndex);
6075
- }
6076
 
6077
- var searchIndex = pathname.indexOf('?');
 
 
 
 
 
 
6078
 
6079
- if (searchIndex !== -1) {
6080
- search = pathname.substr(searchIndex);
6081
- pathname = pathname.substr(0, searchIndex);
 
 
 
6082
  }
6083
 
6084
- return {
6085
- pathname: pathname,
6086
- search: search === '?' ? '' : search,
6087
- hash: hash === '#' ? '' : hash
6088
- };
6089
- }
6090
- function createPath(location) {
6091
- var pathname = location.pathname,
6092
- search = location.search,
6093
- hash = location.hash;
6094
- var path = pathname || '/';
6095
- if (search && search !== '?') path += search.charAt(0) === '?' ? search : "?" + search;
6096
- if (hash && hash !== '#') path += hash.charAt(0) === '#' ? hash : "#" + hash;
6097
- return path;
6098
- }
6099
 
6100
- function createLocation(path, state, key, currentLocation) {
6101
- var location;
6102
 
6103
- if (typeof path === 'string') {
6104
- // Two-arg form: push(path, state)
6105
- location = parsePath(path);
6106
- location.state = state;
6107
- } else {
6108
- // One-arg form: push(location)
6109
- location = Object(esm_extends["a" /* default */])({}, path);
6110
- if (location.pathname === undefined) location.pathname = '';
6111
 
6112
- if (location.search) {
6113
- if (location.search.charAt(0) !== '?') location.search = '?' + location.search;
6114
- } else {
6115
- location.search = '';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6116
  }
6117
 
6118
- if (location.hash) {
6119
- if (location.hash.charAt(0) !== '#') location.hash = '#' + location.hash;
6120
- } else {
6121
- location.hash = '';
6122
  }
6123
 
6124
- if (state !== undefined && location.state === undefined) location.state = state;
6125
  }
6126
 
6127
- try {
6128
- location.pathname = decodeURI(location.pathname);
6129
- } catch (e) {
6130
- if (e instanceof URIError) {
6131
- throw new URIError('Pathname "' + location.pathname + '" could not be decoded. ' + 'This is likely caused by an invalid percent-encoding.');
6132
- } else {
6133
- throw e;
6134
- }
6135
  }
6136
 
6137
- if (key) location.key = key;
 
 
6138
 
6139
- if (currentLocation) {
6140
- // Resolve incomplete/relative pathname relative to current location.
6141
- if (!location.pathname) {
6142
- location.pathname = currentLocation.pathname;
6143
- } else if (location.pathname.charAt(0) !== '/') {
6144
- location.pathname = resolve_pathname(location.pathname, currentLocation.pathname);
6145
- }
6146
- } else {
6147
- // When there is no prior location and pathname is empty, set it to /
6148
- if (!location.pathname) {
6149
- location.pathname = '/';
6150
- }
6151
  }
6152
 
6153
- return location;
6154
- }
6155
- function locationsAreEqual(a, b) {
6156
- return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash && a.key === b.key && value_equal(a.state, b.state);
6157
- }
6158
-
6159
- function createTransitionManager() {
6160
- var prompt = null;
6161
 
6162
- function setPrompt(nextPrompt) {
6163
- false ? undefined : void 0;
6164
- prompt = nextPrompt;
6165
- return function () {
6166
- if (prompt === nextPrompt) prompt = null;
6167
- };
6168
  }
6169
 
6170
- function confirmTransitionTo(location, action, getUserConfirmation, callback) {
6171
- // TODO: If another transition starts while we're still confirming
6172
- // the previous one, we may end up in a weird state. Figure out the
6173
- // best way to handle this.
6174
- if (prompt != null) {
6175
- var result = typeof prompt === 'function' ? prompt(location, action) : prompt;
6176
 
6177
- if (typeof result === 'string') {
6178
- if (typeof getUserConfirmation === 'function') {
6179
- getUserConfirmation(result, callback);
6180
- } else {
6181
- false ? undefined : void 0;
6182
- callback(true);
6183
- }
6184
- } else {
6185
- // Return false from a transition hook to cancel the transition.
6186
- callback(result !== false);
6187
- }
6188
- } else {
6189
- callback(true);
6190
- }
6191
  }
6192
 
6193
- var listeners = [];
 
 
6194
 
6195
- function appendListener(fn) {
6196
- var isActive = true;
 
6197
 
6198
- function listener() {
6199
- if (isActive) fn.apply(void 0, arguments);
6200
- }
 
6201
 
6202
- listeners.push(listener);
6203
- return function () {
6204
- isActive = false;
6205
- listeners = listeners.filter(function (item) {
6206
- return item !== listener;
6207
- });
6208
- };
6209
  }
6210
 
6211
- function notifyListeners() {
6212
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
6213
- args[_key] = arguments[_key];
6214
- }
6215
 
6216
- listeners.forEach(function (listener) {
6217
- return listener.apply(void 0, args);
6218
- });
 
 
 
 
 
 
 
 
 
 
 
6219
  }
6220
 
6221
- return {
6222
- setPrompt: setPrompt,
6223
- confirmTransitionTo: confirmTransitionTo,
6224
- appendListener: appendListener,
6225
- notifyListeners: notifyListeners
6226
- };
6227
- }
6228
 
6229
- var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
6230
- function getConfirmation(message, callback) {
6231
- callback(window.confirm(message)); // eslint-disable-line no-alert
6232
  }
6233
  /**
6234
- * Returns true if the HTML5 history API is supported. Taken from Modernizr.
6235
  *
6236
- * https://github.com/Modernizr/Modernizr/blob/master/LICENSE
6237
- * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js
6238
- * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586
 
6239
  */
6240
 
6241
- function supportsHistory() {
6242
- var ua = window.navigator.userAgent;
6243
- if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && ua.indexOf('Mobile Safari') !== -1 && ua.indexOf('Chrome') === -1 && ua.indexOf('Windows Phone') === -1) return false;
6244
- return window.history && 'pushState' in window.history;
6245
  }
6246
  /**
6247
- * Returns true if browser fires popstate on hash change.
6248
- * IE10 and IE11 do not.
6249
- */
6250
-
6251
- function supportsPopStateOnHashChange() {
6252
- return window.navigator.userAgent.indexOf('Trident') === -1;
6253
- }
6254
- /**
6255
- * Returns false if using go(n) with hash history causes a full page reload.
6256
  */
6257
 
6258
- function supportsGoWithoutReloadUsingHash() {
6259
- return window.navigator.userAgent.indexOf('Firefox') === -1;
6260
  }
6261
  /**
6262
- * Returns true if a given popstate event is an extraneous WebKit event.
6263
- * Accounts for the fact that Chrome on iOS fires real popstate events
6264
- * containing undefined state when pressing the back button.
 
 
6265
  */
6266
 
6267
- function isExtraneousPopstateEvent(event) {
6268
- return event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1;
6269
- }
6270
-
6271
- var PopStateEvent = 'popstate';
6272
- var HashChangeEvent = 'hashchange';
6273
-
6274
- function getHistoryState() {
6275
- try {
6276
- return window.history.state || {};
6277
- } catch (e) {
6278
- // IE 11 sometimes throws when accessing window.history.state
6279
- // See https://github.com/ReactTraining/history/pull/289
6280
- return {};
6281
  }
6282
- }
6283
- /**
6284
- * Creates a history object that uses the HTML5 history API including
6285
- * pushState, replaceState, and the popstate event.
6286
- */
6287
 
 
 
 
6288
 
6289
- function createBrowserHistory(props) {
6290
- if (props === void 0) {
6291
- props = {};
 
 
 
6292
  }
6293
 
6294
- !canUseDOM ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
6295
- var globalHistory = window.history;
6296
- var canUseHistory = supportsHistory();
6297
- var needsHashChangeListener = !supportsPopStateOnHashChange();
6298
- var _props = props,
6299
- _props$forceRefresh = _props.forceRefresh,
6300
- forceRefresh = _props$forceRefresh === void 0 ? false : _props$forceRefresh,
6301
- _props$getUserConfirm = _props.getUserConfirmation,
6302
- getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,
6303
- _props$keyLength = _props.keyLength,
6304
- keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength;
6305
- var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';
6306
-
6307
- function getDOMLocation(historyState) {
6308
- var _ref = historyState || {},
6309
- key = _ref.key,
6310
- state = _ref.state;
6311
 
6312
- var _window$location = window.location,
6313
- pathname = _window$location.pathname,
6314
- search = _window$location.search,
6315
- hash = _window$location.hash;
6316
- var path = pathname + search + hash;
6317
- false ? undefined : void 0;
6318
- if (basename) path = stripBasename(path, basename);
6319
- return createLocation(path, state, key);
6320
- }
6321
 
6322
- function createKey() {
6323
- return Math.random().toString(36).substr(2, keyLength);
 
 
6324
  }
6325
 
6326
- var transitionManager = createTransitionManager();
 
 
 
 
 
 
 
 
6327
 
6328
- function setState(nextState) {
6329
- Object(esm_extends["a" /* default */])(history, nextState);
 
6330
 
6331
- history.length = globalHistory.length;
6332
- transitionManager.notifyListeners(history.location, history.action);
6333
  }
6334
 
6335
- function handlePopState(event) {
6336
- // Ignore extraneous popstate events in WebKit.
6337
- if (isExtraneousPopstateEvent(event)) return;
6338
- handlePop(getDOMLocation(event.state));
6339
- }
 
 
 
6340
 
6341
- function handleHashChange() {
6342
- handlePop(getDOMLocation(getHistoryState()));
 
6343
  }
6344
 
6345
- var forceNextPop = false;
 
6346
 
6347
- function handlePop(location) {
6348
- if (forceNextPop) {
6349
- forceNextPop = false;
6350
- setState();
6351
  } else {
6352
- var action = 'POP';
6353
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
6354
- if (ok) {
6355
- setState({
6356
- action: action,
6357
- location: location
6358
- });
6359
- } else {
6360
- revertPop(location);
6361
- }
6362
- });
6363
  }
6364
- }
6365
-
6366
- function revertPop(fromLocation) {
6367
- var toLocation = history.location; // TODO: We could probably make this more reliable by
6368
- // keeping a list of keys we've seen in sessionStorage.
6369
- // Instead, we just default to 0 for keys we don't know.
6370
-
6371
- var toIndex = allKeys.indexOf(toLocation.key);
6372
- if (toIndex === -1) toIndex = 0;
6373
- var fromIndex = allKeys.indexOf(fromLocation.key);
6374
- if (fromIndex === -1) fromIndex = 0;
6375
- var delta = toIndex - fromIndex;
6376
 
6377
- if (delta) {
6378
- forceNextPop = true;
6379
- go(delta);
6380
- }
6381
  }
6382
 
6383
- var initialLocation = getDOMLocation(getHistoryState());
6384
- var allKeys = [initialLocation.key]; // Public interface
6385
 
6386
- function createHref(location) {
6387
- return basename + createPath(location);
6388
- }
 
 
6389
 
6390
- function push(path, state) {
6391
- false ? undefined : void 0;
6392
- var action = 'PUSH';
6393
- var location = createLocation(path, state, createKey(), history.location);
6394
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
6395
- if (!ok) return;
6396
- var href = createHref(location);
6397
- var key = location.key,
6398
- state = location.state;
6399
 
6400
- if (canUseHistory) {
6401
- globalHistory.pushState({
6402
- key: key,
6403
- state: state
6404
- }, null, href);
6405
 
6406
- if (forceRefresh) {
6407
- window.location.href = href;
6408
- } else {
6409
- var prevIndex = allKeys.indexOf(history.location.key);
6410
- var nextKeys = allKeys.slice(0, prevIndex + 1);
6411
- nextKeys.push(location.key);
6412
- allKeys = nextKeys;
6413
- setState({
6414
- action: action,
6415
- location: location
6416
- });
6417
- }
6418
- } else {
6419
- false ? undefined : void 0;
6420
- window.location.href = href;
6421
- }
6422
- });
6423
  }
6424
 
6425
- function replace(path, state) {
6426
- false ? undefined : void 0;
6427
- var action = 'REPLACE';
6428
- var location = createLocation(path, state, createKey(), history.location);
6429
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
6430
- if (!ok) return;
6431
- var href = createHref(location);
6432
- var key = location.key,
6433
- state = location.state;
6434
-
6435
- if (canUseHistory) {
6436
- globalHistory.replaceState({
6437
- key: key,
6438
- state: state
6439
- }, null, href);
 
 
 
 
 
 
6440
 
6441
- if (forceRefresh) {
6442
- window.location.replace(href);
6443
- } else {
6444
- var prevIndex = allKeys.indexOf(history.location.key);
6445
- if (prevIndex !== -1) allKeys[prevIndex] = location.key;
6446
- setState({
6447
- action: action,
6448
- location: location
6449
- });
6450
- }
6451
- } else {
6452
- false ? undefined : void 0;
6453
- window.location.replace(href);
6454
- }
6455
- });
6456
  }
6457
 
6458
- function go(n) {
6459
- globalHistory.go(n);
6460
  }
6461
 
6462
- function goBack() {
6463
- go(-1);
6464
- }
6465
 
6466
- function goForward() {
6467
- go(1);
6468
  }
6469
 
6470
- var listenerCount = 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6471
 
6472
- function checkDOMListeners(delta) {
6473
- listenerCount += delta;
6474
 
6475
- if (listenerCount === 1 && delta === 1) {
6476
- window.addEventListener(PopStateEvent, handlePopState);
6477
- if (needsHashChangeListener) window.addEventListener(HashChangeEvent, handleHashChange);
6478
- } else if (listenerCount === 0) {
6479
- window.removeEventListener(PopStateEvent, handlePopState);
6480
- if (needsHashChangeListener) window.removeEventListener(HashChangeEvent, handleHashChange);
6481
- }
6482
- }
6483
 
6484
- var isBlocked = false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6485
 
6486
- function block(prompt) {
6487
- if (prompt === void 0) {
6488
- prompt = false;
6489
- }
6490
 
6491
- var unblock = transitionManager.setPrompt(prompt);
 
6492
 
6493
- if (!isBlocked) {
6494
- checkDOMListeners(1);
6495
- isBlocked = true;
6496
- }
6497
 
6498
- return function () {
6499
- if (isBlocked) {
6500
- isBlocked = false;
6501
- checkDOMListeners(-1);
6502
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6503
 
6504
- return unblock();
6505
- };
6506
  }
6507
 
6508
- function listen(listener) {
6509
- var unlisten = transitionManager.appendListener(listener);
6510
- checkDOMListeners(1);
6511
- return function () {
6512
- checkDOMListeners(-1);
6513
- unlisten();
6514
- };
6515
- }
6516
 
6517
- var history = {
6518
- length: globalHistory.length,
6519
- action: 'POP',
6520
- location: initialLocation,
6521
- createHref: createHref,
6522
- push: push,
6523
- replace: replace,
6524
- go: go,
6525
- goBack: goBack,
6526
- goForward: goForward,
6527
- block: block,
6528
- listen: listen
6529
- };
6530
- return history;
6531
  }
 
 
 
 
 
 
 
 
 
 
6532
 
6533
- var HashChangeEvent$1 = 'hashchange';
6534
- var HashPathCoders = {
6535
- hashbang: {
6536
- encodePath: function encodePath(path) {
6537
- return path.charAt(0) === '!' ? path : '!/' + stripLeadingSlash(path);
6538
- },
6539
- decodePath: function decodePath(path) {
6540
- return path.charAt(0) === '!' ? path.substr(1) : path;
6541
- }
6542
- },
6543
- noslash: {
6544
- encodePath: stripLeadingSlash,
6545
- decodePath: addLeadingSlash
6546
- },
6547
- slash: {
6548
- encodePath: addLeadingSlash,
6549
- decodePath: addLeadingSlash
6550
- }
6551
- };
6552
-
6553
- function stripHash(url) {
6554
- var hashIndex = url.indexOf('#');
6555
- return hashIndex === -1 ? url : url.slice(0, hashIndex);
6556
  }
 
 
 
 
 
 
 
 
6557
 
6558
- function getHashPath() {
6559
- // We can't use window.location.hash here because it's not
6560
- // consistent across browsers - Firefox will pre-decode it!
6561
- var href = window.location.href;
6562
- var hashIndex = href.indexOf('#');
6563
- return hashIndex === -1 ? '' : href.substring(hashIndex + 1);
6564
  }
 
 
 
 
 
 
 
 
 
 
 
6565
 
6566
- function pushHashPath(path) {
6567
- window.location.hash = path;
 
 
6568
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
6569
 
6570
- function replaceHashPath(path) {
6571
- window.location.replace(stripHash(window.location.href) + '#' + path);
6572
- }
 
6573
 
6574
- function createHashHistory(props) {
6575
- if (props === void 0) {
6576
- props = {};
 
 
 
 
 
 
 
 
 
 
 
6577
  }
 
 
 
 
 
 
 
 
 
 
6578
 
6579
- !canUseDOM ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
6580
- var globalHistory = window.history;
6581
- var canGoWithoutReload = supportsGoWithoutReloadUsingHash();
6582
- var _props = props,
6583
- _props$getUserConfirm = _props.getUserConfirmation,
6584
- getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,
6585
- _props$hashType = _props.hashType,
6586
- hashType = _props$hashType === void 0 ? 'slash' : _props$hashType;
6587
- var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';
6588
- var _HashPathCoders$hashT = HashPathCoders[hashType],
6589
- encodePath = _HashPathCoders$hashT.encodePath,
6590
- decodePath = _HashPathCoders$hashT.decodePath;
6591
 
6592
- function getDOMLocation() {
6593
- var path = decodePath(getHashPath());
6594
- false ? undefined : void 0;
6595
- if (basename) path = stripBasename(path, basename);
6596
- return createLocation(path);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6597
  }
6598
 
6599
- var transitionManager = createTransitionManager();
 
 
6600
 
6601
- function setState(nextState) {
6602
- Object(esm_extends["a" /* default */])(history, nextState);
 
 
6603
 
6604
- history.length = globalHistory.length;
6605
- transitionManager.notifyListeners(history.location, history.action);
6606
  }
6607
 
6608
- var forceNextPop = false;
6609
- var ignorePath = null;
 
 
6610
 
6611
- function locationsAreEqual$$1(a, b) {
6612
- return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash;
6613
  }
6614
 
6615
- function handleHashChange() {
6616
- var path = getHashPath();
6617
- var encodedPath = encodePath(path);
 
 
 
 
 
 
 
 
6618
 
6619
- if (path !== encodedPath) {
6620
- // Ensure we always have a properly-encoded hash.
6621
- replaceHashPath(encodedPath);
6622
- } else {
6623
- var location = getDOMLocation();
6624
- var prevLocation = history.location;
6625
- if (!forceNextPop && locationsAreEqual$$1(prevLocation, location)) return; // A hashchange doesn't always == location change.
6626
 
6627
- if (ignorePath === createPath(location)) return; // Ignore this change; we already setState in push/replace.
6628
 
6629
- ignorePath = null;
6630
- handlePop(location);
 
 
 
 
 
6631
  }
6632
- }
6633
 
6634
- function handlePop(location) {
6635
- if (forceNextPop) {
6636
- forceNextPop = false;
6637
- setState();
6638
- } else {
6639
- var action = 'POP';
6640
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
6641
- if (ok) {
6642
- setState({
6643
- action: action,
6644
- location: location
6645
- });
6646
- } else {
6647
- revertPop(location);
6648
- }
6649
- });
 
 
 
 
 
 
 
6650
  }
6651
  }
6652
 
6653
- function revertPop(fromLocation) {
6654
- var toLocation = history.location; // TODO: We could probably make this more reliable by
6655
- // keeping a list of paths we've seen in sessionStorage.
6656
- // Instead, we just default to 0 for paths we don't know.
6657
 
6658
- var toIndex = allPaths.lastIndexOf(createPath(toLocation));
6659
- if (toIndex === -1) toIndex = 0;
6660
- var fromIndex = allPaths.lastIndexOf(createPath(fromLocation));
6661
- if (fromIndex === -1) fromIndex = 0;
6662
- var delta = toIndex - fromIndex;
6663
 
6664
- if (delta) {
6665
- forceNextPop = true;
6666
- go(delta);
6667
- }
6668
- } // Ensure the hash is encoded properly before doing anything else.
 
 
 
 
 
 
 
 
6669
 
 
 
 
 
 
 
 
 
 
 
6670
 
6671
- var path = getHashPath();
6672
- var encodedPath = encodePath(path);
6673
- if (path !== encodedPath) replaceHashPath(encodedPath);
6674
- var initialLocation = getDOMLocation();
6675
- var allPaths = [createPath(initialLocation)]; // Public interface
 
 
 
 
 
 
6676
 
6677
- function createHref(location) {
6678
- var baseTag = document.querySelector('base');
6679
- var href = '';
 
 
 
 
 
 
 
6680
 
6681
- if (baseTag && baseTag.getAttribute('href')) {
6682
- href = stripHash(window.location.href);
6683
- }
6684
 
6685
- return href + '#' + encodePath(basename + createPath(location));
 
6686
  }
6687
 
6688
- function push(path, state) {
6689
- false ? undefined : void 0;
6690
- var action = 'PUSH';
6691
- var location = createLocation(path, undefined, undefined, history.location);
6692
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
6693
- if (!ok) return;
6694
- var path = createPath(location);
6695
- var encodedPath = encodePath(basename + path);
6696
- var hashChanged = getHashPath() !== encodedPath;
 
6697
 
6698
- if (hashChanged) {
6699
- // We cannot tell if a hashchange was caused by a PUSH, so we'd
6700
- // rather setState here and ignore the hashchange. The caveat here
6701
- // is that other hash histories in the page will consider it a POP.
6702
- ignorePath = path;
6703
- pushHashPath(encodedPath);
6704
- var prevIndex = allPaths.lastIndexOf(createPath(history.location));
6705
- var nextPaths = allPaths.slice(0, prevIndex + 1);
6706
- nextPaths.push(path);
6707
- allPaths = nextPaths;
6708
- setState({
6709
- action: action,
6710
- location: location
6711
- });
6712
- } else {
6713
- false ? undefined : void 0;
6714
- setState();
6715
- }
6716
- });
6717
  }
6718
 
6719
- function replace(path, state) {
6720
- false ? undefined : void 0;
6721
- var action = 'REPLACE';
6722
- var location = createLocation(path, undefined, undefined, history.location);
6723
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
6724
- if (!ok) return;
6725
- var path = createPath(location);
6726
- var encodedPath = encodePath(basename + path);
6727
- var hashChanged = getHashPath() !== encodedPath;
6728
 
6729
- if (hashChanged) {
6730
- // We cannot tell if a hashchange was caused by a REPLACE, so we'd
6731
- // rather setState here and ignore the hashchange. The caveat here
6732
- // is that other hash histories in the page will consider it a POP.
6733
- ignorePath = path;
6734
- replaceHashPath(encodedPath);
6735
- }
 
 
 
 
6736
 
6737
- var prevIndex = allPaths.indexOf(createPath(history.location));
6738
- if (prevIndex !== -1) allPaths[prevIndex] = path;
6739
- setState({
6740
- action: action,
6741
- location: location
6742
- });
6743
- });
6744
- }
 
 
 
 
 
6745
 
6746
- function go(n) {
6747
- false ? undefined : void 0;
6748
- globalHistory.go(n);
6749
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6750
 
6751
- function goBack() {
6752
- go(-1);
6753
- }
 
6754
 
6755
- function goForward() {
6756
- go(1);
6757
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6758
 
6759
- var listenerCount = 0;
 
 
 
 
 
 
 
 
6760
 
6761
- function checkDOMListeners(delta) {
6762
- listenerCount += delta;
 
 
 
6763
 
6764
- if (listenerCount === 1 && delta === 1) {
6765
- window.addEventListener(HashChangeEvent$1, handleHashChange);
6766
- } else if (listenerCount === 0) {
6767
- window.removeEventListener(HashChangeEvent$1, handleHashChange);
6768
- }
6769
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6770
 
6771
- var isBlocked = false;
 
 
 
 
 
 
6772
 
6773
- function block(prompt) {
6774
- if (prompt === void 0) {
6775
- prompt = false;
6776
- }
6777
 
6778
- var unblock = transitionManager.setPrompt(prompt);
 
 
6779
 
6780
- if (!isBlocked) {
6781
- checkDOMListeners(1);
6782
- isBlocked = true;
6783
  }
 
 
 
 
 
 
 
 
 
 
6784
 
6785
- return function () {
6786
- if (isBlocked) {
6787
- isBlocked = false;
6788
- checkDOMListeners(-1);
6789
- }
6790
 
6791
- return unblock();
6792
- };
 
6793
  }
6794
 
6795
- function listen(listener) {
6796
- var unlisten = transitionManager.appendListener(listener);
6797
- checkDOMListeners(1);
6798
- return function () {
6799
- checkDOMListeners(-1);
6800
- unlisten();
6801
- };
6802
- }
6803
 
6804
- var history = {
6805
- length: globalHistory.length,
6806
- action: 'POP',
6807
- location: initialLocation,
6808
- createHref: createHref,
6809
- push: push,
6810
- replace: replace,
6811
- go: go,
6812
- goBack: goBack,
6813
- goForward: goForward,
6814
- block: block,
6815
- listen: listen
6816
- };
6817
- return history;
6818
- }
6819
 
6820
- function clamp(n, lowerBound, upperBound) {
6821
- return Math.min(Math.max(n, lowerBound), upperBound);
 
 
 
6822
  }
6823
  /**
6824
- * Creates a history object that stores locations in memory.
 
 
 
 
 
 
6825
  */
6826
 
 
 
 
 
 
 
 
6827
 
6828
- function createMemoryHistory(props) {
6829
- if (props === void 0) {
6830
- props = {};
6831
- }
6832
 
6833
- var _props = props,
6834
- getUserConfirmation = _props.getUserConfirmation,
6835
- _props$initialEntries = _props.initialEntries,
6836
- initialEntries = _props$initialEntries === void 0 ? ['/'] : _props$initialEntries,
6837
- _props$initialIndex = _props.initialIndex,
6838
- initialIndex = _props$initialIndex === void 0 ? 0 : _props$initialIndex,
6839
- _props$keyLength = _props.keyLength,
6840
- keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength;
6841
- var transitionManager = createTransitionManager();
6842
 
6843
- function setState(nextState) {
6844
- Object(esm_extends["a" /* default */])(history, nextState);
 
 
 
 
 
 
 
 
 
 
6845
 
6846
- history.length = history.entries.length;
6847
- transitionManager.notifyListeners(history.location, history.action);
6848
- }
6849
 
6850
- function createKey() {
6851
- return Math.random().toString(36).substr(2, keyLength);
6852
- }
6853
 
6854
- var index = clamp(initialIndex, 0, initialEntries.length - 1);
6855
- var entries = initialEntries.map(function (entry) {
6856
- return typeof entry === 'string' ? createLocation(entry, undefined, createKey()) : createLocation(entry, undefined, entry.key || createKey());
6857
- }); // Public interface
6858
 
6859
- var createHref = createPath;
6860
 
6861
- function push(path, state) {
6862
- false ? undefined : void 0;
6863
- var action = 'PUSH';
6864
- var location = createLocation(path, state, createKey(), history.location);
6865
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
6866
- if (!ok) return;
6867
- var prevIndex = history.index;
6868
- var nextIndex = prevIndex + 1;
6869
- var nextEntries = history.entries.slice(0);
6870
 
6871
- if (nextEntries.length > nextIndex) {
6872
- nextEntries.splice(nextIndex, nextEntries.length - nextIndex, location);
6873
- } else {
6874
- nextEntries.push(location);
6875
- }
6876
 
6877
- setState({
6878
- action: action,
6879
- location: location,
6880
- index: nextIndex,
6881
- entries: nextEntries
6882
- });
6883
- });
6884
- }
6885
 
6886
- function replace(path, state) {
6887
- false ? undefined : void 0;
6888
- var action = 'REPLACE';
6889
- var location = createLocation(path, state, createKey(), history.location);
6890
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
6891
- if (!ok) return;
6892
- history.entries[history.index] = location;
6893
- setState({
6894
- action: action,
6895
- location: location
6896
- });
6897
- });
6898
- }
6899
 
6900
- function go(n) {
6901
- var nextIndex = clamp(history.index + n, 0, history.entries.length - 1);
6902
- var action = 'POP';
6903
- var location = history.entries[nextIndex];
6904
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
6905
- if (ok) {
6906
- setState({
6907
- action: action,
6908
- location: location,
6909
- index: nextIndex
6910
- });
6911
- } else {
6912
- // Mimic the behavior of DOM histories by
6913
- // causing a render after a cancelled POP.
6914
- setState();
6915
- }
6916
- });
6917
- }
6918
 
6919
- function goBack() {
6920
- go(-1);
6921
- }
6922
 
6923
- function goForward() {
6924
- go(1);
6925
- }
6926
 
6927
- function canGo(n) {
6928
- var nextIndex = history.index + n;
6929
- return nextIndex >= 0 && nextIndex < history.entries.length;
6930
- }
6931
 
6932
- function block(prompt) {
6933
- if (prompt === void 0) {
6934
- prompt = false;
6935
- }
6936
 
6937
- return transitionManager.setPrompt(prompt);
6938
- }
6939
 
6940
- function listen(listener) {
6941
- return transitionManager.appendListener(listener);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6942
  }
6943
 
6944
- var history = {
6945
- length: entries.length,
6946
- action: 'POP',
6947
- location: entries[index],
6948
- index: index,
6949
- entries: entries,
6950
- createHref: createHref,
6951
- push: push,
6952
- replace: replace,
6953
- go: go,
6954
- goBack: goBack,
6955
- goForward: goForward,
6956
- canGo: canGo,
6957
- block: block,
6958
- listen: listen
6959
- };
6960
- return history;
6961
- }
6962
 
 
 
 
 
 
 
 
 
6963
 
 
 
 
 
 
 
 
 
6964
 
6965
 
6966
- /***/ }),
6967
- /* 203 */
6968
- /***/ (function(module, exports, __webpack_require__) {
 
 
6969
 
6970
- "use strict";
6971
 
6972
- var fixRegExpWellKnownSymbolLogic = __webpack_require__(111);
6973
- var anObject = __webpack_require__(9);
6974
- var toLength = __webpack_require__(34);
6975
- var requireObjectCoercible = __webpack_require__(32);
6976
- var advanceStringIndex = __webpack_require__(122);
6977
- var regExpExec = __webpack_require__(112);
6978
-
6979
- // @@match logic
6980
- fixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {
6981
- return [
6982
- // `String.prototype.match` method
6983
- // https://tc39.es/ecma262/#sec-string.prototype.match
6984
- function match(regexp) {
6985
- var O = requireObjectCoercible(this);
6986
- var matcher = regexp == undefined ? undefined : regexp[MATCH];
6987
- return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
6988
- },
6989
- // `RegExp.prototype[@@match]` method
6990
- // https://tc39.es/ecma262/#sec-regexp.prototype-@@match
6991
- function (regexp) {
6992
- var res = maybeCallNative(nativeMatch, regexp, this);
6993
- if (res.done) return res.value;
6994
-
6995
- var rx = anObject(regexp);
6996
- var S = String(this);
6997
-
6998
- if (!rx.global) return regExpExec(rx, S);
6999
-
7000
- var fullUnicode = rx.unicode;
7001
- rx.lastIndex = 0;
7002
- var A = [];
7003
- var n = 0;
7004
- var result;
7005
- while ((result = regExpExec(rx, S)) !== null) {
7006
- var matchStr = String(result[0]);
7007
- A[n] = matchStr;
7008
- if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
7009
- n++;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7010
  }
7011
- return n === 0 ? null : A;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7012
  }
7013
- ];
7014
- });
7015
 
 
 
 
 
 
7016
 
7017
  /***/ }),
7018
- /* 204 */
 
7019
  /***/ (function(module, exports) {
7020
 
7021
- function _setPrototypeOf(o, p) {
7022
- module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
7023
- o.__proto__ = p;
7024
- return o;
7025
- };
7026
 
7027
- return _setPrototypeOf(o, p);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7028
  }
7029
 
7030
- module.exports = _setPrototypeOf;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7031
 
7032
- /***/ }),
7033
- /* 205 */
7034
- /***/ (function(module, exports, __webpack_require__) {
7035
 
7036
- var hiddenKeys = __webpack_require__(36);
7037
- var isObject = __webpack_require__(10);
7038
- var has = __webpack_require__(11);
7039
- var defineProperty = __webpack_require__(17).f;
7040
- var uid = __webpack_require__(55);
7041
- var FREEZING = __webpack_require__(253);
 
 
 
 
 
7042
 
7043
- var METADATA = uid('meta');
7044
- var id = 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7045
 
7046
- var isExtensible = Object.isExtensible || function () {
7047
- return true;
7048
- };
 
 
7049
 
7050
- var setMetadata = function (it) {
7051
- defineProperty(it, METADATA, { value: {
7052
- objectID: 'O' + ++id, // object ID
7053
- weakData: {} // weak collections IDs
7054
- } });
7055
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7056
 
7057
- var fastKey = function (it, create) {
7058
- // return a primitive with prefix
7059
- if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
7060
- if (!has(it, METADATA)) {
7061
- // can't set metadata to uncaught frozen object
7062
- if (!isExtensible(it)) return 'F';
7063
- // not necessary to add metadata
7064
- if (!create) return 'E';
7065
- // add missing metadata
7066
- setMetadata(it);
7067
- // return object ID
7068
- } return it[METADATA].objectID;
 
 
 
 
 
 
 
 
 
7069
  };
7070
 
7071
- var getWeakData = function (it, create) {
7072
- if (!has(it, METADATA)) {
7073
- // can't set metadata to uncaught frozen object
7074
- if (!isExtensible(it)) return true;
7075
- // not necessary to add metadata
7076
- if (!create) return false;
7077
- // add missing metadata
7078
- setMetadata(it);
7079
- // return the store of weak collections IDs
7080
- } return it[METADATA].weakData;
7081
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7082
 
7083
- // add metadata on freeze-family methods calling
7084
- var onFreeze = function (it) {
7085
- if (FREEZING && meta.REQUIRED && isExtensible(it) && !has(it, METADATA)) setMetadata(it);
7086
- return it;
7087
- };
7088
 
7089
- var meta = module.exports = {
7090
- REQUIRED: false,
7091
- fastKey: fastKey,
7092
- getWeakData: getWeakData,
7093
- onFreeze: onFreeze
7094
- };
7095
 
7096
- hiddenKeys[METADATA] = true;
 
 
 
 
 
 
 
 
7097
 
7098
 
7099
- /***/ }),
7100
- /* 206 */,
7101
- /* 207 */
7102
- /***/ (function(module, exports, __webpack_require__) {
7103
 
7104
- var isRegExp = __webpack_require__(144);
 
7105
 
7106
- module.exports = function (it) {
7107
- if (isRegExp(it)) {
7108
- throw TypeError("The method doesn't accept regular expressions");
7109
- } return it;
7110
- };
 
 
 
 
 
 
 
7111
 
 
 
 
 
 
7112
 
7113
- /***/ }),
7114
- /* 208 */
7115
- /***/ (function(module, exports, __webpack_require__) {
7116
 
7117
- var wellKnownSymbol = __webpack_require__(8);
 
7118
 
7119
- var MATCH = wellKnownSymbol('match');
 
 
 
 
 
 
 
 
 
 
7120
 
7121
- module.exports = function (METHOD_NAME) {
7122
- var regexp = /./;
7123
- try {
7124
- '/./'[METHOD_NAME](regexp);
7125
- } catch (error1) {
7126
- try {
7127
- regexp[MATCH] = false;
7128
- return '/./'[METHOD_NAME](regexp);
7129
- } catch (error2) { /* empty */ }
7130
- } return false;
7131
- };
7132
 
 
 
7133
 
7134
- /***/ }),
7135
- /* 209 */
7136
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
7137
 
7138
- var DESCRIPTORS = __webpack_require__(13);
7139
- var global = __webpack_require__(3);
7140
- var isForced = __webpack_require__(74);
7141
- var inheritIfRequired = __webpack_require__(156);
7142
- var defineProperty = __webpack_require__(17).f;
7143
- var getOwnPropertyNames = __webpack_require__(56).f;
7144
- var isRegExp = __webpack_require__(144);
7145
- var getFlags = __webpack_require__(114);
7146
- var stickyHelpers = __webpack_require__(137);
7147
- var redefine = __webpack_require__(27);
7148
- var fails = __webpack_require__(6);
7149
- var setInternalState = __webpack_require__(45).set;
7150
- var setSpecies = __webpack_require__(153);
7151
- var wellKnownSymbol = __webpack_require__(8);
7152
-
7153
- var MATCH = wellKnownSymbol('match');
7154
- var NativeRegExp = global.RegExp;
7155
- var RegExpPrototype = NativeRegExp.prototype;
7156
- var re1 = /a/g;
7157
- var re2 = /a/g;
7158
-
7159
- // "new" should create a new object, old webkit bug
7160
- var CORRECT_NEW = new NativeRegExp(re1) !== re1;
7161
-
7162
- var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;
7163
-
7164
- var FORCED = DESCRIPTORS && isForced('RegExp', (!CORRECT_NEW || UNSUPPORTED_Y || fails(function () {
7165
- re2[MATCH] = false;
7166
- // RegExp constructor can alter flags and IsRegExp works correct with @@match
7167
- return NativeRegExp(re1) != re1 || NativeRegExp(re2) == re2 || NativeRegExp(re1, 'i') != '/a/i';
7168
- })));
7169
-
7170
- // `RegExp` constructor
7171
- // https://tc39.es/ecma262/#sec-regexp-constructor
7172
- if (FORCED) {
7173
- var RegExpWrapper = function RegExp(pattern, flags) {
7174
- var thisIsRegExp = this instanceof RegExpWrapper;
7175
- var patternIsRegExp = isRegExp(pattern);
7176
- var flagsAreUndefined = flags === undefined;
7177
- var sticky;
7178
-
7179
- if (!thisIsRegExp && patternIsRegExp && pattern.constructor === RegExpWrapper && flagsAreUndefined) {
7180
- return pattern;
7181
- }
7182
-
7183
- if (CORRECT_NEW) {
7184
- if (patternIsRegExp && !flagsAreUndefined) pattern = pattern.source;
7185
- } else if (pattern instanceof RegExpWrapper) {
7186
- if (flagsAreUndefined) flags = getFlags.call(pattern);
7187
- pattern = pattern.source;
7188
- }
7189
-
7190
- if (UNSUPPORTED_Y) {
7191
- sticky = !!flags && flags.indexOf('y') > -1;
7192
- if (sticky) flags = flags.replace(/y/g, '');
7193
- }
7194
-
7195
- var result = inheritIfRequired(
7196
- CORRECT_NEW ? new NativeRegExp(pattern, flags) : NativeRegExp(pattern, flags),
7197
- thisIsRegExp ? this : RegExpPrototype,
7198
- RegExpWrapper
7199
- );
7200
 
7201
- if (UNSUPPORTED_Y && sticky) setInternalState(result, { sticky: sticky });
 
 
 
 
 
 
 
7202
 
7203
- return result;
7204
- };
7205
- var proxy = function (key) {
7206
- key in RegExpWrapper || defineProperty(RegExpWrapper, key, {
7207
- configurable: true,
7208
- get: function () { return NativeRegExp[key]; },
7209
- set: function (it) { NativeRegExp[key] = it; }
7210
- });
7211
- };
7212
- var keys = getOwnPropertyNames(NativeRegExp);
7213
- var index = 0;
7214
- while (keys.length > index) proxy(keys[index++]);
7215
- RegExpPrototype.constructor = RegExpWrapper;
7216
- RegExpWrapper.prototype = RegExpPrototype;
7217
- redefine(global, 'RegExp', RegExpWrapper);
7218
  }
7219
 
7220
- // https://tc39.es/ecma262/#sec-get-regexp-@@species
7221
- setSpecies('RegExp');
 
 
 
7222
 
 
 
 
7223
 
7224
- /***/ }),
7225
- /* 210 */
7226
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
7227
 
7228
- "use strict";
7229
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return STORE_KEY; });
7230
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return API_NAMESPACE; });
7231
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return QUEUE_OPTION_NAME; });
7232
- var STORE_KEY = 'wc/customer-effort-score';
7233
- var API_NAMESPACE = '/wc-admin';
7234
- var QUEUE_OPTION_NAME = 'woocommerce_ces_tracks_queue';
7235
 
7236
- /***/ }),
7237
- /* 211 */
7238
- /***/ (function(module, exports) {
 
 
 
 
 
 
 
 
 
 
7239
 
7240
- (function() { module.exports = window["wp"]["date"]; }());
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7241
 
7242
- /***/ }),
7243
- /* 212 */
7244
- /***/ (function(module, exports, __webpack_require__) {
 
 
7245
 
7246
- "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7247
 
7248
- var aFunction = __webpack_require__(70);
7249
- var isObject = __webpack_require__(10);
 
 
 
 
7250
 
7251
- var slice = [].slice;
7252
- var factories = {};
7253
 
7254
- var construct = function (C, argsLength, args) {
7255
- if (!(argsLength in factories)) {
7256
- for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']';
7257
- // eslint-disable-next-line no-new-func -- we have no proper alternatives, IE8- only
7258
- factories[argsLength] = Function('C,a', 'return new C(' + list.join(',') + ')');
7259
- } return factories[argsLength](C, args);
7260
  };
7261
 
7262
- // `Function.prototype.bind` method implementation
7263
- // https://tc39.es/ecma262/#sec-function.prototype.bind
7264
- module.exports = Function.bind || function bind(that /* , ...args */) {
7265
- var fn = aFunction(this);
7266
- var partArgs = slice.call(arguments, 1);
7267
- var boundFunction = function bound(/* args... */) {
7268
- var args = partArgs.concat(slice.call(arguments));
7269
- return this instanceof boundFunction ? construct(fn, args.length, args) : fn.apply(that, args);
7270
- };
7271
- if (isObject(fn.prototype)) boundFunction.prototype = fn.prototype;
7272
- return boundFunction;
7273
  };
7274
 
7275
 
7276
- /***/ }),
7277
- /* 213 */
7278
- /***/ (function(module, exports, __webpack_require__) {
 
7279
 
7280
- var fails = __webpack_require__(6);
 
 
 
 
 
 
7281
 
7282
- module.exports = !fails(function () {
7283
- function F() { /* empty */ }
7284
- F.prototype.constructor = null;
7285
- return Object.getPrototypeOf(new F()) !== F.prototype;
7286
- });
 
 
7287
 
 
 
 
7288
 
7289
- /***/ }),
7290
- /* 214 */
7291
- /***/ (function(module, exports) {
 
 
 
 
7292
 
7293
- // `SameValue` abstract operation
7294
- // https://tc39.es/ecma262/#sec-samevalue
7295
- module.exports = Object.is || function is(x, y) {
7296
- // eslint-disable-next-line no-self-compare -- NaN check
7297
- return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
7298
- };
 
 
7299
 
 
 
 
 
 
 
 
7300
 
7301
- /***/ }),
7302
- /* 215 */
7303
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
7304
 
7305
- "use strict";
7306
- /**
7307
- * Copyright (c) 2013-present, Facebook, Inc.
7308
- *
7309
- * This source code is licensed under the MIT license found in the
7310
- * LICENSE file in the root directory of this source tree.
7311
- */
7312
 
 
 
 
 
 
7313
 
 
 
 
 
 
 
 
 
 
7314
 
7315
- var ReactPropTypesSecret = __webpack_require__(216);
 
 
 
 
 
 
 
 
 
7316
 
7317
- function emptyFunction() {}
7318
- function emptyFunctionWithReset() {}
7319
- emptyFunctionWithReset.resetWarningCache = emptyFunction;
 
 
 
 
 
 
7320
 
7321
- module.exports = function() {
7322
- function shim(props, propName, componentName, location, propFullName, secret) {
7323
- if (secret === ReactPropTypesSecret) {
7324
- // It is still safe when called from React.
7325
- return;
 
 
 
 
 
 
7326
  }
7327
- var err = new Error(
7328
- 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
7329
- 'Use PropTypes.checkPropTypes() to call them. ' +
7330
- 'Read more at http://fb.me/use-check-prop-types'
7331
- );
7332
- err.name = 'Invariant Violation';
7333
- throw err;
7334
- };
7335
- shim.isRequired = shim;
7336
- function getShim() {
7337
- return shim;
7338
- };
7339
- // Important!
7340
- // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.
7341
- var ReactPropTypes = {
7342
- array: shim,
7343
- bool: shim,
7344
- func: shim,
7345
- number: shim,
7346
- object: shim,
7347
- string: shim,
7348
- symbol: shim,
7349
 
7350
- any: shim,
7351
- arrayOf: getShim,
7352
- element: shim,
7353
- elementType: shim,
7354
- instanceOf: getShim,
7355
- node: shim,
7356
- objectOf: getShim,
7357
- oneOf: getShim,
7358
- oneOfType: getShim,
7359
- shape: getShim,
7360
- exact: getShim,
7361
 
7362
- checkPropTypes: emptyFunctionWithReset,
7363
- resetWarningCache: emptyFunction
7364
- };
 
7365
 
7366
- ReactPropTypes.PropTypes = ReactPropTypes;
 
7367
 
7368
- return ReactPropTypes;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7369
  };
7370
 
7371
 
7372
- /***/ }),
7373
- /* 216 */
7374
- /***/ (function(module, exports, __webpack_require__) {
7375
 
7376
- "use strict";
7377
- /**
7378
- * Copyright (c) 2013-present, Facebook, Inc.
7379
- *
7380
- * This source code is licensed under the MIT license found in the
7381
- * LICENSE file in the root directory of this source tree.
7382
- */
7383
 
 
 
 
 
 
 
7384
 
 
 
 
 
 
 
7385
 
7386
- var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
7387
 
7388
- module.exports = ReactPropTypesSecret;
 
 
 
 
 
 
 
 
 
 
 
 
 
7389
 
 
7390
 
7391
- /***/ }),
7392
- /* 217 */,
7393
- /* 218 */,
7394
- /* 219 */,
7395
- /* 220 */,
7396
- /* 221 */
7397
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7398
 
7399
- "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7400
 
7401
- var DESCRIPTORS = __webpack_require__(13);
7402
- var fails = __webpack_require__(6);
7403
- var objectKeys = __webpack_require__(54);
7404
- var getOwnPropertySymbolsModule = __webpack_require__(79);
7405
- var propertyIsEnumerableModule = __webpack_require__(76);
7406
- var toObject = __webpack_require__(38);
7407
- var IndexedObject = __webpack_require__(71);
7408
 
7409
- var nativeAssign = Object.assign;
7410
- var defineProperty = Object.defineProperty;
 
7411
 
7412
- // `Object.assign` method
7413
- // https://tc39.es/ecma262/#sec-object.assign
7414
- module.exports = !nativeAssign || fails(function () {
7415
- // should have correct order of operations (Edge bug)
7416
- if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {
7417
- enumerable: true,
7418
- get: function () {
7419
- defineProperty(this, 'b', {
7420
- value: 3,
7421
- enumerable: false
7422
- });
 
 
7423
  }
7424
- }), { b: 2 })).b !== 1) return true;
7425
- // should work with symbols and should have deterministic property order (V8 bug)
7426
- var A = {};
7427
- var B = {};
7428
- /* global Symbol -- required for testing */
7429
- var symbol = Symbol();
7430
- var alphabet = 'abcdefghijklmnopqrst';
7431
- A[symbol] = 7;
7432
- alphabet.split('').forEach(function (chr) { B[chr] = chr; });
7433
- return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;
7434
- }) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`
7435
- var T = toObject(target);
7436
- var argumentsLength = arguments.length;
7437
- var index = 1;
7438
- var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
7439
- var propertyIsEnumerable = propertyIsEnumerableModule.f;
7440
- while (argumentsLength > index) {
7441
- var S = IndexedObject(arguments[index++]);
7442
- var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);
7443
- var length = keys.length;
7444
- var j = 0;
7445
- var key;
7446
- while (length > j) {
7447
- key = keys[j++];
7448
- if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];
7449
- }
7450
- } return T;
7451
- } : nativeAssign;
7452
 
 
 
 
 
7453
 
7454
- /***/ }),
7455
- /* 222 */,
7456
- /* 223 */,
7457
- /* 224 */
7458
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
7459
 
7460
- "use strict";
7461
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; });
7462
- function _defineProperty(obj, key, value) {
7463
- if (key in obj) {
7464
- Object.defineProperty(obj, key, {
7465
- value: value,
7466
- enumerable: true,
7467
- configurable: true,
7468
- writable: true
7469
- });
7470
- } else {
7471
- obj[key] = value;
7472
- }
7473
 
7474
- return obj;
 
 
7475
  }
7476
 
7477
- /***/ }),
7478
- /* 225 */
7479
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
7480
 
7481
- "use strict";
7482
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutProperties; });
7483
- /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(133);
 
7484
 
7485
- function _objectWithoutProperties(source, excluded) {
7486
- if (source == null) return {};
7487
- var target = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(source, excluded);
7488
- var key, i;
7489
 
7490
- if (Object.getOwnPropertySymbols) {
7491
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
 
 
 
7492
 
7493
- for (i = 0; i < sourceSymbolKeys.length; i++) {
7494
- key = sourceSymbolKeys[i];
7495
- if (excluded.indexOf(key) >= 0) continue;
7496
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
7497
- target[key] = source[key];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7498
  }
7499
- }
7500
 
7501
- return target;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7502
  }
7503
 
 
 
7504
  /***/ }),
7505
- /* 226 */,
7506
- /* 227 */
7507
  /***/ (function(module, exports, __webpack_require__) {
7508
 
7509
  "use strict";
7510
 
7511
 
7512
- var utils = __webpack_require__(200);
7513
- var formats = __webpack_require__(169);
7514
  var has = Object.prototype.hasOwnProperty;
7515
 
7516
  var arrayPrefixGenerators = {
@@ -7574,7 +7490,6 @@ var stringify = function stringify(
7574
  sort,
7575
  allowDots,
7576
  serializeDate,
7577
- format,
7578
  formatter,
7579
  encodeValuesOnly,
7580
  charset
@@ -7590,12 +7505,12 @@ var stringify = function stringify(
7590
  return serializeDate(value);
7591
  }
7592
  return value;
7593
- });
7594
  }
7595
 
7596
  if (obj === null) {
7597
  if (strictNullHandling) {
7598
- return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, 'key', format) : prefix;
7599
  }
7600
 
7601
  obj = '';
@@ -7603,8 +7518,8 @@ var stringify = function stringify(
7603
 
7604
  if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {
7605
  if (encoder) {
7606
- var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key', format);
7607
- return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value', format))];
7608
  }
7609
  return [formatter(prefix) + '=' + formatter(String(obj))];
7610
  }
@@ -7616,10 +7531,7 @@ var stringify = function stringify(
7616
  }
7617
 
7618
  var objKeys;
7619
- if (generateArrayPrefix === 'comma' && isArray(obj)) {
7620
- // we need to join elements in
7621
- objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : undefined }];
7622
- } else if (isArray(filter)) {
7623
  objKeys = filter;
7624
  } else {
7625
  var keys = Object.keys(obj);
@@ -7628,7 +7540,7 @@ var stringify = function stringify(
7628
 
7629
  for (var i = 0; i < objKeys.length; ++i) {
7630
  var key = objKeys[i];
7631
- var value = typeof key === 'object' && key.value !== undefined ? key.value : obj[key];
7632
 
7633
  if (skipNulls && value === null) {
7634
  continue;
@@ -7649,7 +7561,6 @@ var stringify = function stringify(
7649
  sort,
7650
  allowDots,
7651
  serializeDate,
7652
- format,
7653
  formatter,
7654
  encodeValuesOnly,
7655
  charset
@@ -7697,7 +7608,6 @@ var normalizeStringifyOptions = function normalizeStringifyOptions(opts) {
7697
  encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,
7698
  encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,
7699
  filter: filter,
7700
- format: format,
7701
  formatter: formatter,
7702
  serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults.serializeDate,
7703
  skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults.skipNulls,
@@ -7763,7 +7673,6 @@ module.exports = function (object, opts) {
7763
  options.sort,
7764
  options.allowDots,
7765
  options.serializeDate,
7766
- options.format,
7767
  options.formatter,
7768
  options.encodeValuesOnly,
7769
  options.charset
@@ -7788,13 +7697,14 @@ module.exports = function (object, opts) {
7788
 
7789
 
7790
  /***/ }),
7791
- /* 228 */
 
7792
  /***/ (function(module, exports, __webpack_require__) {
7793
 
7794
  "use strict";
7795
 
7796
 
7797
- var utils = __webpack_require__(200);
7798
 
7799
  var has = Object.prototype.hasOwnProperty;
7800
  var isArray = Array.isArray;
@@ -7934,7 +7844,7 @@ var parseObject = function (chain, val, options, valuesParsed) {
7934
  }
7935
  }
7936
 
7937
- leaf = obj;
7938
  }
7939
 
7940
  return leaf;
@@ -8052,197 +7962,525 @@ module.exports = function (str, opts) {
8052
 
8053
 
8054
  /***/ }),
8055
- /* 229 */
8056
- /***/ (function(module, exports, __webpack_require__) {
8057
 
8058
- "use strict";
8059
-
8060
- var $ = __webpack_require__(12);
8061
- var global = __webpack_require__(3);
8062
- var isForced = __webpack_require__(74);
8063
- var redefine = __webpack_require__(27);
8064
- var InternalMetadataModule = __webpack_require__(205);
8065
- var iterate = __webpack_require__(154);
8066
- var anInstance = __webpack_require__(136);
8067
- var isObject = __webpack_require__(10);
8068
- var fails = __webpack_require__(6);
8069
- var checkCorrectnessOfIteration = __webpack_require__(165);
8070
- var setToStringTag = __webpack_require__(90);
8071
- var inheritIfRequired = __webpack_require__(156);
8072
-
8073
- module.exports = function (CONSTRUCTOR_NAME, wrapper, common) {
8074
- var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;
8075
- var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;
8076
- var ADDER = IS_MAP ? 'set' : 'add';
8077
- var NativeConstructor = global[CONSTRUCTOR_NAME];
8078
- var NativePrototype = NativeConstructor && NativeConstructor.prototype;
8079
- var Constructor = NativeConstructor;
8080
- var exported = {};
8081
-
8082
- var fixMethod = function (KEY) {
8083
- var nativeMethod = NativePrototype[KEY];
8084
- redefine(NativePrototype, KEY,
8085
- KEY == 'add' ? function add(value) {
8086
- nativeMethod.call(this, value === 0 ? 0 : value);
8087
- return this;
8088
- } : KEY == 'delete' ? function (key) {
8089
- return IS_WEAK && !isObject(key) ? false : nativeMethod.call(this, key === 0 ? 0 : key);
8090
- } : KEY == 'get' ? function get(key) {
8091
- return IS_WEAK && !isObject(key) ? undefined : nativeMethod.call(this, key === 0 ? 0 : key);
8092
- } : KEY == 'has' ? function has(key) {
8093
- return IS_WEAK && !isObject(key) ? false : nativeMethod.call(this, key === 0 ? 0 : key);
8094
- } : function set(key, value) {
8095
- nativeMethod.call(this, key === 0 ? 0 : key, value);
8096
- return this;
8097
- }
8098
- );
8099
- };
8100
 
8101
- var REPLACE = isForced(
8102
- CONSTRUCTOR_NAME,
8103
- typeof NativeConstructor != 'function' || !(IS_WEAK || NativePrototype.forEach && !fails(function () {
8104
- new NativeConstructor().entries().next();
8105
- }))
8106
- );
8107
 
8108
- if (REPLACE) {
8109
- // create collection constructor
8110
- Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);
8111
- InternalMetadataModule.REQUIRED = true;
8112
- } else if (isForced(CONSTRUCTOR_NAME, true)) {
8113
- var instance = new Constructor();
8114
- // early implementations not supports chaining
8115
- var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;
8116
- // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false
8117
- var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });
8118
- // most early implementations doesn't supports iterables, most modern - not close it correctly
8119
- // eslint-disable-next-line no-new -- required for testing
8120
- var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });
8121
- // for early implementations -0 and +0 not the same
8122
- var BUGGY_ZERO = !IS_WEAK && fails(function () {
8123
- // V8 ~ Chromium 42- fails only with 5+ elements
8124
- var $instance = new NativeConstructor();
8125
- var index = 5;
8126
- while (index--) $instance[ADDER](index, index);
8127
- return !$instance.has(-0);
8128
- });
8129
 
8130
- if (!ACCEPT_ITERABLES) {
8131
- Constructor = wrapper(function (dummy, iterable) {
8132
- anInstance(dummy, Constructor, CONSTRUCTOR_NAME);
8133
- var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);
8134
- if (iterable != undefined) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });
8135
- return that;
8136
- });
8137
- Constructor.prototype = NativePrototype;
8138
- NativePrototype.constructor = Constructor;
8139
- }
8140
 
8141
- if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {
8142
- fixMethod('delete');
8143
- fixMethod('has');
8144
- IS_MAP && fixMethod('get');
8145
- }
8146
 
8147
- if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);
8148
 
8149
- // weak collections should not contains .clear method
8150
- if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;
 
8151
  }
8152
 
8153
- exported[CONSTRUCTOR_NAME] = Constructor;
8154
- $({ global: true, forced: Constructor != NativeConstructor }, exported);
8155
-
8156
- setToStringTag(Constructor, CONSTRUCTOR_NAME);
8157
-
8158
- if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);
8159
-
8160
- return Constructor;
8161
- };
8162
 
 
8163
 
8164
  /***/ }),
8165
- /* 230 */,
8166
- /* 231 */
8167
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8168
 
8169
  "use strict";
8170
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return getCountryCode; });
8171
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return getCurrencyRegion; });
8172
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return getProductIdsForCart; });
8173
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getCategorizedOnboardingProducts; });
8174
- /* unused harmony export getProductList */
8175
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return getPriceValue; });
8176
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return isWCAdmin; });
8177
- /* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(44);
8178
- /* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__);
8179
- /* harmony import */ var core_js_modules_es_string_split_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(177);
8180
- /* harmony import */ var core_js_modules_es_string_split_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_split_js__WEBPACK_IMPORTED_MODULE_1__);
8181
- /* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(88);
8182
- /* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_2__);
8183
- /* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(107);
8184
- /* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_3__);
8185
- /* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(140);
8186
- /* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_4__);
8187
- /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(51);
8188
- /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_5__);
8189
- /* harmony import */ var core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(248);
8190
- /* harmony import */ var core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_6__);
8191
- /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(100);
8192
- /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7__);
8193
- /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(151);
8194
- /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_8__);
8195
- /* harmony import */ var core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(123);
8196
- /* harmony import */ var core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_9__);
8197
- /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(146);
8198
- /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_10__);
8199
- /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(66);
8200
- /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_11__);
8201
- /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(49);
8202
- /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_12__);
8203
- /* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(192);
8204
- /* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_13__);
8205
- /* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(178);
8206
- /* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_14__);
8207
- /* harmony import */ var core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(135);
8208
- /* harmony import */ var core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_15__);
8209
- /* harmony import */ var _wordpress_html_entities__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(132);
8210
- /* harmony import */ var _wordpress_html_entities__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(_wordpress_html_entities__WEBPACK_IMPORTED_MODULE_16__);
8211
- /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(5);
8212
- /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_17__);
8213
- /* harmony import */ var _woocommerce_wc_admin_settings__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(85);
8214
-
8215
-
8216
-
8217
-
8218
-
8219
-
8220
-
8221
-
8222
 
 
 
8223
 
 
8224
 
 
 
8225
 
 
 
8226
 
 
 
 
 
8227
 
 
 
 
 
 
 
 
 
8228
 
 
 
 
 
 
 
 
 
 
8229
 
 
 
 
8230
 
 
 
 
 
8231
  /**
8232
- * External dependencies
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8233
  */
 
 
 
8234
 
 
 
 
8235
 
8236
 
 
 
 
 
 
 
 
8237
  /**
8238
- * Gets the country code from a country:state value string.
8239
  *
8240
- * @param {string} countryState Country state string, e.g. US:GA.
8241
- * @return {string} Country string.
 
8242
  */
8243
 
8244
- function getCountryCode(countryState) {
8245
- if (!countryState) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8246
  return null;
8247
  }
8248
 
@@ -8250,7 +8488,7 @@ function getCountryCode(countryState) {
8250
  }
8251
  function getCurrencyRegion(countryState) {
8252
  var region = getCountryCode(countryState);
8253
- var euCountries = Object(lodash__WEBPACK_IMPORTED_MODULE_17__["without"])(Object(_woocommerce_wc_admin_settings__WEBPACK_IMPORTED_MODULE_18__[/* getSetting */ "g"])('onboarding', {
8254
  euCountries: []
8255
  }).euCountries, 'GB');
8256
 
@@ -8324,7 +8562,7 @@ function getCategorizedOnboardingProducts(profileItems, installedPlugins) {
8324
  function getProductList(profileItems) {
8325
  var includeInstalledItems = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
8326
  var installedPlugins = arguments.length > 2 ? arguments[2] : undefined;
8327
- var onboarding = Object(_woocommerce_wc_admin_settings__WEBPACK_IMPORTED_MODULE_18__[/* getSetting */ "g"])('onboarding', {});
8328
  var productList = []; // The population of onboarding.productTypes only happens if the task list should be shown
8329
  // so bail early if it isn't present.
8330
 
@@ -8356,7 +8594,7 @@ function getProductList(profileItems) {
8356
  */
8357
 
8358
  function getPriceValue(string) {
8359
- return Number(Object(_wordpress_html_entities__WEBPACK_IMPORTED_MODULE_16__["decodeEntities"])(string).replace(/[^0-9.-]+/g, ''));
8360
  }
8361
  /**
8362
  * Determines if a URL is a WC admin url.
@@ -8370,615 +8608,415 @@ function isWCAdmin(url) {
8370
  }
8371
 
8372
  /***/ }),
8373
- /* 232 */,
8374
- /* 233 */
8375
- /***/ (function(module, exports) {
8376
-
8377
- function _objectWithoutPropertiesLoose(source, excluded) {
8378
- if (source == null) return {};
8379
- var target = {};
8380
- var sourceKeys = Object.keys(source);
8381
- var key, i;
8382
 
8383
- for (i = 0; i < sourceKeys.length; i++) {
8384
- key = sourceKeys[i];
8385
- if (excluded.indexOf(key) >= 0) continue;
8386
- target[key] = source[key];
8387
- }
8388
 
8389
- return target;
 
 
 
8390
  }
8391
 
8392
- module.exports = _objectWithoutPropertiesLoose;
8393
 
8394
  /***/ }),
8395
- /* 234 */
8396
- /***/ (function(module, exports, __webpack_require__) {
8397
 
8398
- "use strict";
 
8399
 
8400
- var bind = __webpack_require__(94);
8401
- var toObject = __webpack_require__(38);
8402
- var callWithSafeIterationClosing = __webpack_require__(252);
8403
- var isArrayIteratorMethod = __webpack_require__(171);
8404
- var toLength = __webpack_require__(34);
8405
- var createProperty = __webpack_require__(102);
8406
- var getIteratorMethod = __webpack_require__(155);
8407
-
8408
- // `Array.from` method implementation
8409
- // https://tc39.es/ecma262/#sec-array.from
8410
- module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
8411
- var O = toObject(arrayLike);
8412
- var C = typeof this == 'function' ? this : Array;
8413
- var argumentsLength = arguments.length;
8414
- var mapfn = argumentsLength > 1 ? arguments[1] : undefined;
8415
- var mapping = mapfn !== undefined;
8416
- var iteratorMethod = getIteratorMethod(O);
8417
- var index = 0;
8418
- var length, result, step, iterator, next, value;
8419
- if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);
8420
- // if the target is not iterable or it's an array with the default iterator - use a simple case
8421
- if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {
8422
- iterator = iteratorMethod.call(O);
8423
- next = iterator.next;
8424
- result = new C();
8425
- for (;!(step = next.call(iterator)).done; index++) {
8426
- value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;
8427
- createProperty(result, index, value);
8428
- }
8429
- } else {
8430
- length = toLength(O.length);
8431
- result = new C(length);
8432
- for (;length > index; index++) {
8433
- value = mapping ? mapfn(O[index], index) : O[index];
8434
- createProperty(result, index, value);
8435
- }
8436
- }
8437
- result.length = index;
8438
- return result;
8439
- };
8440
 
 
 
 
 
8441
 
8442
  /***/ }),
8443
- /* 235 */
8444
- /***/ (function(module, exports, __webpack_require__) {
 
8445
 
8446
  "use strict";
 
 
 
 
 
 
8447
 
8448
- var defineProperty = __webpack_require__(17).f;
8449
- var create = __webpack_require__(69);
8450
- var redefineAll = __webpack_require__(152);
8451
- var bind = __webpack_require__(94);
8452
- var anInstance = __webpack_require__(136);
8453
- var iterate = __webpack_require__(154);
8454
- var defineIterator = __webpack_require__(166);
8455
- var setSpecies = __webpack_require__(153);
8456
- var DESCRIPTORS = __webpack_require__(13);
8457
- var fastKey = __webpack_require__(205).fastKey;
8458
- var InternalStateModule = __webpack_require__(45);
8459
-
8460
- var setInternalState = InternalStateModule.set;
8461
- var internalStateGetterFor = InternalStateModule.getterFor;
8462
 
8463
- module.exports = {
8464
- getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {
8465
- var C = wrapper(function (that, iterable) {
8466
- anInstance(that, C, CONSTRUCTOR_NAME);
8467
- setInternalState(that, {
8468
- type: CONSTRUCTOR_NAME,
8469
- index: create(null),
8470
- first: undefined,
8471
- last: undefined,
8472
- size: 0
8473
- });
8474
- if (!DESCRIPTORS) that.size = 0;
8475
- if (iterable != undefined) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });
8476
- });
8477
 
8478
- var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);
8479
 
8480
- var define = function (that, key, value) {
8481
- var state = getInternalState(that);
8482
- var entry = getEntry(that, key);
8483
- var previous, index;
8484
- // change existing entry
8485
- if (entry) {
8486
- entry.value = value;
8487
- // create new entry
8488
- } else {
8489
- state.last = entry = {
8490
- index: index = fastKey(key, true),
8491
- key: key,
8492
- value: value,
8493
- previous: previous = state.last,
8494
- next: undefined,
8495
- removed: false
8496
- };
8497
- if (!state.first) state.first = entry;
8498
- if (previous) previous.next = entry;
8499
- if (DESCRIPTORS) state.size++;
8500
- else that.size++;
8501
- // add to index
8502
- if (index !== 'F') state.index[index] = entry;
8503
- } return that;
8504
- };
8505
 
8506
- var getEntry = function (that, key) {
8507
- var state = getInternalState(that);
8508
- // fast case
8509
- var index = fastKey(key);
8510
- var entry;
8511
- if (index !== 'F') return state.index[index];
8512
- // frozen object case
8513
- for (entry = state.first; entry; entry = entry.next) {
8514
- if (entry.key == key) return entry;
8515
- }
8516
- };
8517
 
8518
- redefineAll(C.prototype, {
8519
- // 23.1.3.1 Map.prototype.clear()
8520
- // 23.2.3.2 Set.prototype.clear()
8521
- clear: function clear() {
8522
- var that = this;
8523
- var state = getInternalState(that);
8524
- var data = state.index;
8525
- var entry = state.first;
8526
- while (entry) {
8527
- entry.removed = true;
8528
- if (entry.previous) entry.previous = entry.previous.next = undefined;
8529
- delete data[entry.index];
8530
- entry = entry.next;
8531
- }
8532
- state.first = state.last = undefined;
8533
- if (DESCRIPTORS) state.size = 0;
8534
- else that.size = 0;
8535
- },
8536
- // 23.1.3.3 Map.prototype.delete(key)
8537
- // 23.2.3.4 Set.prototype.delete(value)
8538
- 'delete': function (key) {
8539
- var that = this;
8540
- var state = getInternalState(that);
8541
- var entry = getEntry(that, key);
8542
- if (entry) {
8543
- var next = entry.next;
8544
- var prev = entry.previous;
8545
- delete state.index[entry.index];
8546
- entry.removed = true;
8547
- if (prev) prev.next = next;
8548
- if (next) next.previous = prev;
8549
- if (state.first == entry) state.first = next;
8550
- if (state.last == entry) state.last = prev;
8551
- if (DESCRIPTORS) state.size--;
8552
- else that.size--;
8553
- } return !!entry;
8554
- },
8555
- // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
8556
- // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
8557
- forEach: function forEach(callbackfn /* , that = undefined */) {
8558
- var state = getInternalState(this);
8559
- var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
8560
- var entry;
8561
- while (entry = entry ? entry.next : state.first) {
8562
- boundFunction(entry.value, entry.key, this);
8563
- // revert to the last existing entry
8564
- while (entry && entry.removed) entry = entry.previous;
8565
- }
8566
- },
8567
- // 23.1.3.7 Map.prototype.has(key)
8568
- // 23.2.3.7 Set.prototype.has(value)
8569
- has: function has(key) {
8570
- return !!getEntry(this, key);
8571
- }
8572
- });
8573
-
8574
- redefineAll(C.prototype, IS_MAP ? {
8575
- // 23.1.3.6 Map.prototype.get(key)
8576
- get: function get(key) {
8577
- var entry = getEntry(this, key);
8578
- return entry && entry.value;
8579
- },
8580
- // 23.1.3.9 Map.prototype.set(key, value)
8581
- set: function set(key, value) {
8582
- return define(this, key === 0 ? 0 : key, value);
8583
- }
8584
- } : {
8585
- // 23.2.3.1 Set.prototype.add(value)
8586
- add: function add(value) {
8587
- return define(this, value = value === 0 ? 0 : value, value);
8588
- }
8589
- });
8590
- if (DESCRIPTORS) defineProperty(C.prototype, 'size', {
8591
- get: function () {
8592
- return getInternalState(this).size;
8593
- }
8594
- });
8595
- return C;
8596
- },
8597
- setStrong: function (C, CONSTRUCTOR_NAME, IS_MAP) {
8598
- var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';
8599
- var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);
8600
- var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);
8601
- // add .keys, .values, .entries, [@@iterator]
8602
- // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
8603
- defineIterator(C, CONSTRUCTOR_NAME, function (iterated, kind) {
8604
- setInternalState(this, {
8605
- type: ITERATOR_NAME,
8606
- target: iterated,
8607
- state: getInternalCollectionState(iterated),
8608
- kind: kind,
8609
- last: undefined
8610
- });
8611
- }, function () {
8612
- var state = getInternalIteratorState(this);
8613
- var kind = state.kind;
8614
- var entry = state.last;
8615
- // revert to the last existing entry
8616
- while (entry && entry.removed) entry = entry.previous;
8617
- // get next entry
8618
- if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {
8619
- // or finish the iteration
8620
- state.target = undefined;
8621
- return { value: undefined, done: true };
8622
- }
8623
- // return step by kind
8624
- if (kind == 'keys') return { value: entry.key, done: false };
8625
- if (kind == 'values') return { value: entry.value, done: false };
8626
- return { value: [entry.key, entry.value], done: false };
8627
- }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
8628
-
8629
- // add [@@species], 23.1.2.2, 23.2.2.2
8630
- setSpecies(CONSTRUCTOR_NAME);
8631
  }
8632
- };
8633
 
 
 
 
 
 
8634
 
8635
  /***/ }),
8636
- /* 236 */,
8637
- /* 237 */,
8638
- /* 238 */,
8639
- /* 239 */,
8640
- /* 240 */,
8641
- /* 241 */,
8642
- /* 242 */,
8643
- /* 243 */,
8644
- /* 244 */,
8645
- /* 245 */,
8646
- /* 246 */,
8647
- /* 247 */
8648
- /***/ (function(module, exports) {
8649
-
8650
- (function() { module.exports = window["wc"]["currency"]; }());
8651
 
8652
- /***/ }),
8653
- /* 248 */
8654
- /***/ (function(module, exports, __webpack_require__) {
8655
 
8656
  "use strict";
8657
 
8658
- var collection = __webpack_require__(229);
8659
- var collectionStrong = __webpack_require__(235);
8660
 
8661
- // `Set` constructor
8662
- // https://tc39.es/ecma262/#sec-set-objects
8663
- module.exports = collection('Set', function (init) {
8664
- return function Set() { return init(this, arguments.length ? arguments[0] : undefined); };
8665
- }, collectionStrong);
 
8666
 
 
 
 
8667
 
8668
- /***/ }),
8669
- /* 249 */
8670
- /***/ (function(module, exports, __webpack_require__) {
 
8671
 
8672
- var DESCRIPTORS = __webpack_require__(13);
8673
- var objectKeys = __webpack_require__(54);
8674
- var toIndexedObject = __webpack_require__(21);
8675
- var propertyIsEnumerable = __webpack_require__(76).f;
8676
-
8677
- // `Object.{ entries, values }` methods implementation
8678
- var createMethod = function (TO_ENTRIES) {
8679
- return function (it) {
8680
- var O = toIndexedObject(it);
8681
- var keys = objectKeys(O);
8682
- var length = keys.length;
8683
- var i = 0;
8684
- var result = [];
8685
- var key;
8686
- while (length > i) {
8687
- key = keys[i++];
8688
- if (!DESCRIPTORS || propertyIsEnumerable.call(O, key)) {
8689
- result.push(TO_ENTRIES ? [key, O[key]] : O[key]);
8690
- }
8691
  }
8692
- return result;
8693
- };
8694
- };
8695
 
8696
- module.exports = {
8697
- // `Object.entries` method
8698
- // https://tc39.es/ecma262/#sec-object.entries
8699
- entries: createMethod(true),
8700
- // `Object.values` method
8701
- // https://tc39.es/ecma262/#sec-object.values
8702
- values: createMethod(false)
8703
- };
8704
 
 
 
8705
 
8706
- /***/ }),
8707
- /* 250 */
8708
- /***/ (function(module, exports, __webpack_require__) {
 
8709
 
8710
- var $ = __webpack_require__(12);
8711
- var assign = __webpack_require__(221);
8712
 
8713
- // `Object.assign` method
8714
- // https://tc39.es/ecma262/#sec-object.assign
8715
- $({ target: 'Object', stat: true, forced: Object.assign !== assign }, {
8716
- assign: assign
8717
- });
8718
 
 
 
8719
 
8720
  /***/ }),
8721
- /* 251 */,
8722
- /* 252 */
8723
- /***/ (function(module, exports, __webpack_require__) {
8724
 
8725
- var anObject = __webpack_require__(9);
8726
- var iteratorClose = __webpack_require__(172);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8727
 
8728
- // call something on iterator step with safe closing on error
8729
- module.exports = function (iterator, fn, value, ENTRIES) {
8730
  try {
8731
- return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);
8732
- // 7.4.6 IteratorClose(iterator, completion)
8733
- } catch (error) {
8734
- iteratorClose(iterator);
8735
- throw error;
 
 
 
 
 
 
 
 
 
8736
  }
8737
- };
 
 
 
 
 
 
 
 
 
 
 
 
8738
 
8739
 
 
 
 
 
8740
  /***/ }),
8741
- /* 253 */
8742
- /***/ (function(module, exports, __webpack_require__) {
8743
 
8744
- var fails = __webpack_require__(6);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8745
 
8746
- module.exports = !fails(function () {
8747
- return Object.isExtensible(Object.preventExtensions({}));
8748
- });
8749
 
 
 
 
8750
 
8751
  /***/ }),
8752
- /* 254 */
8753
- /***/ (function(module, exports, __webpack_require__) {
8754
 
8755
- var fails = __webpack_require__(6);
8756
- var wellKnownSymbol = __webpack_require__(8);
8757
- var IS_PURE = __webpack_require__(57);
8758
 
8759
- var ITERATOR = wellKnownSymbol('iterator');
 
 
 
 
 
8760
 
8761
- module.exports = !fails(function () {
8762
- var url = new URL('b?a=1&b=2&c=3', 'http://a');
8763
- var searchParams = url.searchParams;
8764
- var result = '';
8765
- url.pathname = 'c%20d';
8766
- searchParams.forEach(function (value, key) {
8767
- searchParams['delete']('b');
8768
- result += key + value;
8769
- });
8770
- return (IS_PURE && !url.toJSON)
8771
- || !searchParams.sort
8772
- || url.href !== 'http://a/c%20d?a=1&c=3'
8773
- || searchParams.get('c') !== '3'
8774
- || String(new URLSearchParams('?a=1')) !== 'a=1'
8775
- || !searchParams[ITERATOR]
8776
- // throws in Edge
8777
- || new URL('https://a@b').username !== 'a'
8778
- || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'
8779
- // not punycoded in Edge
8780
- || new URL('http://тест').host !== 'xn--e1aybc'
8781
- // not escaped in Chrome 62-
8782
- || new URL('http://a#б').hash !== '#%D0%B1'
8783
- // fails in Chrome 66-
8784
- || result !== 'a1c3'
8785
- // throws in Safari
8786
- || new URL('http://x', undefined).host !== 'x';
8787
- });
8788
 
 
 
8789
 
8790
  /***/ }),
8791
- /* 255 */,
8792
- /* 256 */,
8793
- /* 257 */,
8794
- /* 258 */,
8795
- /* 259 */,
8796
- /* 260 */,
8797
- /* 261 */,
8798
- /* 262 */
8799
  /***/ (function(module, exports) {
8800
 
8801
- (function() { module.exports = window["wp"]["dom"]; }());
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8802
 
8803
  /***/ }),
8804
- /* 263 */,
8805
- /* 264 */,
8806
- /* 265 */,
8807
- /* 266 */,
8808
- /* 267 */,
8809
- /* 268 */
8810
  /***/ (function(module, exports, __webpack_require__) {
8811
 
8812
  "use strict";
8813
 
8814
 
8815
  if (true) {
8816
- module.exports = __webpack_require__(298);
8817
  } else {}
8818
 
8819
 
8820
  /***/ }),
8821
- /* 269 */,
8822
- /* 270 */,
8823
- /* 271 */,
8824
- /* 272 */,
8825
- /* 273 */,
8826
- /* 274 */,
8827
- /* 275 */,
8828
- /* 276 */,
8829
- /* 277 */
8830
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
8831
-
8832
- "use strict";
8833
- /* harmony import */ var core_js_modules_es_promise_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(164);
8834
- /* harmony import */ var core_js_modules_es_promise_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_promise_js__WEBPACK_IMPORTED_MODULE_0__);
8835
- /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(100);
8836
- /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_1__);
8837
- /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(151);
8838
- /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_2__);
8839
- /* harmony import */ var core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(123);
8840
- /* harmony import */ var core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_3__);
8841
- /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(146);
8842
- /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_4__);
8843
- /* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(41);
8844
- /* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_5__);
8845
- /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(2);
8846
- /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__);
8847
- /* harmony import */ var _wordpress_hooks__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(141);
8848
- /* harmony import */ var _wordpress_hooks__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_wordpress_hooks__WEBPACK_IMPORTED_MODULE_7__);
8849
- /* harmony import */ var _woocommerce_wc_admin_settings__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(85);
8850
- /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(0);
8851
- /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__);
8852
-
8853
-
8854
 
 
 
8855
 
 
8856
 
 
8857
 
 
 
8858
 
 
 
 
 
 
 
 
 
8859
  /**
8860
  * External dependencies
8861
  */
8862
 
8863
 
8864
 
 
 
 
 
8865
 
8866
- var manageStock = Object(_woocommerce_wc_admin_settings__WEBPACK_IMPORTED_MODULE_8__[/* getSetting */ "g"])('manageStock', 'no');
8867
  var REPORTS_FILTER = 'woocommerce_admin_reports_list';
8868
  /**
8869
  * Internal dependencies
8870
  */
8871
 
8872
- var RevenueReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__["lazy"])(function () {
8873
- return Promise.all(/* import() | analytics-report-revenue */[__webpack_require__.e(0), __webpack_require__.e(16)]).then(__webpack_require__.bind(null, 584));
8874
  });
8875
- var ProductsReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__["lazy"])(function () {
8876
- return Promise.all(/* import() | analytics-report-products */[__webpack_require__.e(0), __webpack_require__.e(2), __webpack_require__.e(15)]).then(__webpack_require__.bind(null, 580));
8877
  });
8878
- var VariationsReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__["lazy"])(function () {
8879
- return Promise.all(/* import() | analytics-report-variations */[__webpack_require__.e(0), __webpack_require__.e(2), __webpack_require__.e(19)]).then(__webpack_require__.bind(null, 585));
8880
  });
8881
- var OrdersReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__["lazy"])(function () {
8882
- return Promise.all(/* import() | analytics-report-orders */[__webpack_require__.e(0), __webpack_require__.e(5), __webpack_require__.e(14)]).then(__webpack_require__.bind(null, 586));
8883
  });
8884
- var CategoriesReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__["lazy"])(function () {
8885
- return Promise.all(/* import() | analytics-report-categories */[__webpack_require__.e(0), __webpack_require__.e(2), __webpack_require__.e(10)]).then(__webpack_require__.bind(null, 582));
8886
  });
8887
- var CouponsReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__["lazy"])(function () {
8888
- return Promise.all(/* import() | analytics-report-coupons */[__webpack_require__.e(0), __webpack_require__.e(11)]).then(__webpack_require__.bind(null, 587));
8889
  });
8890
- var TaxesReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__["lazy"])(function () {
8891
- return Promise.all(/* import() | analytics-report-taxes */[__webpack_require__.e(0), __webpack_require__.e(18)]).then(__webpack_require__.bind(null, 588));
8892
  });
8893
- var DownloadsReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__["lazy"])(function () {
8894
- return Promise.all(/* import() | analytics-report-downloads */[__webpack_require__.e(0), __webpack_require__.e(13)]).then(__webpack_require__.bind(null, 589));
8895
  });
8896
- var StockReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__["lazy"])(function () {
8897
- return Promise.all(/* import() | analytics-report-stock */[__webpack_require__.e(0), __webpack_require__.e(17)]).then(__webpack_require__.bind(null, 581));
8898
  });
8899
- var CustomersReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_9__["lazy"])(function () {
8900
- return Promise.all(/* import() | analytics-report-customers */[__webpack_require__.e(0), __webpack_require__.e(12)]).then(__webpack_require__.bind(null, 583));
8901
  });
8902
  /* harmony default export */ __webpack_exports__["a"] = (function () {
8903
  var reports = [{
8904
  report: 'revenue',
8905
- title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__["__"])('Revenue', 'woocommerce-admin'),
8906
  component: RevenueReport,
8907
- navArgs: {
8908
- id: 'woocommerce-analytics-revenue'
8909
- }
8910
  }, {
8911
  report: 'products',
8912
- title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__["__"])('Products', 'woocommerce-admin'),
8913
  component: ProductsReport,
8914
- navArgs: {
8915
- id: 'woocommerce-analytics-products'
8916
- }
8917
  }, {
8918
  report: 'variations',
8919
- title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__["__"])('Variations', 'woocommerce-admin'),
8920
  component: VariationsReport,
8921
- navArgs: {
8922
- id: 'woocommerce-analytics-variations'
8923
- }
8924
  }, {
8925
  report: 'orders',
8926
- title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__["__"])('Orders', 'woocommerce-admin'),
8927
  component: OrdersReport,
8928
- navArgs: {
8929
- id: 'woocommerce-analytics-orders'
8930
- }
8931
  }, {
8932
  report: 'categories',
8933
- title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__["__"])('Categories', 'woocommerce-admin'),
8934
  component: CategoriesReport,
8935
- navArgs: {
8936
- id: 'woocommerce-analytics-categories'
8937
- }
8938
  }, {
8939
  report: 'coupons',
8940
- title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__["__"])('Coupons', 'woocommerce-admin'),
8941
  component: CouponsReport,
8942
- navArgs: {
8943
- id: 'woocommerce-analytics-coupons'
8944
- }
8945
  }, {
8946
  report: 'taxes',
8947
- title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__["__"])('Taxes', 'woocommerce-admin'),
8948
  component: TaxesReport,
8949
- navArgs: {
8950
- id: 'woocommerce-analytics-taxes'
8951
- }
8952
  }, manageStock === 'yes' ? {
8953
  report: 'stock',
8954
- title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__["__"])('Stock', 'woocommerce-admin'),
8955
  component: StockReport,
8956
- navArgs: {
8957
- id: 'woocommerce-analytics-stock'
8958
- }
8959
  } : null, {
8960
  report: 'customers',
8961
- title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__["__"])('Customers', 'woocommerce-admin'),
8962
- component: CustomersReport
 
8963
  }, {
8964
  report: 'downloads',
8965
- title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__["__"])('Downloads', 'woocommerce-admin'),
8966
  component: DownloadsReport,
8967
- navArgs: {
8968
- id: 'woocommerce-analytics-downloads'
8969
- }
8970
  }].filter(Boolean);
8971
- return Object(_wordpress_hooks__WEBPACK_IMPORTED_MODULE_7__["applyFilters"])(REPORTS_FILTER, reports);
8972
  });
8973
 
8974
  /***/ }),
8975
- /* 278 */
 
8976
  /***/ (function(module, exports, __webpack_require__) {
8977
 
8978
  "use strict";
8979
 
8980
 
8981
- var reactIs = __webpack_require__(268);
8982
 
8983
  /**
8984
  * Copyright 2015, Yahoo! Inc.
@@ -9082,13 +9120,57 @@ module.exports = hoistNonReactStatics;
9082
 
9083
 
9084
  /***/ }),
9085
- /* 279 */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9086
  /***/ (function(module, exports) {
9087
 
9088
- (function() { module.exports = window["wp"]["plugins"]; }());
9089
 
9090
  /***/ }),
9091
- /* 280 */
 
9092
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9093
 
9094
  "use strict";
@@ -9098,106 +9180,52 @@ __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding *
9098
  __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ PageLayout; });
9099
  __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ EmbedLayout; });
9100
 
9101
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.reflect.construct.js
9102
- var es_reflect_construct = __webpack_require__(64);
9103
-
9104
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.keys.js
9105
- var es_object_keys = __webpack_require__(37);
9106
-
9107
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.js
9108
- var es_symbol = __webpack_require__(53);
9109
-
9110
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-own-property-descriptor.js
9111
- var es_object_get_own_property_descriptor = __webpack_require__(60);
9112
-
9113
- // EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.for-each.js
9114
- var web_dom_collections_for_each = __webpack_require__(49);
9115
-
9116
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-own-property-descriptors.js
9117
- var es_object_get_own_property_descriptors = __webpack_require__(61);
9118
-
9119
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/extends.js
9120
- var helpers_extends = __webpack_require__(80);
9121
  var extends_default = /*#__PURE__*/__webpack_require__.n(helpers_extends);
9122
 
9123
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js
9124
- var objectWithoutProperties = __webpack_require__(116);
9125
  var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
9126
 
9127
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/defineProperty.js
9128
- var defineProperty = __webpack_require__(7);
9129
  var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);
9130
 
9131
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/classCallCheck.js
9132
- var classCallCheck = __webpack_require__(22);
9133
  var classCallCheck_default = /*#__PURE__*/__webpack_require__.n(classCallCheck);
9134
 
9135
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/createClass.js
9136
- var createClass = __webpack_require__(23);
9137
  var createClass_default = /*#__PURE__*/__webpack_require__.n(createClass);
9138
 
9139
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/inherits.js
9140
- var inherits = __webpack_require__(24);
9141
  var inherits_default = /*#__PURE__*/__webpack_require__.n(inherits);
9142
 
9143
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js
9144
- var possibleConstructorReturn = __webpack_require__(25);
9145
  var possibleConstructorReturn_default = /*#__PURE__*/__webpack_require__.n(possibleConstructorReturn);
9146
 
9147
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/getPrototypeOf.js
9148
- var getPrototypeOf = __webpack_require__(14);
9149
  var getPrototypeOf_default = /*#__PURE__*/__webpack_require__.n(getPrototypeOf);
9150
 
9151
- // EXTERNAL MODULE: external ["wp","element"]
9152
- var external_wp_element_ = __webpack_require__(0);
9153
-
9154
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.promise.js
9155
- var es_promise = __webpack_require__(164);
9156
-
9157
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js
9158
- var es_object_to_string = __webpack_require__(100);
9159
-
9160
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.iterator.js
9161
- var es_string_iterator = __webpack_require__(151);
9162
-
9163
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.iterator.js
9164
- var es_array_iterator = __webpack_require__(123);
9165
-
9166
- // EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.iterator.js
9167
- var web_dom_collections_iterator = __webpack_require__(146);
9168
-
9169
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.search.js
9170
- var es_string_search = __webpack_require__(170);
9171
 
9172
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.exec.js
9173
- var es_regexp_exec = __webpack_require__(88);
9174
 
9175
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.replace.js
9176
- var es_string_replace = __webpack_require__(135);
9177
 
9178
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.includes.js
9179
- var es_array_includes = __webpack_require__(107);
9180
-
9181
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.includes.js
9182
- var es_string_includes = __webpack_require__(140);
9183
-
9184
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.map.js
9185
- var es_array_map = __webpack_require__(51);
9186
-
9187
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.filter.js
9188
- var es_array_filter = __webpack_require__(41);
9189
-
9190
- // EXTERNAL MODULE: external ["wp","compose"]
9191
- var external_wp_compose_ = __webpack_require__(65);
9192
-
9193
- // EXTERNAL MODULE: external ["wp","data"]
9194
- var external_wp_data_ = __webpack_require__(26);
9195
-
9196
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js + 1 modules
9197
- var inheritsLoose = __webpack_require__(128);
9198
 
9199
  // EXTERNAL MODULE: external "React"
9200
- var external_React_ = __webpack_require__(20);
9201
  var external_React_default = /*#__PURE__*/__webpack_require__.n(external_React_);
9202
 
9203
  // EXTERNAL MODULE: ./node_modules/prop-types/index.js
@@ -9205,29 +9233,29 @@ var prop_types = __webpack_require__(1);
9205
  var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
9206
 
9207
  // EXTERNAL MODULE: ./node_modules/history/esm/history.js + 2 modules
9208
- var esm_history = __webpack_require__(202);
9209
 
9210
  // EXTERNAL MODULE: ./node_modules/mini-create-react-context/dist/esm/index.js
9211
- var esm = __webpack_require__(316);
9212
 
9213
  // EXTERNAL MODULE: ./node_modules/tiny-invariant/dist/tiny-invariant.esm.js
9214
- var tiny_invariant_esm = __webpack_require__(176);
9215
 
9216
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
9217
- var esm_extends = __webpack_require__(117);
9218
 
9219
  // EXTERNAL MODULE: ./node_modules/path-to-regexp/index.js
9220
- var path_to_regexp = __webpack_require__(317);
9221
  var path_to_regexp_default = /*#__PURE__*/__webpack_require__.n(path_to_regexp);
9222
 
9223
  // EXTERNAL MODULE: ./node_modules/react-is/index.js
9224
- var react_is = __webpack_require__(268);
9225
 
9226
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
9227
- var objectWithoutPropertiesLoose = __webpack_require__(133);
9228
 
9229
  // EXTERNAL MODULE: ./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
9230
- var hoist_non_react_statics_cjs = __webpack_require__(278);
9231
  var hoist_non_react_statics_cjs_default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics_cjs);
9232
 
9233
  // CONCATENATED MODULE: ./node_modules/react-router/esm/react-router.js
@@ -9252,21 +9280,9 @@ var react_router_createNamedContext = function createNamedContext(name) {
9252
  return context;
9253
  };
9254
 
9255
- var historyContext =
9256
- /*#__PURE__*/
9257
- react_router_createNamedContext("Router-History");
9258
-
9259
- // TODO: Replace with React.createContext once we can assume React 16+
9260
-
9261
- var createNamedContext$1 = function createNamedContext(name) {
9262
- var context = Object(esm["a" /* default */])();
9263
- context.displayName = name;
9264
- return context;
9265
- };
9266
-
9267
  var react_router_context =
9268
  /*#__PURE__*/
9269
- createNamedContext$1("Router");
9270
 
9271
  /**
9272
  * The public API for putting history on context.
@@ -9334,16 +9350,14 @@ function (_React$Component) {
9334
 
9335
  _proto.render = function render() {
9336
  return external_React_default.a.createElement(react_router_context.Provider, {
 
9337
  value: {
9338
  history: this.props.history,
9339
  location: this.state.location,
9340
  match: Router.computeRootMatch(this.state.location.pathname),
9341
  staticContext: this.props.staticContext
9342
  }
9343
- }, external_React_default.a.createElement(historyContext.Provider, {
9344
- children: this.props.children || null,
9345
- value: this.props.history
9346
- }));
9347
  };
9348
 
9349
  return Router;
@@ -9864,7 +9878,7 @@ var useContext = external_React_default.a.useContext;
9864
  function useHistory() {
9865
  if (false) {}
9866
 
9867
- return useContext(historyContext);
9868
  }
9869
  function useLocation() {
9870
  if (false) {}
@@ -9880,9 +9894,7 @@ function useParams() {
9880
  function useRouteMatch(path) {
9881
  if (false) {}
9882
 
9883
- var location = useLocation();
9884
- var match = useContext(react_router_context).match;
9885
- return path ? matchPath(location.pathname, path) : match;
9886
  }
9887
 
9888
  if (false) { var secondaryBuildName, initialBuildName, buildNames, react_router_key, global; }
@@ -9891,58 +9903,40 @@ if (false) { var secondaryBuildName, initialBuildName, buildNames, react_router_
9891
  //# sourceMappingURL=react-router.js.map
9892
 
9893
  // EXTERNAL MODULE: external "lodash"
9894
- var external_lodash_ = __webpack_require__(5);
9895
 
9896
  // EXTERNAL MODULE: ./node_modules/qs/lib/index.js
9897
- var lib = __webpack_require__(162);
9898
 
9899
- // EXTERNAL MODULE: external ["wc","components"]
9900
- var external_wc_components_ = __webpack_require__(145);
9901
 
9902
- // EXTERNAL MODULE: external ["wc","navigation"]
9903
- var external_wc_navigation_ = __webpack_require__(50);
9904
 
9905
- // EXTERNAL MODULE: ./client/wc-admin-settings/index.js
9906
- var wc_admin_settings = __webpack_require__(85);
9907
 
9908
- // EXTERNAL MODULE: external ["wc","data"]
9909
- var external_wc_data_ = __webpack_require__(59);
9910
 
9911
- // EXTERNAL MODULE: external ["wc","tracks"]
9912
- var external_wc_tracks_ = __webpack_require__(92);
9913
-
9914
- // EXTERNAL MODULE: external ["wc","notices"]
9915
- var external_wc_notices_ = __webpack_require__(421);
9916
 
9917
  // EXTERNAL MODULE: ./client/layout/style.scss
9918
- var layout_style = __webpack_require__(422);
9919
-
9920
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.concat.js
9921
- var es_array_concat = __webpack_require__(66);
9922
-
9923
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.match.js
9924
- var es_string_match = __webpack_require__(203);
9925
-
9926
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.split.js
9927
- var es_string_split = __webpack_require__(177);
9928
 
9929
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.assign.js
9930
- var es_object_assign = __webpack_require__(250);
9931
 
9932
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.from.js
9933
- var es_array_from = __webpack_require__(283);
9934
-
9935
- // EXTERNAL MODULE: external ["wp","hooks"]
9936
- var external_wp_hooks_ = __webpack_require__(141);
9937
-
9938
- // EXTERNAL MODULE: external ["wp","i18n"]
9939
- var external_wp_i18n_ = __webpack_require__(2);
9940
 
9941
  // EXTERNAL MODULE: ./client/analytics/report/get-reports.js
9942
- var get_reports = __webpack_require__(277);
9943
 
9944
  // EXTERNAL MODULE: ./client/dashboard/utils.js
9945
- var utils = __webpack_require__(231);
9946
 
9947
  // CONCATENATED MODULE: ./client/layout/controller.js
9948
 
@@ -9952,27 +9946,9 @@ var utils = __webpack_require__(231);
9952
 
9953
 
9954
 
9955
-
9956
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = getPrototypeOf_default()(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = getPrototypeOf_default()(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return possibleConstructorReturn_default()(this, result); }; }
9957
 
9958
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
9959
-
9960
-
9961
-
9962
-
9963
-
9964
-
9965
-
9966
-
9967
-
9968
-
9969
-
9970
-
9971
-
9972
-
9973
-
9974
-
9975
-
9976
 
9977
  /**
9978
  * External dependencies
@@ -9984,34 +9960,31 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
9984
 
9985
 
9986
 
9987
-
9988
  /**
9989
  * Internal dependencies
9990
  */
9991
 
9992
 
9993
 
9994
- var AnalyticsReport = Object(external_wp_element_["lazy"])(function () {
9995
- return __webpack_require__.e(/* import() | analytics-report */ 9).then(__webpack_require__.bind(null, 691));
9996
- });
9997
- var AnalyticsSettings = Object(external_wp_element_["lazy"])(function () {
9998
- return __webpack_require__.e(/* import() | analytics-settings */ 20).then(__webpack_require__.bind(null, 711));
9999
  });
10000
- var Dashboard = Object(external_wp_element_["lazy"])(function () {
10001
- return __webpack_require__.e(/* import() | dashboard */ 28).then(__webpack_require__.bind(null, 692));
10002
  });
10003
- var Homescreen = Object(external_wp_element_["lazy"])(function () {
10004
- return Promise.all(/* import() | homescreen */[__webpack_require__.e(1), __webpack_require__.e(3), __webpack_require__.e(52), __webpack_require__.e(4), __webpack_require__.e(32)]).then(__webpack_require__.bind(null, 708));
10005
  });
10006
- var MarketingOverview = Object(external_wp_element_["lazy"])(function () {
10007
- return Promise.all(/* import() | marketing-overview */[__webpack_require__.e(3), __webpack_require__.e(36)]).then(__webpack_require__.bind(null, 712));
10008
  });
10009
- var ProfileWizard = Object(external_wp_element_["lazy"])(function () {
10010
- return Promise.all(/* import() | profile-wizard */[__webpack_require__.e(53), __webpack_require__.e(46)]).then(__webpack_require__.bind(null, 709));
10011
  });
10012
- var SettingsGroup = Object(external_wp_element_["lazy"])(function () {
10013
- return Promise.all(/* import() | profile-wizard */[__webpack_require__.e(53), __webpack_require__.e(46)]).then(__webpack_require__.bind(null, 704));
10014
  });
 
10015
  var PAGES_FILTER = 'woocommerce_admin_pages_list';
10016
  var controller_getPages = function getPages() {
10017
  var pages = [];
@@ -10019,44 +9992,32 @@ var controller_getPages = function getPages() {
10019
  pages.push({
10020
  container: Homescreen,
10021
  path: '/',
10022
- breadcrumbs: [].concat(initialBreadcrumbs, [Object(external_wp_i18n_["__"])('Home', 'woocommerce-admin')]),
10023
  wpOpenMenu: 'toplevel_page_woocommerce',
10024
- navArgs: {
10025
- id: 'woocommerce-home'
10026
- },
10027
- capability: 'manage_woocommerce'
10028
  });
10029
 
10030
  if (window.wcAdminFeatures.analytics) {
10031
  pages.push({
10032
  container: Dashboard,
10033
  path: '/analytics/overview',
10034
- breadcrumbs: [].concat(initialBreadcrumbs, [['/analytics/overview', Object(external_wp_i18n_["__"])('Analytics', 'woocommerce-admin')], Object(external_wp_i18n_["__"])('Overview', 'woocommerce-admin')]),
10035
  wpOpenMenu: 'toplevel_page_wc-admin-path--analytics-overview',
10036
- navArgs: {
10037
- id: 'woocommerce-analytics-overview'
10038
- },
10039
- capability: 'view_woocommerce_reports'
10040
  });
10041
  pages.push({
10042
  container: AnalyticsSettings,
10043
  path: '/analytics/settings',
10044
- breadcrumbs: [].concat(initialBreadcrumbs, [['/analytics/revenue', Object(external_wp_i18n_["__"])('Analytics', 'woocommerce-admin')], Object(external_wp_i18n_["__"])('Settings', 'woocommerce-admin')]),
10045
  wpOpenMenu: 'toplevel_page_wc-admin-path--analytics-overview',
10046
- navArgs: {
10047
- id: 'woocommerce-analytics-settings'
10048
- },
10049
- capability: 'view_woocommerce_reports'
10050
  });
10051
  pages.push({
10052
  container: AnalyticsReport,
10053
  path: '/customers',
10054
- breadcrumbs: [].concat(initialBreadcrumbs, [Object(external_wp_i18n_["__"])('Customers', 'woocommerce-admin')]),
10055
  wpOpenMenu: 'toplevel_page_woocommerce',
10056
- navArgs: {
10057
- id: 'woocommerce-analytics-customers'
10058
- },
10059
- capability: 'view_woocommerce_reports'
10060
  });
10061
  pages.push({
10062
  container: AnalyticsReport,
@@ -10071,10 +10032,9 @@ var controller_getPages = function getPages() {
10071
  return [];
10072
  }
10073
 
10074
- return [].concat(initialBreadcrumbs, [['/analytics/revenue', Object(external_wp_i18n_["__"])('Analytics', 'woocommerce-admin')], report.title]);
10075
  },
10076
- wpOpenMenu: 'toplevel_page_wc-admin-path--analytics-overview',
10077
- capability: 'view_woocommerce_reports'
10078
  });
10079
  }
10080
 
@@ -10082,12 +10042,9 @@ var controller_getPages = function getPages() {
10082
  pages.push({
10083
  container: MarketingOverview,
10084
  path: '/marketing',
10085
- breadcrumbs: [].concat(initialBreadcrumbs, [['/marketing', Object(external_wp_i18n_["__"])('Marketing', 'woocommerce-admin')], Object(external_wp_i18n_["__"])('Overview', 'woocommerce-admin')]),
10086
  wpOpenMenu: 'toplevel_page_woocommerce-marketing',
10087
- navArgs: {
10088
- id: 'woocommerce-marketing-overview'
10089
- },
10090
- capability: 'view_woocommerce_reports'
10091
  });
10092
  }
10093
 
@@ -10095,33 +10052,11 @@ var controller_getPages = function getPages() {
10095
  pages.push({
10096
  container: ProfileWizard,
10097
  path: '/setup-wizard',
10098
- breadcrumbs: [].concat(initialBreadcrumbs, [['/setup-wizard', Object(external_wp_i18n_["__"])('Setup Wizard', 'woocommerce-admin')]]),
10099
- capability: 'manage_woocommerce'
10100
- });
10101
- }
10102
-
10103
- if (window.wcAdminFeatures.settings) {
10104
- pages.push({
10105
- container: SettingsGroup,
10106
- path: '/settings/:page',
10107
- breadcrumbs: function breadcrumbs(_ref2) {
10108
- var match = _ref2.match;
10109
- // @todo This might need to be refactored to retreive groups via data store.
10110
- var settingsPages = Object(wc_admin_settings["g" /* getSetting */])('settingsPages');
10111
- var page = settingsPages[match.params.page];
10112
-
10113
- if (!page) {
10114
- return [];
10115
- }
10116
-
10117
- return [].concat(initialBreadcrumbs, [[settingsPages.general ? '/settings/general' : "/settings/".concat(Object.keys(settingsPages)[0]), Object(external_wp_i18n_["__"])('Settings', 'woocommerce-admin')], page]);
10118
- },
10119
- wpOpenMenu: 'toplevel_page_woocommerce',
10120
- capability: 'manage_woocommerce'
10121
  });
10122
  }
10123
 
10124
- return Object(external_wp_hooks_["applyFilters"])(PAGES_FILTER, pages);
10125
  };
10126
  var controller_Controller = /*#__PURE__*/function (_Component) {
10127
  inherits_default()(Controller, _Component);
@@ -10147,7 +10082,7 @@ var controller_Controller = /*#__PURE__*/function (_Component) {
10147
  var baseQuery = Object(external_lodash_["omit"])(this.props.query, 'chartType', 'filter', 'paged');
10148
 
10149
  if (prevProps.query.paged > 1 && !Object(external_lodash_["isEqual"])(prevBaseQuery, baseQuery)) {
10150
- Object(external_wc_navigation_["getHistory"])().replace(Object(external_wc_navigation_["getNewPath"])({
10151
  paged: 1
10152
  }));
10153
  }
@@ -10167,9 +10102,9 @@ var controller_Controller = /*#__PURE__*/function (_Component) {
10167
  params = match.params;
10168
  window.wpNavMenuUrlUpdate(query);
10169
  window.wpNavMenuClassChange(page, url);
10170
- return Object(external_wp_element_["createElement"])(external_wp_element_["Suspense"], {
10171
- fallback: Object(external_wp_element_["createElement"])(external_wc_components_["Spinner"], null)
10172
- }, Object(external_wp_element_["createElement"])(page.container, {
10173
  params: params,
10174
  path: url,
10175
  pathMatch: page.path,
@@ -10179,7 +10114,7 @@ var controller_Controller = /*#__PURE__*/function (_Component) {
10179
  }]);
10180
 
10181
  return Controller;
10182
- }(external_wp_element_["Component"]);
10183
  /**
10184
  * Update an anchor's link in sidebar to include persisted queries. Leave excluded screens
10185
  * as is.
@@ -10194,7 +10129,7 @@ function updateLinkHref(item, nextQuery, excludedScreens) {
10194
  var search = Object(external_lodash_["last"])(item.href.split('?'));
10195
  var query = Object(lib["parse"])(search);
10196
  var path = query.path || 'homescreen';
10197
- var screen = Object(external_wc_navigation_["getScreenFromPath"])(path);
10198
  var isExcludedScreen = excludedScreens.includes(screen);
10199
  var href = 'admin.php?' + Object(lib["stringify"])(Object.assign(query, isExcludedScreen ? {} : nextQuery)); // Replace the href so you can see the url on hover.
10200
 
@@ -10202,14 +10137,14 @@ function updateLinkHref(item, nextQuery, excludedScreens) {
10202
 
10203
  item.onclick = function (e) {
10204
  e.preventDefault();
10205
- Object(external_wc_navigation_["getHistory"])().push(href);
10206
  };
10207
  }
10208
  } // Update's wc-admin links in wp-admin menu
10209
 
10210
  window.wpNavMenuUrlUpdate = function (query) {
10211
- var nextQuery = Object(external_wc_navigation_["getPersistedQuery"])(query);
10212
- var excludedScreens = Object(external_wc_navigation_["getQueryExcludedScreens"])();
10213
  Array.from(document.querySelectorAll('#adminmenu a')).forEach(function (item) {
10214
  return updateLinkHref(item, nextQuery, excludedScreens);
10215
  });
@@ -10249,90 +10184,101 @@ window.wpNavMenuClassChange = function (page, url) {
10249
  var wpWrap = document.querySelector('#wpwrap');
10250
  wpWrap.classList.remove('wp-responsive-open');
10251
  };
10252
- // EXTERNAL MODULE: ./node_modules/core-js/modules/web.url.js
10253
- var web_url = __webpack_require__(287);
10254
-
10255
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.slice.js
10256
- var es_array_slice = __webpack_require__(187);
10257
-
10258
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.join.js
10259
- var es_array_join = __webpack_require__(139);
10260
-
10261
- // EXTERNAL MODULE: external ["wp","components"]
10262
- var external_wp_components_ = __webpack_require__(4);
10263
-
10264
  // EXTERNAL MODULE: ./node_modules/classnames/index.js
10265
- var classnames = __webpack_require__(15);
10266
  var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
10267
 
10268
- // EXTERNAL MODULE: external ["wp","htmlEntities"]
10269
- var external_wp_htmlEntities_ = __webpack_require__(132);
10270
 
10271
- // EXTERNAL MODULE: ./packages/experimental/build-module/index.js
10272
- var build_module = __webpack_require__(105);
10273
 
10274
- // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/icon/index.js
10275
- var build_module_icon = __webpack_require__(426);
10276
 
10277
- // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/chevron-left.js
10278
- var chevron_left = __webpack_require__(597);
 
10279
 
10280
- // EXTERNAL MODULE: external ["wp","keycodes"]
10281
- var external_wp_keycodes_ = __webpack_require__(126);
 
10282
 
10283
- // EXTERNAL MODULE: ./client/header/style.scss
10284
- var header_style = __webpack_require__(423);
10285
 
10286
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
10287
- var slicedToArray = __webpack_require__(43);
10288
- var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
10289
 
10290
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.function.name.js
10291
- var es_function_name = __webpack_require__(129);
10292
 
10293
- // EXTERNAL MODULE: external ["wp","primitives"]
10294
- var external_wp_primitives_ = __webpack_require__(28);
10295
 
10296
- // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/inbox.js
10297
 
10298
 
10299
  /**
10300
  * WordPress dependencies
10301
  */
10302
 
10303
- var inbox_inbox = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
10304
  xmlns: "http://www.w3.org/2000/svg",
10305
  viewBox: "0 0 24 24"
10306
- }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
10307
  fillRule: "evenodd",
10308
- d: "M6 5.5h12a.5.5 0 01.5.5v7H14a2 2 0 11-4 0H5.5V6a.5.5 0 01.5-.5zm-.5 9V18a.5.5 0 00.5.5h12a.5.5 0 00.5-.5v-3.5h-3.337a3.5 3.5 0 01-6.326 0H5.5zM4 13V6a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H6a2 2 0 01-2-2v-5z",
10309
  clipRule: "evenodd"
10310
  }));
10311
- /* harmony default export */ var library_inbox = (inbox_inbox);
10312
- //# sourceMappingURL=inbox.js.map
10313
- // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/help.js
 
 
 
10314
 
10315
 
10316
  /**
10317
- * WordPress dependencies
10318
  */
10319
 
10320
- var help_help = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
10321
- xmlns: "http://www.w3.org/2000/svg",
10322
- viewBox: "0 0 24 24"
10323
- }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
10324
- d: "M12 4.75a7.25 7.25 0 100 14.5 7.25 7.25 0 000-14.5zM3.25 12a8.75 8.75 0 1117.5 0 8.75 8.75 0 01-17.5 0zM12 8.75a1.5 1.5 0 01.167 2.99c-.465.052-.917.44-.917 1.01V14h1.5v-.845A3 3 0 109 10.25h1.5a1.5 1.5 0 011.5-1.5zM11.25 15v1.5h1.5V15h-1.5z"
10325
- }));
10326
- /* harmony default export */ var library_help = (help_help);
10327
- //# sourceMappingURL=help.js.map
10328
- // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/external.js
10329
- var external = __webpack_require__(596);
10330
 
10331
- // EXTERNAL MODULE: ./client/header/activity-panel/style.scss
10332
- var activity_panel_style = __webpack_require__(424);
10333
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10334
  // EXTERNAL MODULE: ./client/inbox-panel/utils.js
10335
- var inbox_panel_utils = __webpack_require__(332);
10336
 
10337
  // CONCATENATED MODULE: ./client/header/activity-panel/unread-indicators.js
10338
  /**
@@ -10345,21 +10291,13 @@ var inbox_panel_utils = __webpack_require__(332);
10345
  */
10346
 
10347
 
10348
- var UNREAD_NOTES_QUERY = {
10349
- page: 1,
10350
- per_page: external_wc_data_["QUERY_DEFAULTS"].pageSize,
10351
- status: 'unactioned',
10352
- type: external_wc_data_["QUERY_DEFAULTS"].noteTypes,
10353
- orderby: 'date',
10354
- order: 'desc'
10355
- };
10356
  function getUnreadNotes(select) {
10357
- var _select = select(external_wc_data_["NOTES_STORE_NAME"]),
10358
  getNotes = _select.getNotes,
10359
  getNotesError = _select.getNotesError,
10360
  isResolving = _select.isResolving;
10361
 
10362
- var _select2 = select(external_wc_data_["USER_STORE_NAME"]),
10363
  getCurrentUser = _select2.getCurrentUser;
10364
 
10365
  var userData = getCurrentUser();
@@ -10367,25 +10305,70 @@ function getUnreadNotes(select) {
10367
 
10368
  if (!lastRead) {
10369
  return null;
10370
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
10371
 
10372
- getNotes(UNREAD_NOTES_QUERY);
10373
- var isError = Boolean(getNotesError('getNotes', [UNREAD_NOTES_QUERY]));
10374
- var isRequesting = isResolving('getNotes', [UNREAD_NOTES_QUERY]);
10375
 
10376
  if (isError || isRequesting) {
10377
  return null;
10378
  }
10379
 
10380
- var latestNotes = getNotes(UNREAD_NOTES_QUERY);
10381
  var unreadNotesCount = Object(inbox_panel_utils["a" /* getUnreadNotesCount */])(latestNotes, lastRead);
10382
  return unreadNotesCount > 0;
10383
  }
10384
- function getLowStockCount() {
10385
- return Object(wc_admin_settings["g" /* getSetting */])('lowStockCount', 0);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10386
  }
10387
- // CONCATENATED MODULE: ./client/header/activity-panel/tab/index.js
 
 
10388
 
 
 
 
 
10389
 
10390
 
10391
  /**
@@ -10401,15 +10384,23 @@ var tab_Tab = function Tab(_ref) {
10401
  unread = _ref.unread,
10402
  selected = _ref.selected,
10403
  isPanelOpen = _ref.isPanelOpen,
10404
- onTabClick = _ref.onTabClick;
 
10405
  var className = classnames_default()('woocommerce-layout__activity-panel-tab', {
10406
  'is-active': isPanelOpen && selected,
10407
  'has-unread': unread
10408
  });
 
 
 
 
 
 
10409
  var tabKey = "activity-panel-tab-".concat(name);
10410
- return Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
10411
  role: "tab",
10412
  className: className,
 
10413
  "aria-selected": selected,
10414
  "aria-controls": "activity-panel-".concat(name),
10415
  key: tabKey,
@@ -10417,509 +10408,256 @@ var tab_Tab = function Tab(_ref) {
10417
  onClick: function onClick() {
10418
  onTabClick(name);
10419
  }
10420
- }, icon, title, ' ', unread && Object(external_wp_element_["createElement"])("span", {
10421
  className: "screen-reader-text"
10422
- }, Object(external_wp_i18n_["__"])('unread activity', 'woocommerce-admin')));
10423
  };
10424
- // CONCATENATED MODULE: ./client/header/activity-panel/tabs/index.js
 
10425
 
 
 
10426
 
 
 
10427
 
 
 
 
 
10428
 
10429
 
10430
 
10431
- /**
10432
- * External dependencies
10433
- */
10434
 
 
10435
 
 
10436
 
10437
  /**
10438
- * Internal dependencies
10439
  */
10440
 
10441
 
10442
- var tabs_Tabs = function Tabs(_ref) {
10443
- var tabs = _ref.tabs,
10444
- _onTabClick = _ref.onTabClick,
10445
- selectedTabName = _ref.selectedTab,
10446
- _ref$tabOpen = _ref.tabOpen,
10447
- tabOpen = _ref$tabOpen === void 0 ? false : _ref$tabOpen;
10448
 
10449
- var _useState = Object(external_wp_element_["useState"])({
10450
- tabOpen: tabOpen,
10451
- currentTab: selectedTabName
10452
- }),
10453
- _useState2 = slicedToArray_default()(_useState, 2),
10454
- _useState2$ = _useState2[0],
10455
- tabIsOpenState = _useState2$.tabOpen,
10456
- currentTab = _useState2$.currentTab,
10457
- setTabState = _useState2[1]; // Keep state synced with props
10458
 
10459
 
10460
- Object(external_wp_element_["useEffect"])(function () {
10461
- setTabState({
10462
- tabOpen: tabOpen,
10463
- currentTab: selectedTabName
10464
- });
10465
- }, [tabOpen, selectedTabName]);
10466
- return Object(external_wp_element_["createElement"])(external_wp_components_["NavigableMenu"], {
10467
- role: "tablist",
10468
- orientation: "horizontal",
10469
- className: "woocommerce-layout__activity-panel-tabs"
10470
- }, tabs && tabs.map(function (tab, i) {
10471
- if (tab.component) {
10472
- var Comp = tab.component,
10473
- options = tab.options;
10474
- return Object(external_wp_element_["createElement"])(Comp, extends_default()({
10475
- key: i
10476
- }, options));
10477
- }
10478
 
10479
- return Object(external_wp_element_["createElement"])(tab_Tab, extends_default()({
10480
- key: i,
10481
- index: i,
10482
- isPanelOpen: tabIsOpenState,
10483
- selected: currentTab === tab.name
10484
- }, tab, {
10485
- onTabClick: function onTabClick() {
10486
- var isTabOpen = currentTab === tab.name || currentTab === '' ? !tabIsOpenState : true; // If a panel is being opened, or if an existing panel is already open and a different one is being opened, record a track.
10487
 
10488
- if (!isTabOpen || currentTab !== tab.name) {
10489
- Object(external_wc_tracks_["recordEvent"])('activity_panel_open', {
10490
- tab: tab.name
10491
- });
10492
- }
10493
 
10494
- setTabState({
10495
- tabOpen: isTabOpen,
10496
- currentTab: tab.name
10497
- });
10498
 
10499
- _onTabClick(tab, isTabOpen);
10500
- }
10501
- }));
10502
- }));
10503
- };
10504
- // CONCATENATED MODULE: ./client/header/activity-panel/setup-progress.js
10505
 
10506
- var setup_progress_SetupProgress = function SetupProgress() {
10507
- return Object(external_wp_element_["createElement"])("svg", {
10508
- className: "woocommerce-layout__activity-panel-tab-icon setup-progress",
10509
- width: "18",
10510
- height: "18",
10511
- viewBox: "0 0 24 24",
10512
- fill: "none",
10513
- xmlns: "http://www.w3.org/2000/svg"
10514
- }, Object(external_wp_element_["createElement"])("path", {
10515
- d: "M12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20Z",
10516
- stroke: "#DCDCDE",
10517
- strokeWidth: "2"
10518
- }), Object(external_wp_element_["createElement"])("path", {
10519
- d: "M4 12V12C4 16.4183 7.58172 20 12 20V20C16.4183 20 20 16.4183 20 12V12C20 7.58172 16.4183 4 12 4V4",
10520
- strokeWidth: "2",
10521
- strokeLinecap: "round"
10522
- }));
10523
- };
10524
- // CONCATENATED MODULE: ./client/header/activity-panel/display-options/icons/display.js
10525
 
 
10526
 
10527
- /**
10528
- * External dependencies
10529
- */
10530
 
10531
- var display_DisplayIcon = function DisplayIcon() {
10532
- return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])("svg", {
10533
- className: "woocommerce-layout__activity-panel-tab-icon",
10534
- width: "24",
10535
- height: "24",
10536
- viewBox: "3 3 24 24",
10537
- fill: "none",
10538
- xmlns: "http://www.w3.org/2000/svg"
10539
- }, Object(external_wp_element_["createElement"])("path", {
10540
- d: "M13.8053 15.3982C13.8053 15.7965 13.4867 16.1947 13.0089 16.1947H6.79646C6.55752 16.1947 6.39823 16.115 6.23894 15.9558C6.07965 15.7965 6 15.6372 6 15.3982V6.79646C6 6.63717 6.15929 6.39823 6.23894 6.23894C6.39823 6.07965 6.55752 6 6.79646 6H13.0089C13.4071 6 13.8053 6.31858 13.8053 6.79646V15.3982Z",
10541
- strokeWidth: "1.5",
10542
- strokeLinecap: "round",
10543
- strokeLinejoin: "round"
10544
- }), Object(external_wp_element_["createElement"])("path", {
10545
- d: "M23.9203 10.6195C23.9203 11.0177 23.6017 11.4159 23.1238 11.4159H16.9115C16.6725 11.4159 16.5132 11.3363 16.3539 11.177C16.1946 11.0177 16.115 10.8584 16.115 10.6195V6.79646C16.115 6.39823 16.4336 6 16.9115 6H23.1238C23.5221 6 23.9203 6.31858 23.9203 6.79646V10.6195Z",
10546
- strokeWidth: "1.5",
10547
- strokeLinecap: "round",
10548
- strokeLinejoin: "round"
10549
- }), Object(external_wp_element_["createElement"])("path", {
10550
- d: "M13.8053 23.2035C13.8053 23.4424 13.7257 23.6017 13.5664 23.761C13.4071 23.9203 13.2478 23.9999 13.0089 23.9999H6.79646C6.39823 23.9999 6 23.6813 6 23.2035V19.3804C6 19.1415 6.07965 18.9822 6.23894 18.8229C6.39823 18.6636 6.55752 18.584 6.79646 18.584H13.0089C13.4071 18.584 13.8053 18.9026 13.8053 19.3804V23.2035Z",
10551
- strokeWidth: "1.5",
10552
- strokeLinecap: "round",
10553
- strokeLinejoin: "round"
10554
- }), Object(external_wp_element_["createElement"])("path", {
10555
- d: "M16.9912 23.9999C16.7522 23.9999 16.5929 23.9202 16.4336 23.7609C16.2743 23.6016 16.1947 23.4423 16.1947 23.2034V14.6016C16.1947 14.3627 16.2743 14.2034 16.4336 14.0441C16.5929 13.8848 16.7522 13.8052 16.9912 13.8052H23.2036C23.4425 13.8052 23.6018 13.8848 23.7611 14.0441C23.9204 14.2034 24 14.3627 24 14.6016V23.2034C24 23.6016 23.6814 23.9999 23.2036 23.9999H16.9912Z",
10556
- strokeWidth: "1.5",
10557
- strokeLinecap: "round",
10558
- strokeLinejoin: "round"
10559
- })), Object(external_wp_i18n_["__"])('Display', 'woocommerce-admin'));
10560
- };
10561
- // CONCATENATED MODULE: ./client/header/activity-panel/display-options/icons/single-column.js
10562
 
10563
- var single_column_SingleColumnIcon = function SingleColumnIcon() {
10564
- return Object(external_wp_element_["createElement"])("svg", {
10565
- className: "woocommerce-layout__activity-panel-tab-icon",
10566
- width: "12",
10567
- height: "14",
10568
- viewBox: "0 0 12 14",
10569
- fill: "none",
10570
- xmlns: "http://www.w3.org/2000/svg"
10571
- }, Object(external_wp_element_["createElement"])("rect", {
10572
- x: "0.5",
10573
- y: "0.5",
10574
- width: "11",
10575
- height: "13",
10576
- strokeWidth: "1"
10577
- }));
10578
- };
10579
- // CONCATENATED MODULE: ./client/header/activity-panel/display-options/icons/two-columns.js
 
 
 
 
 
10580
 
10581
- var two_columns_TwoColumnsIcon = function TwoColumnsIcon() {
10582
- return Object(external_wp_element_["createElement"])("svg", {
10583
- className: "woocommerce-layout__activity-panel-tab-icon",
10584
- width: "18",
10585
- height: "14",
10586
- viewBox: "0 0 18 14",
10587
- fill: "none",
10588
- xmlns: "http://www.w3.org/2000/svg"
10589
- }, Object(external_wp_element_["createElement"])("rect", {
10590
- x: "0.5",
10591
- y: "0.5",
10592
- width: "7",
10593
- height: "13",
10594
- strokeWidth: "1"
10595
- }), Object(external_wp_element_["createElement"])("rect", {
10596
- x: "9.5",
10597
- y: "0.5",
10598
- width: "7",
10599
- height: "13",
10600
- strokeWidth: "1"
10601
- }));
10602
- };
10603
- // CONCATENATED MODULE: ./client/header/activity-panel/display-options/index.js
10604
 
 
 
 
10605
 
10606
- /**
10607
- * External dependencies
10608
- */
10609
 
 
10610
 
 
 
10611
 
 
 
 
 
10612
 
 
 
 
 
 
 
 
 
 
10613
 
10614
- /**
10615
- * Internal dependencies
10616
- */
10617
 
 
 
 
 
10618
 
 
 
 
 
 
 
10619
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10620
 
10621
- var LAYOUTS = [{
10622
- value: 'single_column',
10623
- label: Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(single_column_SingleColumnIcon, null), Object(external_wp_i18n_["__"])('Single column', 'woocommerce-admin'))
10624
- }, {
10625
- value: 'two_columns',
10626
- label: Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(two_columns_TwoColumnsIcon, null), Object(external_wp_i18n_["__"])('Two columns', 'woocommerce-admin'))
10627
- }];
10628
- var display_options_DisplayOptions = function DisplayOptions() {
10629
- var defaultHomescreenLayout = Object(external_wp_data_["useSelect"])(function (select) {
10630
- var _select = select(external_wc_data_["OPTIONS_STORE_NAME"]),
10631
- getOption = _select.getOption;
10632
-
10633
- return getOption('woocommerce_default_homepage_layout') || 'single_column';
10634
- });
10635
-
10636
- var _useUserPreferences = Object(external_wc_data_["useUserPreferences"])(),
10637
- updateUserPreferences = _useUserPreferences.updateUserPreferences,
10638
- layout = _useUserPreferences.homepage_layout;
10639
-
10640
- return Object(external_wp_element_["createElement"])(external_wp_components_["DropdownMenu"], {
10641
- icon: Object(external_wp_element_["createElement"])(display_DisplayIcon, null)
10642
- /* translators: button label text should, if possible, be under 16 characters. */
10643
- ,
10644
- label: Object(external_wp_i18n_["__"])('Display options', 'woocommerce-admin'),
10645
- toggleProps: {
10646
- className: 'woocommerce-layout__activity-panel-tab display-options',
10647
- onClick: function onClick() {
10648
- return Object(external_wc_tracks_["recordEvent"])('homescreen_display_click');
10649
- }
10650
  },
10651
- popoverProps: {
10652
- className: 'woocommerce-layout__activity-panel-popover'
10653
- }
10654
- }, function (_ref) {
10655
- var onClose = _ref.onClose;
10656
- return Object(external_wp_element_["createElement"])(external_wp_components_["MenuGroup"], {
10657
- className: "woocommerce-layout__homescreen-display-options",
10658
- label: Object(external_wp_i18n_["__"])('Layout', 'woocommerce-admin')
10659
- }, Object(external_wp_element_["createElement"])(external_wp_components_["MenuItemsChoice"], {
10660
- choices: LAYOUTS,
10661
- onSelect: function onSelect(newLayout) {
10662
- updateUserPreferences({
10663
- homepage_layout: newLayout
10664
- });
10665
- onClose();
10666
- Object(external_wc_tracks_["recordEvent"])('homescreen_display_option', {
10667
- display_option: newLayout
 
 
 
 
 
 
 
 
 
 
 
 
 
10668
  });
10669
- },
10670
- value: layout || defaultHomescreenLayout
10671
- }));
10672
  });
10673
- };
10674
- // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/close.js
10675
- var library_close = __webpack_require__(595);
10676
-
10677
- // EXTERNAL MODULE: ./client/header/activity-panel/highlight-tooltip/style.scss
10678
- var highlight_tooltip_style = __webpack_require__(425);
10679
 
10680
- // CONCATENATED MODULE: ./client/header/activity-panel/highlight-tooltip/index.js
 
 
 
10681
 
 
10682
 
10683
 
10684
  /**
10685
  * External dependencies
10686
  */
10687
 
10688
-
10689
-
10690
-
10691
-
10692
-
10693
  /**
10694
- * Internal dependencies
10695
  */
10696
 
10697
 
10698
- var SHOW_CLASS = 'highlight-tooltip__show';
10699
-
10700
- function HighlightTooltip(_ref) {
10701
- var title = _ref.title,
10702
- closeButtonText = _ref.closeButtonText,
10703
- content = _ref.content,
10704
- _ref$show = _ref.show,
10705
- show = _ref$show === void 0 ? true : _ref$show,
10706
- id = _ref.id,
10707
- onClose = _ref.onClose,
10708
- delay = _ref.delay,
10709
- _ref$onShow = _ref.onShow,
10710
- onShow = _ref$onShow === void 0 ? external_lodash_["noop"] : _ref$onShow,
10711
- _ref$useAnchor = _ref.useAnchor,
10712
- useAnchor = _ref$useAnchor === void 0 ? false : _ref$useAnchor;
10713
-
10714
- var _useState = Object(external_wp_element_["useState"])(delay > 0 ? null : show),
10715
- _useState2 = slicedToArray_default()(_useState, 2),
10716
- showHighlight = _useState2[0],
10717
- setShowHighlight = _useState2[1];
10718
-
10719
- var _useState3 = Object(external_wp_element_["useState"])(null),
10720
- _useState4 = slicedToArray_default()(_useState3, 2),
10721
- node = _useState4[0],
10722
- setNode = _useState4[1];
10723
-
10724
- var _useState5 = Object(external_wp_element_["useState"])(null),
10725
- _useState6 = slicedToArray_default()(_useState5, 2),
10726
- anchorRect = _useState6[0],
10727
- setAnchorRect = _useState6[1];
10728
-
10729
- Object(external_wp_element_["useEffect"])(function () {
10730
- var element = document.getElementById(id);
10731
- var container, parent;
10732
-
10733
- if (element && !node) {
10734
- // Add tooltip container
10735
- if (!useAnchor) {
10736
- parent = element.parentElement;
10737
- } else {
10738
- parent = document.createElement('div');
10739
- document.body.appendChild(parent);
10740
- }
10741
-
10742
- container = document.createElement('div');
10743
- container.classList.add('highlight-tooltip__container');
10744
- parent.appendChild(container);
10745
- setNode(container);
10746
- }
10747
-
10748
- var timeoutId = triggerShowTooltip(container);
10749
- return function () {
10750
- if (container) {
10751
- var parentElement = container.parentElement;
10752
- parentElement.removeChild(container);
10753
-
10754
- if (useAnchor) {
10755
- parentElement.remove();
10756
- }
10757
- }
10758
-
10759
- if (timeoutId) {
10760
- clearTimeout(timeoutId);
10761
- }
10762
- };
10763
- }, []);
10764
- Object(external_wp_element_["useEffect"])(function () {
10765
- if (!showHighlight && node) {
10766
- node.classList.remove(SHOW_CLASS);
10767
- }
10768
- }, [showHighlight]);
10769
- Object(external_wp_element_["useEffect"])(function () {
10770
- if (show !== showHighlight && showHighlight !== null && node) {
10771
- setShowHighlight(show);
10772
-
10773
- if (!show) {
10774
- node.classList.remove(SHOW_CLASS);
10775
- } else if (node) {
10776
- triggerShowTooltip(node);
10777
- }
10778
- }
10779
- }, [show]);
10780
- Object(external_wp_element_["useLayoutEffect"])(function () {
10781
- window.addEventListener('resize', updateSize);
10782
- return function () {
10783
- return window.removeEventListener('resize', updateSize);
10784
- };
10785
- }, []);
10786
-
10787
- function updateSize() {
10788
- if (useAnchor) {
10789
- var element = document.getElementById(id);
10790
- setAnchorRect(element.getBoundingClientRect());
10791
- }
10792
- }
10793
-
10794
- var triggerShowTooltip = function triggerShowTooltip(container) {
10795
- var timeoutId = null;
10796
-
10797
- if (delay > 0) {
10798
- timeoutId = setTimeout(function () {
10799
- timeoutId = null;
10800
- showTooltip(container);
10801
- }, delay);
10802
- } else if (!showHighlight) {
10803
- showTooltip(container);
10804
- }
10805
-
10806
- return timeoutId;
10807
- };
10808
-
10809
- var showTooltip = function showTooltip(container) {
10810
- var element = document.getElementById(id);
10811
-
10812
- if (element && useAnchor) {
10813
- setAnchorRect(element.getBoundingClientRect());
10814
- }
10815
-
10816
- if (container) {
10817
- container.classList.add(SHOW_CLASS);
10818
- }
10819
-
10820
- setShowHighlight(true);
10821
- onShow();
10822
- };
10823
-
10824
- var triggerClose = function triggerClose() {
10825
- setShowHighlight(false);
10826
 
10827
- if (onClose) {
10828
- onClose();
10829
- }
10830
- };
 
 
10831
 
10832
- if (!node) {
10833
  return null;
10834
  }
10835
 
10836
- return Object(external_wp_element_["createPortal"])(Object(external_wp_element_["createElement"])("div", {
10837
- className: "highlight-tooltip__portal"
10838
- }, showHighlight ? Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["IsolatedEventContainer"], {
10839
- className: "highlight-tooltip__overlay"
10840
- }), Object(external_wp_element_["createElement"])(external_wp_components_["Popover"], {
10841
- className: "highlight-tooltip__popover",
10842
- noArrow: false,
10843
- anchorRect: anchorRect,
10844
- focusOnMount: "container"
10845
- }, Object(external_wp_element_["createElement"])(external_wp_components_["Card"], {
10846
- size: "medium"
10847
- }, Object(external_wp_element_["createElement"])(external_wp_components_["CardHeader"], null, title, Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
10848
- isSmall: true,
10849
- onClick: triggerClose,
10850
- icon: library_close["a" /* default */]
10851
- })), Object(external_wp_element_["createElement"])(external_wp_components_["CardBody"], null, content || null), Object(external_wp_element_["createElement"])(external_wp_components_["CardFooter"], {
10852
- isBorderless: true
10853
- }, Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
10854
- size: "small",
10855
- isPrimary: true,
10856
- onClick: triggerClose
10857
- }, closeButtonText || Object(external_wp_i18n_["__"])('Close', 'woocommerce-admin')))))) : null), node);
10858
- }
10859
-
10860
- HighlightTooltip.propTypes = {
10861
- /**
10862
- * The id of the element it should highlight, should be unique per HighlightTooltip.
10863
- */
10864
- id: prop_types_default.a.string.isRequired,
10865
-
10866
- /**
10867
- * Title of the popup
10868
- */
10869
- title: prop_types_default.a.string.isRequired,
10870
-
10871
- /**
10872
- * Text of the close button.
10873
- */
10874
- closeButtonText: prop_types_default.a.string.isRequired,
10875
-
10876
- /**
10877
- * Content of the popup, can be either text or react element.
10878
- */
10879
- content: prop_types_default.a.oneOfType([prop_types_default.a.string, prop_types_default.a.node]),
10880
-
10881
- /**
10882
- * If to show the popup, defaults to true.
10883
- */
10884
- show: prop_types_default.a.bool,
10885
-
10886
- /**
10887
- * Callback for when the user closes the popup.
10888
- */
10889
- onClose: prop_types_default.a.func,
10890
-
10891
- /**
10892
- * This will delay the popup from appearing by the number of ms.
10893
- */
10894
- delay: prop_types_default.a.number,
10895
 
10896
- /**
10897
- * A callback for when the tooltip is shown.
10898
- */
10899
- onShow: prop_types_default.a.func,
10900
 
10901
- /**
10902
- * useAnchor, will append the tooltip to the body tag, and make use of the anchorRect to display the tooltip.
10903
- * Defaults to false.
10904
- */
10905
- useAnchor: prop_types_default.a.bool
10906
- };
10907
 
10908
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.find.js
10909
- var es_array_find = __webpack_require__(192);
10910
 
10911
- // EXTERNAL MODULE: external ["wp","dom"]
10912
- var external_wp_dom_ = __webpack_require__(262);
10913
 
10914
- // CONCATENATED MODULE: ./client/hooks/useFocusOnMount.js
10915
 
10916
 
10917
- /**
10918
- * This hook was directly copied from https://github.com/WordPress/gutenberg/blob/master/packages/compose/src/hooks/use-focus-on-mount/index.js
10919
- * to avoid its absence in older versions of WordPress.
10920
- *
10921
- * This can be removed once the minimum supported version of WordPress includes this hook.
10922
- */
10923
 
10924
  /**
10925
  * External dependencies
@@ -10927,341 +10665,274 @@ var external_wp_dom_ = __webpack_require__(262);
10927
 
10928
 
10929
  /**
10930
- * Hook used to focus the first tabbable element on mount.
10931
- *
10932
- * @param {boolean|string} focusOnMount Focus on mount mode.
10933
- * @return {Function} Ref callback.
10934
- *
10935
- * @example
10936
- * ```js
10937
- * import { useFocusOnMount } from '@wordpress/compose';
10938
- *
10939
- * const WithFocusOnMount = () => {
10940
- * const ref = useFocusOnMount()
10941
- * return (
10942
- * <div ref={ ref }>
10943
- * <Button />
10944
- * <Button />
10945
- * </div>
10946
- * );
10947
- * }
10948
- * ```
10949
  */
10950
 
10951
- function useFocusOnMount() {
10952
- var focusOnMount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'firstElement';
10953
- var focusOnMountRef = Object(external_wp_element_["useRef"])(focusOnMount);
10954
- Object(external_wp_element_["useEffect"])(function () {
10955
- focusOnMountRef.current = focusOnMount;
10956
- }, [focusOnMount]);
10957
- return Object(external_wp_element_["useCallback"])(function (node) {
10958
- if (!node || focusOnMountRef.current === false) {
10959
- return;
10960
- }
10961
-
10962
- if (node.contains(node.ownerDocument.activeElement)) {
10963
- return;
10964
- }
10965
-
10966
- var target = node;
10967
-
10968
- if (focusOnMountRef.current === 'firstElement') {
10969
- var firstTabbable = external_wp_dom_["focus"].tabbable.find(node)[0];
10970
 
10971
- if (firstTabbable) {
10972
- target = firstTabbable;
10973
- }
10974
- }
10975
-
10976
- target.focus();
10977
- }, []);
10978
- }
10979
- // CONCATENATED MODULE: ./client/hooks/useFocusOutside.js
10980
  /**
10981
- * External dependencies
10982
  */
10983
 
10984
 
10985
- /**
10986
- * Input types which are classified as button types, for use in considering
10987
- * whether element is a (focus-normalized) button.
10988
- *
10989
- * @type {string[]}
10990
- */
10991
-
10992
- var INPUT_BUTTON_TYPES = ['button', 'submit'];
10993
- /**
10994
- * @typedef {HTMLButtonElement | HTMLLinkElement | HTMLInputElement} FocusNormalizedButton
10995
- */
10996
- // Disable reason: Rule doesn't support predicate return types
10997
 
10998
- /* eslint-disable jsdoc/valid-types */
10999
 
11000
  /**
11001
- * Returns true if the given element is a button element subject to focus
11002
- * normalization, or false otherwise.
11003
  *
11004
- * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus
11005
- *
11006
- * @param {EventTarget} eventTarget The target from a mouse or touch event.
 
 
 
 
 
 
11007
  *
11008
- * @return {eventTarget is FocusNormalizedButton} Whether element is a button.
11009
  */
11010
 
11011
- function isFocusNormalizedButton(eventTarget) {
11012
- if (!(eventTarget instanceof window.HTMLElement)) {
11013
- return false;
11014
- }
11015
-
11016
- switch (eventTarget.nodeName) {
11017
- case 'A':
11018
- case 'BUTTON':
11019
- return true;
11020
-
11021
- case 'INPUT':
11022
- return Object(external_lodash_["includes"])(INPUT_BUTTON_TYPES,
11023
- /** @type {HTMLInputElement} */
11024
- eventTarget.type);
 
 
 
 
 
 
 
 
 
 
 
11025
  }
11026
 
11027
- return false;
 
 
 
 
 
 
 
 
 
 
 
11028
  }
11029
- /* eslint-enable jsdoc/valid-types */
11030
-
11031
- /**
11032
- * @typedef {import('react').SyntheticEvent} SyntheticEvent
11033
- */
11034
 
11035
- /**
11036
- * @callback EventCallback
11037
- * @param {SyntheticEvent} event input related event.
11038
- */
11039
 
11040
  /**
11041
- * @typedef FocusOutsideReactElement
11042
- * @property {EventCallback} handleFocusOutside callback for a focus outside event.
11043
  */
11044
 
11045
  /**
11046
- * @typedef {import('react').MutableRefObject<FocusOutsideReactElement | undefined>} FocusOutsideRef
11047
  */
11048
 
11049
- /**
11050
- * @typedef {Object} FocusOutsideReturnValue
11051
- * @property {EventCallback} onFocus An event handler for focus events.
11052
- * @property {EventCallback} onBlur An event handler for blur events.
11053
- * @property {EventCallback} onMouseDown An event handler for mouse down events.
11054
- * @property {EventCallback} onMouseUp An event handler for mouse up events.
11055
- * @property {EventCallback} onTouchStart An event handler for touch start events.
11056
- * @property {EventCallback} onTouchEnd An event handler for touch end events.
11057
- */
11058
 
11059
  /**
11060
- * A react hook that can be used to check whether focus has moved outside the
11061
- * element the event handlers are bound to.
11062
- *
11063
- * @param {EventCallback} onFocusOutside A callback triggered when focus moves outside
11064
- * the element the event handlers are bound to.
11065
- *
11066
- * @return {FocusOutsideReturnValue} An object containing event handlers. Bind the event handlers
11067
- * to a wrapping element element to capture when focus moves
11068
- * outside that element.
11069
  */
11070
 
11071
 
11072
- function useFocusOutside(onFocusOutside) {
11073
- var currentOnFocusOutside = Object(external_wp_element_["useRef"])(onFocusOutside);
11074
- Object(external_wp_element_["useEffect"])(function () {
11075
- currentOnFocusOutside.current = onFocusOutside;
11076
- }, [onFocusOutside]);
11077
- var preventBlurCheck = Object(external_wp_element_["useRef"])(false);
11078
- /**
11079
- * @type {import('react').MutableRefObject<number | undefined>}
11080
- */
11081
-
11082
- var blurCheckTimeoutId = Object(external_wp_element_["useRef"])();
11083
- /**
11084
- * Cancel a blur check timeout.
11085
- */
11086
-
11087
- var cancelBlurCheck = Object(external_wp_element_["useCallback"])(function () {
11088
- clearTimeout(blurCheckTimeoutId.current);
11089
- }, []); // Cancel blur checks on unmount.
11090
-
11091
- Object(external_wp_element_["useEffect"])(function () {
11092
- return function () {
11093
- return cancelBlurCheck();
11094
- };
11095
- }, []); // Cancel a blur check if the callback or ref is no longer provided.
11096
-
11097
- Object(external_wp_element_["useEffect"])(function () {
11098
- if (!onFocusOutside) {
11099
- cancelBlurCheck();
11100
- }
11101
- }, [onFocusOutside, cancelBlurCheck]);
11102
- /**
11103
- * Handles a mousedown or mouseup event to respectively assign and
11104
- * unassign a flag for preventing blur check on button elements. Some
11105
- * browsers, namely Firefox and Safari, do not emit a focus event on
11106
- * button elements when clicked, while others do. The logic here
11107
- * intends to normalize this as treating click on buttons as focus.
11108
- *
11109
- * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus
11110
- *
11111
- * @param {SyntheticEvent} event Event for mousedown or mouseup.
11112
- */
11113
-
11114
- var normalizeButtonFocus = Object(external_wp_element_["useCallback"])(function (event) {
11115
- var type = event.type,
11116
- target = event.target;
11117
- var isInteractionEnd = Object(external_lodash_["includes"])(['mouseup', 'touchend'], type);
11118
-
11119
- if (isInteractionEnd) {
11120
- preventBlurCheck.current = false;
11121
- } else if (isFocusNormalizedButton(target)) {
11122
- preventBlurCheck.current = true;
11123
- }
11124
- }, []);
11125
- /**
11126
- * A callback triggered when a blur event occurs on the element the handler
11127
- * is bound to.
11128
- *
11129
- * Calls the `onFocusOutside` callback in an immediate timeout if focus has
11130
- * move outside the bound element and is still within the document.
11131
- *
11132
- * @param {SyntheticEvent} event Blur event.
11133
- */
11134
-
11135
- var queueBlurCheck = Object(external_wp_element_["useCallback"])(function (event) {
11136
- // React does not allow using an event reference asynchronously
11137
- // due to recycling behavior, except when explicitly persisted.
11138
- event.persist(); // Skip blur check if clicking button. See `normalizeButtonFocus`.
11139
-
11140
- if (preventBlurCheck.current) {
11141
- return;
11142
- }
11143
-
11144
- blurCheckTimeoutId.current = setTimeout(function () {
11145
- // If document is not focused then focus should remain
11146
- // inside the wrapped component and therefore we cancel
11147
- // this blur event thereby leaving focus in place.
11148
- // https://developer.mozilla.org/en-US/docs/Web/API/Document/hasFocus.
11149
- if (!document.hasFocus()) {
11150
- event.preventDefault();
11151
- return;
11152
- }
11153
-
11154
- if (typeof currentOnFocusOutside.current === 'function') {
11155
- currentOnFocusOutside.current(event);
11156
  }
11157
- }, 0);
11158
- }, []);
11159
- return {
11160
- onFocus: cancelBlurCheck,
11161
- onMouseDown: normalizeButtonFocus,
11162
- onMouseUp: normalizeButtonFocus,
11163
- onTouchStart: normalizeButtonFocus,
11164
- onTouchEnd: normalizeButtonFocus,
11165
- onBlur: queueBlurCheck
11166
- };
11167
  }
11168
- // CONCATENATED MODULE: ./client/header/activity-panel/panel.js
11169
-
11170
 
11171
 
11172
  /**
11173
  * External dependencies
11174
  */
11175
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11176
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11177
 
11178
- /**
11179
- * Internal dependencies
11180
- */
11181
-
11182
-
11183
-
11184
- var panel_Panel = function Panel(_ref) {
11185
- var content = _ref.content,
11186
- isPanelOpen = _ref.isPanelOpen,
11187
- isPanelSwitching = _ref.isPanelSwitching,
11188
- currentTab = _ref.currentTab,
11189
- tab = _ref.tab,
11190
- closePanel = _ref.closePanel,
11191
- clearPanel = _ref.clearPanel;
11192
- var panelClass = 'woocommerce-layout__activity-panel-wrapper';
11193
-
11194
- var handleFocusOutside = function handleFocusOutside(event) {
11195
- var isClickOnModalOrSnackbar = event.relatedTarget && (event.relatedTarget.closest('.woocommerce-inbox-dismiss-confirmation_modal') || event.relatedTarget.closest('.components-snackbar__action'));
11196
-
11197
- if (isPanelOpen && !isClickOnModalOrSnackbar) {
11198
- closePanel();
11199
- }
11200
- };
11201
-
11202
- var possibleFocusPanel = function possibleFocusPanel() {
11203
- if (!containerRef.current || !isPanelOpen || !tab) {
11204
- return;
11205
- }
11206
-
11207
- focusOnMountRef(containerRef.current);
11208
- };
11209
-
11210
- var finishTransition = function finishTransition(e) {
11211
- if (e && e.propertyName === 'transform') {
11212
- clearPanel();
11213
- possibleFocusPanel();
11214
- }
11215
- };
11216
-
11217
- var focusOnMountRef = useFocusOnMount();
11218
- var useFocusOutsideProps = useFocusOutside(handleFocusOutside);
11219
- var containerRef = Object(external_wp_element_["useRef"])(null);
11220
- var mergedContainerRef = Object(external_wp_element_["useCallback"])(function (node) {
11221
- containerRef.current = node;
11222
- focusOnMountRef(node);
11223
- }, []);
11224
-
11225
- if (!tab) {
11226
- return Object(external_wp_element_["createElement"])("div", {
11227
- className: panelClass
11228
- });
11229
- }
11230
-
11231
- if (!content) {
11232
- return null;
11233
- }
11234
-
11235
- var classNames = classnames_default()(panelClass, {
11236
- 'is-open': isPanelOpen,
11237
- 'is-switching': isPanelSwitching
11238
- });
11239
- return Object(external_wp_element_["createElement"])("div", extends_default()({
11240
- className: classNames,
11241
- tabIndex: 0,
11242
- role: "tabpanel",
11243
- "aria-label": tab.title,
11244
- onTransitionEnd: finishTransition
11245
- }, useFocusOutsideProps, {
11246
- ref: mergedContainerRef
11247
- }), Object(external_wp_element_["createElement"])("div", {
11248
- className: "woocommerce-layout__activity-panel-content",
11249
- key: 'activity-panel-' + currentTab,
11250
- id: 'activity-panel-' + currentTab
11251
- }, Object(external_wp_element_["createElement"])(external_wp_element_["Suspense"], {
11252
- fallback: Object(external_wp_element_["createElement"])(external_wc_components_["Spinner"], null)
11253
- }, content)));
11254
  };
11255
- /* harmony default export */ var panel = (panel_Panel);
11256
- // CONCATENATED MODULE: ./client/header/activity-panel/index.js
 
 
 
 
 
11257
 
11258
 
11259
 
11260
 
 
 
 
 
11261
 
11262
 
11263
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11264
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11265
 
11266
 
11267
 
@@ -11272,17 +10943,88 @@ var panel_Panel = function Panel(_ref) {
11272
 
11273
 
11274
 
 
 
 
 
 
11275
 
 
 
 
 
 
 
 
11276
 
 
 
 
 
 
 
 
 
 
11277
 
11278
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11279
 
 
 
 
 
 
11280
 
 
 
 
 
11281
 
11282
- /**
11283
- * Internal dependencies
11284
- */
 
 
 
11285
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11286
 
11287
 
11288
 
@@ -11291,263 +11033,386 @@ var panel_Panel = function Panel(_ref) {
11291
 
11292
 
11293
 
11294
- var HelpPanel = Object(external_wp_element_["lazy"])(function () {
11295
- return Promise.all(/* import() | activity-panels-help */[__webpack_require__.e(54), __webpack_require__.e(6), __webpack_require__.e(7)]).then(__webpack_require__.bind(null, 705));
11296
- });
11297
- var InboxPanel = Object(external_wp_element_["lazy"])(function () {
11298
- return Promise.all(/* import() | activity-panels-inbox */[__webpack_require__.e(1), __webpack_require__.e(3), __webpack_require__.e(4), __webpack_require__.e(8)]).then(__webpack_require__.bind(null, 689));
11299
- });
11300
- var activity_panel_ActivityPanel = function ActivityPanel(_ref) {
11301
- var isEmbedded = _ref.isEmbedded,
11302
- query = _ref.query,
11303
- userPreferencesData = _ref.userPreferencesData;
11304
 
11305
- var _useState = Object(external_wp_element_["useState"])(''),
11306
- _useState2 = slicedToArray_default()(_useState, 2),
11307
- currentTab = _useState2[0],
11308
- setCurrentTab = _useState2[1];
11309
 
11310
- var _useState3 = Object(external_wp_element_["useState"])(false),
11311
- _useState4 = slicedToArray_default()(_useState3, 2),
11312
- isPanelClosing = _useState4[0],
11313
- setIsPanelClosing = _useState4[1];
11314
-
11315
- var _useState5 = Object(external_wp_element_["useState"])(false),
11316
- _useState6 = slicedToArray_default()(_useState5, 2),
11317
- isPanelOpen = _useState6[0],
11318
- setIsPanelOpen = _useState6[1];
11319
-
11320
- var _useState7 = Object(external_wp_element_["useState"])(false),
11321
- _useState8 = slicedToArray_default()(_useState7, 2),
11322
- isPanelSwitching = _useState8[0],
11323
- setIsPanelSwitching = _useState8[1];
11324
-
11325
- var _useSelect = Object(external_wp_data_["useSelect"])(function (select) {
11326
- var _select = select(external_wc_data_["OPTIONS_STORE_NAME"]),
11327
- getOption = _select.getOption,
11328
- isResolving = _select.isResolving;
11329
 
11330
- return {
11331
- hasUnreadNotes: getUnreadNotes(select),
11332
- requestingTaskListOptions: isResolving('getOption', ['woocommerce_task_list_complete']) || isResolving('getOption', ['woocommerce_task_list_hidden']),
11333
- setupTaskListComplete: getOption('woocommerce_task_list_complete') === 'yes',
11334
- setupTaskListHidden: getOption('woocommerce_task_list_hidden') === 'yes',
11335
- trackedCompletedTasks: getOption('woocommerce_task_list_tracked_completed_tasks') || []
11336
- };
11337
- }),
11338
- hasUnreadNotes = _useSelect.hasUnreadNotes,
11339
- requestingTaskListOptions = _useSelect.requestingTaskListOptions,
11340
- setupTaskListComplete = _useSelect.setupTaskListComplete,
11341
- setupTaskListHidden = _useSelect.setupTaskListHidden,
11342
- trackedCompletedTasks = _useSelect.trackedCompletedTasks;
11343
 
11344
- var _useDispatch = Object(external_wp_data_["useDispatch"])(external_wc_data_["OPTIONS_STORE_NAME"]),
11345
- updateOptions = _useDispatch.updateOptions;
11346
 
11347
- var _useUser = Object(external_wc_data_["useUser"])(),
11348
- currentUserCan = _useUser.currentUserCan;
11349
 
11350
- var togglePanel = function togglePanel(_ref2, isTabOpen) {
11351
- var tabName = _ref2.name;
11352
- var panelSwitching = tabName !== currentTab && currentTab !== '' && isTabOpen && isPanelOpen;
11353
 
11354
- if (isPanelClosing) {
11355
- return;
11356
- }
11357
 
11358
- setCurrentTab(tabName);
11359
- setIsPanelOpen(isTabOpen);
11360
- setIsPanelSwitching(panelSwitching);
11361
- };
11362
 
11363
- var _closePanel = function closePanel() {
11364
- setIsPanelClosing(true);
11365
- setIsPanelOpen(false);
11366
- };
11367
 
11368
- var _clearPanel = function clearPanel() {
11369
- if (!isPanelOpen) {
11370
- setIsPanelClosing(false);
11371
- setIsPanelSwitching(false);
11372
- setCurrentTab('');
11373
- }
11374
- };
11375
 
11376
- var isHomescreen = function isHomescreen() {
11377
- return query.page === 'wc-admin' && !query.path;
11378
- };
11379
 
11380
- var isPerformingSetupTask = function isPerformingSetupTask() {
11381
- return query.task && !query.path && (requestingTaskListOptions === true || setupTaskListHidden === false && setupTaskListComplete === false);
11382
- }; // @todo Pull in dynamic unread status/count
11383
 
11384
 
11385
- var getTabs = function getTabs() {
11386
- var inbox = {
11387
- name: 'inbox',
11388
- title: Object(external_wp_i18n_["__"])('Inbox', 'woocommerce-admin'),
11389
- icon: Object(external_wp_element_["createElement"])(build_module_icon["a" /* default */], {
11390
- icon: library_inbox
11391
- }),
11392
- unread: hasUnreadNotes,
11393
- visible: (isEmbedded || !isHomescreen()) && !isPerformingSetupTask()
11394
- };
11395
- var setup = {
11396
- name: 'setup',
11397
- title: Object(external_wp_i18n_["__"])('Finish setup', 'woocommerce-admin'),
11398
- icon: Object(external_wp_element_["createElement"])(setup_progress_SetupProgress, null),
11399
- onClick: function onClick() {
11400
- var currentLocation = window.location.href;
11401
- var homescreenLocation = Object(wc_admin_settings["f" /* getAdminLink */])('admin.php?page=wc-admin'); // Don't navigate if we're already on the homescreen, this will cause an infinite loop
11402
 
11403
- if (currentLocation !== homescreenLocation) {
11404
- // Ensure that if the user is trying to get to the task list they can see it even if
11405
- // it was dismissed.
11406
- if (setupTaskListHidden === 'no') {
11407
- redirectToHomeScreen();
11408
- } else {
11409
- updateOptions({
11410
- woocommerce_task_list_hidden: 'no'
11411
- }).then(redirectToHomeScreen);
11412
- }
11413
- }
11414
 
11415
- return null;
11416
- },
11417
- visible: currentUserCan('manage_woocommerce') && !setupTaskListComplete && !setupTaskListHidden && !isPerformingSetupTask() && (!isHomescreen() || isEmbedded)
11418
- };
11419
- var help = {
11420
- name: 'help',
11421
- title: Object(external_wp_i18n_["__"])('Help', 'woocommerce-admin'),
11422
- icon: Object(external_wp_element_["createElement"])(build_module_icon["a" /* default */], {
11423
- icon: library_help
11424
- }),
11425
- visible: isHomescreen() && !isEmbedded || isPerformingSetupTask()
11426
- };
11427
- var displayOptions = {
11428
- component: display_options_DisplayOptions,
11429
- visible: !isEmbedded && isHomescreen() && !isPerformingSetupTask()
11430
- };
11431
- var previewSite = {
11432
- name: 'previewSite',
11433
- title: Object(external_wp_i18n_["__"])('Preview site', 'woocommerce-admin'),
11434
- icon: Object(external_wp_element_["createElement"])(build_module_icon["a" /* default */], {
11435
- icon: external["a" /* default */]
11436
- }),
11437
- visible: query.page === 'wc-admin' && query.task === 'appearance',
11438
- onClick: function onClick() {
11439
- window.open(window.wcSettings.siteUrl);
11440
- return null;
11441
- }
11442
- };
11443
- return [inbox, setup, previewSite, displayOptions, help].filter(function (tab) {
11444
- return tab.visible;
11445
- });
11446
- };
11447
 
11448
- var getPanelContent = function getPanelContent(tab) {
11449
- var task = query.task;
11450
 
11451
- switch (tab) {
11452
- case 'inbox':
11453
- return Object(external_wp_element_["createElement"])(InboxPanel, null);
11454
 
11455
- case 'help':
11456
- return Object(external_wp_element_["createElement"])(HelpPanel, {
11457
- taskName: task
11458
- });
11459
 
11460
- default:
11461
- return null;
11462
- }
11463
- };
11464
 
11465
- var redirectToHomeScreen = function redirectToHomeScreen() {
11466
- if (Object(utils["f" /* isWCAdmin */])(window.location.href)) {
11467
- Object(external_wc_navigation_["getHistory"])().push(Object(external_wc_navigation_["getNewPath"])({}, '/', {}));
11468
- } else {
11469
- window.location.href = Object(wc_admin_settings["f" /* getAdminLink */])('admin.php?page=wc-admin');
11470
- }
11471
- };
11472
 
11473
- var closedHelpPanelHighlight = function closedHelpPanelHighlight() {
11474
- Object(external_wc_tracks_["recordEvent"])('help_tooltip_click');
11475
 
11476
- if (userPreferencesData && userPreferencesData.updateUserPreferences) {
11477
- userPreferencesData.updateUserPreferences({
11478
- help_panel_highlight_shown: 'yes'
11479
- });
11480
- }
11481
- };
 
 
 
 
 
 
 
 
 
 
11482
 
11483
- var shouldShowHelpTooltip = function shouldShowHelpTooltip() {
11484
- var task = query.task;
11485
- var startedTasks = userPreferencesData && userPreferencesData.task_list_tracked_started_tasks;
11486
- var highlightShown = userPreferencesData && userPreferencesData.help_panel_highlight_shown;
11487
 
11488
- if (task && highlightShown !== 'yes' && (startedTasks || {})[task] > 1 && !trackedCompletedTasks.includes(task)) {
11489
- return true;
11490
- }
11491
 
11492
- return false;
11493
- };
11494
 
11495
- var tabs = getTabs();
11496
- var headerId = Object(external_lodash_["uniqueId"])('activity-panel-header_');
11497
- var showHelpHighlightTooltip = shouldShowHelpTooltip();
11498
- return Object(external_wp_element_["createElement"])("div", null, Object(external_wp_element_["createElement"])(external_wc_components_["H"], {
11499
- id: headerId,
11500
- className: "screen-reader-text"
11501
- }, Object(external_wp_i18n_["__"])('Store Activity', 'woocommerce-admin')), Object(external_wp_element_["createElement"])(external_wc_components_["Section"], {
11502
- component: "aside",
11503
- id: "woocommerce-activity-panel",
11504
- className: "woocommerce-layout__activity-panel",
11505
- "aria-labelledby": headerId
11506
- }, Object(external_wp_element_["createElement"])(tabs_Tabs, {
11507
- tabs: tabs,
11508
- tabOpen: isPanelOpen,
11509
- selectedTab: currentTab,
11510
- onTabClick: function onTabClick(tab, tabOpen) {
11511
- if (tab.onClick) {
11512
- tab.onClick();
11513
- return;
11514
- }
11515
 
11516
- togglePanel(tab, tabOpen);
 
 
 
 
 
 
 
 
 
 
 
 
11517
  }
11518
- }), Object(external_wp_element_["createElement"])(panel_Panel, {
11519
- currentTab: true,
11520
- isPanelOpen: isPanelOpen,
11521
- isPanelSwitching: isPanelSwitching,
11522
- tab: Object(external_lodash_["find"])(getTabs(), {
11523
- name: currentTab
11524
- }),
11525
- content: getPanelContent(currentTab),
11526
- closePanel: function closePanel() {
11527
- return _closePanel();
11528
- },
11529
- clearPanel: function clearPanel() {
11530
- return _clearPanel();
11531
- }
11532
- })), showHelpHighlightTooltip ? Object(external_wp_element_["createElement"])(HighlightTooltip, {
11533
- delay: 1000,
11534
- useAnchor: true,
11535
- title: Object(external_wp_i18n_["__"])("We're here for help", 'woocommerce-admin'),
11536
- content: Object(external_wp_i18n_["__"])('If you have any questions, feel free to explore the WooCommerce docs listed here.', 'woocommerce-admin'),
11537
- closeButtonText: Object(external_wp_i18n_["__"])('Got it', 'woocommerce-admin'),
11538
- id: "activity-panel-tab-help",
11539
- onClose: function onClose() {
11540
- return closedHelpPanelHighlight();
11541
- },
11542
- onShow: function onShow() {
11543
- return Object(external_wc_tracks_["recordEvent"])('help_tooltip_view');
11544
  }
11545
- }) : null);
11546
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11547
  activity_panel_ActivityPanel.defaultProps = {
11548
- getHistory: external_wc_navigation_["getHistory"]
11549
  };
11550
- /* harmony default export */ var activity_panel = (activity_panel_ActivityPanel);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11551
  // CONCATENATED MODULE: ./client/lib/platform/index.js
11552
  var ANDROID_PLATFORM = 'android';
11553
  var IOS_PLATFORM = 'ios';
@@ -11570,18 +11435,18 @@ var platform = function platform() {
11570
  // CONCATENATED MODULE: ./client/mobile-banner/app-icon.js
11571
 
11572
  var app_icon_AppIcon = function AppIcon() {
11573
- return Object(external_wp_element_["createElement"])("svg", {
11574
  width: "37",
11575
  height: "37",
11576
  viewBox: "0 0 92 92",
11577
  fill: "none",
11578
  xmlns: "http://www.w3.org/2000/svg"
11579
- }, Object(external_wp_element_["createElement"])("rect", {
11580
  width: "92",
11581
  height: "92",
11582
  rx: "21.3953",
11583
  fill: "#7F54B3"
11584
- }), Object(external_wp_element_["createElement"])("path", {
11585
  fillRule: "evenodd",
11586
  clipRule: "evenodd",
11587
  d: "M72.5937 28.043H19.8094C16.4781 28.0459 13.7783 30.7705 13.7754 34.1324V54.4501C13.7783 57.812 16.4781 60.5366 19.8094 60.5395H44.8229L56.2573 66.9607L53.6672 60.5395H72.599C74.2009 60.5402 75.7374 59.8983 76.8702 58.7552C78.0029 57.612 78.639 56.0614 78.6383 54.4447V34.1324C78.6376 32.5157 78.0002 30.9657 76.8664 29.8235C75.7327 28.6814 74.1956 28.0408 72.5937 28.043ZM19.1057 32.4208C18.4658 32.4324 17.8646 32.7359 17.467 33.2482C17.0888 33.7635 16.9404 34.4175 17.058 35.0502C18.5962 45.0986 20.0338 51.8757 21.371 55.3816C21.8779 56.658 22.4896 57.2703 23.2063 57.2185C24.3075 57.1489 25.6263 55.5968 27.1627 52.5621C27.9964 50.8412 29.2602 48.2662 30.9539 44.837C32.3785 49.88 34.309 53.6787 36.7456 56.2331C37.4291 56.9436 38.1204 57.2748 38.8195 57.2266C39.4185 57.1931 39.953 56.8315 40.217 56.2813C40.4753 55.7358 40.5806 55.1278 40.5211 54.5248C40.3516 52.0703 40.5919 48.667 41.2421 44.3149C41.9081 39.8057 42.7523 36.5818 43.7749 34.6432C43.9822 34.2526 44.0733 33.8087 44.037 33.366C44.0039 32.7587 43.7116 32.1969 43.2374 31.829C42.7745 31.4367 42.1799 31.2446 41.5803 31.2935C40.8334 31.3325 40.1682 31.7885 39.8499 32.4797C38.2331 35.5019 37.0812 40.4109 36.3943 47.2068C35.2823 44.2394 34.4509 41.1703 33.9114 38.0412C33.623 36.4613 32.9037 35.7125 31.7536 35.7946C30.9592 35.8589 30.3063 36.3944 29.7819 37.4012L24.0348 48.5643C23.0997 44.6692 22.2205 39.9289 21.3972 34.3433C21.1997 32.9652 20.4358 32.3244 19.1057 32.4208ZM69.9089 34.6877C71.6969 35.0381 73.2407 36.2 74.1186 37.8559C74.9693 39.3247 75.3946 41.1161 75.3946 43.23C75.4148 45.9567 74.7062 48.6357 73.3477 50.9687C71.7778 53.7023 69.7195 55.0691 67.1727 55.0691C66.6933 55.0668 66.2153 55.0128 65.7467 54.9078C63.9584 54.5581 62.4143 53.396 61.5371 51.7396C60.6864 50.2452 60.261 48.4411 60.261 46.3272C60.2357 43.6127 60.945 40.9454 62.3079 38.6295C63.9023 35.8959 65.9607 34.5291 68.4829 34.5291C68.9623 34.5304 69.4402 34.5836 69.9089 34.6877ZM68.7937 49.4848C69.7707 48.5773 70.4399 47.2269 70.8012 45.4337V45.4419C70.9315 44.7826 70.9959 44.1112 70.9933 43.4382C70.986 42.5849 70.8291 41.74 70.5302 40.9452C70.1443 39.901 69.6304 39.3124 68.9884 39.1793C68.0378 38.9643 67.1239 39.5256 66.2469 40.8632C65.5812 41.8393 65.109 42.9432 64.8577 44.1106C64.7276 44.7708 64.6632 45.4432 64.6657 46.1171C64.6739 46.9677 64.8308 47.8096 65.1287 48.6019C65.5146 49.6388 66.0294 50.2274 66.6731 50.3678C67.3169 50.5081 68.0237 50.2138 68.7937 49.4848ZM57.9079 37.8559C57.0291 36.2008 55.4854 35.0392 53.6976 34.6877C53.2279 34.5837 52.749 34.5306 52.2687 34.5291C49.7443 34.5291 47.6856 35.8959 46.0927 38.6295C44.7295 40.9454 44.0201 43.6127 44.0454 46.3272C44.0454 48.4411 44.4699 50.2452 45.319 51.7396C46.1976 53.3949 47.7414 54.5566 49.5294 54.9078C49.999 55.0126 50.4779 55.0667 50.9582 55.0691C53.5055 55.0691 55.5642 53.7023 57.1343 50.9687C58.4922 48.6355 59.2001 45.9565 59.1789 43.23C59.1789 41.1161 58.7544 39.3247 57.9053 37.8559H57.9079ZM54.5903 45.4337C54.2307 47.2269 53.5614 48.5773 52.5825 49.4848C51.8115 50.2065 51.101 50.5017 50.4589 50.3678C49.8169 50.2338 49.3011 49.6461 48.9169 48.6019C48.6181 47.8097 48.4603 46.9678 48.4511 46.1171C48.4495 45.4431 48.5148 44.7707 48.6459 44.1106C48.8971 42.9432 49.3694 41.8393 50.0353 40.8632C50.9124 39.5256 51.8264 38.9643 52.7773 39.1793C53.4193 39.3124 53.9333 39.901 54.3193 40.9452C54.617 41.7404 54.7739 42.585 54.7824 43.4382C54.785 44.1112 54.7207 44.7826 54.5903 45.4419V45.4337Z",
@@ -11589,7 +11454,7 @@ var app_icon_AppIcon = function AppIcon() {
11589
  }));
11590
  };
11591
  // EXTERNAL MODULE: ./client/mobile-banner/style.scss
11592
- var mobile_banner_style = __webpack_require__(427);
11593
 
11594
  // CONCATENATED MODULE: ./client/mobile-banner/constants.js
11595
  // The Play Store link is defined as an exported constant mainly for the sake of testing the Mobile App Banner.
@@ -11620,7 +11485,7 @@ var SHOW_APP_BANNER_MODIFIER_CLASS = 'woocommerce-layout__show-app-banner';
11620
  var mobile_banner_MobileAppBanner = function MobileAppBanner(_ref) {
11621
  var onInstall = _ref.onInstall,
11622
  onDismiss = _ref.onDismiss;
11623
- Object(external_wp_element_["useEffect"])(function () {
11624
  var layout = document.getElementsByClassName('woocommerce-layout')[0];
11625
 
11626
  if (platform() === ANDROID_PLATFORM) {
@@ -11639,109 +11504,126 @@ var mobile_banner_MobileAppBanner = function MobileAppBanner(_ref) {
11639
  };
11640
  }, []);
11641
 
11642
- var _useState = Object(external_wp_element_["useState"])(false),
11643
  _useState2 = slicedToArray_default()(_useState, 2),
11644
  isDismissed = _useState2[0],
11645
  setDismissed = _useState2[1]; // On iOS the "Smart App Banner" meta tag is used so only display this on Android.
11646
 
11647
 
11648
  if (platform() === ANDROID_PLATFORM && !isDismissed) {
11649
- return Object(external_wp_element_["createElement"])("div", {
11650
  className: "woocommerce-mobile-app-banner"
11651
- }, Object(external_wp_element_["createElement"])(external_wp_components_["Icon"], {
11652
  icon: "no-alt",
11653
  "data-testid": "dismiss-btn",
11654
  onClick: function onClick() {
11655
  onDismiss();
11656
  setDismissed(true);
11657
- Object(external_wc_tracks_["recordEvent"])(TRACKING_EVENT_NAME, {
11658
  action: 'dismiss'
11659
  });
11660
  }
11661
- }), Object(external_wp_element_["createElement"])(app_icon_AppIcon, null), Object(external_wp_element_["createElement"])("div", {
11662
  className: "woocommerce-mobile-app-banner__description"
11663
- }, Object(external_wp_element_["createElement"])("p", {
11664
  className: "woocommerce-mobile-app-banner__description__text"
11665
- }, Object(external_wp_i18n_["__"])('Run your store from anywhere', 'woocommerce-admin')), Object(external_wp_element_["createElement"])("p", {
11666
  className: "woocommerce-mobile-app-banner__description__text"
11667
- }, Object(external_wp_i18n_["__"])('Download the WooCommerce app', 'woocommerce-admin'))), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
11668
  href: PLAY_STORE_LINK,
11669
  isSecondary: true,
11670
  onClick: function onClick() {
11671
  onInstall();
11672
  setDismissed(true);
11673
- Object(external_wc_tracks_["recordEvent"])(TRACKING_EVENT_NAME, {
11674
  action: 'install'
11675
  });
11676
  }
11677
- }, Object(external_wp_i18n_["__"])('Install', 'woocommerce-admin')));
11678
  }
11679
 
11680
  return null;
11681
  };
11682
- // CONCATENATED MODULE: ./client/hooks/useIsScrolled.js
 
 
 
 
11683
 
11684
 
11685
  /**
11686
  * External dependencies
11687
  */
11688
 
11689
- function useIsScrolled() {
11690
- var _useState = Object(external_wp_element_["useState"])(false),
11691
- _useState2 = slicedToArray_default()(_useState, 2),
11692
- isScrolled = _useState2[0],
11693
- setIsScrolled = _useState2[1];
11694
 
11695
- var rafHandle = Object(external_wp_element_["useRef"])(null);
11696
- Object(external_wp_element_["useEffect"])(function () {
11697
- var updateIsScrolled = function updateIsScrolled() {
11698
- setIsScrolled(window.pageYOffset > 20);
11699
- };
11700
 
11701
- var scrollListener = function scrollListener() {
11702
- rafHandle.current = window.requestAnimationFrame(updateIsScrolled);
11703
- };
11704
 
11705
- window.addEventListener('scroll', scrollListener);
11706
- return function () {
11707
- window.removeEventListener('scroll', scrollListener);
11708
- window.cancelAnimationFrame(rafHandle.current);
11709
- };
11710
- }, []);
11711
- return isScrolled;
11712
- }
11713
- // EXTERNAL MODULE: external ["wp","plugins"]
11714
- var external_wp_plugins_ = __webpack_require__(279);
11715
 
11716
- // EXTERNAL MODULE: ./client/navigation/style.scss
11717
- var navigation_style = __webpack_require__(428);
11718
 
11719
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/toConsumableArray.js
11720
- var toConsumableArray = __webpack_require__(44);
11721
- var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
11722
 
11723
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.values.js
11724
- var es_object_values = __webpack_require__(285);
 
 
11725
 
11726
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.number.max-safe-integer.js
11727
- var es_number_max_safe_integer = __webpack_require__(429);
11728
 
11729
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.number.constructor.js
11730
- var es_number_constructor = __webpack_require__(178);
11731
 
11732
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.constructor.js
11733
- var es_regexp_constructor = __webpack_require__(209);
11734
 
11735
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.to-string.js
11736
- var es_regexp_to_string = __webpack_require__(142);
 
 
 
 
 
 
 
11737
 
11738
- // CONCATENATED MODULE: ./client/navigation/utils.ts
 
 
11739
 
 
 
 
 
 
 
 
 
 
 
 
 
11740
 
 
 
 
 
 
11741
 
11742
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
 
 
 
 
11743
 
11744
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { defineProperty_default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11745
 
11746
 
11747
 
@@ -11749,237 +11631,244 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
11749
 
11750
 
11751
 
 
11752
 
 
11753
 
 
 
 
11754
 
11755
 
 
 
11756
 
 
11757
 
 
 
11758
 
 
 
11759
 
 
 
 
 
 
 
 
 
 
11760
 
 
 
11761
 
11762
- /**
11763
- * External dependencies
11764
- */
 
11765
 
 
 
 
 
 
 
 
 
 
11766
 
11767
- /**
11768
- * Get the full URL if a relative path is passed.
11769
- */
11770
- var utils_getFullUrl = function getFullUrl(url) {
11771
- if (url.indexOf('http') === 0) {
11772
- return url;
11773
  }
 
11774
 
11775
- return Object(wc_admin_settings["f" /* getAdminLink */])(url);
11776
- };
11777
- /**
11778
- * Get a default regex expression to match the path and provided params.
11779
- */
 
11780
 
11781
- var utils_getDefaultMatchExpression = function getDefaultMatchExpression(url) {
11782
- var escapedUrl = url.replace(/[-\/\\^$*+?.()|[\]{}]/gi, '\\$&');
 
11783
 
11784
- var _escapedUrl$split = escapedUrl.split(/\\\?|#/),
11785
- _escapedUrl$split2 = slicedToArray_default()(_escapedUrl$split, 3),
11786
- path = _escapedUrl$split2[0],
11787
- args = _escapedUrl$split2[1],
11788
- hash = _escapedUrl$split2[2];
11789
 
11790
- var hashExpression = hash ? "(.*#".concat(hash, "$)") : '';
11791
- var argsExpression = args ? args.split('&').reduce(function (acc, param) {
11792
- return "".concat(acc, "(?=.*[?|&]").concat(param, "(&|$|#))");
11793
- }, '') : '';
11794
- return '^' + path + argsExpression + hashExpression;
11795
- };
11796
- /**
11797
- * Get a match score for a menu item given a location.
11798
- */
11799
 
11800
- var getMatchScore = function getMatchScore(location, itemUrl) {
11801
- var itemExpression = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
11802
 
11803
- if (!itemUrl) {
11804
- return 0;
11805
- }
11806
 
11807
- var fullUrl = utils_getFullUrl(itemUrl);
11808
- var href = location.href; // Return highest possible score for exact match.
11809
 
11810
- if (fullUrl === href) {
11811
- return Number.MAX_SAFE_INTEGER;
11812
- }
11813
 
11814
- var defaultExpression = utils_getDefaultMatchExpression(fullUrl);
11815
- var regexp = new RegExp(itemExpression || defaultExpression, 'i');
11816
- return (decodeURIComponent(href).match(regexp) || []).length;
11817
- };
11818
 
11819
- /**
11820
- * Adds a listener that runs on history change.
11821
- *
11822
- * @param {Function} listener Listener to add on history change.
11823
- * @return {Function} Function to remove listeners.
11824
- */
11825
- var addHistoryListener = function addHistoryListener(listener) {
11826
- // Monkey patch pushState to allow trigger the pushstate event listener.
11827
- if (!window.wcNavigation.historyPatched) {
11828
- (function (history) {
11829
- /* global CustomEvent */
11830
- var pushState = history.pushState;
11831
- var replaceState = history.replaceState;
11832
 
11833
- history.pushState = function (state, title, url) {
11834
- var pushStateEvent = new CustomEvent('pushstate', state);
11835
- window.dispatchEvent(pushStateEvent);
11836
- return pushState.apply(history, [state, title, url]);
11837
- };
11838
 
11839
- history.replaceState = function (state, title, url) {
11840
- var replaceStateEvent = new CustomEvent('replacestate', state);
11841
- window.dispatchEvent(replaceStateEvent);
11842
- return replaceState.apply(history, [state, title, url]);
11843
- };
11844
 
11845
- window.wcNavigation.historyPatched = true;
11846
- })(window.history);
11847
- }
11848
 
11849
- window.addEventListener('popstate', listener);
11850
- window.addEventListener('pushstate', listener);
11851
- window.addEventListener('replacestate', listener);
11852
- return function () {
11853
- window.removeEventListener('popstate', listener);
11854
- window.removeEventListener('pushstate', listener);
11855
- window.removeEventListener('replacestate', listener);
11856
- };
11857
- };
11858
  /**
11859
- * Get the closest matching item.
11860
- *
11861
- * @param {Array} items An array of items to match against.
11862
  */
11863
 
11864
- var getMatchingItem = function getMatchingItem(items) {
11865
- var matchedItem = null;
11866
- var highestMatchScore = 0;
11867
- items.forEach(function (item) {
11868
- var score = getMatchScore(window.location, item.url, item.matchExpression);
11869
 
11870
- if (score > 0 && score >= highestMatchScore) {
11871
- highestMatchScore = score;
11872
- matchedItem = item;
11873
- }
11874
- });
11875
- return matchedItem || null;
11876
- };
11877
  /**
11878
- * Available menu IDs.
11879
  */
11880
 
11881
- var menuIds = ['primary', 'favorites', 'plugins', 'secondary'];
11882
 
11883
  /**
11884
- * Default categories for the menu.
11885
- */
11886
- var defaultCategories = {
11887
- woocommerce: {
11888
- id: 'woocommerce',
11889
- isCategory: true,
11890
- menuId: 'primary',
11891
- migrate: true,
11892
- order: 10,
11893
- parent: '',
11894
- title: 'WooCommerce'
11895
- }
11896
- };
11897
- /**
11898
- * Sort an array of menu items by their order property.
11899
- *
11900
- * @param {Array} menuItems Array of menu items.
11901
- * @return {Array} Sorted menu items.
11902
  */
11903
 
11904
- var sortMenuItems = function sortMenuItems(menuItems) {
11905
- return menuItems.sort(function (a, b) {
11906
- if (a.order === b.order) {
11907
- return a.title.localeCompare(b.title);
11908
- }
11909
 
11910
- return a.order - b.order;
11911
- });
11912
- };
11913
  /**
11914
- * Get a flat tree structure of all Categories and thier children grouped by menuId
11915
  *
11916
- * @param {Array} menuItems Array of menu items.
11917
- * @param {Function} currentUserCan Callback method passed the capability to determine if a menu item is visible.
11918
- * @return {Object} Mapped menu items and categories.
 
 
 
11919
  */
11920
 
11921
- var getMappedItemsCategories = function getMappedItemsCategories(menuItems, currentUserCan) {
11922
- var categories = _objectSpread({}, defaultCategories);
11923
-
11924
- var items = sortMenuItems(menuItems).reduce(function (acc, item) {
11925
- // Set up the category if it doesn't yet exist.
11926
- if (!acc[item.parent]) {
11927
- acc[item.parent] = {};
11928
- menuIds.forEach(function (menuId) {
11929
- acc[item.parent][menuId] = [];
11930
- });
11931
- } // Incorrect menu ID.
11932
 
 
 
 
 
 
11933
 
11934
- if (!acc[item.parent][item.menuId]) {
11935
- return acc;
11936
- } // User does not have permission to view this item.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11937
 
 
 
11938
 
11939
- if (currentUserCan && item.capability && !currentUserCan(item.capability)) {
11940
- return acc;
11941
- } // Add categories.
 
 
 
 
11942
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11943
 
11944
- if (item.isCategory) {
11945
- categories[item.id] = item;
11946
- }
 
 
11947
 
11948
- var menuIdArray = acc[item.parent][item.menuId];
 
 
 
 
 
 
11949
 
11950
- if (menuIdArray) {
11951
- menuIdArray.push(item);
11952
- }
 
 
 
 
 
11953
 
11954
- return acc;
11955
- }, {});
11956
- return {
11957
- items: items,
11958
- categories: categories
11959
  };
11960
- };
11961
- // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/wordpress.js
11962
-
11963
-
11964
- /**
11965
- * WordPress dependencies
11966
- */
11967
-
11968
- var wordpress = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
11969
- xmlns: "http://www.w3.org/2000/svg",
11970
- viewBox: "-2 -2 24 24"
11971
- }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
11972
- d: "M20 10c0-5.51-4.49-10-10-10C4.48 0 0 4.49 0 10c0 5.52 4.48 10 10 10 5.51 0 10-4.48 10-10zM7.78 15.37L4.37 6.22c.55-.02 1.17-.08 1.17-.08.5-.06.44-1.13-.06-1.11 0 0-1.45.11-2.37.11-.18 0-.37 0-.58-.01C4.12 2.69 6.87 1.11 10 1.11c2.33 0 4.45.87 6.05 2.34-.68-.11-1.65.39-1.65 1.58 0 .74.45 1.36.9 2.1.35.61.55 1.36.55 2.46 0 1.49-1.4 5-1.4 5l-3.03-8.37c.54-.02.82-.17.82-.17.5-.05.44-1.25-.06-1.22 0 0-1.44.12-2.38.12-.87 0-2.33-.12-2.33-.12-.5-.03-.56 1.2-.06 1.22l.92.08 1.26 3.41zM17.41 10c.24-.64.74-1.87.43-4.25.7 1.29 1.05 2.71 1.05 4.25 0 3.29-1.73 6.24-4.4 7.78.97-2.59 1.94-5.2 2.92-7.78zM6.1 18.09C3.12 16.65 1.11 13.53 1.11 10c0-1.3.23-2.48.72-3.59C3.25 10.3 4.67 14.2 6.1 18.09zm4.03-6.63l2.58 6.98c-.86.29-1.76.45-2.71.45-.79 0-1.57-.11-2.29-.33.81-2.38 1.62-4.74 2.42-7.1z"
11973
- }));
11974
- /* harmony default export */ var library_wordpress = (wordpress);
11975
- //# sourceMappingURL=wordpress.js.map
11976
- // CONCATENATED MODULE: ./client/navigation/components/header/index.js
11977
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11978
 
 
 
 
 
11979
 
11980
- /**
11981
- * External dependencies
11982
- */
11983
 
11984
 
11985
 
@@ -11987,146 +11876,86 @@ var wordpress = Object(external_wp_element_["createElement"])(external_wp_primit
11987
 
11988
 
11989
 
 
11990
 
 
11991
 
11992
  /**
11993
- * Internal dependencies
11994
  */
11995
 
11996
 
11997
 
11998
 
11999
- var header_Header = function Header() {
12000
- var siteTitle = Object(wc_admin_settings["g" /* getSetting */])('siteTitle', '');
12001
- var homeUrl = Object(wc_admin_settings["g" /* getSetting */])('homeUrl', '');
12002
- var isScrolled = useIsScrolled();
12003
 
12004
- var _useState = Object(external_wp_element_["useState"])(document.body.classList.contains(false)),
12005
- _useState2 = slicedToArray_default()(_useState, 2),
12006
- isFolded = _useState2[0],
12007
- setIsFolded = _useState2[1];
12008
 
12009
- var navClasses = {
12010
- folded: 'is-wc-nav-folded',
12011
- expanded: 'is-wc-nav-expanded'
12012
- };
12013
 
12014
- var foldNav = function foldNav() {
12015
- document.body.classList.add(navClasses.folded);
12016
- document.body.classList.remove(navClasses.expanded);
12017
- setIsFolded(true);
12018
- };
12019
 
12020
- var expandNav = function expandNav() {
12021
- document.body.classList.remove(navClasses.folded);
12022
- document.body.classList.add(navClasses.expanded);
12023
- setIsFolded(false);
12024
- };
12025
 
12026
- var toggleFolded = function toggleFolded() {
12027
- if (document.body.classList.contains(navClasses.folded)) {
12028
- expandNav();
12029
- } else {
12030
- foldNav();
12031
- }
12032
- };
12033
 
12034
- var foldOnMobile = function foldOnMobile() {
12035
- var screenWidth = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document.body.clientWidth;
12036
 
12037
- if (screenWidth <= 960) {
12038
- foldNav();
12039
- } else {
12040
- expandNav();
12041
- }
12042
- };
12043
 
12044
- Object(external_wp_element_["useEffect"])(function () {
12045
- foldOnMobile();
12046
- var foldEvents = [{
12047
- eventName: 'orientationchange',
12048
- handler: function handler(e) {
12049
- return foldOnMobile(e.target.screen.availWidth);
12050
- }
12051
- }, {
12052
- eventName: 'resize',
12053
- handler: Object(external_lodash_["debounce"])(function () {
12054
- return foldOnMobile();
12055
- }, 200)
12056
- }];
12057
 
12058
- for (var _i = 0, _foldEvents = foldEvents; _i < _foldEvents.length; _i++) {
12059
- var _foldEvents$_i = _foldEvents[_i],
12060
- eventName = _foldEvents$_i.eventName,
12061
- handler = _foldEvents$_i.handler;
12062
- window.addEventListener(eventName, handler, false);
 
 
 
 
 
 
 
 
12063
  }
 
12064
 
12065
- addHistoryListener(function () {
12066
- return foldOnMobile();
12067
- });
12068
- }, []);
12069
- var buttonIcon = Object(external_wp_element_["createElement"])(build_module_icon["a" /* default */], {
12070
- size: "36px",
12071
- icon: library_wordpress
12072
- });
12073
-
12074
- var _useSelect = Object(external_wp_data_["useSelect"])(function (select) {
12075
- var _select = select('core/data'),
12076
- isResolving = _select.isResolving;
12077
-
12078
- var _select2 = select('core'),
12079
- getEntityRecord = _select2.getEntityRecord;
12080
-
12081
- var siteData = getEntityRecord('root', '__unstableBase', undefined) || {};
12082
- return {
12083
- isRequestingSiteIcon: isResolving('core', 'getEntityRecord', ['root', '__unstableBase', undefined]),
12084
- siteIconUrl: siteData.siteIconUrl
12085
- };
12086
- }),
12087
- isRequestingSiteIcon = _useSelect.isRequestingSiteIcon,
12088
- siteIconUrl = _useSelect.siteIconUrl;
12089
 
12090
- if (siteIconUrl) {
12091
- buttonIcon = Object(external_wp_element_["createElement"])("img", {
12092
- alt: Object(external_wp_i18n_["__"])('Site Icon'),
12093
- src: siteIconUrl
12094
- });
12095
- } else if (isRequestingSiteIcon) {
12096
- buttonIcon = null;
12097
- }
12098
 
12099
- var className = classnames_default()('woocommerce-navigation-header', {
12100
- 'is-scrolled': isScrolled
12101
- });
12102
- return Object(external_wp_element_["createElement"])("div", {
12103
- className: className
12104
- }, Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
12105
- onClick: function onClick() {
12106
- return toggleFolded();
12107
- },
12108
- className: "woocommerce-navigation-header__site-icon",
12109
- "aria-label": "Fold navigation",
12110
- role: "switch",
12111
- "aria-checked": isFolded ? 'true' : 'false'
12112
- }, buttonIcon), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
12113
- href: homeUrl,
12114
- className: "woocommerce-navigation-header__site-title",
12115
- as: "span"
12116
- }, Object(external_wp_htmlEntities_["decodeEntities"])(siteTitle)));
12117
  };
 
 
 
 
 
 
 
 
 
 
 
 
12118
 
12119
- /* harmony default export */ var header = (header_Header);
12120
- // EXTERNAL MODULE: ./client/navigation/components/category-title/style.scss
12121
- var category_title_style = __webpack_require__(430);
12122
-
12123
- // EXTERNAL MODULE: ./client/navigation/components/favorite-button/style.scss
12124
- var favorite_button_style = __webpack_require__(431);
12125
 
12126
- // CONCATENATED MODULE: ./client/navigation/components/favorite-button/index.js
12127
 
12128
 
 
12129
 
 
12130
 
12131
  /**
12132
  * External dependencies
@@ -12135,7209 +11964,11200 @@ var favorite_button_style = __webpack_require__(431);
12135
 
12136
 
12137
 
12138
-
12139
  /**
12140
  * Internal dependencies
12141
  */
12142
 
12143
 
12144
- var favorite_button_FavoriteButton = function FavoriteButton(_ref) {
12145
- var id = _ref.id;
12146
-
12147
- var _useSelect = Object(external_wp_data_["useSelect"])(function (select) {
12148
- return {
12149
- favorites: select(external_wc_data_["NAVIGATION_STORE_NAME"]).getFavorites(),
12150
- isResolving: select(external_wc_data_["NAVIGATION_STORE_NAME"]).isResolving('getFavorites')
12151
- };
12152
- }),
12153
- favorites = _useSelect.favorites,
12154
- isResolving = _useSelect.isResolving;
12155
-
12156
- var _useDispatch = Object(external_wp_data_["useDispatch"])(external_wc_data_["NAVIGATION_STORE_NAME"]),
12157
- addFavorite = _useDispatch.addFavorite,
12158
- removeFavorite = _useDispatch.removeFavorite;
12159
 
12160
- var isFavorited = favorites.includes(id);
12161
 
12162
- var toggleFavorite = function toggleFavorite() {
12163
- var toggle = isFavorited ? removeFavorite : addFavorite;
12164
- toggle(id);
12165
- Object(external_wc_tracks_["recordEvent"])('navigation_favorite', {
12166
- id: id,
12167
- action: isFavorited ? 'unfavorite' : 'favorite'
12168
- });
12169
- };
12170
 
12171
- if (isResolving) {
 
 
 
 
 
 
12172
  return null;
12173
  }
12174
 
12175
- return Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
12176
- id: "woocommerce-navigation-favorite-button",
12177
- className: "woocommerce-navigation-favorite-button",
12178
- isTertiary: true,
12179
- onClick: toggleFavorite,
12180
- icon: isFavorited ? 'star-filled' : 'star-empty',
12181
- "aria-label": isFavorited ? Object(external_wp_i18n_["__"])('Add this item to your favorites.', 'woocommerce-admin') : Object(external_wp_i18n_["__"])('Remove this item from your favorites.', 'woocommerce-admin')
 
 
 
 
12182
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12183
  };
12184
- /* harmony default export */ var favorite_button = (favorite_button_FavoriteButton);
12185
- // CONCATENATED MODULE: ./client/navigation/components/favorites-tooltip/index.js
12186
-
12187
 
 
 
 
 
12188
 
12189
- /**
12190
- * External dependencies
12191
- */
12192
 
12193
 
12194
 
12195
- /**
12196
- * Internal dependencies
12197
- */
12198
 
12199
 
12200
- var tooltipHiddenOption = 'woocommerce_navigation_favorites_tooltip_hidden';
12201
- var favorites_tooltip_FavoritesTooltip = function FavoritesTooltip() {
12202
- var _useSelect = Object(external_wp_data_["useSelect"])(function (select) {
12203
- var _select = select(external_wc_data_["OPTIONS_STORE_NAME"]),
12204
- getOption = _select.getOption,
12205
- isResolving = _select.isResolving;
12206
 
12207
- return {
12208
- isFavoritesResolving: select(external_wc_data_["NAVIGATION_STORE_NAME"]).isResolving('getFavorites'),
12209
- isOptionResolving: isResolving('getOption', [tooltipHiddenOption]),
12210
- isTooltipHidden: getOption(tooltipHiddenOption) === 'yes'
12211
- };
12212
- }),
12213
- isFavoritesResolving = _useSelect.isFavoritesResolving,
12214
- isOptionResolving = _useSelect.isOptionResolving,
12215
- isTooltipHidden = _useSelect.isTooltipHidden;
12216
 
12217
- var _useDispatch = Object(external_wp_data_["useDispatch"])(external_wc_data_["OPTIONS_STORE_NAME"]),
12218
- updateOptions = _useDispatch.updateOptions;
12219
 
12220
- if (isFavoritesResolving || isTooltipHidden || isOptionResolving) {
12221
- return null;
12222
- }
12223
 
12224
- if (document.body.classList.contains('is-wc-nav-folded')) {
12225
- return null;
12226
- }
12227
 
12228
- return Object(external_wp_element_["createElement"])(HighlightTooltip, {
12229
- delay: 1000,
12230
- title: Object(external_wp_i18n_["__"])('Introducing favorites', 'woocommerce-admin'),
12231
- content: Object(external_wp_i18n_["__"])('You can now favorite your extensions to pin them in the top level of the navigation.', 'woocommerce-admin'),
12232
- closeButtonText: Object(external_wp_i18n_["__"])('Got it', 'woocommerce-admin'),
12233
- id: "woocommerce-navigation-favorite-button",
12234
- onClose: function onClose() {
12235
- return updateOptions(defineProperty_default()({}, tooltipHiddenOption, 'yes'));
12236
- },
12237
- useAnchor: true
12238
- });
12239
- };
12240
- /* harmony default export */ var favorites_tooltip = (favorites_tooltip_FavoritesTooltip);
12241
- // CONCATENATED MODULE: ./client/navigation/components/category-title/index.js
12242
 
 
12243
 
 
12244
 
12245
  /**
12246
- * Internal dependencies
12247
  */
12248
 
12249
 
12250
 
12251
- var category_title_CategoryTitle = function CategoryTitle(_ref) {
12252
- var category = _ref.category;
12253
- var id = category.id,
12254
- menuId = category.menuId,
12255
- title = category.title;
12256
- var className = 'woocommerce-navigation-category-title';
12257
 
12258
- if (['plugins', 'favorites'].includes(menuId)) {
12259
- return Object(external_wp_element_["createElement"])("span", {
12260
- className: className
12261
- }, Object(external_wp_element_["createElement"])("span", {
12262
- className: "".concat(className, "__text")
12263
- }, title), Object(external_wp_element_["createElement"])(favorite_button_FavoriteButton, {
12264
- id: id
12265
- }), Object(external_wp_element_["createElement"])(favorites_tooltip_FavoritesTooltip, null));
12266
- }
12267
 
12268
- return Object(external_wp_element_["createElement"])("span", {
12269
- className: className
12270
- }, title);
12271
- };
12272
- /* harmony default export */ var category_title = (category_title_CategoryTitle);
12273
- // CONCATENATED MODULE: ./client/navigation/components/Item/index.js
12274
 
12275
 
12276
  /**
12277
- * External dependencies
12278
  */
12279
 
12280
 
12281
 
12282
 
12283
- var Item_Item = function Item(_ref) {
12284
- var item = _ref.item;
12285
- var slot = Object(external_wc_navigation_["useNavSlot"])('woocommerce_navigation_' + item.id);
12286
- var hasFills = Boolean(slot.fills && slot.fills.length);
12287
 
12288
- var trackClick = function trackClick(id) {
12289
- Object(external_wc_tracks_["recordEvent"])('navigation_click', {
12290
- menu_item: id
12291
- });
12292
- }; // Disable reason: The div wrapping the slot item is used for tracking purposes
12293
- // and should not be a tabbable element.
12294
 
12295
- /* eslint-disable jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */
12296
- // Only render a slot if a coresponding Fill exists and the item is not a category
12297
 
 
 
 
 
 
12298
 
12299
- if (hasFills && !item.isCategory) {
12300
- return Object(external_wp_element_["createElement"])(build_module["c" /* NavigationItem */], {
12301
- key: item.id,
12302
- item: item.id
12303
- }, Object(external_wp_element_["createElement"])("div", {
12304
- onClick: function onClick() {
12305
- return trackClick(item.id);
12306
- }
12307
- }, Object(external_wp_element_["createElement"])(external_wc_navigation_["WooNavigationItem"].Slot, {
12308
- name: item.id
12309
- })));
12310
  }
12311
 
12312
- return Object(external_wp_element_["createElement"])(build_module["c" /* NavigationItem */], {
12313
- key: item.id,
12314
- item: item.id,
12315
- title: item.title,
12316
- href: item.url,
12317
- navigateToMenu: !item.url && item.id,
12318
- onClick: function onClick() {
12319
- return trackClick(item.id);
12320
- },
12321
- hideIfTargetMenuEmpty: true
12322
- });
12323
- /* eslint-enable jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */
12324
- };
12325
 
12326
- /* harmony default export */ var components_Item = (Item_Item);
12327
- // CONCATENATED MODULE: ./client/navigation/components/container/primary-menu.js
12328
 
 
 
12329
 
 
12330
 
12331
- /**
12332
- * External dependencies
12333
- */
12334
 
 
 
12335
 
 
 
 
 
 
 
 
 
 
 
12336
 
12337
- /**
12338
- * Internal dependencies
12339
- */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12340
 
 
 
12341
 
 
 
 
 
 
12342
 
12343
- var primary_menu_PrimaryMenu = function PrimaryMenu(_ref) {
12344
- var category = _ref.category,
12345
- onBackClick = _ref.onBackClick,
12346
- pluginItems = _ref.pluginItems,
12347
- primaryItems = _ref.primaryItems;
12348
 
12349
- if (!primaryItems.length && !pluginItems.length) {
12350
- return null;
12351
- }
12352
 
12353
- var rootBackLabel = Object(external_wp_hooks_["applyFilters"])('woocommerce_navigation_root_back_label', Object(external_wp_i18n_["__"])('WordPress Dashboard', 'woocommerce-admin'));
12354
- var rootBackUrl = Object(external_wp_hooks_["applyFilters"])('woocommerce_navigation_root_back_url', window.wcNavigation.rootBackUrl);
12355
- var isRootBackVisible = category.id === 'woocommerce' && rootBackUrl;
12356
- return Object(external_wp_element_["createElement"])(build_module["d" /* NavigationMenu */], {
12357
- title: Object(external_wp_element_["createElement"])(category_title, {
12358
- category: category
12359
- }),
12360
- menu: category.id,
12361
- parentMenu: category.parent,
12362
- backButtonLabel: isRootBackVisible ? rootBackLabel : category.backButtonLabel || null,
12363
- onBackButtonClick: isRootBackVisible ? function () {
12364
- onBackClick('woocommerce');
12365
- window.location = rootBackUrl;
12366
- } : function () {
12367
- return onBackClick(category.id);
12368
- }
12369
- }, !!primaryItems.length && Object(external_wp_element_["createElement"])(build_module["b" /* NavigationGroup */], null, primaryItems.map(function (item) {
12370
- return Object(external_wp_element_["createElement"])(components_Item, {
12371
- key: item.id,
12372
- item: item
12373
- });
12374
- })), !!pluginItems.length && Object(external_wp_element_["createElement"])(build_module["b" /* NavigationGroup */], {
12375
- title: category.id === 'woocommerce' ? Object(external_wp_i18n_["__"])('Extensions', 'woocommerce-admin') : null
12376
- }, pluginItems.map(function (item) {
12377
- return Object(external_wp_element_["createElement"])(components_Item, {
12378
- key: item.id,
12379
- item: item
12380
- });
12381
- })));
12382
- };
12383
- // CONCATENATED MODULE: ./client/navigation/components/container/secondary-menu.js
12384
 
 
12385
 
 
 
 
12386
 
12387
- /**
12388
- * External dependencies
12389
- */
 
 
 
 
 
 
 
 
 
12390
 
12391
- /**
12392
- * Internal dependencies
12393
- */
 
 
 
 
 
 
12394
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12395
 
 
 
12396
 
12397
- var secondary_menu_SecondaryMenu = function SecondaryMenu(_ref) {
12398
- var category = _ref.category,
12399
- items = _ref.items,
12400
- onBackClick = _ref.onBackClick;
 
 
 
 
 
 
 
 
 
 
12401
 
12402
- if (!items.length) {
12403
- return null;
 
12404
  }
12405
 
12406
- var isRoot = category.id === 'woocommerce';
12407
- return Object(external_wp_element_["createElement"])(build_module["d" /* NavigationMenu */], {
12408
- className: "components-navigation__menu-secondary",
12409
- title: !isRoot && Object(external_wp_element_["createElement"])(category_title, {
12410
- category: category
12411
- }),
12412
- menu: category.id,
12413
- parentMenu: category.parent,
12414
- backButtonLabel: category.backButtonLabel || null,
12415
- onBackButtonClick: isRoot ? null : function () {
12416
- return onBackClick(category.id);
12417
- }
12418
- }, Object(external_wp_element_["createElement"])(build_module["b" /* NavigationGroup */], {
12419
- onBackButtonClick: function onBackButtonClick() {
12420
- return onBackClick(category.id);
12421
- }
12422
- }, items.map(function (item) {
12423
- return Object(external_wp_element_["createElement"])(components_Item, {
12424
- key: item.id,
12425
- item: item
12426
- });
12427
- })));
12428
- };
12429
- // CONCATENATED MODULE: ./client/navigation/components/container/index.js
12430
 
 
 
 
 
 
 
12431
 
 
 
12432
 
 
12433
 
 
 
12434
 
 
 
12435
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12436
 
12437
- /**
12438
- * External dependencies
12439
- */
12440
 
 
12441
 
 
 
 
 
 
 
 
 
12442
 
 
12443
 
 
12444
 
 
 
12445
 
12446
- /**
12447
- * Internal dependencies
12448
- */
12449
 
 
12450
 
 
 
12451
 
 
12452
 
 
12453
 
 
 
12454
 
12455
- var container_Container = function Container() {
12456
- var _useSelect = Object(external_wp_data_["useSelect"])(function (select) {
12457
- return {
12458
- menuItems: select(external_wc_data_["NAVIGATION_STORE_NAME"]).getMenuItems()
12459
- };
12460
- }),
12461
- menuItems = _useSelect.menuItems;
12462
 
12463
- Object(external_wp_element_["useEffect"])(function () {
12464
- // Collapse the original WP Menu.
12465
- document.documentElement.classList.remove('wp-toolbar');
12466
- document.body.classList.add('has-woocommerce-navigation');
12467
- var adminMenu = document.getElementById('adminmenumain');
12468
 
12469
- if (!adminMenu) {
12470
- return;
12471
- }
12472
-
12473
- adminMenu.classList.add('folded');
12474
- }, []);
12475
-
12476
- var _useState = Object(external_wp_element_["useState"])('woocommerce-home'),
12477
- _useState2 = slicedToArray_default()(_useState, 2),
12478
- activeItem = _useState2[0],
12479
- setActiveItem = _useState2[1];
12480
-
12481
- var _useState3 = Object(external_wp_element_["useState"])('woocommerce'),
12482
- _useState4 = slicedToArray_default()(_useState3, 2),
12483
- activeLevel = _useState4[0],
12484
- setActiveLevel = _useState4[1];
12485
 
12486
- Object(external_wp_element_["useEffect"])(function () {
12487
- var initialMatchedItem = getMatchingItem(menuItems);
12488
 
12489
- if (initialMatchedItem && activeItem !== initialMatchedItem) {
12490
- setActiveItem(initialMatchedItem);
12491
- setActiveLevel(initialMatchedItem.parent);
12492
- }
12493
 
12494
- var removeListener = addHistoryListener(function () {
12495
- setTimeout(function () {
12496
- var matchedItem = getMatchingItem(menuItems);
12497
 
12498
- if (matchedItem) {
12499
- setActiveItem(matchedItem);
12500
- setActiveLevel(matchedItem.parent);
12501
- }
12502
- }, 0);
12503
- });
12504
- return removeListener;
12505
- }, [menuItems]);
12506
 
12507
- var _useUser = Object(external_wc_data_["useUser"])(),
12508
- currentUserCan = _useUser.currentUserCan;
12509
 
12510
- var _useMemo = Object(external_wp_element_["useMemo"])(function () {
12511
- return getMappedItemsCategories(menuItems, currentUserCan);
12512
- }, [menuItems, currentUserCan]),
12513
- categories = _useMemo.categories,
12514
- items = _useMemo.items;
 
 
12515
 
12516
- var navDomRef = Object(external_wp_element_["useRef"])(null);
 
 
 
 
 
12517
 
12518
- var onBackClick = function onBackClick(id) {
12519
- Object(external_wc_tracks_["recordEvent"])('navigation_back_click', {
12520
- category: id
12521
- });
12522
- };
 
 
 
 
 
 
12523
 
12524
- var isRoot = activeLevel === 'woocommerce';
12525
- var classes = classnames_default()('woocommerce-navigation', {
12526
- 'is-root': isRoot
12527
- });
12528
- return Object(external_wp_element_["createElement"])("div", {
12529
- className: classes
12530
- }, Object(external_wp_element_["createElement"])(header, null), Object(external_wp_element_["createElement"])("div", {
12531
- className: "woocommerce-navigation__wrapper",
12532
- ref: navDomRef
12533
- }, Object(external_wp_element_["createElement"])(build_module["a" /* Navigation */], {
12534
- activeItem: activeItem ? activeItem.id : null,
12535
- activeMenu: activeLevel,
12536
- onActivateMenu: function onActivateMenu() {
12537
- if (navDomRef && navDomRef.current) {
12538
- navDomRef.current.scrollTop = 0;
12539
- }
12540
 
12541
- setActiveLevel.apply(void 0, arguments);
12542
- }
12543
- }, Object.values(categories).map(function (category) {
12544
- var categoryItems = items[category.id];
12545
- return !!categoryItems && [Object(external_wp_element_["createElement"])(primary_menu_PrimaryMenu, {
12546
- key: category.id,
12547
- category: category,
12548
- onBackClick: onBackClick,
12549
- primaryItems: [].concat(toConsumableArray_default()(categoryItems.primary), toConsumableArray_default()(categoryItems.favorites)),
12550
- pluginItems: categoryItems.plugins
12551
- }), Object(external_wp_element_["createElement"])(secondary_menu_SecondaryMenu, {
12552
- key: "secondary/".concat(category.id),
12553
- category: category,
12554
- onBackClick: onBackClick,
12555
- items: categoryItems.secondary
12556
- })];
12557
- }))));
12558
- };
12559
 
12560
- /* harmony default export */ var container = (container_Container);
12561
- // CONCATENATED MODULE: ./client/navigation/index.js
12562
 
 
 
12563
 
 
 
 
 
12564
  /**
12565
- * External dependencies
12566
  */
12567
 
12568
-
12569
-
12570
  /**
12571
  * Internal dependencies
12572
  */
12573
 
12574
 
 
 
 
12575
 
 
 
 
 
 
 
 
12576
 
12577
- var navigation_Navigation = function Navigation() {
12578
- return Object(external_wp_element_["createElement"])(external_wc_navigation_["NavSlotFillProvider"], null, Object(external_wp_element_["createElement"])(container, null), Object(external_wp_element_["createElement"])(external_wp_plugins_["PluginArea"], null));
 
 
 
 
 
12579
  };
 
 
 
12580
 
12581
- var HydratedNavigation = Object(external_wc_data_["withNavigationHydration"])(window.wcNavigation)(navigation_Navigation);
12582
- /* harmony default export */ var navigation = (HydratedNavigation);
12583
- // CONCATENATED MODULE: ./client/header/index.js
12584
-
12585
-
12586
-
12587
-
12588
- function header_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
12589
-
12590
- function header_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { header_ownKeys(Object(source), true).forEach(function (key) { defineProperty_default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { header_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
12591
-
12592
-
12593
 
 
 
 
 
 
 
 
 
 
12594
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12595
 
 
 
 
 
 
12596
 
 
 
 
12597
 
 
 
12598
 
 
 
 
12599
 
 
12600
 
 
 
12601
 
 
 
 
 
 
 
 
 
 
12602
 
 
 
 
 
 
 
12603
 
12604
 
 
12605
 
 
 
12606
 
 
 
 
 
 
 
 
 
12607
  /**
12608
  * External dependencies
12609
  */
12610
 
12611
 
 
 
 
12612
 
12613
 
 
 
 
 
 
 
 
 
 
 
 
12614
 
 
 
 
12615
 
 
 
 
 
12616
 
12617
-
12618
-
12619
-
12620
-
12621
-
12622
  /**
12623
- * Internal dependencies
 
 
 
 
 
 
 
12624
  */
12625
 
 
 
 
 
 
12626
 
 
12627
 
 
 
12628
 
 
12629
 
 
12630
 
 
 
12631
 
12632
- var header_renderTaskListBackButton = function renderTaskListBackButton() {
12633
- var currentUrl = new URL(window.location.href);
12634
- var task = currentUrl.searchParams.get('task');
12635
 
12636
- if (task) {
12637
- var homeText = Object(external_wp_i18n_["__"])('WooCommerce Home', 'woocommerce-admin');
 
 
12638
 
12639
- var navigateHome = function navigateHome() {
12640
- Object(external_wc_tracks_["recordEvent"])('topbar_back_button', {
12641
- page_name: header_getPageTitle(window.title)
12642
- });
12643
- Object(external_wc_navigation_["updateQueryString"])({}, Object(external_wc_navigation_["getHistory"])().location.pathname, {});
12644
- }; // if it's a task list page, render a back button to the homescreen
12645
-
12646
-
12647
- return Object(external_wp_element_["createElement"])(external_wp_components_["Tooltip"], {
12648
- text: homeText
12649
- }, Object(external_wp_element_["createElement"])("div", {
12650
- tabIndex: "0",
12651
- role: "button",
12652
- "data-testid": "header-back-button",
12653
- className: "woocommerce-layout__header-back-button",
12654
- onKeyDown: function onKeyDown(_ref) {
12655
- var keyCode = _ref.keyCode;
12656
-
12657
- if (keyCode === external_wp_keycodes_["ENTER"] || keyCode === external_wp_keycodes_["SPACE"]) {
12658
- navigateHome();
12659
- }
12660
- }
12661
- }, Object(external_wp_element_["createElement"])(build_module_icon["a" /* default */], {
12662
- icon: chevron_left["a" /* default */],
12663
- onClick: navigateHome
12664
- })));
12665
- }
12666
 
12667
- return null;
12668
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12669
 
12670
- var header_getPageTitle = function getPageTitle(defaultTitle) {
12671
- var currentUrl = new URL(window.location.href);
12672
- var task = currentUrl.searchParams.get('task'); // If it's the task list then render a title based on which task the user is on.
12673
 
12674
- return {
12675
- payments: Object(external_wp_i18n_["__"])('Choose payment methods', 'woocommerce-admin'),
12676
- tax: Object(external_wp_i18n_["__"])('Add tax rates', 'woocommerce-admin'),
12677
- appearance: Object(external_wp_i18n_["__"])('Personalize your store', 'woocommerce-admin'),
12678
- products: Object(external_wp_i18n_["__"])('Add products', 'woocommerce-admin'),
12679
- shipping: Object(external_wp_i18n_["__"])('Set up shipping costs', 'woocommerce-admin')
12680
- }[task] || defaultTitle;
12681
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12682
 
12683
- var client_header_Header = function Header(_ref2) {
12684
- var sections = _ref2.sections,
12685
- _ref2$isEmbedded = _ref2.isEmbedded,
12686
- isEmbedded = _ref2$isEmbedded === void 0 ? false : _ref2$isEmbedded,
12687
- query = _ref2.query;
12688
- var headerElement = Object(external_wp_element_["useRef"])(null);
12689
- var siteTitle = Object(wc_admin_settings["g" /* getSetting */])('siteTitle', '');
12690
- var pageTitle = sections.slice(-1)[0];
12691
- var isScrolled = useIsScrolled();
12692
 
12693
- var _useUserPreferences = Object(external_wc_data_["useUserPreferences"])(),
12694
- updateUserPreferences = _useUserPreferences.updateUserPreferences,
12695
- userData = objectWithoutProperties_default()(_useUserPreferences, ["updateUserPreferences"]);
12696
 
12697
- var isModalDismissed = userData.android_app_banner_dismissed === 'yes';
12698
- var debounceTimer = null;
12699
- var className = classnames_default()('woocommerce-layout__header', {
12700
- 'is-scrolled': isScrolled
12701
- });
12702
- Object(external_wp_element_["useLayoutEffect"])(function () {
12703
- updateBodyMargin();
12704
- window.addEventListener('resize', updateBodyMargin);
12705
- return function () {
12706
- window.removeEventListener('resize', updateBodyMargin);
12707
- var wpBody = document.querySelector('#wpbody');
12708
 
12709
- if (!wpBody) {
 
12710
  return;
12711
- }
12712
-
12713
- wpBody.style.marginTop = null;
12714
- };
12715
- }, [isModalDismissed]);
12716
-
12717
- var updateBodyMargin = function updateBodyMargin() {
12718
- clearTimeout(debounceTimer);
12719
- debounceTimer = setTimeout(function () {
12720
- var wpBody = document.querySelector('#wpbody');
 
12721
 
12722
- if (!wpBody || !headerElement.current) {
 
12723
  return;
12724
- }
12725
-
12726
- wpBody.style.marginTop = "".concat(headerElement.current.offsetHeight, "px");
12727
- }, 200);
12728
- };
12729
-
12730
- Object(external_wp_element_["useEffect"])(function () {
12731
- if (!isEmbedded) {
12732
- var documentTitle = sections.map(function (section) {
12733
- return Array.isArray(section) ? section[1] : section;
12734
- }).reverse().join(' &lsaquo; ');
12735
- var decodedTitle = Object(external_wp_htmlEntities_["decodeEntities"])(Object(external_wp_i18n_["sprintf"])(
12736
- /* translators: 1: document title. 2: page title */
12737
- Object(external_wp_i18n_["__"])('%1$s &lsaquo; %2$s &#8212; WooCommerce', 'woocommerce-admin'), documentTitle, siteTitle));
12738
 
12739
- if (document.title !== decodedTitle) {
12740
- document.title = decodedTitle;
12741
- }
 
 
 
 
 
 
 
 
12742
  }
12743
- }, [isEmbedded, sections, siteTitle]);
 
 
 
12744
 
12745
- var dismissHandler = function dismissHandler() {
12746
- updateUserPreferences({
12747
- android_app_banner_dismissed: 'yes'
12748
- });
12749
- };
 
 
 
 
 
 
 
12750
 
12751
- var backButton = header_renderTaskListBackButton();
12752
- var backButtonClass = backButton ? 'with-back-button' : '';
12753
- return Object(external_wp_element_["createElement"])("div", {
12754
- className: className,
12755
- ref: headerElement
12756
- }, !isModalDismissed && Object(external_wp_element_["createElement"])(mobile_banner_MobileAppBanner, {
12757
- onDismiss: dismissHandler,
12758
- onInstall: dismissHandler
12759
- }), Object(external_wp_element_["createElement"])("div", {
12760
- className: "woocommerce-layout__header-wrapper"
12761
- }, window.wcAdminFeatures.navigation && Object(external_wp_element_["createElement"])(navigation, null), header_renderTaskListBackButton(), Object(external_wp_element_["createElement"])(build_module["e" /* Text */], {
12762
- className: "woocommerce-layout__header-heading ".concat(backButtonClass),
12763
- as: "h1",
12764
- variant: "subtitle.small"
12765
- }, header_getPageTitle(Object(external_wp_htmlEntities_["decodeEntities"])(pageTitle))), window.wcAdminFeatures['activity-panels'] && Object(external_wp_element_["createElement"])(activity_panel, {
12766
- isEmbedded: isEmbedded,
12767
- query: query,
12768
- userPreferencesData: header_objectSpread(header_objectSpread({}, userData), {}, {
12769
- updateUserPreferences: updateUserPreferences
12770
- })
12771
- })));
12772
  };
12773
- // CONCATENATED MODULE: ./client/layout/notices.js
 
 
 
 
 
12774
 
 
12775
 
 
 
 
 
 
 
 
 
 
12776
 
 
12777
 
 
 
 
12778
 
 
 
 
 
 
12779
 
12780
 
 
12781
 
12782
- function notices_createSuper(Derived) { var hasNativeReflectConstruct = notices_isNativeReflectConstruct(); return function _createSuperInternal() { var Super = getPrototypeOf_default()(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = getPrototypeOf_default()(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return possibleConstructorReturn_default()(this, result); }; }
 
12783
 
12784
- function notices_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
12785
 
12786
- /**
12787
- * External dependencies
12788
- */
12789
 
 
12790
 
12791
- var notices_Notices = /*#__PURE__*/function (_Component) {
12792
- inherits_default()(Notices, _Component);
12793
 
12794
- var _super = notices_createSuper(Notices);
 
 
12795
 
12796
- function Notices() {
12797
- classCallCheck_default()(this, Notices);
12798
 
12799
- return _super.apply(this, arguments);
12800
- }
12801
 
12802
- createClass_default()(Notices, [{
12803
- key: "render",
12804
- value: function render() {
12805
- return Object(external_wp_element_["createElement"])("div", {
12806
- id: "woocommerce-layout__notice-list",
12807
- className: "woocommerce-layout__notice-list"
12808
- });
12809
- }
12810
- }]);
12811
 
12812
- return Notices;
12813
- }(external_wp_element_["Component"]);
12814
 
12815
- /* harmony default export */ var layout_notices = (notices_Notices);
12816
- // EXTERNAL MODULE: external "regeneratorRuntime"
12817
- var external_regeneratorRuntime_ = __webpack_require__(16);
12818
- var external_regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(external_regeneratorRuntime_);
12819
 
12820
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js
12821
- var asyncToGenerator = __webpack_require__(134);
12822
- var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
12823
 
12824
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.weak-map.js
12825
- var es_weak_map = __webpack_require__(432);
 
 
 
 
 
 
 
 
 
 
 
 
 
12826
 
12827
- // EXTERNAL MODULE: ./node_modules/react-spring/web.cjs.js
12828
- var web_cjs = __webpack_require__(315);
12829
 
12830
- // EXTERNAL MODULE: ./client/layout/transient-notices/snackbar/index.js
12831
- var snackbar = __webpack_require__(392);
 
 
12832
 
12833
- // CONCATENATED MODULE: ./client/layout/transient-notices/snackbar/list.js
 
 
 
 
 
12834
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12835
 
 
 
 
 
 
12836
 
 
 
 
12837
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12838
 
 
 
 
 
12839
 
 
 
 
12840
 
 
 
 
 
 
 
 
 
12841
 
 
 
 
12842
 
 
12843
 
 
 
12844
 
 
12845
 
12846
- /**
12847
- * External dependencies
12848
- */
12849
 
 
 
12850
 
 
 
 
 
12851
 
 
 
 
 
 
 
12852
 
 
 
12853
 
12854
- /**
12855
- * Internal dependencies
12856
- */
12857
 
 
12858
 
12859
- /**
12860
- * Renders a list of notices.
12861
- *
12862
- * @param {Object} $0 Props passed to the component.
12863
- * @param {Array} $0.notices Array of notices to render.
12864
- * @param {Function} $0.onRemove Function called when a notice should be removed / dismissed.
12865
- * @param {Function} $0.onRemove2 Function called when a notice should be removed / dismissed.
12866
- * @param {Object} $0.className Name of the class used by the component.
12867
- * @param {Object} $0.children Array of children to be rendered inside the notice list.
12868
- * @return {Object} The rendered notices list.
12869
- */
12870
-
12871
- function SnackbarList(_ref) {
12872
- var notices = _ref.notices,
12873
- className = _ref.className,
12874
- children = _ref.children,
12875
- _ref$onRemove = _ref.onRemove,
12876
- onRemove = _ref$onRemove === void 0 ? external_lodash_["noop"] : _ref$onRemove,
12877
- _ref$onRemove2 = _ref.onRemove2,
12878
- onRemove2 = _ref$onRemove2 === void 0 ? external_lodash_["noop"] : _ref$onRemove2;
12879
- var isReducedMotion = Object(external_wp_compose_["useReducedMotion"])();
12880
-
12881
- var _useState = Object(external_wp_element_["useState"])(function () {
12882
- return new WeakMap();
12883
- }),
12884
- _useState2 = slicedToArray_default()(_useState, 1),
12885
- refMap = _useState2[0];
12886
-
12887
- var transitions = Object(web_cjs["useTransition"])(notices, function (notice) {
12888
- return notice.id;
12889
- }, {
12890
- from: {
12891
- opacity: 0,
12892
- height: 0
12893
- },
12894
- enter: function enter(item) {
12895
- return /*#__PURE__*/function () {
12896
- var _ref2 = asyncToGenerator_default()( /*#__PURE__*/external_regeneratorRuntime_default.a.mark(function _callee(next) {
12897
- return external_regeneratorRuntime_default.a.wrap(function _callee$(_context) {
12898
- while (1) {
12899
- switch (_context.prev = _context.next) {
12900
- case 0:
12901
- _context.next = 2;
12902
- return next({
12903
- opacity: 1,
12904
- height: refMap.get(item).offsetHeight
12905
- });
12906
-
12907
- case 2:
12908
- return _context.abrupt("return", _context.sent);
12909
 
12910
- case 3:
12911
- case "end":
12912
- return _context.stop();
12913
- }
12914
- }
12915
- }, _callee);
12916
- }));
12917
 
12918
- return function (_x) {
12919
- return _ref2.apply(this, arguments);
12920
- };
12921
- }();
12922
- },
12923
- leave: function leave() {
12924
- return /*#__PURE__*/function () {
12925
- var _ref3 = asyncToGenerator_default()( /*#__PURE__*/external_regeneratorRuntime_default.a.mark(function _callee2(next) {
12926
- return external_regeneratorRuntime_default.a.wrap(function _callee2$(_context2) {
12927
- while (1) {
12928
- switch (_context2.prev = _context2.next) {
12929
- case 0:
12930
- _context2.next = 2;
12931
- return next({
12932
- opacity: 0
12933
- });
12934
 
12935
- case 2:
12936
- _context2.next = 4;
12937
- return next({
12938
- height: 0
12939
- });
12940
 
12941
- case 4:
12942
- case "end":
12943
- return _context2.stop();
12944
- }
12945
- }
12946
- }, _callee2);
12947
- }));
12948
 
12949
- return function (_x2) {
12950
- return _ref3.apply(this, arguments);
12951
- };
12952
- }();
12953
- },
12954
- immediate: isReducedMotion
12955
- });
12956
- className = classnames_default()('components-snackbar-list', className);
12957
 
12958
- var removeNotice = function removeNotice(notice) {
12959
- return function () {
12960
- onRemove(notice.id); // To be removed when we're no longer using core/notices2.
12961
 
12962
- onRemove2(notice.id);
12963
- };
12964
- };
12965
 
12966
- return Object(external_wp_element_["createElement"])("div", {
12967
- className: className
12968
- }, children, transitions.map(function (_ref4) {
12969
- var notice = _ref4.item,
12970
- key = _ref4.key,
12971
- style = _ref4.props;
12972
- return Object(external_wp_element_["createElement"])(web_cjs["animated"].div, {
12973
- key: key,
12974
- style: style
12975
- }, Object(external_wp_element_["createElement"])("div", {
12976
- className: "components-snackbar-list__notice-container",
12977
- ref: function ref(_ref5) {
12978
- return _ref5 && refMap.set(notice, _ref5);
12979
- }
12980
- }, Object(external_wp_element_["createElement"])(snackbar["a" /* default */], extends_default()({}, Object(external_lodash_["omit"])(notice, ['content']), {
12981
- onRemove: removeNotice(notice)
12982
- }), notice.content)));
12983
- }));
12984
- }
12985
 
12986
- /* harmony default export */ var list = (SnackbarList);
12987
- // EXTERNAL MODULE: ./client/layout/transient-notices/style.scss
12988
- var transient_notices_style = __webpack_require__(435);
12989
 
12990
- // CONCATENATED MODULE: ./client/layout/transient-notices/index.js
 
 
 
 
 
 
 
 
 
 
 
12991
 
12992
 
 
12993
 
12994
- /**
12995
- * External dependencies
12996
- */
12997
 
 
12998
 
 
12999
 
13000
- /**
13001
- * Internal dependencies
13002
- */
13003
 
 
13004
 
 
 
 
13005
 
 
 
13006
 
13007
- function TransientNotices(props) {
13008
- var _useDispatch = Object(external_wp_data_["useDispatch"])('core/notices'),
13009
- onRemove = _useDispatch.removeNotice;
13010
 
13011
- var _useDispatch2 = Object(external_wp_data_["useDispatch"])('core/notices2'),
13012
- onRemove2 = _useDispatch2.removeNotice;
13013
 
13014
- var noticeData = Object(external_wp_data_["useSelect"])(function (select) {
13015
- // NOTE: This uses core/notices2, if this file is copied back upstream
13016
- // to Gutenberg this needs to be changed back to just core/notices.
13017
- var notices = select('core/notices').getNotices();
13018
- var notices2 = select('core/notices2').getNotices();
13019
- return {
13020
- notices: notices,
13021
- notices2: notices2
13022
- };
13023
- });
13024
- /**
13025
- * Combines the two notices in the component vs in the useSelect, as we don't want to
13026
- * create new object references on each useSelect call.
13027
- */
13028
 
13029
- var getNotices = function getNotices() {
13030
- var notices = noticeData.notices,
13031
- _noticeData$notices = noticeData.notices2,
13032
- notices2 = _noticeData$notices === void 0 ? [] : _noticeData$notices;
13033
- return notices.concat(notices2);
13034
- };
13035
 
13036
- var className = props.className;
13037
- var classes = classnames_default()('woocommerce-transient-notices', 'components-notices__snackbar', className);
13038
- var notices = getNotices();
13039
- return Object(external_wp_element_["createElement"])(list, {
13040
- notices: notices,
13041
- className: classes,
13042
- onRemove: onRemove,
13043
- onRemove2: onRemove2
13044
- });
13045
  }
 
 
13046
 
13047
- TransientNotices.propTypes = {
13048
- /**
13049
- * Additional class name to style the component.
13050
- */
13051
- className: prop_types_default.a.string,
13052
 
13053
- /**
13054
- * Array of notices to be displayed.
13055
- */
13056
- notices: prop_types_default.a.array
13057
- };
13058
- /* harmony default export */ var transient_notices = (TransientNotices);
13059
- // CONCATENATED MODULE: ./client/layout/navigation.js
13060
 
 
 
13061
 
 
 
13062
 
 
13063
 
13064
- function navigation_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
13065
 
13066
- function navigation_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { navigation_ownKeys(Object(source), true).forEach(function (key) { defineProperty_default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { navigation_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
13067
 
13068
 
13069
 
13070
 
13071
 
 
13072
 
 
 
 
13073
 
 
 
 
 
 
 
13074
 
 
13075
 
 
 
13076
 
 
 
13077
 
13078
- /**
13079
- * External dependencies
13080
- */
13081
 
 
 
 
 
 
 
 
 
13082
 
 
 
13083
 
 
 
 
13084
 
 
 
 
 
 
13085
 
13086
- /**
13087
- * Internal dependencies
13088
- */
13089
 
 
 
 
 
13090
 
 
 
 
13091
 
 
 
13092
 
 
 
 
13093
 
13094
 
13095
- var navigation_NavigationPlugin = function NavigationPlugin() {
13096
- var _useState = Object(external_wp_element_["useState"])(Object(external_wc_navigation_["getPersistedQuery"])()),
13097
- _useState2 = slicedToArray_default()(_useState, 2),
13098
- persistedQuery = _useState2[0],
13099
- setPersistedQuery = _useState2[1];
 
13100
 
13101
- var pathIsExcluded = function pathIsExcluded(path) {
13102
- return Object(external_wc_navigation_["getQueryExcludedScreens"])().includes(Object(external_wc_navigation_["getScreenFromPath"])(path));
13103
- }; // Update the persisted queries when history is updated
13104
 
 
 
 
13105
 
13106
- Object(external_wp_element_["useEffect"])(function () {
13107
- return addHistoryListener(function () {
13108
- setTimeout(function () {
13109
- if (pathIsExcluded()) {
13110
- return;
13111
  }
13112
 
13113
- setPersistedQuery(Object(external_wc_navigation_["getPersistedQuery"])());
13114
- }, 0);
13115
- });
13116
- }, []);
13117
- /**
13118
- * If the current page is embedded, stay with the default urls
13119
- * provided by Navigation because the router isn't present to
13120
- * respond to <Link /> component's manipulation of the url.
13121
- */
13122
-
13123
- if (!Object(utils["f" /* isWCAdmin */])(window.location.href)) {
13124
- return null;
13125
- }
13126
-
13127
- var reports = Object(get_reports["a" /* default */])().filter(function (item) {
13128
- return item.navArgs;
13129
- });
13130
- var pages = controller_getPages().filter(function (page) {
13131
- return page.navArgs;
13132
- }).map(function (page) {
13133
- if (page.path === '/analytics/settings') {
13134
- return navigation_objectSpread(navigation_objectSpread({}, page), {}, {
13135
- breadcrumbs: [Object(external_wp_i18n_["__"])('Analytics', 'woocommerce-admin')]
13136
- });
13137
- }
13138
-
13139
- return page;
13140
- });
13141
- return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, pages.map(function (page) {
13142
- return Object(external_wp_element_["createElement"])(external_wc_navigation_["WooNavigationItem"], {
13143
- item: page.navArgs.id,
13144
- key: page.navArgs.id
13145
- }, Object(external_wp_element_["createElement"])(external_wc_components_["Link"], {
13146
- className: "components-button",
13147
- href: Object(external_wc_navigation_["getNewPath"])(pathIsExcluded(page.path) ? {} : persistedQuery, page.path, {}),
13148
- type: "wc-admin"
13149
- }, page.breadcrumbs[page.breadcrumbs.length - 1]));
13150
- }), reports.map(function (item) {
13151
- return Object(external_wp_element_["createElement"])(external_wc_navigation_["WooNavigationItem"], {
13152
- item: item.navArgs.id,
13153
- key: item.navArgs.id
13154
- }, Object(external_wp_element_["createElement"])(external_wc_components_["Link"], {
13155
- className: "components-button",
13156
- href: Object(external_wc_navigation_["getNewPath"])(pathIsExcluded(item.report) ? {} : persistedQuery, "/analytics/".concat(item.report), {}),
13157
- type: "wc-admin"
13158
- }, item.title));
13159
- }));
13160
- };
13161
 
13162
- Object(external_wp_plugins_["registerPlugin"])('wc-admin-navigation', {
13163
- render: navigation_NavigationPlugin
13164
- });
13165
- // CONCATENATED MODULE: ./client/layout/index.js
13166
 
 
 
 
13167
 
 
 
13168
 
 
 
13169
 
 
 
 
 
 
13170
 
 
 
13171
 
 
13172
 
 
13173
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13174
 
 
 
 
13175
 
 
 
 
13176
 
 
13177
 
13178
 
 
13179
 
 
 
13180
 
 
13181
 
13182
- function layout_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
13183
 
13184
- function layout_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { layout_ownKeys(Object(source), true).forEach(function (key) { defineProperty_default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { layout_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
 
13185
 
13186
- function layout_createSuper(Derived) { var hasNativeReflectConstruct = layout_isNativeReflectConstruct(); return function _createSuperInternal() { var Super = getPrototypeOf_default()(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = getPrototypeOf_default()(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return possibleConstructorReturn_default()(this, result); }; }
13187
 
13188
- function layout_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
13189
 
 
13190
 
 
13191
 
 
 
 
 
 
 
13192
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13193
 
 
 
 
13194
 
 
 
 
 
 
 
 
13195
 
 
 
 
 
 
 
 
 
 
 
 
13196
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13197
 
 
 
13198
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13199
 
 
 
13200
 
 
 
 
 
 
 
 
13201
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13202
 
13203
- /**
13204
- * External dependencies
13205
- */
13206
 
 
 
 
 
 
 
 
13207
 
 
13208
 
 
 
 
13209
 
 
 
 
13210
 
 
13211
 
 
13212
 
 
 
 
13213
 
 
 
 
 
13214
 
 
 
 
 
 
13215
 
 
 
 
 
 
 
13216
 
 
 
13217
 
 
 
 
13218
 
13219
- /**
13220
- * Internal dependencies
13221
- */
13222
 
 
 
 
 
 
13223
 
 
 
 
 
 
13224
 
 
 
13225
 
 
 
 
 
 
 
13226
 
 
 
13227
 
 
 
 
13228
 
13229
- var StoreAlerts = Object(external_wp_element_["lazy"])(function () {
13230
- return Promise.all(/* import() | store-alerts */[__webpack_require__.e(1), __webpack_require__.e(47)]).then(__webpack_require__.bind(null, 714));
13231
- });
13232
- var WCPayUsageModal = Object(external_wp_element_["lazy"])(function () {
13233
- return __webpack_require__.e(/* import() | wcpay-usage-modal */ 51).then(__webpack_require__.bind(null, 609));
13234
- });
13235
- var layout_PrimaryLayout = /*#__PURE__*/function (_Component) {
13236
- inherits_default()(PrimaryLayout, _Component);
13237
 
13238
- var _super = layout_createSuper(PrimaryLayout);
 
 
 
 
13239
 
13240
- function PrimaryLayout() {
13241
- classCallCheck_default()(this, PrimaryLayout);
 
 
 
13242
 
13243
- return _super.apply(this, arguments);
13244
  }
13245
 
13246
- createClass_default()(PrimaryLayout, [{
13247
- key: "render",
13248
- value: function render() {
13249
- var children = this.props.children;
13250
- return Object(external_wp_element_["createElement"])("div", {
13251
- className: "woocommerce-layout__primary",
13252
- id: "woocommerce-layout__primary"
13253
- }, window.wcAdminFeatures['store-alerts'] && Object(external_wp_element_["createElement"])(external_wp_element_["Suspense"], {
13254
- fallback: Object(external_wp_element_["createElement"])(external_wc_components_["Spinner"], null)
13255
- }, Object(external_wp_element_["createElement"])(StoreAlerts, null)), Object(external_wp_element_["createElement"])(layout_notices, null), children);
13256
- }
13257
- }]);
13258
 
13259
- return PrimaryLayout;
13260
- }(external_wp_element_["Component"]);
 
 
13261
 
13262
- var layout_Layout = /*#__PURE__*/function (_Component2) {
13263
- inherits_default()(_Layout, _Component2);
13264
 
13265
- var _super2 = layout_createSuper(_Layout);
 
 
 
 
13266
 
13267
- function _Layout() {
13268
- classCallCheck_default()(this, _Layout);
13269
 
13270
- return _super2.apply(this, arguments);
13271
- }
 
13272
 
13273
- createClass_default()(_Layout, [{
13274
- key: "componentDidMount",
13275
- value: function componentDidMount() {
13276
- this.recordPageViewTrack();
13277
- }
13278
- }, {
13279
- key: "componentDidUpdate",
13280
- value: function componentDidUpdate(prevProps) {
13281
- var previousPath = Object(external_lodash_["get"])(prevProps, 'location.pathname');
13282
- var currentPath = Object(external_lodash_["get"])(this.props, 'location.pathname');
13283
 
13284
- if (!previousPath || !currentPath) {
13285
- return;
13286
- }
13287
-
13288
- if (previousPath !== currentPath) {
13289
- this.recordPageViewTrack();
13290
- }
13291
- }
13292
- }, {
13293
- key: "recordPageViewTrack",
13294
- value: function recordPageViewTrack() {
13295
- var _this$props = this.props,
13296
- activePlugins = _this$props.activePlugins,
13297
- installedPlugins = _this$props.installedPlugins,
13298
- isEmbedded = _this$props.isEmbedded,
13299
- isJetpackConnected = _this$props.isJetpackConnected;
13300
- var navigationFlag = {
13301
- has_navigation: !!window.wcNavigation
13302
- };
13303
-
13304
- if (isEmbedded) {
13305
- var _path = document.location.pathname + document.location.search;
13306
-
13307
- Object(external_wc_tracks_["recordPageView"])(_path, layout_objectSpread({
13308
- is_embedded: true
13309
- }, navigationFlag));
13310
- return;
13311
- }
13312
-
13313
- var pathname = Object(external_lodash_["get"])(this.props, 'location.pathname');
13314
-
13315
- if (!pathname) {
13316
- return;
13317
- } // Remove leading slash, and camel case remaining pathname
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13318
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13319
 
13320
- var path = pathname.substring(1).replace(/\//g, '_'); // When pathname is `/` we are on the home screen.
 
 
13321
 
13322
- if (path.length === 0) {
13323
- path = 'home_screen';
13324
- }
 
13325
 
13326
- Object(external_wc_tracks_["recordPageView"])(path, layout_objectSpread({
13327
- jetpack_installed: installedPlugins.includes('jetpack'),
13328
- jetpack_active: activePlugins.includes('jetpack'),
13329
- jetpack_connected: isJetpackConnected
13330
- }, navigationFlag));
13331
- }
13332
- }, {
13333
- key: "getQuery",
13334
- value: function getQuery(searchString) {
13335
- if (!searchString) {
13336
- return {};
13337
- }
13338
 
13339
- var search = searchString.substring(1);
13340
- return Object(lib["parse"])(search);
13341
- }
13342
- }, {
13343
- key: "isWCPaySettingsPage",
13344
- value: function isWCPaySettingsPage() {
13345
- var _getQuery = Object(external_wc_navigation_["getQuery"])(),
13346
- page = _getQuery.page,
13347
- section = _getQuery.section,
13348
- tab = _getQuery.tab;
13349
 
13350
- return page === 'wc-settings' && tab === 'checkout' && section === 'woocommerce_payments';
13351
- }
13352
- }, {
13353
- key: "render",
13354
- value: function render() {
13355
- var _this$props2 = this.props,
13356
- isEmbedded = _this$props2.isEmbedded,
13357
- restProps = objectWithoutProperties_default()(_this$props2, ["isEmbedded"]);
13358
 
13359
- var _this$props3 = this.props,
13360
- location = _this$props3.location,
13361
- page = _this$props3.page;
13362
- var breadcrumbs = page.breadcrumbs;
13363
- var query = this.getQuery(location && location.search);
13364
- return Object(external_wp_element_["createElement"])("div", {
13365
- className: "woocommerce-layout"
13366
- }, Object(external_wp_element_["createElement"])(client_header_Header, {
13367
- sections: Object(external_lodash_["isFunction"])(breadcrumbs) ? breadcrumbs(this.props) : breadcrumbs,
13368
- isEmbedded: isEmbedded,
13369
- query: query
13370
- }), Object(external_wp_element_["createElement"])(transient_notices, null), !isEmbedded && Object(external_wp_element_["createElement"])(layout_PrimaryLayout, null, Object(external_wp_element_["createElement"])("div", {
13371
- className: "woocommerce-layout__main"
13372
- }, Object(external_wp_element_["createElement"])(controller_Controller, extends_default()({}, restProps, {
13373
- query: query
13374
- })))), isEmbedded && this.isWCPaySettingsPage() && Object(external_wp_element_["createElement"])(external_wp_element_["Suspense"], {
13375
- fallback: null
13376
- }, Object(external_wp_element_["createElement"])(WCPayUsageModal, null)));
13377
- }
13378
- }]);
13379
 
13380
- return _Layout;
13381
- }(external_wp_element_["Component"]);
13382
 
13383
- layout_Layout.propTypes = {
13384
- isEmbedded: prop_types_default.a.bool,
13385
- page: prop_types_default.a.shape({
13386
- container: prop_types_default.a.oneOfType([prop_types_default.a.func, prop_types_default.a.object // Support React.lazy
13387
- ]),
13388
- path: prop_types_default.a.string,
13389
- breadcrumbs: prop_types_default.a.oneOfType([prop_types_default.a.func, prop_types_default.a.arrayOf(prop_types_default.a.oneOfType([prop_types_default.a.arrayOf(prop_types_default.a.string), prop_types_default.a.string]))]).isRequired,
13390
- wpOpenMenu: prop_types_default.a.string
13391
- }).isRequired
13392
  };
13393
- var Layout = Object(external_wp_compose_["compose"])(Object(external_wc_data_["withPluginsHydration"])(layout_objectSpread(layout_objectSpread({}, window.wcSettings.plugins || {}), {}, {
13394
- jetpackStatus: window.wcSettings.dataEndpoints && window.wcSettings.dataEndpoints.jetpackStatus || false
13395
- })), Object(external_wp_data_["withSelect"])(function (select, _ref) {
13396
- var isEmbedded = _ref.isEmbedded;
13397
 
13398
- // Embedded pages don't send plugin info to Tracks.
13399
- if (isEmbedded) {
13400
- return;
13401
- }
 
 
 
 
13402
 
13403
- var _select = select(external_wc_data_["PLUGINS_STORE_NAME"]),
13404
- getActivePlugins = _select.getActivePlugins,
13405
- getInstalledPlugins = _select.getInstalledPlugins,
13406
- isJetpackConnected = _select.isJetpackConnected;
13407
 
13408
- return {
13409
- activePlugins: getActivePlugins(),
13410
- isJetpackConnected: isJetpackConnected(),
13411
- installedPlugins: getInstalledPlugins()
13412
- };
13413
- }))(layout_Layout);
13414
 
13415
- var layout_PageLayout = function _PageLayout() {
13416
- var _useUser = Object(external_wc_data_["useUser"])(),
13417
- currentUserCan = _useUser.currentUserCan;
 
 
 
13418
 
13419
- return Object(external_wp_element_["createElement"])(react_router_Router, {
13420
- history: Object(external_wc_navigation_["getHistory"])()
13421
- }, Object(external_wp_element_["createElement"])(react_router_Switch, null, controller_getPages().filter(function (page) {
13422
- return !page.capability || currentUserCan(page.capability);
13423
- }).map(function (page) {
13424
- return Object(external_wp_element_["createElement"])(react_router_Route, {
13425
- key: page.path,
13426
- path: page.path,
13427
- exact: true,
13428
- render: function render(props) {
13429
- return Object(external_wp_element_["createElement"])(Layout, extends_default()({
13430
- page: page
13431
- }, props));
13432
- }
13433
  });
13434
- })));
13435
- };
 
 
 
 
 
13436
 
13437
- var PageLayout = Object(external_wp_compose_["compose"])(window.wcSettings.preloadOptions ? Object(external_wc_data_["withOptionsHydration"])(layout_objectSpread({}, window.wcSettings.preloadOptions)) : external_lodash_["identity"])(layout_PageLayout);
13438
 
13439
- var layout_EmbedLayout = function _EmbedLayout() {
13440
- return Object(external_wp_element_["createElement"])(Layout, {
13441
- page: {
13442
- breadcrumbs: Object(wc_admin_settings["g" /* getSetting */])('embedBreadcrumbs', [])
13443
- },
13444
- isEmbedded: true
13445
  });
 
13446
  };
13447
 
13448
- var EmbedLayout = Object(external_wp_compose_["compose"])(window.wcSettings.preloadOptions ? Object(external_wc_data_["withOptionsHydration"])(layout_objectSpread({}, window.wcSettings.preloadOptions)) : external_lodash_["identity"])(layout_EmbedLayout);
13449
-
13450
- /***/ }),
13451
- /* 281 */
13452
- /***/ (function(module, exports) {
13453
-
13454
- (function() { module.exports = window["wc"]["number"]; }());
13455
-
13456
- /***/ }),
13457
- /* 282 */,
13458
- /* 283 */
13459
- /***/ (function(module, exports, __webpack_require__) {
13460
-
13461
- var $ = __webpack_require__(12);
13462
- var from = __webpack_require__(234);
13463
- var checkCorrectnessOfIteration = __webpack_require__(165);
13464
-
13465
- var INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {
13466
- Array.from(iterable);
13467
- });
13468
 
13469
- // `Array.from` method
13470
- // https://tc39.es/ecma262/#sec-array.from
13471
- $({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {
13472
- from: from
13473
- });
13474
 
 
 
13475
 
13476
- /***/ }),
13477
- /* 284 */,
13478
- /* 285 */
13479
- /***/ (function(module, exports, __webpack_require__) {
13480
-
13481
- var $ = __webpack_require__(12);
13482
- var $values = __webpack_require__(249).values;
13483
-
13484
- // `Object.values` method
13485
- // https://tc39.es/ecma262/#sec-object.values
13486
- $({ target: 'Object', stat: true }, {
13487
- values: function values(O) {
13488
- return $values(O);
13489
- }
13490
- });
13491
-
13492
-
13493
- /***/ }),
13494
- /* 286 */,
13495
- /* 287 */
13496
- /***/ (function(module, exports, __webpack_require__) {
13497
-
13498
- "use strict";
13499
-
13500
- // TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
13501
- __webpack_require__(151);
13502
- var $ = __webpack_require__(12);
13503
- var DESCRIPTORS = __webpack_require__(13);
13504
- var USE_NATIVE_URL = __webpack_require__(254);
13505
- var global = __webpack_require__(3);
13506
- var defineProperties = __webpack_require__(104);
13507
- var redefine = __webpack_require__(27);
13508
- var anInstance = __webpack_require__(136);
13509
- var has = __webpack_require__(11);
13510
- var assign = __webpack_require__(221);
13511
- var arrayFrom = __webpack_require__(234);
13512
- var codeAt = __webpack_require__(125).codeAt;
13513
- var toASCII = __webpack_require__(294);
13514
- var setToStringTag = __webpack_require__(90);
13515
- var URLSearchParamsModule = __webpack_require__(295);
13516
- var InternalStateModule = __webpack_require__(45);
13517
-
13518
- var NativeURL = global.URL;
13519
- var URLSearchParams = URLSearchParamsModule.URLSearchParams;
13520
- var getInternalSearchParamsState = URLSearchParamsModule.getState;
13521
- var setInternalState = InternalStateModule.set;
13522
- var getInternalURLState = InternalStateModule.getterFor('URL');
13523
- var floor = Math.floor;
13524
- var pow = Math.pow;
13525
-
13526
- var INVALID_AUTHORITY = 'Invalid authority';
13527
- var INVALID_SCHEME = 'Invalid scheme';
13528
- var INVALID_HOST = 'Invalid host';
13529
- var INVALID_PORT = 'Invalid port';
13530
-
13531
- var ALPHA = /[A-Za-z]/;
13532
- var ALPHANUMERIC = /[\d+-.A-Za-z]/;
13533
- var DIGIT = /\d/;
13534
- var HEX_START = /^(0x|0X)/;
13535
- var OCT = /^[0-7]+$/;
13536
- var DEC = /^\d+$/;
13537
- var HEX = /^[\dA-Fa-f]+$/;
13538
- /* eslint-disable no-control-regex -- safe */
13539
- var FORBIDDEN_HOST_CODE_POINT = /[\u0000\t\u000A\u000D #%/:?@[\\]]/;
13540
- var FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\u0000\t\u000A\u000D #/:?@[\\]]/;
13541
- var LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\u0000-\u001F ]+|[\u0000-\u001F ]+$/g;
13542
- var TAB_AND_NEW_LINE = /[\t\u000A\u000D]/g;
13543
- /* eslint-enable no-control-regex -- safe */
13544
- var EOF;
13545
-
13546
- var parseHost = function (url, input) {
13547
- var result, codePoints, index;
13548
- if (input.charAt(0) == '[') {
13549
- if (input.charAt(input.length - 1) != ']') return INVALID_HOST;
13550
- result = parseIPv6(input.slice(1, -1));
13551
- if (!result) return INVALID_HOST;
13552
- url.host = result;
13553
- // opaque host
13554
- } else if (!isSpecial(url)) {
13555
- if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST;
13556
- result = '';
13557
- codePoints = arrayFrom(input);
13558
- for (index = 0; index < codePoints.length; index++) {
13559
- result += percentEncode(codePoints[index], C0ControlPercentEncodeSet);
13560
- }
13561
- url.host = result;
13562
- } else {
13563
- input = toASCII(input);
13564
- if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST;
13565
- result = parseIPv4(input);
13566
- if (result === null) return INVALID_HOST;
13567
- url.host = result;
13568
- }
13569
- };
13570
-
13571
- var parseIPv4 = function (input) {
13572
- var parts = input.split('.');
13573
- var partsLength, numbers, index, part, radix, number, ipv4;
13574
- if (parts.length && parts[parts.length - 1] == '') {
13575
- parts.pop();
13576
- }
13577
- partsLength = parts.length;
13578
- if (partsLength > 4) return input;
13579
- numbers = [];
13580
- for (index = 0; index < partsLength; index++) {
13581
- part = parts[index];
13582
- if (part == '') return input;
13583
- radix = 10;
13584
- if (part.length > 1 && part.charAt(0) == '0') {
13585
- radix = HEX_START.test(part) ? 16 : 8;
13586
- part = part.slice(radix == 8 ? 1 : 2);
13587
- }
13588
- if (part === '') {
13589
- number = 0;
13590
  } else {
13591
- if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input;
13592
- number = parseInt(part, radix);
 
13593
  }
13594
- numbers.push(number);
13595
- }
13596
- for (index = 0; index < partsLength; index++) {
13597
- number = numbers[index];
13598
- if (index == partsLength - 1) {
13599
- if (number >= pow(256, 5 - partsLength)) return null;
13600
- } else if (number > 255) return null;
13601
- }
13602
- ipv4 = numbers.pop();
13603
- for (index = 0; index < numbers.length; index++) {
13604
- ipv4 += numbers[index] * pow(256, 3 - index);
13605
- }
13606
- return ipv4;
13607
- };
13608
-
13609
- // eslint-disable-next-line max-statements -- TODO
13610
- var parseIPv6 = function (input) {
13611
- var address = [0, 0, 0, 0, 0, 0, 0, 0];
13612
- var pieceIndex = 0;
13613
- var compress = null;
13614
- var pointer = 0;
13615
- var value, length, numbersSeen, ipv4Piece, number, swaps, swap;
13616
-
13617
- var char = function () {
13618
- return input.charAt(pointer);
13619
- };
13620
-
13621
- if (char() == ':') {
13622
- if (input.charAt(1) != ':') return;
13623
- pointer += 2;
13624
- pieceIndex++;
13625
- compress = pieceIndex;
13626
- }
13627
- while (char()) {
13628
- if (pieceIndex == 8) return;
13629
- if (char() == ':') {
13630
- if (compress !== null) return;
13631
- pointer++;
13632
- pieceIndex++;
13633
- compress = pieceIndex;
13634
- continue;
13635
- }
13636
- value = length = 0;
13637
- while (length < 4 && HEX.test(char())) {
13638
- value = value * 16 + parseInt(char(), 16);
13639
- pointer++;
13640
- length++;
13641
- }
13642
- if (char() == '.') {
13643
- if (length == 0) return;
13644
- pointer -= length;
13645
- if (pieceIndex > 6) return;
13646
- numbersSeen = 0;
13647
- while (char()) {
13648
- ipv4Piece = null;
13649
- if (numbersSeen > 0) {
13650
- if (char() == '.' && numbersSeen < 4) pointer++;
13651
- else return;
13652
- }
13653
- if (!DIGIT.test(char())) return;
13654
- while (DIGIT.test(char())) {
13655
- number = parseInt(char(), 10);
13656
- if (ipv4Piece === null) ipv4Piece = number;
13657
- else if (ipv4Piece == 0) return;
13658
- else ipv4Piece = ipv4Piece * 10 + number;
13659
- if (ipv4Piece > 255) return;
13660
- pointer++;
13661
- }
13662
- address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;
13663
- numbersSeen++;
13664
- if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++;
13665
- }
13666
- if (numbersSeen != 4) return;
13667
- break;
13668
- } else if (char() == ':') {
13669
- pointer++;
13670
- if (!char()) return;
13671
- } else if (char()) return;
13672
- address[pieceIndex++] = value;
13673
- }
13674
- if (compress !== null) {
13675
- swaps = pieceIndex - compress;
13676
- pieceIndex = 7;
13677
- while (pieceIndex != 0 && swaps > 0) {
13678
- swap = address[pieceIndex];
13679
- address[pieceIndex--] = address[compress + swaps - 1];
13680
- address[compress + --swaps] = swap;
13681
- }
13682
- } else if (pieceIndex != 8) return;
13683
- return address;
13684
- };
13685
 
13686
- var findLongestZeroSequence = function (ipv6) {
13687
- var maxIndex = null;
13688
- var maxLength = 1;
13689
- var currStart = null;
13690
- var currLength = 0;
13691
- var index = 0;
13692
- for (; index < 8; index++) {
13693
- if (ipv6[index] !== 0) {
13694
- if (currLength > maxLength) {
13695
- maxIndex = currStart;
13696
- maxLength = currLength;
13697
- }
13698
- currStart = null;
13699
- currLength = 0;
13700
- } else {
13701
- if (currStart === null) currStart = index;
13702
- ++currLength;
13703
- }
13704
- }
13705
- if (currLength > maxLength) {
13706
- maxIndex = currStart;
13707
- maxLength = currLength;
13708
- }
13709
- return maxIndex;
13710
- };
13711
 
13712
- var serializeHost = function (host) {
13713
- var result, index, compress, ignore0;
13714
- // ipv4
13715
- if (typeof host == 'number') {
13716
- result = [];
13717
- for (index = 0; index < 4; index++) {
13718
- result.unshift(host % 256);
13719
- host = floor(host / 256);
13720
- } return result.join('.');
13721
- // ipv6
13722
- } else if (typeof host == 'object') {
13723
- result = '';
13724
- compress = findLongestZeroSequence(host);
13725
- for (index = 0; index < 8; index++) {
13726
- if (ignore0 && host[index] === 0) continue;
13727
- if (ignore0) ignore0 = false;
13728
- if (compress === index) {
13729
- result += index ? ':' : '::';
13730
- ignore0 = true;
13731
- } else {
13732
- result += host[index].toString(16);
13733
- if (index < 7) result += ':';
13734
- }
13735
- }
13736
- return '[' + result + ']';
13737
- } return host;
13738
- };
13739
 
13740
- var C0ControlPercentEncodeSet = {};
13741
- var fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {
13742
- ' ': 1, '"': 1, '<': 1, '>': 1, '`': 1
13743
- });
13744
- var pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {
13745
- '#': 1, '?': 1, '{': 1, '}': 1
13746
- });
13747
- var userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {
13748
- '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\': 1, ']': 1, '^': 1, '|': 1
13749
- });
13750
 
13751
- var percentEncode = function (char, set) {
13752
- var code = codeAt(char, 0);
13753
- return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char);
13754
- };
 
 
 
13755
 
13756
- var specialSchemes = {
13757
- ftp: 21,
13758
- file: null,
13759
- http: 80,
13760
- https: 443,
13761
- ws: 80,
13762
- wss: 443
13763
- };
13764
 
13765
- var isSpecial = function (url) {
13766
- return has(specialSchemes, url.scheme);
13767
- };
13768
 
13769
- var includesCredentials = function (url) {
13770
- return url.username != '' || url.password != '';
13771
- };
 
 
13772
 
13773
- var cannotHaveUsernamePasswordPort = function (url) {
13774
- return !url.host || url.cannotBeABaseURL || url.scheme == 'file';
13775
- };
 
 
 
 
 
 
 
 
 
 
13776
 
13777
- var isWindowsDriveLetter = function (string, normalized) {
13778
- var second;
13779
- return string.length == 2 && ALPHA.test(string.charAt(0))
13780
- && ((second = string.charAt(1)) == ':' || (!normalized && second == '|'));
13781
- };
13782
 
13783
- var startsWithWindowsDriveLetter = function (string) {
13784
- var third;
13785
- return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && (
13786
- string.length == 2 ||
13787
- ((third = string.charAt(2)) === '/' || third === '\\' || third === '?' || third === '#')
13788
- );
13789
- };
13790
 
13791
- var shortenURLsPath = function (url) {
13792
- var path = url.path;
13793
- var pathSize = path.length;
13794
- if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) {
13795
- path.pop();
13796
- }
13797
- };
13798
 
13799
- var isSingleDot = function (segment) {
13800
- return segment === '.' || segment.toLowerCase() === '%2e';
13801
- };
13802
 
13803
- var isDoubleDot = function (segment) {
13804
- segment = segment.toLowerCase();
13805
- return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';
13806
- };
 
 
 
13807
 
13808
- // States:
13809
- var SCHEME_START = {};
13810
- var SCHEME = {};
13811
- var NO_SCHEME = {};
13812
- var SPECIAL_RELATIVE_OR_AUTHORITY = {};
13813
- var PATH_OR_AUTHORITY = {};
13814
- var RELATIVE = {};
13815
- var RELATIVE_SLASH = {};
13816
- var SPECIAL_AUTHORITY_SLASHES = {};
13817
- var SPECIAL_AUTHORITY_IGNORE_SLASHES = {};
13818
- var AUTHORITY = {};
13819
- var HOST = {};
13820
- var HOSTNAME = {};
13821
- var PORT = {};
13822
- var FILE = {};
13823
- var FILE_SLASH = {};
13824
- var FILE_HOST = {};
13825
- var PATH_START = {};
13826
- var PATH = {};
13827
- var CANNOT_BE_A_BASE_URL_PATH = {};
13828
- var QUERY = {};
13829
- var FRAGMENT = {};
13830
-
13831
- // eslint-disable-next-line max-statements -- TODO
13832
- var parseURL = function (url, input, stateOverride, base) {
13833
- var state = stateOverride || SCHEME_START;
13834
- var pointer = 0;
13835
- var buffer = '';
13836
- var seenAt = false;
13837
- var seenBracket = false;
13838
- var seenPasswordToken = false;
13839
- var codePoints, char, bufferCodePoints, failure;
13840
-
13841
- if (!stateOverride) {
13842
- url.scheme = '';
13843
- url.username = '';
13844
- url.password = '';
13845
- url.host = null;
13846
- url.port = null;
13847
- url.path = [];
13848
- url.query = null;
13849
- url.fragment = null;
13850
- url.cannotBeABaseURL = false;
13851
- input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, '');
13852
- }
13853
-
13854
- input = input.replace(TAB_AND_NEW_LINE, '');
13855
-
13856
- codePoints = arrayFrom(input);
13857
-
13858
- while (pointer <= codePoints.length) {
13859
- char = codePoints[pointer];
13860
- switch (state) {
13861
- case SCHEME_START:
13862
- if (char && ALPHA.test(char)) {
13863
- buffer += char.toLowerCase();
13864
- state = SCHEME;
13865
- } else if (!stateOverride) {
13866
- state = NO_SCHEME;
13867
- continue;
13868
- } else return INVALID_SCHEME;
13869
- break;
13870
 
13871
- case SCHEME:
13872
- if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) {
13873
- buffer += char.toLowerCase();
13874
- } else if (char == ':') {
13875
- if (stateOverride && (
13876
- (isSpecial(url) != has(specialSchemes, buffer)) ||
13877
- (buffer == 'file' && (includesCredentials(url) || url.port !== null)) ||
13878
- (url.scheme == 'file' && !url.host)
13879
- )) return;
13880
- url.scheme = buffer;
13881
- if (stateOverride) {
13882
- if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null;
13883
- return;
13884
- }
13885
- buffer = '';
13886
- if (url.scheme == 'file') {
13887
- state = FILE;
13888
- } else if (isSpecial(url) && base && base.scheme == url.scheme) {
13889
- state = SPECIAL_RELATIVE_OR_AUTHORITY;
13890
- } else if (isSpecial(url)) {
13891
- state = SPECIAL_AUTHORITY_SLASHES;
13892
- } else if (codePoints[pointer + 1] == '/') {
13893
- state = PATH_OR_AUTHORITY;
13894
- pointer++;
13895
- } else {
13896
- url.cannotBeABaseURL = true;
13897
- url.path.push('');
13898
- state = CANNOT_BE_A_BASE_URL_PATH;
13899
- }
13900
- } else if (!stateOverride) {
13901
- buffer = '';
13902
- state = NO_SCHEME;
13903
- pointer = 0;
13904
- continue;
13905
- } else return INVALID_SCHEME;
13906
- break;
13907
 
13908
- case NO_SCHEME:
13909
- if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME;
13910
- if (base.cannotBeABaseURL && char == '#') {
13911
- url.scheme = base.scheme;
13912
- url.path = base.path.slice();
13913
- url.query = base.query;
13914
- url.fragment = '';
13915
- url.cannotBeABaseURL = true;
13916
- state = FRAGMENT;
13917
- break;
13918
- }
13919
- state = base.scheme == 'file' ? FILE : RELATIVE;
13920
- continue;
13921
 
13922
- case SPECIAL_RELATIVE_OR_AUTHORITY:
13923
- if (char == '/' && codePoints[pointer + 1] == '/') {
13924
- state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
13925
- pointer++;
13926
- } else {
13927
- state = RELATIVE;
13928
- continue;
13929
- } break;
13930
 
13931
- case PATH_OR_AUTHORITY:
13932
- if (char == '/') {
13933
- state = AUTHORITY;
13934
- break;
13935
- } else {
13936
- state = PATH;
13937
- continue;
13938
- }
13939
 
13940
- case RELATIVE:
13941
- url.scheme = base.scheme;
13942
- if (char == EOF) {
13943
- url.username = base.username;
13944
- url.password = base.password;
13945
- url.host = base.host;
13946
- url.port = base.port;
13947
- url.path = base.path.slice();
13948
- url.query = base.query;
13949
- } else if (char == '/' || (char == '\\' && isSpecial(url))) {
13950
- state = RELATIVE_SLASH;
13951
- } else if (char == '?') {
13952
- url.username = base.username;
13953
- url.password = base.password;
13954
- url.host = base.host;
13955
- url.port = base.port;
13956
- url.path = base.path.slice();
13957
- url.query = '';
13958
- state = QUERY;
13959
- } else if (char == '#') {
13960
- url.username = base.username;
13961
- url.password = base.password;
13962
- url.host = base.host;
13963
- url.port = base.port;
13964
- url.path = base.path.slice();
13965
- url.query = base.query;
13966
- url.fragment = '';
13967
- state = FRAGMENT;
13968
- } else {
13969
- url.username = base.username;
13970
- url.password = base.password;
13971
- url.host = base.host;
13972
- url.port = base.port;
13973
- url.path = base.path.slice();
13974
- url.path.pop();
13975
- state = PATH;
13976
- continue;
13977
- } break;
13978
 
13979
- case RELATIVE_SLASH:
13980
- if (isSpecial(url) && (char == '/' || char == '\\')) {
13981
- state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
13982
- } else if (char == '/') {
13983
- state = AUTHORITY;
13984
- } else {
13985
- url.username = base.username;
13986
- url.password = base.password;
13987
- url.host = base.host;
13988
- url.port = base.port;
13989
- state = PATH;
13990
- continue;
13991
- } break;
13992
 
13993
- case SPECIAL_AUTHORITY_SLASHES:
13994
- state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
13995
- if (char != '/' || buffer.charAt(pointer + 1) != '/') continue;
13996
- pointer++;
13997
- break;
13998
 
13999
- case SPECIAL_AUTHORITY_IGNORE_SLASHES:
14000
- if (char != '/' && char != '\\') {
14001
- state = AUTHORITY;
14002
- continue;
14003
- } break;
14004
-
14005
- case AUTHORITY:
14006
- if (char == '@') {
14007
- if (seenAt) buffer = '%40' + buffer;
14008
- seenAt = true;
14009
- bufferCodePoints = arrayFrom(buffer);
14010
- for (var i = 0; i < bufferCodePoints.length; i++) {
14011
- var codePoint = bufferCodePoints[i];
14012
- if (codePoint == ':' && !seenPasswordToken) {
14013
- seenPasswordToken = true;
14014
- continue;
14015
- }
14016
- var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet);
14017
- if (seenPasswordToken) url.password += encodedCodePoints;
14018
- else url.username += encodedCodePoints;
14019
- }
14020
- buffer = '';
14021
- } else if (
14022
- char == EOF || char == '/' || char == '?' || char == '#' ||
14023
- (char == '\\' && isSpecial(url))
14024
- ) {
14025
- if (seenAt && buffer == '') return INVALID_AUTHORITY;
14026
- pointer -= arrayFrom(buffer).length + 1;
14027
- buffer = '';
14028
- state = HOST;
14029
- } else buffer += char;
14030
- break;
14031
 
14032
- case HOST:
14033
- case HOSTNAME:
14034
- if (stateOverride && url.scheme == 'file') {
14035
- state = FILE_HOST;
14036
- continue;
14037
- } else if (char == ':' && !seenBracket) {
14038
- if (buffer == '') return INVALID_HOST;
14039
- failure = parseHost(url, buffer);
14040
- if (failure) return failure;
14041
- buffer = '';
14042
- state = PORT;
14043
- if (stateOverride == HOSTNAME) return;
14044
- } else if (
14045
- char == EOF || char == '/' || char == '?' || char == '#' ||
14046
- (char == '\\' && isSpecial(url))
14047
- ) {
14048
- if (isSpecial(url) && buffer == '') return INVALID_HOST;
14049
- if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return;
14050
- failure = parseHost(url, buffer);
14051
- if (failure) return failure;
14052
- buffer = '';
14053
- state = PATH_START;
14054
- if (stateOverride) return;
14055
- continue;
14056
- } else {
14057
- if (char == '[') seenBracket = true;
14058
- else if (char == ']') seenBracket = false;
14059
- buffer += char;
14060
- } break;
14061
-
14062
- case PORT:
14063
- if (DIGIT.test(char)) {
14064
- buffer += char;
14065
- } else if (
14066
- char == EOF || char == '/' || char == '?' || char == '#' ||
14067
- (char == '\\' && isSpecial(url)) ||
14068
- stateOverride
14069
- ) {
14070
- if (buffer != '') {
14071
- var port = parseInt(buffer, 10);
14072
- if (port > 0xFFFF) return INVALID_PORT;
14073
- url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port;
14074
- buffer = '';
14075
- }
14076
- if (stateOverride) return;
14077
- state = PATH_START;
14078
- continue;
14079
- } else return INVALID_PORT;
14080
- break;
14081
 
14082
- case FILE:
14083
- url.scheme = 'file';
14084
- if (char == '/' || char == '\\') state = FILE_SLASH;
14085
- else if (base && base.scheme == 'file') {
14086
- if (char == EOF) {
14087
- url.host = base.host;
14088
- url.path = base.path.slice();
14089
- url.query = base.query;
14090
- } else if (char == '?') {
14091
- url.host = base.host;
14092
- url.path = base.path.slice();
14093
- url.query = '';
14094
- state = QUERY;
14095
- } else if (char == '#') {
14096
- url.host = base.host;
14097
- url.path = base.path.slice();
14098
- url.query = base.query;
14099
- url.fragment = '';
14100
- state = FRAGMENT;
14101
- } else {
14102
- if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {
14103
- url.host = base.host;
14104
- url.path = base.path.slice();
14105
- shortenURLsPath(url);
14106
- }
14107
- state = PATH;
14108
- continue;
14109
- }
14110
- } else {
14111
- state = PATH;
14112
- continue;
14113
- } break;
14114
 
14115
- case FILE_SLASH:
14116
- if (char == '/' || char == '\\') {
14117
- state = FILE_HOST;
14118
- break;
14119
- }
14120
- if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {
14121
- if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]);
14122
- else url.host = base.host;
14123
- }
14124
- state = PATH;
14125
- continue;
14126
-
14127
- case FILE_HOST:
14128
- if (char == EOF || char == '/' || char == '\\' || char == '?' || char == '#') {
14129
- if (!stateOverride && isWindowsDriveLetter(buffer)) {
14130
- state = PATH;
14131
- } else if (buffer == '') {
14132
- url.host = '';
14133
- if (stateOverride) return;
14134
- state = PATH_START;
14135
- } else {
14136
- failure = parseHost(url, buffer);
14137
- if (failure) return failure;
14138
- if (url.host == 'localhost') url.host = '';
14139
- if (stateOverride) return;
14140
- buffer = '';
14141
- state = PATH_START;
14142
- } continue;
14143
- } else buffer += char;
14144
- break;
14145
 
14146
- case PATH_START:
14147
- if (isSpecial(url)) {
14148
- state = PATH;
14149
- if (char != '/' && char != '\\') continue;
14150
- } else if (!stateOverride && char == '?') {
14151
- url.query = '';
14152
- state = QUERY;
14153
- } else if (!stateOverride && char == '#') {
14154
- url.fragment = '';
14155
- state = FRAGMENT;
14156
- } else if (char != EOF) {
14157
- state = PATH;
14158
- if (char != '/') continue;
14159
- } break;
14160
-
14161
- case PATH:
14162
- if (
14163
- char == EOF || char == '/' ||
14164
- (char == '\\' && isSpecial(url)) ||
14165
- (!stateOverride && (char == '?' || char == '#'))
14166
- ) {
14167
- if (isDoubleDot(buffer)) {
14168
- shortenURLsPath(url);
14169
- if (char != '/' && !(char == '\\' && isSpecial(url))) {
14170
- url.path.push('');
14171
- }
14172
- } else if (isSingleDot(buffer)) {
14173
- if (char != '/' && !(char == '\\' && isSpecial(url))) {
14174
- url.path.push('');
14175
- }
14176
- } else {
14177
- if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {
14178
- if (url.host) url.host = '';
14179
- buffer = buffer.charAt(0) + ':'; // normalize windows drive letter
14180
- }
14181
- url.path.push(buffer);
14182
- }
14183
- buffer = '';
14184
- if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) {
14185
- while (url.path.length > 1 && url.path[0] === '') {
14186
- url.path.shift();
14187
- }
14188
- }
14189
- if (char == '?') {
14190
- url.query = '';
14191
- state = QUERY;
14192
- } else if (char == '#') {
14193
- url.fragment = '';
14194
- state = FRAGMENT;
14195
- }
14196
- } else {
14197
- buffer += percentEncode(char, pathPercentEncodeSet);
14198
- } break;
14199
-
14200
- case CANNOT_BE_A_BASE_URL_PATH:
14201
- if (char == '?') {
14202
- url.query = '';
14203
- state = QUERY;
14204
- } else if (char == '#') {
14205
- url.fragment = '';
14206
- state = FRAGMENT;
14207
- } else if (char != EOF) {
14208
- url.path[0] += percentEncode(char, C0ControlPercentEncodeSet);
14209
- } break;
14210
-
14211
- case QUERY:
14212
- if (!stateOverride && char == '#') {
14213
- url.fragment = '';
14214
- state = FRAGMENT;
14215
- } else if (char != EOF) {
14216
- if (char == "'" && isSpecial(url)) url.query += '%27';
14217
- else if (char == '#') url.query += '%23';
14218
- else url.query += percentEncode(char, C0ControlPercentEncodeSet);
14219
- } break;
14220
-
14221
- case FRAGMENT:
14222
- if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet);
14223
- break;
14224
- }
14225
 
14226
- pointer++;
 
 
14227
  }
14228
  };
14229
 
14230
- // `URL` constructor
14231
- // https://url.spec.whatwg.org/#url-class
14232
- var URLConstructor = function URL(url /* , base */) {
14233
- var that = anInstance(this, URLConstructor, 'URL');
14234
- var base = arguments.length > 1 ? arguments[1] : undefined;
14235
- var urlString = String(url);
14236
- var state = setInternalState(that, { type: 'URL' });
14237
- var baseState, failure;
14238
- if (base !== undefined) {
14239
- if (base instanceof URLConstructor) baseState = getInternalURLState(base);
14240
- else {
14241
- failure = parseURL(baseState = {}, String(base));
14242
- if (failure) throw TypeError(failure);
14243
- }
14244
- }
14245
- failure = parseURL(state, urlString, null, baseState);
14246
- if (failure) throw TypeError(failure);
14247
- var searchParams = state.searchParams = new URLSearchParams();
14248
- var searchParamsState = getInternalSearchParamsState(searchParams);
14249
- searchParamsState.updateSearchParams(state.query);
14250
- searchParamsState.updateURL = function () {
14251
- state.query = String(searchParams) || null;
14252
- };
14253
- if (!DESCRIPTORS) {
14254
- that.href = serializeURL.call(that);
14255
- that.origin = getOrigin.call(that);
14256
- that.protocol = getProtocol.call(that);
14257
- that.username = getUsername.call(that);
14258
- that.password = getPassword.call(that);
14259
- that.host = getHost.call(that);
14260
- that.hostname = getHostname.call(that);
14261
- that.port = getPort.call(that);
14262
- that.pathname = getPathname.call(that);
14263
- that.search = getSearch.call(that);
14264
- that.searchParams = getSearchParams.call(that);
14265
- that.hash = getHash.call(that);
14266
- }
14267
  };
14268
 
14269
- var URLPrototype = URLConstructor.prototype;
14270
-
14271
- var serializeURL = function () {
14272
- var url = getInternalURLState(this);
14273
- var scheme = url.scheme;
14274
- var username = url.username;
14275
- var password = url.password;
14276
- var host = url.host;
14277
- var port = url.port;
14278
- var path = url.path;
14279
- var query = url.query;
14280
- var fragment = url.fragment;
14281
- var output = scheme + ':';
14282
- if (host !== null) {
14283
- output += '//';
14284
- if (includesCredentials(url)) {
14285
- output += username + (password ? ':' + password : '') + '@';
14286
- }
14287
- output += serializeHost(host);
14288
- if (port !== null) output += ':' + port;
14289
- } else if (scheme == 'file') output += '//';
14290
- output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';
14291
- if (query !== null) output += '?' + query;
14292
- if (fragment !== null) output += '#' + fragment;
14293
- return output;
14294
- };
14295
 
14296
- var getOrigin = function () {
14297
- var url = getInternalURLState(this);
14298
- var scheme = url.scheme;
14299
- var port = url.port;
14300
- if (scheme == 'blob') try {
14301
- return new URL(scheme.path[0]).origin;
14302
- } catch (error) {
14303
- return 'null';
14304
  }
14305
- if (scheme == 'file' || !isSpecial(url)) return 'null';
14306
- return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : '');
14307
- };
14308
 
14309
- var getProtocol = function () {
14310
- return getInternalURLState(this).scheme + ':';
14311
- };
14312
 
14313
- var getUsername = function () {
14314
- return getInternalURLState(this).username;
14315
- };
 
 
14316
 
14317
- var getPassword = function () {
14318
- return getInternalURLState(this).password;
14319
- };
14320
 
14321
- var getHost = function () {
14322
- var url = getInternalURLState(this);
14323
- var host = url.host;
14324
- var port = url.port;
14325
- return host === null ? ''
14326
- : port === null ? serializeHost(host)
14327
- : serializeHost(host) + ':' + port;
14328
- };
14329
 
14330
- var getHostname = function () {
14331
- var host = getInternalURLState(this).host;
14332
- return host === null ? '' : serializeHost(host);
14333
- };
14334
 
14335
- var getPort = function () {
14336
- var port = getInternalURLState(this).port;
14337
- return port === null ? '' : String(port);
14338
- };
14339
 
14340
- var getPathname = function () {
14341
- var url = getInternalURLState(this);
14342
- var path = url.path;
14343
- return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';
14344
- };
14345
 
14346
- var getSearch = function () {
14347
- var query = getInternalURLState(this).query;
14348
- return query ? '?' + query : '';
14349
- };
14350
 
14351
- var getSearchParams = function () {
14352
- return getInternalURLState(this).searchParams;
14353
- };
14354
-
14355
- var getHash = function () {
14356
- var fragment = getInternalURLState(this).fragment;
14357
- return fragment ? '#' + fragment : '';
14358
- };
14359
 
14360
- var accessorDescriptor = function (getter, setter) {
14361
- return { get: getter, set: setter, configurable: true, enumerable: true };
14362
- };
14363
 
14364
- if (DESCRIPTORS) {
14365
- defineProperties(URLPrototype, {
14366
- // `URL.prototype.href` accessors pair
14367
- // https://url.spec.whatwg.org/#dom-url-href
14368
- href: accessorDescriptor(serializeURL, function (href) {
14369
- var url = getInternalURLState(this);
14370
- var urlString = String(href);
14371
- var failure = parseURL(url, urlString);
14372
- if (failure) throw TypeError(failure);
14373
- getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);
14374
- }),
14375
- // `URL.prototype.origin` getter
14376
- // https://url.spec.whatwg.org/#dom-url-origin
14377
- origin: accessorDescriptor(getOrigin),
14378
- // `URL.prototype.protocol` accessors pair
14379
- // https://url.spec.whatwg.org/#dom-url-protocol
14380
- protocol: accessorDescriptor(getProtocol, function (protocol) {
14381
- var url = getInternalURLState(this);
14382
- parseURL(url, String(protocol) + ':', SCHEME_START);
14383
- }),
14384
- // `URL.prototype.username` accessors pair
14385
- // https://url.spec.whatwg.org/#dom-url-username
14386
- username: accessorDescriptor(getUsername, function (username) {
14387
- var url = getInternalURLState(this);
14388
- var codePoints = arrayFrom(String(username));
14389
- if (cannotHaveUsernamePasswordPort(url)) return;
14390
- url.username = '';
14391
- for (var i = 0; i < codePoints.length; i++) {
14392
- url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet);
14393
- }
14394
- }),
14395
- // `URL.prototype.password` accessors pair
14396
- // https://url.spec.whatwg.org/#dom-url-password
14397
- password: accessorDescriptor(getPassword, function (password) {
14398
- var url = getInternalURLState(this);
14399
- var codePoints = arrayFrom(String(password));
14400
- if (cannotHaveUsernamePasswordPort(url)) return;
14401
- url.password = '';
14402
- for (var i = 0; i < codePoints.length; i++) {
14403
- url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet);
14404
- }
14405
- }),
14406
- // `URL.prototype.host` accessors pair
14407
- // https://url.spec.whatwg.org/#dom-url-host
14408
- host: accessorDescriptor(getHost, function (host) {
14409
- var url = getInternalURLState(this);
14410
- if (url.cannotBeABaseURL) return;
14411
- parseURL(url, String(host), HOST);
14412
- }),
14413
- // `URL.prototype.hostname` accessors pair
14414
- // https://url.spec.whatwg.org/#dom-url-hostname
14415
- hostname: accessorDescriptor(getHostname, function (hostname) {
14416
- var url = getInternalURLState(this);
14417
- if (url.cannotBeABaseURL) return;
14418
- parseURL(url, String(hostname), HOSTNAME);
14419
- }),
14420
- // `URL.prototype.port` accessors pair
14421
- // https://url.spec.whatwg.org/#dom-url-port
14422
- port: accessorDescriptor(getPort, function (port) {
14423
- var url = getInternalURLState(this);
14424
- if (cannotHaveUsernamePasswordPort(url)) return;
14425
- port = String(port);
14426
- if (port == '') url.port = null;
14427
- else parseURL(url, port, PORT);
14428
- }),
14429
- // `URL.prototype.pathname` accessors pair
14430
- // https://url.spec.whatwg.org/#dom-url-pathname
14431
- pathname: accessorDescriptor(getPathname, function (pathname) {
14432
- var url = getInternalURLState(this);
14433
- if (url.cannotBeABaseURL) return;
14434
- url.path = [];
14435
- parseURL(url, pathname + '', PATH_START);
14436
- }),
14437
- // `URL.prototype.search` accessors pair
14438
- // https://url.spec.whatwg.org/#dom-url-search
14439
- search: accessorDescriptor(getSearch, function (search) {
14440
- var url = getInternalURLState(this);
14441
- search = String(search);
14442
- if (search == '') {
14443
- url.query = null;
14444
- } else {
14445
- if ('?' == search.charAt(0)) search = search.slice(1);
14446
- url.query = '';
14447
- parseURL(url, search, QUERY);
14448
- }
14449
- getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);
14450
- }),
14451
- // `URL.prototype.searchParams` getter
14452
- // https://url.spec.whatwg.org/#dom-url-searchparams
14453
- searchParams: accessorDescriptor(getSearchParams),
14454
- // `URL.prototype.hash` accessors pair
14455
- // https://url.spec.whatwg.org/#dom-url-hash
14456
- hash: accessorDescriptor(getHash, function (hash) {
14457
- var url = getInternalURLState(this);
14458
- hash = String(hash);
14459
- if (hash == '') {
14460
- url.fragment = null;
14461
- return;
14462
- }
14463
- if ('#' == hash.charAt(0)) hash = hash.slice(1);
14464
- url.fragment = '';
14465
- parseURL(url, hash, FRAGMENT);
14466
- })
14467
- });
14468
  }
14469
 
14470
- // `URL.prototype.toJSON` method
14471
- // https://url.spec.whatwg.org/#dom-url-tojson
14472
- redefine(URLPrototype, 'toJSON', function toJSON() {
14473
- return serializeURL.call(this);
14474
- }, { enumerable: true });
14475
-
14476
- // `URL.prototype.toString` method
14477
- // https://url.spec.whatwg.org/#URL-stringification-behavior
14478
- redefine(URLPrototype, 'toString', function toString() {
14479
- return serializeURL.call(this);
14480
- }, { enumerable: true });
14481
-
14482
- if (NativeURL) {
14483
- var nativeCreateObjectURL = NativeURL.createObjectURL;
14484
- var nativeRevokeObjectURL = NativeURL.revokeObjectURL;
14485
- // `URL.createObjectURL` method
14486
- // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL
14487
- // eslint-disable-next-line no-unused-vars -- required for `.length`
14488
- if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) {
14489
- return nativeCreateObjectURL.apply(NativeURL, arguments);
14490
- });
14491
- // `URL.revokeObjectURL` method
14492
- // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL
14493
- // eslint-disable-next-line no-unused-vars -- required for `.length`
14494
- if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) {
14495
- return nativeRevokeObjectURL.apply(NativeURL, arguments);
14496
- });
14497
  }
14498
 
14499
- setToStringTag(URLConstructor, 'URL');
 
 
 
14500
 
14501
- $({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {
14502
- URL: URLConstructor
14503
- });
14504
 
 
 
 
 
 
 
14505
 
14506
- /***/ }),
14507
- /* 288 */,
14508
- /* 289 */,
14509
- /* 290 */,
14510
- /* 291 */,
14511
- /* 292 */,
14512
- /* 293 */
14513
- /***/ (function(module, exports) {
14514
 
14515
- (function() { module.exports = window["wp"]["notices"]; }());
 
 
 
 
14516
 
14517
- /***/ }),
14518
- /* 294 */
14519
- /***/ (function(module, exports, __webpack_require__) {
14520
 
14521
- "use strict";
 
 
14522
 
14523
- // based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js
14524
- var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1
14525
- var base = 36;
14526
- var tMin = 1;
14527
- var tMax = 26;
14528
- var skew = 38;
14529
- var damp = 700;
14530
- var initialBias = 72;
14531
- var initialN = 128; // 0x80
14532
- var delimiter = '-'; // '\x2D'
14533
- var regexNonASCII = /[^\0-\u007E]/; // non-ASCII chars
14534
- var regexSeparators = /[.\u3002\uFF0E\uFF61]/g; // RFC 3490 separators
14535
- var OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';
14536
- var baseMinusTMin = base - tMin;
14537
- var floor = Math.floor;
14538
- var stringFromCharCode = String.fromCharCode;
14539
-
14540
- /**
14541
- * Creates an array containing the numeric code points of each Unicode
14542
- * character in the string. While JavaScript uses UCS-2 internally,
14543
- * this function will convert a pair of surrogate halves (each of which
14544
- * UCS-2 exposes as separate characters) into a single code point,
14545
- * matching UTF-16.
14546
- */
14547
- var ucs2decode = function (string) {
14548
- var output = [];
14549
- var counter = 0;
14550
- var length = string.length;
14551
- while (counter < length) {
14552
- var value = string.charCodeAt(counter++);
14553
- if (value >= 0xD800 && value <= 0xDBFF && counter < length) {
14554
- // It's a high surrogate, and there is a next character.
14555
- var extra = string.charCodeAt(counter++);
14556
- if ((extra & 0xFC00) == 0xDC00) { // Low surrogate.
14557
- output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);
14558
- } else {
14559
- // It's an unmatched surrogate; only append this code unit, in case the
14560
- // next code unit is the high surrogate of a surrogate pair.
14561
- output.push(value);
14562
- counter--;
14563
- }
14564
- } else {
14565
- output.push(value);
14566
- }
14567
- }
14568
- return output;
14569
- };
14570
 
14571
- /**
14572
- * Converts a digit/integer into a basic code point.
14573
- */
14574
- var digitToBasic = function (digit) {
14575
- // 0..25 map to ASCII a..z or A..Z
14576
- // 26..35 map to ASCII 0..9
14577
- return digit + 22 + 75 * (digit < 26);
14578
  };
14579
 
14580
- /**
14581
- * Bias adaptation function as per section 3.4 of RFC 3492.
14582
- * https://tools.ietf.org/html/rfc3492#section-3.4
14583
- */
14584
- var adapt = function (delta, numPoints, firstTime) {
14585
- var k = 0;
14586
- delta = firstTime ? floor(delta / damp) : delta >> 1;
14587
- delta += floor(delta / numPoints);
14588
- for (; delta > baseMinusTMin * tMax >> 1; k += base) {
14589
- delta = floor(delta / baseMinusTMin);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14590
  }
14591
- return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));
14592
  };
14593
 
14594
- /**
14595
- * Converts a string of Unicode symbols (e.g. a domain name label) to a
14596
- * Punycode string of ASCII-only symbols.
14597
  */
14598
- // eslint-disable-next-line max-statements -- TODO
14599
- var encode = function (input) {
14600
- var output = [];
14601
 
14602
- // Convert the input in UCS-2 to an array of Unicode code points.
14603
- input = ucs2decode(input);
14604
-
14605
- // Cache the length.
14606
- var inputLength = input.length;
14607
 
14608
- // Initialize the state.
14609
- var n = initialN;
14610
- var delta = 0;
14611
- var bias = initialBias;
14612
- var i, currentValue;
 
 
 
14613
 
14614
- // Handle the basic code points.
14615
- for (i = 0; i < input.length; i++) {
14616
- currentValue = input[i];
14617
- if (currentValue < 0x80) {
14618
- output.push(stringFromCharCode(currentValue));
14619
- }
14620
- }
14621
 
14622
- var basicLength = output.length; // number of basic code points.
14623
- var handledCPCount = basicLength; // number of code points that have been handled;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14624
 
14625
- // Finish the basic string with a delimiter unless it's empty.
14626
- if (basicLength) {
14627
- output.push(delimiter);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14628
  }
 
14629
 
14630
- // Main encoding loop:
14631
- while (handledCPCount < inputLength) {
14632
- // All non-basic code points < n have been handled already. Find the next larger one:
14633
- var m = maxInt;
14634
- for (i = 0; i < input.length; i++) {
14635
- currentValue = input[i];
14636
- if (currentValue >= n && currentValue < m) {
14637
- m = currentValue;
14638
- }
14639
- }
14640
 
14641
- // Increase `delta` enough to advance the decoder's <n,i> state to <m,0>, but guard against overflow.
14642
- var handledCPCountPlusOne = handledCPCount + 1;
14643
- if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {
14644
- throw RangeError(OVERFLOW_ERROR);
14645
- }
14646
 
14647
- delta += (m - n) * handledCPCountPlusOne;
14648
- n = m;
 
 
 
 
 
 
 
14649
 
14650
- for (i = 0; i < input.length; i++) {
14651
- currentValue = input[i];
14652
- if (currentValue < n && ++delta > maxInt) {
14653
- throw RangeError(OVERFLOW_ERROR);
14654
  }
14655
- if (currentValue == n) {
14656
- // Represent delta as a generalized variable-length integer.
14657
- var q = delta;
14658
- for (var k = base; /* no condition */; k += base) {
14659
- var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);
14660
- if (q < t) break;
14661
- var qMinusT = q - t;
14662
- var baseMinusT = base - t;
14663
- output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT)));
14664
- q = floor(qMinusT / baseMinusT);
14665
- }
14666
 
14667
- output.push(stringFromCharCode(digitToBasic(q)));
14668
- bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);
14669
- delta = 0;
14670
- ++handledCPCount;
14671
- }
14672
- }
14673
 
14674
- ++delta;
14675
- ++n;
 
 
14676
  }
14677
- return output.join('');
14678
- };
14679
 
14680
- module.exports = function (input) {
14681
- var encoded = [];
14682
- var labels = input.toLowerCase().replace(regexSeparators, '\u002E').split('.');
14683
- var i, label;
14684
- for (i = 0; i < labels.length; i++) {
14685
- label = labels[i];
14686
- encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label);
14687
- }
14688
- return encoded.join('.');
14689
- };
14690
 
 
 
 
 
14691
 
14692
- /***/ }),
14693
- /* 295 */
14694
- /***/ (function(module, exports, __webpack_require__) {
 
14695
 
14696
- "use strict";
 
 
14697
 
14698
- // TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
14699
- __webpack_require__(123);
14700
- var $ = __webpack_require__(12);
14701
- var getBuiltIn = __webpack_require__(31);
14702
- var USE_NATIVE_URL = __webpack_require__(254);
14703
- var redefine = __webpack_require__(27);
14704
- var redefineAll = __webpack_require__(152);
14705
- var setToStringTag = __webpack_require__(90);
14706
- var createIteratorConstructor = __webpack_require__(199);
14707
- var InternalStateModule = __webpack_require__(45);
14708
- var anInstance = __webpack_require__(136);
14709
- var hasOwn = __webpack_require__(11);
14710
- var bind = __webpack_require__(94);
14711
- var classof = __webpack_require__(113);
14712
- var anObject = __webpack_require__(9);
14713
- var isObject = __webpack_require__(10);
14714
- var create = __webpack_require__(69);
14715
- var createPropertyDescriptor = __webpack_require__(39);
14716
- var getIterator = __webpack_require__(296);
14717
- var getIteratorMethod = __webpack_require__(155);
14718
- var wellKnownSymbol = __webpack_require__(8);
14719
-
14720
- var $fetch = getBuiltIn('fetch');
14721
- var Headers = getBuiltIn('Headers');
14722
- var ITERATOR = wellKnownSymbol('iterator');
14723
- var URL_SEARCH_PARAMS = 'URLSearchParams';
14724
- var URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';
14725
- var setInternalState = InternalStateModule.set;
14726
- var getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);
14727
- var getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);
14728
-
14729
- var plus = /\+/g;
14730
- var sequences = Array(4);
14731
-
14732
- var percentSequence = function (bytes) {
14733
- return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\da-f]{2}){' + bytes + '})', 'gi'));
14734
- };
14735
 
14736
- var percentDecode = function (sequence) {
14737
- try {
14738
- return decodeURIComponent(sequence);
14739
- } catch (error) {
14740
- return sequence;
14741
- }
14742
- };
14743
 
14744
- var deserialize = function (it) {
14745
- var result = it.replace(plus, ' ');
14746
- var bytes = 4;
14747
- try {
14748
- return decodeURIComponent(result);
14749
- } catch (error) {
14750
- while (bytes) {
14751
- result = result.replace(percentSequence(bytes--), percentDecode);
14752
- }
14753
- return result;
14754
- }
14755
- };
14756
 
14757
- var find = /[!'()~]|%20/g;
 
 
 
14758
 
14759
- var replace = {
14760
- '!': '%21',
14761
- "'": '%27',
14762
- '(': '%28',
14763
- ')': '%29',
14764
- '~': '%7E',
14765
- '%20': '+'
14766
- };
14767
 
14768
- var replacer = function (match) {
14769
- return replace[match];
14770
- };
 
 
 
14771
 
14772
- var serialize = function (it) {
14773
- return encodeURIComponent(it).replace(find, replacer);
14774
- };
14775
 
14776
- var parseSearchParams = function (result, query) {
14777
- if (query) {
14778
- var attributes = query.split('&');
14779
- var index = 0;
14780
- var attribute, entry;
14781
- while (index < attributes.length) {
14782
- attribute = attributes[index++];
14783
- if (attribute.length) {
14784
- entry = attribute.split('=');
14785
- result.push({
14786
- key: deserialize(entry.shift()),
14787
- value: deserialize(entry.join('='))
14788
  });
14789
  }
 
 
 
 
14790
  }
14791
- }
14792
- };
14793
 
14794
- var updateSearchParams = function (query) {
14795
- this.entries.length = 0;
14796
- parseSearchParams(this.entries, query);
14797
- };
 
14798
 
14799
- var validateArgumentsLength = function (passed, required) {
14800
- if (passed < required) throw TypeError('Not enough arguments');
14801
- };
14802
 
14803
- var URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {
14804
- setInternalState(this, {
14805
- type: URL_SEARCH_PARAMS_ITERATOR,
14806
- iterator: getIterator(getInternalParamsState(params).entries),
14807
- kind: kind
14808
- });
14809
- }, 'Iterator', function next() {
14810
- var state = getInternalIteratorState(this);
14811
- var kind = state.kind;
14812
- var step = state.iterator.next();
14813
- var entry = step.value;
14814
- if (!step.done) {
14815
- step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];
14816
- } return step;
14817
- });
14818
 
14819
- // `URLSearchParams` constructor
14820
- // https://url.spec.whatwg.org/#interface-urlsearchparams
14821
- var URLSearchParamsConstructor = function URLSearchParams(/* init */) {
14822
- anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS);
14823
- var init = arguments.length > 0 ? arguments[0] : undefined;
14824
- var that = this;
14825
- var entries = [];
14826
- var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key;
14827
-
14828
- setInternalState(that, {
14829
- type: URL_SEARCH_PARAMS,
14830
- entries: entries,
14831
- updateURL: function () { /* empty */ },
14832
- updateSearchParams: updateSearchParams
14833
- });
14834
 
14835
- if (init !== undefined) {
14836
- if (isObject(init)) {
14837
- iteratorMethod = getIteratorMethod(init);
14838
- if (typeof iteratorMethod === 'function') {
14839
- iterator = iteratorMethod.call(init);
14840
- next = iterator.next;
14841
- while (!(step = next.call(iterator)).done) {
14842
- entryIterator = getIterator(anObject(step.value));
14843
- entryNext = entryIterator.next;
14844
- if (
14845
- (first = entryNext.call(entryIterator)).done ||
14846
- (second = entryNext.call(entryIterator)).done ||
14847
- !entryNext.call(entryIterator).done
14848
- ) throw TypeError('Expected sequence with length 2');
14849
- entries.push({ key: first.value + '', value: second.value + '' });
14850
- }
14851
- } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' });
14852
- } else {
14853
- parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + '');
14854
- }
14855
- }
14856
- };
14857
 
14858
- var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;
 
 
 
 
 
 
 
 
 
 
 
 
 
14859
 
14860
- redefineAll(URLSearchParamsPrototype, {
14861
- // `URLSearchParams.prototype.append` method
14862
- // https://url.spec.whatwg.org/#dom-urlsearchparams-append
14863
- append: function append(name, value) {
14864
- validateArgumentsLength(arguments.length, 2);
14865
- var state = getInternalParamsState(this);
14866
- state.entries.push({ key: name + '', value: value + '' });
14867
- state.updateURL();
14868
- },
14869
- // `URLSearchParams.prototype.delete` method
14870
- // https://url.spec.whatwg.org/#dom-urlsearchparams-delete
14871
- 'delete': function (name) {
14872
- validateArgumentsLength(arguments.length, 1);
14873
- var state = getInternalParamsState(this);
14874
- var entries = state.entries;
14875
- var key = name + '';
14876
- var index = 0;
14877
- while (index < entries.length) {
14878
- if (entries[index].key === key) entries.splice(index, 1);
14879
- else index++;
14880
- }
14881
- state.updateURL();
14882
- },
14883
- // `URLSearchParams.prototype.get` method
14884
- // https://url.spec.whatwg.org/#dom-urlsearchparams-get
14885
- get: function get(name) {
14886
- validateArgumentsLength(arguments.length, 1);
14887
- var entries = getInternalParamsState(this).entries;
14888
- var key = name + '';
14889
- var index = 0;
14890
- for (; index < entries.length; index++) {
14891
- if (entries[index].key === key) return entries[index].value;
14892
- }
14893
- return null;
14894
- },
14895
- // `URLSearchParams.prototype.getAll` method
14896
- // https://url.spec.whatwg.org/#dom-urlsearchparams-getall
14897
- getAll: function getAll(name) {
14898
- validateArgumentsLength(arguments.length, 1);
14899
- var entries = getInternalParamsState(this).entries;
14900
- var key = name + '';
14901
- var result = [];
14902
- var index = 0;
14903
- for (; index < entries.length; index++) {
14904
- if (entries[index].key === key) result.push(entries[index].value);
14905
- }
14906
- return result;
14907
- },
14908
- // `URLSearchParams.prototype.has` method
14909
- // https://url.spec.whatwg.org/#dom-urlsearchparams-has
14910
- has: function has(name) {
14911
- validateArgumentsLength(arguments.length, 1);
14912
- var entries = getInternalParamsState(this).entries;
14913
- var key = name + '';
14914
- var index = 0;
14915
- while (index < entries.length) {
14916
- if (entries[index++].key === key) return true;
14917
- }
14918
- return false;
14919
- },
14920
- // `URLSearchParams.prototype.set` method
14921
- // https://url.spec.whatwg.org/#dom-urlsearchparams-set
14922
- set: function set(name, value) {
14923
- validateArgumentsLength(arguments.length, 1);
14924
- var state = getInternalParamsState(this);
14925
- var entries = state.entries;
14926
- var found = false;
14927
- var key = name + '';
14928
- var val = value + '';
14929
- var index = 0;
14930
- var entry;
14931
- for (; index < entries.length; index++) {
14932
- entry = entries[index];
14933
- if (entry.key === key) {
14934
- if (found) entries.splice(index--, 1);
14935
- else {
14936
- found = true;
14937
- entry.value = val;
14938
- }
14939
- }
14940
- }
14941
- if (!found) entries.push({ key: key, value: val });
14942
- state.updateURL();
14943
- },
14944
- // `URLSearchParams.prototype.sort` method
14945
- // https://url.spec.whatwg.org/#dom-urlsearchparams-sort
14946
- sort: function sort() {
14947
- var state = getInternalParamsState(this);
14948
- var entries = state.entries;
14949
- // Array#sort is not stable in some engines
14950
- var slice = entries.slice();
14951
- var entry, entriesIndex, sliceIndex;
14952
- entries.length = 0;
14953
- for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) {
14954
- entry = slice[sliceIndex];
14955
- for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) {
14956
- if (entries[entriesIndex].key > entry.key) {
14957
- entries.splice(entriesIndex, 0, entry);
14958
- break;
14959
- }
14960
- }
14961
- if (entriesIndex === sliceIndex) entries.push(entry);
14962
- }
14963
- state.updateURL();
14964
- },
14965
- // `URLSearchParams.prototype.forEach` method
14966
- forEach: function forEach(callback /* , thisArg */) {
14967
- var entries = getInternalParamsState(this).entries;
14968
- var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3);
14969
- var index = 0;
14970
- var entry;
14971
- while (index < entries.length) {
14972
- entry = entries[index++];
14973
- boundFunction(entry.value, entry.key, this);
14974
- }
14975
- },
14976
- // `URLSearchParams.prototype.keys` method
14977
- keys: function keys() {
14978
- return new URLSearchParamsIterator(this, 'keys');
14979
- },
14980
- // `URLSearchParams.prototype.values` method
14981
- values: function values() {
14982
- return new URLSearchParamsIterator(this, 'values');
14983
- },
14984
- // `URLSearchParams.prototype.entries` method
14985
- entries: function entries() {
14986
- return new URLSearchParamsIterator(this, 'entries');
14987
- }
14988
- }, { enumerable: true });
14989
-
14990
- // `URLSearchParams.prototype[@@iterator]` method
14991
- redefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries);
14992
-
14993
- // `URLSearchParams.prototype.toString` method
14994
- // https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior
14995
- redefine(URLSearchParamsPrototype, 'toString', function toString() {
14996
- var entries = getInternalParamsState(this).entries;
14997
- var result = [];
14998
- var index = 0;
14999
- var entry;
15000
- while (index < entries.length) {
15001
- entry = entries[index++];
15002
- result.push(serialize(entry.key) + '=' + serialize(entry.value));
15003
- } return result.join('&');
15004
- }, { enumerable: true });
15005
-
15006
- setToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);
15007
-
15008
- $({ global: true, forced: !USE_NATIVE_URL }, {
15009
- URLSearchParams: URLSearchParamsConstructor
15010
- });
15011
 
15012
- // Wrap `fetch` for correct work with polyfilled `URLSearchParams`
15013
- // https://github.com/zloirock/core-js/issues/674
15014
- if (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') {
15015
- $({ global: true, enumerable: true, forced: true }, {
15016
- fetch: function fetch(input /* , init */) {
15017
- var args = [input];
15018
- var init, body, headers;
15019
- if (arguments.length > 1) {
15020
- init = arguments[1];
15021
- if (isObject(init)) {
15022
- body = init.body;
15023
- if (classof(body) === URL_SEARCH_PARAMS) {
15024
- headers = init.headers ? new Headers(init.headers) : new Headers();
15025
- if (!headers.has('content-type')) {
15026
- headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');
15027
- }
15028
- init = create(init, {
15029
- body: createPropertyDescriptor(0, String(body)),
15030
- headers: createPropertyDescriptor(0, headers)
15031
- });
15032
- }
15033
- }
15034
- args.push(init);
15035
- } return $fetch.apply(this, args);
15036
- }
15037
- });
15038
- }
15039
 
15040
- module.exports = {
15041
- URLSearchParams: URLSearchParamsConstructor,
15042
- getState: getInternalParamsState
15043
- };
15044
 
 
15045
 
15046
- /***/ }),
15047
- /* 296 */
15048
- /***/ (function(module, exports, __webpack_require__) {
15049
 
15050
- var anObject = __webpack_require__(9);
15051
- var getIteratorMethod = __webpack_require__(155);
 
 
 
15052
 
15053
- module.exports = function (it) {
15054
- var iteratorMethod = getIteratorMethod(it);
15055
- if (typeof iteratorMethod != 'function') {
15056
- throw TypeError(String(it) + ' is not iterable');
15057
- } return anObject(iteratorMethod.call(it));
15058
- };
 
 
 
 
 
15059
 
 
 
15060
 
15061
- /***/ }),
15062
- /* 297 */
15063
- /***/ (function(module, exports) {
 
 
15064
 
15065
- // shim for using process in browser
15066
- var process = module.exports = {};
 
 
 
 
 
15067
 
15068
- // cached from whatever global is present so that test runners that stub it
15069
- // don't break things. But we need to wrap it in a try catch in case it is
15070
- // wrapped in strict mode code which doesn't define any globals. It's inside a
15071
- // function because try/catches deoptimize in certain engines.
15072
 
15073
- var cachedSetTimeout;
15074
- var cachedClearTimeout;
 
15075
 
15076
- function defaultSetTimout() {
15077
- throw new Error('setTimeout has not been defined');
15078
- }
15079
- function defaultClearTimeout () {
15080
- throw new Error('clearTimeout has not been defined');
15081
- }
15082
- (function () {
15083
- try {
15084
- if (typeof setTimeout === 'function') {
15085
- cachedSetTimeout = setTimeout;
15086
- } else {
15087
- cachedSetTimeout = defaultSetTimout;
15088
- }
15089
- } catch (e) {
15090
- cachedSetTimeout = defaultSetTimout;
15091
- }
15092
- try {
15093
- if (typeof clearTimeout === 'function') {
15094
- cachedClearTimeout = clearTimeout;
15095
- } else {
15096
- cachedClearTimeout = defaultClearTimeout;
15097
- }
15098
- } catch (e) {
15099
- cachedClearTimeout = defaultClearTimeout;
15100
- }
15101
- } ())
15102
- function runTimeout(fun) {
15103
- if (cachedSetTimeout === setTimeout) {
15104
- //normal enviroments in sane situations
15105
- return setTimeout(fun, 0);
15106
- }
15107
- // if setTimeout wasn't available but was latter defined
15108
- if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
15109
- cachedSetTimeout = setTimeout;
15110
- return setTimeout(fun, 0);
15111
- }
15112
- try {
15113
- // when when somebody has screwed with setTimeout but no I.E. maddness
15114
- return cachedSetTimeout(fun, 0);
15115
- } catch(e){
15116
- try {
15117
- // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
15118
- return cachedSetTimeout.call(null, fun, 0);
15119
- } catch(e){
15120
- // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
15121
- return cachedSetTimeout.call(this, fun, 0);
15122
- }
15123
- }
15124
 
 
 
15125
 
15126
- }
15127
- function runClearTimeout(marker) {
15128
- if (cachedClearTimeout === clearTimeout) {
15129
- //normal enviroments in sane situations
15130
- return clearTimeout(marker);
15131
- }
15132
- // if clearTimeout wasn't available but was latter defined
15133
- if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
15134
- cachedClearTimeout = clearTimeout;
15135
- return clearTimeout(marker);
15136
- }
15137
- try {
15138
- // when when somebody has screwed with setTimeout but no I.E. maddness
15139
- return cachedClearTimeout(marker);
15140
- } catch (e){
15141
- try {
15142
- // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
15143
- return cachedClearTimeout.call(null, marker);
15144
- } catch (e){
15145
- // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
15146
- // Some versions of I.E. have different rules for clearTimeout vs setTimeout
15147
- return cachedClearTimeout.call(this, marker);
15148
- }
15149
- }
15150
 
 
 
 
 
 
 
 
 
 
 
 
15151
 
15152
 
15153
- }
15154
- var queue = [];
15155
- var draining = false;
15156
- var currentQueue;
15157
- var queueIndex = -1;
15158
 
15159
- function cleanUpNextTick() {
15160
- if (!draining || !currentQueue) {
15161
- return;
15162
- }
15163
- draining = false;
15164
- if (currentQueue.length) {
15165
- queue = currentQueue.concat(queue);
15166
- } else {
15167
- queueIndex = -1;
15168
- }
15169
- if (queue.length) {
15170
- drainQueue();
15171
- }
15172
- }
15173
 
15174
- function drainQueue() {
15175
- if (draining) {
15176
- return;
15177
- }
15178
- var timeout = runTimeout(cleanUpNextTick);
15179
- draining = true;
15180
 
15181
- var len = queue.length;
15182
- while(len) {
15183
- currentQueue = queue;
15184
- queue = [];
15185
- while (++queueIndex < len) {
15186
- if (currentQueue) {
15187
- currentQueue[queueIndex].run();
 
 
 
15188
  }
15189
- }
15190
- queueIndex = -1;
15191
- len = queue.length;
15192
- }
15193
- currentQueue = null;
15194
- draining = false;
15195
- runClearTimeout(timeout);
15196
- }
15197
 
15198
- process.nextTick = function (fun) {
15199
- var args = new Array(arguments.length - 1);
15200
- if (arguments.length > 1) {
15201
- for (var i = 1; i < arguments.length; i++) {
15202
- args[i - 1] = arguments[i];
15203
- }
15204
- }
15205
- queue.push(new Item(fun, args));
15206
- if (queue.length === 1 && !draining) {
15207
- runTimeout(drainQueue);
15208
- }
15209
- };
15210
 
15211
- // v8 likes predictible objects
15212
- function Item(fun, array) {
15213
- this.fun = fun;
15214
- this.array = array;
15215
- }
15216
- Item.prototype.run = function () {
15217
- this.fun.apply(null, this.array);
15218
- };
15219
- process.title = 'browser';
15220
- process.browser = true;
15221
- process.env = {};
15222
- process.argv = [];
15223
- process.version = ''; // empty string to avoid regexp issues
15224
- process.versions = {};
15225
 
15226
- function noop() {}
 
 
 
 
 
 
 
 
15227
 
15228
- process.on = noop;
15229
- process.addListener = noop;
15230
- process.once = noop;
15231
- process.off = noop;
15232
- process.removeListener = noop;
15233
- process.removeAllListeners = noop;
15234
- process.emit = noop;
15235
- process.prependListener = noop;
15236
- process.prependOnceListener = noop;
15237
 
15238
- process.listeners = function (name) { return [] }
 
15239
 
15240
- process.binding = function (name) {
15241
- throw new Error('process.binding is not supported');
15242
- };
15243
 
15244
- process.cwd = function () { return '/' };
15245
- process.chdir = function (dir) {
15246
- throw new Error('process.chdir is not supported');
15247
- };
15248
- process.umask = function() { return 0; };
15249
 
 
15250
 
15251
- /***/ }),
15252
- /* 298 */
15253
- /***/ (function(module, exports, __webpack_require__) {
15254
 
15255
- "use strict";
15256
- /** @license React v16.13.1
15257
- * react-is.production.min.js
15258
- *
15259
- * Copyright (c) Facebook, Inc. and its affiliates.
15260
- *
15261
- * This source code is licensed under the MIT license found in the
15262
- * LICENSE file in the root directory of this source tree.
15263
- */
15264
 
15265
- var b="function"===typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?
15266
- Symbol.for("react.suspense_list"):60120,r=b?Symbol.for("react.memo"):60115,t=b?Symbol.for("react.lazy"):60116,v=b?Symbol.for("react.block"):60121,w=b?Symbol.for("react.fundamental"):60117,x=b?Symbol.for("react.responder"):60118,y=b?Symbol.for("react.scope"):60119;
15267
- function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;
15268
- exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return"object"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};
15269
- exports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};
15270
- exports.isValidElementType=function(a){return"string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||"object"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;
 
 
15271
 
 
 
 
 
 
 
 
 
 
 
15272
 
15273
- /***/ }),
15274
- /* 299 */,
15275
- /* 300 */,
15276
- /* 301 */,
15277
- /* 302 */,
15278
- /* 303 */,
15279
- /* 304 */,
15280
- /* 305 */,
15281
- /* 306 */,
15282
- /* 307 */,
15283
- /* 308 */,
15284
- /* 309 */,
15285
- /* 310 */,
15286
- /* 311 */,
15287
- /* 312 */,
15288
- /* 313 */,
15289
- /* 314 */,
15290
- /* 315 */
15291
- /***/ (function(module, exports, __webpack_require__) {
15292
 
15293
- "use strict";
 
 
 
 
 
 
 
 
15294
 
 
 
 
 
 
 
15295
 
15296
- Object.defineProperty(exports, '__esModule', { value: true });
 
15297
 
15298
- function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
 
15299
 
15300
- var _extends = _interopDefault(__webpack_require__(80));
15301
- var _objectWithoutPropertiesLoose = _interopDefault(__webpack_require__(233));
15302
- var React = __webpack_require__(20);
15303
- var React__default = _interopDefault(React);
15304
- var _inheritsLoose = _interopDefault(__webpack_require__(434));
15305
- var _assertThisInitialized = _interopDefault(__webpack_require__(18));
 
 
 
 
 
 
15306
 
15307
- var is = {
15308
- arr: Array.isArray,
15309
- obj: function obj(a) {
15310
- return Object.prototype.toString.call(a) === '[object Object]';
15311
- },
15312
- fun: function fun(a) {
15313
- return typeof a === 'function';
15314
- },
15315
- str: function str(a) {
15316
- return typeof a === 'string';
15317
- },
15318
- num: function num(a) {
15319
- return typeof a === 'number';
15320
- },
15321
- und: function und(a) {
15322
- return a === void 0;
15323
- },
15324
- nul: function nul(a) {
15325
- return a === null;
15326
- },
15327
- set: function set(a) {
15328
- return a instanceof Set;
15329
- },
15330
- map: function map(a) {
15331
- return a instanceof Map;
15332
- },
15333
- equ: function equ(a, b) {
15334
- if (typeof a !== typeof b) return false;
15335
- if (is.str(a) || is.num(a)) return a === b;
15336
- if (is.obj(a) && is.obj(b) && Object.keys(a).length + Object.keys(b).length === 0) return true;
15337
- var i;
15338
 
15339
- for (i in a) {
15340
- if (!(i in b)) return false;
15341
- }
15342
 
15343
- for (i in b) {
15344
- if (a[i] !== b[i]) return false;
15345
- }
15346
 
15347
- return is.und(i) ? a === b : true;
15348
- }
15349
- };
15350
- function merge(target, lowercase) {
15351
- if (lowercase === void 0) {
15352
- lowercase = true;
15353
- }
15354
 
15355
- return function (object) {
15356
- return (is.arr(object) ? object : Object.keys(object)).reduce(function (acc, element) {
15357
- var key = lowercase ? element[0].toLowerCase() + element.substring(1) : element;
15358
- acc[key] = target(key);
15359
- return acc;
15360
- }, target);
15361
- };
15362
- }
15363
- function useForceUpdate() {
15364
- var _useState = React.useState(false),
15365
- f = _useState[1];
15366
 
15367
- var forceUpdate = React.useCallback(function () {
15368
- return f(function (v) {
15369
- return !v;
15370
- });
15371
- }, []);
15372
- return forceUpdate;
15373
- }
15374
- function withDefault(value, defaultValue) {
15375
- return is.und(value) || is.nul(value) ? defaultValue : value;
15376
- }
15377
- function toArray(a) {
15378
- return !is.und(a) ? is.arr(a) ? a : [a] : [];
15379
- }
15380
- function callProp(obj) {
15381
- for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
15382
- args[_key - 1] = arguments[_key];
15383
- }
 
15384
 
15385
- return is.fun(obj) ? obj.apply(void 0, args) : obj;
15386
- }
 
 
 
 
 
 
15387
 
15388
- function getForwardProps(props) {
15389
- var to = props.to,
15390
- from = props.from,
15391
- config = props.config,
15392
- onStart = props.onStart,
15393
- onRest = props.onRest,
15394
- onFrame = props.onFrame,
15395
- children = props.children,
15396
- reset = props.reset,
15397
- reverse = props.reverse,
15398
- force = props.force,
15399
- immediate = props.immediate,
15400
- delay = props.delay,
15401
- attach = props.attach,
15402
- destroyed = props.destroyed,
15403
- interpolateTo = props.interpolateTo,
15404
- ref = props.ref,
15405
- lazy = props.lazy,
15406
- forward = _objectWithoutPropertiesLoose(props, ["to", "from", "config", "onStart", "onRest", "onFrame", "children", "reset", "reverse", "force", "immediate", "delay", "attach", "destroyed", "interpolateTo", "ref", "lazy"]);
15407
 
15408
- return forward;
15409
- }
 
 
15410
 
15411
- function interpolateTo(props) {
15412
- var forward = getForwardProps(props);
15413
- if (is.und(forward)) return _extends({
15414
- to: forward
15415
- }, props);
15416
- var rest = Object.keys(props).reduce(function (a, k) {
15417
- var _extends2;
15418
 
15419
- return !is.und(forward[k]) ? a : _extends({}, a, (_extends2 = {}, _extends2[k] = props[k], _extends2));
15420
- }, {});
15421
- return _extends({
15422
- to: forward
15423
- }, rest);
15424
- }
15425
- function handleRef(ref, forward) {
15426
- if (forward) {
15427
- // If it's a function, assume it's a ref callback
15428
- if (is.fun(forward)) forward(ref);else if (is.obj(forward)) {
15429
- forward.current = ref;
15430
- }
15431
- }
15432
 
15433
- return ref;
15434
- }
 
 
 
 
 
 
 
15435
 
15436
- var Animated =
15437
- /*#__PURE__*/
15438
- function () {
15439
- function Animated() {
15440
- this.payload = void 0;
15441
- this.children = [];
15442
- }
 
 
15443
 
15444
- var _proto = Animated.prototype;
 
 
15445
 
15446
- _proto.getAnimatedValue = function getAnimatedValue() {
15447
- return this.getValue();
15448
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15449
 
15450
- _proto.getPayload = function getPayload() {
15451
- return this.payload || this;
15452
- };
 
 
 
 
 
 
 
15453
 
15454
- _proto.attach = function attach() {};
 
 
 
 
 
15455
 
15456
- _proto.detach = function detach() {};
 
 
15457
 
15458
- _proto.getChildren = function getChildren() {
15459
- return this.children;
15460
- };
 
 
15461
 
15462
- _proto.addChild = function addChild(child) {
15463
- if (this.children.length === 0) this.attach();
15464
- this.children.push(child);
 
 
 
 
15465
  };
15466
 
15467
- _proto.removeChild = function removeChild(child) {
15468
- var index = this.children.indexOf(child);
15469
- this.children.splice(index, 1);
15470
- if (this.children.length === 0) this.detach();
 
 
 
 
 
15471
  };
15472
 
15473
- return Animated;
15474
  }();
15475
- var AnimatedArray =
15476
- /*#__PURE__*/
15477
- function (_Animated) {
15478
- _inheritsLoose(AnimatedArray, _Animated);
15479
 
15480
- function AnimatedArray() {
15481
- var _this;
 
 
15482
 
15483
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
15484
- args[_key] = arguments[_key];
 
 
 
 
 
 
 
 
 
 
15485
  }
15486
 
15487
- _this = _Animated.call.apply(_Animated, [this].concat(args)) || this;
15488
- _this.payload = [];
15489
-
15490
- _this.attach = function () {
15491
- return _this.payload.forEach(function (p) {
15492
- return p instanceof Animated && p.addChild(_assertThisInitialized(_this));
15493
- });
15494
- };
15495
-
15496
- _this.detach = function () {
15497
- return _this.payload.forEach(function (p) {
15498
- return p instanceof Animated && p.removeChild(_assertThisInitialized(_this));
15499
- });
15500
- };
15501
-
15502
- return _this;
15503
- }
15504
-
15505
- return AnimatedArray;
15506
- }(Animated);
15507
- var AnimatedObject =
15508
- /*#__PURE__*/
15509
- function (_Animated2) {
15510
- _inheritsLoose(AnimatedObject, _Animated2);
15511
 
15512
- function AnimatedObject() {
15513
- var _this2;
15514
 
15515
- for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
15516
- args[_key3] = arguments[_key3];
15517
- }
 
 
 
 
 
 
 
 
 
 
 
15518
 
15519
- _this2 = _Animated2.call.apply(_Animated2, [this].concat(args)) || this;
15520
- _this2.payload = {};
 
15521
 
15522
- _this2.attach = function () {
15523
- return Object.values(_this2.payload).forEach(function (s) {
15524
- return s instanceof Animated && s.addChild(_assertThisInitialized(_this2));
15525
- });
15526
  };
 
15527
 
15528
- _this2.detach = function () {
15529
- return Object.values(_this2.payload).forEach(function (s) {
15530
- return s instanceof Animated && s.removeChild(_assertThisInitialized(_this2));
 
 
15531
  });
15532
  };
 
15533
 
15534
- return _this2;
15535
- }
15536
-
15537
- var _proto2 = AnimatedObject.prototype;
15538
-
15539
- _proto2.getValue = function getValue(animated) {
15540
- if (animated === void 0) {
15541
- animated = false;
15542
- }
15543
 
15544
- var payload = {};
 
 
 
 
 
 
15545
 
15546
- for (var _key4 in this.payload) {
15547
- var value = this.payload[_key4];
15548
- if (animated && !(value instanceof Animated)) continue;
15549
- payload[_key4] = value instanceof Animated ? value[animated ? 'getAnimatedValue' : 'getValue']() : value;
15550
- }
 
 
 
 
15551
 
15552
- return payload;
15553
- };
 
 
15554
 
15555
- _proto2.getAnimatedValue = function getAnimatedValue() {
15556
- return this.getValue(true);
15557
- };
15558
 
15559
- return AnimatedObject;
15560
- }(Animated);
 
 
15561
 
15562
- var applyAnimatedValues;
15563
- function injectApplyAnimatedValues(fn, transform) {
15564
- applyAnimatedValues = {
15565
- fn: fn,
15566
- transform: transform
15567
- };
15568
- }
15569
- var colorNames;
15570
- function injectColorNames(names) {
15571
- colorNames = names;
15572
- }
15573
- var requestFrame = function requestFrame(cb) {
15574
- return typeof window !== 'undefined' ? window.requestAnimationFrame(cb) : -1;
15575
- };
15576
- var cancelFrame = function cancelFrame(id) {
15577
- typeof window !== 'undefined' && window.cancelAnimationFrame(id);
15578
- };
15579
- function injectFrame(raf, caf) {
15580
- requestFrame = raf;
15581
- cancelFrame = caf;
15582
- }
15583
- var interpolation;
15584
- function injectStringInterpolator(fn) {
15585
- interpolation = fn;
15586
- }
15587
- var now = function now() {
15588
- return Date.now();
15589
- };
15590
- function injectNow(nowFn) {
15591
- now = nowFn;
15592
- }
15593
- var defaultElement;
15594
- function injectDefaultElement(el) {
15595
- defaultElement = el;
15596
- }
15597
- var animatedApi = function animatedApi(node) {
15598
- return node.current;
15599
  };
15600
- function injectAnimatedApi(fn) {
15601
- animatedApi = fn;
15602
- }
15603
- var createAnimatedStyle;
15604
- function injectCreateAnimatedStyle(factory) {
15605
- createAnimatedStyle = factory;
15606
- }
15607
- var manualFrameloop;
15608
- function injectManualFrameloop(callback) {
15609
- manualFrameloop = callback;
15610
- }
15611
-
15612
- var Globals = /*#__PURE__*/Object.freeze({
15613
- get applyAnimatedValues () { return applyAnimatedValues; },
15614
- injectApplyAnimatedValues: injectApplyAnimatedValues,
15615
- get colorNames () { return colorNames; },
15616
- injectColorNames: injectColorNames,
15617
- get requestFrame () { return requestFrame; },
15618
- get cancelFrame () { return cancelFrame; },
15619
- injectFrame: injectFrame,
15620
- get interpolation () { return interpolation; },
15621
- injectStringInterpolator: injectStringInterpolator,
15622
- get now () { return now; },
15623
- injectNow: injectNow,
15624
- get defaultElement () { return defaultElement; },
15625
- injectDefaultElement: injectDefaultElement,
15626
- get animatedApi () { return animatedApi; },
15627
- injectAnimatedApi: injectAnimatedApi,
15628
- get createAnimatedStyle () { return createAnimatedStyle; },
15629
- injectCreateAnimatedStyle: injectCreateAnimatedStyle,
15630
- get manualFrameloop () { return manualFrameloop; },
15631
- injectManualFrameloop: injectManualFrameloop
15632
- });
15633
 
15634
- /**
15635
- * Wraps the `style` property with `AnimatedStyle`.
 
15636
  */
15637
 
15638
- var AnimatedProps =
15639
- /*#__PURE__*/
15640
- function (_AnimatedObject) {
15641
- _inheritsLoose(AnimatedProps, _AnimatedObject);
15642
-
15643
- function AnimatedProps(props, callback) {
15644
- var _this;
15645
 
15646
- _this = _AnimatedObject.call(this) || this;
15647
- _this.update = void 0;
15648
- _this.payload = !props.style ? props : _extends({}, props, {
15649
- style: createAnimatedStyle(props.style)
 
 
 
 
15650
  });
15651
- _this.update = callback;
 
 
 
15652
 
15653
- _this.attach();
15654
 
15655
- return _this;
15656
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
15657
 
15658
- return AnimatedProps;
15659
- }(AnimatedObject);
 
15660
 
15661
- var isFunctionComponent = function isFunctionComponent(val) {
15662
- return is.fun(val) && !(val.prototype instanceof React__default.Component);
 
 
15663
  };
15664
 
15665
- var createAnimatedComponent = function createAnimatedComponent(Component) {
15666
- var AnimatedComponent = React.forwardRef(function (props, ref) {
15667
- var forceUpdate = useForceUpdate();
15668
- var mounted = React.useRef(true);
15669
- var propsAnimated = React.useRef(null);
15670
- var node = React.useRef(null);
15671
- var attachProps = React.useCallback(function (props) {
15672
- var oldPropsAnimated = propsAnimated.current;
15673
-
15674
- var callback = function callback() {
15675
- var didUpdate = false;
15676
-
15677
- if (node.current) {
15678
- didUpdate = applyAnimatedValues.fn(node.current, propsAnimated.current.getAnimatedValue());
15679
- }
15680
-
15681
- if (!node.current || didUpdate === false) {
15682
- // If no referenced node has been found, or the update target didn't have a
15683
- // native-responder, then forceUpdate the animation ...
15684
- forceUpdate();
15685
- }
15686
- };
15687
-
15688
- propsAnimated.current = new AnimatedProps(props, callback);
15689
- oldPropsAnimated && oldPropsAnimated.detach();
15690
- }, []);
15691
- React.useEffect(function () {
15692
- return function () {
15693
- mounted.current = false;
15694
- propsAnimated.current && propsAnimated.current.detach();
15695
- };
15696
- }, []);
15697
- React.useImperativeHandle(ref, function () {
15698
- return animatedApi(node, mounted, forceUpdate);
15699
- });
15700
- attachProps(props);
15701
-
15702
- var _getValue = propsAnimated.current.getValue(),
15703
- scrollTop = _getValue.scrollTop,
15704
- scrollLeft = _getValue.scrollLeft,
15705
- animatedProps = _objectWithoutPropertiesLoose(_getValue, ["scrollTop", "scrollLeft"]); // Functions cannot have refs, see:
15706
- // See: https://github.com/react-spring/react-spring/issues/569
15707
 
 
 
 
 
15708
 
15709
- var refFn = isFunctionComponent(Component) ? undefined : function (childRef) {
15710
- return node.current = handleRef(childRef, ref);
15711
- };
15712
- return React__default.createElement(Component, _extends({}, animatedProps, {
15713
- ref: refFn
15714
- }));
15715
- });
15716
- return AnimatedComponent;
15717
  };
15718
 
15719
- var active = false;
15720
- var controllers = new Set();
15721
-
15722
- var update = function update() {
15723
- if (!active) return false;
15724
- var time = now();
 
15725
 
15726
- for (var _iterator = controllers, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {
15727
- var _ref;
 
 
 
 
15728
 
15729
- if (_isArray) {
15730
- if (_i >= _iterator.length) break;
15731
- _ref = _iterator[_i++];
15732
- } else {
15733
- _i = _iterator.next();
15734
- if (_i.done) break;
15735
- _ref = _i.value;
15736
  }
 
15737
 
15738
- var controller = _ref;
15739
- var isActive = false;
15740
-
15741
- for (var configIdx = 0; configIdx < controller.configs.length; configIdx++) {
15742
- var config = controller.configs[configIdx];
15743
- var endOfAnimation = void 0,
15744
- lastTime = void 0;
 
 
 
 
 
 
 
 
 
 
15745
 
15746
- for (var valIdx = 0; valIdx < config.animatedValues.length; valIdx++) {
15747
- var animation = config.animatedValues[valIdx]; // If an animation is done, skip, until all of them conclude
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15748
 
15749
- if (animation.done) continue;
15750
- var from = config.fromValues[valIdx];
15751
- var to = config.toValues[valIdx];
15752
- var position = animation.lastPosition;
15753
- var isAnimated = to instanceof Animated;
15754
- var velocity = Array.isArray(config.initialVelocity) ? config.initialVelocity[valIdx] : config.initialVelocity;
15755
- if (isAnimated) to = to.getValue(); // Conclude animation if it's either immediate, or from-values match end-state
15756
 
15757
- if (config.immediate) {
15758
- animation.setValue(to);
15759
- animation.done = true;
15760
- continue;
15761
- } // Break animation when string values are involved
15762
 
 
15763
 
15764
- if (typeof from === 'string' || typeof to === 'string') {
15765
- animation.setValue(to);
15766
- animation.done = true;
15767
- continue;
15768
- }
 
 
 
 
 
 
15769
 
15770
- if (config.duration !== void 0) {
15771
- /** Duration easing */
15772
- position = from + config.easing((time - animation.startTime) / config.duration) * (to - from);
15773
- endOfAnimation = time >= animation.startTime + config.duration;
15774
- } else if (config.decay) {
15775
- /** Decay easing */
15776
- position = from + velocity / (1 - 0.998) * (1 - Math.exp(-(1 - 0.998) * (time - animation.startTime)));
15777
- endOfAnimation = Math.abs(animation.lastPosition - position) < 0.1;
15778
- if (endOfAnimation) to = position;
15779
- } else {
15780
- /** Spring easing */
15781
- lastTime = animation.lastTime !== void 0 ? animation.lastTime : time;
15782
- velocity = animation.lastVelocity !== void 0 ? animation.lastVelocity : config.initialVelocity; // If we lost a lot of frames just jump to the end.
15783
 
15784
- if (time > lastTime + 64) lastTime = time; // http://gafferongames.com/game-physics/fix-your-timestep/
 
 
 
 
 
 
 
 
 
 
 
15785
 
15786
- var numSteps = Math.floor(time - lastTime);
15787
 
15788
- for (var i = 0; i < numSteps; ++i) {
15789
- var force = -config.tension * (position - to);
15790
- var damping = -config.friction * velocity;
15791
- var acceleration = (force + damping) / config.mass;
15792
- velocity = velocity + acceleration * 1 / 1000;
15793
- position = position + velocity * 1 / 1000;
15794
- } // Conditions for stopping the spring animation
 
 
 
 
 
 
 
 
 
 
15795
 
 
15796
 
15797
- var isOvershooting = config.clamp && config.tension !== 0 ? from < to ? position > to : position < to : false;
15798
- var isVelocity = Math.abs(velocity) <= config.precision;
15799
- var isDisplacement = config.tension !== 0 ? Math.abs(to - position) <= config.precision : true;
15800
- endOfAnimation = isOvershooting || isVelocity && isDisplacement;
15801
- animation.lastVelocity = velocity;
15802
- animation.lastTime = time;
15803
- } // Trails aren't done until their parents conclude
15804
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15805
 
15806
- if (isAnimated && !config.toValues[valIdx].done) endOfAnimation = false;
15807
-
15808
- if (endOfAnimation) {
15809
- // Ensure that we end up with a round value
15810
- if (animation.value !== to) position = to;
15811
- animation.done = true;
15812
- } else isActive = true;
15813
-
15814
- animation.setValue(position);
15815
- animation.lastPosition = position;
15816
- } // Keep track of updated values only when necessary
15817
-
15818
 
15819
- if (controller.props.onFrame) controller.values[config.name] = config.interpolation.getValue();
15820
- } // Update callbacks in the end of the frame
 
 
 
 
 
 
 
15821
 
 
 
15822
 
15823
- if (controller.props.onFrame) controller.props.onFrame(controller.values); // Either call onEnd or next frame
 
 
15824
 
15825
- if (!isActive) {
15826
- controllers.delete(controller);
15827
- controller.stop(true);
 
15828
  }
15829
- } // Loop over as long as there are controllers ...
 
 
 
15830
 
 
15831
 
15832
- if (controllers.size) {
15833
- if (manualFrameloop) manualFrameloop();else requestFrame(update);
15834
- } else {
15835
- active = false;
15836
  }
15837
 
15838
- return active;
15839
- };
15840
 
15841
- var start = function start(controller) {
15842
- if (!controllers.has(controller)) controllers.add(controller);
 
 
15843
 
15844
- if (!active) {
15845
- active = true;
15846
- if (manualFrameloop) requestFrame(manualFrameloop);else requestFrame(update);
15847
- }
15848
- };
 
 
 
 
 
 
 
 
 
15849
 
15850
- var stop = function stop(controller) {
15851
- if (controllers.has(controller)) controllers.delete(controller);
15852
- };
15853
 
15854
- function createInterpolator(range, output, extrapolate) {
15855
- if (typeof range === 'function') {
15856
- return range;
15857
- }
15858
 
15859
- if (Array.isArray(range)) {
15860
- return createInterpolator({
15861
- range: range,
15862
- output: output,
15863
- extrapolate: extrapolate
15864
- });
15865
- }
15866
 
15867
- if (interpolation && typeof range.output[0] === 'string') {
15868
- return interpolation(range);
15869
- }
 
 
 
 
 
 
 
 
 
 
 
 
15870
 
15871
- var config = range;
15872
- var outputRange = config.output;
15873
- var inputRange = config.range || [0, 1];
15874
- var extrapolateLeft = config.extrapolateLeft || config.extrapolate || 'extend';
15875
- var extrapolateRight = config.extrapolateRight || config.extrapolate || 'extend';
15876
 
15877
- var easing = config.easing || function (t) {
15878
- return t;
15879
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15880
 
15881
- return function (input) {
15882
- var range = findRange(input, inputRange);
15883
- return interpolate(input, inputRange[range], inputRange[range + 1], outputRange[range], outputRange[range + 1], easing, extrapolateLeft, extrapolateRight, config.map);
15884
- };
15885
- }
15886
 
15887
- function interpolate(input, inputMin, inputMax, outputMin, outputMax, easing, extrapolateLeft, extrapolateRight, map) {
15888
- var result = map ? map(input) : input; // Extrapolate
 
 
 
 
 
 
 
 
 
 
 
 
 
15889
 
15890
- if (result < inputMin) {
15891
- if (extrapolateLeft === 'identity') return result;else if (extrapolateLeft === 'clamp') result = inputMin;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15892
  }
15893
 
15894
- if (result > inputMax) {
15895
- if (extrapolateRight === 'identity') return result;else if (extrapolateRight === 'clamp') result = inputMax;
15896
- }
 
15897
 
15898
- if (outputMin === outputMax) return outputMin;
15899
- if (inputMin === inputMax) return input <= inputMin ? outputMin : outputMax; // Input Range
 
 
15900
 
15901
- if (inputMin === -Infinity) result = -result;else if (inputMax === Infinity) result = result - inputMin;else result = (result - inputMin) / (inputMax - inputMin); // Easing
15902
 
15903
- result = easing(result); // Output Range
 
 
15904
 
15905
- if (outputMin === -Infinity) result = -result;else if (outputMax === Infinity) result = result + outputMin;else result = result * (outputMax - outputMin) + outputMin;
15906
- return result;
 
 
 
 
 
 
 
 
 
15907
  }
15908
 
15909
- function findRange(input, inputRange) {
15910
- for (var i = 1; i < inputRange.length - 1; ++i) {
15911
- if (inputRange[i] >= input) break;
15912
- }
15913
-
15914
- return i - 1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
35
  /******/
36
  /******/ // object to store loaded CSS chunks
37
  /******/ var installedCssChunks = {
38
+ /******/ 25: 0
39
  /******/ }
40
  /******/ var isCssRtlEnabled = function() {
41
  /******/ return document.dir === 'rtl';
45
  /******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
46
  /******/ // Promise = chunk loading, 0 = chunk loaded
47
  /******/ var installedChunks = {
48
+ /******/ 25: 0
49
  /******/ };
50
  /******/
51
  /******/
52
  /******/
53
  /******/ // script path function
54
  /******/ function webpackJsonpScriptSrc(chunkId) {
55
+ /******/ return __webpack_require__.p + "chunks/" + ({"10":"activity-panels-help","11":"activity-panels-inbox","12":"activity-panels-stock","13":"analytics-report","14":"analytics-report-categories","15":"analytics-report-coupons","16":"analytics-report-customers","17":"analytics-report-downloads","18":"analytics-report-orders","19":"analytics-report-products","20":"analytics-report-revenue","21":"analytics-report-stock","22":"analytics-report-taxes","23":"analytics-report-variations","24":"analytics-settings","30":"customizable-dashboard","31":"dashboard","32":"dashboard-charts","35":"homescreen","37":"leaderboards","39":"marketing-overview","47":"profile-wizard","48":"store-alerts","49":"store-performance","50":"task-list"}[chunkId]||chunkId) + ".js"
56
  /******/ }
57
  /******/
58
  /******/ function jsonpScriptSrc(chunkId) {
95
  /******/
96
  /******/
97
  /******/ // mini-css-extract-plugin CSS loading
98
+ /******/ var cssChunks = {"0":1,"7":1,"10":1,"11":1,"12":1,"13":1,"18":1,"24":1,"31":1,"32":1,"35":1,"37":1,"39":1,"47":1,"48":1,"49":1};
99
  /******/ if(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);
100
  /******/ else if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {
101
  /******/ promises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {
259
  /******/
260
  /******/
261
  /******/ // Load entry module and return exports
262
+ /******/ return __webpack_require__(__webpack_require__.s = 561);
263
  /******/ })
264
  /************************************************************************/
265
+ /******/ ({
266
+
267
+ /***/ 0:
268
  /***/ (function(module, exports) {
269
 
270
+ (function() { module.exports = this["wp"]["element"]; }());
271
 
272
  /***/ }),
273
+
274
+ /***/ 1:
275
  /***/ (function(module, exports, __webpack_require__) {
276
 
277
  /**
284
  if (false) { var throwOnDirectAccess, ReactIs; } else {
285
  // By explicitly using `prop-types` you are opting into new production behavior.
286
  // http://fb.me/prop-types-in-prod
287
+ module.exports = __webpack_require__(138)();
288
  }
289
 
290
 
291
  /***/ }),
 
 
 
 
 
 
 
 
 
 
 
 
292
 
293
+ /***/ 10:
294
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
 
 
295
 
296
+ "use strict";
297
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _getPrototypeOf; });
298
+ function _getPrototypeOf(o) {
299
+ _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
300
+ return o.__proto__ || Object.getPrototypeOf(o);
301
+ };
302
+ return _getPrototypeOf(o);
303
+ }
304
 
305
  /***/ }),
306
+
307
+ /***/ 100:
308
  /***/ (function(module, exports) {
309
 
310
+ (function() { module.exports = this["ReactDOM"]; }());
311
 
312
  /***/ }),
 
 
313
 
314
+ /***/ 101:
315
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
316
 
317
+ "use strict";
 
 
318
 
319
+ // EXPORTS
320
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ get_get; });
 
 
 
 
 
321
 
322
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
323
+ var getPrototypeOf = __webpack_require__(10);
324
 
325
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/superPropBase.js
 
 
326
 
327
+ function _superPropBase(object, property) {
328
+ while (!Object.prototype.hasOwnProperty.call(object, property)) {
329
+ object = Object(getPrototypeOf["a" /* default */])(object);
330
+ if (object === null) break;
 
 
 
 
 
 
331
  }
332
 
333
+ return object;
334
  }
335
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/get.js
336
 
337
+ function get_get(target, property, receiver) {
338
+ if (typeof Reflect !== "undefined" && Reflect.get) {
339
+ get_get = Reflect.get;
340
+ } else {
341
+ get_get = function _get(target, property, receiver) {
342
+ var base = _superPropBase(target, property);
343
+ if (!base) return;
344
+ var desc = Object.getOwnPropertyDescriptor(base, property);
345
 
346
+ if (desc.get) {
347
+ return desc.get.call(receiver);
348
+ }
349
 
350
+ return desc.value;
351
+ };
352
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
353
 
354
+ return get_get(target, property, receiver || target);
355
+ }
356
 
357
  /***/ }),
 
 
358
 
359
+ /***/ 102:
360
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
361
 
362
+ "use strict";
363
+ function memoize(fn) {
364
+ var cache = {};
365
+ return function (arg) {
366
+ if (cache[arg] === undefined) cache[arg] = fn(arg);
367
+ return cache[arg];
368
+ };
369
+ }
370
+
371
+ /* harmony default export */ __webpack_exports__["a"] = (memoize);
372
 
373
 
374
  /***/ }),
 
 
375
 
376
+ /***/ 103:
377
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
378
+
379
+ "use strict";
380
+ var isProduction = "production" === 'production';
381
+ var prefix = 'Invariant failed';
382
+ function invariant(condition, message) {
383
+ if (condition) {
384
+ return;
385
+ }
386
+ if (isProduction) {
387
+ throw new Error(prefix);
388
+ }
389
+ throw new Error(prefix + ": " + (message || ''));
390
+ }
391
+
392
+ /* harmony default export */ __webpack_exports__["a"] = (invariant);
393
 
394
 
395
  /***/ }),
396
+
397
+ /***/ 11:
398
  /***/ (function(module, exports) {
399
 
400
+ function _assertThisInitialized(self) {
401
+ if (self === void 0) {
402
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
403
+ }
404
 
405
+ return self;
406
+ }
 
407
 
408
+ module.exports = _assertThisInitialized;
409
 
410
  /***/ }),
 
 
411
 
412
+ /***/ 112:
413
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
414
 
415
+ "use strict";
416
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useMediaQuery; });
417
+ /* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(26);
418
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
419
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
420
 
421
 
422
+ /**
423
+ * WordPress dependencies
424
+ */
425
 
426
+ /**
427
+ * Runs a media query and returns its value when it changes.
428
+ *
429
+ * @param {string} [query] Media Query.
430
+ * @return {boolean} return value of the media query.
431
+ */
432
 
433
+ function useMediaQuery(query) {
434
+ var _useState = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useState"])(query && window.matchMedia(query).matches),
435
+ _useState2 = Object(_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(_useState, 2),
436
+ match = _useState2[0],
437
+ setMatch = _useState2[1];
438
 
439
+ Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useEffect"])(function () {
440
+ if (!query) {
441
+ return;
442
+ }
443
 
444
+ var updateMatch = function updateMatch() {
445
+ return setMatch(window.matchMedia(query).matches);
446
+ };
447
 
448
+ updateMatch();
449
+ var list = window.matchMedia(query);
450
+ list.addListener(updateMatch);
451
+ return function () {
452
+ list.removeListener(updateMatch);
453
+ };
454
+ }, [query]);
455
+ return query && match;
456
  }
457
+ //# sourceMappingURL=index.js.map
 
458
 
459
  /***/ }),
 
 
460
 
461
+ /***/ 114:
462
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
463
 
464
+ "use strict";
 
465
 
466
+ // EXPORTS
467
+ __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ slot_fill_Slot; });
468
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ slot_fill_Fill; });
469
 
470
+ // UNUSED EXPORTS: createSlotFill, useSlot, Provider
 
471
 
472
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
473
+ var esm_extends = __webpack_require__(7);
 
474
 
475
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
476
+ var objectWithoutProperties = __webpack_require__(12);
477
 
478
+ // EXTERNAL MODULE: external {"this":["wp","element"]}
479
+ var external_this_wp_element_ = __webpack_require__(0);
 
 
 
 
 
 
 
 
 
 
 
 
 
480
 
481
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
482
+ var classCallCheck = __webpack_require__(21);
483
 
484
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
485
+ var createClass = __webpack_require__(22);
 
 
 
 
 
 
 
 
 
 
486
 
487
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
488
+ var assertThisInitialized = __webpack_require__(13);
489
 
490
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/get.js + 1 modules
491
+ var get = __webpack_require__(101);
 
492
 
493
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules
494
+ var inherits = __webpack_require__(23);
495
 
496
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
497
+ var possibleConstructorReturn = __webpack_require__(24);
 
498
 
499
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
500
+ var getPrototypeOf = __webpack_require__(10);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
501
 
502
+ // EXTERNAL MODULE: external "lodash"
503
+ var external_lodash_ = __webpack_require__(2);
504
 
505
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/context.js + 1 modules
506
+ var context = __webpack_require__(53);
 
507
 
508
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/slot.js
 
 
 
509
 
 
 
510
 
 
511
 
 
 
 
512
 
 
 
 
513
 
 
 
 
 
 
 
514
 
515
 
 
 
 
516
 
 
517
 
 
 
 
518
 
519
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
 
 
520
 
521
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 
 
522
 
523
+ /**
524
+ * External dependencies
525
+ */
526
 
527
+ /**
528
+ * WordPress dependencies
529
+ */
530
 
 
 
 
 
 
531
 
532
+ /**
533
+ * Internal dependencies
534
+ */
535
 
 
 
 
536
 
 
 
 
 
 
 
 
 
 
537
 
538
+ var slot_SlotComponent = /*#__PURE__*/function (_Component) {
539
+ Object(inherits["a" /* default */])(SlotComponent, _Component);
 
 
 
540
 
541
+ var _super = _createSuper(SlotComponent);
542
 
543
+ function SlotComponent() {
544
+ var _this;
 
545
 
546
+ Object(classCallCheck["a" /* default */])(this, SlotComponent);
547
 
548
+ _this = _super.apply(this, arguments);
549
+ _this.isUnmounted = false;
550
+ _this.bindNode = _this.bindNode.bind(Object(assertThisInitialized["a" /* default */])(_this));
551
+ return _this;
552
  }
553
 
554
+ Object(createClass["a" /* default */])(SlotComponent, [{
555
+ key: "componentDidMount",
556
+ value: function componentDidMount() {
557
+ var registerSlot = this.props.registerSlot;
558
+ registerSlot(this.props.name, this);
559
  }
560
+ }, {
561
+ key: "componentWillUnmount",
562
+ value: function componentWillUnmount() {
563
+ var unregisterSlot = this.props.unregisterSlot;
564
+ this.isUnmounted = true;
565
+ unregisterSlot(this.props.name, this);
566
+ }
567
+ }, {
568
+ key: "componentDidUpdate",
569
+ value: function componentDidUpdate(prevProps) {
570
+ var _this$props = this.props,
571
+ name = _this$props.name,
572
+ unregisterSlot = _this$props.unregisterSlot,
573
+ registerSlot = _this$props.registerSlot;
574
 
575
+ if (prevProps.name !== name) {
576
+ unregisterSlot(prevProps.name);
577
+ registerSlot(name, this);
578
+ }
579
+ }
580
+ }, {
581
+ key: "bindNode",
582
+ value: function bindNode(node) {
583
+ this.node = node;
584
+ }
585
+ }, {
586
+ key: "forceUpdate",
587
+ value: function forceUpdate() {
588
+ if (this.isUnmounted) {
589
+ return;
590
+ }
591
 
592
+ Object(get["a" /* default */])(Object(getPrototypeOf["a" /* default */])(SlotComponent.prototype), "forceUpdate", this).call(this);
593
+ }
594
+ }, {
595
+ key: "render",
596
+ value: function render() {
597
+ var _this$props2 = this.props,
598
+ children = _this$props2.children,
599
+ name = _this$props2.name,
600
+ _this$props2$fillProp = _this$props2.fillProps,
601
+ fillProps = _this$props2$fillProp === void 0 ? {} : _this$props2$fillProp,
602
+ getFills = _this$props2.getFills;
603
+ var fills = Object(external_lodash_["map"])(getFills(name, this), function (fill) {
604
+ var fillKey = fill.occurrence;
605
+ var fillChildren = Object(external_lodash_["isFunction"])(fill.children) ? fill.children(fillProps) : fill.children;
606
+ return external_this_wp_element_["Children"].map(fillChildren, function (child, childIndex) {
607
+ if (!child || Object(external_lodash_["isString"])(child)) {
608
+ return child;
609
+ }
610
 
611
+ var childKey = "".concat(fillKey, "---").concat(child.key || childIndex);
612
+ return Object(external_this_wp_element_["cloneElement"])(child, {
613
+ key: childKey
614
+ });
615
+ });
616
+ }).filter( // In some cases fills are rendered only when some conditions apply.
617
+ // This ensures that we only use non-empty fills when rendering, i.e.,
618
+ // it allows us to render wrappers only when the fills are actually present.
619
+ Object(external_lodash_["negate"])(external_this_wp_element_["isEmptyElement"]));
620
+ return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_lodash_["isFunction"])(children) ? children(fills) : fills);
621
+ }
622
+ }]);
623
 
624
+ return SlotComponent;
625
+ }(external_this_wp_element_["Component"]);
626
+
627
+ var slot_Slot = function Slot(props) {
628
+ return Object(external_this_wp_element_["createElement"])(context["a" /* Consumer */], null, function (_ref) {
629
+ var registerSlot = _ref.registerSlot,
630
+ unregisterSlot = _ref.unregisterSlot,
631
+ getFills = _ref.getFills;
632
+ return Object(external_this_wp_element_["createElement"])(slot_SlotComponent, Object(esm_extends["a" /* default */])({}, props, {
633
+ registerSlot: registerSlot,
634
+ unregisterSlot: unregisterSlot,
635
+ getFills: getFills
636
+ }));
637
+ });
638
+ };
639
 
640
+ /* harmony default export */ var slot_fill_slot = (slot_Slot);
641
+ //# sourceMappingURL=slot.js.map
642
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/fill.js
643
 
 
 
 
644
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
645
 
646
+ /**
647
+ * External dependencies
648
+ */
649
 
650
+ /**
651
+ * WordPress dependencies
652
+ */
653
 
 
654
 
655
+ /**
656
+ * Internal dependencies
657
+ */
658
 
 
659
 
660
+ var occurrences = 0;
 
 
661
 
662
+ function fill_FillComponent(_ref) {
663
+ var name = _ref.name,
664
+ children = _ref.children,
665
+ registerFill = _ref.registerFill,
666
+ unregisterFill = _ref.unregisterFill;
667
+ var slot = Object(context["c" /* useSlot */])(name);
668
+ var ref = Object(external_this_wp_element_["useRef"])({
669
+ name: name,
670
+ children: children
671
+ });
672
 
673
+ if (!ref.current.occurrence) {
674
+ ref.current.occurrence = ++occurrences;
675
+ }
676
 
677
+ Object(external_this_wp_element_["useLayoutEffect"])(function () {
678
+ registerFill(name, ref.current);
679
+ return function () {
680
+ return unregisterFill(name, ref.current);
681
+ };
682
+ }, []);
683
+ Object(external_this_wp_element_["useLayoutEffect"])(function () {
684
+ ref.current.children = children;
685
 
686
+ if (slot) {
687
+ slot.forceUpdate();
688
+ }
689
+ }, [children]);
690
+ Object(external_this_wp_element_["useLayoutEffect"])(function () {
691
+ if (name === ref.current.name) {
692
+ // ignore initial effect
693
+ return;
694
+ }
695
 
696
+ unregisterFill(ref.current.name, ref.current);
697
+ ref.current.name = name;
698
+ registerFill(name, ref.current);
699
+ }, [name]);
700
 
701
+ if (!slot || !slot.node) {
702
+ return null;
703
+ } // If a function is passed as a child, provide it with the fillProps.
704
 
 
 
 
 
705
 
706
+ if (Object(external_lodash_["isFunction"])(children)) {
707
+ children = children(slot.props.fillProps);
708
+ }
709
 
710
+ return Object(external_this_wp_element_["createPortal"])(children, slot.node);
711
+ }
 
712
 
713
+ var fill_Fill = function Fill(props) {
714
+ return Object(external_this_wp_element_["createElement"])(context["a" /* Consumer */], null, function (_ref2) {
715
+ var registerFill = _ref2.registerFill,
716
+ unregisterFill = _ref2.unregisterFill;
717
+ return Object(external_this_wp_element_["createElement"])(fill_FillComponent, Object(esm_extends["a" /* default */])({}, props, {
718
+ registerFill: registerFill,
719
+ unregisterFill: unregisterFill
720
+ }));
721
+ });
722
  };
723
 
724
+ /* harmony default export */ var slot_fill_fill = (fill_Fill);
725
+ //# sourceMappingURL=fill.js.map
726
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/slot-fill-context.js
727
+ var slot_fill_context = __webpack_require__(63);
728
 
729
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/slot.js
 
 
730
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
731
 
732
 
 
 
 
733
 
734
+ /**
735
+ * WordPress dependencies
736
+ */
737
 
738
+ /**
739
+ * Internal dependencies
740
+ */
741
 
 
 
 
 
 
742
 
743
+ function bubbles_virtually_slot_Slot(_ref) {
744
+ var name = _ref.name,
745
+ _ref$fillProps = _ref.fillProps,
746
+ fillProps = _ref$fillProps === void 0 ? {} : _ref$fillProps,
747
+ _ref$as = _ref.as,
748
+ Component = _ref$as === void 0 ? 'div' : _ref$as,
749
+ props = Object(objectWithoutProperties["a" /* default */])(_ref, ["name", "fillProps", "as"]);
750
 
751
+ var registry = Object(external_this_wp_element_["useContext"])(slot_fill_context["a" /* default */]);
752
+ var ref = Object(external_this_wp_element_["useRef"])();
753
+ Object(external_this_wp_element_["useLayoutEffect"])(function () {
754
+ registry.registerSlot(name, ref, fillProps);
755
+ return function () {
756
+ registry.unregisterSlot(name, ref);
757
+ }; // We are not including fillProps in the deps because we don't want to
758
+ // unregister and register the slot whenever fillProps change, which would
759
+ // cause the fill to be re-mounted. We are only considering the initial value
760
+ // of fillProps.
761
+ }, [registry.registerSlot, registry.unregisterSlot, name]); // fillProps may be an update that interacts with the layout, so we
762
+ // useLayoutEffect
763
+
764
+ Object(external_this_wp_element_["useLayoutEffect"])(function () {
765
+ registry.updateSlot(name, fillProps);
766
+ });
767
+ return Object(external_this_wp_element_["createElement"])(Component, Object(esm_extends["a" /* default */])({
768
+ ref: ref
769
+ }, props));
770
+ }
771
+ //# sourceMappingURL=slot.js.map
772
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
773
+ var slicedToArray = __webpack_require__(26);
774
 
775
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/use-slot.js
776
+ var use_slot = __webpack_require__(76);
777
 
778
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/fill.js
 
 
779
 
 
780
 
781
+ /**
782
+ * WordPress dependencies
783
+ */
784
 
785
+ /**
786
+ * Internal dependencies
787
+ */
788
 
 
 
 
 
789
 
 
790
 
791
+ function useForceUpdate() {
792
+ var _useState = Object(external_this_wp_element_["useState"])({}),
793
+ _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
794
+ setState = _useState2[1];
 
 
 
795
 
796
+ return function () {
797
+ return setState({});
798
+ };
799
+ }
800
 
801
+ function bubbles_virtually_fill_Fill(_ref) {
802
+ var name = _ref.name,
803
+ children = _ref.children;
804
+ var slot = Object(use_slot["a" /* default */])(name);
805
+ var ref = Object(external_this_wp_element_["useRef"])({
806
+ rerender: useForceUpdate()
807
+ });
808
+ Object(external_this_wp_element_["useEffect"])(function () {
809
+ // We register fills so we can keep track of their existance.
810
+ // Some Slot implementations need to know if there're already fills
811
+ // registered so they can choose to render themselves or not.
812
+ slot.registerFill(ref);
813
+ return function () {
814
+ slot.unregisterFill(ref);
815
+ };
816
+ }, [slot.registerFill, slot.unregisterFill]);
817
 
818
+ if (!slot.ref || !slot.ref.current) {
819
+ return null;
820
+ }
821
 
822
+ if (typeof children === 'function') {
823
+ children = children(slot.fillProps);
824
+ }
 
 
825
 
826
+ return Object(external_this_wp_element_["createPortal"])(children, slot.ref.current);
827
+ }
828
+ //# sourceMappingURL=fill.js.map
829
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/index.js
830
 
 
 
 
831
 
 
 
 
 
 
 
 
 
832
 
833
 
834
+ /**
835
+ * Internal dependencies
836
+ */
837
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
838
 
839
 
 
 
 
840
 
 
841
 
 
 
 
842
 
843
+ function slot_fill_Slot(_ref) {
844
+ var bubblesVirtually = _ref.bubblesVirtually,
845
+ props = Object(objectWithoutProperties["a" /* default */])(_ref, ["bubblesVirtually"]);
846
 
847
+ if (bubblesVirtually) {
848
+ return Object(external_this_wp_element_["createElement"])(bubbles_virtually_slot_Slot, props);
 
 
 
 
849
  }
 
850
 
851
+ return Object(external_this_wp_element_["createElement"])(slot_fill_slot, props);
852
+ }
853
+ function slot_fill_Fill(props) {
854
+ // We're adding both Fills here so they can register themselves before
855
+ // their respective slot has been registered. Only the Fill that has a slot
856
+ // will render. The other one will return null.
857
+ return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(slot_fill_fill, props), Object(external_this_wp_element_["createElement"])(bubbles_virtually_fill_Fill, props));
858
+ }
859
+ function createSlotFill(name) {
860
+ var FillComponent = function FillComponent(props) {
861
+ return Object(external_this_wp_element_["createElement"])(slot_fill_Fill, Object(esm_extends["a" /* default */])({
862
+ name: name
863
+ }, props));
864
+ };
865
 
866
+ FillComponent.displayName = name + 'Fill';
 
 
867
 
868
+ var SlotComponent = function SlotComponent(props) {
869
+ return Object(external_this_wp_element_["createElement"])(slot_fill_Slot, Object(esm_extends["a" /* default */])({
870
+ name: name
871
+ }, props));
872
+ };
873
 
874
+ SlotComponent.displayName = name + 'Slot';
875
+ return {
876
+ Fill: FillComponent,
877
+ Slot: SlotComponent
878
+ };
879
+ }
880
 
881
+ //# sourceMappingURL=index.js.map
882
 
883
  /***/ }),
 
 
884
 
885
+ /***/ 115:
886
+ /***/ (function(module, exports, __webpack_require__) {
 
887
 
888
+ "use strict";
889
 
 
890
 
891
+ var replace = String.prototype.replace;
892
+ var percentTwenties = /%20/g;
 
893
 
894
+ var util = __webpack_require__(92);
895
 
896
+ var Format = {
897
+ RFC1738: 'RFC1738',
898
+ RFC3986: 'RFC3986'
899
+ };
900
 
901
+ module.exports = util.assign(
902
+ {
903
+ 'default': Format.RFC3986,
904
+ formatters: {
905
+ RFC1738: function (value) {
906
+ return replace.call(value, percentTwenties, '+');
907
+ },
908
+ RFC3986: function (value) {
909
+ return String(value);
910
+ }
911
+ }
912
+ },
913
+ Format
914
+ );
915
 
 
916
 
917
+ /***/ }),
918
 
919
+ /***/ 116:
920
+ /***/ (function(module, exports) {
921
 
922
+ function _arrayWithHoles(arr) {
923
+ if (Array.isArray(arr)) return arr;
924
  }
925
 
926
+ module.exports = _arrayWithHoles;
927
 
928
  /***/ }),
 
 
929
 
930
+ /***/ 117:
931
+ /***/ (function(module, exports) {
 
 
 
 
 
 
932
 
933
+ function _iterableToArrayLimit(arr, i) {
934
+ if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;
935
+ var _arr = [];
936
+ var _n = true;
937
+ var _d = false;
938
+ var _e = undefined;
939
 
940
+ try {
941
+ for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
942
+ _arr.push(_s.value);
943
 
944
+ if (i && _arr.length === i) break;
945
+ }
946
+ } catch (err) {
947
+ _d = true;
948
+ _e = err;
949
+ } finally {
950
+ try {
951
+ if (!_n && _i["return"] != null) _i["return"]();
952
+ } finally {
953
+ if (_d) throw _e;
954
+ }
955
+ }
956
 
957
+ return _arr;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
958
  }
959
 
960
+ module.exports = _iterableToArrayLimit;
 
 
 
 
 
 
 
961
 
962
  /***/ }),
 
 
963
 
964
+ /***/ 118:
965
+ /***/ (function(module, exports) {
966
 
967
+ function _nonIterableRest() {
968
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
969
+ }
 
 
 
 
970
 
971
+ module.exports = _nonIterableRest;
972
 
973
  /***/ }),
 
 
 
 
 
974
 
975
+ /***/ 12:
976
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
977
 
978
+ "use strict";
979
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutProperties; });
980
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(58);
981
 
982
+ function _objectWithoutProperties(source, excluded) {
983
+ if (source == null) return {};
984
+ var target = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(source, excluded);
985
+ var key, i;
986
 
987
+ if (Object.getOwnPropertySymbols) {
988
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
 
989
 
990
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
991
+ key = sourceSymbolKeys[i];
992
+ if (excluded.indexOf(key) >= 0) continue;
993
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
994
+ target[key] = source[key];
995
+ }
996
+ }
 
 
 
997
 
998
+ return target;
999
+ }
1000
 
1001
  /***/ }),
1002
+
1003
+ /***/ 125:
1004
  /***/ (function(module, exports, __webpack_require__) {
1005
 
1006
+ var e=__webpack_require__(6),n={display:"block",opacity:0,position:"absolute",top:0,left:0,height:"100%",width:"100%",overflow:"hidden",pointerEvents:"none",zIndex:-1},t=function(t){var r=t.onResize,u=e.useRef();return function(n,t){var r=function(){return n.current&&n.current.contentDocument&&n.current.contentDocument.defaultView};function u(){t();var e=r();e&&e.addEventListener("resize",t)}e.useEffect((function(){return r()?u():n.current&&n.current.addEventListener&&n.current.addEventListener("load",u),function(){var e=r();e&&"function"==typeof e.removeEventListener&&e.removeEventListener("resize",t)}}),[])}(u,(function(){return r(u)})),e.createElement("iframe",{style:n,src:"about:blank",ref:u,"aria-hidden":!0,tabIndex:-1,frameBorder:0})},r=function(e){return{width:null!=e?e.offsetWidth:null,height:null!=e?e.offsetHeight:null}};module.exports=function(n){void 0===n&&(n=r);var u=e.useState(n(null)),o=u[0],i=u[1],c=e.useCallback((function(e){return i(n(e.current))}),[n]);return[e.useMemo((function(){return e.createElement(t,{onResize:c})}),[c]),o]};
1007
+ //# sourceMappingURL=index.js.map
 
 
 
 
 
 
 
 
 
 
 
 
 
1008
 
1009
 
1010
  /***/ }),
 
 
1011
 
1012
+ /***/ 126:
1013
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
1014
 
1015
  "use strict";
1016
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);
1017
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(12);
1018
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
1019
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__);
1020
 
 
 
 
1021
 
 
1022
 
 
 
 
 
 
 
 
 
1023
 
1024
+ function Dashicon(_ref) {
1025
+ var icon = _ref.icon,
1026
+ _ref$size = _ref.size,
1027
+ size = _ref$size === void 0 ? 20 : _ref$size,
1028
+ className = _ref.className,
1029
+ extraProps = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_ref, ["icon", "size", "className"]);
1030
 
1031
+ var iconClass = ['dashicon', 'dashicons', 'dashicons-' + icon, className].filter(Boolean).join(' ');
1032
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["createElement"])("span", Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
1033
+ className: iconClass,
1034
+ width: size,
1035
+ height: size
1036
+ }, extraProps));
1037
+ }
 
 
 
 
 
1038
 
1039
+ /* harmony default export */ __webpack_exports__["a"] = (Dashicon);
1040
+ //# sourceMappingURL=index.js.map
1041
 
1042
  /***/ }),
 
 
 
 
1043
 
1044
+ /***/ 127:
1045
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1046
 
1047
+ "use strict";
 
 
 
 
1048
 
1049
+ // EXPORTS
1050
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ createBrowserHistory; });
1051
+ __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ createMemoryHistory; });
1052
+ __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ createLocation; });
1053
+ __webpack_require__.d(__webpack_exports__, "e", function() { return /* binding */ locationsAreEqual; });
1054
+ __webpack_require__.d(__webpack_exports__, "d", function() { return /* binding */ createPath; });
 
 
 
 
 
 
 
 
 
1055
 
1056
+ // UNUSED EXPORTS: createHashHistory, parsePath
 
 
 
 
 
 
 
 
1057
 
1058
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
1059
+ var esm_extends = __webpack_require__(7);
 
1060
 
1061
+ // CONCATENATED MODULE: ./node_modules/resolve-pathname/esm/resolve-pathname.js
1062
+ function isAbsolute(pathname) {
1063
+ return pathname.charAt(0) === '/';
1064
+ }
 
 
1065
 
1066
+ // About 1.5x faster than the two-arg version of Array#splice()
1067
+ function spliceOne(list, index) {
1068
+ for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1) {
1069
+ list[i] = list[k];
 
 
 
1070
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1071
 
1072
+ list.pop();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1073
  }
1074
 
1075
+ // This implementation is based heavily on node's url.parse
1076
+ function resolvePathname(to, from) {
1077
+ if (from === undefined) from = '';
1078
 
1079
+ var toParts = (to && to.split('/')) || [];
1080
+ var fromParts = (from && from.split('/')) || [];
 
1081
 
1082
+ var isToAbs = to && isAbsolute(to);
1083
+ var isFromAbs = from && isAbsolute(from);
1084
+ var mustEndAbs = isToAbs || isFromAbs;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1085
 
1086
+ if (to && isAbsolute(to)) {
1087
+ // to is absolute
1088
+ fromParts = toParts;
1089
+ } else if (toParts.length) {
1090
+ // to is relative, drop the filename
1091
+ fromParts.pop();
1092
+ fromParts = fromParts.concat(toParts);
1093
+ }
 
 
 
 
 
 
1094
 
1095
+ if (!fromParts.length) return '/';
 
 
 
 
 
 
 
1096
 
1097
+ var hasTrailingSlash;
1098
+ if (fromParts.length) {
1099
+ var last = fromParts[fromParts.length - 1];
1100
+ hasTrailingSlash = last === '.' || last === '..' || last === '';
1101
+ } else {
1102
+ hasTrailingSlash = false;
1103
  }
 
1104
 
1105
+ var up = 0;
1106
+ for (var i = fromParts.length; i >= 0; i--) {
1107
+ var part = fromParts[i];
 
 
 
 
 
 
 
 
 
1108
 
1109
+ if (part === '.') {
1110
+ spliceOne(fromParts, i);
1111
+ } else if (part === '..') {
1112
+ spliceOne(fromParts, i);
1113
+ up++;
1114
+ } else if (up) {
1115
+ spliceOne(fromParts, i);
1116
+ up--;
 
 
 
 
 
 
 
1117
  }
1118
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1119
 
1120
+ if (!mustEndAbs) for (; up--; up) fromParts.unshift('..');
 
 
 
 
1121
 
1122
+ if (
1123
+ mustEndAbs &&
1124
+ fromParts[0] !== '' &&
1125
+ (!fromParts[0] || !isAbsolute(fromParts[0]))
1126
+ )
1127
+ fromParts.unshift('');
1128
 
1129
+ var result = fromParts.join('/');
 
 
1130
 
1131
+ if (hasTrailingSlash && result.substr(-1) !== '/') result += '/';
 
1132
 
1133
+ return result;
1134
+ }
 
1135
 
1136
+ /* harmony default export */ var resolve_pathname = (resolvePathname);
1137
 
1138
+ // CONCATENATED MODULE: ./node_modules/value-equal/esm/value-equal.js
1139
+ function value_equal_valueOf(obj) {
1140
+ return obj.valueOf ? obj.valueOf() : Object.prototype.valueOf.call(obj);
1141
+ }
1142
 
1143
+ function valueEqual(a, b) {
1144
+ // Test for strict equality first.
1145
+ if (a === b) return true;
1146
 
1147
+ // Otherwise, if either of them == null they are not equal.
1148
+ if (a == null || b == null) return false;
1149
 
1150
+ if (Array.isArray(a)) {
1151
+ return (
1152
+ Array.isArray(b) &&
1153
+ a.length === b.length &&
1154
+ a.every(function(item, index) {
1155
+ return valueEqual(item, b[index]);
1156
+ })
1157
+ );
1158
+ }
1159
 
1160
+ if (typeof a === 'object' || typeof b === 'object') {
1161
+ var aValue = value_equal_valueOf(a);
1162
+ var bValue = value_equal_valueOf(b);
1163
 
1164
+ if (aValue !== a || bValue !== b) return valueEqual(aValue, bValue);
 
 
1165
 
1166
+ return Object.keys(Object.assign({}, a, b)).every(function(key) {
1167
+ return valueEqual(a[key], b[key]);
1168
+ });
1169
+ }
1170
 
1171
+ return false;
1172
+ }
1173
 
1174
+ /* harmony default export */ var value_equal = (valueEqual);
 
 
1175
 
1176
+ // EXTERNAL MODULE: ./node_modules/tiny-invariant/dist/tiny-invariant.esm.js
1177
+ var tiny_invariant_esm = __webpack_require__(103);
1178
 
1179
+ // CONCATENATED MODULE: ./node_modules/history/esm/history.js
 
 
 
 
 
 
1180
 
1181
 
 
 
 
1182
 
 
1183
 
 
 
 
1184
 
 
 
 
 
 
1185
 
1186
+ function addLeadingSlash(path) {
1187
+ return path.charAt(0) === '/' ? path : '/' + path;
1188
+ }
1189
+ function stripLeadingSlash(path) {
1190
+ return path.charAt(0) === '/' ? path.substr(1) : path;
1191
+ }
1192
+ function hasBasename(path, prefix) {
1193
+ return path.toLowerCase().indexOf(prefix.toLowerCase()) === 0 && '/?#'.indexOf(path.charAt(prefix.length)) !== -1;
1194
+ }
1195
+ function stripBasename(path, prefix) {
1196
+ return hasBasename(path, prefix) ? path.substr(prefix.length) : path;
1197
+ }
1198
+ function stripTrailingSlash(path) {
1199
+ return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;
1200
+ }
1201
+ function parsePath(path) {
1202
+ var pathname = path || '/';
1203
+ var search = '';
1204
+ var hash = '';
1205
+ var hashIndex = pathname.indexOf('#');
1206
 
1207
+ if (hashIndex !== -1) {
1208
+ hash = pathname.substr(hashIndex);
1209
+ pathname = pathname.substr(0, hashIndex);
 
 
1210
  }
 
 
1211
 
1212
+ var searchIndex = pathname.indexOf('?');
 
 
1213
 
1214
+ if (searchIndex !== -1) {
1215
+ search = pathname.substr(searchIndex);
1216
+ pathname = pathname.substr(0, searchIndex);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1217
  }
 
 
1218
 
1219
+ return {
1220
+ pathname: pathname,
1221
+ search: search === '?' ? '' : search,
1222
+ hash: hash === '#' ? '' : hash
1223
+ };
1224
+ }
1225
+ function createPath(location) {
1226
+ var pathname = location.pathname,
1227
+ search = location.search,
1228
+ hash = location.hash;
1229
+ var path = pathname || '/';
1230
+ if (search && search !== '?') path += search.charAt(0) === '?' ? search : "?" + search;
1231
+ if (hash && hash !== '#') path += hash.charAt(0) === '#' ? hash : "#" + hash;
1232
+ return path;
1233
+ }
1234
 
1235
+ function createLocation(path, state, key, currentLocation) {
1236
+ var location;
1237
 
1238
+ if (typeof path === 'string') {
1239
+ // Two-arg form: push(path, state)
1240
+ location = parsePath(path);
1241
+ location.state = state;
1242
+ } else {
1243
+ // One-arg form: push(location)
1244
+ location = Object(esm_extends["a" /* default */])({}, path);
1245
+ if (location.pathname === undefined) location.pathname = '';
1246
 
1247
+ if (location.search) {
1248
+ if (location.search.charAt(0) !== '?') location.search = '?' + location.search;
1249
+ } else {
1250
+ location.search = '';
1251
+ }
1252
 
1253
+ if (location.hash) {
1254
+ if (location.hash.charAt(0) !== '#') location.hash = '#' + location.hash;
1255
+ } else {
1256
+ location.hash = '';
1257
+ }
1258
 
1259
+ if (state !== undefined && location.state === undefined) location.state = state;
 
 
 
 
 
 
 
1260
  }
 
1261
 
1262
+ try {
1263
+ location.pathname = decodeURI(location.pathname);
1264
+ } catch (e) {
1265
+ if (e instanceof URIError) {
1266
+ throw new URIError('Pathname "' + location.pathname + '" could not be decoded. ' + 'This is likely caused by an invalid percent-encoding.');
1267
+ } else {
1268
+ throw e;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1269
  }
 
 
 
 
 
1270
  }
 
 
 
 
 
 
1271
 
1272
+ if (key) location.key = key;
1273
 
1274
+ if (currentLocation) {
1275
+ // Resolve incomplete/relative pathname relative to current location.
1276
+ if (!location.pathname) {
1277
+ location.pathname = currentLocation.pathname;
1278
+ } else if (location.pathname.charAt(0) !== '/') {
1279
+ location.pathname = resolve_pathname(location.pathname, currentLocation.pathname);
1280
+ }
1281
+ } else {
1282
+ // When there is no prior location and pathname is empty, set it to /
1283
+ if (!location.pathname) {
1284
+ location.pathname = '/';
1285
+ }
1286
+ }
1287
 
1288
+ return location;
1289
+ }
1290
+ function locationsAreEqual(a, b) {
1291
+ return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash && a.key === b.key && value_equal(a.state, b.state);
1292
+ }
1293
 
1294
+ function createTransitionManager() {
1295
+ var prompt = null;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1296
 
1297
+ function setPrompt(nextPrompt) {
1298
+ false ? undefined : void 0;
1299
+ prompt = nextPrompt;
1300
+ return function () {
1301
+ if (prompt === nextPrompt) prompt = null;
1302
+ };
1303
+ }
1304
 
1305
+ function confirmTransitionTo(location, action, getUserConfirmation, callback) {
1306
+ // TODO: If another transition starts while we're still confirming
1307
+ // the previous one, we may end up in a weird state. Figure out the
1308
+ // best way to handle this.
1309
+ if (prompt != null) {
1310
+ var result = typeof prompt === 'function' ? prompt(location, action) : prompt;
1311
 
1312
+ if (typeof result === 'string') {
1313
+ if (typeof getUserConfirmation === 'function') {
1314
+ getUserConfirmation(result, callback);
1315
+ } else {
1316
+ false ? undefined : void 0;
1317
+ callback(true);
1318
+ }
 
 
 
 
 
 
 
 
 
 
 
1319
  } else {
1320
+ // Return false from a transition hook to cancel the transition.
1321
+ callback(result !== false);
1322
  }
1323
+ } else {
1324
+ callback(true);
1325
  }
 
 
1326
  }
 
 
 
 
 
 
 
 
 
1327
 
1328
+ var listeners = [];
 
 
1329
 
1330
+ function appendListener(fn) {
1331
+ var isActive = true;
 
1332
 
1333
+ function listener() {
1334
+ if (isActive) fn.apply(void 0, arguments);
1335
+ }
1336
 
1337
+ listeners.push(listener);
1338
+ return function () {
1339
+ isActive = false;
1340
+ listeners = listeners.filter(function (item) {
1341
+ return item !== listener;
1342
+ });
1343
+ };
1344
+ }
1345
 
1346
+ function notifyListeners() {
1347
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1348
+ args[_key] = arguments[_key];
1349
+ }
1350
 
1351
+ listeners.forEach(function (listener) {
1352
+ return listener.apply(void 0, args);
1353
+ });
1354
+ }
1355
 
1356
+ return {
1357
+ setPrompt: setPrompt,
1358
+ confirmTransitionTo: confirmTransitionTo,
1359
+ appendListener: appendListener,
1360
+ notifyListeners: notifyListeners
1361
  };
1362
  }
1363
 
1364
+ var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
1365
+ function getConfirmation(message, callback) {
1366
+ callback(window.confirm(message)); // eslint-disable-line no-alert
1367
+ }
1368
+ /**
1369
+ * Returns true if the HTML5 history API is supported. Taken from Modernizr.
1370
+ *
1371
+ * https://github.com/Modernizr/Modernizr/blob/master/LICENSE
1372
+ * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js
1373
+ * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586
1374
+ */
 
 
 
1375
 
1376
+ function supportsHistory() {
1377
+ var ua = window.navigator.userAgent;
1378
+ if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && ua.indexOf('Mobile Safari') !== -1 && ua.indexOf('Chrome') === -1 && ua.indexOf('Windows Phone') === -1) return false;
1379
+ return window.history && 'pushState' in window.history;
1380
+ }
1381
+ /**
1382
+ * Returns true if browser fires popstate on hash change.
1383
+ * IE10 and IE11 do not.
1384
+ */
1385
 
1386
+ function supportsPopStateOnHashChange() {
1387
+ return window.navigator.userAgent.indexOf('Trident') === -1;
1388
+ }
1389
+ /**
1390
+ * Returns false if using go(n) with hash history causes a full page reload.
1391
+ */
1392
 
1393
+ function supportsGoWithoutReloadUsingHash() {
1394
+ return window.navigator.userAgent.indexOf('Firefox') === -1;
1395
+ }
1396
+ /**
1397
+ * Returns true if a given popstate event is an extraneous WebKit event.
1398
+ * Accounts for the fact that Chrome on iOS fires real popstate events
1399
+ * containing undefined state when pressing the back button.
1400
+ */
1401
 
1402
+ function isExtraneousPopstateEvent(event) {
1403
+ return event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1;
1404
+ }
 
 
 
 
 
1405
 
1406
+ var PopStateEvent = 'popstate';
1407
+ var HashChangeEvent = 'hashchange';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1408
 
1409
+ function getHistoryState() {
 
 
 
 
 
 
1410
  try {
1411
+ return window.history.state || {};
1412
+ } catch (e) {
1413
+ // IE 11 sometimes throws when accessing window.history.state
1414
+ // See https://github.com/ReactTraining/history/pull/289
1415
+ return {};
1416
+ }
1417
+ }
1418
+ /**
1419
+ * Creates a history object that uses the HTML5 history API including
1420
+ * pushState, replaceState, and the popstate event.
1421
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
1422
 
1423
 
1424
+ function createBrowserHistory(props) {
1425
+ if (props === void 0) {
1426
+ props = {};
1427
+ }
1428
 
1429
+ !canUseDOM ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
1430
+ var globalHistory = window.history;
1431
+ var canUseHistory = supportsHistory();
1432
+ var needsHashChangeListener = !supportsPopStateOnHashChange();
1433
+ var _props = props,
1434
+ _props$forceRefresh = _props.forceRefresh,
1435
+ forceRefresh = _props$forceRefresh === void 0 ? false : _props$forceRefresh,
1436
+ _props$getUserConfirm = _props.getUserConfirmation,
1437
+ getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,
1438
+ _props$keyLength = _props.keyLength,
1439
+ keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength;
1440
+ var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';
1441
 
1442
+ function getDOMLocation(historyState) {
1443
+ var _ref = historyState || {},
1444
+ key = _ref.key,
1445
+ state = _ref.state;
1446
 
1447
+ var _window$location = window.location,
1448
+ pathname = _window$location.pathname,
1449
+ search = _window$location.search,
1450
+ hash = _window$location.hash;
1451
+ var path = pathname + search + hash;
1452
+ false ? undefined : void 0;
1453
+ if (basename) path = stripBasename(path, basename);
1454
+ return createLocation(path, state, key);
1455
+ }
1456
 
1457
+ function createKey() {
1458
+ return Math.random().toString(36).substr(2, keyLength);
1459
+ }
1460
 
1461
+ var transitionManager = createTransitionManager();
1462
 
1463
+ function setState(nextState) {
1464
+ Object(esm_extends["a" /* default */])(history, nextState);
 
 
 
 
 
 
1465
 
1466
+ history.length = globalHistory.length;
1467
+ transitionManager.notifyListeners(history.location, history.action);
1468
+ }
1469
 
1470
+ function handlePopState(event) {
1471
+ // Ignore extraneous popstate events in WebKit.
1472
+ if (isExtraneousPopstateEvent(event)) return;
1473
+ handlePop(getDOMLocation(event.state));
1474
+ }
1475
 
1476
+ function handleHashChange() {
1477
+ handlePop(getDOMLocation(getHistoryState()));
1478
+ }
1479
 
1480
+ var forceNextPop = false;
 
 
 
 
 
1481
 
1482
+ function handlePop(location) {
1483
+ if (forceNextPop) {
1484
+ forceNextPop = false;
1485
+ setState();
1486
+ } else {
1487
+ var action = 'POP';
1488
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
1489
+ if (ok) {
1490
+ setState({
1491
+ action: action,
1492
+ location: location
1493
+ });
1494
+ } else {
1495
+ revertPop(location);
1496
+ }
1497
+ });
1498
+ }
1499
+ }
1500
 
1501
+ function revertPop(fromLocation) {
1502
+ var toLocation = history.location; // TODO: We could probably make this more reliable by
1503
+ // keeping a list of keys we've seen in sessionStorage.
1504
+ // Instead, we just default to 0 for keys we don't know.
1505
 
1506
+ var toIndex = allKeys.indexOf(toLocation.key);
1507
+ if (toIndex === -1) toIndex = 0;
1508
+ var fromIndex = allKeys.indexOf(fromLocation.key);
1509
+ if (fromIndex === -1) fromIndex = 0;
1510
+ var delta = toIndex - fromIndex;
1511
 
1512
+ if (delta) {
1513
+ forceNextPop = true;
1514
+ go(delta);
1515
+ }
 
 
 
 
 
1516
  }
 
 
 
1517
 
1518
+ var initialLocation = getDOMLocation(getHistoryState());
1519
+ var allKeys = [initialLocation.key]; // Public interface
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1520
 
1521
+ function createHref(location) {
1522
+ return basename + createPath(location);
1523
+ }
1524
 
1525
+ function push(path, state) {
1526
+ false ? undefined : void 0;
1527
+ var action = 'PUSH';
1528
+ var location = createLocation(path, state, createKey(), history.location);
1529
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
1530
+ if (!ok) return;
1531
+ var href = createHref(location);
1532
+ var key = location.key,
1533
+ state = location.state;
1534
 
1535
+ if (canUseHistory) {
1536
+ globalHistory.pushState({
1537
+ key: key,
1538
+ state: state
1539
+ }, null, href);
1540
 
1541
+ if (forceRefresh) {
1542
+ window.location.href = href;
1543
+ } else {
1544
+ var prevIndex = allKeys.indexOf(history.location.key);
1545
+ var nextKeys = allKeys.slice(0, prevIndex + 1);
1546
+ nextKeys.push(location.key);
1547
+ allKeys = nextKeys;
1548
+ setState({
1549
+ action: action,
1550
+ location: location
1551
+ });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1552
  }
1553
+ } else {
1554
+ false ? undefined : void 0;
1555
+ window.location.href = href;
1556
  }
1557
+ });
1558
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1559
 
1560
+ function replace(path, state) {
1561
+ false ? undefined : void 0;
1562
+ var action = 'REPLACE';
1563
+ var location = createLocation(path, state, createKey(), history.location);
1564
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
1565
+ if (!ok) return;
1566
+ var href = createHref(location);
1567
+ var key = location.key,
1568
+ state = location.state;
1569
 
1570
+ if (canUseHistory) {
1571
+ globalHistory.replaceState({
1572
+ key: key,
1573
+ state: state
1574
+ }, null, href);
1575
 
1576
+ if (forceRefresh) {
1577
+ window.location.replace(href);
1578
+ } else {
1579
+ var prevIndex = allKeys.indexOf(history.location.key);
1580
+ if (prevIndex !== -1) allKeys[prevIndex] = location.key;
1581
+ setState({
1582
+ action: action,
1583
+ location: location
1584
+ });
1585
+ }
1586
+ } else {
1587
+ false ? undefined : void 0;
1588
+ window.location.replace(href);
1589
+ }
1590
+ });
1591
+ }
1592
 
1593
+ function go(n) {
1594
+ globalHistory.go(n);
1595
+ }
1596
 
1597
+ function goBack() {
1598
+ go(-1);
1599
+ }
 
 
 
1600
 
1601
+ function goForward() {
1602
+ go(1);
1603
+ }
1604
 
1605
+ var listenerCount = 0;
 
 
1606
 
1607
+ function checkDOMListeners(delta) {
1608
+ listenerCount += delta;
1609
 
1610
+ if (listenerCount === 1 && delta === 1) {
1611
+ window.addEventListener(PopStateEvent, handlePopState);
1612
+ if (needsHashChangeListener) window.addEventListener(HashChangeEvent, handleHashChange);
1613
+ } else if (listenerCount === 0) {
1614
+ window.removeEventListener(PopStateEvent, handlePopState);
1615
+ if (needsHashChangeListener) window.removeEventListener(HashChangeEvent, handleHashChange);
1616
+ }
1617
+ }
1618
 
1619
+ var isBlocked = false;
1620
 
1621
+ function block(prompt) {
1622
+ if (prompt === void 0) {
1623
+ prompt = false;
1624
+ }
1625
 
1626
+ var unblock = transitionManager.setPrompt(prompt);
1627
 
1628
+ if (!isBlocked) {
1629
+ checkDOMListeners(1);
1630
+ isBlocked = true;
1631
+ }
1632
 
1633
+ return function () {
1634
+ if (isBlocked) {
1635
+ isBlocked = false;
1636
+ checkDOMListeners(-1);
1637
+ }
1638
 
1639
+ return unblock();
1640
+ };
1641
+ }
1642
 
1643
+ function listen(listener) {
1644
+ var unlisten = transitionManager.appendListener(listener);
1645
+ checkDOMListeners(1);
1646
+ return function () {
1647
+ checkDOMListeners(-1);
1648
+ unlisten();
1649
+ };
1650
+ }
1651
 
1652
+ var history = {
1653
+ length: globalHistory.length,
1654
+ action: 'POP',
1655
+ location: initialLocation,
1656
+ createHref: createHref,
1657
+ push: push,
1658
+ replace: replace,
1659
+ go: go,
1660
+ goBack: goBack,
1661
+ goForward: goForward,
1662
+ block: block,
1663
+ listen: listen
1664
+ };
1665
+ return history;
1666
+ }
1667
 
1668
+ var HashChangeEvent$1 = 'hashchange';
1669
+ var HashPathCoders = {
1670
+ hashbang: {
1671
+ encodePath: function encodePath(path) {
1672
+ return path.charAt(0) === '!' ? path : '!/' + stripLeadingSlash(path);
1673
+ },
1674
+ decodePath: function decodePath(path) {
1675
+ return path.charAt(0) === '!' ? path.substr(1) : path;
1676
  }
1677
+ },
1678
+ noslash: {
1679
+ encodePath: stripLeadingSlash,
1680
+ decodePath: addLeadingSlash
1681
+ },
1682
+ slash: {
1683
+ encodePath: addLeadingSlash,
1684
+ decodePath: addLeadingSlash
1685
+ }
1686
+ };
1687
 
1688
+ function stripHash(url) {
1689
+ var hashIndex = url.indexOf('#');
1690
+ return hashIndex === -1 ? url : url.slice(0, hashIndex);
1691
+ }
1692
 
1693
+ function getHashPath() {
1694
+ // We can't use window.location.hash here because it's not
1695
+ // consistent across browsers - Firefox will pre-decode it!
1696
+ var href = window.location.href;
1697
+ var hashIndex = href.indexOf('#');
1698
+ return hashIndex === -1 ? '' : href.substring(hashIndex + 1);
1699
  }
1700
 
1701
+ function pushHashPath(path) {
1702
+ window.location.hash = path;
1703
+ }
1704
 
1705
+ function replaceHashPath(path) {
1706
+ window.location.replace(stripHash(window.location.href) + '#' + path);
1707
+ }
1708
 
1709
+ function createHashHistory(props) {
1710
+ if (props === void 0) {
1711
+ props = {};
1712
+ }
1713
 
1714
+ !canUseDOM ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
1715
+ var globalHistory = window.history;
1716
+ var canGoWithoutReload = supportsGoWithoutReloadUsingHash();
1717
+ var _props = props,
1718
+ _props$getUserConfirm = _props.getUserConfirmation,
1719
+ getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,
1720
+ _props$hashType = _props.hashType,
1721
+ hashType = _props$hashType === void 0 ? 'slash' : _props$hashType;
1722
+ var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';
1723
+ var _HashPathCoders$hashT = HashPathCoders[hashType],
1724
+ encodePath = _HashPathCoders$hashT.encodePath,
1725
+ decodePath = _HashPathCoders$hashT.decodePath;
1726
 
1727
+ function getDOMLocation() {
1728
+ var path = decodePath(getHashPath());
1729
+ false ? undefined : void 0;
1730
+ if (basename) path = stripBasename(path, basename);
1731
+ return createLocation(path);
1732
+ }
1733
 
1734
+ var transitionManager = createTransitionManager();
 
 
1735
 
1736
+ function setState(nextState) {
1737
+ Object(esm_extends["a" /* default */])(history, nextState);
1738
 
1739
+ history.length = globalHistory.length;
1740
+ transitionManager.notifyListeners(history.location, history.action);
1741
+ }
1742
 
1743
+ var forceNextPop = false;
1744
+ var ignorePath = null;
1745
 
1746
+ function locationsAreEqual$$1(a, b) {
1747
+ return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash;
1748
+ }
1749
 
1750
+ function handleHashChange() {
1751
+ var path = getHashPath();
1752
+ var encodedPath = encodePath(path);
1753
 
1754
+ if (path !== encodedPath) {
1755
+ // Ensure we always have a properly-encoded hash.
1756
+ replaceHashPath(encodedPath);
1757
+ } else {
1758
+ var location = getDOMLocation();
1759
+ var prevLocation = history.location;
1760
+ if (!forceNextPop && locationsAreEqual$$1(prevLocation, location)) return; // A hashchange doesn't always == location change.
1761
 
1762
+ if (ignorePath === createPath(location)) return; // Ignore this change; we already setState in push/replace.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1763
 
1764
+ ignorePath = null;
1765
+ handlePop(location);
1766
+ }
1767
+ }
 
 
 
 
 
 
 
 
 
 
 
1768
 
1769
+ function handlePop(location) {
1770
+ if (forceNextPop) {
1771
+ forceNextPop = false;
1772
+ setState();
1773
+ } else {
1774
+ var action = 'POP';
1775
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
1776
+ if (ok) {
1777
+ setState({
1778
+ action: action,
1779
+ location: location
1780
+ });
1781
+ } else {
1782
+ revertPop(location);
1783
+ }
1784
+ });
1785
+ }
1786
+ }
1787
 
1788
+ function revertPop(fromLocation) {
1789
+ var toLocation = history.location; // TODO: We could probably make this more reliable by
1790
+ // keeping a list of paths we've seen in sessionStorage.
1791
+ // Instead, we just default to 0 for paths we don't know.
1792
 
1793
+ var toIndex = allPaths.lastIndexOf(createPath(toLocation));
1794
+ if (toIndex === -1) toIndex = 0;
1795
+ var fromIndex = allPaths.lastIndexOf(createPath(fromLocation));
1796
+ if (fromIndex === -1) fromIndex = 0;
1797
+ var delta = toIndex - fromIndex;
1798
 
1799
+ if (delta) {
1800
+ forceNextPop = true;
1801
+ go(delta);
1802
+ }
1803
+ } // Ensure the hash is encoded properly before doing anything else.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1804
 
1805
 
1806
+ var path = getHashPath();
1807
+ var encodedPath = encodePath(path);
1808
+ if (path !== encodedPath) replaceHashPath(encodedPath);
1809
+ var initialLocation = getDOMLocation();
1810
+ var allPaths = [createPath(initialLocation)]; // Public interface
1811
 
1812
+ function createHref(location) {
1813
+ var baseTag = document.querySelector('base');
1814
+ var href = '';
1815
 
1816
+ if (baseTag && baseTag.getAttribute('href')) {
1817
+ href = stripHash(window.location.href);
1818
+ }
 
1819
 
1820
+ return href + '#' + encodePath(basename + createPath(location));
 
 
 
 
1821
  }
1822
 
1823
+ function push(path, state) {
1824
+ false ? undefined : void 0;
1825
+ var action = 'PUSH';
1826
+ var location = createLocation(path, undefined, undefined, history.location);
1827
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
1828
+ if (!ok) return;
1829
+ var path = createPath(location);
1830
+ var encodedPath = encodePath(basename + path);
1831
+ var hashChanged = getHashPath() !== encodedPath;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1832
 
1833
+ if (hashChanged) {
1834
+ // We cannot tell if a hashchange was caused by a PUSH, so we'd
1835
+ // rather setState here and ignore the hashchange. The caveat here
1836
+ // is that other hash histories in the page will consider it a POP.
1837
+ ignorePath = path;
1838
+ pushHashPath(encodedPath);
1839
+ var prevIndex = allPaths.lastIndexOf(createPath(history.location));
1840
+ var nextPaths = allPaths.slice(0, prevIndex + 1);
1841
+ nextPaths.push(path);
1842
+ allPaths = nextPaths;
1843
+ setState({
1844
+ action: action,
1845
+ location: location
1846
+ });
1847
+ } else {
1848
+ false ? undefined : void 0;
1849
+ setState();
1850
+ }
1851
+ });
1852
  }
1853
 
1854
+ function replace(path, state) {
1855
+ false ? undefined : void 0;
1856
+ var action = 'REPLACE';
1857
+ var location = createLocation(path, undefined, undefined, history.location);
1858
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
1859
+ if (!ok) return;
1860
+ var path = createPath(location);
1861
+ var encodedPath = encodePath(basename + path);
1862
+ var hashChanged = getHashPath() !== encodedPath;
 
 
 
 
 
 
 
 
 
1863
 
1864
+ if (hashChanged) {
1865
+ // We cannot tell if a hashchange was caused by a REPLACE, so we'd
1866
+ // rather setState here and ignore the hashchange. The caveat here
1867
+ // is that other hash histories in the page will consider it a POP.
1868
+ ignorePath = path;
1869
+ replaceHashPath(encodedPath);
1870
+ }
1871
 
1872
+ var prevIndex = allPaths.indexOf(createPath(history.location));
1873
+ if (prevIndex !== -1) allPaths[prevIndex] = path;
1874
+ setState({
1875
+ action: action,
1876
+ location: location
1877
+ });
1878
+ });
1879
  }
1880
 
1881
+ function go(n) {
1882
+ false ? undefined : void 0;
1883
+ globalHistory.go(n);
1884
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1885
 
1886
+ function goBack() {
1887
+ go(-1);
1888
+ }
1889
 
1890
+ function goForward() {
1891
+ go(1);
1892
+ }
1893
 
1894
+ var listenerCount = 0;
 
 
1895
 
1896
+ function checkDOMListeners(delta) {
1897
+ listenerCount += delta;
1898
 
1899
+ if (listenerCount === 1 && delta === 1) {
1900
+ window.addEventListener(HashChangeEvent$1, handleHashChange);
1901
+ } else if (listenerCount === 0) {
1902
+ window.removeEventListener(HashChangeEvent$1, handleHashChange);
1903
+ }
1904
+ }
1905
 
1906
+ var isBlocked = false;
 
 
 
 
1907
 
1908
+ function block(prompt) {
1909
+ if (prompt === void 0) {
1910
+ prompt = false;
1911
+ }
1912
 
1913
+ var unblock = transitionManager.setPrompt(prompt);
 
 
1914
 
1915
+ if (!isBlocked) {
1916
+ checkDOMListeners(1);
1917
+ isBlocked = true;
1918
+ }
1919
 
1920
+ return function () {
1921
+ if (isBlocked) {
1922
+ isBlocked = false;
1923
+ checkDOMListeners(-1);
1924
+ }
1925
 
1926
+ return unblock();
 
 
 
 
 
 
 
 
1927
  };
1928
+ }
 
 
 
 
 
 
 
1929
 
1930
+ function listen(listener) {
1931
+ var unlisten = transitionManager.appendListener(listener);
1932
+ checkDOMListeners(1);
1933
+ return function () {
1934
+ checkDOMListeners(-1);
1935
+ unlisten();
1936
+ };
 
 
1937
  }
 
1938
 
1939
+ var history = {
1940
+ length: globalHistory.length,
1941
+ action: 'POP',
1942
+ location: initialLocation,
1943
+ createHref: createHref,
1944
+ push: push,
1945
+ replace: replace,
1946
+ go: go,
1947
+ goBack: goBack,
1948
+ goForward: goForward,
1949
+ block: block,
1950
+ listen: listen
1951
+ };
1952
+ return history;
1953
+ }
1954
 
1955
+ function clamp(n, lowerBound, upperBound) {
1956
+ return Math.min(Math.max(n, lowerBound), upperBound);
1957
+ }
1958
+ /**
1959
+ * Creates a history object that stores locations in memory.
1960
+ */
1961
 
 
1962
 
1963
+ function createMemoryHistory(props) {
1964
+ if (props === void 0) {
1965
+ props = {};
1966
+ }
1967
 
1968
+ var _props = props,
1969
+ getUserConfirmation = _props.getUserConfirmation,
1970
+ _props$initialEntries = _props.initialEntries,
1971
+ initialEntries = _props$initialEntries === void 0 ? ['/'] : _props$initialEntries,
1972
+ _props$initialIndex = _props.initialIndex,
1973
+ initialIndex = _props$initialIndex === void 0 ? 0 : _props$initialIndex,
1974
+ _props$keyLength = _props.keyLength,
1975
+ keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength;
1976
+ var transitionManager = createTransitionManager();
1977
 
1978
+ function setState(nextState) {
1979
+ Object(esm_extends["a" /* default */])(history, nextState);
1980
 
1981
+ history.length = history.entries.length;
1982
+ transitionManager.notifyListeners(history.location, history.action);
1983
+ }
 
 
 
 
1984
 
1985
+ function createKey() {
1986
+ return Math.random().toString(36).substr(2, keyLength);
1987
+ }
1988
 
1989
+ var index = clamp(initialIndex, 0, initialEntries.length - 1);
1990
+ var entries = initialEntries.map(function (entry) {
1991
+ return typeof entry === 'string' ? createLocation(entry, undefined, createKey()) : createLocation(entry, undefined, entry.key || createKey());
1992
+ }); // Public interface
1993
 
1994
+ var createHref = createPath;
1995
 
1996
+ function push(path, state) {
1997
+ false ? undefined : void 0;
1998
+ var action = 'PUSH';
1999
+ var location = createLocation(path, state, createKey(), history.location);
2000
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
2001
+ if (!ok) return;
2002
+ var prevIndex = history.index;
2003
+ var nextIndex = prevIndex + 1;
2004
+ var nextEntries = history.entries.slice(0);
2005
 
2006
+ if (nextEntries.length > nextIndex) {
2007
+ nextEntries.splice(nextIndex, nextEntries.length - nextIndex, location);
2008
+ } else {
2009
+ nextEntries.push(location);
2010
  }
2011
 
2012
+ setState({
2013
+ action: action,
2014
+ location: location,
2015
+ index: nextIndex,
2016
+ entries: nextEntries
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2017
  });
2018
+ });
2019
+ }
 
 
 
 
 
 
 
 
 
 
2020
 
2021
+ function replace(path, state) {
2022
+ false ? undefined : void 0;
2023
+ var action = 'REPLACE';
2024
+ var location = createLocation(path, state, createKey(), history.location);
2025
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
2026
+ if (!ok) return;
2027
+ history.entries[history.index] = location;
2028
+ setState({
2029
+ action: action,
2030
+ location: location
2031
+ });
2032
+ });
2033
+ }
2034
 
2035
+ function go(n) {
2036
+ var nextIndex = clamp(history.index + n, 0, history.entries.length - 1);
2037
+ var action = 'POP';
2038
+ var location = history.entries[nextIndex];
2039
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
2040
+ if (ok) {
2041
+ setState({
2042
+ action: action,
2043
+ location: location,
2044
+ index: nextIndex
2045
+ });
2046
+ } else {
2047
+ // Mimic the behavior of DOM histories by
2048
+ // causing a render after a cancelled POP.
2049
+ setState();
2050
+ }
2051
+ });
2052
+ }
2053
 
2054
+ function goBack() {
2055
+ go(-1);
2056
+ }
2057
 
2058
+ function goForward() {
2059
+ go(1);
2060
+ }
 
2061
 
2062
+ function canGo(n) {
2063
+ var nextIndex = history.index + n;
2064
+ return nextIndex >= 0 && nextIndex < history.entries.length;
2065
+ }
2066
 
2067
+ function block(prompt) {
2068
+ if (prompt === void 0) {
2069
+ prompt = false;
2070
+ }
2071
 
2072
+ return transitionManager.setPrompt(prompt);
2073
+ }
2074
 
2075
+ function listen(listener) {
2076
+ return transitionManager.appendListener(listener);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2077
  }
2078
+
2079
+ var history = {
2080
+ length: entries.length,
2081
+ action: 'POP',
2082
+ location: entries[index],
2083
+ index: index,
2084
+ entries: entries,
2085
+ createHref: createHref,
2086
+ push: push,
2087
+ replace: replace,
2088
+ go: go,
2089
+ goBack: goBack,
2090
+ goForward: goForward,
2091
+ canGo: canGo,
2092
+ block: block,
2093
+ listen: listen
2094
  };
2095
+ return history;
2096
+ }
2097
 
2098
 
 
 
 
2099
 
 
2100
 
2101
  /***/ }),
 
 
 
 
2102
 
2103
+ /***/ 129:
2104
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
2105
 
2106
+ "use strict";
2107
+ /* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21);
2108
+ /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22);
2109
+ /* harmony import */ var _babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(13);
2110
+ /* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23);
2111
+ /* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(24);
2112
+ /* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(10);
2113
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(0);
2114
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__);
2115
+ /* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(96);
2116
+ /* harmony import */ var _wordpress_keycodes__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(54);
2117
+ /* harmony import */ var _wordpress_dom__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(73);
2118
 
 
 
 
2119
 
 
2120
 
2121
 
 
 
 
2122
 
 
2123
 
 
 
2124
 
 
 
 
 
 
 
 
2125
 
2126
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(this, result); }; }
2127
 
2128
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 
 
2129
 
2130
+ /**
2131
+ * WordPress dependencies
2132
+ */
2133
 
 
2134
 
2135
 
 
 
 
 
2136
 
2137
+ var withConstrainedTabbing = Object(_wordpress_compose__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])(function (WrappedComponent) {
2138
+ return /*#__PURE__*/function (_Component) {
2139
+ Object(_babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(_class, _Component);
2140
 
2141
+ var _super = _createSuper(_class);
 
 
 
 
2142
 
2143
+ function _class() {
2144
+ var _this;
2145
 
2146
+ Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(this, _class);
 
 
2147
 
2148
+ _this = _super.apply(this, arguments);
2149
+ _this.focusContainRef = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["createRef"])();
2150
+ _this.handleTabBehaviour = _this.handleTabBehaviour.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(_this));
2151
+ return _this;
2152
+ }
2153
 
2154
+ Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_class, [{
2155
+ key: "handleTabBehaviour",
2156
+ value: function handleTabBehaviour(event) {
2157
+ if (event.keyCode !== _wordpress_keycodes__WEBPACK_IMPORTED_MODULE_8__[/* TAB */ "e"]) {
2158
+ return;
2159
+ }
2160
 
2161
+ var tabbables = _wordpress_dom__WEBPACK_IMPORTED_MODULE_9__[/* focus */ "a"].tabbable.find(this.focusContainRef.current);
2162
 
2163
+ if (!tabbables.length) {
2164
+ return;
2165
+ }
2166
 
2167
+ var firstTabbable = tabbables[0];
2168
+ var lastTabbable = tabbables[tabbables.length - 1];
2169
+
2170
+ if (event.shiftKey && event.target === firstTabbable) {
2171
+ event.preventDefault();
2172
+ lastTabbable.focus();
2173
+ } else if (!event.shiftKey && event.target === lastTabbable) {
2174
+ event.preventDefault();
2175
+ firstTabbable.focus();
2176
+ /*
2177
+ * When pressing Tab and none of the tabbables has focus, the keydown
2178
+ * event happens on the wrapper div: move focus on the first tabbable.
2179
+ */
2180
+ } else if (!tabbables.includes(event.target)) {
2181
+ event.preventDefault();
2182
+ firstTabbable.focus();
2183
+ }
2184
+ }
2185
+ }, {
2186
+ key: "render",
2187
+ value: function render() {
2188
+ // Disable reason: this component is non-interactive, but must capture
2189
+ // events from the wrapped component to determine when the Tab key is used.
2190
+
2191
+ /* eslint-disable jsx-a11y/no-static-element-interactions */
2192
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["createElement"])("div", {
2193
+ onKeyDown: this.handleTabBehaviour,
2194
+ ref: this.focusContainRef,
2195
+ tabIndex: "-1"
2196
+ }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["createElement"])(WrappedComponent, this.props));
2197
+ /* eslint-enable jsx-a11y/no-static-element-interactions */
2198
+ }
2199
+ }]);
2200
 
2201
+ return _class;
2202
+ }(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["Component"]);
2203
+ }, 'withConstrainedTabbing');
2204
+ /* harmony default export */ __webpack_exports__["a"] = (withConstrainedTabbing);
2205
+ //# sourceMappingURL=index.js.map
2206
 
2207
  /***/ }),
 
 
2208
 
2209
+ /***/ 13:
2210
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
2211
 
2212
+ "use strict";
2213
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _assertThisInitialized; });
2214
+ function _assertThisInitialized(self) {
2215
+ if (self === void 0) {
2216
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
 
 
2217
  }
 
2218
 
2219
+ return self;
2220
+ }
2221
 
2222
  /***/ }),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2223
 
2224
+ /***/ 130:
 
2225
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2226
 
2227
  "use strict";
2228
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);
2229
+ /* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);
2230
+ /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(22);
2231
+ /* harmony import */ var _babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(13);
2232
+ /* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(23);
2233
+ /* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(24);
2234
+ /* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(10);
2235
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(0);
2236
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__);
2237
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(2);
2238
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_8__);
2239
+ /* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(96);
2240
 
 
 
 
2241
 
 
 
 
 
 
 
 
 
 
 
 
2242
 
 
 
2243
 
 
2244
 
 
2245
 
2246
 
 
 
 
2247
 
 
2248
 
2249
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(this, result); }; }
 
 
2250
 
2251
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 
 
 
 
 
 
2252
 
2253
+ /**
2254
+ * External dependencies
2255
+ */
2256
 
2257
+ /**
2258
+ * WordPress dependencies
2259
+ */
2260
 
 
 
 
2261
 
 
 
2262
 
2263
+ /**
2264
+ * Input types which are classified as button types, for use in considering
2265
+ * whether element is a (focus-normalized) button.
2266
+ *
2267
+ * @type {string[]}
2268
+ */
2269
+
2270
+ var INPUT_BUTTON_TYPES = ['button', 'submit'];
2271
+ /**
2272
+ * Returns true if the given element is a button element subject to focus
2273
+ * normalization, or false otherwise.
2274
+ *
2275
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus
2276
+ *
2277
+ * @param {Element} element Element to test.
2278
+ *
2279
+ * @return {boolean} Whether element is a button.
2280
+ */
2281
+
2282
+ function isFocusNormalizedButton(element) {
2283
+ switch (element.nodeName) {
2284
+ case 'A':
2285
+ case 'BUTTON':
2286
+ return true;
2287
+
2288
+ case 'INPUT':
2289
+ return Object(lodash__WEBPACK_IMPORTED_MODULE_8__["includes"])(INPUT_BUTTON_TYPES, element.type);
2290
  }
2291
 
2292
+ return false;
2293
  }
2294
 
2295
+ /* harmony default export */ __webpack_exports__["a"] = (Object(_wordpress_compose__WEBPACK_IMPORTED_MODULE_9__[/* default */ "a"])(function (WrappedComponent) {
2296
+ return /*#__PURE__*/function (_Component) {
2297
+ Object(_babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(_class, _Component);
2298
 
2299
+ var _super = _createSuper(_class);
 
 
2300
 
2301
+ function _class() {
2302
+ var _this;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2303
 
2304
+ Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(this, _class);
2305
 
2306
+ _this = _super.apply(this, arguments);
2307
+ _this.bindNode = _this.bindNode.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(_this));
2308
+ _this.cancelBlurCheck = _this.cancelBlurCheck.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(_this));
2309
+ _this.queueBlurCheck = _this.queueBlurCheck.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(_this));
2310
+ _this.normalizeButtonFocus = _this.normalizeButtonFocus.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(_this));
2311
+ return _this;
2312
+ }
2313
 
2314
+ Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(_class, [{
2315
+ key: "componentWillUnmount",
2316
+ value: function componentWillUnmount() {
2317
+ this.cancelBlurCheck();
2318
+ }
2319
+ }, {
2320
+ key: "bindNode",
2321
+ value: function bindNode(node) {
2322
+ if (node) {
2323
+ this.node = node;
2324
+ } else {
2325
+ delete this.node;
2326
+ this.cancelBlurCheck();
2327
+ }
2328
+ }
2329
+ }, {
2330
+ key: "queueBlurCheck",
2331
+ value: function queueBlurCheck(event) {
2332
+ var _this2 = this;
2333
 
2334
+ // React does not allow using an event reference asynchronously
2335
+ // due to recycling behavior, except when explicitly persisted.
2336
+ event.persist(); // Skip blur check if clicking button. See `normalizeButtonFocus`.
2337
 
2338
+ if (this.preventBlurCheck) {
2339
+ return;
2340
+ }
2341
 
2342
+ this.blurCheckTimeout = setTimeout(function () {
2343
+ // If document is not focused then focus should remain
2344
+ // inside the wrapped component and therefore we cancel
2345
+ // this blur event thereby leaving focus in place.
2346
+ // https://developer.mozilla.org/en-US/docs/Web/API/Document/hasFocus.
2347
+ if (!document.hasFocus()) {
2348
+ event.preventDefault();
2349
+ return;
2350
+ }
2351
 
2352
+ if ('function' === typeof _this2.node.handleFocusOutside) {
2353
+ _this2.node.handleFocusOutside(event);
2354
+ }
2355
+ }, 0);
2356
+ }
2357
+ }, {
2358
+ key: "cancelBlurCheck",
2359
+ value: function cancelBlurCheck() {
2360
+ clearTimeout(this.blurCheckTimeout);
2361
+ }
2362
+ /**
2363
+ * Handles a mousedown or mouseup event to respectively assign and
2364
+ * unassign a flag for preventing blur check on button elements. Some
2365
+ * browsers, namely Firefox and Safari, do not emit a focus event on
2366
+ * button elements when clicked, while others do. The logic here
2367
+ * intends to normalize this as treating click on buttons as focus.
2368
+ *
2369
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus
2370
+ *
2371
+ * @param {MouseEvent} event Event for mousedown or mouseup.
2372
+ */
 
2373
 
2374
+ }, {
2375
+ key: "normalizeButtonFocus",
2376
+ value: function normalizeButtonFocus(event) {
2377
+ var type = event.type,
2378
+ target = event.target;
2379
+ var isInteractionEnd = Object(lodash__WEBPACK_IMPORTED_MODULE_8__["includes"])(['mouseup', 'touchend'], type);
2380
+
2381
+ if (isInteractionEnd) {
2382
+ this.preventBlurCheck = false;
2383
+ } else if (isFocusNormalizedButton(target)) {
2384
+ this.preventBlurCheck = true;
2385
+ }
2386
+ }
2387
+ }, {
2388
+ key: "render",
2389
+ value: function render() {
2390
+ // Disable reason: See `normalizeButtonFocus` for browser-specific
2391
+ // focus event normalization.
2392
+
2393
+ /* eslint-disable jsx-a11y/no-static-element-interactions */
2394
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["createElement"])("div", {
2395
+ onFocus: this.cancelBlurCheck,
2396
+ onMouseDown: this.normalizeButtonFocus,
2397
+ onMouseUp: this.normalizeButtonFocus,
2398
+ onTouchStart: this.normalizeButtonFocus,
2399
+ onTouchEnd: this.normalizeButtonFocus,
2400
+ onBlur: this.queueBlurCheck
2401
+ }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["createElement"])(WrappedComponent, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
2402
+ ref: this.bindNode
2403
+ }, this.props)));
2404
+ /* eslint-enable jsx-a11y/no-static-element-interactions */
2405
+ }
2406
+ }]);
2407
 
2408
+ return _class;
2409
+ }(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["Component"]);
2410
+ }, 'withFocusOutside'));
2411
+ //# sourceMappingURL=index.js.map
 
 
 
 
2412
 
2413
+ /***/ }),
 
 
 
 
 
 
 
 
 
2414
 
2415
+ /***/ 131:
2416
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2417
 
2418
+ "use strict";
2419
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);
2420
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(12);
2421
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
2422
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__);
 
2423
 
 
 
 
 
2424
 
 
 
 
 
 
 
 
 
 
 
 
 
2425
 
 
2426
 
2427
+ /**
2428
+ * WordPress dependencies
2429
+ */
2430
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2431
 
2432
+ function stopPropagation(event) {
2433
+ event.stopPropagation();
2434
+ }
2435
 
2436
+ /* harmony default export */ __webpack_exports__["a"] = (Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["forwardRef"])(function (_ref, ref) {
2437
+ var children = _ref.children,
2438
+ props = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_ref, ["children"]);
2439
+
2440
+ // Disable reason: this stops certain events from propagating outside of the component.
2441
+ // - onMouseDown is disabled as this can cause interactions with other DOM elements
2442
+
2443
+ /* eslint-disable jsx-a11y/no-static-element-interactions */
2444
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["createElement"])("div", Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, props, {
2445
+ ref: ref,
2446
+ onMouseDown: stopPropagation
2447
+ }), children);
2448
+ /* eslint-enable jsx-a11y/no-static-element-interactions */
2449
+ }));
2450
+ //# sourceMappingURL=index.js.map
2451
 
2452
  /***/ }),
 
 
2453
 
2454
+ /***/ 132:
2455
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2456
 
2457
+ "use strict";
 
 
 
 
 
 
 
 
 
 
2458
 
2459
+ // UNUSED EXPORTS: Provider
 
 
2460
 
2461
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 3 modules
2462
+ var toConsumableArray = __webpack_require__(27);
2463
 
2464
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
2465
+ var classCallCheck = __webpack_require__(21);
2466
 
2467
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
2468
+ var createClass = __webpack_require__(22);
2469
 
2470
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules
2471
+ var inherits = __webpack_require__(23);
 
2472
 
2473
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
2474
+ var possibleConstructorReturn = __webpack_require__(24);
 
2475
 
2476
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
2477
+ var getPrototypeOf = __webpack_require__(10);
 
2478
 
2479
+ // EXTERNAL MODULE: external {"this":["wp","element"]}
2480
+ var external_this_wp_element_ = __webpack_require__(0);
 
 
 
 
2481
 
2482
+ // EXTERNAL MODULE: external "lodash"
2483
+ var external_lodash_ = __webpack_require__(2);
 
 
 
 
 
 
 
 
 
2484
 
2485
+ // EXTERNAL MODULE: ./node_modules/@wordpress/compose/build-module/utils/create-higher-order-component/index.js
2486
+ var create_higher_order_component = __webpack_require__(96);
2487
 
2488
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
2489
+ var assertThisInitialized = __webpack_require__(13);
 
2490
 
2491
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-return/context.js
2492
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2493
 
2494
 
 
 
 
 
2495
 
 
2496
 
 
 
 
 
2497
 
 
 
2498
 
 
 
 
 
 
 
 
2499
 
 
 
2500
 
2501
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
2502
 
2503
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 
 
2504
 
2505
+ /**
2506
+ * External dependencies
2507
+ */
 
 
 
2508
 
2509
+ /**
2510
+ * WordPress dependencies
2511
+ */
 
 
 
2512
 
 
 
2513
 
 
 
2514
 
2515
+ var _createContext = Object(external_this_wp_element_["createContext"])({
2516
+ focusHistory: []
2517
+ }),
2518
+ Provider = _createContext.Provider,
2519
+ Consumer = _createContext.Consumer;
2520
 
2521
+ Provider.displayName = 'FocusReturnProvider';
2522
+ Consumer.displayName = 'FocusReturnConsumer';
2523
+ /**
2524
+ * The maximum history length to capture for the focus stack. When exceeded,
2525
+ * items should be shifted from the stack for each consecutive push.
2526
+ *
2527
+ * @type {number}
2528
+ */
2529
 
2530
+ var MAX_STACK_LENGTH = 100;
 
2531
 
2532
+ var context_FocusReturnProvider = /*#__PURE__*/function (_Component) {
2533
+ Object(inherits["a" /* default */])(FocusReturnProvider, _Component);
 
 
 
 
 
 
2534
 
2535
+ var _super = _createSuper(FocusReturnProvider);
 
 
 
2536
 
2537
+ function FocusReturnProvider() {
2538
+ var _this;
2539
 
2540
+ Object(classCallCheck["a" /* default */])(this, FocusReturnProvider);
 
 
2541
 
2542
+ _this = _super.apply(this, arguments);
2543
+ _this.onFocus = _this.onFocus.bind(Object(assertThisInitialized["a" /* default */])(_this));
2544
+ _this.state = {
2545
+ focusHistory: []
2546
+ };
2547
+ return _this;
2548
+ }
2549
 
2550
+ Object(createClass["a" /* default */])(FocusReturnProvider, [{
2551
+ key: "onFocus",
2552
+ value: function onFocus(event) {
2553
+ var focusHistory = this.state.focusHistory; // Push the focused element to the history stack, keeping only unique
2554
+ // members but preferring the _last_ occurrence of any duplicates.
2555
+ // Lodash's `uniq` behavior favors the first occurrence, so the array
2556
+ // is temporarily reversed prior to it being called upon. Uniqueness
2557
+ // helps avoid situations where, such as in a constrained tabbing area,
2558
+ // the user changes focus enough within a transient element that the
2559
+ // stack may otherwise only consist of members pending destruction, at
2560
+ // which point focus might have been lost.
2561
 
2562
+ var nextFocusHistory = Object(external_lodash_["uniq"])([].concat(Object(toConsumableArray["a" /* default */])(focusHistory), [event.target]).slice(-1 * MAX_STACK_LENGTH).reverse()).reverse();
2563
+ this.setState({
2564
+ focusHistory: nextFocusHistory
2565
+ });
2566
+ }
2567
+ }, {
2568
+ key: "render",
2569
+ value: function render() {
2570
+ var _this$props = this.props,
2571
+ children = _this$props.children,
2572
+ className = _this$props.className;
2573
+ return Object(external_this_wp_element_["createElement"])(Provider, {
2574
+ value: this.state
2575
+ }, Object(external_this_wp_element_["createElement"])("div", {
2576
+ onFocus: this.onFocus,
2577
+ className: className
2578
+ }, children));
2579
+ }
2580
+ }]);
2581
 
2582
+ return FocusReturnProvider;
2583
+ }(external_this_wp_element_["Component"]);
 
 
2584
 
2585
+ /* harmony default export */ var with_focus_return_context = (context_FocusReturnProvider);
2586
 
2587
+ //# sourceMappingURL=context.js.map
2588
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-return/index.js
2589
 
 
 
 
 
 
 
 
2590
 
2591
 
 
 
 
2592
 
 
2593
 
 
2594
 
 
 
 
 
 
2595
 
2596
 
2597
+ function with_focus_return_createSuper(Derived) { var hasNativeReflectConstruct = with_focus_return_isNativeReflectConstruct(); return function _createSuperInternal() { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
 
 
2598
 
2599
+ function with_focus_return_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
2600
 
2601
+ /**
2602
+ * External dependencies
2603
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2604
 
2605
+ /**
2606
+ * WordPress dependencies
2607
+ */
 
2608
 
 
 
 
 
2609
 
2610
 
2611
+ /**
2612
+ * Internal dependencies
2613
+ */
2614
 
 
 
2615
 
2616
+ /**
2617
+ * Returns true if the given object is component-like. An object is component-
2618
+ * like if it is an instance of wp.element.Component, or is a function.
2619
+ *
2620
+ * @param {*} object Object to test.
2621
+ *
2622
+ * @return {boolean} Whether object is component-like.
2623
+ */
2624
 
2625
+ function isComponentLike(object) {
2626
+ return object instanceof external_this_wp_element_["Component"] || typeof object === 'function';
2627
  }
2628
+ /**
2629
+ * Higher Order Component used to be used to wrap disposable elements like
2630
+ * sidebars, modals, dropdowns. When mounting the wrapped component, we track a
2631
+ * reference to the current active element so we know where to restore focus
2632
+ * when the component is unmounted.
2633
+ *
2634
+ * @param {(WPComponent|Object)} options The component to be enhanced with
2635
+ * focus return behavior, or an object
2636
+ * describing the component and the
2637
+ * focus return characteristics.
2638
+ *
2639
+ * @return {WPComponent} Component with the focus restauration behaviour.
2640
+ */
2641
 
 
2642
 
2643
+ function withFocusReturn(options) {
2644
+ // Normalize as overloaded form `withFocusReturn( options )( Component )`
2645
+ // or as `withFocusReturn( Component )`.
2646
+ if (isComponentLike(options)) {
2647
+ var WrappedComponent = options;
2648
+ return withFocusReturn({})(WrappedComponent);
2649
+ }
2650
 
2651
+ var _options$onFocusRetur = options.onFocusReturn,
2652
+ onFocusReturn = _options$onFocusRetur === void 0 ? external_lodash_["stubTrue"] : _options$onFocusRetur;
2653
+ return function (WrappedComponent) {
2654
+ var FocusReturn = /*#__PURE__*/function (_Component) {
2655
+ Object(inherits["a" /* default */])(FocusReturn, _Component);
 
 
 
 
 
 
 
 
 
 
 
 
 
2656
 
2657
+ var _super = with_focus_return_createSuper(FocusReturn);
 
 
 
 
 
 
 
2658
 
2659
+ function FocusReturn() {
2660
+ var _this;
2661
 
2662
+ Object(classCallCheck["a" /* default */])(this, FocusReturn);
 
 
2663
 
2664
+ _this = _super.apply(this, arguments);
2665
+ _this.ownFocusedElements = new Set();
2666
+ _this.activeElementOnMount = document.activeElement;
2667
 
2668
+ _this.setIsFocusedFalse = function () {
2669
+ return _this.isFocused = false;
2670
+ };
2671
 
2672
+ _this.setIsFocusedTrue = function (event) {
2673
+ _this.ownFocusedElements.add(event.target);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2674
 
2675
+ _this.isFocused = true;
2676
+ };
2677
 
2678
+ return _this;
2679
+ }
 
2680
 
2681
+ Object(createClass["a" /* default */])(FocusReturn, [{
2682
+ key: "componentWillUnmount",
2683
+ value: function componentWillUnmount() {
2684
+ var activeElementOnMount = this.activeElementOnMount,
2685
+ isFocused = this.isFocused,
2686
+ ownFocusedElements = this.ownFocusedElements;
2687
 
2688
+ if (!isFocused) {
2689
+ return;
2690
+ } // Defer to the component's own explicit focus return behavior,
2691
+ // if specified. The function should return `false` to prevent
2692
+ // the default behavior otherwise occurring here. This allows
2693
+ // for support that the `onFocusReturn` decides to allow the
2694
+ // default behavior to occur under some conditions.
2695
 
 
 
 
 
 
 
2696
 
2697
+ if (onFocusReturn() === false) {
2698
+ return;
2699
+ }
2700
 
2701
+ var stack = [].concat(Object(toConsumableArray["a" /* default */])(external_lodash_["without"].apply(void 0, [this.props.focus.focusHistory].concat(Object(toConsumableArray["a" /* default */])(ownFocusedElements)))), [activeElementOnMount]);
2702
+ var candidate;
 
 
 
 
 
 
 
2703
 
2704
+ while (candidate = stack.pop()) {
2705
+ if (document.body.contains(candidate)) {
2706
+ candidate.focus();
2707
+ return;
2708
+ }
2709
+ }
2710
+ }
2711
+ }, {
2712
+ key: "render",
2713
+ value: function render() {
2714
+ return Object(external_this_wp_element_["createElement"])("div", {
2715
+ onFocus: this.setIsFocusedTrue,
2716
+ onBlur: this.setIsFocusedFalse
2717
+ }, Object(external_this_wp_element_["createElement"])(WrappedComponent, this.props.childProps));
2718
+ }
2719
+ }]);
2720
 
2721
+ return FocusReturn;
2722
+ }(external_this_wp_element_["Component"]);
 
 
2723
 
2724
+ return function (props) {
2725
+ return Object(external_this_wp_element_["createElement"])(Consumer, null, function (context) {
2726
+ return Object(external_this_wp_element_["createElement"])(FocusReturn, {
2727
+ childProps: props,
2728
+ focus: context
2729
+ });
2730
+ });
2731
+ };
2732
+ };
 
 
 
 
2733
  }
2734
 
2735
+ /* harmony default export */ var with_focus_return = __webpack_exports__["a"] = (Object(create_higher_order_component["a" /* default */])(withFocusReturn, 'withFocusReturn'));
2736
+
2737
+ //# sourceMappingURL=index.js.map
2738
 
2739
  /***/ }),
2740
+
2741
+ /***/ 133:
2742
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2743
 
2744
  "use strict";
2745
+ /* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8);
2746
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7);
2747
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12);
2748
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(0);
2749
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__);
2750
+ /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(88);
2751
+ /* harmony import */ var _dashicon__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(126);
2752
 
 
 
2753
 
 
 
 
 
 
2754
 
2755
 
2756
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
 
 
2757
 
2758
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
2759
 
2760
+ /**
2761
+ * WordPress dependencies
2762
+ */
 
 
 
 
 
2763
 
 
2764
 
2765
+ /**
2766
+ * Internal dependencies
2767
+ */
2768
 
 
2769
 
 
 
 
2770
 
2771
+ function Icon(_ref) {
2772
+ var _ref$icon = _ref.icon,
2773
+ icon = _ref$icon === void 0 ? null : _ref$icon,
2774
+ size = _ref.size,
2775
+ additionalProps = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(_ref, ["icon", "size"]);
 
 
2776
 
2777
+ // Dashicons should be 20x20 by default.
2778
+ var dashiconSize = size || 20;
2779
+
2780
+ if ('string' === typeof icon) {
2781
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["createElement"])(_dashicon__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])({
2782
+ icon: icon,
2783
+ size: dashiconSize
2784
+ }, additionalProps));
2785
  }
2786
 
2787
+ if (icon && _dashicon__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"] === icon.type) {
2788
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["cloneElement"])(icon, _objectSpread({
2789
+ size: dashiconSize
2790
+ }, additionalProps));
2791
+ } // Icons should be 24x24 by default.
2792
 
 
 
 
2793
 
2794
+ var iconSize = size || 24;
 
 
 
 
 
 
 
2795
 
2796
+ if ('function' === typeof icon) {
2797
+ if (icon.prototype instanceof _wordpress_element__WEBPACK_IMPORTED_MODULE_3__["Component"]) {
2798
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["createElement"])(icon, _objectSpread({
2799
+ size: iconSize
2800
+ }, additionalProps));
2801
+ }
2802
+
2803
+ return icon(_objectSpread({
2804
+ size: iconSize
2805
+ }, additionalProps));
2806
  }
 
2807
 
2808
+ if (icon && (icon.type === 'svg' || icon.type === _wordpress_primitives__WEBPACK_IMPORTED_MODULE_4__[/* SVG */ "c"])) {
2809
+ var appliedProps = _objectSpread(_objectSpread({
2810
+ width: iconSize,
2811
+ height: iconSize
2812
+ }, icon.props), additionalProps);
 
2813
 
2814
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_4__[/* SVG */ "c"], appliedProps);
2815
+ }
 
2816
 
2817
+ if (Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["isValidElement"])(icon)) {
2818
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["cloneElement"])(icon, _objectSpread({
2819
+ size: iconSize
2820
+ }, additionalProps));
2821
+ }
2822
 
2823
+ return icon;
 
 
2824
  }
2825
 
2826
+ /* harmony default export */ __webpack_exports__["a"] = (Icon);
2827
+ //# sourceMappingURL=index.js.map
2828
 
2829
  /***/ }),
2830
+
2831
+ /***/ 134:
2832
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2833
 
2834
  "use strict";
2835
+ /* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8);
2836
+ /* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(26);
2837
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4);
2838
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
2839
 
 
 
 
 
 
 
 
 
2840
 
 
 
2841
 
2842
+ /**
2843
+ * External dependencies
2844
+ */
2845
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2846
 
2847
+ function Animate(_ref) {
2848
+ var type = _ref.type,
2849
+ _ref$options = _ref.options,
2850
+ options = _ref$options === void 0 ? {} : _ref$options,
2851
+ children = _ref.children;
2852
 
2853
+ if (type === 'appear') {
2854
+ var _classnames;
2855
 
2856
+ var _options$origin = options.origin,
2857
+ origin = _options$origin === void 0 ? 'top' : _options$origin;
 
 
 
 
 
 
 
2858
 
2859
+ var _origin$split = origin.split(' '),
2860
+ _origin$split2 = Object(_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_origin$split, 2),
2861
+ yAxis = _origin$split2[0],
2862
+ _origin$split2$ = _origin$split2[1],
2863
+ xAxis = _origin$split2$ === void 0 ? 'center' : _origin$split2$;
2864
 
2865
+ return children({
2866
+ className: classnames__WEBPACK_IMPORTED_MODULE_2___default()('components-animate__appear', (_classnames = {}, Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(_classnames, 'is-from-' + xAxis, xAxis !== 'center'), Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(_classnames, 'is-from-' + yAxis, yAxis !== 'middle'), _classnames))
2867
+ });
2868
+ }
2869
 
2870
+ if (type === 'slide-in') {
2871
+ var _options$origin2 = options.origin,
2872
+ _origin = _options$origin2 === void 0 ? 'left' : _options$origin2;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2873
 
2874
+ return children({
2875
+ className: classnames__WEBPACK_IMPORTED_MODULE_2___default()('components-animate__slide-in', 'is-from-' + _origin)
2876
+ });
2877
+ }
2878
 
2879
+ if (type === 'loading') {
2880
+ return children({
2881
+ className: classnames__WEBPACK_IMPORTED_MODULE_2___default()('components-animate__loading')
2882
+ });
2883
+ }
2884
 
2885
+ return children({});
2886
+ }
 
 
 
2887
 
2888
+ /* harmony default export */ __webpack_exports__["a"] = (Animate);
2889
+ //# sourceMappingURL=index.js.map
2890
 
2891
  /***/ }),
 
 
 
 
2892
 
2893
+ /***/ 135:
2894
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2895
 
2896
+ "use strict";
2897
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
2898
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
2899
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
2900
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);
 
 
 
 
 
 
 
 
 
2901
 
 
 
 
 
 
 
2902
 
2903
+ /**
2904
+ * External dependencies
2905
+ */
2906
 
 
 
 
 
2907
 
2908
+ function Shortcut(_ref) {
2909
+ var shortcut = _ref.shortcut,
2910
+ className = _ref.className;
2911
 
2912
+ if (!shortcut) {
2913
+ return null;
2914
+ }
 
2915
 
2916
+ var displayText;
2917
+ var ariaLabel;
2918
 
2919
+ if (Object(lodash__WEBPACK_IMPORTED_MODULE_1__["isString"])(shortcut)) {
2920
+ displayText = shortcut;
2921
+ }
2922
 
2923
+ if (Object(lodash__WEBPACK_IMPORTED_MODULE_1__["isObject"])(shortcut)) {
2924
+ displayText = shortcut.display;
2925
+ ariaLabel = shortcut.ariaLabel;
 
 
2926
  }
 
2927
 
2928
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("span", {
2929
+ className: className,
2930
+ "aria-label": ariaLabel
2931
+ }, displayText);
2932
+ }
2933
+
2934
+ /* harmony default export */ __webpack_exports__["a"] = (Shortcut);
2935
+ //# sourceMappingURL=index.js.map
2936
 
2937
  /***/ }),
2938
+
2939
+ /***/ 136:
2940
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2941
 
2942
  "use strict";
2943
 
2944
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
2945
+ var esm_extends = __webpack_require__(7);
 
 
2946
 
2947
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
2948
+ var slicedToArray = __webpack_require__(26);
 
 
 
 
 
 
2949
 
2950
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
2951
+ var objectWithoutProperties = __webpack_require__(12);
2952
 
2953
+ // EXTERNAL MODULE: external {"this":["wp","element"]}
2954
+ var external_this_wp_element_ = __webpack_require__(0);
 
2955
 
2956
+ // EXTERNAL MODULE: ./node_modules/classnames/index.js
2957
+ var classnames = __webpack_require__(4);
2958
+ var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
2959
 
2960
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/node_modules/@wordpress/dom/build-module/dom.js
2961
+ var dom = __webpack_require__(156);
 
2962
 
2963
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/node_modules/@wordpress/dom/build-module/index.js + 2 modules
2964
+ var build_module = __webpack_require__(73);
2965
 
2966
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/node_modules/@wordpress/keycodes/build-module/index.js + 1 modules
2967
+ var keycodes_build_module = __webpack_require__(54);
 
 
2968
 
2969
+ // EXTERNAL MODULE: ./node_modules/@wordpress/deprecated/build-module/index.js
2970
+ var deprecated_build_module = __webpack_require__(57);
 
2971
 
2972
+ // EXTERNAL MODULE: ./node_modules/@wordpress/compose/build-module/hooks/use-viewport-match/index.js
2973
+ var use_viewport_match = __webpack_require__(306);
 
2974
 
2975
+ // EXTERNAL MODULE: ./node_modules/react-resize-aware/dist/index.js
2976
+ var dist = __webpack_require__(125);
2977
+ var dist_default = /*#__PURE__*/__webpack_require__.n(dist);
 
 
 
 
 
 
 
 
2978
 
2979
+ // CONCATENATED MODULE: ./node_modules/@wordpress/compose/build-module/hooks/use-resize-observer/index.js
2980
+ /**
2981
+ * External dependencies
2982
+ */
2983
 
2984
+ /**
2985
+ * Hook which allows to listen the resize event of any target element when it changes sizes.
2986
+ * _Note: `useResizeObserver` will report `null` until after first render_
2987
+ *
2988
+ * @return {Array} An array of {Element} `resizeListener` and {?Object} `sizes` with properties `width` and `height`
2989
+ *
2990
+ * @example
2991
+ *
2992
+ * ```js
2993
+ * const App = () => {
2994
+ * const [ resizeListener, sizes ] = useResizeObserver();
2995
+ *
2996
+ * return (
2997
+ * <div>
2998
+ * { resizeListener }
2999
+ * Your content here
3000
+ * </div>
3001
+ * );
3002
+ * };
3003
+ * ```
3004
+ *
3005
+ */
3006
 
3007
+ /* harmony default export */ var use_resize_observer = (dist_default.a);
3008
+ //# sourceMappingURL=index.js.map
3009
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/node_modules/@wordpress/icons/build-module/library/close.js
3010
+ var library_close = __webpack_require__(451);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3011
 
3012
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
3013
+ var defineProperty = __webpack_require__(8);
3014
 
3015
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/popover/utils.js
 
 
3016
 
 
 
 
3017
 
 
3018
 
3019
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
 
 
 
 
 
3020
 
3021
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
3022
 
3023
+ /**
3024
+ * WordPress dependencies
3025
+ */
3026
 
3027
+ /**
3028
+ * Module constants
3029
+ */
3030
 
3031
+ var HEIGHT_OFFSET = 10; // used by the arrow and a bit of empty space
 
 
3032
 
3033
+ /**
3034
+ * Utility used to compute the popover position over the xAxis
3035
+ *
3036
+ * @param {Object} anchorRect Anchor Rect.
3037
+ * @param {Object} contentSize Content Size.
3038
+ * @param {string} xAxis Desired xAxis.
3039
+ * @param {string} corner Desired corner.
3040
+ * @param {boolean} sticky Whether or not to stick the popover to the
3041
+ * scroll container edge when part of the anchor
3042
+ * leaves view.
3043
+ * @param {string} chosenYAxis yAxis to be used.
3044
+ * @param {Element} boundaryElement Boundary element.
3045
+ *
3046
+ * @return {Object} Popover xAxis position and constraints.
3047
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3048
 
3049
+ function computePopoverXAxisPosition(anchorRect, contentSize, xAxis, corner, sticky, chosenYAxis, boundaryElement) {
3050
+ var width = contentSize.width;
3051
+ var isRTL = document.documentElement.dir === 'rtl'; // Correct xAxis for RTL support
3052
 
3053
+ if (xAxis === 'left' && isRTL) {
3054
+ xAxis = 'right';
3055
+ } else if (xAxis === 'right' && isRTL) {
3056
+ xAxis = 'left';
3057
+ }
3058
 
3059
+ if (corner === 'left' && isRTL) {
3060
+ corner = 'right';
3061
+ } else if (corner === 'right' && isRTL) {
3062
+ corner = 'left';
3063
+ } // x axis alignment choices
3064
 
 
3065
 
3066
+ var anchorMidPoint = Math.round(anchorRect.left + anchorRect.width / 2);
3067
+ var centerAlignment = {
3068
+ popoverLeft: anchorMidPoint,
3069
+ contentWidth: (anchorMidPoint - width / 2 > 0 ? width / 2 : anchorMidPoint) + (anchorMidPoint + width / 2 > window.innerWidth ? window.innerWidth - anchorMidPoint : width / 2)
3070
+ };
3071
+ var leftAlignmentX = anchorRect.left;
3072
 
3073
+ if (corner === 'right') {
3074
+ leftAlignmentX = anchorRect.right;
3075
+ } else if (chosenYAxis !== 'middle') {
3076
+ leftAlignmentX = anchorMidPoint;
 
3077
  }
 
 
 
 
 
 
 
 
3078
 
3079
+ var rightAlignmentX = anchorRect.right;
3080
 
3081
+ if (corner === 'left') {
3082
+ rightAlignmentX = anchorRect.left;
3083
+ } else if (chosenYAxis !== 'middle') {
3084
+ rightAlignmentX = anchorMidPoint;
3085
+ }
3086
 
3087
+ var leftAlignment = {
3088
+ popoverLeft: leftAlignmentX,
3089
+ contentWidth: leftAlignmentX - width > 0 ? width : leftAlignmentX
3090
+ };
3091
+ var rightAlignment = {
3092
+ popoverLeft: rightAlignmentX,
3093
+ contentWidth: rightAlignmentX + width > window.innerWidth ? window.innerWidth - rightAlignmentX : width
3094
+ }; // Choosing the x axis
3095
+
3096
+ var chosenXAxis = xAxis;
3097
+ var contentWidth = null;
3098
+
3099
+ if (!sticky) {
3100
+ if (xAxis === 'center' && centerAlignment.contentWidth === width) {
3101
+ chosenXAxis = 'center';
3102
+ } else if (xAxis === 'left' && leftAlignment.contentWidth === width) {
3103
+ chosenXAxis = 'left';
3104
+ } else if (xAxis === 'right' && rightAlignment.contentWidth === width) {
3105
+ chosenXAxis = 'right';
3106
+ } else {
3107
+ chosenXAxis = leftAlignment.contentWidth > rightAlignment.contentWidth ? 'left' : 'right';
3108
+ var chosenWidth = chosenXAxis === 'left' ? leftAlignment.contentWidth : rightAlignment.contentWidth;
3109
+ contentWidth = chosenWidth !== width ? chosenWidth : null;
3110
+ }
3111
+ }
3112
 
3113
+ var popoverLeft;
 
 
 
 
 
3114
 
3115
+ if (chosenXAxis === 'center') {
3116
+ popoverLeft = centerAlignment.popoverLeft;
3117
+ } else if (chosenXAxis === 'left') {
3118
+ popoverLeft = leftAlignment.popoverLeft;
3119
+ } else {
3120
+ popoverLeft = rightAlignment.popoverLeft;
3121
+ }
3122
 
3123
+ if (boundaryElement) {
3124
+ var boundaryRect = boundaryElement.getBoundingClientRect();
3125
+ popoverLeft = Math.min(popoverLeft, boundaryRect.right - width);
3126
+ }
3127
 
3128
+ return {
3129
+ xAxis: chosenXAxis,
3130
+ popoverLeft: popoverLeft,
3131
+ contentWidth: contentWidth
3132
+ };
3133
+ }
3134
+ /**
3135
+ * Utility used to compute the popover position over the yAxis
3136
+ *
3137
+ * @param {Object} anchorRect Anchor Rect.
3138
+ * @param {Object} contentSize Content Size.
3139
+ * @param {string} yAxis Desired yAxis.
3140
+ * @param {string} corner Desired corner.
3141
+ * @param {boolean} sticky Whether or not to stick the popover to the
3142
+ * scroll container edge when part of the
3143
+ * anchor leaves view.
3144
+ * @param {Element} anchorRef The anchor element.
3145
+ * @param {Element} relativeOffsetTop If applicable, top offset of the relative
3146
+ * positioned parent container.
3147
+ *
3148
+ * @return {Object} Popover xAxis position and constraints.
3149
+ */
3150
 
3151
+ function computePopoverYAxisPosition(anchorRect, contentSize, yAxis, corner, sticky, anchorRef, relativeOffsetTop) {
3152
+ var height = contentSize.height;
3153
 
3154
+ if (sticky) {
3155
+ var scrollContainerEl = Object(dom["b" /* getScrollContainer */])(anchorRef) || document.body;
3156
+ var scrollRect = scrollContainerEl.getBoundingClientRect();
3157
+ var stickyPosition = scrollRect.top + height - relativeOffsetTop;
3158
 
3159
+ if (anchorRect.top <= stickyPosition) {
3160
+ return {
3161
+ yAxis: yAxis,
3162
+ popoverTop: Math.min(anchorRect.bottom, stickyPosition)
3163
+ };
3164
+ }
3165
+ } // y axis alignment choices
3166
 
3167
 
3168
+ var anchorMidPoint = anchorRect.top + anchorRect.height / 2;
 
 
3169
 
3170
+ if (corner === 'bottom') {
3171
+ anchorMidPoint = anchorRect.bottom;
3172
+ } else if (corner === 'top') {
3173
+ anchorMidPoint = anchorRect.top;
3174
+ }
3175
 
3176
+ var middleAlignment = {
3177
+ popoverTop: anchorMidPoint,
3178
+ contentHeight: (anchorMidPoint - height / 2 > 0 ? height / 2 : anchorMidPoint) + (anchorMidPoint + height / 2 > window.innerHeight ? window.innerHeight - anchorMidPoint : height / 2)
3179
+ };
3180
+ var topAlignment = {
3181
+ popoverTop: anchorRect.top,
3182
+ contentHeight: anchorRect.top - HEIGHT_OFFSET - height > 0 ? height : anchorRect.top - HEIGHT_OFFSET
3183
+ };
3184
+ var bottomAlignment = {
3185
+ popoverTop: anchorRect.bottom,
3186
+ contentHeight: anchorRect.bottom + HEIGHT_OFFSET + height > window.innerHeight ? window.innerHeight - HEIGHT_OFFSET - anchorRect.bottom : height
3187
+ }; // Choosing the y axis
3188
+
3189
+ var chosenYAxis = yAxis;
3190
+ var contentHeight = null;
3191
+
3192
+ if (!sticky) {
3193
+ if (yAxis === 'middle' && middleAlignment.contentHeight === height) {
3194
+ chosenYAxis = 'middle';
3195
+ } else if (yAxis === 'top' && topAlignment.contentHeight === height) {
3196
+ chosenYAxis = 'top';
3197
+ } else if (yAxis === 'bottom' && bottomAlignment.contentHeight === height) {
3198
+ chosenYAxis = 'bottom';
3199
+ } else {
3200
+ chosenYAxis = topAlignment.contentHeight > bottomAlignment.contentHeight ? 'top' : 'bottom';
3201
+ var chosenHeight = chosenYAxis === 'top' ? topAlignment.contentHeight : bottomAlignment.contentHeight;
3202
+ contentHeight = chosenHeight !== height ? chosenHeight : null;
3203
+ }
3204
+ }
3205
 
3206
+ var popoverTop;
 
 
 
 
 
 
3207
 
3208
+ if (chosenYAxis === 'middle') {
3209
+ popoverTop = middleAlignment.popoverTop;
3210
+ } else if (chosenYAxis === 'top') {
3211
+ popoverTop = topAlignment.popoverTop;
3212
+ } else {
3213
+ popoverTop = bottomAlignment.popoverTop;
3214
+ }
3215
 
3216
+ return {
3217
+ yAxis: chosenYAxis,
3218
+ popoverTop: popoverTop,
3219
+ contentHeight: contentHeight
3220
+ };
3221
+ }
3222
+ /**
3223
+ * Utility used to compute the popover position and the content max width/height
3224
+ * for a popover given its anchor rect and its content size.
3225
+ *
3226
+ * @param {Object} anchorRect Anchor Rect.
3227
+ * @param {Object} contentSize Content Size.
3228
+ * @param {string} position Position.
3229
+ * @param {boolean} sticky Whether or not to stick the popover to the
3230
+ * scroll container edge when part of the
3231
+ * anchor leaves view.
3232
+ * @param {Element} anchorRef The anchor element.
3233
+ * @param {number} relativeOffsetTop If applicable, top offset of the relative
3234
+ * positioned parent container.
3235
+ * @param {Element} boundaryElement Boundary element.
3236
+ *
3237
+ * @return {Object} Popover position and constraints.
3238
+ */
3239
 
3240
+ function computePopoverPosition(anchorRect, contentSize) {
3241
+ var position = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'top';
3242
+ var sticky = arguments.length > 3 ? arguments[3] : undefined;
3243
+ var anchorRef = arguments.length > 4 ? arguments[4] : undefined;
3244
+ var relativeOffsetTop = arguments.length > 5 ? arguments[5] : undefined;
3245
+ var boundaryElement = arguments.length > 6 ? arguments[6] : undefined;
3246
+
3247
+ var _position$split = position.split(' '),
3248
+ _position$split2 = Object(slicedToArray["a" /* default */])(_position$split, 3),
3249
+ yAxis = _position$split2[0],
3250
+ _position$split2$ = _position$split2[1],
3251
+ xAxis = _position$split2$ === void 0 ? 'center' : _position$split2$,
3252
+ corner = _position$split2[2];
3253
+
3254
+ var yAxisPosition = computePopoverYAxisPosition(anchorRect, contentSize, yAxis, corner, sticky, anchorRef, relativeOffsetTop);
3255
+ var xAxisPosition = computePopoverXAxisPosition(anchorRect, contentSize, xAxis, corner, sticky, yAxisPosition.yAxis, boundaryElement);
3256
+ return _objectSpread(_objectSpread({}, xAxisPosition), yAxisPosition);
3257
+ }
3258
+ //# sourceMappingURL=utils.js.map
3259
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-return/index.js + 1 modules
3260
+ var with_focus_return = __webpack_require__(132);
3261
 
3262
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-constrained-tabbing/index.js
3263
+ var with_constrained_tabbing = __webpack_require__(129);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3264
 
3265
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
3266
+ var classCallCheck = __webpack_require__(21);
3267
 
3268
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
3269
+ var createClass = __webpack_require__(22);
 
3270
 
3271
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules
3272
+ var inherits = __webpack_require__(23);
3273
 
3274
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
3275
+ var possibleConstructorReturn = __webpack_require__(24);
 
 
3276
 
3277
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
3278
+ var getPrototypeOf = __webpack_require__(10);
3279
 
3280
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-outside/index.js
3281
+ var with_focus_outside = __webpack_require__(130);
 
3282
 
3283
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/popover/detect-outside.js
3284
 
 
 
 
 
3285
 
 
3286
 
 
 
 
3287
 
 
 
 
 
 
 
 
3288
 
3289
 
3290
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
 
 
3291
 
3292
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 
 
 
 
 
3293
 
3294
+ /**
3295
+ * WordPress dependencies
3296
+ */
 
3297
 
3298
+ /**
3299
+ * Internal dependencies
3300
+ */
 
 
 
 
 
 
 
 
 
3301
 
 
 
 
 
 
 
3302
 
3303
+
3304
+ var detect_outside_PopoverDetectOutside = /*#__PURE__*/function (_Component) {
3305
+ Object(inherits["a" /* default */])(PopoverDetectOutside, _Component);
3306
+
3307
+ var _super = _createSuper(PopoverDetectOutside);
3308
+
3309
+ function PopoverDetectOutside() {
3310
+ Object(classCallCheck["a" /* default */])(this, PopoverDetectOutside);
3311
+
3312
+ return _super.apply(this, arguments);
 
 
 
3313
  }
3314
 
3315
+ Object(createClass["a" /* default */])(PopoverDetectOutside, [{
3316
+ key: "handleFocusOutside",
3317
+ value: function handleFocusOutside(event) {
3318
+ this.props.onFocusOutside(event);
 
 
 
3319
  }
3320
+ }, {
3321
+ key: "render",
3322
+ value: function render() {
3323
+ return this.props.children;
3324
+ }
3325
+ }]);
3326
 
3327
+ return PopoverDetectOutside;
3328
+ }(external_this_wp_element_["Component"]);
3329
 
3330
+ /* harmony default export */ var detect_outside = (Object(with_focus_outside["a" /* default */])(detect_outside_PopoverDetectOutside));
3331
+ //# sourceMappingURL=detect-outside.js.map
3332
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/button/index.js
3333
+ var build_module_button = __webpack_require__(72);
3334
 
3335
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/scroll-lock/index.js
 
 
3336
 
 
3337
 
 
 
 
 
 
3338
 
3339
 
 
 
 
3340
 
 
 
3341
 
3342
+ function scroll_lock_createSuper(Derived) { var hasNativeReflectConstruct = scroll_lock_isNativeReflectConstruct(); return function _createSuperInternal() { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
 
 
 
 
 
 
 
 
 
 
 
 
 
3343
 
3344
+ function scroll_lock_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
3345
 
3346
+ /**
3347
+ * WordPress dependencies
3348
+ */
3349
 
3350
+ /**
3351
+ * Creates a ScrollLock component bound to the specified document.
3352
+ *
3353
+ * This function creates a ScrollLock component for the specified document
3354
+ * and is exposed so we can create an isolated component for unit testing.
3355
+ *
3356
+ * @param {Object} args Keyword args.
3357
+ * @param {HTMLDocument} args.htmlDocument The document to lock the scroll for.
3358
+ * @param {string} args.className The name of the class used to lock scrolling.
3359
+ * @return {WPComponent} The bound ScrollLock component.
3360
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3361
 
3362
+ function createScrollLockComponent() {
3363
+ var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
3364
+ _ref$htmlDocument = _ref.htmlDocument,
3365
+ htmlDocument = _ref$htmlDocument === void 0 ? document : _ref$htmlDocument,
3366
+ _ref$className = _ref.className,
3367
+ className = _ref$className === void 0 ? 'lockscroll' : _ref$className;
3368
+
3369
+ var lockCounter = 0;
3370
+ /*
3371
+ * Setting `overflow: hidden` on html and body elements resets body scroll in iOS.
3372
+ * Save scroll top so we can restore it after locking scroll.
3373
+ *
3374
+ * NOTE: It would be cleaner and possibly safer to find a localized solution such
3375
+ * as preventing default on certain touchmove events.
3376
+ */
3377
 
3378
+ var previousScrollTop = 0;
3379
+ /**
3380
+ * Locks and unlocks scroll depending on the boolean argument.
3381
+ *
3382
+ * @param {boolean} locked Whether or not scroll should be locked.
3383
+ */
3384
 
3385
+ function setLocked(locked) {
3386
+ var scrollingElement = htmlDocument.scrollingElement || htmlDocument.body;
 
 
3387
 
3388
+ if (locked) {
3389
+ previousScrollTop = scrollingElement.scrollTop;
3390
+ }
3391
+
3392
+ var methodName = locked ? 'add' : 'remove';
3393
+ scrollingElement.classList[methodName](className); // Adding the class to the document element seems to be necessary in iOS.
3394
+
3395
+ htmlDocument.documentElement.classList[methodName](className);
3396
+
3397
+ if (!locked) {
3398
+ scrollingElement.scrollTop = previousScrollTop;
3399
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3400
  }
3401
+ /**
3402
+ * Requests scroll lock.
3403
+ *
3404
+ * This function tracks requests for scroll lock. It locks scroll on the first
3405
+ * request and counts each request so `releaseLock` can unlock scroll when
3406
+ * all requests have been released.
3407
+ */
3408
 
 
 
 
 
3409
 
3410
+ function requestLock() {
3411
+ if (lockCounter === 0) {
3412
+ setLocked(true);
3413
+ }
3414
 
3415
+ ++lockCounter;
3416
+ }
3417
+ /**
3418
+ * Releases a request for scroll lock.
3419
+ *
3420
+ * This function tracks released requests for scroll lock. When all requests
3421
+ * have been released, it unlocks scroll.
3422
+ */
3423
 
 
3424
 
3425
+ function releaseLock() {
3426
+ if (lockCounter === 1) {
3427
+ setLocked(false);
3428
+ }
3429
 
3430
+ --lockCounter;
3431
+ }
3432
 
3433
+ return /*#__PURE__*/function (_Component) {
3434
+ Object(inherits["a" /* default */])(ScrollLock, _Component);
 
3435
 
3436
+ var _super = scroll_lock_createSuper(ScrollLock);
3437
 
3438
+ function ScrollLock() {
3439
+ Object(classCallCheck["a" /* default */])(this, ScrollLock);
3440
 
3441
+ return _super.apply(this, arguments);
3442
+ }
 
 
 
 
 
 
 
 
3443
 
3444
+ Object(createClass["a" /* default */])(ScrollLock, [{
3445
+ key: "componentDidMount",
 
 
3446
 
3447
+ /**
3448
+ * Requests scroll lock on mount.
3449
+ */
3450
+ value: function componentDidMount() {
3451
+ requestLock();
3452
+ }
3453
+ /**
3454
+ * Releases scroll lock before unmount.
3455
+ */
3456
 
3457
+ }, {
3458
+ key: "componentWillUnmount",
3459
+ value: function componentWillUnmount() {
3460
+ releaseLock();
3461
+ }
3462
+ /**
3463
+ * Render nothing as this component is merely a way to declare scroll lock.
3464
+ *
3465
+ * @return {null} Render nothing by returning `null`.
3466
+ */
3467
 
3468
+ }, {
3469
+ key: "render",
3470
+ value: function render() {
3471
+ return null;
3472
+ }
3473
+ }]);
3474
 
3475
+ return ScrollLock;
3476
+ }(external_this_wp_element_["Component"]);
3477
+ }
3478
+ /* harmony default export */ var scroll_lock = (createScrollLockComponent());
3479
+ //# sourceMappingURL=index.js.map
3480
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/isolated-event-container/index.js
3481
+ var isolated_event_container = __webpack_require__(131);
3482
 
3483
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/use-slot.js
3484
+ var use_slot = __webpack_require__(76);
3485
 
3486
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/index.js + 4 modules
3487
+ var slot_fill = __webpack_require__(114);
 
 
3488
 
3489
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/animate/index.js
3490
+ var build_module_animate = __webpack_require__(134);
3491
 
3492
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/popover/index.js
3493
 
 
 
 
3494
 
 
 
 
 
 
3495
 
3496
 
 
 
 
3497
 
3498
+ /**
3499
+ * External dependencies
3500
+ */
3501
 
3502
+ /**
3503
+ * WordPress dependencies
3504
+ */
3505
 
 
3506
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3507
 
 
 
 
3508
 
 
 
 
 
 
3509
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3510
 
 
 
 
 
 
 
 
 
 
 
 
 
3511
 
3512
+ /**
3513
+ * Internal dependencies
3514
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3515
 
 
 
 
3516
 
 
 
 
 
 
 
 
 
3517
 
 
 
 
 
 
3518
 
 
 
 
 
 
 
 
 
3519
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3520
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3521
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3522
 
 
 
 
3523
 
 
 
3524
 
3525
+ var FocusManaged = Object(with_constrained_tabbing["a" /* default */])(Object(with_focus_return["a" /* default */])(function (_ref) {
3526
+ var children = _ref.children;
3527
+ return children;
3528
+ }));
3529
+ /**
3530
+ * Name of slot in which popover should fill.
3531
+ *
3532
+ * @type {string}
3533
+ */
3534
 
3535
+ var SLOT_NAME = 'Popover';
 
 
 
 
 
 
 
 
 
3536
 
3537
+ function computeAnchorRect(anchorRefFallback, anchorRect, getAnchorRect) {
3538
+ var anchorRef = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
3539
+ var shouldAnchorIncludePadding = arguments.length > 4 ? arguments[4] : undefined;
 
 
 
 
3540
 
3541
+ if (anchorRect) {
3542
+ return anchorRect;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3543
  }
 
 
3544
 
3545
+ if (getAnchorRect) {
3546
+ if (!anchorRefFallback.current) {
3547
+ return;
3548
+ }
3549
 
3550
+ return getAnchorRect(anchorRefFallback.current);
3551
+ }
3552
 
3553
+ if (anchorRef !== false) {
3554
+ if (!anchorRef || !window.Range || !window.Element || !window.DOMRect) {
3555
+ return;
3556
+ }
3557
 
3558
+ if (anchorRef instanceof window.Range) {
3559
+ return Object(dom["a" /* getRectangleFromRange */])(anchorRef);
 
 
 
 
 
 
3560
  }
 
 
 
 
 
 
 
3561
 
3562
+ if (anchorRef instanceof window.Element) {
3563
+ var _rect2 = anchorRef.getBoundingClientRect();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3564
 
3565
+ if (shouldAnchorIncludePadding) {
3566
+ return _rect2;
3567
+ }
3568
 
3569
+ return withoutPadding(_rect2, anchorRef);
3570
+ }
 
3571
 
3572
+ var top = anchorRef.top,
3573
+ bottom = anchorRef.bottom;
3574
+ var topRect = top.getBoundingClientRect();
3575
+ var bottomRect = bottom.getBoundingClientRect();
3576
 
3577
+ var _rect = new window.DOMRect(topRect.left, topRect.top, topRect.width, bottomRect.bottom - topRect.top);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3578
 
3579
+ if (shouldAnchorIncludePadding) {
3580
+ return _rect;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3581
  }
 
3582
 
3583
+ return withoutPadding(_rect, anchorRef);
 
 
 
3584
  }
3585
 
3586
+ if (!anchorRefFallback.current) {
3587
+ return;
 
3588
  }
 
3589
 
3590
+ var parentNode = anchorRefFallback.current.parentNode;
3591
+ var rect = parentNode.getBoundingClientRect();
3592
+
3593
+ if (shouldAnchorIncludePadding) {
3594
+ return rect;
 
 
 
 
 
 
 
3595
  }
3596
 
3597
+ return withoutPadding(rect, parentNode);
3598
+ }
3599
 
3600
+ function getComputedStyle(node) {
3601
+ return node.ownerDocument.defaultView.getComputedStyle(node);
3602
+ }
3603
 
3604
+ function withoutPadding(rect, element) {
3605
+ var _getComputedStyle = getComputedStyle(element),
3606
+ paddingTop = _getComputedStyle.paddingTop,
3607
+ paddingBottom = _getComputedStyle.paddingBottom,
3608
+ paddingLeft = _getComputedStyle.paddingLeft,
3609
+ paddingRight = _getComputedStyle.paddingRight;
3610
+
3611
+ var top = paddingTop ? parseInt(paddingTop, 10) : 0;
3612
+ var bottom = paddingBottom ? parseInt(paddingBottom, 10) : 0;
3613
+ var left = paddingLeft ? parseInt(paddingLeft, 10) : 0;
3614
+ var right = paddingRight ? parseInt(paddingRight, 10) : 0;
3615
+ return {
3616
+ x: rect.left + left,
3617
+ y: rect.top + top,
3618
+ width: rect.width - left - right,
3619
+ height: rect.height - top - bottom,
3620
+ left: rect.left + left,
3621
+ right: rect.right - right,
3622
+ top: rect.top + top,
3623
+ bottom: rect.bottom - bottom
3624
+ };
3625
+ }
3626
+ /**
3627
+ * Hook used to focus the first tabbable element on mount.
3628
+ *
3629
+ * @param {boolean|string} focusOnMount Focus on mount mode.
3630
+ * @param {Object} contentRef Reference to the popover content element.
3631
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3632
 
3633
 
3634
+ function useFocusContentOnMount(focusOnMount, contentRef) {
3635
+ // Focus handling
3636
+ Object(external_this_wp_element_["useEffect"])(function () {
3637
+ /*
3638
+ * Without the setTimeout, the dom node is not being focused. Related:
3639
+ * https://stackoverflow.com/questions/35522220/react-ref-with-focus-doesnt-work-without-settimeout-my-example
3640
+ *
3641
+ * TODO: Treat the cause, not the symptom.
3642
+ */
3643
+ var focusTimeout = setTimeout(function () {
3644
+ if (!focusOnMount || !contentRef.current) {
3645
+ return;
3646
+ }
3647
 
3648
+ if (focusOnMount === 'firstElement') {
3649
+ // Find first tabbable node within content and shift focus, falling
3650
+ // back to the popover panel itself.
3651
+ var firstTabbable = build_module["a" /* focus */].tabbable.find(contentRef.current)[0];
3652
 
3653
+ if (firstTabbable) {
3654
+ firstTabbable.focus();
3655
+ } else {
3656
+ contentRef.current.focus();
 
 
 
 
3657
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3658
 
3659
+ return;
3660
+ }
3661
 
3662
+ if (focusOnMount === 'container') {
3663
+ // Focus the popover panel itself so items in the popover are easily
3664
+ // accessed via keyboard navigation.
3665
+ contentRef.current.focus();
3666
+ }
3667
+ }, 0);
3668
+ return function () {
3669
+ return clearTimeout(focusTimeout);
3670
+ };
3671
+ }, []);
3672
+ }
3673
+ /**
3674
+ * Sets or removes an element attribute.
3675
+ *
3676
+ * @param {Element} element The element to modify.
3677
+ * @param {string} name The attribute name to set or remove.
3678
+ * @param {?string} value The value to set. A falsy value will remove the
3679
+ * attribute.
3680
+ */
3681
 
 
 
3682
 
3683
+ function setAttribute(element, name, value) {
3684
+ if (!value) {
3685
+ if (element.hasAttribute(name)) {
3686
+ element.removeAttribute(name);
3687
+ }
3688
+ } else if (element.getAttribute(name) !== value) {
3689
+ element.setAttribute(name, value);
3690
+ }
3691
+ }
3692
+ /**
3693
+ * Sets or removes an element style property.
3694
+ *
3695
+ * @param {Element} element The element to modify.
3696
+ * @param {string} property The property to set or remove.
3697
+ * @param {?string} value The value to set. A falsy value will remove the
3698
+ * property.
3699
+ */
3700
 
 
 
 
 
3701
 
3702
+ function setStyle(element, property) {
3703
+ var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
3704
 
3705
+ if (element.style[property] !== value) {
3706
+ element.style[property] = value;
3707
+ }
3708
+ }
3709
+ /**
3710
+ * Sets or removes an element class.
3711
+ *
3712
+ * @param {Element} element The element to modify.
3713
+ * @param {string} name The class to set or remove.
3714
+ * @param {boolean} toggle True to set the class, false to remove.
3715
+ */
3716
 
 
3717
 
3718
+ function setClass(element, name, toggle) {
3719
+ if (toggle) {
3720
+ if (!element.classList.contains(name)) {
3721
+ element.classList.add(name);
3722
+ }
3723
+ } else if (element.classList.contains(name)) {
3724
+ element.classList.remove(name);
3725
  }
3726
+ }
3727
 
3728
+ var popover_Popover = function Popover(_ref2) {
3729
+ var headerTitle = _ref2.headerTitle,
3730
+ onClose = _ref2.onClose,
3731
+ onKeyDown = _ref2.onKeyDown,
3732
+ children = _ref2.children,
3733
+ className = _ref2.className,
3734
+ _ref2$noArrow = _ref2.noArrow,
3735
+ noArrow = _ref2$noArrow === void 0 ? true : _ref2$noArrow,
3736
+ isAlternate = _ref2.isAlternate,
3737
+ _ref2$position = _ref2.position,
3738
+ position = _ref2$position === void 0 ? 'bottom right' : _ref2$position,
3739
+ range = _ref2.range,
3740
+ _ref2$focusOnMount = _ref2.focusOnMount,
3741
+ focusOnMount = _ref2$focusOnMount === void 0 ? 'firstElement' : _ref2$focusOnMount,
3742
+ anchorRef = _ref2.anchorRef,
3743
+ shouldAnchorIncludePadding = _ref2.shouldAnchorIncludePadding,
3744
+ anchorRect = _ref2.anchorRect,
3745
+ getAnchorRect = _ref2.getAnchorRect,
3746
+ expandOnMobile = _ref2.expandOnMobile,
3747
+ _ref2$animate = _ref2.animate,
3748
+ animate = _ref2$animate === void 0 ? true : _ref2$animate,
3749
+ onClickOutside = _ref2.onClickOutside,
3750
+ onFocusOutside = _ref2.onFocusOutside,
3751
+ __unstableSticky = _ref2.__unstableSticky,
3752
+ _ref2$__unstableSlotN = _ref2.__unstableSlotName,
3753
+ __unstableSlotName = _ref2$__unstableSlotN === void 0 ? SLOT_NAME : _ref2$__unstableSlotN,
3754
+ __unstableObserveElement = _ref2.__unstableObserveElement,
3755
+ __unstableBoundaryParent = _ref2.__unstableBoundaryParent,
3756
+ contentProps = Object(objectWithoutProperties["a" /* default */])(_ref2, ["headerTitle", "onClose", "onKeyDown", "children", "className", "noArrow", "isAlternate", "position", "range", "focusOnMount", "anchorRef", "shouldAnchorIncludePadding", "anchorRect", "getAnchorRect", "expandOnMobile", "animate", "onClickOutside", "onFocusOutside", "__unstableSticky", "__unstableSlotName", "__unstableObserveElement", "__unstableBoundaryParent"]);
3757
+
3758
+ var anchorRefFallback = Object(external_this_wp_element_["useRef"])(null);
3759
+ var contentRef = Object(external_this_wp_element_["useRef"])(null);
3760
+ var containerRef = Object(external_this_wp_element_["useRef"])();
3761
+ var isMobileViewport = Object(use_viewport_match["a" /* default */])('medium', '<');
3762
+
3763
+ var _useState = Object(external_this_wp_element_["useState"])(),
3764
+ _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
3765
+ animateOrigin = _useState2[0],
3766
+ setAnimateOrigin = _useState2[1];
3767
+
3768
+ var slot = Object(use_slot["a" /* default */])(__unstableSlotName);
3769
+ var isExpanded = expandOnMobile && isMobileViewport;
3770
+
3771
+ var _useResizeObserver = use_resize_observer(),
3772
+ _useResizeObserver2 = Object(slicedToArray["a" /* default */])(_useResizeObserver, 2),
3773
+ containerResizeListener = _useResizeObserver2[0],
3774
+ contentSize = _useResizeObserver2[1];
3775
+
3776
+ noArrow = isExpanded || noArrow;
3777
+ Object(external_this_wp_element_["useLayoutEffect"])(function () {
3778
+ if (isExpanded) {
3779
+ setClass(containerRef.current, 'is-without-arrow', noArrow);
3780
+ setClass(containerRef.current, 'is-alternate', isAlternate);
3781
+ setAttribute(containerRef.current, 'data-x-axis');
3782
+ setAttribute(containerRef.current, 'data-y-axis');
3783
+ setStyle(containerRef.current, 'top');
3784
+ setStyle(containerRef.current, 'left');
3785
+ setStyle(contentRef.current, 'maxHeight');
3786
+ setStyle(contentRef.current, 'maxWidth');
3787
+ return;
3788
+ }
3789
 
3790
+ var refresh = function refresh() {
3791
+ if (!containerRef.current || !contentRef.current) {
3792
+ return;
3793
+ }
3794
 
3795
+ var anchor = computeAnchorRect(anchorRefFallback, anchorRect, getAnchorRect, anchorRef, shouldAnchorIncludePadding);
3796
 
3797
+ if (!anchor) {
3798
+ return;
3799
+ }
 
 
 
3800
 
3801
+ var _containerRef$current = containerRef.current,
3802
+ offsetParent = _containerRef$current.offsetParent,
3803
+ ownerDocument = _containerRef$current.ownerDocument;
3804
+ var relativeOffsetTop = 0; // If there is a positioned ancestor element that is not the body,
3805
+ // subtract the position from the anchor rect. If the position of
3806
+ // the popover is fixed, the offset parent is null or the body
3807
+ // element, in which case the position is relative to the viewport.
3808
+ // See https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetParent
3809
+
3810
+ if (offsetParent && offsetParent !== ownerDocument.body) {
3811
+ var offsetParentRect = offsetParent.getBoundingClientRect();
3812
+ relativeOffsetTop = offsetParentRect.top;
3813
+ anchor = new window.DOMRect(anchor.left - offsetParentRect.left, anchor.top - offsetParentRect.top, anchor.width, anchor.height);
3814
+ }
3815
 
3816
+ var boundaryElement;
3817
 
3818
+ if (__unstableBoundaryParent) {
3819
+ var _containerRef$current2;
 
3820
 
3821
+ boundaryElement = (_containerRef$current2 = containerRef.current.closest('.popover-slot')) === null || _containerRef$current2 === void 0 ? void 0 : _containerRef$current2.parentNode;
3822
+ }
 
 
 
 
 
 
 
3823
 
3824
+ var usedContentSize = !contentSize.height ? contentRef.current.getBoundingClientRect() : contentSize;
 
 
 
 
3825
 
3826
+ var _computePopoverPositi = computePopoverPosition(anchor, usedContentSize, position, __unstableSticky, containerRef.current, relativeOffsetTop, boundaryElement),
3827
+ popoverTop = _computePopoverPositi.popoverTop,
3828
+ popoverLeft = _computePopoverPositi.popoverLeft,
3829
+ xAxis = _computePopoverPositi.xAxis,
3830
+ yAxis = _computePopoverPositi.yAxis,
3831
+ contentHeight = _computePopoverPositi.contentHeight,
3832
+ contentWidth = _computePopoverPositi.contentWidth;
3833
 
3834
+ if (typeof popoverTop === 'number' && typeof popoverLeft === 'number') {
3835
+ setStyle(containerRef.current, 'top', popoverTop + 'px');
3836
+ setStyle(containerRef.current, 'left', popoverLeft + 'px');
3837
+ }
3838
 
3839
+ setClass(containerRef.current, 'is-without-arrow', noArrow || xAxis === 'center' && yAxis === 'middle');
3840
+ setClass(containerRef.current, 'is-alternate', isAlternate);
3841
+ setAttribute(containerRef.current, 'data-x-axis', xAxis);
3842
+ setAttribute(containerRef.current, 'data-y-axis', yAxis);
3843
+ setStyle(contentRef.current, 'maxHeight', typeof contentHeight === 'number' ? contentHeight + 'px' : '');
3844
+ setStyle(contentRef.current, 'maxWidth', typeof contentWidth === 'number' ? contentWidth + 'px' : ''); // Compute the animation position
3845
 
3846
+ var yAxisMapping = {
3847
+ top: 'bottom',
3848
+ bottom: 'top'
3849
+ };
3850
+ var xAxisMapping = {
3851
+ left: 'right',
3852
+ right: 'left'
3853
+ };
3854
+ var animateYAxis = yAxisMapping[yAxis] || 'middle';
3855
+ var animateXAxis = xAxisMapping[xAxis] || 'center';
3856
+ setAnimateOrigin(animateXAxis + ' ' + animateYAxis);
3857
+ };
3858
 
3859
+ refresh();
3860
+ /*
3861
+ * There are sometimes we need to reposition or resize the popover that
3862
+ * are not handled by the resize/scroll window events (i.e. CSS changes
3863
+ * in the layout that changes the position of the anchor).
3864
+ *
3865
+ * For these situations, we refresh the popover every 0.5s
3866
+ */
3867
+
3868
+ var intervalHandle = window.setInterval(refresh, 500);
3869
+ var rafId;
3870
+
3871
+ var refreshOnAnimationFrame = function refreshOnAnimationFrame() {
3872
+ window.cancelAnimationFrame(rafId);
3873
+ rafId = window.requestAnimationFrame(refresh);
3874
+ }; // Sometimes a click trigger a layout change that affects the popover
3875
+ // position. This is an opportunity to immediately refresh rather than
3876
+ // at the interval.
3877
+
3878
+
3879
+ window.addEventListener('click', refreshOnAnimationFrame);
3880
+ window.addEventListener('resize', refresh);
3881
+ window.addEventListener('scroll', refresh, true);
3882
+ var observer;
3883
+
3884
+ if (__unstableObserveElement) {
3885
+ observer = new window.MutationObserver(refresh);
3886
+ observer.observe(__unstableObserveElement, {
3887
+ attributes: true
3888
+ });
3889
+ }
3890
 
3891
+ return function () {
3892
+ window.clearInterval(intervalHandle);
3893
+ window.removeEventListener('resize', refresh);
3894
+ window.removeEventListener('scroll', refresh, true);
3895
+ window.removeEventListener('click', refreshOnAnimationFrame);
3896
+ window.cancelAnimationFrame(rafId);
3897
+
3898
+ if (observer) {
3899
+ observer.disconnect();
3900
+ }
3901
+ };
3902
+ }, [isExpanded, anchorRect, getAnchorRect, anchorRef, shouldAnchorIncludePadding, position, contentSize, __unstableSticky, __unstableObserveElement, __unstableBoundaryParent]);
3903
+ useFocusContentOnMount(focusOnMount, contentRef); // Event handlers
 
 
 
 
3904
 
3905
+ var maybeClose = function maybeClose(event) {
3906
+ // Close on escape
3907
+ if (event.keyCode === keycodes_build_module["b" /* ESCAPE */] && onClose) {
3908
+ event.stopPropagation();
3909
+ onClose();
3910
+ } // Preserve original content prop behavior
3911
 
 
 
 
 
3912
 
3913
+ if (onKeyDown) {
3914
+ onKeyDown(event);
 
 
 
 
 
 
 
3915
  }
3916
+ };
3917
+ /**
3918
+ * Shims an onFocusOutside callback to be compatible with a deprecated
3919
+ * onClickOutside prop function, if provided.
3920
+ *
3921
+ * @param {FocusEvent} event Focus event from onFocusOutside.
3922
+ */
 
 
3923
 
 
3924
 
3925
+ function handleOnFocusOutside(event) {
3926
+ // Defer to given `onFocusOutside` if specified. Call `onClose` only if
3927
+ // both `onFocusOutside` and `onClickOutside` are unspecified. Doing so
3928
+ // assures backwards-compatibility for prior `onClickOutside` default.
3929
+ if (onFocusOutside) {
3930
+ onFocusOutside(event);
3931
+ return;
3932
+ } else if (!onClickOutside) {
3933
+ if (onClose) {
3934
+ onClose();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3935
  }
 
 
 
 
 
3936
 
3937
+ return;
3938
+ } // Simulate MouseEvent using FocusEvent#relatedTarget as emulated click
3939
+ // target. MouseEvent constructor is unsupported in Internet Explorer.
3940
 
 
 
 
 
 
3941
 
3942
+ var clickEvent;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3943
 
3944
+ try {
3945
+ clickEvent = new window.MouseEvent('click');
3946
+ } catch (error) {
3947
+ clickEvent = document.createEvent('MouseEvent');
3948
+ clickEvent.initMouseEvent('click', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3949
  }
 
 
 
 
 
3950
 
3951
+ Object.defineProperty(clickEvent, 'target', {
3952
+ get: function get() {
3953
+ return event.relatedTarget;
3954
+ }
3955
+ });
3956
+ Object(deprecated_build_module["a" /* default */])('Popover onClickOutside prop', {
3957
+ alternative: 'onFocusOutside'
3958
+ });
3959
+ onClickOutside(clickEvent);
3960
+ } // Disable reason: We care to capture the _bubbled_ events from inputs
3961
+ // within popover as inferring close intent.
3962
+
3963
+
3964
+ var content = Object(external_this_wp_element_["createElement"])(detect_outside, {
3965
+ onFocusOutside: handleOnFocusOutside
3966
+ }, Object(external_this_wp_element_["createElement"])(build_module_animate["a" /* default */], {
3967
+ type: animate && animateOrigin ? 'appear' : null,
3968
+ options: {
3969
+ origin: animateOrigin
3970
+ }
3971
+ }, function (_ref3) {
3972
+ var animateClassName = _ref3.className;
3973
+ return Object(external_this_wp_element_["createElement"])(isolated_event_container["a" /* default */], Object(esm_extends["a" /* default */])({
3974
+ className: classnames_default()('components-popover', className, animateClassName, {
3975
+ 'is-expanded': isExpanded,
3976
+ 'is-without-arrow': noArrow,
3977
+ 'is-alternate': isAlternate
3978
+ })
3979
+ }, contentProps, {
3980
+ onKeyDown: maybeClose,
3981
+ ref: containerRef
3982
+ }), isExpanded && Object(external_this_wp_element_["createElement"])(scroll_lock, null), isExpanded && Object(external_this_wp_element_["createElement"])("div", {
3983
+ className: "components-popover__header"
3984
+ }, Object(external_this_wp_element_["createElement"])("span", {
3985
+ className: "components-popover__header-title"
3986
+ }, headerTitle), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
3987
+ className: "components-popover__close",
3988
+ icon: library_close["a" /* default */],
3989
+ onClick: onClose
3990
+ })), Object(external_this_wp_element_["createElement"])("div", {
3991
+ ref: contentRef,
3992
+ className: "components-popover__content",
3993
+ tabIndex: "-1"
3994
+ }, Object(external_this_wp_element_["createElement"])("div", {
3995
+ style: {
3996
+ position: 'relative'
3997
+ }
3998
+ }, containerResizeListener, children)));
3999
+ })); // Apply focus to element as long as focusOnMount is truthy; false is
4000
+ // the only "disabled" value.
4001
 
4002
+ if (focusOnMount) {
4003
+ content = Object(external_this_wp_element_["createElement"])(FocusManaged, null, content);
4004
+ }
4005
 
4006
+ if (slot.ref) {
4007
+ content = Object(external_this_wp_element_["createElement"])(slot_fill["a" /* Fill */], {
4008
+ name: __unstableSlotName
4009
+ }, content);
4010
+ }
4011
 
4012
+ if (anchorRef || anchorRect) {
4013
+ return content;
4014
+ }
4015
 
4016
+ return Object(external_this_wp_element_["createElement"])("span", {
4017
+ ref: anchorRefFallback
4018
+ }, content);
4019
+ };
4020
 
4021
+ var PopoverContainer = popover_Popover;
 
 
4022
 
4023
+ PopoverContainer.Slot = function (_ref4) {
4024
+ var _ref4$name = _ref4.name,
4025
+ name = _ref4$name === void 0 ? SLOT_NAME : _ref4$name;
4026
+ return Object(external_this_wp_element_["createElement"])(slot_fill["b" /* Slot */], {
4027
+ bubblesVirtually: true,
4028
+ name: name,
4029
+ className: "popover-slot"
4030
+ });
4031
+ };
4032
 
4033
+ /* harmony default export */ var popover = __webpack_exports__["a"] = (PopoverContainer);
4034
+ //# sourceMappingURL=index.js.map
4035
 
4036
  /***/ }),
 
 
4037
 
4038
+ /***/ 137:
4039
+ /***/ (function(module, exports, __webpack_require__) {
 
4040
 
4041
+ /**
4042
+ * Copyright (c) 2014-present, Facebook, Inc.
4043
+ *
4044
+ * This source code is licensed under the MIT license found in the
4045
+ * LICENSE file in the root directory of this source tree.
4046
+ */
4047
 
4048
+ var runtime = (function (exports) {
4049
+ "use strict";
 
4050
 
4051
+ var Op = Object.prototype;
4052
+ var hasOwn = Op.hasOwnProperty;
4053
+ var undefined; // More compressible than void 0.
4054
+ var $Symbol = typeof Symbol === "function" ? Symbol : {};
4055
+ var iteratorSymbol = $Symbol.iterator || "@@iterator";
4056
+ var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
4057
+ var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
4058
 
4059
+ function define(obj, key, value) {
4060
+ Object.defineProperty(obj, key, {
4061
+ value: value,
4062
+ enumerable: true,
4063
+ configurable: true,
4064
+ writable: true
4065
+ });
4066
+ return obj[key];
4067
+ }
4068
+ try {
4069
+ // IE 8 has a broken Object.defineProperty that only works on DOM objects.
4070
+ define({}, "");
4071
+ } catch (err) {
4072
+ define = function(obj, key, value) {
4073
+ return obj[key] = value;
4074
+ };
4075
+ }
4076
 
4077
+ function wrap(innerFn, outerFn, self, tryLocsList) {
4078
+ // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
4079
+ var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
4080
+ var generator = Object.create(protoGenerator.prototype);
4081
+ var context = new Context(tryLocsList || []);
4082
 
4083
+ // The ._invoke method unifies the implementations of the .next,
4084
+ // .throw, and .return methods.
4085
+ generator._invoke = makeInvokeMethod(innerFn, self, context);
 
 
 
4086
 
4087
+ return generator;
4088
+ }
4089
+ exports.wrap = wrap;
4090
 
4091
+ // Try/catch helper to minimize deoptimizations. Returns a completion
4092
+ // record like context.tryEntries[i].completion. This interface could
4093
+ // have been (and was previously) designed to take a closure to be
4094
+ // invoked without arguments, but in all the cases we care about we
4095
+ // already have an existing method we want to call, so there's no need
4096
+ // to create a new function object. We can even get away with assuming
4097
+ // the method takes exactly one argument, since that happens to be true
4098
+ // in every case, so we don't have to touch the arguments object. The
4099
+ // only additional allocation required is the completion record, which
4100
+ // has a stable shape and so hopefully should be cheap to allocate.
4101
+ function tryCatch(fn, obj, arg) {
4102
  try {
4103
+ return { type: "normal", arg: fn.call(obj, arg) };
4104
+ } catch (err) {
4105
+ return { type: "throw", arg: err };
4106
  }
4107
  }
4108
 
4109
+ var GenStateSuspendedStart = "suspendedStart";
4110
+ var GenStateSuspendedYield = "suspendedYield";
4111
+ var GenStateExecuting = "executing";
4112
+ var GenStateCompleted = "completed";
4113
 
4114
+ // Returning this object from the innerFn has the same effect as
4115
+ // breaking out of the dispatch switch statement.
4116
+ var ContinueSentinel = {};
4117
 
4118
+ // Dummy constructor functions that we use as the .constructor and
4119
+ // .constructor.prototype properties for functions that return Generator
4120
+ // objects. For full spec compliance, you may wish to configure your
4121
+ // minifier not to mangle the names of these two functions.
4122
+ function Generator() {}
4123
+ function GeneratorFunction() {}
4124
+ function GeneratorFunctionPrototype() {}
4125
 
4126
+ // This is a polyfill for %IteratorPrototype% for environments that
4127
+ // don't natively support it.
4128
+ var IteratorPrototype = {};
4129
+ IteratorPrototype[iteratorSymbol] = function () {
4130
+ return this;
4131
+ };
4132
 
4133
+ var getProto = Object.getPrototypeOf;
4134
+ var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
4135
+ if (NativeIteratorPrototype &&
4136
+ NativeIteratorPrototype !== Op &&
4137
+ hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
4138
+ // This environment has a native %IteratorPrototype%; use it instead
4139
+ // of the polyfill.
4140
+ IteratorPrototype = NativeIteratorPrototype;
4141
+ }
4142
+
4143
+ var Gp = GeneratorFunctionPrototype.prototype =
4144
+ Generator.prototype = Object.create(IteratorPrototype);
4145
+ GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
4146
+ GeneratorFunctionPrototype.constructor = GeneratorFunction;
4147
+ GeneratorFunction.displayName = define(
4148
+ GeneratorFunctionPrototype,
4149
+ toStringTagSymbol,
4150
+ "GeneratorFunction"
4151
+ );
4152
 
4153
+ // Helper for defining the .next, .throw, and .return methods of the
4154
+ // Iterator interface in terms of a single ._invoke method.
4155
+ function defineIteratorMethods(prototype) {
4156
+ ["next", "throw", "return"].forEach(function(method) {
4157
+ define(prototype, method, function(arg) {
4158
+ return this._invoke(method, arg);
4159
+ });
4160
+ });
4161
+ }
4162
 
4163
+ exports.isGeneratorFunction = function(genFun) {
4164
+ var ctor = typeof genFun === "function" && genFun.constructor;
4165
+ return ctor
4166
+ ? ctor === GeneratorFunction ||
4167
+ // For the native GeneratorFunction constructor, the best we can
4168
+ // do is to check its .name property.
4169
+ (ctor.displayName || ctor.name) === "GeneratorFunction"
4170
+ : false;
4171
+ };
4172
 
4173
+ exports.mark = function(genFun) {
4174
+ if (Object.setPrototypeOf) {
4175
+ Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
4176
+ } else {
4177
+ genFun.__proto__ = GeneratorFunctionPrototype;
4178
+ define(genFun, toStringTagSymbol, "GeneratorFunction");
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4179
  }
4180
+ genFun.prototype = Object.create(Gp);
4181
+ return genFun;
4182
+ };
 
 
 
4183
 
4184
+ // Within the body of any async function, `await x` is transformed to
4185
+ // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
4186
+ // `hasOwn.call(value, "__await")` to determine if the yielded value is
4187
+ // meant to be awaited.
4188
+ exports.awrap = function(arg) {
4189
+ return { __await: arg };
4190
+ };
4191
 
4192
+ function AsyncIterator(generator, PromiseImpl) {
4193
+ function invoke(method, arg, resolve, reject) {
4194
+ var record = tryCatch(generator[method], generator, arg);
4195
+ if (record.type === "throw") {
4196
+ reject(record.arg);
4197
+ } else {
4198
+ var result = record.arg;
4199
+ var value = result.value;
4200
+ if (value &&
4201
+ typeof value === "object" &&
4202
+ hasOwn.call(value, "__await")) {
4203
+ return PromiseImpl.resolve(value.__await).then(function(value) {
4204
+ invoke("next", value, resolve, reject);
4205
+ }, function(err) {
4206
+ invoke("throw", err, resolve, reject);
4207
+ });
4208
+ }
4209
 
4210
+ return PromiseImpl.resolve(value).then(function(unwrapped) {
4211
+ // When a yielded Promise is resolved, its final value becomes
4212
+ // the .value of the Promise<{value,done}> result for the
4213
+ // current iteration.
4214
+ result.value = unwrapped;
4215
+ resolve(result);
4216
+ }, function(error) {
4217
+ // If a rejected Promise was yielded, throw the rejection back
4218
+ // into the async generator function so it can be handled there.
4219
+ return invoke("throw", error, resolve, reject);
4220
+ });
4221
+ }
4222
+ }
4223
 
4224
+ var previousPromise;
 
 
4225
 
4226
+ function enqueue(method, arg) {
4227
+ function callInvokeWithMethodAndArg() {
4228
+ return new PromiseImpl(function(resolve, reject) {
4229
+ invoke(method, arg, resolve, reject);
4230
+ });
4231
+ }
 
 
 
4232
 
4233
+ return previousPromise =
4234
+ // If enqueue has been called before, then we want to wait until
4235
+ // all previous Promises have been resolved before calling invoke,
4236
+ // so that results are always delivered in the correct order. If
4237
+ // enqueue has not been called before, then it is important to
4238
+ // call invoke immediately, without waiting on a callback to fire,
4239
+ // so that the async generator function has the opportunity to do
4240
+ // any necessary setup in a predictable way. This predictability
4241
+ // is why the Promise constructor synchronously invokes its
4242
+ // executor callback, and why async functions synchronously
4243
+ // execute code before the first await. Since we implement simple
4244
+ // async functions in terms of async generators, it is especially
4245
+ // important to get this right, even though it requires care.
4246
+ previousPromise ? previousPromise.then(
4247
+ callInvokeWithMethodAndArg,
4248
+ // Avoid propagating failures to Promises returned by later
4249
+ // invocations of the iterator.
4250
+ callInvokeWithMethodAndArg
4251
+ ) : callInvokeWithMethodAndArg();
4252
+ }
4253
+
4254
+ // Define the unified helper method that is used to implement .next,
4255
+ // .throw, and .return (see defineIteratorMethods).
4256
+ this._invoke = enqueue;
4257
+ }
4258
+
4259
+ defineIteratorMethods(AsyncIterator.prototype);
4260
+ AsyncIterator.prototype[asyncIteratorSymbol] = function () {
4261
+ return this;
4262
+ };
4263
+ exports.AsyncIterator = AsyncIterator;
4264
 
4265
+ // Note that simple async functions are implemented on top of
4266
+ // AsyncIterator objects; they just return a Promise for the value of
4267
+ // the final result produced by the iterator.
4268
+ exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
4269
+ if (PromiseImpl === void 0) PromiseImpl = Promise;
4270
 
4271
+ var iter = new AsyncIterator(
4272
+ wrap(innerFn, outerFn, self, tryLocsList),
4273
+ PromiseImpl
4274
+ );
4275
 
4276
+ return exports.isGeneratorFunction(outerFn)
4277
+ ? iter // If outerFn is a generator, return the full iterator.
4278
+ : iter.next().then(function(result) {
4279
+ return result.done ? result.value : iter.next();
4280
+ });
4281
+ };
4282
 
4283
+ function makeInvokeMethod(innerFn, self, context) {
4284
+ var state = GenStateSuspendedStart;
4285
 
4286
+ return function invoke(method, arg) {
4287
+ if (state === GenStateExecuting) {
4288
+ throw new Error("Generator is already running");
4289
+ }
 
4290
 
4291
+ if (state === GenStateCompleted) {
4292
+ if (method === "throw") {
4293
+ throw arg;
4294
+ }
4295
 
4296
+ // Be forgiving, per 25.3.3.3.3 of the spec:
4297
+ // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
4298
+ return doneResult();
4299
+ }
4300
 
4301
+ context.method = method;
4302
+ context.arg = arg;
4303
 
4304
+ while (true) {
4305
+ var delegate = context.delegate;
4306
+ if (delegate) {
4307
+ var delegateResult = maybeInvokeDelegate(delegate, context);
4308
+ if (delegateResult) {
4309
+ if (delegateResult === ContinueSentinel) continue;
4310
+ return delegateResult;
4311
+ }
4312
+ }
4313
 
4314
+ if (context.method === "next") {
4315
+ // Setting context._sent for legacy support of Babel's
4316
+ // function.sent implementation.
4317
+ context.sent = context._sent = context.arg;
 
 
 
4318
 
4319
+ } else if (context.method === "throw") {
4320
+ if (state === GenStateSuspendedStart) {
4321
+ state = GenStateCompleted;
4322
+ throw context.arg;
4323
+ }
4324
 
4325
+ context.dispatchException(context.arg);
4326
 
4327
+ } else if (context.method === "return") {
4328
+ context.abrupt("return", context.arg);
4329
+ }
4330
 
4331
+ state = GenStateExecuting;
4332
 
4333
+ var record = tryCatch(innerFn, self, context);
4334
+ if (record.type === "normal") {
4335
+ // If an exception is thrown from innerFn, we leave state ===
4336
+ // GenStateExecuting and loop back for another invocation.
4337
+ state = context.done
4338
+ ? GenStateCompleted
4339
+ : GenStateSuspendedYield;
4340
 
4341
+ if (record.arg === ContinueSentinel) {
4342
+ continue;
4343
+ }
4344
 
4345
+ return {
4346
+ value: record.arg,
4347
+ done: context.done
4348
+ };
4349
 
4350
+ } else if (record.type === "throw") {
4351
+ state = GenStateCompleted;
4352
+ // Dispatch the exception by looping back around to the
4353
+ // context.dispatchException(context.arg) call above.
4354
+ context.method = "throw";
4355
+ context.arg = record.arg;
4356
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4357
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4358
  };
4359
  }
 
4360
 
4361
+ // Call delegate.iterator[context.method](context.arg) and handle the
4362
+ // result, either by returning a { value, done } result from the
4363
+ // delegate iterator, or by modifying context.method and context.arg,
4364
+ // setting context.delegate to null, and returning the ContinueSentinel.
4365
+ function maybeInvokeDelegate(delegate, context) {
4366
+ var method = delegate.iterator[context.method];
4367
+ if (method === undefined) {
4368
+ // A .throw or .return when the delegate iterator has no .throw
4369
+ // method always terminates the yield* loop.
4370
+ context.delegate = null;
4371
+
4372
+ if (context.method === "throw") {
4373
+ // Note: ["return"] must be used for ES3 parsing compatibility.
4374
+ if (delegate.iterator["return"]) {
4375
+ // If the delegate iterator has a return method, give it a
4376
+ // chance to clean up.
4377
+ context.method = "return";
4378
+ context.arg = undefined;
4379
+ maybeInvokeDelegate(delegate, context);
4380
+
4381
+ if (context.method === "throw") {
4382
+ // If maybeInvokeDelegate(context) changed context.method from
4383
+ // "return" to "throw", let that override the TypeError below.
4384
+ return ContinueSentinel;
4385
+ }
4386
+ }
4387
 
4388
+ context.method = "throw";
4389
+ context.arg = new TypeError(
4390
+ "The iterator does not provide a 'throw' method");
4391
+ }
4392
 
4393
+ return ContinueSentinel;
4394
+ }
 
4395
 
4396
+ var record = tryCatch(method, delegate.iterator, context.arg);
4397
 
4398
+ if (record.type === "throw") {
4399
+ context.method = "throw";
4400
+ context.arg = record.arg;
4401
+ context.delegate = null;
4402
+ return ContinueSentinel;
4403
+ }
4404
 
4405
+ var info = record.arg;
4406
 
4407
+ if (! info) {
4408
+ context.method = "throw";
4409
+ context.arg = new TypeError("iterator result is not an object");
4410
+ context.delegate = null;
4411
+ return ContinueSentinel;
4412
+ }
4413
 
4414
+ if (info.done) {
4415
+ // Assign the result of the finished delegate to the temporary
4416
+ // variable specified by delegate.resultName (see delegateYield).
4417
+ context[delegate.resultName] = info.value;
 
 
 
 
 
 
 
 
4418
 
4419
+ // Resume execution at the desired location (see delegateYield).
4420
+ context.next = delegate.nextLoc;
4421
 
4422
+ // If context.method was "throw" but the delegate handled the
4423
+ // exception, let the outer generator proceed normally. If
4424
+ // context.method was "next", forget context.arg since it has been
4425
+ // "consumed" by the delegate iterator. If context.method was
4426
+ // "return", allow the original .return call to continue in the
4427
+ // outer generator.
4428
+ if (context.method !== "return") {
4429
+ context.method = "next";
4430
+ context.arg = undefined;
4431
+ }
4432
 
4433
+ } else {
4434
+ // Re-yield the result returned by the delegate method.
4435
+ return info;
4436
+ }
4437
 
4438
+ // The delegate iterator is finished, so forget it and continue with
4439
+ // the outer generator.
4440
+ context.delegate = null;
4441
+ return ContinueSentinel;
4442
  }
 
4443
 
4444
+ // Define Generator.prototype.{next,throw,return} in terms of the
4445
+ // unified ._invoke helper method.
4446
+ defineIteratorMethods(Gp);
4447
 
4448
+ define(Gp, toStringTagSymbol, "Generator");
 
 
4449
 
4450
+ // A Generator should always return itself as the iterator object when the
4451
+ // @@iterator function is called on it. Some browsers' implementations of the
4452
+ // iterator prototype chain incorrectly implement this, causing the Generator
4453
+ // object to not be returned from this call. This ensures that doesn't happen.
4454
+ // See https://github.com/facebook/regenerator/issues/274 for more details.
4455
+ Gp[iteratorSymbol] = function() {
4456
+ return this;
4457
+ };
4458
 
4459
+ Gp.toString = function() {
4460
+ return "[object Generator]";
4461
+ };
4462
 
4463
+ function pushTryEntry(locs) {
4464
+ var entry = { tryLoc: locs[0] };
 
4465
 
4466
+ if (1 in locs) {
4467
+ entry.catchLoc = locs[1];
4468
+ }
4469
 
4470
+ if (2 in locs) {
4471
+ entry.finallyLoc = locs[2];
4472
+ entry.afterLoc = locs[3];
4473
+ }
 
4474
 
4475
+ this.tryEntries.push(entry);
4476
+ }
4477
 
4478
+ function resetTryEntry(entry) {
4479
+ var record = entry.completion || {};
4480
+ record.type = "normal";
4481
+ delete record.arg;
4482
+ entry.completion = record;
4483
+ }
 
4484
 
4485
+ function Context(tryLocsList) {
4486
+ // The root entry object (effectively a try statement without a catch
4487
+ // or a finally block) gives us a place to store values thrown from
4488
+ // locations where there is no enclosing try statement.
4489
+ this.tryEntries = [{ tryLoc: "root" }];
4490
+ tryLocsList.forEach(pushTryEntry, this);
4491
+ this.reset(true);
4492
+ }
4493
 
4494
+ exports.keys = function(object) {
4495
+ var keys = [];
4496
+ for (var key in object) {
4497
+ keys.push(key);
4498
+ }
4499
+ keys.reverse();
4500
+
4501
+ // Rather than returning an object with a next method, we keep
4502
+ // things simple and return the next function itself.
4503
+ return function next() {
4504
+ while (keys.length) {
4505
+ var key = keys.pop();
4506
+ if (key in object) {
4507
+ next.value = key;
4508
+ next.done = false;
4509
+ return next;
4510
+ }
4511
+ }
4512
 
4513
+ // To avoid creating an additional object, we just hang the .value
4514
+ // and .done properties off the next function object itself. This
4515
+ // also ensures that the minifier will not anonymize the function.
4516
+ next.done = true;
4517
+ return next;
4518
+ };
4519
+ };
4520
 
4521
+ function values(iterable) {
4522
+ if (iterable) {
4523
+ var iteratorMethod = iterable[iteratorSymbol];
4524
+ if (iteratorMethod) {
4525
+ return iteratorMethod.call(iterable);
4526
+ }
4527
 
4528
+ if (typeof iterable.next === "function") {
4529
+ return iterable;
4530
+ }
4531
 
4532
+ if (!isNaN(iterable.length)) {
4533
+ var i = -1, next = function next() {
4534
+ while (++i < iterable.length) {
4535
+ if (hasOwn.call(iterable, i)) {
4536
+ next.value = iterable[i];
4537
+ next.done = false;
4538
+ return next;
4539
+ }
4540
+ }
4541
 
4542
+ next.value = undefined;
4543
+ next.done = true;
4544
+
4545
+ return next;
4546
+ };
4547
+
4548
+ return next.next = next;
4549
+ }
4550
  }
4551
 
4552
+ // Return an iterator with no values.
4553
+ return { next: doneResult };
4554
+ }
4555
+ exports.values = values;
4556
 
4557
+ function doneResult() {
4558
+ return { value: undefined, done: true };
4559
+ }
 
4560
 
4561
+ Context.prototype = {
4562
+ constructor: Context,
4563
 
4564
+ reset: function(skipTempReset) {
4565
+ this.prev = 0;
4566
+ this.next = 0;
4567
+ // Resetting context._sent for legacy support of Babel's
4568
+ // function.sent implementation.
4569
+ this.sent = this._sent = undefined;
4570
+ this.done = false;
4571
+ this.delegate = null;
4572
 
4573
+ this.method = "next";
4574
+ this.arg = undefined;
4575
+
4576
+ this.tryEntries.forEach(resetTryEntry);
4577
+
4578
+ if (!skipTempReset) {
4579
+ for (var name in this) {
4580
+ // Not sure about the optimal order of these conditions:
4581
+ if (name.charAt(0) === "t" &&
4582
+ hasOwn.call(this, name) &&
4583
+ !isNaN(+name.slice(1))) {
4584
+ this[name] = undefined;
4585
+ }
4586
  }
4587
+ }
4588
+ },
4589
 
4590
+ stop: function() {
4591
+ this.done = true;
4592
+
4593
+ var rootEntry = this.tryEntries[0];
4594
+ var rootRecord = rootEntry.completion;
4595
+ if (rootRecord.type === "throw") {
4596
+ throw rootRecord.arg;
4597
+ }
4598
+
4599
+ return this.rval;
4600
+ },
4601
+
4602
+ dispatchException: function(exception) {
4603
+ if (this.done) {
4604
+ throw exception;
4605
+ }
4606
+
4607
+ var context = this;
4608
+ function handle(loc, caught) {
4609
+ record.type = "throw";
4610
+ record.arg = exception;
4611
+ context.next = loc;
4612
+
4613
+ if (caught) {
4614
+ // If the dispatched exception was caught by a catch block,
4615
+ // then let that catch block handle the exception normally.
4616
+ context.method = "next";
4617
+ context.arg = undefined;
4618
  }
 
4619
 
4620
+ return !! caught;
4621
+ }
4622
 
4623
+ for (var i = this.tryEntries.length - 1; i >= 0; --i) {
4624
+ var entry = this.tryEntries[i];
4625
+ var record = entry.completion;
 
 
4626
 
4627
+ if (entry.tryLoc === "root") {
4628
+ // Exception thrown outside of any try block that could handle
4629
+ // it, so set the completion value of the entire function to
4630
+ // throw the exception.
4631
+ return handle("end");
 
 
 
 
4632
  }
4633
 
4634
+ if (entry.tryLoc <= this.prev) {
4635
+ var hasCatch = hasOwn.call(entry, "catchLoc");
4636
+ var hasFinally = hasOwn.call(entry, "finallyLoc");
4637
 
4638
+ if (hasCatch && hasFinally) {
4639
+ if (this.prev < entry.catchLoc) {
4640
+ return handle(entry.catchLoc, true);
4641
+ } else if (this.prev < entry.finallyLoc) {
4642
+ return handle(entry.finallyLoc);
4643
+ }
4644
 
4645
+ } else if (hasCatch) {
4646
+ if (this.prev < entry.catchLoc) {
4647
+ return handle(entry.catchLoc, true);
4648
+ }
4649
 
4650
+ } else if (hasFinally) {
4651
+ if (this.prev < entry.finallyLoc) {
4652
+ return handle(entry.finallyLoc);
 
 
 
 
 
 
 
 
4653
  }
 
 
 
4654
 
4655
+ } else {
4656
+ throw new Error("try statement without catch or finally");
4657
+ }
4658
+ }
4659
+ }
4660
+ },
4661
 
4662
+ abrupt: function(type, arg) {
4663
+ for (var i = this.tryEntries.length - 1; i >= 0; --i) {
4664
+ var entry = this.tryEntries[i];
4665
+ if (entry.tryLoc <= this.prev &&
4666
+ hasOwn.call(entry, "finallyLoc") &&
4667
+ this.prev < entry.finallyLoc) {
4668
+ var finallyEntry = entry;
4669
+ break;
4670
  }
4671
+ }
 
 
4672
 
4673
+ if (finallyEntry &&
4674
+ (type === "break" ||
4675
+ type === "continue") &&
4676
+ finallyEntry.tryLoc <= arg &&
4677
+ arg <= finallyEntry.finallyLoc) {
4678
+ // Ignore the finally entry if control is not jumping to a
4679
+ // location outside the try/catch block.
4680
+ finallyEntry = null;
4681
+ }
4682
 
4683
+ var record = finallyEntry ? finallyEntry.completion : {};
4684
+ record.type = type;
4685
+ record.arg = arg;
 
 
 
 
 
 
 
 
 
 
4686
 
4687
+ if (finallyEntry) {
4688
+ this.method = "next";
4689
+ this.next = finallyEntry.finallyLoc;
4690
+ return ContinueSentinel;
4691
+ }
 
4692
 
4693
+ return this.complete(record);
4694
+ },
 
 
 
 
4695
 
4696
+ complete: function(record, afterLoc) {
4697
+ if (record.type === "throw") {
4698
+ throw record.arg;
4699
+ }
 
4700
 
4701
+ if (record.type === "break" ||
4702
+ record.type === "continue") {
4703
+ this.next = record.arg;
4704
+ } else if (record.type === "return") {
4705
+ this.rval = this.arg = record.arg;
4706
+ this.method = "return";
4707
+ this.next = "end";
4708
+ } else if (record.type === "normal" && afterLoc) {
4709
+ this.next = afterLoc;
4710
+ }
4711
 
4712
+ return ContinueSentinel;
4713
+ },
4714
+
4715
+ finish: function(finallyLoc) {
4716
+ for (var i = this.tryEntries.length - 1; i >= 0; --i) {
4717
+ var entry = this.tryEntries[i];
4718
+ if (entry.finallyLoc === finallyLoc) {
4719
+ this.complete(entry.completion, entry.afterLoc);
4720
+ resetTryEntry(entry);
4721
+ return ContinueSentinel;
 
 
4722
  }
4723
+ }
4724
+ },
4725
 
4726
+ "catch": function(tryLoc) {
4727
+ for (var i = this.tryEntries.length - 1; i >= 0; --i) {
4728
+ var entry = this.tryEntries[i];
4729
+ if (entry.tryLoc === tryLoc) {
4730
+ var record = entry.completion;
4731
+ if (record.type === "throw") {
4732
+ var thrown = record.arg;
4733
+ resetTryEntry(entry);
4734
+ }
4735
+ return thrown;
4736
  }
4737
+ }
4738
 
4739
+ // The context.catch method must only be called with a location
4740
+ // argument that corresponds to a known catch block.
4741
+ throw new Error("illegal catch attempt");
4742
+ },
4743
 
4744
+ delegateYield: function(iterable, resultName, nextLoc) {
4745
+ this.delegate = {
4746
+ iterator: values(iterable),
4747
+ resultName: resultName,
4748
+ nextLoc: nextLoc
4749
+ };
4750
 
4751
+ if (this.method === "next") {
4752
+ // Deliberately forget the last sent value so that we don't
4753
+ // accidentally pass it on to the delegate.
4754
+ this.arg = undefined;
4755
+ }
4756
+
4757
+ return ContinueSentinel;
4758
  }
4759
+ };
4760
 
4761
+ // Regardless of whether this script is executing as a CommonJS module
4762
+ // or not, return the runtime object so that we can declare the variable
4763
+ // regeneratorRuntime in the outer scope, which allows this module to be
4764
+ // injected easily by `bin/regenerator --include-runtime script.js`.
4765
+ return exports;
4766
 
4767
+ }(
4768
+ // If this script is executing as a CommonJS module, use module.exports
4769
+ // as the regeneratorRuntime namespace. Otherwise create a new empty
4770
+ // object. Either way, the resulting object will be used to initialize
4771
+ // the regeneratorRuntime variable at the top of this file.
4772
+ true ? module.exports : undefined
4773
+ ));
4774
 
4775
+ try {
4776
+ regeneratorRuntime = runtime;
4777
+ } catch (accidentalStrictMode) {
4778
+ // This module should not be running in strict mode, so the above
4779
+ // assignment should always work unless something is misconfigured. Just
4780
+ // in case runtime.js accidentally runs in strict mode, we can escape
4781
+ // strict mode using a global Function call. This could conceivably fail
4782
+ // if a Content Security Policy forbids using Function, but in that case
4783
+ // the proper solution is to fix the accidental strict mode problem. If
4784
+ // you've misconfigured your bundler to force strict mode and applied a
4785
+ // CSP to forbid Function, and you're not willing to fix either of those
4786
+ // problems, please detail your unique predicament in a GitHub issue.
4787
+ Function("r", "regeneratorRuntime = r")(runtime);
4788
+ }
4789
 
 
 
 
 
 
 
 
 
 
 
4790
 
4791
+ /***/ }),
4792
 
4793
+ /***/ 138:
4794
+ /***/ (function(module, exports, __webpack_require__) {
4795
 
4796
+ "use strict";
4797
+ /**
4798
+ * Copyright (c) 2013-present, Facebook, Inc.
4799
+ *
4800
+ * This source code is licensed under the MIT license found in the
4801
+ * LICENSE file in the root directory of this source tree.
4802
+ */
4803
 
 
 
 
 
4804
 
 
 
4805
 
4806
+ var ReactPropTypesSecret = __webpack_require__(139);
 
 
4807
 
4808
+ function emptyFunction() {}
4809
+ function emptyFunctionWithReset() {}
4810
+ emptyFunctionWithReset.resetWarningCache = emptyFunction;
4811
+
4812
+ module.exports = function() {
4813
+ function shim(props, propName, componentName, location, propFullName, secret) {
4814
+ if (secret === ReactPropTypesSecret) {
4815
+ // It is still safe when called from React.
4816
+ return;
4817
  }
4818
+ var err = new Error(
4819
+ 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
4820
+ 'Use PropTypes.checkPropTypes() to call them. ' +
4821
+ 'Read more at http://fb.me/use-check-prop-types'
4822
+ );
4823
+ err.name = 'Invariant Violation';
4824
+ throw err;
4825
+ };
4826
+ shim.isRequired = shim;
4827
+ function getShim() {
4828
+ return shim;
4829
+ };
4830
+ // Important!
4831
+ // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.
4832
+ var ReactPropTypes = {
4833
+ array: shim,
4834
+ bool: shim,
4835
+ func: shim,
4836
+ number: shim,
4837
+ object: shim,
4838
+ string: shim,
4839
+ symbol: shim,
4840
 
4841
+ any: shim,
4842
+ arrayOf: getShim,
4843
+ element: shim,
4844
+ elementType: shim,
4845
+ instanceOf: getShim,
4846
+ node: shim,
4847
+ objectOf: getShim,
4848
+ oneOf: getShim,
4849
+ oneOfType: getShim,
4850
+ shape: getShim,
4851
+ exact: getShim,
4852
+
4853
+ checkPropTypes: emptyFunctionWithReset,
4854
+ resetWarningCache: emptyFunction
4855
+ };
4856
+
4857
+ ReactPropTypes.PropTypes = ReactPropTypes;
4858
+
4859
+ return ReactPropTypes;
4860
  };
4861
 
4862
 
4863
  /***/ }),
4864
+
4865
+ /***/ 139:
4866
+ /***/ (function(module, exports, __webpack_require__) {
4867
 
4868
  "use strict";
4869
+ /**
4870
+ * Copyright (c) 2013-present, Facebook, Inc.
4871
+ *
4872
+ * This source code is licensed under the MIT license found in the
4873
+ * LICENSE file in the root directory of this source tree.
4874
+ */
4875
 
 
 
 
 
 
 
4876
 
 
4877
 
4878
+ var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
 
4879
 
4880
+ module.exports = ReactPropTypesSecret;
 
 
 
4881
 
 
 
 
 
 
4882
 
4883
+ /***/ }),
 
4884
 
4885
+ /***/ 14:
4886
+ /***/ (function(module, exports, __webpack_require__) {
 
4887
 
4888
+ module.exports = __webpack_require__(137);
 
4889
 
 
 
 
4890
 
4891
+ /***/ }),
 
 
 
 
 
 
 
4892
 
4893
+ /***/ 140:
4894
+ /***/ (function(module, exports, __webpack_require__) {
4895
 
4896
+ var arrayLikeToArray = __webpack_require__(79);
 
 
 
 
 
 
4897
 
4898
+ function _arrayWithoutHoles(arr) {
4899
+ if (Array.isArray(arr)) return arrayLikeToArray(arr);
4900
+ }
4901
 
4902
+ module.exports = _arrayWithoutHoles;
 
 
 
 
 
 
 
 
 
4903
 
4904
+ /***/ }),
4905
 
4906
+ /***/ 141:
4907
+ /***/ (function(module, exports) {
 
 
 
 
4908
 
4909
+ function _iterableToArray(iter) {
4910
+ if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter);
4911
+ }
4912
 
4913
+ module.exports = _iterableToArray;
4914
 
4915
+ /***/ }),
 
4916
 
4917
+ /***/ 142:
4918
+ /***/ (function(module, exports) {
4919
 
4920
+ function _nonIterableSpread() {
4921
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
 
4922
  }
4923
 
4924
+ module.exports = _nonIterableSpread;
 
 
4925
 
4926
+ /***/ }),
 
4927
 
4928
+ /***/ 143:
4929
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
4930
 
4931
+ "use strict";
 
 
4932
 
 
4933
 
4934
+ var keys = Object.keys;
 
 
 
4935
 
4936
+ /**
4937
+ * Returns true if the two objects are shallow equal, or false otherwise.
4938
+ *
4939
+ * @param {import('.').ComparableObject} a First object to compare.
4940
+ * @param {import('.').ComparableObject} b Second object to compare.
4941
+ *
4942
+ * @return {boolean} Whether the two objects are shallow equal.
4943
+ */
4944
+ function isShallowEqualObjects( a, b ) {
4945
+ var aKeys, bKeys, i, key, aValue;
4946
+
4947
+ if ( a === b ) {
4948
+ return true;
4949
+ }
4950
+
4951
+ aKeys = keys( a );
4952
+ bKeys = keys( b );
4953
+
4954
+ if ( aKeys.length !== bKeys.length ) {
4955
+ return false;
4956
+ }
4957
+
4958
+ i = 0;
4959
+
4960
+ while ( i < aKeys.length ) {
4961
+ key = aKeys[ i ];
4962
+ aValue = a[ key ];
4963
+
4964
+ if (
4965
+ // In iterating only the keys of the first object after verifying
4966
+ // equal lengths, account for the case that an explicit `undefined`
4967
+ // value in the first is implicitly undefined in the second.
4968
+ //
4969
+ // Example: isShallowEqualObjects( { a: undefined }, { b: 5 } )
4970
+ ( aValue === undefined && ! b.hasOwnProperty( key ) ) ||
4971
+ aValue !== b[ key ]
4972
+ ) {
4973
+ return false;
4974
+ }
4975
+
4976
+ i++;
4977
+ }
4978
+
4979
+ return true;
4980
  }
4981
 
4982
+ module.exports = isShallowEqualObjects;
4983
 
 
 
4984
 
4985
+ /***/ }),
4986
 
4987
+ /***/ 144:
4988
+ /***/ (function(module, exports, __webpack_require__) {
4989
 
4990
+ "use strict";
4991
 
4992
 
4993
+ /**
4994
+ * Returns true if the two arrays are shallow equal, or false otherwise.
4995
+ *
4996
+ * @param {any[]} a First array to compare.
4997
+ * @param {any[]} b Second array to compare.
4998
+ *
4999
+ * @return {boolean} Whether the two arrays are shallow equal.
5000
+ */
5001
+ function isShallowEqualArrays( a, b ) {
5002
+ var i;
5003
 
5004
+ if ( a === b ) {
5005
+ return true;
5006
+ }
5007
 
5008
+ if ( a.length !== b.length ) {
5009
+ return false;
5010
+ }
5011
+
5012
+ for ( i = 0; i < a.length; i++ ) {
5013
+ if ( a[ i ] !== b[ i ] ) {
5014
+ return false;
5015
+ }
5016
+ }
5017
+
5018
+ return true;
5019
  }
5020
+
5021
+ module.exports = isShallowEqualArrays;
5022
+
5023
+
5024
+ /***/ }),
5025
+
5026
+ /***/ 15:
5027
+ /***/ (function(module, exports) {
5028
+
5029
+ function _defineProperties(target, props) {
5030
+ for (var i = 0; i < props.length; i++) {
5031
+ var descriptor = props[i];
5032
+ descriptor.enumerable = descriptor.enumerable || false;
5033
+ descriptor.configurable = true;
5034
+ if ("value" in descriptor) descriptor.writable = true;
5035
+ Object.defineProperty(target, descriptor.key, descriptor);
5036
+ }
5037
  }
5038
+
5039
+ function _createClass(Constructor, protoProps, staticProps) {
5040
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
5041
+ if (staticProps) _defineProperties(Constructor, staticProps);
5042
+ return Constructor;
5043
  }
5044
+
5045
+ module.exports = _createClass;
5046
+
5047
+ /***/ }),
5048
+
5049
+ /***/ 156:
5050
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
5051
+
5052
+ "use strict";
5053
+ /* unused harmony export isHorizontalEdge */
5054
+ /* unused harmony export isVerticalEdge */
5055
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getRectangleFromRange; });
5056
+ /* unused harmony export computeCaretRect */
5057
+ /* unused harmony export placeCaretAtHorizontalEdge */
5058
+ /* unused harmony export placeCaretAtVerticalEdge */
5059
+ /* unused harmony export isTextField */
5060
+ /* unused harmony export isNumberInput */
5061
+ /* unused harmony export documentHasTextSelection */
5062
+ /* unused harmony export documentHasUncollapsedSelection */
5063
+ /* unused harmony export documentHasSelection */
5064
+ /* unused harmony export isEntirelySelected */
5065
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return getScrollContainer; });
5066
+ /* unused harmony export getOffsetParent */
5067
+ /* unused harmony export replace */
5068
+ /* unused harmony export remove */
5069
+ /* unused harmony export insertAfter */
5070
+ /* unused harmony export unwrap */
5071
+ /* unused harmony export replaceTag */
5072
+ /* unused harmony export wrap */
5073
+ /* unused harmony export __unstableStripHTML */
5074
+ /* unused harmony export isEmpty */
5075
+ /* unused harmony export removeInvalidHTML */
5076
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
5077
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);
5078
+ /* harmony import */ var _phrasing_content__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(74);
5079
+ /**
5080
+ * External dependencies
5081
+ */
5082
+
5083
+ /**
5084
+ * Internal dependencies
5085
+ */
5086
+
5087
+
5088
+
5089
+ function getComputedStyle(node) {
5090
+ return node.ownerDocument.defaultView.getComputedStyle(node);
5091
  }
5092
+ /**
5093
+ * Returns true if the given selection object is in the forward direction, or
5094
+ * false otherwise.
5095
+ *
5096
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Node/compareDocumentPosition
5097
+ *
5098
+ * @param {Selection} selection Selection object to check.
5099
+ *
5100
+ * @return {boolean} Whether the selection is forward.
5101
+ */
5102
 
 
 
 
 
5103
 
5104
+ function isSelectionForward(selection) {
5105
+ var anchorNode = selection.anchorNode,
5106
+ focusNode = selection.focusNode,
5107
+ anchorOffset = selection.anchorOffset,
5108
+ focusOffset = selection.focusOffset;
5109
+ var position = anchorNode.compareDocumentPosition(focusNode); // Disable reason: `Node#compareDocumentPosition` returns a bitmask value,
5110
+ // so bitwise operators are intended.
5111
 
5112
+ /* eslint-disable no-bitwise */
5113
+ // Compare whether anchor node precedes focus node. If focus node (where
5114
+ // end of selection occurs) is after the anchor node, it is forward.
5115
+
5116
+ if (position & anchorNode.DOCUMENT_POSITION_PRECEDING) {
5117
+ return false;
5118
  }
5119
 
5120
+ if (position & anchorNode.DOCUMENT_POSITION_FOLLOWING) {
5121
+ return true;
5122
+ }
5123
+ /* eslint-enable no-bitwise */
5124
+ // `compareDocumentPosition` returns 0 when passed the same node, in which
5125
+ // case compare offsets.
 
 
 
 
 
 
 
 
 
5126
 
 
 
5127
 
5128
+ if (position === 0) {
5129
+ return anchorOffset <= focusOffset;
5130
+ } // This should never be reached, but return true as default case.
 
 
 
 
 
5131
 
5132
+
5133
+ return true;
5134
+ }
5135
+ /**
5136
+ * Check whether the selection is at the edge of the container. Checks for
5137
+ * horizontal position by default. Set `onlyVertical` to true to check only
5138
+ * vertically.
5139
+ *
5140
+ * @param {Element} container Focusable element.
5141
+ * @param {boolean} isReverse Set to true to check left, false to check right.
5142
+ * @param {boolean} onlyVertical Set to true to check only vertical position.
5143
+ *
5144
+ * @return {boolean} True if at the edge, false if not.
5145
+ */
5146
+
5147
+
5148
+ function isEdge(container, isReverse, onlyVertical) {
5149
+ if (Object(lodash__WEBPACK_IMPORTED_MODULE_0__["includes"])(['INPUT', 'TEXTAREA'], container.tagName)) {
5150
+ if (container.selectionStart !== container.selectionEnd) {
5151
+ return false;
5152
  }
5153
 
5154
+ if (isReverse) {
5155
+ return container.selectionStart === 0;
 
 
5156
  }
5157
 
5158
+ return container.value.length === container.selectionStart;
5159
  }
5160
 
5161
+ if (!container.isContentEditable) {
5162
+ return true;
 
 
 
 
 
 
5163
  }
5164
 
5165
+ var ownerDocument = container.ownerDocument;
5166
+ var defaultView = ownerDocument.defaultView;
5167
+ var selection = defaultView.getSelection();
5168
 
5169
+ if (!selection.rangeCount) {
5170
+ return false;
 
 
 
 
 
 
 
 
 
 
5171
  }
5172
 
5173
+ var originalRange = selection.getRangeAt(0);
5174
+ var range = originalRange.cloneRange();
5175
+ var isForward = isSelectionForward(selection);
5176
+ var isCollapsed = selection.isCollapsed; // Collapse in direction of selection.
 
 
 
 
5177
 
5178
+ if (!isCollapsed) {
5179
+ range.collapse(!isForward);
 
 
 
 
5180
  }
5181
 
5182
+ var rangeRect = getRectangleFromRange(range);
 
 
 
 
 
5183
 
5184
+ if (!rangeRect) {
5185
+ return false;
 
 
 
 
 
 
 
 
 
 
 
 
5186
  }
5187
 
5188
+ var computedStyle = getComputedStyle(container);
5189
+ var lineHeight = parseInt(computedStyle.lineHeight, 10) || 0; // Only consider the multiline selection at the edge if the direction is
5190
+ // towards the edge.
5191
 
5192
+ if (!isCollapsed && rangeRect.height > lineHeight && isForward === isReverse) {
5193
+ return false;
5194
+ }
5195
 
5196
+ var padding = parseInt(computedStyle["padding".concat(isReverse ? 'Top' : 'Bottom')], 10) || 0; // Calculate a buffer that is half the line height. In some browsers, the
5197
+ // selection rectangle may not fill the entire height of the line, so we add
5198
+ // 3/4 the line height to the selection rectangle to ensure that it is well
5199
+ // over its line boundary.
5200
 
5201
+ var buffer = 3 * parseInt(lineHeight, 10) / 4;
5202
+ var containerRect = container.getBoundingClientRect();
5203
+ var originalRangeRect = getRectangleFromRange(originalRange);
5204
+ var verticalEdge = isReverse ? containerRect.top + padding > originalRangeRect.top - buffer : containerRect.bottom - padding < originalRangeRect.bottom + buffer;
5205
+
5206
+ if (!verticalEdge) {
5207
+ return false;
5208
  }
5209
 
5210
+ if (onlyVertical) {
5211
+ return true;
5212
+ } // In the case of RTL scripts, the horizontal edge is at the opposite side.
 
5213
 
5214
+
5215
+ var direction = computedStyle.direction;
5216
+ var isReverseDir = direction === 'rtl' ? !isReverse : isReverse; // To calculate the horizontal position, we insert a test range and see if
5217
+ // this test range has the same horizontal position. This method proves to
5218
+ // be better than a DOM-based calculation, because it ignores empty text
5219
+ // nodes and a trailing line break element. In other words, we need to check
5220
+ // visual positioning, not DOM positioning.
5221
+
5222
+ var x = isReverseDir ? containerRect.left + 1 : containerRect.right - 1;
5223
+ var y = isReverse ? containerRect.top + buffer : containerRect.bottom - buffer;
5224
+ var testRange = hiddenCaretRangeFromPoint(ownerDocument, x, y, container);
5225
+
5226
+ if (!testRange) {
5227
+ return false;
5228
  }
5229
 
5230
+ var side = isReverseDir ? 'left' : 'right';
5231
+ var testRect = getRectangleFromRange(testRange); // Allow the position to be 1px off.
 
 
 
 
 
5232
 
5233
+ return Math.abs(testRect[side] - rangeRect[side]) <= 1;
 
 
5234
  }
5235
  /**
5236
+ * Check whether the selection is horizontally at the edge of the container.
5237
  *
5238
+ * @param {Element} container Focusable element.
5239
+ * @param {boolean} isReverse Set to true to check left, false for right.
5240
+ *
5241
+ * @return {boolean} True if at the horizontal edge, false if not.
5242
  */
5243
 
5244
+
5245
+ function isHorizontalEdge(container, isReverse) {
5246
+ return isEdge(container, isReverse);
 
5247
  }
5248
  /**
5249
+ * Check whether the selection is vertically at the edge of the container.
5250
+ *
5251
+ * @param {Element} container Focusable element.
5252
+ * @param {boolean} isReverse Set to true to check top, false for bottom.
5253
+ *
5254
+ * @return {boolean} True if at the vertical edge, false if not.
 
 
 
5255
  */
5256
 
5257
+ function isVerticalEdge(container, isReverse) {
5258
+ return isEdge(container, isReverse, true);
5259
  }
5260
  /**
5261
+ * Get the rectangle of a given Range.
5262
+ *
5263
+ * @param {Range} range The range.
5264
+ *
5265
+ * @return {DOMRect} The rectangle.
5266
  */
5267
 
5268
+ function getRectangleFromRange(range) {
5269
+ // For uncollapsed ranges, get the rectangle that bounds the contents of the
5270
+ // range; this a rectangle enclosing the union of the bounding rectangles
5271
+ // for all the elements in the range.
5272
+ if (!range.collapsed) {
5273
+ return range.getBoundingClientRect();
 
 
 
 
 
 
 
 
5274
  }
 
 
 
 
 
5275
 
5276
+ var _range = range,
5277
+ startContainer = _range.startContainer;
5278
+ var ownerDocument = startContainer.ownerDocument; // Correct invalid "BR" ranges. The cannot contain any children.
5279
 
5280
+ if (startContainer.nodeName === 'BR') {
5281
+ var parentNode = startContainer.parentNode;
5282
+ var index = Array.from(parentNode.childNodes).indexOf(startContainer);
5283
+ range = ownerDocument.createRange();
5284
+ range.setStart(parentNode, index);
5285
+ range.setEnd(parentNode, index);
5286
  }
5287
 
5288
+ var rect = range.getClientRects()[0]; // If the collapsed range starts (and therefore ends) at an element node,
5289
+ // `getClientRects` can be empty in some browsers. This can be resolved
5290
+ // by adding a temporary text node with zero-width space to the range.
5291
+ //
5292
+ // See: https://stackoverflow.com/a/6847328/995445
 
 
 
 
 
 
 
 
 
 
 
 
5293
 
5294
+ if (!rect) {
5295
+ var padNode = ownerDocument.createTextNode("\u200B"); // Do not modify the live range.
 
 
 
 
 
 
 
5296
 
5297
+ range = range.cloneRange();
5298
+ range.insertNode(padNode);
5299
+ rect = range.getClientRects()[0];
5300
+ padNode.parentNode.removeChild(padNode);
5301
  }
5302
 
5303
+ return rect;
5304
+ }
5305
+ /**
5306
+ * Get the rectangle for the selection in a container.
5307
+ *
5308
+ * @param {Window} win The window of the selection.
5309
+ *
5310
+ * @return {?DOMRect} The rectangle.
5311
+ */
5312
 
5313
+ function computeCaretRect(win) {
5314
+ var selection = win.getSelection();
5315
+ var range = selection.rangeCount ? selection.getRangeAt(0) : null;
5316
 
5317
+ if (!range) {
5318
+ return;
5319
  }
5320
 
5321
+ return getRectangleFromRange(range);
5322
+ }
5323
+ /**
5324
+ * Places the caret at start or end of a given element.
5325
+ *
5326
+ * @param {Element} container Focusable element.
5327
+ * @param {boolean} isReverse True for end, false for start.
5328
+ */
5329
 
5330
+ function placeCaretAtHorizontalEdge(container, isReverse) {
5331
+ if (!container) {
5332
+ return;
5333
  }
5334
 
5335
+ if (Object(lodash__WEBPACK_IMPORTED_MODULE_0__["includes"])(['INPUT', 'TEXTAREA'], container.tagName)) {
5336
+ container.focus();
5337
 
5338
+ if (isReverse) {
5339
+ container.selectionStart = container.value.length;
5340
+ container.selectionEnd = container.value.length;
 
5341
  } else {
5342
+ container.selectionStart = 0;
5343
+ container.selectionEnd = 0;
 
 
 
 
 
 
 
 
 
5344
  }
 
 
 
 
 
 
 
 
 
 
 
 
5345
 
5346
+ return;
 
 
 
5347
  }
5348
 
5349
+ container.focus();
 
5350
 
5351
+ if (!container.isContentEditable) {
5352
+ return;
5353
+ } // Select on extent child of the container, not the container itself. This
5354
+ // avoids the selection always being `endOffset` of 1 when placed at end,
5355
+ // where `startContainer`, `endContainer` would always be container itself.
5356
 
 
 
 
 
 
 
 
 
 
5357
 
5358
+ var rangeTarget = container[isReverse ? 'lastChild' : 'firstChild']; // If no range target, it implies that the container is empty. Focusing is
5359
+ // sufficient for caret to be placed correctly.
 
 
 
5360
 
5361
+ if (!rangeTarget) {
5362
+ return;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5363
  }
5364
 
5365
+ var ownerDocument = container.ownerDocument;
5366
+ var defaultView = ownerDocument.defaultView;
5367
+ var selection = defaultView.getSelection();
5368
+ var range = ownerDocument.createRange();
5369
+ range.selectNodeContents(rangeTarget);
5370
+ range.collapse(!isReverse);
5371
+ selection.removeAllRanges();
5372
+ selection.addRange(range);
5373
+ }
5374
+ /**
5375
+ * Polyfill.
5376
+ * Get a collapsed range for a given point.
5377
+ *
5378
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/caretRangeFromPoint
5379
+ *
5380
+ * @param {Document} doc The document of the range.
5381
+ * @param {number} x Horizontal position within the current viewport.
5382
+ * @param {number} y Vertical position within the current viewport.
5383
+ *
5384
+ * @return {?Range} The best range for the given point.
5385
+ */
5386
 
5387
+ function caretRangeFromPoint(doc, x, y) {
5388
+ if (doc.caretRangeFromPoint) {
5389
+ return doc.caretRangeFromPoint(x, y);
 
 
 
 
 
 
 
 
 
 
 
 
5390
  }
5391
 
5392
+ if (!doc.caretPositionFromPoint) {
5393
+ return null;
5394
  }
5395
 
5396
+ var point = doc.caretPositionFromPoint(x, y); // If x or y are negative, outside viewport, or there is no text entry node.
5397
+ // https://developer.mozilla.org/en-US/docs/Web/API/Document/caretRangeFromPoint
 
5398
 
5399
+ if (!point) {
5400
+ return null;
5401
  }
5402
 
5403
+ var range = doc.createRange();
5404
+ range.setStart(point.offsetNode, point.offset);
5405
+ range.collapse(true);
5406
+ return range;
5407
+ }
5408
+ /**
5409
+ * Get a collapsed range for a given point.
5410
+ * Gives the container a temporary high z-index (above any UI).
5411
+ * This is preferred over getting the UI nodes and set styles there.
5412
+ *
5413
+ * @param {Document} doc The document of the range.
5414
+ * @param {number} x Horizontal position within the current viewport.
5415
+ * @param {number} y Vertical position within the current viewport.
5416
+ * @param {Element} container Container in which the range is expected to be found.
5417
+ *
5418
+ * @return {?Range} The best range for the given point.
5419
+ */
5420
 
 
 
5421
 
5422
+ function hiddenCaretRangeFromPoint(doc, x, y, container) {
5423
+ var originalZIndex = container.style.zIndex;
5424
+ var originalPosition = container.style.position; // A z-index only works if the element position is not static.
 
 
 
 
 
5425
 
5426
+ container.style.zIndex = '10000';
5427
+ container.style.position = 'relative';
5428
+ var range = caretRangeFromPoint(doc, x, y);
5429
+ container.style.zIndex = originalZIndex;
5430
+ container.style.position = originalPosition;
5431
+ return range;
5432
+ }
5433
+ /**
5434
+ * Places the caret at the top or bottom of a given element.
5435
+ *
5436
+ * @param {Element} container Focusable element.
5437
+ * @param {boolean} isReverse True for bottom, false for top.
5438
+ * @param {DOMRect} [rect] The rectangle to position the caret with.
5439
+ * @param {boolean} [mayUseScroll=true] True to allow scrolling, false to disallow.
5440
+ */
5441
 
 
 
 
 
5442
 
5443
+ function placeCaretAtVerticalEdge(container, isReverse, rect) {
5444
+ var mayUseScroll = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
5445
 
5446
+ if (!container) {
5447
+ return;
5448
+ }
 
5449
 
5450
+ if (!rect || !container.isContentEditable) {
5451
+ placeCaretAtHorizontalEdge(container, isReverse);
5452
+ return;
5453
+ } // Offset by a buffer half the height of the caret rect. This is needed
5454
+ // because caretRangeFromPoint may default to the end of the selection if
5455
+ // offset is too close to the edge. It's unclear how to precisely calculate
5456
+ // this threshold; it may be the padded area of some combination of line
5457
+ // height, caret height, and font size. The buffer offset is effectively
5458
+ // equivalent to a point at half the height of a line of text.
5459
+
5460
+
5461
+ var buffer = rect.height / 2;
5462
+ var editableRect = container.getBoundingClientRect();
5463
+ var x = rect.left;
5464
+ var y = isReverse ? editableRect.bottom - buffer : editableRect.top + buffer;
5465
+ var ownerDocument = container.ownerDocument;
5466
+ var defaultView = ownerDocument.defaultView;
5467
+ var range = hiddenCaretRangeFromPoint(ownerDocument, x, y, container);
5468
+
5469
+ if (!range || !container.contains(range.startContainer)) {
5470
+ if (mayUseScroll && (!range || !range.startContainer || !range.startContainer.contains(container))) {
5471
+ // Might be out of view.
5472
+ // Easier than attempting to calculate manually.
5473
+ container.scrollIntoView(isReverse);
5474
+ placeCaretAtVerticalEdge(container, isReverse, rect, false);
5475
+ return;
5476
+ }
5477
 
5478
+ placeCaretAtHorizontalEdge(container, isReverse);
5479
+ return;
5480
  }
5481
 
5482
+ var selection = defaultView.getSelection();
5483
+ selection.removeAllRanges();
5484
+ selection.addRange(range);
5485
+ container.focus(); // Editable was already focussed, it goes back to old range...
5486
+ // This fixes it.
 
 
 
5487
 
5488
+ selection.removeAllRanges();
5489
+ selection.addRange(range);
 
 
 
 
 
 
 
 
 
 
 
 
5490
  }
5491
+ /**
5492
+ * Check whether the given element is a text field, where text field is defined
5493
+ * by the ability to select within the input, or that it is contenteditable.
5494
+ *
5495
+ * See: https://html.spec.whatwg.org/#textFieldSelection
5496
+ *
5497
+ * @param {HTMLElement} element The HTML element.
5498
+ *
5499
+ * @return {boolean} True if the element is an text field, false if not.
5500
+ */
5501
 
5502
+ function isTextField(element) {
5503
+ var nodeName = element.nodeName,
5504
+ contentEditable = element.contentEditable;
5505
+ var nonTextInputs = ['button', 'checkbox', 'hidden', 'file', 'radio', 'image', 'range', 'reset', 'submit', 'number'];
5506
+ return nodeName === 'INPUT' && !nonTextInputs.includes(element.type) || nodeName === 'TEXTAREA' || contentEditable === 'true';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5507
  }
5508
+ /**
5509
+ * Check whether the given element is an input field of type number
5510
+ * and has a valueAsNumber
5511
+ *
5512
+ * @param {HTMLElement} element The HTML element.
5513
+ *
5514
+ * @return {boolean} True if the element is input and holds a number.
5515
+ */
5516
 
5517
+ function isNumberInput(element) {
5518
+ var nodeName = element.nodeName,
5519
+ type = element.type,
5520
+ valueAsNumber = element.valueAsNumber;
5521
+ return nodeName === 'INPUT' && type === 'number' && !!valueAsNumber;
 
5522
  }
5523
+ /**
5524
+ * Check whether the current document has selected text. This applies to ranges
5525
+ * of text in the document, and not selection inside <input> and <textarea>
5526
+ * elements.
5527
+ *
5528
+ * See: https://developer.mozilla.org/en-US/docs/Web/API/Window/getSelection#Related_objects.
5529
+ *
5530
+ * @param {Document} doc The document to check.
5531
+ *
5532
+ * @return {boolean} True if there is selection, false if not.
5533
+ */
5534
 
5535
+ function documentHasTextSelection(doc) {
5536
+ var selection = doc.defaultView.getSelection();
5537
+ var range = selection.rangeCount ? selection.getRangeAt(0) : null;
5538
+ return range && !range.collapsed;
5539
  }
5540
+ /**
5541
+ * Check whether the given element, assumed an input field or textarea,
5542
+ * contains a (uncollapsed) selection of text.
5543
+ *
5544
+ * Note: this is perhaps an abuse of the term "selection", since these elements
5545
+ * manage selection differently and aren't covered by Selection#collapsed.
5546
+ *
5547
+ * See: https://developer.mozilla.org/en-US/docs/Web/API/Window/getSelection#Related_objects.
5548
+ *
5549
+ * @param {HTMLElement} element The HTML element.
5550
+ *
5551
+ * @return {boolean} Whether the input/textareaa element has some "selection".
5552
+ */
5553
 
5554
+ function inputFieldHasUncollapsedSelection(element) {
5555
+ if (!isTextField(element) && !isNumberInput(element)) {
5556
+ return false;
5557
+ }
5558
 
5559
+ try {
5560
+ var selectionStart = element.selectionStart,
5561
+ selectionEnd = element.selectionEnd;
5562
+ return selectionStart !== null && selectionStart !== selectionEnd;
5563
+ } catch (error) {
5564
+ // Safari throws an exception when trying to get `selectionStart`
5565
+ // on non-text <input> elements (which, understandably, don't
5566
+ // have the text selection API). We catch this via a try/catch
5567
+ // block, as opposed to a more explicit check of the element's
5568
+ // input types, because of Safari's non-standard behavior. This
5569
+ // also means we don't have to worry about the list of input
5570
+ // types that support `selectionStart` changing as the HTML spec
5571
+ // evolves over time.
5572
+ return false;
5573
  }
5574
+ }
5575
+ /**
5576
+ * Check whether the current document has any sort of selection. This includes
5577
+ * ranges of text across elements and any selection inside <input> and
5578
+ * <textarea> elements.
5579
+ *
5580
+ * @param {Document} doc The document to check.
5581
+ *
5582
+ * @return {boolean} Whether there is any sort of "selection" in the document.
5583
+ */
5584
 
 
 
 
 
 
 
 
 
 
 
 
 
5585
 
5586
+ function documentHasUncollapsedSelection(doc) {
5587
+ return documentHasTextSelection(doc) || inputFieldHasUncollapsedSelection(doc.activeElement);
5588
+ }
5589
+ /**
5590
+ * Check whether the current document has a selection. This checks for both
5591
+ * focus in an input field and general text selection.
5592
+ *
5593
+ * @param {Document} doc The document to check.
5594
+ *
5595
+ * @return {boolean} True if there is selection, false if not.
5596
+ */
5597
+
5598
+ function documentHasSelection(doc) {
5599
+ return isTextField(doc.activeElement) || isNumberInput(doc.activeElement) || documentHasTextSelection(doc);
5600
+ }
5601
+ /**
5602
+ * Check whether the contents of the element have been entirely selected.
5603
+ * Returns true if there is no possibility of selection.
5604
+ *
5605
+ * @param {Element} element The element to check.
5606
+ *
5607
+ * @return {boolean} True if entirely selected, false if not.
5608
+ */
5609
+
5610
+ function isEntirelySelected(element) {
5611
+ if (Object(lodash__WEBPACK_IMPORTED_MODULE_0__["includes"])(['INPUT', 'TEXTAREA'], element.nodeName)) {
5612
+ return element.selectionStart === 0 && element.value.length === element.selectionEnd;
5613
  }
5614
 
5615
+ if (!element.isContentEditable) {
5616
+ return true;
5617
+ }
5618
 
5619
+ var ownerDocument = element.ownerDocument;
5620
+ var defaultView = ownerDocument.defaultView;
5621
+ var selection = defaultView.getSelection();
5622
+ var range = selection.rangeCount ? selection.getRangeAt(0) : null;
5623
 
5624
+ if (!range) {
5625
+ return true;
5626
  }
5627
 
5628
+ var startContainer = range.startContainer,
5629
+ endContainer = range.endContainer,
5630
+ startOffset = range.startOffset,
5631
+ endOffset = range.endOffset;
5632
 
5633
+ if (startContainer === element && endContainer === element && startOffset === 0 && endOffset === element.childNodes.length) {
5634
+ return true;
5635
  }
5636
 
5637
+ var lastChild = element.lastChild;
5638
+ var lastChildContentLength = lastChild.nodeType === lastChild.TEXT_NODE ? lastChild.data.length : lastChild.childNodes.length;
5639
+ return startContainer === element.firstChild && endContainer === element.lastChild && startOffset === 0 && endOffset === lastChildContentLength;
5640
+ }
5641
+ /**
5642
+ * Given a DOM node, finds the closest scrollable container node.
5643
+ *
5644
+ * @param {Element} node Node from which to start.
5645
+ *
5646
+ * @return {?Element} Scrollable container node, if found.
5647
+ */
5648
 
5649
+ function getScrollContainer(node) {
5650
+ if (!node) {
5651
+ return;
5652
+ } // Scrollable if scrollable height exceeds displayed...
 
 
 
5653
 
 
5654
 
5655
+ if (node.scrollHeight > node.clientHeight) {
5656
+ // ...except when overflow is defined to be hidden or visible
5657
+ var _getComputedStyle = getComputedStyle(node),
5658
+ overflowY = _getComputedStyle.overflowY;
5659
+
5660
+ if (/(auto|scroll)/.test(overflowY)) {
5661
+ return node;
5662
  }
5663
+ } // Continue traversing
5664
 
5665
+
5666
+ return getScrollContainer(node.parentNode);
5667
+ }
5668
+ /**
5669
+ * Returns the closest positioned element, or null under any of the conditions
5670
+ * of the offsetParent specification. Unlike offsetParent, this function is not
5671
+ * limited to HTMLElement and accepts any Node (e.g. Node.TEXT_NODE).
5672
+ *
5673
+ * @see https://drafts.csswg.org/cssom-view/#dom-htmlelement-offsetparent
5674
+ *
5675
+ * @param {Node} node Node from which to find offset parent.
5676
+ *
5677
+ * @return {?Node} Offset parent.
5678
+ */
5679
+
5680
+ function getOffsetParent(node) {
5681
+ // Cannot retrieve computed style or offset parent only anything other than
5682
+ // an element node, so find the closest element node.
5683
+ var closestElement;
5684
+
5685
+ while (closestElement = node.parentNode) {
5686
+ if (closestElement.nodeType === closestElement.ELEMENT_NODE) {
5687
+ break;
5688
  }
5689
  }
5690
 
5691
+ if (!closestElement) {
5692
+ return null;
5693
+ } // If the closest element is already positioned, return it, as offsetParent
5694
+ // does not otherwise consider the node itself.
5695
 
 
 
 
 
 
5696
 
5697
+ if (getComputedStyle(closestElement).position !== 'static') {
5698
+ return closestElement;
5699
+ }
5700
+
5701
+ return closestElement.offsetParent;
5702
+ }
5703
+ /**
5704
+ * Given two DOM nodes, replaces the former with the latter in the DOM.
5705
+ *
5706
+ * @param {Element} processedNode Node to be removed.
5707
+ * @param {Element} newNode Node to be inserted in its place.
5708
+ * @return {void}
5709
+ */
5710
 
5711
+ function replace(processedNode, newNode) {
5712
+ insertAfter(newNode, processedNode.parentNode);
5713
+ remove(processedNode);
5714
+ }
5715
+ /**
5716
+ * Given a DOM node, removes it from the DOM.
5717
+ *
5718
+ * @param {Element} node Node to be removed.
5719
+ * @return {void}
5720
+ */
5721
 
5722
+ function remove(node) {
5723
+ node.parentNode.removeChild(node);
5724
+ }
5725
+ /**
5726
+ * Given two DOM nodes, inserts the former in the DOM as the next sibling of
5727
+ * the latter.
5728
+ *
5729
+ * @param {Element} newNode Node to be inserted.
5730
+ * @param {Element} referenceNode Node after which to perform the insertion.
5731
+ * @return {void}
5732
+ */
5733
 
5734
+ function insertAfter(newNode, referenceNode) {
5735
+ referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
5736
+ }
5737
+ /**
5738
+ * Unwrap the given node. This means any child nodes are moved to the parent.
5739
+ *
5740
+ * @param {Node} node The node to unwrap.
5741
+ *
5742
+ * @return {void}
5743
+ */
5744
 
5745
+ function unwrap(node) {
5746
+ var parent = node.parentNode;
 
5747
 
5748
+ while (node.firstChild) {
5749
+ parent.insertBefore(node.firstChild, node);
5750
  }
5751
 
5752
+ parent.removeChild(node);
5753
+ }
5754
+ /**
5755
+ * Replaces the given node with a new node with the given tag name.
5756
+ *
5757
+ * @param {Element} node The node to replace
5758
+ * @param {string} tagName The new tag name.
5759
+ *
5760
+ * @return {Element} The new node.
5761
+ */
5762
 
5763
+ function replaceTag(node, tagName) {
5764
+ var newNode = node.ownerDocument.createElement(tagName);
5765
+
5766
+ while (node.firstChild) {
5767
+ newNode.appendChild(node.firstChild);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5768
  }
5769
 
5770
+ node.parentNode.replaceChild(newNode, node);
5771
+ return newNode;
5772
+ }
5773
+ /**
5774
+ * Wraps the given node with a new node with the given tag name.
5775
+ *
5776
+ * @param {Element} newNode The node to insert.
5777
+ * @param {Element} referenceNode The node to wrap.
5778
+ */
5779
 
5780
+ function wrap(newNode, referenceNode) {
5781
+ referenceNode.parentNode.insertBefore(newNode, referenceNode);
5782
+ newNode.appendChild(referenceNode);
5783
+ }
5784
+ /**
5785
+ * Removes any HTML tags from the provided string.
5786
+ *
5787
+ * @param {string} html The string containing html.
5788
+ *
5789
+ * @return {string} The text content with any html removed.
5790
+ */
5791
 
5792
+ function __unstableStripHTML(html) {
5793
+ var document = new window.DOMParser().parseFromString(html, 'text/html');
5794
+ return document.body.textContent || '';
5795
+ }
5796
+ /**
5797
+ * Given a schema, unwraps or removes nodes, attributes and classes on a node
5798
+ * list.
5799
+ *
5800
+ * @param {NodeList} nodeList The nodeList to filter.
5801
+ * @param {Document} doc The document of the nodeList.
5802
+ * @param {Object} schema An array of functions that can mutate with the provided node.
5803
+ * @param {Object} inline Whether to clean for inline mode.
5804
+ */
5805
 
5806
+ function cleanNodeList(nodeList, doc, schema, inline) {
5807
+ Array.from(nodeList).forEach(function (node) {
5808
+ var tag = node.nodeName.toLowerCase(); // It's a valid child, if the tag exists in the schema without an isMatch
5809
+ // function, or with an isMatch function that matches the node.
5810
+
5811
+ if (schema.hasOwnProperty(tag) && (!schema[tag].isMatch || schema[tag].isMatch(node))) {
5812
+ if (node.nodeType === node.ELEMENT_NODE) {
5813
+ var _schema$tag = schema[tag],
5814
+ _schema$tag$attribute = _schema$tag.attributes,
5815
+ attributes = _schema$tag$attribute === void 0 ? [] : _schema$tag$attribute,
5816
+ _schema$tag$classes = _schema$tag.classes,
5817
+ classes = _schema$tag$classes === void 0 ? [] : _schema$tag$classes,
5818
+ children = _schema$tag.children,
5819
+ _schema$tag$require = _schema$tag.require,
5820
+ require = _schema$tag$require === void 0 ? [] : _schema$tag$require,
5821
+ allowEmpty = _schema$tag.allowEmpty; // If the node is empty and it's supposed to have children,
5822
+ // remove the node.
5823
+
5824
+
5825
+ if (children && !allowEmpty && isEmpty(node)) {
5826
+ remove(node);
5827
+ return;
5828
+ }
5829
 
5830
+ if (node.hasAttributes()) {
5831
+ // Strip invalid attributes.
5832
+ Array.from(node.attributes).forEach(function (_ref) {
5833
+ var name = _ref.name;
5834
 
5835
+ if (name !== 'class' && !Object(lodash__WEBPACK_IMPORTED_MODULE_0__["includes"])(attributes, name)) {
5836
+ node.removeAttribute(name);
5837
+ }
5838
+ }); // Strip invalid classes.
5839
+ // In jsdom-jscore, 'node.classList' can be undefined.
5840
+ // TODO: Explore patching this in jsdom-jscore.
5841
+
5842
+ if (node.classList && node.classList.length) {
5843
+ var mattchers = classes.map(function (item) {
5844
+ if (typeof item === 'string') {
5845
+ return function (className) {
5846
+ return className === item;
5847
+ };
5848
+ } else if (item instanceof RegExp) {
5849
+ return function (className) {
5850
+ return item.test(className);
5851
+ };
5852
+ }
5853
 
5854
+ return lodash__WEBPACK_IMPORTED_MODULE_0__["noop"];
5855
+ });
5856
+ Array.from(node.classList).forEach(function (name) {
5857
+ if (!mattchers.some(function (isMatch) {
5858
+ return isMatch(name);
5859
+ })) {
5860
+ node.classList.remove(name);
5861
+ }
5862
+ });
5863
 
5864
+ if (!node.classList.length) {
5865
+ node.removeAttribute('class');
5866
+ }
5867
+ }
5868
+ }
5869
 
5870
+ if (node.hasChildNodes()) {
5871
+ // Do not filter any content.
5872
+ if (children === '*') {
5873
+ return;
5874
+ } // Continue if the node is supposed to have children.
5875
+
5876
+
5877
+ if (children) {
5878
+ // If a parent requires certain children, but it does
5879
+ // not have them, drop the parent and continue.
5880
+ if (require.length && !node.querySelector(require.join(','))) {
5881
+ cleanNodeList(node.childNodes, doc, schema, inline);
5882
+ unwrap(node); // If the node is at the top, phrasing content, and
5883
+ // contains children that are block content, unwrap
5884
+ // the node because it is invalid.
5885
+ } else if (node.parentNode.nodeName === 'BODY' && Object(_phrasing_content__WEBPACK_IMPORTED_MODULE_1__[/* isPhrasingContent */ "a"])(node)) {
5886
+ cleanNodeList(node.childNodes, doc, schema, inline);
5887
+
5888
+ if (Array.from(node.childNodes).some(function (child) {
5889
+ return !Object(_phrasing_content__WEBPACK_IMPORTED_MODULE_1__[/* isPhrasingContent */ "a"])(child);
5890
+ })) {
5891
+ unwrap(node);
5892
+ }
5893
+ } else {
5894
+ cleanNodeList(node.childNodes, doc, children, inline);
5895
+ } // Remove children if the node is not supposed to have any.
5896
 
5897
+ } else {
5898
+ while (node.firstChild) {
5899
+ remove(node.firstChild);
5900
+ }
5901
+ }
5902
+ }
5903
+ } // Invalid child. Continue with schema at the same place and unwrap.
5904
 
5905
+ } else {
5906
+ cleanNodeList(node.childNodes, doc, schema, inline); // For inline mode, insert a line break when unwrapping nodes that
5907
+ // are not phrasing content.
 
5908
 
5909
+ if (inline && !Object(_phrasing_content__WEBPACK_IMPORTED_MODULE_1__[/* isPhrasingContent */ "a"])(node) && node.nextElementSibling) {
5910
+ insertAfter(doc.createElement('br'), node);
5911
+ }
5912
 
5913
+ unwrap(node);
 
 
5914
  }
5915
+ });
5916
+ }
5917
+ /**
5918
+ * Recursively checks if an element is empty. An element is not empty if it
5919
+ * contains text or contains elements with attributes such as images.
5920
+ *
5921
+ * @param {Element} element The element to check.
5922
+ *
5923
+ * @return {boolean} Wether or not the element is empty.
5924
+ */
5925
 
 
 
 
 
 
5926
 
5927
+ function isEmpty(element) {
5928
+ if (!element.hasChildNodes()) {
5929
+ return true;
5930
  }
5931
 
5932
+ return Array.from(element.childNodes).every(function (node) {
5933
+ if (node.nodeType === node.TEXT_NODE) {
5934
+ return !node.nodeValue.trim();
5935
+ }
 
 
 
 
5936
 
5937
+ if (node.nodeType === node.ELEMENT_NODE) {
5938
+ if (node.nodeName === 'BR') {
5939
+ return true;
5940
+ } else if (node.hasAttributes()) {
5941
+ return false;
5942
+ }
 
 
 
 
 
 
 
 
 
5943
 
5944
+ return isEmpty(node);
5945
+ }
5946
+
5947
+ return true;
5948
+ });
5949
  }
5950
  /**
5951
+ * Given a schema, unwraps or removes nodes, attributes and classes on HTML.
5952
+ *
5953
+ * @param {string} HTML The HTML to clean up.
5954
+ * @param {Object} schema Schema for the HTML.
5955
+ * @param {Object} inline Whether to clean for inline mode.
5956
+ *
5957
+ * @return {string} The cleaned up HTML.
5958
  */
5959
 
5960
+ function removeInvalidHTML(HTML, schema, inline) {
5961
+ var doc = document.implementation.createHTMLDocument('');
5962
+ doc.body.innerHTML = HTML;
5963
+ cleanNodeList(doc.body.childNodes, doc, schema, inline);
5964
+ return doc.body.innerHTML;
5965
+ }
5966
+ //# sourceMappingURL=dom.js.map
5967
 
5968
+ /***/ }),
 
 
 
5969
 
5970
+ /***/ 159:
5971
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
 
 
5972
 
5973
+ "use strict";
5974
+ /* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21);
5975
+ /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22);
5976
+ /* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(23);
5977
+ /* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(24);
5978
+ /* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10);
5979
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(0);
5980
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__);
5981
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(2);
5982
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_6__);
5983
+ /* harmony import */ var _popover__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(136);
5984
+ /* harmony import */ var _shortcut__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(135);
5985
 
 
 
 
5986
 
 
 
 
5987
 
 
 
 
 
5988
 
 
5989
 
 
 
 
 
 
 
 
 
 
5990
 
 
 
 
 
 
5991
 
5992
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(this, result); }; }
 
 
 
 
 
 
 
5993
 
5994
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 
 
 
 
 
 
 
 
 
 
 
 
5995
 
5996
+ /**
5997
+ * External dependencies
5998
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5999
 
6000
+ /**
6001
+ * WordPress dependencies
6002
+ */
6003
 
 
 
 
6004
 
6005
+ /**
6006
+ * Internal dependencies
6007
+ */
 
6008
 
 
 
 
 
6009
 
 
 
6010
 
6011
+ /**
6012
+ * Time over children to wait before showing tooltip
6013
+ *
6014
+ * @type {number}
6015
+ */
6016
+
6017
+ var TOOLTIP_DELAY = 700;
6018
+
6019
+ var Tooltip = /*#__PURE__*/function (_Component) {
6020
+ Object(_babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(Tooltip, _Component);
6021
+
6022
+ var _super = _createSuper(Tooltip);
6023
+
6024
+ function Tooltip() {
6025
+ var _this;
6026
+
6027
+ Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(this, Tooltip);
6028
+
6029
+ _this = _super.apply(this, arguments);
6030
+ _this.delayedSetIsOver = Object(lodash__WEBPACK_IMPORTED_MODULE_6__["debounce"])(function (isOver) {
6031
+ return _this.setState({
6032
+ isOver: isOver
6033
+ });
6034
+ }, TOOLTIP_DELAY);
6035
+ /**
6036
+ * Prebound `isInMouseDown` handler, created as a constant reference to
6037
+ * assure ability to remove in component unmount.
6038
+ *
6039
+ * @type {Function}
6040
+ */
6041
+
6042
+ _this.cancelIsMouseDown = _this.createSetIsMouseDown(false);
6043
+ /**
6044
+ * Whether a the mouse is currently pressed, used in determining whether
6045
+ * to handle a focus event as displaying the tooltip immediately.
6046
+ *
6047
+ * @type {boolean}
6048
+ */
6049
+
6050
+ _this.isInMouseDown = false;
6051
+ _this.state = {
6052
+ isOver: false
6053
+ };
6054
+ return _this;
6055
  }
6056
 
6057
+ Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(Tooltip, [{
6058
+ key: "componentWillUnmount",
6059
+ value: function componentWillUnmount() {
6060
+ this.delayedSetIsOver.cancel();
6061
+ document.removeEventListener('mouseup', this.cancelIsMouseDown);
6062
+ }
6063
+ }, {
6064
+ key: "emitToChild",
6065
+ value: function emitToChild(eventName, event) {
6066
+ var children = this.props.children;
6067
+
6068
+ if (_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Children"].count(children) !== 1) {
6069
+ return;
6070
+ }
6071
+
6072
+ var child = _wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Children"].only(children);
 
 
6073
 
6074
+ if (typeof child.props[eventName] === 'function') {
6075
+ child.props[eventName](event);
6076
+ }
6077
+ }
6078
+ }, {
6079
+ key: "createToggleIsOver",
6080
+ value: function createToggleIsOver(eventName, isDelayed) {
6081
+ var _this2 = this;
6082
 
6083
+ return function (event) {
6084
+ // Preserve original child callback behavior
6085
+ _this2.emitToChild(eventName, event); // Mouse events behave unreliably in React for disabled elements,
6086
+ // firing on mouseenter but not mouseleave. Further, the default
6087
+ // behavior for disabled elements in some browsers is to ignore
6088
+ // mouse events. Don't bother trying to to handle them.
6089
+ //
6090
+ // See: https://github.com/facebook/react/issues/4251
6091
 
6092
 
6093
+ if (event.currentTarget.disabled) {
6094
+ return;
6095
+ } // A focus event will occur as a result of a mouse click, but it
6096
+ // should be disambiguated between interacting with the button and
6097
+ // using an explicit focus shift as a cue to display the tooltip.
6098
 
 
6099
 
6100
+ if ('focus' === event.type && _this2.isInMouseDown) {
6101
+ return;
6102
+ } // Needed in case unsetting is over while delayed set pending, i.e.
6103
+ // quickly blur/mouseleave before delayedSetIsOver is called
6104
+
6105
+
6106
+ _this2.delayedSetIsOver.cancel();
6107
+
6108
+ var isOver = Object(lodash__WEBPACK_IMPORTED_MODULE_6__["includes"])(['focus', 'mouseenter'], event.type);
6109
+
6110
+ if (isOver === _this2.state.isOver) {
6111
+ return;
6112
+ }
6113
+
6114
+ if (isDelayed) {
6115
+ _this2.delayedSetIsOver(isOver);
6116
+ } else {
6117
+ _this2.setState({
6118
+ isOver: isOver
6119
+ });
6120
+ }
6121
+ };
6122
+ }
6123
+ /**
6124
+ * Creates an event callback to handle assignment of the `isInMouseDown`
6125
+ * instance property in response to a `mousedown` or `mouseup` event.
6126
+ *
6127
+ * @param {boolean} isMouseDown Whether handler is to be created for the
6128
+ * `mousedown` event, as opposed to `mouseup`.
6129
+ *
6130
+ * @return {Function} Event callback handler.
6131
+ */
6132
+
6133
+ }, {
6134
+ key: "createSetIsMouseDown",
6135
+ value: function createSetIsMouseDown(isMouseDown) {
6136
+ var _this3 = this;
6137
+
6138
+ return function (event) {
6139
+ // Preserve original child callback behavior
6140
+ _this3.emitToChild(isMouseDown ? 'onMouseDown' : 'onMouseUp', event); // On mouse down, the next `mouseup` should revert the value of the
6141
+ // instance property and remove its own event handler. The bind is
6142
+ // made on the document since the `mouseup` might not occur within
6143
+ // the bounds of the element.
6144
+
6145
+
6146
+ document[isMouseDown ? 'addEventListener' : 'removeEventListener']('mouseup', _this3.cancelIsMouseDown);
6147
+ _this3.isInMouseDown = isMouseDown;
6148
+ };
6149
+ }
6150
+ }, {
6151
+ key: "render",
6152
+ value: function render() {
6153
+ var _this$props = this.props,
6154
+ children = _this$props.children,
6155
+ position = _this$props.position,
6156
+ text = _this$props.text,
6157
+ shortcut = _this$props.shortcut;
6158
+
6159
+ if (_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Children"].count(children) !== 1) {
6160
+ if (false) {}
6161
+
6162
+ return children;
6163
  }
6164
+
6165
+ var child = _wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Children"].only(children);
6166
+ var isOver = this.state.isOver;
6167
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["cloneElement"])(child, {
6168
+ onMouseEnter: this.createToggleIsOver('onMouseEnter', true),
6169
+ onMouseLeave: this.createToggleIsOver('onMouseLeave'),
6170
+ onClick: this.createToggleIsOver('onClick'),
6171
+ onFocus: this.createToggleIsOver('onFocus'),
6172
+ onBlur: this.createToggleIsOver('onBlur'),
6173
+ onMouseDown: this.createSetIsMouseDown(true),
6174
+ children: Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["concatChildren"])(child.props.children, isOver && Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["createElement"])(_popover__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"], {
6175
+ focusOnMount: false,
6176
+ position: position,
6177
+ className: "components-tooltip",
6178
+ "aria-hidden": "true",
6179
+ animate: false,
6180
+ noArrow: true
6181
+ }, text, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["createElement"])(_shortcut__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"], {
6182
+ className: "components-tooltip__shortcut",
6183
+ shortcut: shortcut
6184
+ })))
6185
+ });
6186
  }
6187
+ }]);
 
6188
 
6189
+ return Tooltip;
6190
+ }(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Component"]);
6191
+
6192
+ /* harmony default export */ __webpack_exports__["a"] = (Tooltip);
6193
+ //# sourceMappingURL=index.js.map
6194
 
6195
  /***/ }),
6196
+
6197
+ /***/ 16:
6198
  /***/ (function(module, exports) {
6199
 
6200
+ (function() { module.exports = this["moment"]; }());
 
 
 
 
6201
 
6202
+ /***/ }),
6203
+
6204
+ /***/ 160:
6205
+ /***/ (function(module, exports, __webpack_require__) {
6206
+
6207
+ // TinyColor v1.4.2
6208
+ // https://github.com/bgrins/TinyColor
6209
+ // Brian Grinstead, MIT License
6210
+
6211
+ (function(Math) {
6212
+
6213
+ var trimLeft = /^\s+/,
6214
+ trimRight = /\s+$/,
6215
+ tinyCounter = 0,
6216
+ mathRound = Math.round,
6217
+ mathMin = Math.min,
6218
+ mathMax = Math.max,
6219
+ mathRandom = Math.random;
6220
+
6221
+ function tinycolor (color, opts) {
6222
+
6223
+ color = (color) ? color : '';
6224
+ opts = opts || { };
6225
+
6226
+ // If input is already a tinycolor, return itself
6227
+ if (color instanceof tinycolor) {
6228
+ return color;
6229
+ }
6230
+ // If we are called as a function, call using new instead
6231
+ if (!(this instanceof tinycolor)) {
6232
+ return new tinycolor(color, opts);
6233
+ }
6234
+
6235
+ var rgb = inputToRGB(color);
6236
+ this._originalInput = color,
6237
+ this._r = rgb.r,
6238
+ this._g = rgb.g,
6239
+ this._b = rgb.b,
6240
+ this._a = rgb.a,
6241
+ this._roundA = mathRound(100*this._a) / 100,
6242
+ this._format = opts.format || rgb.format;
6243
+ this._gradientType = opts.gradientType;
6244
+
6245
+ // Don't let the range of [0,255] come back in [0,1].
6246
+ // Potentially lose a little bit of precision here, but will fix issues where
6247
+ // .5 gets interpreted as half of the total, instead of half of 1
6248
+ // If it was supposed to be 128, this was already taken care of by `inputToRgb`
6249
+ if (this._r < 1) { this._r = mathRound(this._r); }
6250
+ if (this._g < 1) { this._g = mathRound(this._g); }
6251
+ if (this._b < 1) { this._b = mathRound(this._b); }
6252
+
6253
+ this._ok = rgb.ok;
6254
+ this._tc_id = tinyCounter++;
6255
  }
6256
 
6257
+ tinycolor.prototype = {
6258
+ isDark: function() {
6259
+ return this.getBrightness() < 128;
6260
+ },
6261
+ isLight: function() {
6262
+ return !this.isDark();
6263
+ },
6264
+ isValid: function() {
6265
+ return this._ok;
6266
+ },
6267
+ getOriginalInput: function() {
6268
+ return this._originalInput;
6269
+ },
6270
+ getFormat: function() {
6271
+ return this._format;
6272
+ },
6273
+ getAlpha: function() {
6274
+ return this._a;
6275
+ },
6276
+ getBrightness: function() {
6277
+ //http://www.w3.org/TR/AERT#color-contrast
6278
+ var rgb = this.toRgb();
6279
+ return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;
6280
+ },
6281
+ getLuminance: function() {
6282
+ //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef
6283
+ var rgb = this.toRgb();
6284
+ var RsRGB, GsRGB, BsRGB, R, G, B;
6285
+ RsRGB = rgb.r/255;
6286
+ GsRGB = rgb.g/255;
6287
+ BsRGB = rgb.b/255;
6288
+
6289
+ if (RsRGB <= 0.03928) {R = RsRGB / 12.92;} else {R = Math.pow(((RsRGB + 0.055) / 1.055), 2.4);}
6290
+ if (GsRGB <= 0.03928) {G = GsRGB / 12.92;} else {G = Math.pow(((GsRGB + 0.055) / 1.055), 2.4);}
6291
+ if (BsRGB <= 0.03928) {B = BsRGB / 12.92;} else {B = Math.pow(((BsRGB + 0.055) / 1.055), 2.4);}
6292
+ return (0.2126 * R) + (0.7152 * G) + (0.0722 * B);
6293
+ },
6294
+ setAlpha: function(value) {
6295
+ this._a = boundAlpha(value);
6296
+ this._roundA = mathRound(100*this._a) / 100;
6297
+ return this;
6298
+ },
6299
+ toHsv: function() {
6300
+ var hsv = rgbToHsv(this._r, this._g, this._b);
6301
+ return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a };
6302
+ },
6303
+ toHsvString: function() {
6304
+ var hsv = rgbToHsv(this._r, this._g, this._b);
6305
+ var h = mathRound(hsv.h * 360), s = mathRound(hsv.s * 100), v = mathRound(hsv.v * 100);
6306
+ return (this._a == 1) ?
6307
+ "hsv(" + h + ", " + s + "%, " + v + "%)" :
6308
+ "hsva(" + h + ", " + s + "%, " + v + "%, "+ this._roundA + ")";
6309
+ },
6310
+ toHsl: function() {
6311
+ var hsl = rgbToHsl(this._r, this._g, this._b);
6312
+ return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a };
6313
+ },
6314
+ toHslString: function() {
6315
+ var hsl = rgbToHsl(this._r, this._g, this._b);
6316
+ var h = mathRound(hsl.h * 360), s = mathRound(hsl.s * 100), l = mathRound(hsl.l * 100);
6317
+ return (this._a == 1) ?
6318
+ "hsl(" + h + ", " + s + "%, " + l + "%)" :
6319
+ "hsla(" + h + ", " + s + "%, " + l + "%, "+ this._roundA + ")";
6320
+ },
6321
+ toHex: function(allow3Char) {
6322
+ return rgbToHex(this._r, this._g, this._b, allow3Char);
6323
+ },
6324
+ toHexString: function(allow3Char) {
6325
+ return '#' + this.toHex(allow3Char);
6326
+ },
6327
+ toHex8: function(allow4Char) {
6328
+ return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);
6329
+ },
6330
+ toHex8String: function(allow4Char) {
6331
+ return '#' + this.toHex8(allow4Char);
6332
+ },
6333
+ toRgb: function() {
6334
+ return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a };
6335
+ },
6336
+ toRgbString: function() {
6337
+ return (this._a == 1) ?
6338
+ "rgb(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ")" :
6339
+ "rgba(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ", " + this._roundA + ")";
6340
+ },
6341
+ toPercentageRgb: function() {
6342
+ return { r: mathRound(bound01(this._r, 255) * 100) + "%", g: mathRound(bound01(this._g, 255) * 100) + "%", b: mathRound(bound01(this._b, 255) * 100) + "%", a: this._a };
6343
+ },
6344
+ toPercentageRgbString: function() {
6345
+ return (this._a == 1) ?
6346
+ "rgb(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%)" :
6347
+ "rgba(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%, " + this._roundA + ")";
6348
+ },
6349
+ toName: function() {
6350
+ if (this._a === 0) {
6351
+ return "transparent";
6352
+ }
6353
 
6354
+ if (this._a < 1) {
6355
+ return false;
6356
+ }
6357
 
6358
+ return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;
6359
+ },
6360
+ toFilter: function(secondColor) {
6361
+ var hex8String = '#' + rgbaToArgbHex(this._r, this._g, this._b, this._a);
6362
+ var secondHex8String = hex8String;
6363
+ var gradientType = this._gradientType ? "GradientType = 1, " : "";
6364
+
6365
+ if (secondColor) {
6366
+ var s = tinycolor(secondColor);
6367
+ secondHex8String = '#' + rgbaToArgbHex(s._r, s._g, s._b, s._a);
6368
+ }
6369
 
6370
+ return "progid:DXImageTransform.Microsoft.gradient("+gradientType+"startColorstr="+hex8String+",endColorstr="+secondHex8String+")";
6371
+ },
6372
+ toString: function(format) {
6373
+ var formatSet = !!format;
6374
+ format = format || this._format;
6375
+
6376
+ var formattedString = false;
6377
+ var hasAlpha = this._a < 1 && this._a >= 0;
6378
+ var needsAlphaFormat = !formatSet && hasAlpha && (format === "hex" || format === "hex6" || format === "hex3" || format === "hex4" || format === "hex8" || format === "name");
6379
+
6380
+ if (needsAlphaFormat) {
6381
+ // Special case for "transparent", all other non-alpha formats
6382
+ // will return rgba when there is transparency.
6383
+ if (format === "name" && this._a === 0) {
6384
+ return this.toName();
6385
+ }
6386
+ return this.toRgbString();
6387
+ }
6388
+ if (format === "rgb") {
6389
+ formattedString = this.toRgbString();
6390
+ }
6391
+ if (format === "prgb") {
6392
+ formattedString = this.toPercentageRgbString();
6393
+ }
6394
+ if (format === "hex" || format === "hex6") {
6395
+ formattedString = this.toHexString();
6396
+ }
6397
+ if (format === "hex3") {
6398
+ formattedString = this.toHexString(true);
6399
+ }
6400
+ if (format === "hex4") {
6401
+ formattedString = this.toHex8String(true);
6402
+ }
6403
+ if (format === "hex8") {
6404
+ formattedString = this.toHex8String();
6405
+ }
6406
+ if (format === "name") {
6407
+ formattedString = this.toName();
6408
+ }
6409
+ if (format === "hsl") {
6410
+ formattedString = this.toHslString();
6411
+ }
6412
+ if (format === "hsv") {
6413
+ formattedString = this.toHsvString();
6414
+ }
6415
 
6416
+ return formattedString || this.toHexString();
6417
+ },
6418
+ clone: function() {
6419
+ return tinycolor(this.toString());
6420
+ },
6421
 
6422
+ _applyModification: function(fn, args) {
6423
+ var color = fn.apply(null, [this].concat([].slice.call(args)));
6424
+ this._r = color._r;
6425
+ this._g = color._g;
6426
+ this._b = color._b;
6427
+ this.setAlpha(color._a);
6428
+ return this;
6429
+ },
6430
+ lighten: function() {
6431
+ return this._applyModification(lighten, arguments);
6432
+ },
6433
+ brighten: function() {
6434
+ return this._applyModification(brighten, arguments);
6435
+ },
6436
+ darken: function() {
6437
+ return this._applyModification(darken, arguments);
6438
+ },
6439
+ desaturate: function() {
6440
+ return this._applyModification(desaturate, arguments);
6441
+ },
6442
+ saturate: function() {
6443
+ return this._applyModification(saturate, arguments);
6444
+ },
6445
+ greyscale: function() {
6446
+ return this._applyModification(greyscale, arguments);
6447
+ },
6448
+ spin: function() {
6449
+ return this._applyModification(spin, arguments);
6450
+ },
6451
 
6452
+ _applyCombination: function(fn, args) {
6453
+ return fn.apply(null, [this].concat([].slice.call(args)));
6454
+ },
6455
+ analogous: function() {
6456
+ return this._applyCombination(analogous, arguments);
6457
+ },
6458
+ complement: function() {
6459
+ return this._applyCombination(complement, arguments);
6460
+ },
6461
+ monochromatic: function() {
6462
+ return this._applyCombination(monochromatic, arguments);
6463
+ },
6464
+ splitcomplement: function() {
6465
+ return this._applyCombination(splitcomplement, arguments);
6466
+ },
6467
+ triad: function() {
6468
+ return this._applyCombination(triad, arguments);
6469
+ },
6470
+ tetrad: function() {
6471
+ return this._applyCombination(tetrad, arguments);
6472
+ }
6473
  };
6474
 
6475
+ // If input is an object, force 1 into "1.0" to handle ratios properly
6476
+ // String input requires "1.0" as input, so 1 will be treated as 1
6477
+ tinycolor.fromRatio = function(color, opts) {
6478
+ if (typeof color == "object") {
6479
+ var newColor = {};
6480
+ for (var i in color) {
6481
+ if (color.hasOwnProperty(i)) {
6482
+ if (i === "a") {
6483
+ newColor[i] = color[i];
6484
+ }
6485
+ else {
6486
+ newColor[i] = convertToPercentage(color[i]);
6487
+ }
6488
+ }
6489
+ }
6490
+ color = newColor;
6491
+ }
6492
+
6493
+ return tinycolor(color, opts);
6494
+ };
6495
+
6496
+ // Given a string or object, convert that input to RGB
6497
+ // Possible string inputs:
6498
+ //
6499
+ // "red"
6500
+ // "#f00" or "f00"
6501
+ // "#ff0000" or "ff0000"
6502
+ // "#ff000000" or "ff000000"
6503
+ // "rgb 255 0 0" or "rgb (255, 0, 0)"
6504
+ // "rgb 1.0 0 0" or "rgb (1, 0, 0)"
6505
+ // "rgba (255, 0, 0, 1)" or "rgba 255, 0, 0, 1"
6506
+ // "rgba (1.0, 0, 0, 1)" or "rgba 1.0, 0, 0, 1"
6507
+ // "hsl(0, 100%, 50%)" or "hsl 0 100% 50%"
6508
+ // "hsla(0, 100%, 50%, 1)" or "hsla 0 100% 50%, 1"
6509
+ // "hsv(0, 100%, 100%)" or "hsv 0 100% 100%"
6510
+ //
6511
+ function inputToRGB(color) {
6512
+
6513
+ var rgb = { r: 0, g: 0, b: 0 };
6514
+ var a = 1;
6515
+ var s = null;
6516
+ var v = null;
6517
+ var l = null;
6518
+ var ok = false;
6519
+ var format = false;
6520
+
6521
+ if (typeof color == "string") {
6522
+ color = stringInputToObject(color);
6523
+ }
6524
+
6525
+ if (typeof color == "object") {
6526
+ if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {
6527
+ rgb = rgbToRgb(color.r, color.g, color.b);
6528
+ ok = true;
6529
+ format = String(color.r).substr(-1) === "%" ? "prgb" : "rgb";
6530
+ }
6531
+ else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {
6532
+ s = convertToPercentage(color.s);
6533
+ v = convertToPercentage(color.v);
6534
+ rgb = hsvToRgb(color.h, s, v);
6535
+ ok = true;
6536
+ format = "hsv";
6537
+ }
6538
+ else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {
6539
+ s = convertToPercentage(color.s);
6540
+ l = convertToPercentage(color.l);
6541
+ rgb = hslToRgb(color.h, s, l);
6542
+ ok = true;
6543
+ format = "hsl";
6544
+ }
6545
 
6546
+ if (color.hasOwnProperty("a")) {
6547
+ a = color.a;
6548
+ }
6549
+ }
 
6550
 
6551
+ a = boundAlpha(a);
 
 
 
 
 
6552
 
6553
+ return {
6554
+ ok: ok,
6555
+ format: color.format || format,
6556
+ r: mathMin(255, mathMax(rgb.r, 0)),
6557
+ g: mathMin(255, mathMax(rgb.g, 0)),
6558
+ b: mathMin(255, mathMax(rgb.b, 0)),
6559
+ a: a
6560
+ };
6561
+ }
6562
 
6563
 
6564
+ // Conversion Functions
6565
+ // --------------------
 
 
6566
 
6567
+ // `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:
6568
+ // <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>
6569
 
6570
+ // `rgbToRgb`
6571
+ // Handle bounds / percentage checking to conform to CSS color spec
6572
+ // <http://www.w3.org/TR/css3-color/>
6573
+ // *Assumes:* r, g, b in [0, 255] or [0, 1]
6574
+ // *Returns:* { r, g, b } in [0, 255]
6575
+ function rgbToRgb(r, g, b){
6576
+ return {
6577
+ r: bound01(r, 255) * 255,
6578
+ g: bound01(g, 255) * 255,
6579
+ b: bound01(b, 255) * 255
6580
+ };
6581
+ }
6582
 
6583
+ // `rgbToHsl`
6584
+ // Converts an RGB color value to HSL.
6585
+ // *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]
6586
+ // *Returns:* { h, s, l } in [0,1]
6587
+ function rgbToHsl(r, g, b) {
6588
 
6589
+ r = bound01(r, 255);
6590
+ g = bound01(g, 255);
6591
+ b = bound01(b, 255);
6592
 
6593
+ var max = mathMax(r, g, b), min = mathMin(r, g, b);
6594
+ var h, s, l = (max + min) / 2;
6595
 
6596
+ if(max == min) {
6597
+ h = s = 0; // achromatic
6598
+ }
6599
+ else {
6600
+ var d = max - min;
6601
+ s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
6602
+ switch(max) {
6603
+ case r: h = (g - b) / d + (g < b ? 6 : 0); break;
6604
+ case g: h = (b - r) / d + 2; break;
6605
+ case b: h = (r - g) / d + 4; break;
6606
+ }
6607
 
6608
+ h /= 6;
6609
+ }
 
 
 
 
 
 
 
 
 
6610
 
6611
+ return { h: h, s: s, l: l };
6612
+ }
6613
 
6614
+ // `hslToRgb`
6615
+ // Converts an HSL color value to RGB.
6616
+ // *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]
6617
+ // *Returns:* { r, g, b } in the set [0, 255]
6618
+ function hslToRgb(h, s, l) {
6619
+ var r, g, b;
6620
 
6621
+ h = bound01(h, 360);
6622
+ s = bound01(s, 100);
6623
+ l = bound01(l, 100);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6624
 
6625
+ function hue2rgb(p, q, t) {
6626
+ if(t < 0) t += 1;
6627
+ if(t > 1) t -= 1;
6628
+ if(t < 1/6) return p + (q - p) * 6 * t;
6629
+ if(t < 1/2) return q;
6630
+ if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;
6631
+ return p;
6632
+ }
6633
 
6634
+ if(s === 0) {
6635
+ r = g = b = l; // achromatic
6636
+ }
6637
+ else {
6638
+ var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
6639
+ var p = 2 * l - q;
6640
+ r = hue2rgb(p, q, h + 1/3);
6641
+ g = hue2rgb(p, q, h);
6642
+ b = hue2rgb(p, q, h - 1/3);
6643
+ }
6644
+
6645
+ return { r: r * 255, g: g * 255, b: b * 255 };
 
 
 
6646
  }
6647
 
6648
+ // `rgbToHsv`
6649
+ // Converts an RGB color value to HSV
6650
+ // *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]
6651
+ // *Returns:* { h, s, v } in [0,1]
6652
+ function rgbToHsv(r, g, b) {
6653
 
6654
+ r = bound01(r, 255);
6655
+ g = bound01(g, 255);
6656
+ b = bound01(b, 255);
6657
 
6658
+ var max = mathMax(r, g, b), min = mathMin(r, g, b);
6659
+ var h, s, v = max;
 
6660
 
6661
+ var d = max - min;
6662
+ s = max === 0 ? 0 : d / max;
 
 
 
 
 
6663
 
6664
+ if(max == min) {
6665
+ h = 0; // achromatic
6666
+ }
6667
+ else {
6668
+ switch(max) {
6669
+ case r: h = (g - b) / d + (g < b ? 6 : 0); break;
6670
+ case g: h = (b - r) / d + 2; break;
6671
+ case b: h = (r - g) / d + 4; break;
6672
+ }
6673
+ h /= 6;
6674
+ }
6675
+ return { h: h, s: s, v: v };
6676
+ }
6677
 
6678
+ // `hsvToRgb`
6679
+ // Converts an HSV color value to RGB.
6680
+ // *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]
6681
+ // *Returns:* { r, g, b } in the set [0, 255]
6682
+ function hsvToRgb(h, s, v) {
6683
+
6684
+ h = bound01(h, 360) * 6;
6685
+ s = bound01(s, 100);
6686
+ v = bound01(v, 100);
6687
+
6688
+ var i = Math.floor(h),
6689
+ f = h - i,
6690
+ p = v * (1 - s),
6691
+ q = v * (1 - f * s),
6692
+ t = v * (1 - (1 - f) * s),
6693
+ mod = i % 6,
6694
+ r = [v, q, p, p, t, v][mod],
6695
+ g = [t, v, v, q, p, p][mod],
6696
+ b = [p, p, t, v, v, q][mod];
6697
+
6698
+ return { r: r * 255, g: g * 255, b: b * 255 };
6699
+ }
6700
 
6701
+ // `rgbToHex`
6702
+ // Converts an RGB color to hex
6703
+ // Assumes r, g, and b are contained in the set [0, 255]
6704
+ // Returns a 3 or 6 character hex
6705
+ function rgbToHex(r, g, b, allow3Char) {
6706
 
6707
+ var hex = [
6708
+ pad2(mathRound(r).toString(16)),
6709
+ pad2(mathRound(g).toString(16)),
6710
+ pad2(mathRound(b).toString(16))
6711
+ ];
6712
+
6713
+ // Return a 3 character hex if possible
6714
+ if (allow3Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1)) {
6715
+ return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);
6716
+ }
6717
+
6718
+ return hex.join("");
6719
+ }
6720
+
6721
+ // `rgbaToHex`
6722
+ // Converts an RGBA color plus alpha transparency to hex
6723
+ // Assumes r, g, b are contained in the set [0, 255] and
6724
+ // a in [0, 1]. Returns a 4 or 8 character rgba hex
6725
+ function rgbaToHex(r, g, b, a, allow4Char) {
6726
+
6727
+ var hex = [
6728
+ pad2(mathRound(r).toString(16)),
6729
+ pad2(mathRound(g).toString(16)),
6730
+ pad2(mathRound(b).toString(16)),
6731
+ pad2(convertDecimalToHex(a))
6732
+ ];
6733
+
6734
+ // Return a 4 character hex if possible
6735
+ if (allow4Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1) && hex[3].charAt(0) == hex[3].charAt(1)) {
6736
+ return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);
6737
+ }
6738
+
6739
+ return hex.join("");
6740
+ }
6741
+
6742
+ // `rgbaToArgbHex`
6743
+ // Converts an RGBA color to an ARGB Hex8 string
6744
+ // Rarely used, but required for "toFilter()"
6745
+ function rgbaToArgbHex(r, g, b, a) {
6746
 
6747
+ var hex = [
6748
+ pad2(convertDecimalToHex(a)),
6749
+ pad2(mathRound(r).toString(16)),
6750
+ pad2(mathRound(g).toString(16)),
6751
+ pad2(mathRound(b).toString(16))
6752
+ ];
6753
 
6754
+ return hex.join("");
6755
+ }
6756
 
6757
+ // `equals`
6758
+ // Can be called with any tinycolor input
6759
+ tinycolor.equals = function (color1, color2) {
6760
+ if (!color1 || !color2) { return false; }
6761
+ return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString();
 
6762
  };
6763
 
6764
+ tinycolor.random = function() {
6765
+ return tinycolor.fromRatio({
6766
+ r: mathRandom(),
6767
+ g: mathRandom(),
6768
+ b: mathRandom()
6769
+ });
 
 
 
 
 
6770
  };
6771
 
6772
 
6773
+ // Modification Functions
6774
+ // ----------------------
6775
+ // Thanks to less.js for some of the basics here
6776
+ // <https://github.com/cloudhead/less.js/blob/master/lib/less/functions.js>
6777
 
6778
+ function desaturate(color, amount) {
6779
+ amount = (amount === 0) ? 0 : (amount || 10);
6780
+ var hsl = tinycolor(color).toHsl();
6781
+ hsl.s -= amount / 100;
6782
+ hsl.s = clamp01(hsl.s);
6783
+ return tinycolor(hsl);
6784
+ }
6785
 
6786
+ function saturate(color, amount) {
6787
+ amount = (amount === 0) ? 0 : (amount || 10);
6788
+ var hsl = tinycolor(color).toHsl();
6789
+ hsl.s += amount / 100;
6790
+ hsl.s = clamp01(hsl.s);
6791
+ return tinycolor(hsl);
6792
+ }
6793
 
6794
+ function greyscale(color) {
6795
+ return tinycolor(color).desaturate(100);
6796
+ }
6797
 
6798
+ function lighten (color, amount) {
6799
+ amount = (amount === 0) ? 0 : (amount || 10);
6800
+ var hsl = tinycolor(color).toHsl();
6801
+ hsl.l += amount / 100;
6802
+ hsl.l = clamp01(hsl.l);
6803
+ return tinycolor(hsl);
6804
+ }
6805
 
6806
+ function brighten(color, amount) {
6807
+ amount = (amount === 0) ? 0 : (amount || 10);
6808
+ var rgb = tinycolor(color).toRgb();
6809
+ rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * - (amount / 100))));
6810
+ rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * - (amount / 100))));
6811
+ rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * - (amount / 100))));
6812
+ return tinycolor(rgb);
6813
+ }
6814
 
6815
+ function darken (color, amount) {
6816
+ amount = (amount === 0) ? 0 : (amount || 10);
6817
+ var hsl = tinycolor(color).toHsl();
6818
+ hsl.l -= amount / 100;
6819
+ hsl.l = clamp01(hsl.l);
6820
+ return tinycolor(hsl);
6821
+ }
6822
 
6823
+ // Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.
6824
+ // Values outside of this range will be wrapped into this range.
6825
+ function spin(color, amount) {
6826
+ var hsl = tinycolor(color).toHsl();
6827
+ var hue = (hsl.h + amount) % 360;
6828
+ hsl.h = hue < 0 ? 360 + hue : hue;
6829
+ return tinycolor(hsl);
6830
+ }
6831
 
6832
+ // Combination Functions
6833
+ // ---------------------
6834
+ // Thanks to jQuery xColor for some of the ideas behind these
6835
+ // <https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js>
 
 
 
6836
 
6837
+ function complement(color) {
6838
+ var hsl = tinycolor(color).toHsl();
6839
+ hsl.h = (hsl.h + 180) % 360;
6840
+ return tinycolor(hsl);
6841
+ }
6842
 
6843
+ function triad(color) {
6844
+ var hsl = tinycolor(color).toHsl();
6845
+ var h = hsl.h;
6846
+ return [
6847
+ tinycolor(color),
6848
+ tinycolor({ h: (h + 120) % 360, s: hsl.s, l: hsl.l }),
6849
+ tinycolor({ h: (h + 240) % 360, s: hsl.s, l: hsl.l })
6850
+ ];
6851
+ }
6852
 
6853
+ function tetrad(color) {
6854
+ var hsl = tinycolor(color).toHsl();
6855
+ var h = hsl.h;
6856
+ return [
6857
+ tinycolor(color),
6858
+ tinycolor({ h: (h + 90) % 360, s: hsl.s, l: hsl.l }),
6859
+ tinycolor({ h: (h + 180) % 360, s: hsl.s, l: hsl.l }),
6860
+ tinycolor({ h: (h + 270) % 360, s: hsl.s, l: hsl.l })
6861
+ ];
6862
+ }
6863
 
6864
+ function splitcomplement(color) {
6865
+ var hsl = tinycolor(color).toHsl();
6866
+ var h = hsl.h;
6867
+ return [
6868
+ tinycolor(color),
6869
+ tinycolor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l}),
6870
+ tinycolor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l})
6871
+ ];
6872
+ }
6873
 
6874
+ function analogous(color, results, slices) {
6875
+ results = results || 6;
6876
+ slices = slices || 30;
6877
+
6878
+ var hsl = tinycolor(color).toHsl();
6879
+ var part = 360 / slices;
6880
+ var ret = [tinycolor(color)];
6881
+
6882
+ for (hsl.h = ((hsl.h - (part * results >> 1)) + 720) % 360; --results; ) {
6883
+ hsl.h = (hsl.h + part) % 360;
6884
+ ret.push(tinycolor(hsl));
6885
  }
6886
+ return ret;
6887
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6888
 
6889
+ function monochromatic(color, results) {
6890
+ results = results || 6;
6891
+ var hsv = tinycolor(color).toHsv();
6892
+ var h = hsv.h, s = hsv.s, v = hsv.v;
6893
+ var ret = [];
6894
+ var modification = 1 / results;
 
 
 
 
 
6895
 
6896
+ while (results--) {
6897
+ ret.push(tinycolor({ h: h, s: s, v: v}));
6898
+ v = (v + modification) % 1;
6899
+ }
6900
 
6901
+ return ret;
6902
+ }
6903
 
6904
+ // Utility Functions
6905
+ // ---------------------
6906
+
6907
+ tinycolor.mix = function(color1, color2, amount) {
6908
+ amount = (amount === 0) ? 0 : (amount || 50);
6909
+
6910
+ var rgb1 = tinycolor(color1).toRgb();
6911
+ var rgb2 = tinycolor(color2).toRgb();
6912
+
6913
+ var p = amount / 100;
6914
+
6915
+ var rgba = {
6916
+ r: ((rgb2.r - rgb1.r) * p) + rgb1.r,
6917
+ g: ((rgb2.g - rgb1.g) * p) + rgb1.g,
6918
+ b: ((rgb2.b - rgb1.b) * p) + rgb1.b,
6919
+ a: ((rgb2.a - rgb1.a) * p) + rgb1.a
6920
+ };
6921
+
6922
+ return tinycolor(rgba);
6923
  };
6924
 
6925
 
6926
+ // Readability Functions
6927
+ // ---------------------
6928
+ // <http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef (WCAG Version 2)
6929
 
6930
+ // `contrast`
6931
+ // Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)
6932
+ tinycolor.readability = function(color1, color2) {
6933
+ var c1 = tinycolor(color1);
6934
+ var c2 = tinycolor(color2);
6935
+ return (Math.max(c1.getLuminance(),c2.getLuminance())+0.05) / (Math.min(c1.getLuminance(),c2.getLuminance())+0.05);
6936
+ };
6937
 
6938
+ // `isReadable`
6939
+ // Ensure that foreground and background color combinations meet WCAG2 guidelines.
6940
+ // The third argument is an optional Object.
6941
+ // the 'level' property states 'AA' or 'AAA' - if missing or invalid, it defaults to 'AA';
6942
+ // the 'size' property states 'large' or 'small' - if missing or invalid, it defaults to 'small'.
6943
+ // If the entire object is absent, isReadable defaults to {level:"AA",size:"small"}.
6944
 
6945
+ // *Example*
6946
+ // tinycolor.isReadable("#000", "#111") => false
6947
+ // tinycolor.isReadable("#000", "#111",{level:"AA",size:"large"}) => false
6948
+ tinycolor.isReadable = function(color1, color2, wcag2) {
6949
+ var readability = tinycolor.readability(color1, color2);
6950
+ var wcag2Parms, out;
6951
 
6952
+ out = false;
6953
 
6954
+ wcag2Parms = validateWCAG2Parms(wcag2);
6955
+ switch (wcag2Parms.level + wcag2Parms.size) {
6956
+ case "AAsmall":
6957
+ case "AAAlarge":
6958
+ out = readability >= 4.5;
6959
+ break;
6960
+ case "AAlarge":
6961
+ out = readability >= 3;
6962
+ break;
6963
+ case "AAAsmall":
6964
+ out = readability >= 7;
6965
+ break;
6966
+ }
6967
+ return out;
6968
 
6969
+ };
6970
 
6971
+ // `mostReadable`
6972
+ // Given a base color and a list of possible foreground or background
6973
+ // colors for that base, returns the most readable color.
6974
+ // Optionally returns Black or White if the most readable color is unreadable.
6975
+ // *Example*
6976
+ // tinycolor.mostReadable(tinycolor.mostReadable("#123", ["#124", "#125"],{includeFallbackColors:false}).toHexString(); // "#112255"
6977
+ // tinycolor.mostReadable(tinycolor.mostReadable("#123", ["#124", "#125"],{includeFallbackColors:true}).toHexString(); // "#ffffff"
6978
+ // tinycolor.mostReadable("#a8015a", ["#faf3f3"],{includeFallbackColors:true,level:"AAA",size:"large"}).toHexString(); // "#faf3f3"
6979
+ // tinycolor.mostReadable("#a8015a", ["#faf3f3"],{includeFallbackColors:true,level:"AAA",size:"small"}).toHexString(); // "#ffffff"
6980
+ tinycolor.mostReadable = function(baseColor, colorList, args) {
6981
+ var bestColor = null;
6982
+ var bestScore = 0;
6983
+ var readability;
6984
+ var includeFallbackColors, level, size ;
6985
+ args = args || {};
6986
+ includeFallbackColors = args.includeFallbackColors ;
6987
+ level = args.level;
6988
+ size = args.size;
6989
+
6990
+ for (var i= 0; i < colorList.length ; i++) {
6991
+ readability = tinycolor.readability(baseColor, colorList[i]);
6992
+ if (readability > bestScore) {
6993
+ bestScore = readability;
6994
+ bestColor = tinycolor(colorList[i]);
6995
+ }
6996
+ }
6997
 
6998
+ if (tinycolor.isReadable(baseColor, bestColor, {"level":level,"size":size}) || !includeFallbackColors) {
6999
+ return bestColor;
7000
+ }
7001
+ else {
7002
+ args.includeFallbackColors=false;
7003
+ return tinycolor.mostReadable(baseColor,["#fff", "#000"],args);
7004
+ }
7005
+ };
7006
+
7007
+
7008
+ // Big List of Colors
7009
+ // ------------------
7010
+ // <http://www.w3.org/TR/css3-color/#svg-color>
7011
+ var names = tinycolor.names = {
7012
+ aliceblue: "f0f8ff",
7013
+ antiquewhite: "faebd7",
7014
+ aqua: "0ff",
7015
+ aquamarine: "7fffd4",
7016
+ azure: "f0ffff",
7017
+ beige: "f5f5dc",
7018
+ bisque: "ffe4c4",
7019
+ black: "000",
7020
+ blanchedalmond: "ffebcd",
7021
+ blue: "00f",
7022
+ blueviolet: "8a2be2",
7023
+ brown: "a52a2a",
7024
+ burlywood: "deb887",
7025
+ burntsienna: "ea7e5d",
7026
+ cadetblue: "5f9ea0",
7027
+ chartreuse: "7fff00",
7028
+ chocolate: "d2691e",
7029
+ coral: "ff7f50",
7030
+ cornflowerblue: "6495ed",
7031
+ cornsilk: "fff8dc",
7032
+ crimson: "dc143c",
7033
+ cyan: "0ff",
7034
+ darkblue: "00008b",
7035
+ darkcyan: "008b8b",
7036
+ darkgoldenrod: "b8860b",
7037
+ darkgray: "a9a9a9",
7038
+ darkgreen: "006400",
7039
+ darkgrey: "a9a9a9",
7040
+ darkkhaki: "bdb76b",
7041
+ darkmagenta: "8b008b",
7042
+ darkolivegreen: "556b2f",
7043
+ darkorange: "ff8c00",
7044
+ darkorchid: "9932cc",
7045
+ darkred: "8b0000",
7046
+ darksalmon: "e9967a",
7047
+ darkseagreen: "8fbc8f",
7048
+ darkslateblue: "483d8b",
7049
+ darkslategray: "2f4f4f",
7050
+ darkslategrey: "2f4f4f",
7051
+ darkturquoise: "00ced1",
7052
+ darkviolet: "9400d3",
7053
+ deeppink: "ff1493",
7054
+ deepskyblue: "00bfff",
7055
+ dimgray: "696969",
7056
+ dimgrey: "696969",
7057
+ dodgerblue: "1e90ff",
7058
+ firebrick: "b22222",
7059
+ floralwhite: "fffaf0",
7060
+ forestgreen: "228b22",
7061
+ fuchsia: "f0f",
7062
+ gainsboro: "dcdcdc",
7063
+ ghostwhite: "f8f8ff",
7064
+ gold: "ffd700",
7065
+ goldenrod: "daa520",
7066
+ gray: "808080",
7067
+ green: "008000",
7068
+ greenyellow: "adff2f",
7069
+ grey: "808080",
7070
+ honeydew: "f0fff0",
7071
+ hotpink: "ff69b4",
7072
+ indianred: "cd5c5c",
7073
+ indigo: "4b0082",
7074
+ ivory: "fffff0",
7075
+ khaki: "f0e68c",
7076
+ lavender: "e6e6fa",
7077
+ lavenderblush: "fff0f5",
7078
+ lawngreen: "7cfc00",
7079
+ lemonchiffon: "fffacd",
7080
+ lightblue: "add8e6",
7081
+ lightcoral: "f08080",
7082
+ lightcyan: "e0ffff",
7083
+ lightgoldenrodyellow: "fafad2",
7084
+ lightgray: "d3d3d3",
7085
+ lightgreen: "90ee90",
7086
+ lightgrey: "d3d3d3",
7087
+ lightpink: "ffb6c1",
7088
+ lightsalmon: "ffa07a",
7089
+ lightseagreen: "20b2aa",
7090
+ lightskyblue: "87cefa",
7091
+ lightslategray: "789",
7092
+ lightslategrey: "789",
7093
+ lightsteelblue: "b0c4de",
7094
+ lightyellow: "ffffe0",
7095
+ lime: "0f0",
7096
+ limegreen: "32cd32",
7097
+ linen: "faf0e6",
7098
+ magenta: "f0f",
7099
+ maroon: "800000",
7100
+ mediumaquamarine: "66cdaa",
7101
+ mediumblue: "0000cd",
7102
+ mediumorchid: "ba55d3",
7103
+ mediumpurple: "9370db",
7104
+ mediumseagreen: "3cb371",
7105
+ mediumslateblue: "7b68ee",
7106
+ mediumspringgreen: "00fa9a",
7107
+ mediumturquoise: "48d1cc",
7108
+ mediumvioletred: "c71585",
7109
+ midnightblue: "191970",
7110
+ mintcream: "f5fffa",
7111
+ mistyrose: "ffe4e1",
7112
+ moccasin: "ffe4b5",
7113
+ navajowhite: "ffdead",
7114
+ navy: "000080",
7115
+ oldlace: "fdf5e6",
7116
+ olive: "808000",
7117
+ olivedrab: "6b8e23",
7118
+ orange: "ffa500",
7119
+ orangered: "ff4500",
7120
+ orchid: "da70d6",
7121
+ palegoldenrod: "eee8aa",
7122
+ palegreen: "98fb98",
7123
+ paleturquoise: "afeeee",
7124
+ palevioletred: "db7093",
7125
+ papayawhip: "ffefd5",
7126
+ peachpuff: "ffdab9",
7127
+ peru: "cd853f",
7128
+ pink: "ffc0cb",
7129
+ plum: "dda0dd",
7130
+ powderblue: "b0e0e6",
7131
+ purple: "800080",
7132
+ rebeccapurple: "663399",
7133
+ red: "f00",
7134
+ rosybrown: "bc8f8f",
7135
+ royalblue: "4169e1",
7136
+ saddlebrown: "8b4513",
7137
+ salmon: "fa8072",
7138
+ sandybrown: "f4a460",
7139
+ seagreen: "2e8b57",
7140
+ seashell: "fff5ee",
7141
+ sienna: "a0522d",
7142
+ silver: "c0c0c0",
7143
+ skyblue: "87ceeb",
7144
+ slateblue: "6a5acd",
7145
+ slategray: "708090",
7146
+ slategrey: "708090",
7147
+ snow: "fffafa",
7148
+ springgreen: "00ff7f",
7149
+ steelblue: "4682b4",
7150
+ tan: "d2b48c",
7151
+ teal: "008080",
7152
+ thistle: "d8bfd8",
7153
+ tomato: "ff6347",
7154
+ turquoise: "40e0d0",
7155
+ violet: "ee82ee",
7156
+ wheat: "f5deb3",
7157
+ white: "fff",
7158
+ whitesmoke: "f5f5f5",
7159
+ yellow: "ff0",
7160
+ yellowgreen: "9acd32"
7161
+ };
7162
+
7163
+ // Make it easy to access colors via `hexNames[hex]`
7164
+ var hexNames = tinycolor.hexNames = flip(names);
7165
+
7166
+
7167
+ // Utilities
7168
+ // ---------
7169
+
7170
+ // `{ 'name1': 'val1' }` becomes `{ 'val1': 'name1' }`
7171
+ function flip(o) {
7172
+ var flipped = { };
7173
+ for (var i in o) {
7174
+ if (o.hasOwnProperty(i)) {
7175
+ flipped[o[i]] = i;
7176
+ }
7177
+ }
7178
+ return flipped;
7179
+ }
7180
 
7181
+ // Return a valid alpha value [0,1] with all invalid values being set to 1
7182
+ function boundAlpha(a) {
7183
+ a = parseFloat(a);
 
 
 
 
7184
 
7185
+ if (isNaN(a) || a < 0 || a > 1) {
7186
+ a = 1;
7187
+ }
7188
 
7189
+ return a;
7190
+ }
7191
+
7192
+ // Take input from [0, n] and return it as [0, 1]
7193
+ function bound01(n, max) {
7194
+ if (isOnePointZero(n)) { n = "100%"; }
7195
+
7196
+ var processPercent = isPercentage(n);
7197
+ n = mathMin(max, mathMax(0, parseFloat(n)));
7198
+
7199
+ // Automatically convert percentage into number
7200
+ if (processPercent) {
7201
+ n = parseInt(n * max, 10) / 100;
7202
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7203
 
7204
+ // Handle floating point rounding errors
7205
+ if ((Math.abs(n - max) < 0.000001)) {
7206
+ return 1;
7207
+ }
7208
 
7209
+ // Convert into [0, 1] range if it isn't already
7210
+ return (n % max) / parseFloat(max);
7211
+ }
 
 
7212
 
7213
+ // Force a number between 0 and 1
7214
+ function clamp01(val) {
7215
+ return mathMin(1, mathMax(0, val));
7216
+ }
 
 
 
 
 
 
 
 
 
7217
 
7218
+ // Parse a base-16 hex value into a base-10 integer
7219
+ function parseIntFromHex(val) {
7220
+ return parseInt(val, 16);
7221
  }
7222
 
7223
+ // Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1
7224
+ // <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>
7225
+ function isOnePointZero(n) {
7226
+ return typeof n == "string" && n.indexOf('.') != -1 && parseFloat(n) === 1;
7227
+ }
7228
 
7229
+ // Check to see if string passed in is a percentage
7230
+ function isPercentage(n) {
7231
+ return typeof n === "string" && n.indexOf('%') != -1;
7232
+ }
7233
 
7234
+ // Force a hex value to have 2 characters
7235
+ function pad2(c) {
7236
+ return c.length == 1 ? '0' + c : '' + c;
7237
+ }
7238
 
7239
+ // Replace a decimal with it's percentage value
7240
+ function convertToPercentage(n) {
7241
+ if (n <= 1) {
7242
+ n = (n * 100) + "%";
7243
+ }
7244
 
7245
+ return n;
7246
+ }
7247
+
7248
+ // Converts a decimal to a hex value
7249
+ function convertDecimalToHex(d) {
7250
+ return Math.round(parseFloat(d) * 255).toString(16);
7251
+ }
7252
+ // Converts a hex value to a decimal
7253
+ function convertHexToDecimal(h) {
7254
+ return (parseIntFromHex(h) / 255);
7255
+ }
7256
+
7257
+ var matchers = (function() {
7258
+
7259
+ // <http://www.w3.org/TR/css3-values/#integers>
7260
+ var CSS_INTEGER = "[-\\+]?\\d+%?";
7261
+
7262
+ // <http://www.w3.org/TR/css3-values/#number-value>
7263
+ var CSS_NUMBER = "[-\\+]?\\d*\\.\\d+%?";
7264
+
7265
+ // Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.
7266
+ var CSS_UNIT = "(?:" + CSS_NUMBER + ")|(?:" + CSS_INTEGER + ")";
7267
+
7268
+ // Actual matching.
7269
+ // Parentheses and commas are optional, but not required.
7270
+ // Whitespace can take the place of commas or opening paren
7271
+ var PERMISSIVE_MATCH3 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?";
7272
+ var PERMISSIVE_MATCH4 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?";
7273
+
7274
+ return {
7275
+ CSS_UNIT: new RegExp(CSS_UNIT),
7276
+ rgb: new RegExp("rgb" + PERMISSIVE_MATCH3),
7277
+ rgba: new RegExp("rgba" + PERMISSIVE_MATCH4),
7278
+ hsl: new RegExp("hsl" + PERMISSIVE_MATCH3),
7279
+ hsla: new RegExp("hsla" + PERMISSIVE_MATCH4),
7280
+ hsv: new RegExp("hsv" + PERMISSIVE_MATCH3),
7281
+ hsva: new RegExp("hsva" + PERMISSIVE_MATCH4),
7282
+ hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
7283
+ hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,
7284
+ hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
7285
+ hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/
7286
+ };
7287
+ })();
7288
+
7289
+ // `isValidCSSUnit`
7290
+ // Take in a single string / number and check to see if it looks like a CSS unit
7291
+ // (see `matchers` above for definition).
7292
+ function isValidCSSUnit(color) {
7293
+ return !!matchers.CSS_UNIT.exec(color);
7294
+ }
7295
+
7296
+ // `stringInputToObject`
7297
+ // Permissive string parsing. Take in a number of formats, and output an object
7298
+ // based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`
7299
+ function stringInputToObject(color) {
7300
+
7301
+ color = color.replace(trimLeft,'').replace(trimRight, '').toLowerCase();
7302
+ var named = false;
7303
+ if (names[color]) {
7304
+ color = names[color];
7305
+ named = true;
7306
+ }
7307
+ else if (color == 'transparent') {
7308
+ return { r: 0, g: 0, b: 0, a: 0, format: "name" };
7309
  }
 
7310
 
7311
+ // Try to match string input using regular expressions.
7312
+ // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]
7313
+ // Just return an object and let the conversion functions handle that.
7314
+ // This way the result will be the same whether the tinycolor is initialized with string or object.
7315
+ var match;
7316
+ if ((match = matchers.rgb.exec(color))) {
7317
+ return { r: match[1], g: match[2], b: match[3] };
7318
+ }
7319
+ if ((match = matchers.rgba.exec(color))) {
7320
+ return { r: match[1], g: match[2], b: match[3], a: match[4] };
7321
+ }
7322
+ if ((match = matchers.hsl.exec(color))) {
7323
+ return { h: match[1], s: match[2], l: match[3] };
7324
+ }
7325
+ if ((match = matchers.hsla.exec(color))) {
7326
+ return { h: match[1], s: match[2], l: match[3], a: match[4] };
7327
+ }
7328
+ if ((match = matchers.hsv.exec(color))) {
7329
+ return { h: match[1], s: match[2], v: match[3] };
7330
+ }
7331
+ if ((match = matchers.hsva.exec(color))) {
7332
+ return { h: match[1], s: match[2], v: match[3], a: match[4] };
7333
+ }
7334
+ if ((match = matchers.hex8.exec(color))) {
7335
+ return {
7336
+ r: parseIntFromHex(match[1]),
7337
+ g: parseIntFromHex(match[2]),
7338
+ b: parseIntFromHex(match[3]),
7339
+ a: convertHexToDecimal(match[4]),
7340
+ format: named ? "name" : "hex8"
7341
+ };
7342
+ }
7343
+ if ((match = matchers.hex6.exec(color))) {
7344
+ return {
7345
+ r: parseIntFromHex(match[1]),
7346
+ g: parseIntFromHex(match[2]),
7347
+ b: parseIntFromHex(match[3]),
7348
+ format: named ? "name" : "hex"
7349
+ };
7350
+ }
7351
+ if ((match = matchers.hex4.exec(color))) {
7352
+ return {
7353
+ r: parseIntFromHex(match[1] + '' + match[1]),
7354
+ g: parseIntFromHex(match[2] + '' + match[2]),
7355
+ b: parseIntFromHex(match[3] + '' + match[3]),
7356
+ a: convertHexToDecimal(match[4] + '' + match[4]),
7357
+ format: named ? "name" : "hex8"
7358
+ };
7359
+ }
7360
+ if ((match = matchers.hex3.exec(color))) {
7361
+ return {
7362
+ r: parseIntFromHex(match[1] + '' + match[1]),
7363
+ g: parseIntFromHex(match[2] + '' + match[2]),
7364
+ b: parseIntFromHex(match[3] + '' + match[3]),
7365
+ format: named ? "name" : "hex"
7366
+ };
7367
+ }
7368
+
7369
+ return false;
7370
+ }
7371
+
7372
+ function validateWCAG2Parms(parms) {
7373
+ // return valid WCAG2 parms for isReadable.
7374
+ // If input parms are invalid, return {"level":"AA", "size":"small"}
7375
+ var level, size;
7376
+ parms = parms || {"level":"AA", "size":"small"};
7377
+ level = (parms.level || "AA").toUpperCase();
7378
+ size = (parms.size || "small").toLowerCase();
7379
+ if (level !== "AA" && level !== "AAA") {
7380
+ level = "AA";
7381
+ }
7382
+ if (size !== "small" && size !== "large") {
7383
+ size = "small";
7384
+ }
7385
+ return {"level":level, "size":size};
7386
+ }
7387
+
7388
+ // Node: Export function
7389
+ if ( true && module.exports) {
7390
+ module.exports = tinycolor;
7391
+ }
7392
+ // AMD/requirejs: Define the module
7393
+ else if (typeof define === 'function' && define.amd) {
7394
+ define(function () {return tinycolor;});
7395
+ }
7396
+ // Browser: Expose to window
7397
+ else {
7398
+ window.tinycolor = tinycolor;
7399
+ }
7400
+
7401
+ })(Math);
7402
+
7403
+
7404
+ /***/ }),
7405
+
7406
+ /***/ 162:
7407
+ /***/ (function(module, exports) {
7408
+
7409
+ function _setPrototypeOf(o, p) {
7410
+ module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
7411
+ o.__proto__ = p;
7412
+ return o;
7413
+ };
7414
+
7415
+ return _setPrototypeOf(o, p);
7416
  }
7417
 
7418
+ module.exports = _setPrototypeOf;
7419
+
7420
  /***/ }),
7421
+
7422
+ /***/ 163:
7423
  /***/ (function(module, exports, __webpack_require__) {
7424
 
7425
  "use strict";
7426
 
7427
 
7428
+ var utils = __webpack_require__(92);
7429
+ var formats = __webpack_require__(115);
7430
  var has = Object.prototype.hasOwnProperty;
7431
 
7432
  var arrayPrefixGenerators = {
7490
  sort,
7491
  allowDots,
7492
  serializeDate,
 
7493
  formatter,
7494
  encodeValuesOnly,
7495
  charset
7505
  return serializeDate(value);
7506
  }
7507
  return value;
7508
+ }).join(',');
7509
  }
7510
 
7511
  if (obj === null) {
7512
  if (strictNullHandling) {
7513
+ return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, 'key') : prefix;
7514
  }
7515
 
7516
  obj = '';
7518
 
7519
  if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {
7520
  if (encoder) {
7521
+ var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key');
7522
+ return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value'))];
7523
  }
7524
  return [formatter(prefix) + '=' + formatter(String(obj))];
7525
  }
7531
  }
7532
 
7533
  var objKeys;
7534
+ if (isArray(filter)) {
 
 
 
7535
  objKeys = filter;
7536
  } else {
7537
  var keys = Object.keys(obj);
7540
 
7541
  for (var i = 0; i < objKeys.length; ++i) {
7542
  var key = objKeys[i];
7543
+ var value = obj[key];
7544
 
7545
  if (skipNulls && value === null) {
7546
  continue;
7561
  sort,
7562
  allowDots,
7563
  serializeDate,
 
7564
  formatter,
7565
  encodeValuesOnly,
7566
  charset
7608
  encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,
7609
  encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,
7610
  filter: filter,
 
7611
  formatter: formatter,
7612
  serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults.serializeDate,
7613
  skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults.skipNulls,
7673
  options.sort,
7674
  options.allowDots,
7675
  options.serializeDate,
 
7676
  options.formatter,
7677
  options.encodeValuesOnly,
7678
  options.charset
7697
 
7698
 
7699
  /***/ }),
7700
+
7701
+ /***/ 164:
7702
  /***/ (function(module, exports, __webpack_require__) {
7703
 
7704
  "use strict";
7705
 
7706
 
7707
+ var utils = __webpack_require__(92);
7708
 
7709
  var has = Object.prototype.hasOwnProperty;
7710
  var isArray = Array.isArray;
7844
  }
7845
  }
7846
 
7847
+ leaf = obj; // eslint-disable-line no-param-reassign
7848
  }
7849
 
7850
  return leaf;
7962
 
7963
 
7964
  /***/ }),
 
 
7965
 
7966
+ /***/ 17:
7967
+ /***/ (function(module, exports) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7968
 
7969
+ function _classCallCheck(instance, Constructor) {
7970
+ if (!(instance instanceof Constructor)) {
7971
+ throw new TypeError("Cannot call a class as a function");
7972
+ }
7973
+ }
 
7974
 
7975
+ module.exports = _classCallCheck;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7976
 
7977
+ /***/ }),
 
 
 
 
 
 
 
 
 
7978
 
7979
+ /***/ 18:
7980
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
7981
 
7982
+ var setPrototypeOf = __webpack_require__(162);
7983
 
7984
+ function _inherits(subClass, superClass) {
7985
+ if (typeof superClass !== "function" && superClass !== null) {
7986
+ throw new TypeError("Super expression must either be null or a function");
7987
  }
7988
 
7989
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
7990
+ constructor: {
7991
+ value: subClass,
7992
+ writable: true,
7993
+ configurable: true
7994
+ }
7995
+ });
7996
+ if (superClass) setPrototypeOf(subClass, superClass);
7997
+ }
7998
 
7999
+ module.exports = _inherits;
8000
 
8001
  /***/ }),
8002
+
8003
+ /***/ 189:
8004
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8005
 
8006
  "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8007
 
8008
+ // EXPORTS
8009
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ speak; });
8010
 
8011
+ // UNUSED EXPORTS: setup
8012
 
8013
+ // EXTERNAL MODULE: ./node_modules/@wordpress/dom-ready/build-module/index.js
8014
+ var build_module = __webpack_require__(86);
8015
 
8016
+ // EXTERNAL MODULE: external {"this":["wp","i18n"]}
8017
+ var external_this_wp_i18n_ = __webpack_require__(3);
8018
 
8019
+ // CONCATENATED MODULE: ./node_modules/@wordpress/a11y/build-module/add-intro-text.js
8020
+ /**
8021
+ * WordPress dependencies
8022
+ */
8023
 
8024
+ /**
8025
+ * Build the explanatory text to be placed before the aria live regions.
8026
+ *
8027
+ * This text is initially hidden from assistive technologies by using a `hidden`
8028
+ * HTML attribute which is then removed once a message fills the aria-live regions.
8029
+ *
8030
+ * @return {HTMLParagraphElement} The explanatory text HTML element.
8031
+ */
8032
 
8033
+ function addIntroText() {
8034
+ var introText = document.createElement('p');
8035
+ introText.id = 'a11y-speak-intro-text';
8036
+ introText.className = 'a11y-speak-intro-text';
8037
+ introText.textContent = Object(external_this_wp_i18n_["__"])('Notifications');
8038
+ introText.setAttribute('style', 'position: absolute;' + 'margin: -1px;' + 'padding: 0;' + 'height: 1px;' + 'width: 1px;' + 'overflow: hidden;' + 'clip: rect(1px, 1px, 1px, 1px);' + '-webkit-clip-path: inset(50%);' + 'clip-path: inset(50%);' + 'border: 0;' + 'word-wrap: normal !important;');
8039
+ introText.setAttribute('hidden', 'hidden');
8040
+ var _document = document,
8041
+ body = _document.body;
8042
 
8043
+ if (body) {
8044
+ body.appendChild(introText);
8045
+ }
8046
 
8047
+ return introText;
8048
+ }
8049
+ //# sourceMappingURL=add-intro-text.js.map
8050
+ // CONCATENATED MODULE: ./node_modules/@wordpress/a11y/build-module/add-container.js
8051
  /**
8052
+ * Build the live regions markup.
8053
+ *
8054
+ * @param {string} [ariaLive] Value for the 'aria-live' attribute; default: 'polite'.
8055
+ *
8056
+ * @return {HTMLDivElement} The ARIA live region HTML element.
8057
+ */
8058
+ function addContainer() {
8059
+ var ariaLive = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'polite';
8060
+ var container = document.createElement('div');
8061
+ container.id = "a11y-speak-".concat(ariaLive);
8062
+ container.className = 'a11y-speak-region';
8063
+ container.setAttribute('style', 'position: absolute;' + 'margin: -1px;' + 'padding: 0;' + 'height: 1px;' + 'width: 1px;' + 'overflow: hidden;' + 'clip: rect(1px, 1px, 1px, 1px);' + '-webkit-clip-path: inset(50%);' + 'clip-path: inset(50%);' + 'border: 0;' + 'word-wrap: normal !important;');
8064
+ container.setAttribute('aria-live', ariaLive);
8065
+ container.setAttribute('aria-relevant', 'additions text');
8066
+ container.setAttribute('aria-atomic', 'true');
8067
+ var _document = document,
8068
+ body = _document.body;
8069
+
8070
+ if (body) {
8071
+ body.appendChild(container);
8072
+ }
8073
+
8074
+ return container;
8075
+ }
8076
+ //# sourceMappingURL=add-container.js.map
8077
+ // CONCATENATED MODULE: ./node_modules/@wordpress/a11y/build-module/clear.js
8078
+ /**
8079
+ * Clears the a11y-speak-region elements and hides the explanatory text.
8080
  */
8081
+ function clear() {
8082
+ var regions = document.getElementsByClassName('a11y-speak-region');
8083
+ var introText = document.getElementById('a11y-speak-intro-text');
8084
 
8085
+ for (var i = 0; i < regions.length; i++) {
8086
+ regions[i].textContent = '';
8087
+ } // Make sure the explanatory text is hidden from assistive technologies.
8088
 
8089
 
8090
+ if (introText) {
8091
+ introText.setAttribute('hidden', 'hidden');
8092
+ }
8093
+ }
8094
+ //# sourceMappingURL=clear.js.map
8095
+ // CONCATENATED MODULE: ./node_modules/@wordpress/a11y/build-module/filter-message.js
8096
+ var previousMessage = '';
8097
  /**
8098
+ * Filter the message to be announced to the screenreader.
8099
  *
8100
+ * @param {string} message The message to be announced.
8101
+ *
8102
+ * @return {string} The filtered message.
8103
  */
8104
 
8105
+ function filterMessage(message) {
8106
+ /*
8107
+ * Strip HTML tags (if any) from the message string. Ideally, messages should
8108
+ * be simple strings, carefully crafted for specific use with A11ySpeak.
8109
+ * When re-using already existing strings this will ensure simple HTML to be
8110
+ * stripped out and replaced with a space. Browsers will collapse multiple
8111
+ * spaces natively.
8112
+ */
8113
+ message = message.replace(/<[^<>]+>/g, ' ');
8114
+ /*
8115
+ * Safari + VoiceOver don't announce repeated, identical strings. We use
8116
+ * a `no-break space` to force them to think identical strings are different.
8117
+ */
8118
+
8119
+ if (previousMessage === message) {
8120
+ message += "\xA0";
8121
+ }
8122
+
8123
+ previousMessage = message;
8124
+ return message;
8125
+ }
8126
+ //# sourceMappingURL=filter-message.js.map
8127
+ // CONCATENATED MODULE: ./node_modules/@wordpress/a11y/build-module/index.js
8128
+ /**
8129
+ * WordPress dependencies
8130
+ */
8131
+
8132
+ /**
8133
+ * Internal dependencies
8134
+ */
8135
+
8136
+
8137
+
8138
+
8139
+
8140
+ /**
8141
+ * Create the live regions.
8142
+ */
8143
+
8144
+ function setup() {
8145
+ var introText = document.getElementById('a11y-speak-intro-text');
8146
+ var containerAssertive = document.getElementById('a11y-speak-assertive');
8147
+ var containerPolite = document.getElementById('a11y-speak-polite');
8148
+
8149
+ if (introText === null) {
8150
+ addIntroText();
8151
+ }
8152
+
8153
+ if (containerAssertive === null) {
8154
+ addContainer('assertive');
8155
+ }
8156
+
8157
+ if (containerPolite === null) {
8158
+ addContainer('polite');
8159
+ }
8160
+ }
8161
+ /**
8162
+ * Run setup on domReady.
8163
+ */
8164
+
8165
+ Object(build_module["a" /* default */])(setup);
8166
+ /**
8167
+ * Allows you to easily announce dynamic interface updates to screen readers using ARIA live regions.
8168
+ * This module is inspired by the `speak` function in `wp-a11y.js`.
8169
+ *
8170
+ * @param {string} message The message to be announced by assistive technologies.
8171
+ * @param {string} [ariaLive] The politeness level for aria-live; default: 'polite'.
8172
+ *
8173
+ * @example
8174
+ * ```js
8175
+ * import { speak } from '@wordpress/a11y';
8176
+ *
8177
+ * // For polite messages that shouldn't interrupt what screen readers are currently announcing.
8178
+ * speak( 'The message you want to send to the ARIA live region' );
8179
+ *
8180
+ * // For assertive messages that should interrupt what screen readers are currently announcing.
8181
+ * speak( 'The message you want to send to the ARIA live region', 'assertive' );
8182
+ * ```
8183
+ */
8184
+
8185
+ function speak(message, ariaLive) {
8186
+ /*
8187
+ * Clear previous messages to allow repeated strings being read out and hide
8188
+ * the explanatory text from assistive technologies.
8189
+ */
8190
+ clear();
8191
+ message = filterMessage(message);
8192
+ var introText = document.getElementById('a11y-speak-intro-text');
8193
+ var containerAssertive = document.getElementById('a11y-speak-assertive');
8194
+ var containerPolite = document.getElementById('a11y-speak-polite');
8195
+
8196
+ if (containerAssertive && ariaLive === 'assertive') {
8197
+ containerAssertive.textContent = message;
8198
+ } else if (containerPolite) {
8199
+ containerPolite.textContent = message;
8200
+ }
8201
+ /*
8202
+ * Make the explanatory text available to assistive technologies by removing
8203
+ * the 'hidden' HTML attribute.
8204
+ */
8205
+
8206
+
8207
+ if (introText) {
8208
+ introText.removeAttribute('hidden');
8209
+ }
8210
+ }
8211
+ //# sourceMappingURL=index.js.map
8212
+
8213
+ /***/ }),
8214
+
8215
+ /***/ 19:
8216
+ /***/ (function(module, exports, __webpack_require__) {
8217
+
8218
+ var _typeof = __webpack_require__(48);
8219
+
8220
+ var assertThisInitialized = __webpack_require__(11);
8221
+
8222
+ function _possibleConstructorReturn(self, call) {
8223
+ if (call && (_typeof(call) === "object" || typeof call === "function")) {
8224
+ return call;
8225
+ }
8226
+
8227
+ return assertThisInitialized(self);
8228
+ }
8229
+
8230
+ module.exports = _possibleConstructorReturn;
8231
+
8232
+ /***/ }),
8233
+
8234
+ /***/ 190:
8235
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8236
+
8237
+ "use strict";
8238
+
8239
+ // EXTERNAL MODULE: ./node_modules/@emotion/styled-base/dist/styled-base.browser.esm.js + 1 modules
8240
+ var styled_base_browser_esm = __webpack_require__(41);
8241
+
8242
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js
8243
+ var taggedTemplateLiteral = __webpack_require__(51);
8244
+
8245
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text/styles/font-family.js
8246
+ var fontFamily = "font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto,\nOxygen-Sans, Ubuntu, Cantarell, \"Helvetica Neue\", sans-serif;";
8247
+ //# sourceMappingURL=font-family.js.map
8248
+ // EXTERNAL MODULE: ./node_modules/@emotion/core/dist/core.browser.esm.js + 6 modules
8249
+ var core_browser_esm = __webpack_require__(67);
8250
+
8251
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text/styles/emotion-css.js
8252
+ /**
8253
+ * External dependencies
8254
+ */
8255
+
8256
+ /* harmony default export */ var emotion_css = (core_browser_esm["b" /* css */]);
8257
+ //# sourceMappingURL=emotion-css.js.map
8258
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text/styles/text-mixins.js
8259
+
8260
+
8261
+ function _templateObject9() {
8262
+ var data = Object(taggedTemplateLiteral["a" /* default */])(["\n\t", "\n\t", "\n"]);
8263
+
8264
+ _templateObject9 = function _templateObject9() {
8265
+ return data;
8266
+ };
8267
+
8268
+ return data;
8269
+ }
8270
+
8271
+ function _templateObject8() {
8272
+ var data = Object(taggedTemplateLiteral["a" /* default */])(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
8273
+
8274
+ _templateObject8 = function _templateObject8() {
8275
+ return data;
8276
+ };
8277
+
8278
+ return data;
8279
+ }
8280
+
8281
+ function _templateObject7() {
8282
+ var data = Object(taggedTemplateLiteral["a" /* default */])(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
8283
+
8284
+ _templateObject7 = function _templateObject7() {
8285
+ return data;
8286
+ };
8287
+
8288
+ return data;
8289
+ }
8290
+
8291
+ function _templateObject6() {
8292
+ var data = Object(taggedTemplateLiteral["a" /* default */])(["\n\t\t\t\t", "\n\t\t\t"]);
8293
+
8294
+ _templateObject6 = function _templateObject6() {
8295
+ return data;
8296
+ };
8297
+
8298
+ return data;
8299
+ }
8300
+
8301
+ function _templateObject5() {
8302
+ var data = Object(taggedTemplateLiteral["a" /* default */])(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
8303
+
8304
+ _templateObject5 = function _templateObject5() {
8305
+ return data;
8306
+ };
8307
+
8308
+ return data;
8309
+ }
8310
+
8311
+ function _templateObject4() {
8312
+ var data = Object(taggedTemplateLiteral["a" /* default */])(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
8313
+
8314
+ _templateObject4 = function _templateObject4() {
8315
+ return data;
8316
+ };
8317
+
8318
+ return data;
8319
+ }
8320
+
8321
+ function _templateObject3() {
8322
+ var data = Object(taggedTemplateLiteral["a" /* default */])(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
8323
+
8324
+ _templateObject3 = function _templateObject3() {
8325
+ return data;
8326
+ };
8327
+
8328
+ return data;
8329
+ }
8330
+
8331
+ function _templateObject2() {
8332
+ var data = Object(taggedTemplateLiteral["a" /* default */])(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
8333
+
8334
+ _templateObject2 = function _templateObject2() {
8335
+ return data;
8336
+ };
8337
+
8338
+ return data;
8339
+ }
8340
+
8341
+ function _templateObject() {
8342
+ var data = Object(taggedTemplateLiteral["a" /* default */])(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
8343
+
8344
+ _templateObject = function _templateObject() {
8345
+ return data;
8346
+ };
8347
+
8348
+ return data;
8349
+ }
8350
+
8351
+ /**
8352
+ * Internal dependencies
8353
+ */
8354
+
8355
+
8356
+ var fontWeightNormal = "font-weight: 400;";
8357
+ var fontWeightSemibold = "font-weight: 600;";
8358
+ var title = "\n ".concat(fontWeightNormal, "\n");
8359
+ var titleLarge = "\n\tfont-size: 32px;\n\tline-height: 40px;\n";
8360
+ var titleMedium = "\n\tfont-size: 24px;\n\tline-height: 32px;\n";
8361
+ var titleSmall = "\n\tfont-size: 20px;\n\tline-height: 28px;\n";
8362
+ var subtitle = "\n\t".concat(fontWeightSemibold, "\n\tfont-size: 14px;\n\tline-height: 20px;\n");
8363
+ var subtitleLarge = "\n\tfont-size: 16px;\n\tline-height: 24px;\n";
8364
+ var subtitleSmall = "\n\tfont-size: 14px;\n\tline-height: 20px;\n";
8365
+ var body = "\n\t".concat(fontWeightNormal, "\n");
8366
+ var bodyLarge = "\n\tfont-size: 16px;\n\tline-height: 24px;\n";
8367
+ var bodySmall = "\n\tfont-size: 14px;\n\tline-height: 20px;\n";
8368
+ var text_mixins_button = "\n ".concat(fontWeightSemibold, "\n font-size: 14px;\n line-height: 20px;\n");
8369
+ var caption = "\n\t".concat(fontWeightNormal, "\n\tfont-size: 12px;\n\tline-height: 16px;\n");
8370
+ var label = "\n\t".concat(fontWeightSemibold, "\n\tfont-size: 12px;\n\tline-height: 16px;\n");
8371
+ /**
8372
+ * @typedef {'title.large'|'title.medium'|'title.small'|'subtitle'|'subtitle.small'|'body'|'body.large'|'body.small'|'button'|'caption'|'label'} TextVariant
8373
+ */
8374
+
8375
+ /**
8376
+ * @param {TextVariant} variantName
8377
+ */
8378
+
8379
+ var text_mixins_variant = function variant() {
8380
+ var variantName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'body';
8381
+
8382
+ switch (variantName) {
8383
+ case 'title.large':
8384
+ return emotion_css(_templateObject(), title, titleLarge);
8385
+
8386
+ case 'title.medium':
8387
+ return emotion_css(_templateObject2(), title, titleMedium);
8388
+
8389
+ case 'title.small':
8390
+ return emotion_css(_templateObject3(), title, titleSmall);
8391
+
8392
+ case 'subtitle':
8393
+ return emotion_css(_templateObject4(), subtitle, subtitleLarge);
8394
+
8395
+ case 'subtitle.small':
8396
+ return emotion_css(_templateObject5(), subtitle, subtitleSmall);
8397
+
8398
+ case 'body':
8399
+ return emotion_css(_templateObject6(), body);
8400
+
8401
+ case 'body.large':
8402
+ return emotion_css(_templateObject7(), body, bodyLarge);
8403
+
8404
+ case 'body.small':
8405
+ return emotion_css(_templateObject8(), body, bodySmall);
8406
+
8407
+ case 'button':
8408
+ return text_mixins_button;
8409
+
8410
+ case 'caption':
8411
+ return caption;
8412
+
8413
+ case 'label':
8414
+ return label;
8415
+ }
8416
+ };
8417
+ /**
8418
+ * @typedef {Object} TextProps
8419
+ * @property {TextVariant} variant one of TextVariant to be used
8420
+ */
8421
+
8422
+ /**
8423
+ * @param {TextProps} props
8424
+ */
8425
+
8426
+
8427
+ var text_mixins_text = function text(props) {
8428
+ return emotion_css(_templateObject9(), fontFamily, text_mixins_variant(props.variant));
8429
+ };
8430
+ //# sourceMappingURL=text-mixins.js.map
8431
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text/index.js
8432
+
8433
+
8434
+ /**
8435
+ * Internal dependencies
8436
+ */
8437
+
8438
+
8439
+ var Text = Object(styled_base_browser_esm["a" /* default */])("p", {
8440
+ target: "e15wbhsk0",
8441
+ label: "Text"
8442
+ })("\n\tbox-sizing: border-box;\n\tmargin: 0;\n", text_mixins_text, true ? "" : undefined);
8443
+
8444
+ /* harmony default export */ var build_module_text = __webpack_exports__["a"] = (Text);
8445
+ //# sourceMappingURL=index.js.map
8446
+
8447
+ /***/ }),
8448
+
8449
+ /***/ 191:
8450
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8451
+
8452
+ "use strict";
8453
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return getCountryCode; });
8454
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return getCurrencyRegion; });
8455
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return getProductIdsForCart; });
8456
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getCategorizedOnboardingProducts; });
8457
+ /* unused harmony export getProductList */
8458
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return getPriceValue; });
8459
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return isWCAdmin; });
8460
+ /* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(30);
8461
+ /* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__);
8462
+ /* harmony import */ var _wordpress_html_entities__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(81);
8463
+ /* harmony import */ var _wordpress_html_entities__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_html_entities__WEBPACK_IMPORTED_MODULE_1__);
8464
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2);
8465
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_2__);
8466
+ /* harmony import */ var _woocommerce_wc_admin_settings__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(36);
8467
+
8468
+
8469
+ /**
8470
+ * External dependencies
8471
+ */
8472
+
8473
+
8474
+
8475
+ /**
8476
+ * Gets the country code from a country:state value string.
8477
+ *
8478
+ * @param {string} countryState Country state string, e.g. US:GA.
8479
+ * @return {string} Country string.
8480
+ */
8481
+
8482
+ function getCountryCode(countryState) {
8483
+ if (!countryState) {
8484
  return null;
8485
  }
8486
 
8488
  }
8489
  function getCurrencyRegion(countryState) {
8490
  var region = getCountryCode(countryState);
8491
+ var euCountries = Object(lodash__WEBPACK_IMPORTED_MODULE_2__["without"])(Object(_woocommerce_wc_admin_settings__WEBPACK_IMPORTED_MODULE_3__[/* getSetting */ "g"])('onboarding', {
8492
  euCountries: []
8493
  }).euCountries, 'GB');
8494
 
8562
  function getProductList(profileItems) {
8563
  var includeInstalledItems = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
8564
  var installedPlugins = arguments.length > 2 ? arguments[2] : undefined;
8565
+ var onboarding = Object(_woocommerce_wc_admin_settings__WEBPACK_IMPORTED_MODULE_3__[/* getSetting */ "g"])('onboarding', {});
8566
  var productList = []; // The population of onboarding.productTypes only happens if the task list should be shown
8567
  // so bail early if it isn't present.
8568
 
8594
  */
8595
 
8596
  function getPriceValue(string) {
8597
+ return Number(Object(_wordpress_html_entities__WEBPACK_IMPORTED_MODULE_1__["decodeEntities"])(string).replace(/[^0-9.-]+/g, ''));
8598
  }
8599
  /**
8600
  * Determines if a URL is a WC admin url.
8608
  }
8609
 
8610
  /***/ }),
 
 
 
 
 
 
 
 
 
8611
 
8612
+ /***/ 197:
8613
+ /***/ (function(module, exports) {
 
 
 
8614
 
8615
+ function _inheritsLoose(subClass, superClass) {
8616
+ subClass.prototype = Object.create(superClass.prototype);
8617
+ subClass.prototype.constructor = subClass;
8618
+ subClass.__proto__ = superClass;
8619
  }
8620
 
8621
+ module.exports = _inheritsLoose;
8622
 
8623
  /***/ }),
 
 
8624
 
8625
+ /***/ 2:
8626
+ /***/ (function(module, exports) {
8627
 
8628
+ (function() { module.exports = this["lodash"]; }());
8629
+
8630
+ /***/ }),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8631
 
8632
+ /***/ 20:
8633
+ /***/ (function(module, exports) {
8634
+
8635
+ (function() { module.exports = this["wp"]["data"]; }());
8636
 
8637
  /***/ }),
8638
+
8639
+ /***/ 21:
8640
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8641
 
8642
  "use strict";
8643
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _classCallCheck; });
8644
+ function _classCallCheck(instance, Constructor) {
8645
+ if (!(instance instanceof Constructor)) {
8646
+ throw new TypeError("Cannot call a class as a function");
8647
+ }
8648
+ }
8649
 
8650
+ /***/ }),
 
 
 
 
 
 
 
 
 
 
 
 
 
8651
 
8652
+ /***/ 214:
8653
+ /***/ (function(module, exports) {
 
 
 
 
 
 
 
 
 
 
 
 
8654
 
8655
+ (function() { module.exports = this["wc"]["currency"]; }());
8656
 
8657
+ /***/ }),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8658
 
8659
+ /***/ 22:
8660
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
 
 
 
 
8661
 
8662
+ "use strict";
8663
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _createClass; });
8664
+ function _defineProperties(target, props) {
8665
+ for (var i = 0; i < props.length; i++) {
8666
+ var descriptor = props[i];
8667
+ descriptor.enumerable = descriptor.enumerable || false;
8668
+ descriptor.configurable = true;
8669
+ if ("value" in descriptor) descriptor.writable = true;
8670
+ Object.defineProperty(target, descriptor.key, descriptor);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8671
  }
8672
+ }
8673
 
8674
+ function _createClass(Constructor, protoProps, staticProps) {
8675
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
8676
+ if (staticProps) _defineProperties(Constructor, staticProps);
8677
+ return Constructor;
8678
+ }
8679
 
8680
  /***/ }),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8681
 
8682
+ /***/ 23:
8683
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
8684
 
8685
  "use strict";
8686
 
8687
+ // EXPORTS
8688
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _inherits; });
8689
 
8690
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
8691
+ function _setPrototypeOf(o, p) {
8692
+ _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
8693
+ o.__proto__ = p;
8694
+ return o;
8695
+ };
8696
 
8697
+ return _setPrototypeOf(o, p);
8698
+ }
8699
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
8700
 
8701
+ function _inherits(subClass, superClass) {
8702
+ if (typeof superClass !== "function" && superClass !== null) {
8703
+ throw new TypeError("Super expression must either be null or a function");
8704
+ }
8705
 
8706
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
8707
+ constructor: {
8708
+ value: subClass,
8709
+ writable: true,
8710
+ configurable: true
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8711
  }
8712
+ });
8713
+ if (superClass) _setPrototypeOf(subClass, superClass);
8714
+ }
8715
 
8716
+ /***/ }),
 
 
 
 
 
 
 
8717
 
8718
+ /***/ 24:
8719
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8720
 
8721
+ "use strict";
8722
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _possibleConstructorReturn; });
8723
+ /* harmony import */ var _babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(47);
8724
+ /* harmony import */ var _babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(13);
8725
 
 
 
8726
 
8727
+ function _possibleConstructorReturn(self, call) {
8728
+ if (call && (Object(_babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(call) === "object" || typeof call === "function")) {
8729
+ return call;
8730
+ }
 
8731
 
8732
+ return Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(self);
8733
+ }
8734
 
8735
  /***/ }),
 
 
 
8736
 
8737
+ /***/ 26:
8738
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8739
+
8740
+ "use strict";
8741
+
8742
+ // EXPORTS
8743
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _slicedToArray; });
8744
+
8745
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
8746
+ function _arrayWithHoles(arr) {
8747
+ if (Array.isArray(arr)) return arr;
8748
+ }
8749
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
8750
+ function _iterableToArrayLimit(arr, i) {
8751
+ if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;
8752
+ var _arr = [];
8753
+ var _n = true;
8754
+ var _d = false;
8755
+ var _e = undefined;
8756
 
 
 
8757
  try {
8758
+ for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
8759
+ _arr.push(_s.value);
8760
+
8761
+ if (i && _arr.length === i) break;
8762
+ }
8763
+ } catch (err) {
8764
+ _d = true;
8765
+ _e = err;
8766
+ } finally {
8767
+ try {
8768
+ if (!_n && _i["return"] != null) _i["return"]();
8769
+ } finally {
8770
+ if (_d) throw _e;
8771
+ }
8772
  }
8773
+
8774
+ return _arr;
8775
+ }
8776
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
8777
+ var unsupportedIterableToArray = __webpack_require__(68);
8778
+
8779
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
8780
+ function _nonIterableRest() {
8781
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
8782
+ }
8783
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
8784
+
8785
+
8786
 
8787
 
8788
+ function _slicedToArray(arr, i) {
8789
+ return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || Object(unsupportedIterableToArray["a" /* default */])(arr, i) || _nonIterableRest();
8790
+ }
8791
+
8792
  /***/ }),
 
 
8793
 
8794
+ /***/ 27:
8795
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8796
+
8797
+ "use strict";
8798
+
8799
+ // EXPORTS
8800
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _toConsumableArray; });
8801
+
8802
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
8803
+ var arrayLikeToArray = __webpack_require__(59);
8804
+
8805
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
8806
+
8807
+ function _arrayWithoutHoles(arr) {
8808
+ if (Array.isArray(arr)) return Object(arrayLikeToArray["a" /* default */])(arr);
8809
+ }
8810
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js
8811
+ function _iterableToArray(iter) {
8812
+ if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter);
8813
+ }
8814
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
8815
+ var unsupportedIterableToArray = __webpack_require__(68);
8816
+
8817
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
8818
+ function _nonIterableSpread() {
8819
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
8820
+ }
8821
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
8822
+
8823
+
8824
 
 
 
 
8825
 
8826
+ function _toConsumableArray(arr) {
8827
+ return _arrayWithoutHoles(arr) || _iterableToArray(arr) || Object(unsupportedIterableToArray["a" /* default */])(arr) || _nonIterableSpread();
8828
+ }
8829
 
8830
  /***/ }),
 
 
8831
 
8832
+ /***/ 277:
8833
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
8834
 
8835
+ "use strict";
8836
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
8837
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);
8838
+ /**
8839
+ * External dependencies
8840
+ */
8841
 
8842
+ /**
8843
+ * Composes multiple higher-order components into a single higher-order component. Performs right-to-left function
8844
+ * composition, where each successive invocation is supplied the return value of the previous.
8845
+ *
8846
+ * @param {...Function} hocs The HOC functions to invoke.
8847
+ *
8848
+ * @return {Function} Returns the new composite function.
8849
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8850
 
8851
+ /* harmony default export */ __webpack_exports__["a"] = (lodash__WEBPACK_IMPORTED_MODULE_0__["flowRight"]);
8852
+ //# sourceMappingURL=compose.js.map
8853
 
8854
  /***/ }),
8855
+
8856
+ /***/ 280:
 
 
 
 
 
 
8857
  /***/ (function(module, exports) {
8858
 
8859
+ function _objectWithoutPropertiesLoose(source, excluded) {
8860
+ if (source == null) return {};
8861
+ var target = {};
8862
+ var sourceKeys = Object.keys(source);
8863
+ var key, i;
8864
+
8865
+ for (i = 0; i < sourceKeys.length; i++) {
8866
+ key = sourceKeys[i];
8867
+ if (excluded.indexOf(key) >= 0) continue;
8868
+ target[key] = source[key];
8869
+ }
8870
+
8871
+ return target;
8872
+ }
8873
+
8874
+ module.exports = _objectWithoutPropertiesLoose;
8875
 
8876
  /***/ }),
8877
+
8878
+ /***/ 281:
 
 
 
 
8879
  /***/ (function(module, exports, __webpack_require__) {
8880
 
8881
  "use strict";
8882
 
8883
 
8884
  if (true) {
8885
+ module.exports = __webpack_require__(307);
8886
  } else {}
8887
 
8888
 
8889
  /***/ }),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8890
 
8891
+ /***/ 29:
8892
+ /***/ (function(module, exports) {
8893
 
8894
+ (function() { module.exports = this["wp"]["dataControls"]; }());
8895
 
8896
+ /***/ }),
8897
 
8898
+ /***/ 292:
8899
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8900
 
8901
+ "use strict";
8902
+ /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3);
8903
+ /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__);
8904
+ /* harmony import */ var _wordpress_hooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55);
8905
+ /* harmony import */ var _wordpress_hooks__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_hooks__WEBPACK_IMPORTED_MODULE_1__);
8906
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
8907
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__);
8908
+ /* harmony import */ var _settings__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(36);
8909
  /**
8910
  * External dependencies
8911
  */
8912
 
8913
 
8914
 
8915
+ /**
8916
+ * Internal dependencies
8917
+ */
8918
+
8919
 
8920
+ var manageStock = Object(_settings__WEBPACK_IMPORTED_MODULE_3__[/* getSetting */ "g"])('manageStock', 'no');
8921
  var REPORTS_FILTER = 'woocommerce_admin_reports_list';
8922
  /**
8923
  * Internal dependencies
8924
  */
8925
 
8926
+ var RevenueReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["lazy"])(function () {
8927
+ return Promise.all(/* import() | analytics-report-revenue */[__webpack_require__.e(1), __webpack_require__.e(0), __webpack_require__.e(20)]).then(__webpack_require__.bind(null, 745));
8928
  });
8929
+ var ProductsReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["lazy"])(function () {
8930
+ return Promise.all(/* import() | analytics-report-products */[__webpack_require__.e(1), __webpack_require__.e(0), __webpack_require__.e(7), __webpack_require__.e(19)]).then(__webpack_require__.bind(null, 741));
8931
  });
8932
+ var VariationsReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["lazy"])(function () {
8933
+ return Promise.all(/* import() | analytics-report-variations */[__webpack_require__.e(1), __webpack_require__.e(0), __webpack_require__.e(23)]).then(__webpack_require__.bind(null, 746));
8934
  });
8935
+ var OrdersReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["lazy"])(function () {
8936
+ return Promise.all(/* import() | analytics-report-orders */[__webpack_require__.e(1), __webpack_require__.e(0), __webpack_require__.e(8), __webpack_require__.e(18)]).then(__webpack_require__.bind(null, 747));
8937
  });
8938
+ var CategoriesReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["lazy"])(function () {
8939
+ return Promise.all(/* import() | analytics-report-categories */[__webpack_require__.e(1), __webpack_require__.e(0), __webpack_require__.e(7), __webpack_require__.e(14)]).then(__webpack_require__.bind(null, 743));
8940
  });
8941
+ var CouponsReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["lazy"])(function () {
8942
+ return Promise.all(/* import() | analytics-report-coupons */[__webpack_require__.e(1), __webpack_require__.e(0), __webpack_require__.e(15)]).then(__webpack_require__.bind(null, 748));
8943
  });
8944
+ var TaxesReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["lazy"])(function () {
8945
+ return Promise.all(/* import() | analytics-report-taxes */[__webpack_require__.e(1), __webpack_require__.e(0), __webpack_require__.e(22)]).then(__webpack_require__.bind(null, 749));
8946
  });
8947
+ var DownloadsReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["lazy"])(function () {
8948
+ return Promise.all(/* import() | analytics-report-downloads */[__webpack_require__.e(1), __webpack_require__.e(0), __webpack_require__.e(17)]).then(__webpack_require__.bind(null, 750));
8949
  });
8950
+ var StockReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["lazy"])(function () {
8951
+ return Promise.all(/* import() | analytics-report-stock */[__webpack_require__.e(0), __webpack_require__.e(21)]).then(__webpack_require__.bind(null, 742));
8952
  });
8953
+ var CustomersReport = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["lazy"])(function () {
8954
+ return Promise.all(/* import() | analytics-report-customers */[__webpack_require__.e(0), __webpack_require__.e(16)]).then(__webpack_require__.bind(null, 744));
8955
  });
8956
  /* harmony default export */ __webpack_exports__["a"] = (function () {
8957
  var reports = [{
8958
  report: 'revenue',
8959
+ title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__["__"])('Revenue', 'woocommerce-admin'),
8960
  component: RevenueReport,
8961
+ id: 'woocommerce-analytics-revenue'
 
 
8962
  }, {
8963
  report: 'products',
8964
+ title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__["__"])('Products', 'woocommerce-admin'),
8965
  component: ProductsReport,
8966
+ id: 'woocommerce-analytics-products'
 
 
8967
  }, {
8968
  report: 'variations',
8969
+ title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__["__"])('Variations', 'woocommerce-admin'),
8970
  component: VariationsReport,
8971
+ id: 'woocommerce-analytics-variations'
 
 
8972
  }, {
8973
  report: 'orders',
8974
+ title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__["__"])('Orders', 'woocommerce-admin'),
8975
  component: OrdersReport,
8976
+ id: 'woocommerce-analytics-orders'
 
 
8977
  }, {
8978
  report: 'categories',
8979
+ title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__["__"])('Categories', 'woocommerce-admin'),
8980
  component: CategoriesReport,
8981
+ id: 'woocommerce-analytics-categories'
 
 
8982
  }, {
8983
  report: 'coupons',
8984
+ title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__["__"])('Coupons', 'woocommerce-admin'),
8985
  component: CouponsReport,
8986
+ id: 'woocommerce-analytics-coupons'
 
 
8987
  }, {
8988
  report: 'taxes',
8989
+ title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__["__"])('Taxes', 'woocommerce-admin'),
8990
  component: TaxesReport,
8991
+ id: 'woocommerce-analytics-taxes'
 
 
8992
  }, manageStock === 'yes' ? {
8993
  report: 'stock',
8994
+ title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__["__"])('Stock', 'woocommerce-admin'),
8995
  component: StockReport,
8996
+ id: 'woocommerce-analytics-stock'
 
 
8997
  } : null, {
8998
  report: 'customers',
8999
+ title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__["__"])('Customers', 'woocommerce-admin'),
9000
+ component: CustomersReport,
9001
+ id: null
9002
  }, {
9003
  report: 'downloads',
9004
+ title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__["__"])('Downloads', 'woocommerce-admin'),
9005
  component: DownloadsReport,
9006
+ id: 'woocommerce-analytics-downloads'
 
 
9007
  }].filter(Boolean);
9008
+ return Object(_wordpress_hooks__WEBPACK_IMPORTED_MODULE_1__["applyFilters"])(REPORTS_FILTER, reports);
9009
  });
9010
 
9011
  /***/ }),
9012
+
9013
+ /***/ 293:
9014
  /***/ (function(module, exports, __webpack_require__) {
9015
 
9016
  "use strict";
9017
 
9018
 
9019
+ var reactIs = __webpack_require__(281);
9020
 
9021
  /**
9022
  * Copyright 2015, Yahoo! Inc.
9120
 
9121
 
9122
  /***/ }),
9123
+
9124
+ /***/ 295:
9125
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
9126
+
9127
+ "use strict";
9128
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useIsScrolled; });
9129
+ /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(34);
9130
+ /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__);
9131
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
9132
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__);
9133
+
9134
+
9135
+ /**
9136
+ * External dependencies
9137
+ */
9138
+
9139
+ function useIsScrolled() {
9140
+ var _useState = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useState"])(false),
9141
+ _useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_useState, 2),
9142
+ isScrolled = _useState2[0],
9143
+ setIsScrolled = _useState2[1];
9144
+
9145
+ var rafHandle = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useRef"])(null);
9146
+ Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useEffect"])(function () {
9147
+ var updateIsScrolled = function updateIsScrolled() {
9148
+ setIsScrolled(window.pageYOffset > 20);
9149
+ };
9150
+
9151
+ var scrollListener = function scrollListener() {
9152
+ rafHandle.current = window.requestAnimationFrame(updateIsScrolled);
9153
+ };
9154
+
9155
+ window.addEventListener('scroll', scrollListener);
9156
+ return function () {
9157
+ window.removeEventListener('scroll', scrollListener);
9158
+ window.cancelAnimationFrame(rafHandle.current);
9159
+ };
9160
+ }, []);
9161
+ return isScrolled;
9162
+ }
9163
+
9164
+ /***/ }),
9165
+
9166
+ /***/ 296:
9167
  /***/ (function(module, exports) {
9168
 
9169
+ (function() { module.exports = this["wp"]["plugins"]; }());
9170
 
9171
  /***/ }),
9172
+
9173
+ /***/ 297:
9174
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9175
 
9176
  "use strict";
9180
  __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ PageLayout; });
9181
  __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ EmbedLayout; });
9182
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9183
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/extends.js
9184
+ var helpers_extends = __webpack_require__(38);
9185
  var extends_default = /*#__PURE__*/__webpack_require__.n(helpers_extends);
9186
 
9187
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js
9188
+ var objectWithoutProperties = __webpack_require__(62);
9189
  var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
9190
 
9191
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/defineProperty.js
9192
+ var defineProperty = __webpack_require__(5);
9193
  var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);
9194
 
9195
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/classCallCheck.js
9196
+ var classCallCheck = __webpack_require__(17);
9197
  var classCallCheck_default = /*#__PURE__*/__webpack_require__.n(classCallCheck);
9198
 
9199
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/createClass.js
9200
+ var createClass = __webpack_require__(15);
9201
  var createClass_default = /*#__PURE__*/__webpack_require__.n(createClass);
9202
 
9203
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/inherits.js
9204
+ var inherits = __webpack_require__(18);
9205
  var inherits_default = /*#__PURE__*/__webpack_require__.n(inherits);
9206
 
9207
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js
9208
+ var possibleConstructorReturn = __webpack_require__(19);
9209
  var possibleConstructorReturn_default = /*#__PURE__*/__webpack_require__.n(possibleConstructorReturn);
9210
 
9211
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/getPrototypeOf.js
9212
+ var getPrototypeOf = __webpack_require__(9);
9213
  var getPrototypeOf_default = /*#__PURE__*/__webpack_require__.n(getPrototypeOf);
9214
 
9215
+ // EXTERNAL MODULE: external {"this":["wp","element"]}
9216
+ var external_this_wp_element_ = __webpack_require__(0);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9217
 
9218
+ // EXTERNAL MODULE: ./node_modules/@wordpress/compose/build-module/higher-order/compose.js
9219
+ var compose = __webpack_require__(277);
9220
 
9221
+ // EXTERNAL MODULE: external {"this":["wp","data"]}
9222
+ var external_this_wp_data_ = __webpack_require__(20);
9223
 
9224
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
9225
+ var inheritsLoose = __webpack_require__(56);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9226
 
9227
  // EXTERNAL MODULE: external "React"
9228
+ var external_React_ = __webpack_require__(6);
9229
  var external_React_default = /*#__PURE__*/__webpack_require__.n(external_React_);
9230
 
9231
  // EXTERNAL MODULE: ./node_modules/prop-types/index.js
9233
  var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
9234
 
9235
  // EXTERNAL MODULE: ./node_modules/history/esm/history.js + 2 modules
9236
+ var esm_history = __webpack_require__(127);
9237
 
9238
  // EXTERNAL MODULE: ./node_modules/mini-create-react-context/dist/esm/index.js
9239
+ var esm = __webpack_require__(537);
9240
 
9241
  // EXTERNAL MODULE: ./node_modules/tiny-invariant/dist/tiny-invariant.esm.js
9242
+ var tiny_invariant_esm = __webpack_require__(103);
9243
 
9244
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
9245
+ var esm_extends = __webpack_require__(7);
9246
 
9247
  // EXTERNAL MODULE: ./node_modules/path-to-regexp/index.js
9248
+ var path_to_regexp = __webpack_require__(437);
9249
  var path_to_regexp_default = /*#__PURE__*/__webpack_require__.n(path_to_regexp);
9250
 
9251
  // EXTERNAL MODULE: ./node_modules/react-is/index.js
9252
+ var react_is = __webpack_require__(281);
9253
 
9254
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
9255
+ var objectWithoutPropertiesLoose = __webpack_require__(58);
9256
 
9257
  // EXTERNAL MODULE: ./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
9258
+ var hoist_non_react_statics_cjs = __webpack_require__(293);
9259
  var hoist_non_react_statics_cjs_default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics_cjs);
9260
 
9261
  // CONCATENATED MODULE: ./node_modules/react-router/esm/react-router.js
9280
  return context;
9281
  };
9282
 
 
 
 
 
 
 
 
 
 
 
 
 
9283
  var react_router_context =
9284
  /*#__PURE__*/
9285
+ react_router_createNamedContext("Router");
9286
 
9287
  /**
9288
  * The public API for putting history on context.
9350
 
9351
  _proto.render = function render() {
9352
  return external_React_default.a.createElement(react_router_context.Provider, {
9353
+ children: this.props.children || null,
9354
  value: {
9355
  history: this.props.history,
9356
  location: this.state.location,
9357
  match: Router.computeRootMatch(this.state.location.pathname),
9358
  staticContext: this.props.staticContext
9359
  }
9360
+ });
 
 
 
9361
  };
9362
 
9363
  return Router;
9878
  function useHistory() {
9879
  if (false) {}
9880
 
9881
+ return useContext(react_router_context).history;
9882
  }
9883
  function useLocation() {
9884
  if (false) {}
9894
  function useRouteMatch(path) {
9895
  if (false) {}
9896
 
9897
+ return path ? matchPath(useLocation().pathname, path) : useContext(react_router_context).match;
 
 
9898
  }
9899
 
9900
  if (false) { var secondaryBuildName, initialBuildName, buildNames, react_router_key, global; }
9903
  //# sourceMappingURL=react-router.js.map
9904
 
9905
  // EXTERNAL MODULE: external "lodash"
9906
+ var external_lodash_ = __webpack_require__(2);
9907
 
9908
  // EXTERNAL MODULE: ./node_modules/qs/lib/index.js
9909
+ var lib = __webpack_require__(87);
9910
 
9911
+ // EXTERNAL MODULE: external {"this":["wc","components"]}
9912
+ var external_this_wc_components_ = __webpack_require__(77);
9913
 
9914
+ // EXTERNAL MODULE: external {"this":["wc","navigation"]}
9915
+ var external_this_wc_navigation_ = __webpack_require__(32);
9916
 
9917
+ // EXTERNAL MODULE: ./client/settings/index.js
9918
+ var settings = __webpack_require__(36);
9919
 
9920
+ // EXTERNAL MODULE: external {"this":["wc","data"]}
9921
+ var external_this_wc_data_ = __webpack_require__(35);
9922
 
9923
+ // EXTERNAL MODULE: external {"this":["wc","tracks"]}
9924
+ var external_this_wc_tracks_ = __webpack_require__(64);
 
 
 
9925
 
9926
  // EXTERNAL MODULE: ./client/layout/style.scss
9927
+ var layout_style = __webpack_require__(566);
 
 
 
 
 
 
 
 
 
9928
 
9929
+ // EXTERNAL MODULE: external {"this":["wp","hooks"]}
9930
+ var external_this_wp_hooks_ = __webpack_require__(55);
9931
 
9932
+ // EXTERNAL MODULE: external {"this":["wp","i18n"]}
9933
+ var external_this_wp_i18n_ = __webpack_require__(3);
 
 
 
 
 
 
9934
 
9935
  // EXTERNAL MODULE: ./client/analytics/report/get-reports.js
9936
+ var get_reports = __webpack_require__(292);
9937
 
9938
  // EXTERNAL MODULE: ./client/dashboard/utils.js
9939
+ var utils = __webpack_require__(191);
9940
 
9941
  // CONCATENATED MODULE: ./client/layout/controller.js
9942
 
9946
 
9947
 
9948
 
 
9949
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = getPrototypeOf_default()(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = getPrototypeOf_default()(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return possibleConstructorReturn_default()(this, result); }; }
9950
 
9951
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9952
 
9953
  /**
9954
  * External dependencies
9960
 
9961
 
9962
 
 
9963
  /**
9964
  * Internal dependencies
9965
  */
9966
 
9967
 
9968
 
9969
+ var AnalyticsReport = Object(external_this_wp_element_["lazy"])(function () {
9970
+ return __webpack_require__.e(/* import() | analytics-report */ 13).then(__webpack_require__.bind(null, 840));
 
 
 
9971
  });
9972
+ var AnalyticsSettings = Object(external_this_wp_element_["lazy"])(function () {
9973
+ return Promise.all(/* import() | analytics-settings */[__webpack_require__.e(3), __webpack_require__.e(24)]).then(__webpack_require__.bind(null, 850));
9974
  });
9975
+ var Dashboard = Object(external_this_wp_element_["lazy"])(function () {
9976
+ return __webpack_require__.e(/* import() | dashboard */ 31).then(__webpack_require__.bind(null, 841));
9977
  });
9978
+ var Homescreen = Object(external_this_wp_element_["lazy"])(function () {
9979
+ return Promise.all(/* import() | homescreen */[__webpack_require__.e(2), __webpack_require__.e(4), __webpack_require__.e(5), __webpack_require__.e(6), __webpack_require__.e(35)]).then(__webpack_require__.bind(null, 847));
9980
  });
9981
+ var MarketingOverview = Object(external_this_wp_element_["lazy"])(function () {
9982
+ return Promise.all(/* import() | marketing-overview */[__webpack_require__.e(2), __webpack_require__.e(5), __webpack_require__.e(6), __webpack_require__.e(39)]).then(__webpack_require__.bind(null, 852));
9983
  });
9984
+ var ProfileWizard = Object(external_this_wp_element_["lazy"])(function () {
9985
+ return Promise.all(/* import() | profile-wizard */[__webpack_require__.e(2), __webpack_require__.e(5), __webpack_require__.e(53), __webpack_require__.e(47)]).then(__webpack_require__.bind(null, 848));
9986
  });
9987
+ var TIME_EXCLUDED_SCREENS_FILTER = 'woocommerce_admin_time_excluded_screens';
9988
  var PAGES_FILTER = 'woocommerce_admin_pages_list';
9989
  var controller_getPages = function getPages() {
9990
  var pages = [];
9992
  pages.push({
9993
  container: Homescreen,
9994
  path: '/',
9995
+ breadcrumbs: [].concat(initialBreadcrumbs, [Object(external_this_wp_i18n_["__"])('Home', 'woocommerce-admin')]),
9996
  wpOpenMenu: 'toplevel_page_woocommerce',
9997
+ id: 'home'
 
 
 
9998
  });
9999
 
10000
  if (window.wcAdminFeatures.analytics) {
10001
  pages.push({
10002
  container: Dashboard,
10003
  path: '/analytics/overview',
10004
+ breadcrumbs: [].concat(initialBreadcrumbs, [['/analytics/overview', Object(external_this_wp_i18n_["__"])('Analytics', 'woocommerce-admin')], Object(external_this_wp_i18n_["__"])('Overview', 'woocommerce-admin')]),
10005
  wpOpenMenu: 'toplevel_page_wc-admin-path--analytics-overview',
10006
+ id: 'woocommerce-analytics-overview'
 
 
 
10007
  });
10008
  pages.push({
10009
  container: AnalyticsSettings,
10010
  path: '/analytics/settings',
10011
+ breadcrumbs: [].concat(initialBreadcrumbs, [['/analytics/revenue', Object(external_this_wp_i18n_["__"])('Analytics', 'woocommerce-admin')], Object(external_this_wp_i18n_["__"])('Settings', 'woocommerce-admin')]),
10012
  wpOpenMenu: 'toplevel_page_wc-admin-path--analytics-overview',
10013
+ id: 'woocommerce-analytics-settings'
 
 
 
10014
  });
10015
  pages.push({
10016
  container: AnalyticsReport,
10017
  path: '/customers',
10018
+ breadcrumbs: [].concat(initialBreadcrumbs, [Object(external_this_wp_i18n_["__"])('Customers', 'woocommerce-admin')]),
10019
  wpOpenMenu: 'toplevel_page_woocommerce',
10020
+ id: 'woocommerce-analytics-customers'
 
 
 
10021
  });
10022
  pages.push({
10023
  container: AnalyticsReport,
10032
  return [];
10033
  }
10034
 
10035
+ return [].concat(initialBreadcrumbs, [['/analytics/revenue', Object(external_this_wp_i18n_["__"])('Analytics', 'woocommerce-admin')], report.title]);
10036
  },
10037
+ wpOpenMenu: 'toplevel_page_wc-admin-path--analytics-overview'
 
10038
  });
10039
  }
10040
 
10042
  pages.push({
10043
  container: MarketingOverview,
10044
  path: '/marketing',
10045
+ breadcrumbs: [].concat(initialBreadcrumbs, [['/marketing', Object(external_this_wp_i18n_["__"])('Marketing', 'woocommerce-admin')], Object(external_this_wp_i18n_["__"])('Overview', 'woocommerce-admin')]),
10046
  wpOpenMenu: 'toplevel_page_woocommerce-marketing',
10047
+ id: 'woocommerce-marketing'
 
 
 
10048
  });
10049
  }
10050
 
10052
  pages.push({
10053
  container: ProfileWizard,
10054
  path: '/setup-wizard',
10055
+ breadcrumbs: [].concat(initialBreadcrumbs, [['/setup-wizard', Object(external_this_wp_i18n_["__"])('Setup Wizard', 'woocommerce-admin')]])
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10056
  });
10057
  }
10058
 
10059
+ return Object(external_this_wp_hooks_["applyFilters"])(PAGES_FILTER, pages);
10060
  };
10061
  var controller_Controller = /*#__PURE__*/function (_Component) {
10062
  inherits_default()(Controller, _Component);
10082
  var baseQuery = Object(external_lodash_["omit"])(this.props.query, 'chartType', 'filter', 'paged');
10083
 
10084
  if (prevProps.query.paged > 1 && !Object(external_lodash_["isEqual"])(prevBaseQuery, baseQuery)) {
10085
+ Object(external_this_wc_navigation_["getHistory"])().replace(Object(external_this_wc_navigation_["getNewPath"])({
10086
  paged: 1
10087
  }));
10088
  }
10102
  params = match.params;
10103
  window.wpNavMenuUrlUpdate(query);
10104
  window.wpNavMenuClassChange(page, url);
10105
+ return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Suspense"], {
10106
+ fallback: Object(external_this_wp_element_["createElement"])(external_this_wc_components_["Spinner"], null)
10107
+ }, Object(external_this_wp_element_["createElement"])(page.container, {
10108
  params: params,
10109
  path: url,
10110
  pathMatch: page.path,
10114
  }]);
10115
 
10116
  return Controller;
10117
+ }(external_this_wp_element_["Component"]);
10118
  /**
10119
  * Update an anchor's link in sidebar to include persisted queries. Leave excluded screens
10120
  * as is.
10129
  var search = Object(external_lodash_["last"])(item.href.split('?'));
10130
  var query = Object(lib["parse"])(search);
10131
  var path = query.path || 'homescreen';
10132
+ var screen = path.replace('/analytics', '').replace('/', '');
10133
  var isExcludedScreen = excludedScreens.includes(screen);
10134
  var href = 'admin.php?' + Object(lib["stringify"])(Object.assign(query, isExcludedScreen ? {} : nextQuery)); // Replace the href so you can see the url on hover.
10135
 
10137
 
10138
  item.onclick = function (e) {
10139
  e.preventDefault();
10140
+ Object(external_this_wc_navigation_["getHistory"])().push(href);
10141
  };
10142
  }
10143
  } // Update's wc-admin links in wp-admin menu
10144
 
10145
  window.wpNavMenuUrlUpdate = function (query) {
10146
+ var excludedScreens = Object(external_this_wp_hooks_["applyFilters"])(TIME_EXCLUDED_SCREENS_FILTER, ['stock', 'settings', 'customers', 'homescreen']);
10147
+ var nextQuery = Object(external_this_wc_navigation_["getPersistedQuery"])(query);
10148
  Array.from(document.querySelectorAll('#adminmenu a')).forEach(function (item) {
10149
  return updateLinkHref(item, nextQuery, excludedScreens);
10150
  });
10184
  var wpWrap = document.querySelector('#wpwrap');
10185
  wpWrap.classList.remove('wp-responsive-open');
10186
  };
 
 
 
 
 
 
 
 
 
 
 
 
10187
  // EXTERNAL MODULE: ./node_modules/classnames/index.js
10188
+ var classnames = __webpack_require__(4);
10189
  var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
10190
 
10191
+ // EXTERNAL MODULE: external {"this":["wp","htmlEntities"]}
10192
+ var external_this_wp_htmlEntities_ = __webpack_require__(81);
10193
 
10194
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/text/index.js + 3 modules
10195
+ var build_module_text = __webpack_require__(190);
10196
 
10197
+ // EXTERNAL MODULE: ./client/header/style.scss
10198
+ var header_style = __webpack_require__(567);
10199
 
10200
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/toConsumableArray.js
10201
+ var toConsumableArray = __webpack_require__(30);
10202
+ var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
10203
 
10204
+ // EXTERNAL MODULE: ./node_modules/react-click-outside/dist/index.js
10205
+ var dist = __webpack_require__(533);
10206
+ var dist_default = /*#__PURE__*/__webpack_require__.n(dist);
10207
 
10208
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/button/index.js
10209
+ var build_module_button = __webpack_require__(72);
10210
 
10211
+ // EXTERNAL MODULE: ./node_modules/gridicons/dist/cross-small.js
10212
+ var cross_small = __webpack_require__(534);
10213
+ var cross_small_default = /*#__PURE__*/__webpack_require__.n(cross_small);
10214
 
10215
+ // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/icon/index.js
10216
+ var build_module_icon = __webpack_require__(570);
10217
 
10218
+ // EXTERNAL MODULE: ./node_modules/@wordpress/primitives/build-module/svg/index.js
10219
+ var svg = __webpack_require__(88);
10220
 
10221
+ // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/lifesaver.js
10222
 
10223
 
10224
  /**
10225
  * WordPress dependencies
10226
  */
10227
 
10228
+ var lifesaver = Object(external_this_wp_element_["createElement"])(svg["c" /* SVG */], {
10229
  xmlns: "http://www.w3.org/2000/svg",
10230
  viewBox: "0 0 24 24"
10231
+ }, Object(external_this_wp_element_["createElement"])(svg["b" /* Path */], {
10232
  fillRule: "evenodd",
10233
+ d: "M17.375 15.656A6.47 6.47 0 0018.5 12a6.47 6.47 0 00-.943-3.374l-1.262.813c.448.749.705 1.625.705 2.561a4.977 4.977 0 01-.887 2.844l1.262.813zm-1.951 1.87l-.813-1.261A4.976 4.976 0 0112 17c-.958 0-1.852-.27-2.613-.736l-.812 1.261A6.47 6.47 0 0012 18.5a6.47 6.47 0 003.424-.974zm-8.8-1.87A6.47 6.47 0 015.5 12c0-1.235.344-2.39.943-3.373l1.261.812A4.977 4.977 0 007 12c0 1.056.328 2.036.887 2.843l-1.262.813zm2.581-7.803A4.977 4.977 0 0112 7c1.035 0 1.996.314 2.794.853l.812-1.262A6.47 6.47 0 0012 5.5a6.47 6.47 0 00-3.607 1.092l.812 1.261zM12 20a8 8 0 100-16 8 8 0 000 16zm0-4.5a3.5 3.5 0 100-7 3.5 3.5 0 000 7z",
10234
  clipRule: "evenodd"
10235
  }));
10236
+ /* harmony default export */ var library_lifesaver = (lifesaver);
10237
+ //# sourceMappingURL=lifesaver.js.map
10238
+ // EXTERNAL MODULE: ./client/header/activity-panel/style.scss
10239
+ var activity_panel_style = __webpack_require__(569);
10240
+
10241
+ // CONCATENATED MODULE: ./client/header/activity-panel/toggle-bubble.js
10242
 
10243
 
10244
  /**
10245
+ * External dependencies
10246
  */
10247
 
 
 
 
 
 
 
 
 
 
 
10248
 
 
 
10249
 
10250
+ var toggle_bubble_ActivityPanelToggleBubble = function ActivityPanelToggleBubble(_ref) {
10251
+ var _ref$height = _ref.height,
10252
+ height = _ref$height === void 0 ? 24 : _ref$height,
10253
+ _ref$width = _ref.width,
10254
+ width = _ref$width === void 0 ? 24 : _ref$width,
10255
+ _ref$hasUnread = _ref.hasUnread,
10256
+ hasUnread = _ref$hasUnread === void 0 ? false : _ref$hasUnread;
10257
+ var classes = classnames_default()('woocommerce-layout__activity-panel-toggle-bubble', {
10258
+ 'has-unread': hasUnread
10259
+ });
10260
+ /* eslint-disable max-len */
10261
+
10262
+ return Object(external_this_wp_element_["createElement"])("div", {
10263
+ className: classes
10264
+ }, Object(external_this_wp_element_["createElement"])("svg", {
10265
+ height: height,
10266
+ width: width,
10267
+ viewBox: "0 0 24 24"
10268
+ }, Object(external_this_wp_element_["createElement"])("path", {
10269
+ d: "M18.9 2H5.1C3.4 2 2 3.4 2 5.1v10.7C2 17.6 3.4 19 5.1 19H9l6 3-1-3h4.9c1.7 0 3.1-1.4 3.1-3.1V5.1C22 3.4 20.6 2 18.9 2zm-1.5 4.5c-.4.8-.8 2.1-1 3.9-.3 1.8-.4 3.1-.3 4.1 0 .3 0 .5-.1.7-.1.2-.3.4-.6.4s-.6-.1-.9-.4c-1-1-1.8-2.6-2.4-4.6-.7 1.4-1.2 2.4-1.6 3.1-.6 1.2-1.2 1.8-1.6 1.9-.3 0-.5-.2-.8-.7-.5-1.4-1.1-4.2-1.7-8.2 0-.3 0-.5.2-.7.1-.2.4-.3.7-.4.5 0 .9.2.9.8.3 2.3.7 4.2 1.1 5.7l2.4-4.5c.2-.4.4-.6.8-.6.5 0 .8.3.9.9.3 1.4.6 2.6 1 3.7.3-2.7.8-4.7 1.4-5.9.2-.3.4-.5.7-.5.2 0 .5.1.7.2.2.2.3.4.3.6 0 .2 0 .4-.1.5z"
10270
+ })));
10271
+ /* eslint-enable max-len */
10272
+ };
10273
+
10274
+ toggle_bubble_ActivityPanelToggleBubble.propTypes = {
10275
+ height: prop_types_default.a.number,
10276
+ width: prop_types_default.a.number,
10277
+ hasUnread: prop_types_default.a.bool
10278
+ };
10279
+ /* harmony default export */ var toggle_bubble = (toggle_bubble_ActivityPanelToggleBubble);
10280
  // EXTERNAL MODULE: ./client/inbox-panel/utils.js
10281
+ var inbox_panel_utils = __webpack_require__(446);
10282
 
10283
  // CONCATENATED MODULE: ./client/header/activity-panel/unread-indicators.js
10284
  /**
10291
  */
10292
 
10293
 
 
 
 
 
 
 
 
 
10294
  function getUnreadNotes(select) {
10295
+ var _select = select(external_this_wc_data_["NOTES_STORE_NAME"]),
10296
  getNotes = _select.getNotes,
10297
  getNotesError = _select.getNotesError,
10298
  isResolving = _select.isResolving;
10299
 
10300
+ var _select2 = select(external_this_wc_data_["USER_STORE_NAME"]),
10301
  getCurrentUser = _select2.getCurrentUser;
10302
 
10303
  var userData = getCurrentUser();
10305
 
10306
  if (!lastRead) {
10307
  return null;
10308
+ } // @todo This method would be more performant if we ask only for 1 item per page with status "unactioned".
10309
+ // This change should be applied after having pagination implemented.
10310
+
10311
+
10312
+ var notesQuery = {
10313
+ page: 1,
10314
+ per_page: external_this_wc_data_["QUERY_DEFAULTS"].pageSize,
10315
+ status: 'unactioned',
10316
+ type: external_this_wc_data_["QUERY_DEFAULTS"].noteTypes,
10317
+ orderby: 'date',
10318
+ order: 'desc'
10319
+ }; // Disable eslint rule requiring `latestNotes` to be defined below because the next two statements
10320
+ // depend on `getNotes` to have been called.
10321
+ // eslint-disable-next-line @wordpress/no-unused-vars-before-return
10322
 
10323
+ var latestNotes = getNotes(notesQuery);
10324
+ var isError = Boolean(getNotesError('getNotes', [notesQuery]));
10325
+ var isRequesting = isResolving('getNotes', [notesQuery]);
10326
 
10327
  if (isError || isRequesting) {
10328
  return null;
10329
  }
10330
 
 
10331
  var unreadNotesCount = Object(inbox_panel_utils["a" /* getUnreadNotesCount */])(latestNotes, lastRead);
10332
  return unreadNotesCount > 0;
10333
  }
10334
+ function getUnapprovedReviews(select) {
10335
+ var _select3 = select(external_this_wc_data_["REVIEWS_STORE_NAME"]),
10336
+ getReviewsTotalCount = _select3.getReviewsTotalCount,
10337
+ getReviewsError = _select3.getReviewsError,
10338
+ isResolving = _select3.isResolving;
10339
+
10340
+ var reviewsEnabled = Object(settings["g" /* getSetting */])('reviewsEnabled');
10341
+
10342
+ if (reviewsEnabled === 'yes') {
10343
+ var actionableReviewsQuery = {
10344
+ page: 1,
10345
+ // @todo we are not using this review, so when the endpoint supports it,
10346
+ // it could be replaced with `per_page: 0`
10347
+ per_page: 1,
10348
+ status: 'hold'
10349
+ };
10350
+ var totalActionableReviews = getReviewsTotalCount(actionableReviewsQuery);
10351
+ var isActionableReviewsError = Boolean(getReviewsError(actionableReviewsQuery));
10352
+ var isActionableReviewsRequesting = isResolving('getReviewsTotalCount', [actionableReviewsQuery]);
10353
+
10354
+ if (!isActionableReviewsError && !isActionableReviewsRequesting) {
10355
+ return totalActionableReviews > 0;
10356
+ }
10357
+ }
10358
+
10359
+ return false;
10360
+ }
10361
+ function getUnreadStock() {
10362
+ return Object(settings["g" /* getSetting */])('hasLowStock', false);
10363
  }
10364
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
10365
+ var slicedToArray = __webpack_require__(34);
10366
+ var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
10367
 
10368
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/navigable-container/menu.js + 1 modules
10369
+ var menu = __webpack_require__(761);
10370
+
10371
+ // CONCATENATED MODULE: ./client/header/activity-panel/tab/index.js
10372
 
10373
 
10374
  /**
10384
  unread = _ref.unread,
10385
  selected = _ref.selected,
10386
  isPanelOpen = _ref.isPanelOpen,
10387
+ onTabClick = _ref.onTabClick,
10388
+ index = _ref.index;
10389
  var className = classnames_default()('woocommerce-layout__activity-panel-tab', {
10390
  'is-active': isPanelOpen && selected,
10391
  'has-unread': unread
10392
  });
10393
+ var tabIndex = -1; // Only make this item tabbable if it is the currently selected item, or the panel is closed and the item is the first item.
10394
+
10395
+ if (selected || !isPanelOpen && index === 0) {
10396
+ tabIndex = null;
10397
+ }
10398
+
10399
  var tabKey = "activity-panel-tab-".concat(name);
10400
+ return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
10401
  role: "tab",
10402
  className: className,
10403
+ tabIndex: tabIndex,
10404
  "aria-selected": selected,
10405
  "aria-controls": "activity-panel-".concat(name),
10406
  key: tabKey,
10408
  onClick: function onClick() {
10409
  onTabClick(name);
10410
  }
10411
+ }, icon, title, ' ', unread && Object(external_this_wp_element_["createElement"])("span", {
10412
  className: "screen-reader-text"
10413
+ }, Object(external_this_wp_i18n_["__"])('unread activity', 'woocommerce-admin')));
10414
  };
10415
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
10416
+ var esm_defineProperty = __webpack_require__(8);
10417
 
10418
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/node_modules/@wordpress/keycodes/build-module/index.js + 1 modules
10419
+ var build_module = __webpack_require__(54);
10420
 
10421
+ // EXTERNAL MODULE: ./node_modules/@wordpress/deprecated/build-module/index.js
10422
+ var deprecated_build_module = __webpack_require__(57);
10423
 
10424
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/dropdown/index.js
10425
+ var dropdown = __webpack_require__(535);
10426
+
10427
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/dropdown-menu/index.js
10428
 
10429
 
10430
 
 
 
 
10431
 
10432
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
10433
 
10434
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(esm_defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
10435
 
10436
  /**
10437
+ * External dependencies
10438
  */
10439
 
10440
 
10441
+ /**
10442
+ * WordPress dependencies
10443
+ */
 
 
 
10444
 
 
 
 
 
 
 
 
 
 
10445
 
10446
 
10447
+ /**
10448
+ * Internal dependencies
10449
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10450
 
 
 
 
 
 
 
 
 
10451
 
 
 
 
 
 
10452
 
 
 
 
 
10453
 
 
 
 
 
 
 
10454
 
10455
+ function mergeProps() {
10456
+ var defaultProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
10457
+ var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10458
 
10459
+ var mergedProps = _objectSpread(_objectSpread({}, defaultProps), props);
10460
 
10461
+ if (props.className && defaultProps.className) {
10462
+ mergedProps.className = classnames_default()(props.className, defaultProps.className);
10463
+ }
10464
 
10465
+ return mergedProps;
10466
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10467
 
10468
+ function DropdownMenu(_ref) {
10469
+ var children = _ref.children,
10470
+ className = _ref.className,
10471
+ controls = _ref.controls,
10472
+ _ref$icon = _ref.icon,
10473
+ icon = _ref$icon === void 0 ? 'menu' : _ref$icon,
10474
+ label = _ref.label,
10475
+ popoverProps = _ref.popoverProps,
10476
+ toggleProps = _ref.toggleProps,
10477
+ menuProps = _ref.menuProps,
10478
+ _ref$disableOpenOnArr = _ref.disableOpenOnArrowDown,
10479
+ disableOpenOnArrowDown = _ref$disableOpenOnArr === void 0 ? false : _ref$disableOpenOnArr,
10480
+ menuLabel = _ref.menuLabel,
10481
+ position = _ref.position,
10482
+ noIcons = _ref.noIcons;
10483
+
10484
+ if (menuLabel) {
10485
+ Object(deprecated_build_module["a" /* default */])('`menuLabel` prop in `DropdownComponent`', {
10486
+ alternative: '`menuProps` object and its `aria-label` property',
10487
+ plugin: 'Gutenberg'
10488
+ });
10489
+ }
10490
 
10491
+ if (position) {
10492
+ Object(deprecated_build_module["a" /* default */])('`position` prop in `DropdownComponent`', {
10493
+ alternative: '`popoverProps` object and its `position` property',
10494
+ plugin: 'Gutenberg'
10495
+ });
10496
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10497
 
10498
+ if (Object(external_lodash_["isEmpty"])(controls) && !Object(external_lodash_["isFunction"])(children)) {
10499
+ return null;
10500
+ } // Normalize controls to nested array of objects (sets of controls)
10501
 
 
 
 
10502
 
10503
+ var controlSets;
10504
 
10505
+ if (!Object(external_lodash_["isEmpty"])(controls)) {
10506
+ controlSets = controls;
10507
 
10508
+ if (!Array.isArray(controlSets[0])) {
10509
+ controlSets = [controlSets];
10510
+ }
10511
+ }
10512
 
10513
+ var mergedPopoverProps = mergeProps({
10514
+ className: 'components-dropdown-menu__popover',
10515
+ position: position
10516
+ }, popoverProps);
10517
+ return Object(external_this_wp_element_["createElement"])(dropdown["a" /* default */], {
10518
+ className: classnames_default()('components-dropdown-menu', className),
10519
+ popoverProps: mergedPopoverProps,
10520
+ renderToggle: function renderToggle(_ref2) {
10521
+ var _toggleProps$showTool;
10522
 
10523
+ var isOpen = _ref2.isOpen,
10524
+ onToggle = _ref2.onToggle;
 
10525
 
10526
+ var openOnArrowDown = function openOnArrowDown(event) {
10527
+ if (disableOpenOnArrowDown) {
10528
+ return;
10529
+ }
10530
 
10531
+ if (!isOpen && event.keyCode === build_module["a" /* DOWN */]) {
10532
+ event.preventDefault();
10533
+ event.stopPropagation();
10534
+ onToggle();
10535
+ }
10536
+ };
10537
 
10538
+ var mergedToggleProps = mergeProps({
10539
+ className: classnames_default()('components-dropdown-menu__toggle', {
10540
+ 'is-opened': isOpen
10541
+ })
10542
+ }, toggleProps);
10543
+ return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({}, mergedToggleProps, {
10544
+ icon: icon,
10545
+ onClick: function onClick(event) {
10546
+ onToggle(event);
10547
+
10548
+ if (mergedToggleProps.onClick) {
10549
+ mergedToggleProps.onClick(event);
10550
+ }
10551
+ },
10552
+ onKeyDown: function onKeyDown(event) {
10553
+ openOnArrowDown(event);
10554
 
10555
+ if (mergedToggleProps.onKeyDown) {
10556
+ mergedToggleProps.onKeyDown(event);
10557
+ }
10558
+ },
10559
+ "aria-haspopup": "true",
10560
+ "aria-expanded": isOpen,
10561
+ label: label,
10562
+ showTooltip: (_toggleProps$showTool = toggleProps === null || toggleProps === void 0 ? void 0 : toggleProps.showTooltip) !== null && _toggleProps$showTool !== void 0 ? _toggleProps$showTool : true
10563
+ }), mergedToggleProps.children);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10564
  },
10565
+ renderContent: function renderContent(props) {
10566
+ var mergedMenuProps = mergeProps({
10567
+ 'aria-label': menuLabel || label,
10568
+ className: classnames_default()('components-dropdown-menu__menu', {
10569
+ 'no-icons': noIcons
10570
+ })
10571
+ }, menuProps);
10572
+ return Object(external_this_wp_element_["createElement"])(menu["a" /* default */], Object(esm_extends["a" /* default */])({}, mergedMenuProps, {
10573
+ role: "menu"
10574
+ }), Object(external_lodash_["isFunction"])(children) ? children(props) : null, Object(external_lodash_["flatMap"])(controlSets, function (controlSet, indexOfSet) {
10575
+ return controlSet.map(function (control, indexOfControl) {
10576
+ return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
10577
+ key: [indexOfSet, indexOfControl].join(),
10578
+ onClick: function onClick(event) {
10579
+ event.stopPropagation();
10580
+ props.onClose();
10581
+
10582
+ if (control.onClick) {
10583
+ control.onClick();
10584
+ }
10585
+ },
10586
+ className: classnames_default()('components-dropdown-menu__menu-item', {
10587
+ 'has-separator': indexOfSet > 0 && indexOfControl === 0,
10588
+ 'is-active': control.isActive
10589
+ }),
10590
+ icon: control.icon,
10591
+ "aria-checked": control.role === 'menuitemcheckbox' || control.role === 'menuitemradio' ? control.isActive : undefined,
10592
+ role: control.role === 'menuitemcheckbox' || control.role === 'menuitemradio' ? control.role : 'menuitem',
10593
+ disabled: control.isDisabled
10594
+ }, control.title);
10595
  });
10596
+ }));
10597
+ }
 
10598
  });
10599
+ }
 
 
 
 
 
10600
 
10601
+ /* harmony default export */ var dropdown_menu = (DropdownMenu);
10602
+ //# sourceMappingURL=index.js.map
10603
+ // EXTERNAL MODULE: ./node_modules/@wordpress/compose/build-module/hooks/use-instance-id/index.js
10604
+ var use_instance_id = __webpack_require__(300);
10605
 
10606
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/menu-group/index.js
10607
 
10608
 
10609
  /**
10610
  * External dependencies
10611
  */
10612
 
 
 
 
 
 
10613
  /**
10614
+ * WordPress dependencies
10615
  */
10616
 
10617
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10618
 
10619
+ function MenuGroup(_ref) {
10620
+ var children = _ref.children,
10621
+ _ref$className = _ref.className,
10622
+ className = _ref$className === void 0 ? '' : _ref$className,
10623
+ label = _ref.label;
10624
+ var instanceId = Object(use_instance_id["a" /* default */])(MenuGroup);
10625
 
10626
+ if (!external_this_wp_element_["Children"].count(children)) {
10627
  return null;
10628
  }
10629
 
10630
+ var labelId = "components-menu-group-label-".concat(instanceId);
10631
+ var classNames = classnames_default()(className, 'components-menu-group');
10632
+ return Object(external_this_wp_element_["createElement"])("div", {
10633
+ className: classNames
10634
+ }, label && Object(external_this_wp_element_["createElement"])("div", {
10635
+ className: "components-menu-group__label",
10636
+ id: labelId,
10637
+ "aria-hidden": "true"
10638
+ }, label), Object(external_this_wp_element_["createElement"])("div", {
10639
+ role: "group",
10640
+ "aria-labelledby": label ? labelId : null
10641
+ }, children));
10642
+ }
10643
+ /* harmony default export */ var menu_group = (MenuGroup);
10644
+ //# sourceMappingURL=index.js.map
10645
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/node_modules/@wordpress/icons/build-module/library/check.js
10646
+ var check = __webpack_require__(759);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10647
 
10648
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
10649
+ var esm_objectWithoutProperties = __webpack_require__(12);
 
 
10650
 
10651
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/shortcut/index.js
10652
+ var build_module_shortcut = __webpack_require__(135);
 
 
 
 
10653
 
10654
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/icon/index.js
10655
+ var components_build_module_icon = __webpack_require__(133);
10656
 
10657
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/menu-item/index.js
 
10658
 
 
10659
 
10660
 
 
 
 
 
 
 
10661
 
10662
  /**
10663
  * External dependencies
10665
 
10666
 
10667
  /**
10668
+ * WordPress dependencies
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10669
  */
10670
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10671
 
 
 
 
 
 
 
 
 
 
10672
  /**
10673
+ * Internal dependencies
10674
  */
10675
 
10676
 
 
 
 
 
 
 
 
 
 
 
 
 
10677
 
 
10678
 
10679
  /**
10680
+ * Renders a generic menu item for use inside the more menu.
 
10681
  *
10682
+ * @param {Object} props Component props.
10683
+ * @param {WPElement} props.children Element to render as child of button.
10684
+ * @param {string} props.info Text to use as description for button text.
10685
+ * @param {string} props.className Class to set on the container.
10686
+ * @param {WPIcon} props.icon Button's `icon` prop.
10687
+ * @param {string|Object} props.shortcut Shortcut's `shortcut` prop.
10688
+ * @param {boolean} props.isSelected Whether or not the menu item is currently selected.
10689
+ * @param {string} [props.role="menuitem"] ARIA role of the menu item.
10690
+ * @param {Object} ref React Element ref.
10691
  *
10692
+ * @return {WPComponent} The component to be rendered.
10693
  */
10694
 
10695
+ function MenuItem(_ref, ref) {
10696
+ var children = _ref.children,
10697
+ info = _ref.info,
10698
+ className = _ref.className,
10699
+ icon = _ref.icon,
10700
+ shortcut = _ref.shortcut,
10701
+ isSelected = _ref.isSelected,
10702
+ _ref$role = _ref.role,
10703
+ role = _ref$role === void 0 ? 'menuitem' : _ref$role,
10704
+ props = Object(esm_objectWithoutProperties["a" /* default */])(_ref, ["children", "info", "className", "icon", "shortcut", "isSelected", "role"]);
10705
+
10706
+ className = classnames_default()('components-menu-item__button', className);
10707
+
10708
+ if (info) {
10709
+ children = Object(external_this_wp_element_["createElement"])("span", {
10710
+ className: "components-menu-item__info-wrapper"
10711
+ }, children, Object(external_this_wp_element_["createElement"])("span", {
10712
+ className: "components-menu-item__info"
10713
+ }, info));
10714
+ }
10715
+
10716
+ if (icon && !Object(external_lodash_["isString"])(icon)) {
10717
+ icon = Object(external_this_wp_element_["cloneElement"])(icon, {
10718
+ className: 'components-menu-items__item-icon'
10719
+ });
10720
  }
10721
 
10722
+ return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({
10723
+ ref: ref // Make sure aria-checked matches spec https://www.w3.org/TR/wai-aria-1.1/#aria-checked
10724
+ ,
10725
+ "aria-checked": role === 'menuitemcheckbox' || role === 'menuitemradio' ? isSelected : undefined,
10726
+ role: role,
10727
+ className: className
10728
+ }, props), children, Object(external_this_wp_element_["createElement"])(build_module_shortcut["a" /* default */], {
10729
+ className: "components-menu-item__shortcut",
10730
+ shortcut: shortcut
10731
+ }), icon && Object(external_this_wp_element_["createElement"])(components_build_module_icon["a" /* default */], {
10732
+ icon: icon
10733
+ }));
10734
  }
10735
+ /* harmony default export */ var menu_item = (Object(external_this_wp_element_["forwardRef"])(MenuItem));
10736
+ //# sourceMappingURL=index.js.map
10737
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/menu-items-choice/index.js
 
 
10738
 
 
 
 
 
10739
 
10740
  /**
10741
+ * External dependencies
 
10742
  */
10743
 
10744
  /**
10745
+ * WordPress dependencies
10746
  */
10747
 
 
 
 
 
 
 
 
 
 
10748
 
10749
  /**
10750
+ * Internal dependencies
 
 
 
 
 
 
 
 
10751
  */
10752
 
10753
 
10754
+ function MenuItemsChoice(_ref) {
10755
+ var _ref$choices = _ref.choices,
10756
+ choices = _ref$choices === void 0 ? [] : _ref$choices,
10757
+ _ref$onHover = _ref.onHover,
10758
+ onHover = _ref$onHover === void 0 ? external_lodash_["noop"] : _ref$onHover,
10759
+ onSelect = _ref.onSelect,
10760
+ value = _ref.value;
10761
+ return choices.map(function (item) {
10762
+ var isSelected = value === item.value;
10763
+ return Object(external_this_wp_element_["createElement"])(menu_item, {
10764
+ key: item.value,
10765
+ role: "menuitemradio",
10766
+ icon: isSelected && check["a" /* default */],
10767
+ isSelected: isSelected,
10768
+ shortcut: item.shortcut,
10769
+ className: "components-menu-items-choice",
10770
+ onClick: function onClick() {
10771
+ if (!isSelected) {
10772
+ onSelect(item.value);
10773
+ }
10774
+ },
10775
+ onMouseEnter: function onMouseEnter() {
10776
+ return onHover(item.value);
10777
+ },
10778
+ onMouseLeave: function onMouseLeave() {
10779
+ return onHover(null);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10780
  }
10781
+ }, item.label);
10782
+ });
 
 
 
 
 
 
 
 
10783
  }
10784
+ //# sourceMappingURL=index.js.map
10785
+ // CONCATENATED MODULE: ./client/header/activity-panel/display-options/icons/display.js
10786
 
10787
 
10788
  /**
10789
  * External dependencies
10790
  */
10791
 
10792
+ var display_DisplayIcon = function DisplayIcon() {
10793
+ return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])("svg", {
10794
+ className: "woocommerce-layout__activity-panel-tab-icon",
10795
+ width: "24",
10796
+ height: "24",
10797
+ viewBox: "3 3 24 24",
10798
+ fill: "none",
10799
+ xmlns: "http://www.w3.org/2000/svg"
10800
+ }, Object(external_this_wp_element_["createElement"])("path", {
10801
+ d: "M13.8053 15.3982C13.8053 15.7965 13.4867 16.1947 13.0089 16.1947H6.79646C6.55752 16.1947 6.39823 16.115 6.23894 15.9558C6.07965 15.7965 6 15.6372 6 15.3982V6.79646C6 6.63717 6.15929 6.39823 6.23894 6.23894C6.39823 6.07965 6.55752 6 6.79646 6H13.0089C13.4071 6 13.8053 6.31858 13.8053 6.79646V15.3982Z",
10802
+ strokeWidth: "1.5",
10803
+ strokeLinecap: "round",
10804
+ strokeLinejoin: "round"
10805
+ }), Object(external_this_wp_element_["createElement"])("path", {
10806
+ d: "M23.9203 10.6195C23.9203 11.0177 23.6017 11.4159 23.1238 11.4159H16.9115C16.6725 11.4159 16.5132 11.3363 16.3539 11.177C16.1946 11.0177 16.115 10.8584 16.115 10.6195V6.79646C16.115 6.39823 16.4336 6 16.9115 6H23.1238C23.5221 6 23.9203 6.31858 23.9203 6.79646V10.6195Z",
10807
+ strokeWidth: "1.5",
10808
+ strokeLinecap: "round",
10809
+ strokeLinejoin: "round"
10810
+ }), Object(external_this_wp_element_["createElement"])("path", {
10811
+ d: "M13.8053 23.2035C13.8053 23.4424 13.7257 23.6017 13.5664 23.761C13.4071 23.9203 13.2478 23.9999 13.0089 23.9999H6.79646C6.39823 23.9999 6 23.6813 6 23.2035V19.3804C6 19.1415 6.07965 18.9822 6.23894 18.8229C6.39823 18.6636 6.55752 18.584 6.79646 18.584H13.0089C13.4071 18.584 13.8053 18.9026 13.8053 19.3804V23.2035Z",
10812
+ strokeWidth: "1.5",
10813
+ strokeLinecap: "round",
10814
+ strokeLinejoin: "round"
10815
+ }), Object(external_this_wp_element_["createElement"])("path", {
10816
+ d: "M16.9912 23.9999C16.7522 23.9999 16.5929 23.9202 16.4336 23.7609C16.2743 23.6016 16.1947 23.4423 16.1947 23.2034V14.6016C16.1947 14.3627 16.2743 14.2034 16.4336 14.0441C16.5929 13.8848 16.7522 13.8052 16.9912 13.8052H23.2036C23.4425 13.8052 23.6018 13.8848 23.7611 14.0441C23.9204 14.2034 24 14.3627 24 14.6016V23.2034C24 23.6016 23.6814 23.9999 23.2036 23.9999H16.9912Z",
10817
+ strokeWidth: "1.5",
10818
+ strokeLinecap: "round",
10819
+ strokeLinejoin: "round"
10820
+ })), Object(external_this_wp_i18n_["__"])('Display', 'woocommerce-admin'));
10821
+ };
10822
+ // CONCATENATED MODULE: ./client/header/activity-panel/display-options/icons/single-column.js
10823
 
10824
+ var single_column_SingleColumnIcon = function SingleColumnIcon() {
10825
+ return Object(external_this_wp_element_["createElement"])("svg", {
10826
+ className: "woocommerce-layout__activity-panel-tab-icon",
10827
+ width: "12",
10828
+ height: "14",
10829
+ viewBox: "0 0 12 14",
10830
+ fill: "none",
10831
+ xmlns: "http://www.w3.org/2000/svg"
10832
+ }, Object(external_this_wp_element_["createElement"])("rect", {
10833
+ x: "0.5",
10834
+ y: "0.5",
10835
+ width: "11",
10836
+ height: "13",
10837
+ strokeWidth: "1"
10838
+ }));
10839
+ };
10840
+ // CONCATENATED MODULE: ./client/header/activity-panel/display-options/icons/two-columns.js
10841
 
10842
+ var two_columns_TwoColumnsIcon = function TwoColumnsIcon() {
10843
+ return Object(external_this_wp_element_["createElement"])("svg", {
10844
+ className: "woocommerce-layout__activity-panel-tab-icon",
10845
+ width: "18",
10846
+ height: "14",
10847
+ viewBox: "0 0 18 14",
10848
+ fill: "none",
10849
+ xmlns: "http://www.w3.org/2000/svg"
10850
+ }, Object(external_this_wp_element_["createElement"])("rect", {
10851
+ x: "0.5",
10852
+ y: "0.5",
10853
+ width: "7",
10854
+ height: "13",
10855
+ strokeWidth: "1"
10856
+ }), Object(external_this_wp_element_["createElement"])("rect", {
10857
+ x: "9.5",
10858
+ y: "0.5",
10859
+ width: "7",
10860
+ height: "13",
10861
+ strokeWidth: "1"
10862
+ }));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10863
  };
10864
+ // CONCATENATED MODULE: ./client/header/activity-panel/display-options/index.js
10865
+
10866
+
10867
+ /**
10868
+ * External dependencies
10869
+ */
10870
+
10871
 
10872
 
10873
 
10874
 
10875
+ /**
10876
+ * Internal dependencies
10877
+ */
10878
+
10879
 
10880
 
10881
 
10882
+ var LAYOUTS = [{
10883
+ value: 'single_column',
10884
+ label: Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(single_column_SingleColumnIcon, null), Object(external_this_wp_i18n_["__"])('Single column', 'woocommerce-admin'))
10885
+ }, {
10886
+ value: 'two_columns',
10887
+ label: Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(two_columns_TwoColumnsIcon, null), Object(external_this_wp_i18n_["__"])('Two columns', 'woocommerce-admin'))
10888
+ }];
10889
+ var display_options_DisplayOptions = function DisplayOptions() {
10890
+ var defaultHomescreenLayout = Object(external_this_wp_data_["useSelect"])(function (select) {
10891
+ var _select = select(external_this_wc_data_["OPTIONS_STORE_NAME"]),
10892
+ getOption = _select.getOption;
10893
+
10894
+ return getOption('woocommerce_default_homepage_layout') || 'single_column';
10895
+ });
10896
+
10897
+ var _useUserPreferences = Object(external_this_wc_data_["useUserPreferences"])(),
10898
+ updateUserPreferences = _useUserPreferences.updateUserPreferences,
10899
+ layout = _useUserPreferences.homepage_layout;
10900
 
10901
+ return Object(external_this_wp_element_["createElement"])(dropdown_menu, {
10902
+ icon: Object(external_this_wp_element_["createElement"])(display_DisplayIcon, null)
10903
+ /* translators: button label text should, if possible, be under 16 characters. */
10904
+ ,
10905
+ label: Object(external_this_wp_i18n_["__"])('Display options', 'woocommerce-admin'),
10906
+ toggleProps: {
10907
+ className: 'woocommerce-layout__activity-panel-tab display-options',
10908
+ onClick: function onClick() {
10909
+ return Object(external_this_wc_tracks_["recordEvent"])('homescreen_display_click');
10910
+ }
10911
+ },
10912
+ popoverProps: {
10913
+ className: 'woocommerce-layout__activity-panel-popover'
10914
+ }
10915
+ }, function (_ref) {
10916
+ var onClose = _ref.onClose;
10917
+ return Object(external_this_wp_element_["createElement"])(menu_group, {
10918
+ className: "woocommerce-layout__homescreen-display-options",
10919
+ label: Object(external_this_wp_i18n_["__"])('Layout', 'woocommerce-admin')
10920
+ }, Object(external_this_wp_element_["createElement"])(MenuItemsChoice, {
10921
+ choices: LAYOUTS,
10922
+ onSelect: function onSelect(newLayout) {
10923
+ updateUserPreferences({
10924
+ homepage_layout: newLayout
10925
+ });
10926
+ onClose();
10927
+ Object(external_this_wc_tracks_["recordEvent"])('homescreen_display_option', {
10928
+ display_option: newLayout
10929
+ });
10930
+ },
10931
+ value: layout || defaultHomescreenLayout
10932
+ }));
10933
+ });
10934
+ };
10935
+ // CONCATENATED MODULE: ./client/header/activity-panel/tabs/index.js
10936
 
10937
 
10938
 
10943
 
10944
 
10945
 
10946
+ /**
10947
+ * Internal dependencies
10948
+ */
10949
+
10950
+
10951
 
10952
+ var tabs_Tabs = function Tabs(_ref) {
10953
+ var tabs = _ref.tabs,
10954
+ _onTabClick = _ref.onTabClick,
10955
+ selectedTabName = _ref.selectedTab,
10956
+ showDisplayOptions = _ref.showDisplayOptions,
10957
+ _ref$tabOpen = _ref.tabOpen,
10958
+ tabOpen = _ref$tabOpen === void 0 ? false : _ref$tabOpen;
10959
 
10960
+ var _useState = Object(external_this_wp_element_["useState"])({
10961
+ tabOpen: tabOpen,
10962
+ currentTab: selectedTabName
10963
+ }),
10964
+ _useState2 = slicedToArray_default()(_useState, 2),
10965
+ _useState2$ = _useState2[0],
10966
+ tabIsOpenState = _useState2$.tabOpen,
10967
+ currentTab = _useState2$.currentTab,
10968
+ setTabState = _useState2[1]; // Keep state synced with props
10969
 
10970
 
10971
+ Object(external_this_wp_element_["useEffect"])(function () {
10972
+ setTabState({
10973
+ tabOpen: tabOpen,
10974
+ currentTab: selectedTabName
10975
+ });
10976
+ }, [tabOpen, selectedTabName]);
10977
+ return Object(external_this_wp_element_["createElement"])(menu["a" /* default */], {
10978
+ role: "tablist",
10979
+ orientation: "horizontal",
10980
+ className: "woocommerce-layout__activity-panel-tabs"
10981
+ }, tabs && tabs.map(function (tab, i) {
10982
+ return Object(external_this_wp_element_["createElement"])(tab_Tab, extends_default()({
10983
+ key: i,
10984
+ index: i,
10985
+ isPanelOpen: tabIsOpenState,
10986
+ selected: currentTab === tab.name
10987
+ }, tab, {
10988
+ onTabClick: function onTabClick() {
10989
+ var isTabOpen = currentTab === tab.name || currentTab === '' ? !tabIsOpenState : true; // If a panel is being opened, or if an existing panel is already open and a different one is being opened, record a track.
10990
 
10991
+ if (!isTabOpen || currentTab !== tab.name) {
10992
+ Object(external_this_wc_tracks_["recordEvent"])('activity_panel_open', {
10993
+ tab: tab.name
10994
+ });
10995
+ }
10996
 
10997
+ setTabState({
10998
+ tabOpen: isTabOpen,
10999
+ currentTab: tab.name
11000
+ });
11001
 
11002
+ _onTabClick(tab, isTabOpen);
11003
+ }
11004
+ }));
11005
+ }), showDisplayOptions && Object(external_this_wp_element_["createElement"])(display_options_DisplayOptions, null));
11006
+ };
11007
+ // CONCATENATED MODULE: ./client/header/activity-panel/setup-progress.js
11008
 
11009
+ var setup_progress_SetupProgress = function SetupProgress() {
11010
+ return Object(external_this_wp_element_["createElement"])("svg", {
11011
+ className: "woocommerce-layout__activity-panel-tab-icon setup-progress",
11012
+ width: "18",
11013
+ height: "18",
11014
+ viewBox: "0 0 24 24",
11015
+ fill: "none",
11016
+ xmlns: "http://www.w3.org/2000/svg"
11017
+ }, Object(external_this_wp_element_["createElement"])("path", {
11018
+ d: "M12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20Z",
11019
+ stroke: "#DCDCDE",
11020
+ strokeWidth: "2"
11021
+ }), Object(external_this_wp_element_["createElement"])("path", {
11022
+ d: "M4 12V12C4 16.4183 7.58172 20 12 20V20C16.4183 20 20 16.4183 20 12V12C20 7.58172 16.4183 4 12 4V4",
11023
+ strokeWidth: "2",
11024
+ strokeLinecap: "round"
11025
+ }));
11026
+ };
11027
+ // CONCATENATED MODULE: ./client/header/activity-panel/index.js
11028
 
11029
 
11030
 
11033
 
11034
 
11035
 
11036
+ function activity_panel_createSuper(Derived) { var hasNativeReflectConstruct = activity_panel_isNativeReflectConstruct(); return function _createSuperInternal() { var Super = getPrototypeOf_default()(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = getPrototypeOf_default()(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return possibleConstructorReturn_default()(this, result); }; }
 
 
 
 
 
 
 
 
 
11037
 
11038
+ function activity_panel_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 
 
 
11039
 
11040
+ /**
11041
+ * External dependencies
11042
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11043
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11044
 
 
 
11045
 
 
 
11046
 
 
 
 
11047
 
 
 
 
11048
 
 
 
 
 
11049
 
 
 
 
 
11050
 
 
 
 
 
 
 
 
11051
 
 
 
 
11052
 
 
 
 
11053
 
11054
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11055
 
 
 
 
 
 
 
 
 
 
 
 
11056
 
11057
+ /**
11058
+ * Internal dependencies
11059
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11060
 
 
 
11061
 
 
 
 
11062
 
 
 
 
 
11063
 
 
 
 
 
11064
 
 
 
 
 
 
 
 
11065
 
 
 
11066
 
11067
+ var HelpPanel = Object(external_this_wp_element_["lazy"])(function () {
11068
+ return Promise.all(/* import() | activity-panels-help */[__webpack_require__.e(52), __webpack_require__.e(9), __webpack_require__.e(10)]).then(__webpack_require__.bind(null, 843));
11069
+ });
11070
+ var InboxPanel = Object(external_this_wp_element_["lazy"])(function () {
11071
+ return Promise.all(/* import() | activity-panels-inbox */[__webpack_require__.e(2), __webpack_require__.e(4), __webpack_require__.e(6), __webpack_require__.e(54), __webpack_require__.e(11)]).then(__webpack_require__.bind(null, 798));
11072
+ });
11073
+ var StockPanel = Object(external_this_wp_element_["lazy"])(function () {
11074
+ return Promise.all(/* import() | activity-panels-stock */[__webpack_require__.e(2), __webpack_require__.e(12)]).then(__webpack_require__.bind(null, 856));
11075
+ });
11076
+ var ReviewsPanel = Object(external_this_wp_element_["lazy"])(function () {
11077
+ return Promise.all(/* import() | activity-panels-inbox */[__webpack_require__.e(2), __webpack_require__.e(4), __webpack_require__.e(6), __webpack_require__.e(54), __webpack_require__.e(11)]).then(__webpack_require__.bind(null, 845));
11078
+ });
11079
+ var manageStock = Object(settings["g" /* getSetting */])('manageStock', 'no');
11080
+ var activity_panel_reviewsEnabled = Object(settings["g" /* getSetting */])('reviewsEnabled', 'no');
11081
+ var activity_panel_ActivityPanel = /*#__PURE__*/function (_Component) {
11082
+ inherits_default()(ActivityPanel, _Component);
11083
 
11084
+ var _super = activity_panel_createSuper(ActivityPanel);
 
 
 
11085
 
11086
+ function ActivityPanel(props) {
11087
+ var _this;
 
11088
 
11089
+ classCallCheck_default()(this, ActivityPanel);
 
11090
 
11091
+ _this = _super.call(this, props);
11092
+ _this.state = {
11093
+ isPanelOpen: false,
11094
+ mobileOpen: false,
11095
+ currentTab: '',
11096
+ isPanelSwitching: false
11097
+ };
11098
+ return _this;
11099
+ }
 
 
 
 
 
 
 
 
 
 
 
11100
 
11101
+ createClass_default()(ActivityPanel, [{
11102
+ key: "togglePanel",
11103
+ value: function togglePanel(_ref, isTabOpen) {
11104
+ var tabName = _ref.name;
11105
+ this.setState(function (state) {
11106
+ var isPanelSwitching = tabName !== state.currentTab && state.currentTab !== '' && isTabOpen && state.isPanelOpen;
11107
+ return {
11108
+ isPanelOpen: isTabOpen,
11109
+ mobileOpen: isTabOpen,
11110
+ currentTab: tabName,
11111
+ isPanelSwitching: isPanelSwitching
11112
+ };
11113
+ });
11114
  }
11115
+ }, {
11116
+ key: "closePanel",
11117
+ value: function closePanel() {
11118
+ this.setState(function () {
11119
+ return {
11120
+ isPanelOpen: false,
11121
+ currentTab: ''
11122
+ };
11123
+ });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11124
  }
11125
+ }, {
11126
+ key: "clearPanel",
11127
+ value: function clearPanel() {
11128
+ this.setState(function () {
11129
+ return {
11130
+ isPanelSwitching: false
11131
+ };
11132
+ });
11133
+ } // On smaller screen, the panel buttons are hidden behind a toggle.
11134
+
11135
+ }, {
11136
+ key: "toggleMobile",
11137
+ value: function toggleMobile() {
11138
+ var tabs = this.getTabs();
11139
+ this.setState(function (state) {
11140
+ return {
11141
+ mobileOpen: !state.mobileOpen,
11142
+ currentTab: state.mobileOpen ? '' : tabs[0].name,
11143
+ isPanelOpen: !state.mobileOpen
11144
+ };
11145
+ });
11146
+ }
11147
+ }, {
11148
+ key: "handleClickOutside",
11149
+ value: function handleClickOutside(event) {
11150
+ var isPanelOpen = this.state.isPanelOpen;
11151
+ var isClickOnModalOrSnackbar = event.target.closest('.woocommerce-inbox-dismiss-confirmation_modal') || event.target.closest('.components-snackbar__action');
11152
+
11153
+ if (isPanelOpen && !isClickOnModalOrSnackbar) {
11154
+ this.closePanel();
11155
+ }
11156
+ }
11157
+ }, {
11158
+ key: "isHomescreen",
11159
+ value: function isHomescreen() {
11160
+ var _this$props$getHistor = this.props.getHistory(),
11161
+ location = _this$props$getHistor.location;
11162
+
11163
+ return location.pathname === '/';
11164
+ }
11165
+ }, {
11166
+ key: "isPerformingSetupTask",
11167
+ value: function isPerformingSetupTask() {
11168
+ var _this$props = this.props,
11169
+ requestingTaskListOptions = _this$props.requestingTaskListOptions,
11170
+ taskListComplete = _this$props.taskListComplete,
11171
+ taskListHidden = _this$props.taskListHidden,
11172
+ query = _this$props.query;
11173
+ var isPerformingSetupTask = query.task && !query.path && (requestingTaskListOptions === true || taskListHidden === false && taskListComplete === false);
11174
+ return isPerformingSetupTask;
11175
+ } // @todo Pull in dynamic unread status/count
11176
+
11177
+ }, {
11178
+ key: "getTabs",
11179
+ value: function getTabs() {
11180
+ var _this$props2 = this.props,
11181
+ hasUnreadNotes = _this$props2.hasUnreadNotes,
11182
+ hasUnapprovedReviews = _this$props2.hasUnapprovedReviews,
11183
+ hasUnreadStock = _this$props2.hasUnreadStock,
11184
+ isEmbedded = _this$props2.isEmbedded,
11185
+ taskListComplete = _this$props2.taskListComplete,
11186
+ taskListHidden = _this$props2.taskListHidden;
11187
+ var isPerformingSetupTask = this.isPerformingSetupTask(); // Don't show the inbox on the Home screen.
11188
+
11189
+ var showInbox = (isEmbedded || !this.isHomescreen()) && !isPerformingSetupTask;
11190
+ var showStockAndReviews = (taskListComplete || taskListHidden) && !isPerformingSetupTask;
11191
+ var showStoreSetup = !taskListComplete && !taskListHidden && !isPerformingSetupTask && (!this.isHomescreen() || isEmbedded);
11192
+ var inbox = showInbox ? {
11193
+ name: 'inbox',
11194
+ title: Object(external_this_wp_i18n_["__"])('Inbox', 'woocommerce-admin'),
11195
+ icon: Object(external_this_wp_element_["createElement"])("i", {
11196
+ className: "material-icons-outlined"
11197
+ }, "inbox"),
11198
+ unread: hasUnreadNotes
11199
+ } : null;
11200
+ var setup = showStoreSetup ? {
11201
+ name: 'setup',
11202
+ title: Object(external_this_wp_i18n_["__"])('Store Setup', 'woocommerce-admin'),
11203
+ icon: Object(external_this_wp_element_["createElement"])(setup_progress_SetupProgress, null)
11204
+ } : null;
11205
+ var stockAndReviews = showStockAndReviews ? [manageStock === 'yes' && {
11206
+ name: 'stock',
11207
+ title: Object(external_this_wp_i18n_["__"])('Stock', 'woocommerce-admin'),
11208
+ icon: Object(external_this_wp_element_["createElement"])("i", {
11209
+ className: "material-icons-outlined"
11210
+ }, "widgets"),
11211
+ unread: hasUnreadStock
11212
+ }, activity_panel_reviewsEnabled === 'yes' && {
11213
+ name: 'reviews',
11214
+ title: Object(external_this_wp_i18n_["__"])('Reviews', 'woocommerce-admin'),
11215
+ icon: Object(external_this_wp_element_["createElement"])("i", {
11216
+ className: "material-icons-outlined"
11217
+ }, "star_border"),
11218
+ unread: hasUnapprovedReviews
11219
+ }].filter(Boolean) : [];
11220
+ var help = isPerformingSetupTask ? {
11221
+ name: 'help',
11222
+ title: Object(external_this_wp_i18n_["__"])('Help', 'woocommerce-admin'),
11223
+ icon: Object(external_this_wp_element_["createElement"])(build_module_icon["a" /* default */], {
11224
+ icon: library_lifesaver
11225
+ })
11226
+ } : null;
11227
+ return [inbox].concat(toConsumableArray_default()(stockAndReviews), [setup, help]).filter(Boolean);
11228
+ }
11229
+ }, {
11230
+ key: "getPanelContent",
11231
+ value: function getPanelContent(tab) {
11232
+ var _this$props3 = this.props,
11233
+ query = _this$props3.query,
11234
+ hasUnapprovedReviews = _this$props3.hasUnapprovedReviews;
11235
+ var task = query.task;
11236
+
11237
+ switch (tab) {
11238
+ case 'inbox':
11239
+ return Object(external_this_wp_element_["createElement"])(InboxPanel, null);
11240
+
11241
+ case 'stock':
11242
+ return Object(external_this_wp_element_["createElement"])(StockPanel, null);
11243
+
11244
+ case 'reviews':
11245
+ return Object(external_this_wp_element_["createElement"])(ReviewsPanel, {
11246
+ hasUnapprovedReviews: hasUnapprovedReviews
11247
+ });
11248
+
11249
+ case 'help':
11250
+ return Object(external_this_wp_element_["createElement"])(HelpPanel, {
11251
+ taskName: task
11252
+ });
11253
+
11254
+ default:
11255
+ return null;
11256
+ }
11257
+ }
11258
+ }, {
11259
+ key: "renderPanel",
11260
+ value: function renderPanel() {
11261
+ var _this2 = this;
11262
+
11263
+ var _this$props4 = this.props,
11264
+ updateOptions = _this$props4.updateOptions,
11265
+ taskListHidden = _this$props4.taskListHidden;
11266
+ var _this$state = this.state,
11267
+ isPanelOpen = _this$state.isPanelOpen,
11268
+ currentTab = _this$state.currentTab,
11269
+ isPanelSwitching = _this$state.isPanelSwitching;
11270
+ var tab = Object(external_lodash_["find"])(this.getTabs(), {
11271
+ name: currentTab
11272
+ });
11273
+
11274
+ if (!tab) {
11275
+ return Object(external_this_wp_element_["createElement"])("div", {
11276
+ className: "woocommerce-layout__activity-panel-wrapper"
11277
+ });
11278
+ }
11279
+
11280
+ var clearPanel = function clearPanel() {
11281
+ _this2.clearPanel();
11282
+ };
11283
+
11284
+ if (currentTab === 'display-options') {
11285
+ return null;
11286
+ }
11287
+
11288
+ if (currentTab === 'setup') {
11289
+ var currentLocation = window.location.href;
11290
+ var homescreenLocation = Object(settings["f" /* getAdminLink */])('admin.php?page=wc-admin'); // Don't navigate if we're already on the homescreen, this will cause an infinite loop
11291
+
11292
+ if (currentLocation !== homescreenLocation) {
11293
+ // Ensure that if the user is trying to get to the task list they can see it even if
11294
+ // it was dismissed.
11295
+ if (taskListHidden === 'no') {
11296
+ this.redirectToHomeScreen();
11297
+ } else {
11298
+ updateOptions({
11299
+ woocommerce_task_list_hidden: 'no'
11300
+ }).then(this.redirectToHomeScreen);
11301
+ }
11302
+ }
11303
+
11304
+ return null;
11305
+ }
11306
+
11307
+ var classNames = classnames_default()('woocommerce-layout__activity-panel-wrapper', {
11308
+ 'is-open': isPanelOpen,
11309
+ 'is-switching': isPanelSwitching
11310
+ });
11311
+ return Object(external_this_wp_element_["createElement"])("div", {
11312
+ className: classNames,
11313
+ tabIndex: 0,
11314
+ role: "tabpanel",
11315
+ "aria-label": tab.title,
11316
+ onTransitionEnd: clearPanel,
11317
+ onAnimationEnd: clearPanel
11318
+ }, Object(external_this_wp_element_["createElement"])("div", {
11319
+ className: "woocommerce-layout__activity-panel-content",
11320
+ key: 'activity-panel-' + currentTab,
11321
+ id: 'activity-panel-' + currentTab
11322
+ }, Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Suspense"], {
11323
+ fallback: Object(external_this_wp_element_["createElement"])(external_this_wc_components_["Spinner"], null)
11324
+ }, this.getPanelContent(currentTab))));
11325
+ }
11326
+ }, {
11327
+ key: "redirectToHomeScreen",
11328
+ value: function redirectToHomeScreen() {
11329
+ if (Object(utils["f" /* isWCAdmin */])(window.location.href)) {
11330
+ Object(external_this_wc_navigation_["getHistory"])().push(Object(external_this_wc_navigation_["getNewPath"])({}, '/', {}));
11331
+ } else {
11332
+ window.location.href = Object(settings["f" /* getAdminLink */])('admin.php?page=wc-admin');
11333
+ }
11334
+ }
11335
+ }, {
11336
+ key: "render",
11337
+ value: function render() {
11338
+ var _this3 = this;
11339
+
11340
+ var tabs = this.getTabs();
11341
+ var isEmbedded = this.props.isEmbedded;
11342
+ var _this$state2 = this.state,
11343
+ mobileOpen = _this$state2.mobileOpen,
11344
+ currentTab = _this$state2.currentTab,
11345
+ isPanelOpen = _this$state2.isPanelOpen;
11346
+ var headerId = Object(external_lodash_["uniqueId"])('activity-panel-header_');
11347
+ var panelClasses = classnames_default()('woocommerce-layout__activity-panel', {
11348
+ 'is-mobile-open': this.state.mobileOpen
11349
+ });
11350
+ var hasUnread = tabs.some(function (tab) {
11351
+ return tab.unread;
11352
+ });
11353
+ var viewLabel = hasUnread ? Object(external_this_wp_i18n_["__"])('View Activity Panel, you have unread activity', 'woocommerce-admin') : Object(external_this_wp_i18n_["__"])('View Activity Panel', 'woocommerce-admin');
11354
+ var isPerformingSetupTask = this.isPerformingSetupTask();
11355
+ var showDisplayOptions = !isEmbedded && this.isHomescreen() && !isPerformingSetupTask;
11356
+ return Object(external_this_wp_element_["createElement"])("div", null, Object(external_this_wp_element_["createElement"])(external_this_wc_components_["H"], {
11357
+ id: headerId,
11358
+ className: "screen-reader-text"
11359
+ }, Object(external_this_wp_i18n_["__"])('Store Activity', 'woocommerce-admin')), Object(external_this_wp_element_["createElement"])(external_this_wc_components_["Section"], {
11360
+ component: "aside",
11361
+ id: "woocommerce-activity-panel",
11362
+ "aria-labelledby": headerId
11363
+ }, Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
11364
+ onClick: function onClick() {
11365
+ _this3.toggleMobile();
11366
+ },
11367
+ label: mobileOpen ? Object(external_this_wp_i18n_["__"])('Close Activity Panel', 'woocommerce-admin') : viewLabel,
11368
+ "aria-expanded": mobileOpen,
11369
+ className: "woocommerce-layout__activity-panel-mobile-toggle"
11370
+ }, mobileOpen ? Object(external_this_wp_element_["createElement"])(cross_small_default.a, null) : Object(external_this_wp_element_["createElement"])(toggle_bubble, {
11371
+ hasUnread: hasUnread
11372
+ })), Object(external_this_wp_element_["createElement"])("div", {
11373
+ className: panelClasses
11374
+ }, Object(external_this_wp_element_["createElement"])(tabs_Tabs, {
11375
+ tabs: tabs,
11376
+ tabOpen: isPanelOpen,
11377
+ selectedTab: currentTab,
11378
+ onTabClick: function onTabClick(tab, tabOpen) {
11379
+ _this3.togglePanel(tab, tabOpen);
11380
+ },
11381
+ showDisplayOptions: showDisplayOptions
11382
+ }), this.renderPanel())));
11383
+ }
11384
+ }]);
11385
+
11386
+ return ActivityPanel;
11387
+ }(external_this_wp_element_["Component"]);
11388
  activity_panel_ActivityPanel.defaultProps = {
11389
+ getHistory: external_this_wc_navigation_["getHistory"]
11390
  };
11391
+ /* harmony default export */ var activity_panel = (Object(compose["a" /* default */])(Object(external_this_wp_data_["withSelect"])(function (select) {
11392
+ var hasUnreadNotes = getUnreadNotes(select);
11393
+ var hasUnreadStock = getUnreadStock();
11394
+ var hasUnapprovedReviews = getUnapprovedReviews(select);
11395
+
11396
+ var _select = select(external_this_wc_data_["OPTIONS_STORE_NAME"]),
11397
+ getOption = _select.getOption,
11398
+ isResolving = _select.isResolving;
11399
+
11400
+ var taskListComplete = getOption('woocommerce_task_list_complete') === 'yes';
11401
+ var taskListHidden = getOption('woocommerce_task_list_hidden') === 'yes';
11402
+ var requestingTaskListOptions = isResolving('getOption', ['woocommerce_task_list_complete']) || isResolving('getOption', ['woocommerce_task_list_hidden']);
11403
+ return {
11404
+ hasUnreadNotes: hasUnreadNotes,
11405
+ hasUnreadStock: hasUnreadStock,
11406
+ hasUnapprovedReviews: hasUnapprovedReviews,
11407
+ requestingTaskListOptions: requestingTaskListOptions,
11408
+ taskListComplete: taskListComplete,
11409
+ taskListHidden: taskListHidden
11410
+ };
11411
+ }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) {
11412
+ return {
11413
+ updateOptions: dispatch(external_this_wc_data_["OPTIONS_STORE_NAME"]).updateOptions
11414
+ };
11415
+ }), dist_default.a)(activity_panel_ActivityPanel));
11416
  // CONCATENATED MODULE: ./client/lib/platform/index.js
11417
  var ANDROID_PLATFORM = 'android';
11418
  var IOS_PLATFORM = 'ios';
11435
  // CONCATENATED MODULE: ./client/mobile-banner/app-icon.js
11436
 
11437
  var app_icon_AppIcon = function AppIcon() {
11438
+ return Object(external_this_wp_element_["createElement"])("svg", {
11439
  width: "37",
11440
  height: "37",
11441
  viewBox: "0 0 92 92",
11442
  fill: "none",
11443
  xmlns: "http://www.w3.org/2000/svg"
11444
+ }, Object(external_this_wp_element_["createElement"])("rect", {
11445
  width: "92",
11446
  height: "92",
11447
  rx: "21.3953",
11448
  fill: "#7F54B3"
11449
+ }), Object(external_this_wp_element_["createElement"])("path", {
11450
  fillRule: "evenodd",
11451
  clipRule: "evenodd",
11452
  d: "M72.5937 28.043H19.8094C16.4781 28.0459 13.7783 30.7705 13.7754 34.1324V54.4501C13.7783 57.812 16.4781 60.5366 19.8094 60.5395H44.8229L56.2573 66.9607L53.6672 60.5395H72.599C74.2009 60.5402 75.7374 59.8983 76.8702 58.7552C78.0029 57.612 78.639 56.0614 78.6383 54.4447V34.1324C78.6376 32.5157 78.0002 30.9657 76.8664 29.8235C75.7327 28.6814 74.1956 28.0408 72.5937 28.043ZM19.1057 32.4208C18.4658 32.4324 17.8646 32.7359 17.467 33.2482C17.0888 33.7635 16.9404 34.4175 17.058 35.0502C18.5962 45.0986 20.0338 51.8757 21.371 55.3816C21.8779 56.658 22.4896 57.2703 23.2063 57.2185C24.3075 57.1489 25.6263 55.5968 27.1627 52.5621C27.9964 50.8412 29.2602 48.2662 30.9539 44.837C32.3785 49.88 34.309 53.6787 36.7456 56.2331C37.4291 56.9436 38.1204 57.2748 38.8195 57.2266C39.4185 57.1931 39.953 56.8315 40.217 56.2813C40.4753 55.7358 40.5806 55.1278 40.5211 54.5248C40.3516 52.0703 40.5919 48.667 41.2421 44.3149C41.9081 39.8057 42.7523 36.5818 43.7749 34.6432C43.9822 34.2526 44.0733 33.8087 44.037 33.366C44.0039 32.7587 43.7116 32.1969 43.2374 31.829C42.7745 31.4367 42.1799 31.2446 41.5803 31.2935C40.8334 31.3325 40.1682 31.7885 39.8499 32.4797C38.2331 35.5019 37.0812 40.4109 36.3943 47.2068C35.2823 44.2394 34.4509 41.1703 33.9114 38.0412C33.623 36.4613 32.9037 35.7125 31.7536 35.7946C30.9592 35.8589 30.3063 36.3944 29.7819 37.4012L24.0348 48.5643C23.0997 44.6692 22.2205 39.9289 21.3972 34.3433C21.1997 32.9652 20.4358 32.3244 19.1057 32.4208ZM69.9089 34.6877C71.6969 35.0381 73.2407 36.2 74.1186 37.8559C74.9693 39.3247 75.3946 41.1161 75.3946 43.23C75.4148 45.9567 74.7062 48.6357 73.3477 50.9687C71.7778 53.7023 69.7195 55.0691 67.1727 55.0691C66.6933 55.0668 66.2153 55.0128 65.7467 54.9078C63.9584 54.5581 62.4143 53.396 61.5371 51.7396C60.6864 50.2452 60.261 48.4411 60.261 46.3272C60.2357 43.6127 60.945 40.9454 62.3079 38.6295C63.9023 35.8959 65.9607 34.5291 68.4829 34.5291C68.9623 34.5304 69.4402 34.5836 69.9089 34.6877ZM68.7937 49.4848C69.7707 48.5773 70.4399 47.2269 70.8012 45.4337V45.4419C70.9315 44.7826 70.9959 44.1112 70.9933 43.4382C70.986 42.5849 70.8291 41.74 70.5302 40.9452C70.1443 39.901 69.6304 39.3124 68.9884 39.1793C68.0378 38.9643 67.1239 39.5256 66.2469 40.8632C65.5812 41.8393 65.109 42.9432 64.8577 44.1106C64.7276 44.7708 64.6632 45.4432 64.6657 46.1171C64.6739 46.9677 64.8308 47.8096 65.1287 48.6019C65.5146 49.6388 66.0294 50.2274 66.6731 50.3678C67.3169 50.5081 68.0237 50.2138 68.7937 49.4848ZM57.9079 37.8559C57.0291 36.2008 55.4854 35.0392 53.6976 34.6877C53.2279 34.5837 52.749 34.5306 52.2687 34.5291C49.7443 34.5291 47.6856 35.8959 46.0927 38.6295C44.7295 40.9454 44.0201 43.6127 44.0454 46.3272C44.0454 48.4411 44.4699 50.2452 45.319 51.7396C46.1976 53.3949 47.7414 54.5566 49.5294 54.9078C49.999 55.0126 50.4779 55.0667 50.9582 55.0691C53.5055 55.0691 55.5642 53.7023 57.1343 50.9687C58.4922 48.6355 59.2001 45.9565 59.1789 43.23C59.1789 41.1161 58.7544 39.3247 57.9053 37.8559H57.9079ZM54.5903 45.4337C54.2307 47.2269 53.5614 48.5773 52.5825 49.4848C51.8115 50.2065 51.101 50.5017 50.4589 50.3678C49.8169 50.2338 49.3011 49.6461 48.9169 48.6019C48.6181 47.8097 48.4603 46.9678 48.4511 46.1171C48.4495 45.4431 48.5148 44.7707 48.6459 44.1106C48.8971 42.9432 49.3694 41.8393 50.0353 40.8632C50.9124 39.5256 51.8264 38.9643 52.7773 39.1793C53.4193 39.3124 53.9333 39.901 54.3193 40.9452C54.617 41.7404 54.7739 42.585 54.7824 43.4382C54.785 44.1112 54.7207 44.7826 54.5903 45.4419V45.4337Z",
11454
  }));
11455
  };
11456
  // EXTERNAL MODULE: ./client/mobile-banner/style.scss
11457
+ var mobile_banner_style = __webpack_require__(571);
11458
 
11459
  // CONCATENATED MODULE: ./client/mobile-banner/constants.js
11460
  // The Play Store link is defined as an exported constant mainly for the sake of testing the Mobile App Banner.
11485
  var mobile_banner_MobileAppBanner = function MobileAppBanner(_ref) {
11486
  var onInstall = _ref.onInstall,
11487
  onDismiss = _ref.onDismiss;
11488
+ Object(external_this_wp_element_["useEffect"])(function () {
11489
  var layout = document.getElementsByClassName('woocommerce-layout')[0];
11490
 
11491
  if (platform() === ANDROID_PLATFORM) {
11504
  };
11505
  }, []);
11506
 
11507
+ var _useState = Object(external_this_wp_element_["useState"])(false),
11508
  _useState2 = slicedToArray_default()(_useState, 2),
11509
  isDismissed = _useState2[0],
11510
  setDismissed = _useState2[1]; // On iOS the "Smart App Banner" meta tag is used so only display this on Android.
11511
 
11512
 
11513
  if (platform() === ANDROID_PLATFORM && !isDismissed) {
11514
+ return Object(external_this_wp_element_["createElement"])("div", {
11515
  className: "woocommerce-mobile-app-banner"
11516
+ }, Object(external_this_wp_element_["createElement"])(components_build_module_icon["a" /* default */], {
11517
  icon: "no-alt",
11518
  "data-testid": "dismiss-btn",
11519
  onClick: function onClick() {
11520
  onDismiss();
11521
  setDismissed(true);
11522
+ Object(external_this_wc_tracks_["recordEvent"])(TRACKING_EVENT_NAME, {
11523
  action: 'dismiss'
11524
  });
11525
  }
11526
+ }), Object(external_this_wp_element_["createElement"])(app_icon_AppIcon, null), Object(external_this_wp_element_["createElement"])("div", {
11527
  className: "woocommerce-mobile-app-banner__description"
11528
+ }, Object(external_this_wp_element_["createElement"])("p", {
11529
  className: "woocommerce-mobile-app-banner__description__text"
11530
+ }, Object(external_this_wp_i18n_["__"])('Run your store from anywhere', 'woocommerce-admin')), Object(external_this_wp_element_["createElement"])("p", {
11531
  className: "woocommerce-mobile-app-banner__description__text"
11532
+ }, Object(external_this_wp_i18n_["__"])('Download the WooCommerce app', 'woocommerce-admin'))), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
11533
  href: PLAY_STORE_LINK,
11534
  isSecondary: true,
11535
  onClick: function onClick() {
11536
  onInstall();
11537
  setDismissed(true);
11538
+ Object(external_this_wc_tracks_["recordEvent"])(TRACKING_EVENT_NAME, {
11539
  action: 'install'
11540
  });
11541
  }
11542
+ }, Object(external_this_wp_i18n_["__"])('Install', 'woocommerce-admin')));
11543
  }
11544
 
11545
  return null;
11546
  };
11547
+ // EXTERNAL MODULE: ./client/hooks/useIsScrolled.js
11548
+ var useIsScrolled = __webpack_require__(295);
11549
+
11550
+ // CONCATENATED MODULE: ./client/header/index.js
11551
+
11552
 
11553
 
11554
  /**
11555
  * External dependencies
11556
  */
11557
 
 
 
 
 
 
11558
 
 
 
 
 
 
11559
 
 
 
 
11560
 
 
 
 
 
 
 
 
 
 
 
11561
 
 
 
11562
 
 
 
 
11563
 
11564
+ /**
11565
+ * Internal dependencies
11566
+ */
11567
+
11568
 
 
 
11569
 
 
 
11570
 
 
 
11571
 
11572
+ var header_Header = function Header(_ref) {
11573
+ var sections = _ref.sections,
11574
+ _ref$isEmbedded = _ref.isEmbedded,
11575
+ isEmbedded = _ref$isEmbedded === void 0 ? false : _ref$isEmbedded,
11576
+ query = _ref.query;
11577
+ var headerElement = Object(external_this_wp_element_["useRef"])(null);
11578
+ var siteTitle = Object(settings["g" /* getSetting */])('siteTitle', '');
11579
+ var pageTitle = sections.slice(-1)[0];
11580
+ var isScrolled = Object(useIsScrolled["a" /* default */])();
11581
 
11582
+ var _useUserPreferences = Object(external_this_wc_data_["useUserPreferences"])(),
11583
+ updateUserPreferences = _useUserPreferences.updateUserPreferences,
11584
+ userData = objectWithoutProperties_default()(_useUserPreferences, ["updateUserPreferences"]);
11585
 
11586
+ var isModalDismissed = userData.android_app_banner_dismissed === 'yes';
11587
+ var className = classnames_default()('woocommerce-layout__header', {
11588
+ 'is-scrolled': isScrolled
11589
+ });
11590
+ Object(external_this_wp_element_["useEffect"])(function () {
11591
+ if (!isEmbedded) {
11592
+ var documentTitle = sections.map(function (section) {
11593
+ return Array.isArray(section) ? section[1] : section;
11594
+ }).reverse().join(' &lsaquo; ');
11595
+ var decodedTitle = Object(external_this_wp_htmlEntities_["decodeEntities"])(Object(external_this_wp_i18n_["sprintf"])(
11596
+ /* translators: 1: document title. 2: page title */
11597
+ Object(external_this_wp_i18n_["__"])('%1$s &lsaquo; %2$s &#8212; WooCommerce', 'woocommerce-admin'), documentTitle, siteTitle));
11598
 
11599
+ if (document.title !== decodedTitle) {
11600
+ document.title = decodedTitle;
11601
+ }
11602
+ }
11603
+ }, [isEmbedded, sections, siteTitle]);
11604
 
11605
+ var dismissHandler = function dismissHandler() {
11606
+ updateUserPreferences({
11607
+ android_app_banner_dismissed: 'yes'
11608
+ });
11609
+ };
11610
 
11611
+ return Object(external_this_wp_element_["createElement"])("div", {
11612
+ className: className,
11613
+ ref: headerElement
11614
+ }, !isModalDismissed && Object(external_this_wp_element_["createElement"])(mobile_banner_MobileAppBanner, {
11615
+ onDismiss: dismissHandler,
11616
+ onInstall: dismissHandler
11617
+ }), Object(external_this_wp_element_["createElement"])(build_module_text["a" /* default */], {
11618
+ className: "woocommerce-layout__header-heading",
11619
+ as: "h1",
11620
+ variant: "subtitle.small"
11621
+ }, Object(external_this_wp_htmlEntities_["decodeEntities"])(pageTitle)), window.wcAdminFeatures['activity-panels'] && Object(external_this_wp_element_["createElement"])(activity_panel, {
11622
+ isEmbedded: isEmbedded,
11623
+ query: query
11624
+ }));
11625
+ };
11626
+ // CONCATENATED MODULE: ./client/layout/notices.js
11627
 
11628
 
11629
 
11631
 
11632
 
11633
 
11634
+ function notices_createSuper(Derived) { var hasNativeReflectConstruct = notices_isNativeReflectConstruct(); return function _createSuperInternal() { var Super = getPrototypeOf_default()(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = getPrototypeOf_default()(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return possibleConstructorReturn_default()(this, result); }; }
11635
 
11636
+ function notices_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
11637
 
11638
+ /**
11639
+ * External dependencies
11640
+ */
11641
 
11642
 
11643
+ var notices_Notices = /*#__PURE__*/function (_Component) {
11644
+ inherits_default()(Notices, _Component);
11645
 
11646
+ var _super = notices_createSuper(Notices);
11647
 
11648
+ function Notices() {
11649
+ classCallCheck_default()(this, Notices);
11650
 
11651
+ return _super.apply(this, arguments);
11652
+ }
11653
 
11654
+ createClass_default()(Notices, [{
11655
+ key: "render",
11656
+ value: function render() {
11657
+ return Object(external_this_wp_element_["createElement"])("div", {
11658
+ id: "woocommerce-layout__notice-list",
11659
+ className: "woocommerce-layout__notice-list"
11660
+ });
11661
+ }
11662
+ }]);
11663
 
11664
+ return Notices;
11665
+ }(external_this_wp_element_["Component"]);
11666
 
11667
+ /* harmony default export */ var layout_notices = (notices_Notices);
11668
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/regenerator/index.js
11669
+ var regenerator = __webpack_require__(14);
11670
+ var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);
11671
 
11672
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
11673
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
11674
+ try {
11675
+ var info = gen[key](arg);
11676
+ var value = info.value;
11677
+ } catch (error) {
11678
+ reject(error);
11679
+ return;
11680
+ }
11681
 
11682
+ if (info.done) {
11683
+ resolve(value);
11684
+ } else {
11685
+ Promise.resolve(value).then(_next, _throw);
 
 
11686
  }
11687
+ }
11688
 
11689
+ function _asyncToGenerator(fn) {
11690
+ return function () {
11691
+ var self = this,
11692
+ args = arguments;
11693
+ return new Promise(function (resolve, reject) {
11694
+ var gen = fn.apply(self, args);
11695
 
11696
+ function _next(value) {
11697
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
11698
+ }
11699
 
11700
+ function _throw(err) {
11701
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
11702
+ }
 
 
11703
 
11704
+ _next(undefined);
11705
+ });
11706
+ };
11707
+ }
11708
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
11709
+ var esm_slicedToArray = __webpack_require__(26);
 
 
 
11710
 
11711
+ // EXTERNAL MODULE: ./node_modules/react-spring/web.cjs.js
11712
+ var web_cjs = __webpack_require__(436);
11713
 
11714
+ // EXTERNAL MODULE: ./node_modules/@wordpress/compose/build-module/hooks/use-reduced-motion/index.js
11715
+ var use_reduced_motion = __webpack_require__(760);
 
11716
 
11717
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/snackbar/index.js
11718
+ var snackbar = __webpack_require__(536);
11719
 
11720
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/snackbar/list.js
 
 
11721
 
 
 
 
 
11722
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11723
 
 
 
 
 
 
11724
 
 
 
 
 
 
11725
 
 
 
 
11726
 
 
 
 
 
 
 
 
 
 
11727
  /**
11728
+ * External dependencies
 
 
11729
  */
11730
 
 
 
 
 
 
11731
 
11732
+
 
 
 
 
 
 
11733
  /**
11734
+ * WordPress dependencies
11735
  */
11736
 
11737
+
11738
 
11739
  /**
11740
+ * Internal dependencies
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11741
  */
11742
 
 
 
 
 
 
11743
 
 
 
 
11744
  /**
11745
+ * Renders a list of notices.
11746
  *
11747
+ * @param {Object} $0 Props passed to the component.
11748
+ * @param {Array} $0.notices Array of notices to render.
11749
+ * @param {Function} $0.onRemove Function called when a notice should be removed / dismissed.
11750
+ * @param {Object} $0.className Name of the class used by the component.
11751
+ * @param {Object} $0.children Array of children to be rendered inside the notice list.
11752
+ * @return {Object} The rendered notices list.
11753
  */
11754
 
11755
+ function SnackbarList(_ref) {
11756
+ var notices = _ref.notices,
11757
+ className = _ref.className,
11758
+ children = _ref.children,
11759
+ _ref$onRemove = _ref.onRemove,
11760
+ onRemove = _ref$onRemove === void 0 ? external_lodash_["noop"] : _ref$onRemove;
11761
+ var isReducedMotion = Object(use_reduced_motion["a" /* default */])();
 
 
 
 
11762
 
11763
+ var _useState = Object(external_this_wp_element_["useState"])(function () {
11764
+ return new WeakMap();
11765
+ }),
11766
+ _useState2 = Object(esm_slicedToArray["a" /* default */])(_useState, 1),
11767
+ refMap = _useState2[0];
11768
 
11769
+ var transitions = Object(web_cjs["useTransition"])(notices, function (notice) {
11770
+ return notice.id;
11771
+ }, {
11772
+ from: {
11773
+ opacity: 0,
11774
+ height: 0
11775
+ },
11776
+ enter: function enter(item) {
11777
+ return /*#__PURE__*/function () {
11778
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/regenerator_default.a.mark(function _callee(next) {
11779
+ return regenerator_default.a.wrap(function _callee$(_context) {
11780
+ while (1) {
11781
+ switch (_context.prev = _context.next) {
11782
+ case 0:
11783
+ _context.next = 2;
11784
+ return next({
11785
+ opacity: 1,
11786
+ height: refMap.get(item).offsetHeight
11787
+ });
11788
 
11789
+ case 2:
11790
+ return _context.abrupt("return", _context.sent);
11791
 
11792
+ case 3:
11793
+ case "end":
11794
+ return _context.stop();
11795
+ }
11796
+ }
11797
+ }, _callee);
11798
+ }));
11799
 
11800
+ return function (_x) {
11801
+ return _ref2.apply(this, arguments);
11802
+ };
11803
+ }();
11804
+ },
11805
+ leave: function leave() {
11806
+ return /*#__PURE__*/function () {
11807
+ var _ref3 = _asyncToGenerator( /*#__PURE__*/regenerator_default.a.mark(function _callee2(next) {
11808
+ return regenerator_default.a.wrap(function _callee2$(_context2) {
11809
+ while (1) {
11810
+ switch (_context2.prev = _context2.next) {
11811
+ case 0:
11812
+ _context2.next = 2;
11813
+ return next({
11814
+ opacity: 0
11815
+ });
11816
 
11817
+ case 2:
11818
+ _context2.next = 4;
11819
+ return next({
11820
+ height: 0
11821
+ });
11822
 
11823
+ case 4:
11824
+ case "end":
11825
+ return _context2.stop();
11826
+ }
11827
+ }
11828
+ }, _callee2);
11829
+ }));
11830
 
11831
+ return function (_x2) {
11832
+ return _ref3.apply(this, arguments);
11833
+ };
11834
+ }();
11835
+ },
11836
+ immediate: isReducedMotion
11837
+ });
11838
+ className = classnames_default()('components-snackbar-list', className);
11839
 
11840
+ var removeNotice = function removeNotice(notice) {
11841
+ return function () {
11842
+ return onRemove(notice.id);
11843
+ };
 
11844
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11845
 
11846
+ return Object(external_this_wp_element_["createElement"])("div", {
11847
+ className: className
11848
+ }, children, transitions.map(function (_ref4) {
11849
+ var notice = _ref4.item,
11850
+ key = _ref4.key,
11851
+ style = _ref4.props;
11852
+ return Object(external_this_wp_element_["createElement"])(web_cjs["animated"].div, {
11853
+ key: key,
11854
+ style: style
11855
+ }, Object(external_this_wp_element_["createElement"])("div", {
11856
+ className: "components-snackbar-list__notice-container",
11857
+ ref: function ref(_ref5) {
11858
+ return _ref5 && refMap.set(notice, _ref5);
11859
+ }
11860
+ }, Object(external_this_wp_element_["createElement"])(snackbar["a" /* default */], Object(esm_extends["a" /* default */])({}, Object(external_lodash_["omit"])(notice, ['content']), {
11861
+ onRemove: removeNotice(notice)
11862
+ }), notice.content)));
11863
+ }));
11864
+ }
11865
 
11866
+ /* harmony default export */ var list = (SnackbarList);
11867
+ //# sourceMappingURL=list.js.map
11868
+ // EXTERNAL MODULE: ./client/layout/transient-notices/style.scss
11869
+ var transient_notices_style = __webpack_require__(572);
11870
 
11871
+ // CONCATENATED MODULE: ./client/layout/transient-notices/index.js
 
 
11872
 
11873
 
11874
 
11876
 
11877
 
11878
 
11879
+ function transient_notices_createSuper(Derived) { var hasNativeReflectConstruct = transient_notices_isNativeReflectConstruct(); return function _createSuperInternal() { var Super = getPrototypeOf_default()(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = getPrototypeOf_default()(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return possibleConstructorReturn_default()(this, result); }; }
11880
 
11881
+ function transient_notices_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
11882
 
11883
  /**
11884
+ * External dependencies
11885
  */
11886
 
11887
 
11888
 
11889
 
 
 
 
 
11890
 
 
 
 
 
11891
 
11892
+ /**
11893
+ * Internal dependencies
11894
+ */
 
11895
 
 
 
 
 
 
11896
 
 
 
 
 
 
11897
 
11898
+ var transient_notices_TransientNotices = /*#__PURE__*/function (_Component) {
11899
+ inherits_default()(TransientNotices, _Component);
 
 
 
 
 
11900
 
11901
+ var _super = transient_notices_createSuper(TransientNotices);
 
11902
 
11903
+ function TransientNotices() {
11904
+ classCallCheck_default()(this, TransientNotices);
 
 
 
 
11905
 
11906
+ return _super.apply(this, arguments);
11907
+ }
 
 
 
 
 
 
 
 
 
 
 
11908
 
11909
+ createClass_default()(TransientNotices, [{
11910
+ key: "render",
11911
+ value: function render() {
11912
+ var _this$props = this.props,
11913
+ className = _this$props.className,
11914
+ notices = _this$props.notices,
11915
+ onRemove = _this$props.onRemove;
11916
+ var classes = classnames_default()('woocommerce-transient-notices', 'components-notices__snackbar', className);
11917
+ return Object(external_this_wp_element_["createElement"])(list, {
11918
+ notices: notices,
11919
+ className: classes,
11920
+ onRemove: onRemove
11921
+ });
11922
  }
11923
+ }]);
11924
 
11925
+ return TransientNotices;
11926
+ }(external_this_wp_element_["Component"]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11927
 
11928
+ transient_notices_TransientNotices.propTypes = {
11929
+ /**
11930
+ * Additional class name to style the component.
11931
+ */
11932
+ className: prop_types_default.a.string,
 
 
 
11933
 
11934
+ /**
11935
+ * Array of notices to be displayed.
11936
+ */
11937
+ notices: prop_types_default.a.array
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11938
  };
11939
+ /* harmony default export */ var transient_notices = (Object(compose["a" /* default */])(Object(external_this_wp_data_["withSelect"])(function (select) {
11940
+ var notices = select('core/notices').getNotices();
11941
+ return {
11942
+ notices: notices
11943
+ };
11944
+ }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) {
11945
+ return {
11946
+ onRemove: dispatch('core/notices').removeNotice
11947
+ };
11948
+ }))(transient_notices_TransientNotices));
11949
+ // EXTERNAL MODULE: external {"this":["wp","plugins"]}
11950
+ var external_this_wp_plugins_ = __webpack_require__(296);
11951
 
11952
+ // CONCATENATED MODULE: ./client/layout/navigation.js
 
 
 
 
 
11953
 
 
11954
 
11955
 
11956
+ function navigation_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
11957
 
11958
+ function navigation_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { navigation_ownKeys(Object(source), true).forEach(function (key) { defineProperty_default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { navigation_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
11959
 
11960
  /**
11961
  * External dependencies
11964
 
11965
 
11966
 
 
11967
  /**
11968
  * Internal dependencies
11969
  */
11970
 
11971
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11972
 
 
11973
 
 
 
 
 
 
 
 
 
11974
 
11975
+ var navigation_NavigationPlugin = function NavigationPlugin() {
11976
+ /**
11977
+ * If the current page is embedded, stay with the default urls
11978
+ * provided by Navigation because the router isn't present to
11979
+ * respond to <Link /> component's manipulation of the url.
11980
+ */
11981
+ if (!Object(utils["f" /* isWCAdmin */])(window.location.href)) {
11982
  return null;
11983
  }
11984
 
11985
+ var reports = Object(get_reports["a" /* default */])();
11986
+ var pages = controller_getPages().filter(function (page) {
11987
+ return page.id;
11988
+ }).map(function (page) {
11989
+ if (page.id === 'woocommerce-analytics-settings') {
11990
+ return navigation_objectSpread(navigation_objectSpread({}, page), {}, {
11991
+ breadcrumbs: [Object(external_this_wp_i18n_["__"])('Analytics', 'woocommerce-admin')]
11992
+ });
11993
+ }
11994
+
11995
+ return page;
11996
  });
11997
+ var persistedQuery = Object(external_this_wc_navigation_["getPersistedQuery"])({});
11998
+ return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, pages.map(function (page) {
11999
+ return Object(external_this_wp_element_["createElement"])(external_this_wc_navigation_["WooNavigationItem"], {
12000
+ item: page.id,
12001
+ key: page.id
12002
+ }, Object(external_this_wp_element_["createElement"])(external_this_wc_components_["Link"], {
12003
+ className: "components-button",
12004
+ href: Object(external_this_wc_navigation_["getNewPath"])(persistedQuery, page.path, {}),
12005
+ type: "wc-admin"
12006
+ }, page.breadcrumbs[page.breadcrumbs.length - 1]));
12007
+ }), reports.map(function (item) {
12008
+ return Object(external_this_wp_element_["createElement"])(external_this_wc_navigation_["WooNavigationItem"], {
12009
+ item: item.id,
12010
+ key: item.report
12011
+ }, Object(external_this_wp_element_["createElement"])(external_this_wc_components_["Link"], {
12012
+ className: "components-button",
12013
+ href: Object(external_this_wc_navigation_["getNewPath"])(persistedQuery, "/analytics/".concat(item.report), {}),
12014
+ type: "wc-admin"
12015
+ }, item.title));
12016
+ }));
12017
  };
 
 
 
12018
 
12019
+ Object(external_this_wp_plugins_["registerPlugin"])('wc-admin-navigation', {
12020
+ render: navigation_NavigationPlugin
12021
+ });
12022
+ // CONCATENATED MODULE: ./client/layout/index.js
12023
 
 
 
 
12024
 
12025
 
12026
 
 
 
 
12027
 
12028
 
 
 
 
 
 
 
12029
 
 
 
 
 
 
 
 
 
 
12030
 
 
 
12031
 
 
 
 
12032
 
12033
+ function layout_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
 
 
12034
 
12035
+ function layout_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { layout_ownKeys(Object(source), true).forEach(function (key) { defineProperty_default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { layout_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
 
 
 
 
 
 
 
 
 
 
 
 
 
12036
 
12037
+ function layout_createSuper(Derived) { var hasNativeReflectConstruct = layout_isNativeReflectConstruct(); return function _createSuperInternal() { var Super = getPrototypeOf_default()(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = getPrototypeOf_default()(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return possibleConstructorReturn_default()(this, result); }; }
12038
 
12039
+ function layout_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
12040
 
12041
  /**
12042
+ * External dependencies
12043
  */
12044
 
12045
 
12046
 
 
 
 
 
 
 
12047
 
 
 
 
 
 
 
 
 
 
12048
 
12049
+
12050
+
12051
+
12052
+
12053
+
 
12054
 
12055
 
12056
  /**
12057
+ * Internal dependencies
12058
  */
12059
 
12060
 
12061
 
12062
 
 
 
 
 
12063
 
 
 
 
 
 
 
12064
 
 
 
12065
 
12066
+ var StoreAlerts = Object(external_this_wp_element_["lazy"])(function () {
12067
+ return Promise.all(/* import() | store-alerts */[__webpack_require__.e(3), __webpack_require__.e(4), __webpack_require__.e(48)]).then(__webpack_require__.bind(null, 853));
12068
+ });
12069
+ var layout_PrimaryLayout = /*#__PURE__*/function (_Component) {
12070
+ inherits_default()(PrimaryLayout, _Component);
12071
 
12072
+ var _super = layout_createSuper(PrimaryLayout);
12073
+
12074
+ function PrimaryLayout() {
12075
+ classCallCheck_default()(this, PrimaryLayout);
12076
+
12077
+ return _super.apply(this, arguments);
 
 
 
 
 
12078
  }
12079
 
12080
+ createClass_default()(PrimaryLayout, [{
12081
+ key: "render",
12082
+ value: function render() {
12083
+ var children = this.props.children;
12084
+ return Object(external_this_wp_element_["createElement"])("div", {
12085
+ className: "woocommerce-layout__primary",
12086
+ id: "woocommerce-layout__primary"
12087
+ }, window.wcAdminFeatures['store-alerts'] && Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Suspense"], {
12088
+ fallback: Object(external_this_wp_element_["createElement"])(external_this_wc_components_["Spinner"], null)
12089
+ }, Object(external_this_wp_element_["createElement"])(StoreAlerts, null)), Object(external_this_wp_element_["createElement"])(layout_notices, null), children);
12090
+ }
12091
+ }]);
 
12092
 
12093
+ return PrimaryLayout;
12094
+ }(external_this_wp_element_["Component"]);
12095
 
12096
+ var layout_Layout = /*#__PURE__*/function (_Component2) {
12097
+ inherits_default()(_Layout, _Component2);
12098
 
12099
+ var _super2 = layout_createSuper(_Layout);
12100
 
12101
+ function _Layout() {
12102
+ classCallCheck_default()(this, _Layout);
 
12103
 
12104
+ return _super2.apply(this, arguments);
12105
+ }
12106
 
12107
+ createClass_default()(_Layout, [{
12108
+ key: "componentDidMount",
12109
+ value: function componentDidMount() {
12110
+ this.recordPageViewTrack();
12111
+ }
12112
+ }, {
12113
+ key: "componentDidUpdate",
12114
+ value: function componentDidUpdate(prevProps) {
12115
+ var previousPath = Object(external_lodash_["get"])(prevProps, 'location.pathname');
12116
+ var currentPath = Object(external_lodash_["get"])(this.props, 'location.pathname');
12117
 
12118
+ if (!previousPath || !currentPath) {
12119
+ return;
12120
+ }
12121
+
12122
+ if (previousPath !== currentPath) {
12123
+ this.recordPageViewTrack();
12124
+ }
12125
+ }
12126
+ }, {
12127
+ key: "recordPageViewTrack",
12128
+ value: function recordPageViewTrack() {
12129
+ var _this$props = this.props,
12130
+ activePlugins = _this$props.activePlugins,
12131
+ installedPlugins = _this$props.installedPlugins,
12132
+ isEmbedded = _this$props.isEmbedded,
12133
+ isJetpackConnected = _this$props.isJetpackConnected;
12134
+ var navigationFlag = {
12135
+ has_navigation: !!window.wcNavigation
12136
+ };
12137
 
12138
+ if (isEmbedded) {
12139
+ var _path = document.location.pathname + document.location.search;
12140
 
12141
+ Object(external_this_wc_tracks_["recordPageView"])(_path, layout_objectSpread({
12142
+ is_embedded: true
12143
+ }, navigationFlag));
12144
+ return;
12145
+ }
12146
 
12147
+ var pathname = Object(external_lodash_["get"])(this.props, 'location.pathname');
 
 
 
 
12148
 
12149
+ if (!pathname) {
12150
+ return;
12151
+ } // Remove leading slash, and camel case remaining pathname
12152
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12153
 
12154
+ var path = pathname.substring(1).replace(/\//g, '_'); // When pathname is `/` we are on the home screen.
12155
 
12156
+ if (path.length === 0) {
12157
+ path = 'home_screen';
12158
+ }
12159
 
12160
+ Object(external_this_wc_tracks_["recordPageView"])(path, layout_objectSpread({
12161
+ jetpack_installed: installedPlugins.includes('jetpack'),
12162
+ jetpack_active: activePlugins.includes('jetpack'),
12163
+ jetpack_connected: isJetpackConnected
12164
+ }, navigationFlag));
12165
+ }
12166
+ }, {
12167
+ key: "getQuery",
12168
+ value: function getQuery(searchString) {
12169
+ if (!searchString) {
12170
+ return {};
12171
+ }
12172
 
12173
+ var search = searchString.substring(1);
12174
+ return Object(lib["parse"])(search);
12175
+ }
12176
+ }, {
12177
+ key: "render",
12178
+ value: function render() {
12179
+ var _this$props2 = this.props,
12180
+ isEmbedded = _this$props2.isEmbedded,
12181
+ restProps = objectWithoutProperties_default()(_this$props2, ["isEmbedded"]);
12182
 
12183
+ var _this$props3 = this.props,
12184
+ location = _this$props3.location,
12185
+ page = _this$props3.page;
12186
+ var breadcrumbs = page.breadcrumbs;
12187
+ var query = this.getQuery(location && location.search);
12188
+ return Object(external_this_wp_element_["createElement"])("div", {
12189
+ className: "woocommerce-layout"
12190
+ }, Object(external_this_wp_element_["createElement"])(header_Header, {
12191
+ sections: Object(external_lodash_["isFunction"])(breadcrumbs) ? breadcrumbs(this.props) : breadcrumbs,
12192
+ isEmbedded: isEmbedded,
12193
+ query: query
12194
+ }), Object(external_this_wp_element_["createElement"])(transient_notices, null), !isEmbedded && Object(external_this_wp_element_["createElement"])(layout_PrimaryLayout, null, Object(external_this_wp_element_["createElement"])("div", {
12195
+ className: "woocommerce-layout__main"
12196
+ }, Object(external_this_wp_element_["createElement"])(controller_Controller, extends_default()({}, restProps, {
12197
+ query: query
12198
+ })))));
12199
+ }
12200
+ }]);
12201
 
12202
+ return _Layout;
12203
+ }(external_this_wp_element_["Component"]);
12204
 
12205
+ layout_Layout.propTypes = {
12206
+ isEmbedded: prop_types_default.a.bool,
12207
+ page: prop_types_default.a.shape({
12208
+ container: prop_types_default.a.oneOfType([prop_types_default.a.func, prop_types_default.a.object // Support React.lazy
12209
+ ]),
12210
+ path: prop_types_default.a.string,
12211
+ breadcrumbs: prop_types_default.a.oneOfType([prop_types_default.a.func, prop_types_default.a.arrayOf(prop_types_default.a.oneOfType([prop_types_default.a.arrayOf(prop_types_default.a.string), prop_types_default.a.string]))]).isRequired,
12212
+ wpOpenMenu: prop_types_default.a.string
12213
+ }).isRequired
12214
+ };
12215
+ var Layout = Object(compose["a" /* default */])(Object(external_this_wc_data_["withPluginsHydration"])(layout_objectSpread(layout_objectSpread({}, window.wcSettings.plugins || {}), {}, {
12216
+ jetpackStatus: window.wcSettings.dataEndpoints && window.wcSettings.dataEndpoints.jetpackStatus || false
12217
+ })), Object(external_this_wp_data_["withSelect"])(function (select, _ref) {
12218
+ var isEmbedded = _ref.isEmbedded;
12219
 
12220
+ // Embedded pages don't send plugin info to Tracks.
12221
+ if (isEmbedded) {
12222
+ return;
12223
  }
12224
 
12225
+ var _select = select(external_this_wc_data_["PLUGINS_STORE_NAME"]),
12226
+ getActivePlugins = _select.getActivePlugins,
12227
+ getInstalledPlugins = _select.getInstalledPlugins,
12228
+ isJetpackConnected = _select.isJetpackConnected;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12229
 
12230
+ return {
12231
+ activePlugins: getActivePlugins(),
12232
+ isJetpackConnected: isJetpackConnected(),
12233
+ installedPlugins: getInstalledPlugins()
12234
+ };
12235
+ }))(layout_Layout);
12236
 
12237
+ var layout_PageLayout = /*#__PURE__*/function (_Component3) {
12238
+ inherits_default()(_PageLayout, _Component3);
12239
 
12240
+ var _super3 = layout_createSuper(_PageLayout);
12241
 
12242
+ function _PageLayout() {
12243
+ classCallCheck_default()(this, _PageLayout);
12244
 
12245
+ return _super3.apply(this, arguments);
12246
+ }
12247
 
12248
+ createClass_default()(_PageLayout, [{
12249
+ key: "render",
12250
+ value: function render() {
12251
+ return Object(external_this_wp_element_["createElement"])(react_router_Router, {
12252
+ history: Object(external_this_wc_navigation_["getHistory"])()
12253
+ }, Object(external_this_wp_element_["createElement"])(react_router_Switch, null, controller_getPages().map(function (page) {
12254
+ return Object(external_this_wp_element_["createElement"])(react_router_Route, {
12255
+ key: page.path,
12256
+ path: page.path,
12257
+ exact: true,
12258
+ render: function render(props) {
12259
+ return Object(external_this_wp_element_["createElement"])(Layout, extends_default()({
12260
+ page: page
12261
+ }, props));
12262
+ }
12263
+ });
12264
+ })));
12265
+ }
12266
+ }]);
12267
 
12268
+ return _PageLayout;
12269
+ }(external_this_wp_element_["Component"]);
 
12270
 
12271
+ var PageLayout = Object(compose["a" /* default */])(window.wcSettings.preloadOptions ? Object(external_this_wc_data_["withOptionsHydration"])(layout_objectSpread({}, window.wcSettings.preloadOptions)) : external_lodash_["identity"])(layout_PageLayout);
12272
 
12273
+ var layout_EmbedLayout = function _EmbedLayout() {
12274
+ return Object(external_this_wp_element_["createElement"])(Layout, {
12275
+ page: {
12276
+ breadcrumbs: Object(settings["g" /* getSetting */])('embedBreadcrumbs', [])
12277
+ },
12278
+ isEmbedded: true
12279
+ });
12280
+ };
12281
 
12282
+ var EmbedLayout = Object(compose["a" /* default */])(window.wcSettings.preloadOptions ? Object(external_this_wc_data_["withOptionsHydration"])(layout_objectSpread({}, window.wcSettings.preloadOptions)) : external_lodash_["identity"])(layout_EmbedLayout);
12283
 
12284
+ /***/ }),
12285
 
12286
+ /***/ 298:
12287
+ /***/ (function(module, exports) {
12288
 
12289
+ (function() { module.exports = this["wc"]["number"]; }());
 
 
12290
 
12291
+ /***/ }),
12292
 
12293
+ /***/ 3:
12294
+ /***/ (function(module, exports) {
12295
 
12296
+ (function() { module.exports = this["wp"]["i18n"]; }());
12297
 
12298
+ /***/ }),
12299
 
12300
+ /***/ 30:
12301
+ /***/ (function(module, exports, __webpack_require__) {
12302
 
12303
+ var arrayWithoutHoles = __webpack_require__(140);
 
 
 
 
 
 
12304
 
12305
+ var iterableToArray = __webpack_require__(141);
 
 
 
 
12306
 
12307
+ var unsupportedIterableToArray = __webpack_require__(83);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12308
 
12309
+ var nonIterableSpread = __webpack_require__(142);
 
12310
 
12311
+ function _toConsumableArray(arr) {
12312
+ return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
12313
+ }
 
12314
 
12315
+ module.exports = _toConsumableArray;
 
 
12316
 
12317
+ /***/ }),
 
 
 
 
 
 
 
12318
 
12319
+ /***/ 300:
12320
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
12321
 
12322
+ "use strict";
12323
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useInstanceId; });
12324
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
12325
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
12326
+ /**
12327
+ * WordPress dependencies
12328
+ */
12329
 
12330
+ var instanceMap = new WeakMap();
12331
+ /**
12332
+ * Creates a new id for a given object.
12333
+ *
12334
+ * @param {Object} object Object reference to create an id for.
12335
+ */
12336
 
12337
+ function createId(object) {
12338
+ var instances = instanceMap.get(object) || 0;
12339
+ instanceMap.set(object, instances + 1);
12340
+ return instances;
12341
+ }
12342
+ /**
12343
+ * Provides a unique instance ID.
12344
+ *
12345
+ * @param {Object} object Object reference to create an id for.
12346
+ * @param {string} prefix Prefix for the unique id.
12347
+ */
12348
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12349
 
12350
+ function useInstanceId(object, prefix) {
12351
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["useMemo"])(function () {
12352
+ var id = createId(object);
12353
+ return prefix ? "".concat(prefix, "-").concat(id) : id;
12354
+ }, [object]);
12355
+ }
12356
+ //# sourceMappingURL=index.js.map
 
 
 
 
 
 
 
 
 
 
 
12357
 
12358
+ /***/ }),
 
12359
 
12360
+ /***/ 306:
12361
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
12362
 
12363
+ "use strict";
12364
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
12365
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
12366
+ /* harmony import */ var _use_media_query__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(112);
12367
  /**
12368
+ * WordPress dependencies
12369
  */
12370
 
 
 
12371
  /**
12372
  * Internal dependencies
12373
  */
12374
 
12375
 
12376
+ /**
12377
+ * @typedef {"huge"|"wide"|"large"|"medium"|"small"|"mobile"} WPBreakpoint
12378
+ */
12379
 
12380
+ /**
12381
+ * Hash of breakpoint names with pixel width at which it becomes effective.
12382
+ *
12383
+ * @see _breakpoints.scss
12384
+ *
12385
+ * @type {Object<WPBreakpoint,number>}
12386
+ */
12387
 
12388
+ var BREAKPOINTS = {
12389
+ huge: 1440,
12390
+ wide: 1280,
12391
+ large: 960,
12392
+ medium: 782,
12393
+ small: 600,
12394
+ mobile: 480
12395
  };
12396
+ /**
12397
+ * @typedef {">="|"<"} WPViewportOperator
12398
+ */
12399
 
12400
+ /**
12401
+ * Object mapping media query operators to the condition to be used.
12402
+ *
12403
+ * @type {Object<WPViewportOperator,string>}
12404
+ */
 
 
 
 
 
 
 
12405
 
12406
+ var CONDITIONS = {
12407
+ '>=': 'min-width',
12408
+ '<': 'max-width'
12409
+ };
12410
+ /**
12411
+ * Object mapping media query operators to a function that given a breakpointValue and a width evaluates if the operator matches the values.
12412
+ *
12413
+ * @type {Object<WPViewportOperator,Function>}
12414
+ */
12415
 
12416
+ var OPERATOR_EVALUATORS = {
12417
+ '>=': function _(breakpointValue, width) {
12418
+ return width >= breakpointValue;
12419
+ },
12420
+ '<': function _(breakpointValue, width) {
12421
+ return width < breakpointValue;
12422
+ }
12423
+ };
12424
+ var ViewportMatchWidthContext = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createContext"])(null);
12425
+ /**
12426
+ * Returns true if the viewport matches the given query, or false otherwise.
12427
+ *
12428
+ * @param {WPBreakpoint} breakpoint Breakpoint size name.
12429
+ * @param {WPViewportOperator} [operator=">="] Viewport operator.
12430
+ *
12431
+ * @example
12432
+ *
12433
+ * ```js
12434
+ * useViewportMatch( 'huge', '<' );
12435
+ * useViewportMatch( 'medium' );
12436
+ * ```
12437
+ *
12438
+ * @return {boolean} Whether viewport matches query.
12439
+ */
12440
 
12441
+ var useViewportMatch = function useViewportMatch(breakpoint) {
12442
+ var operator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '>=';
12443
+ var simulatedWidth = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["useContext"])(ViewportMatchWidthContext);
12444
+ var mediaQuery = !simulatedWidth && "(".concat(CONDITIONS[operator], ": ").concat(BREAKPOINTS[breakpoint], "px)");
12445
+ var mediaQueryResult = Object(_use_media_query__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(mediaQuery);
12446
 
12447
+ if (simulatedWidth) {
12448
+ return OPERATOR_EVALUATORS[operator](BREAKPOINTS[breakpoint], simulatedWidth);
12449
+ }
12450
 
12451
+ return mediaQueryResult;
12452
+ };
12453
 
12454
+ useViewportMatch.__experimentalWidthProvider = ViewportMatchWidthContext.Provider;
12455
+ /* harmony default export */ __webpack_exports__["a"] = (useViewportMatch);
12456
+ //# sourceMappingURL=index.js.map
12457
 
12458
+ /***/ }),
12459
 
12460
+ /***/ 307:
12461
+ /***/ (function(module, exports, __webpack_require__) {
12462
 
12463
+ "use strict";
12464
+ /** @license React v16.13.1
12465
+ * react-is.production.min.js
12466
+ *
12467
+ * Copyright (c) Facebook, Inc. and its affiliates.
12468
+ *
12469
+ * This source code is licensed under the MIT license found in the
12470
+ * LICENSE file in the root directory of this source tree.
12471
+ */
12472
 
12473
+ var b="function"===typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?
12474
+ Symbol.for("react.suspense_list"):60120,r=b?Symbol.for("react.memo"):60115,t=b?Symbol.for("react.lazy"):60116,v=b?Symbol.for("react.block"):60121,w=b?Symbol.for("react.fundamental"):60117,x=b?Symbol.for("react.responder"):60118,y=b?Symbol.for("react.scope"):60119;
12475
+ function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;
12476
+ exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return"object"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};
12477
+ exports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};
12478
+ exports.isValidElementType=function(a){return"string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||"object"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;
12479
 
12480
 
12481
+ /***/ }),
12482
 
12483
+ /***/ 31:
12484
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
12485
 
12486
+ "use strict";
12487
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return rgba; });
12488
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return color; });
12489
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
12490
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);
12491
+ /* harmony import */ var tinycolor2__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(160);
12492
+ /* harmony import */ var tinycolor2__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(tinycolor2__WEBPACK_IMPORTED_MODULE_1__);
12493
+ /* harmony import */ var _colors_values__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(91);
12494
  /**
12495
  * External dependencies
12496
  */
12497
 
12498
 
12499
+ /**
12500
+ * Internal dependencies
12501
+ */
12502
 
12503
 
12504
+ /**
12505
+ * Generating a CSS complient rgba() color value.
12506
+ *
12507
+ * @param {string} hexValue The hex value to convert to rgba().
12508
+ * @param {number} alpha The alpha value for opacity.
12509
+ * @return {string} The converted rgba() color value.
12510
+ *
12511
+ * @example
12512
+ * rgba( '#000000', 0.5 )
12513
+ * // rgba(0, 0, 0, 0.5)
12514
+ */
12515
 
12516
+ function rgba() {
12517
+ var hexValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
12518
+ var alpha = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
12519
 
12520
+ var _tinycolor$toRgb = tinycolor2__WEBPACK_IMPORTED_MODULE_1___default()(hexValue).toRgb(),
12521
+ r = _tinycolor$toRgb.r,
12522
+ g = _tinycolor$toRgb.g,
12523
+ b = _tinycolor$toRgb.b;
12524
 
12525
+ return "rgba(".concat(r, ", ").concat(g, ", ").concat(b, ", ").concat(alpha, ")");
12526
+ }
 
 
 
12527
  /**
12528
+ * Retrieves a color from the color palette.
12529
+ *
12530
+ * @param {string} value The value to retrieve.
12531
+ * @return {string} The color (or fallback, if not found).
12532
+ *
12533
+ * @example
12534
+ * color( 'blue.wordpress.700' )
12535
+ * // #00669b
12536
  */
12537
 
12538
+ function color(value) {
12539
+ var fallbackColor = '#000';
12540
+ return Object(lodash__WEBPACK_IMPORTED_MODULE_0__["get"])(_colors_values__WEBPACK_IMPORTED_MODULE_2__[/* COLORS */ "a"], value, fallbackColor);
12541
+ }
12542
+ //# sourceMappingURL=colors.js.map
12543
 
12544
+ /***/ }),
12545
 
12546
+ /***/ 32:
12547
+ /***/ (function(module, exports) {
12548
 
12549
+ (function() { module.exports = this["wc"]["navigation"]; }());
12550
 
12551
+ /***/ }),
12552
 
12553
+ /***/ 33:
12554
+ /***/ (function(module, exports) {
12555
 
12556
+ // shim for using process in browser
12557
+ var process = module.exports = {};
 
12558
 
12559
+ // cached from whatever global is present so that test runners that stub it
12560
+ // don't break things. But we need to wrap it in a try catch in case it is
12561
+ // wrapped in strict mode code which doesn't define any globals. It's inside a
12562
+ // function because try/catches deoptimize in certain engines.
12563
 
12564
+ var cachedSetTimeout;
12565
+ var cachedClearTimeout;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12566
 
12567
+ function defaultSetTimout() {
12568
+ throw new Error('setTimeout has not been defined');
12569
+ }
12570
+ function defaultClearTimeout () {
12571
+ throw new Error('clearTimeout has not been defined');
12572
+ }
12573
+ (function () {
12574
+ try {
12575
+ if (typeof setTimeout === 'function') {
12576
+ cachedSetTimeout = setTimeout;
12577
+ } else {
12578
+ cachedSetTimeout = defaultSetTimout;
12579
+ }
12580
+ } catch (e) {
12581
+ cachedSetTimeout = defaultSetTimout;
12582
+ }
12583
+ try {
12584
+ if (typeof clearTimeout === 'function') {
12585
+ cachedClearTimeout = clearTimeout;
12586
+ } else {
12587
+ cachedClearTimeout = defaultClearTimeout;
12588
+ }
12589
+ } catch (e) {
12590
+ cachedClearTimeout = defaultClearTimeout;
12591
+ }
12592
+ } ())
12593
+ function runTimeout(fun) {
12594
+ if (cachedSetTimeout === setTimeout) {
12595
+ //normal enviroments in sane situations
12596
+ return setTimeout(fun, 0);
12597
+ }
12598
+ // if setTimeout wasn't available but was latter defined
12599
+ if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
12600
+ cachedSetTimeout = setTimeout;
12601
+ return setTimeout(fun, 0);
12602
+ }
12603
+ try {
12604
+ // when when somebody has screwed with setTimeout but no I.E. maddness
12605
+ return cachedSetTimeout(fun, 0);
12606
+ } catch(e){
12607
+ try {
12608
+ // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
12609
+ return cachedSetTimeout.call(null, fun, 0);
12610
+ } catch(e){
12611
+ // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
12612
+ return cachedSetTimeout.call(this, fun, 0);
12613
+ }
12614
+ }
12615
 
 
 
 
12616
 
12617
+ }
12618
+ function runClearTimeout(marker) {
12619
+ if (cachedClearTimeout === clearTimeout) {
12620
+ //normal enviroments in sane situations
12621
+ return clearTimeout(marker);
12622
+ }
12623
+ // if clearTimeout wasn't available but was latter defined
12624
+ if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
12625
+ cachedClearTimeout = clearTimeout;
12626
+ return clearTimeout(marker);
12627
+ }
12628
+ try {
12629
+ // when when somebody has screwed with setTimeout but no I.E. maddness
12630
+ return cachedClearTimeout(marker);
12631
+ } catch (e){
12632
+ try {
12633
+ // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
12634
+ return cachedClearTimeout.call(null, marker);
12635
+ } catch (e){
12636
+ // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
12637
+ // Some versions of I.E. have different rules for clearTimeout vs setTimeout
12638
+ return cachedClearTimeout.call(this, marker);
12639
+ }
12640
+ }
12641
 
 
 
 
 
 
 
 
 
 
12642
 
 
 
 
12643
 
12644
+ }
12645
+ var queue = [];
12646
+ var draining = false;
12647
+ var currentQueue;
12648
+ var queueIndex = -1;
 
 
 
 
 
 
12649
 
12650
+ function cleanUpNextTick() {
12651
+ if (!draining || !currentQueue) {
12652
  return;
12653
+ }
12654
+ draining = false;
12655
+ if (currentQueue.length) {
12656
+ queue = currentQueue.concat(queue);
12657
+ } else {
12658
+ queueIndex = -1;
12659
+ }
12660
+ if (queue.length) {
12661
+ drainQueue();
12662
+ }
12663
+ }
12664
 
12665
+ function drainQueue() {
12666
+ if (draining) {
12667
  return;
12668
+ }
12669
+ var timeout = runTimeout(cleanUpNextTick);
12670
+ draining = true;
 
 
 
 
 
 
 
 
 
 
 
12671
 
12672
+ var len = queue.length;
12673
+ while(len) {
12674
+ currentQueue = queue;
12675
+ queue = [];
12676
+ while (++queueIndex < len) {
12677
+ if (currentQueue) {
12678
+ currentQueue[queueIndex].run();
12679
+ }
12680
+ }
12681
+ queueIndex = -1;
12682
+ len = queue.length;
12683
  }
12684
+ currentQueue = null;
12685
+ draining = false;
12686
+ runClearTimeout(timeout);
12687
+ }
12688
 
12689
+ process.nextTick = function (fun) {
12690
+ var args = new Array(arguments.length - 1);
12691
+ if (arguments.length > 1) {
12692
+ for (var i = 1; i < arguments.length; i++) {
12693
+ args[i - 1] = arguments[i];
12694
+ }
12695
+ }
12696
+ queue.push(new Item(fun, args));
12697
+ if (queue.length === 1 && !draining) {
12698
+ runTimeout(drainQueue);
12699
+ }
12700
+ };
12701
 
12702
+ // v8 likes predictible objects
12703
+ function Item(fun, array) {
12704
+ this.fun = fun;
12705
+ this.array = array;
12706
+ }
12707
+ Item.prototype.run = function () {
12708
+ this.fun.apply(null, this.array);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12709
  };
12710
+ process.title = 'browser';
12711
+ process.browser = true;
12712
+ process.env = {};
12713
+ process.argv = [];
12714
+ process.version = ''; // empty string to avoid regexp issues
12715
+ process.versions = {};
12716
 
12717
+ function noop() {}
12718
 
12719
+ process.on = noop;
12720
+ process.addListener = noop;
12721
+ process.once = noop;
12722
+ process.off = noop;
12723
+ process.removeListener = noop;
12724
+ process.removeAllListeners = noop;
12725
+ process.emit = noop;
12726
+ process.prependListener = noop;
12727
+ process.prependOnceListener = noop;
12728
 
12729
+ process.listeners = function (name) { return [] }
12730
 
12731
+ process.binding = function (name) {
12732
+ throw new Error('process.binding is not supported');
12733
+ };
12734
 
12735
+ process.cwd = function () { return '/' };
12736
+ process.chdir = function (dir) {
12737
+ throw new Error('process.chdir is not supported');
12738
+ };
12739
+ process.umask = function() { return 0; };
12740
 
12741
 
12742
+ /***/ }),
12743
 
12744
+ /***/ 34:
12745
+ /***/ (function(module, exports, __webpack_require__) {
12746
 
12747
+ var arrayWithHoles = __webpack_require__(116);
12748
 
12749
+ var iterableToArrayLimit = __webpack_require__(117);
 
 
12750
 
12751
+ var unsupportedIterableToArray = __webpack_require__(83);
12752
 
12753
+ var nonIterableRest = __webpack_require__(118);
 
12754
 
12755
+ function _slicedToArray(arr, i) {
12756
+ return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
12757
+ }
12758
 
12759
+ module.exports = _slicedToArray;
 
12760
 
12761
+ /***/ }),
 
12762
 
12763
+ /***/ 35:
12764
+ /***/ (function(module, exports) {
 
 
 
 
 
 
 
12765
 
12766
+ (function() { module.exports = this["wc"]["data"]; }());
 
12767
 
12768
+ /***/ }),
 
 
 
12769
 
12770
+ /***/ 36:
12771
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
12772
 
12773
+ "use strict";
12774
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ADMIN_URL; });
12775
+ /* unused harmony export COUNTRIES */
12776
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return CURRENCY; });
12777
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return LOCALE; });
12778
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return ORDER_STATUSES; });
12779
+ /* unused harmony export SITE_TITLE */
12780
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return WC_ASSET_URL; });
12781
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return getSetting; });
12782
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return setSetting; });
12783
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return getAdminLink; });
12784
+ /* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(48);
12785
+ /* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__);
12786
+ /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);
12787
+ /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__);
12788
 
 
 
12789
 
12790
+ /**
12791
+ * External dependencies
12792
+ */
12793
+ // Remove mutable data from settings object to prevent access. Data stores should be used instead.
12794
 
12795
+ var mutableSources = ['wcAdminSettings', 'preloadSettings'];
12796
+ var settings = (typeof wcSettings === "undefined" ? "undefined" : _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(wcSettings)) === 'object' ? wcSettings : {};
12797
+ var SOURCE = Object.keys(settings).reduce(function (source, key) {
12798
+ if (!mutableSources.includes(key)) {
12799
+ source[key] = settings[key];
12800
+ }
12801
 
12802
+ return source;
12803
+ }, {});
12804
+ var ADMIN_URL = SOURCE.adminUrl;
12805
+ var COUNTRIES = SOURCE.countries;
12806
+ var CURRENCY = SOURCE.currency;
12807
+ var LOCALE = SOURCE.locale;
12808
+ var ORDER_STATUSES = SOURCE.orderStatuses;
12809
+ var SITE_TITLE = SOURCE.siteTitle;
12810
+ var WC_ASSET_URL = SOURCE.wcAssetUrl;
12811
+ /**
12812
+ * Retrieves a setting value from the setting state.
12813
+ *
12814
+ * @param {string} name The identifier for the setting.
12815
+ * @param {*} [fallback=false] The value to use as a fallback
12816
+ * if the setting is not in the
12817
+ * state.
12818
+ * @param {Function} [filter=( val ) => val] A callback for filtering the
12819
+ * value before it's returned.
12820
+ * Receives both the found value
12821
+ * (if it exists for the key) and
12822
+ * the provided fallback arg.
12823
+ *
12824
+ * @return {*} The value present in the settings state for the given
12825
+ * name.
12826
+ */
12827
 
12828
+ function getSetting(name) {
12829
+ var fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
12830
+ var filter = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (val) {
12831
+ return val;
12832
+ };
12833
 
12834
+ if (mutableSources.includes(name)) {
12835
+ throw new Error(Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__["__"])('Mutable settings should be accessed via data store.'));
12836
+ }
12837
 
12838
+ var value = SOURCE.hasOwnProperty(name) ? SOURCE[name] : fallback;
12839
+ return filter(value, fallback);
12840
+ }
12841
+ /**
12842
+ * Sets a value to a property on the settings state.
12843
+ *
12844
+ * NOTE: This feature is to be removed in favour of data stores when a full migration
12845
+ * is complete.
12846
+ *
12847
+ * @deprecated
12848
+ *
12849
+ * @param {string} name The setting property key for the
12850
+ * setting being mutated.
12851
+ * @param {*} value The value to set.
12852
+ * @param {Function} [filter=( val ) => val] Allows for providing a callback
12853
+ * to sanitize the setting (eg.
12854
+ * ensure it's a number)
12855
+ */
12856
 
12857
+ function setSetting(name, value) {
12858
+ var filter = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (val) {
12859
+ return val;
12860
+ };
12861
 
12862
+ if (mutableSources.includes(name)) {
12863
+ throw new Error(Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__["__"])('Mutable settings should be mutated via data store.'));
12864
+ }
12865
 
12866
+ SOURCE[name] = filter(value);
12867
+ }
12868
+ /**
12869
+ * Returns a string with the site's wp-admin URL appended. JS version of `admin_url`.
12870
+ *
12871
+ * @param {string} path Relative path.
12872
+ * @return {string} Full admin URL.
12873
+ */
12874
 
12875
+ function getAdminLink(path) {
12876
+ return (ADMIN_URL || '') + path;
12877
+ }
12878
 
12879
+ /***/ }),
12880
 
12881
+ /***/ 37:
12882
+ /***/ (function(module, exports) {
12883
 
12884
+ (function() { module.exports = this["wp"]["url"]; }());
12885
 
12886
+ /***/ }),
 
 
12887
 
12888
+ /***/ 38:
12889
+ /***/ (function(module, exports) {
12890
 
12891
+ function _extends() {
12892
+ module.exports = _extends = Object.assign || function (target) {
12893
+ for (var i = 1; i < arguments.length; i++) {
12894
+ var source = arguments[i];
12895
 
12896
+ for (var key in source) {
12897
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
12898
+ target[key] = source[key];
12899
+ }
12900
+ }
12901
+ }
12902
 
12903
+ return target;
12904
+ };
12905
 
12906
+ return _extends.apply(this, arguments);
12907
+ }
 
12908
 
12909
+ module.exports = _extends;
12910
 
12911
+ /***/ }),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12912
 
12913
+ /***/ 4:
12914
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
12915
 
12916
+ /*!
12917
+ Copyright (c) 2017 Jed Watson.
12918
+ Licensed under the MIT License (MIT), see
12919
+ http://jedwatson.github.io/classnames
12920
+ */
12921
+ /* global define */
 
 
 
 
 
 
 
 
 
 
12922
 
12923
+ (function () {
12924
+ 'use strict';
 
 
 
12925
 
12926
+ var hasOwn = {}.hasOwnProperty;
 
 
 
 
 
 
12927
 
12928
+ function classNames () {
12929
+ var classes = [];
 
 
 
 
 
 
12930
 
12931
+ for (var i = 0; i < arguments.length; i++) {
12932
+ var arg = arguments[i];
12933
+ if (!arg) continue;
12934
 
12935
+ var argType = typeof arg;
 
 
12936
 
12937
+ if (argType === 'string' || argType === 'number') {
12938
+ classes.push(arg);
12939
+ } else if (Array.isArray(arg) && arg.length) {
12940
+ var inner = classNames.apply(null, arg);
12941
+ if (inner) {
12942
+ classes.push(inner);
12943
+ }
12944
+ } else if (argType === 'object') {
12945
+ for (var key in arg) {
12946
+ if (hasOwn.call(arg, key) && arg[key]) {
12947
+ classes.push(key);
12948
+ }
12949
+ }
12950
+ }
12951
+ }
 
 
 
 
12952
 
12953
+ return classes.join(' ');
12954
+ }
 
12955
 
12956
+ if ( true && module.exports) {
12957
+ classNames.default = classNames;
12958
+ module.exports = classNames;
12959
+ } else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {
12960
+ // register as 'classnames', consistent with npm package name
12961
+ define('classnames', [], function () {
12962
+ return classNames;
12963
+ });
12964
+ } else {
12965
+ window.classNames = classNames;
12966
+ }
12967
+ }());
12968
 
12969
 
12970
+ /***/ }),
12971
 
12972
+ /***/ 40:
12973
+ /***/ (function(module, exports) {
 
12974
 
12975
+ (function() { module.exports = this["wc"]["date"]; }());
12976
 
12977
+ /***/ }),
12978
 
12979
+ /***/ 41:
12980
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
12981
 
12982
+ "use strict";
12983
 
12984
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/defineProperty.js
12985
+ var defineProperty = __webpack_require__(5);
12986
+ var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);
12987
 
12988
+ // EXTERNAL MODULE: external "React"
12989
+ var external_React_ = __webpack_require__(6);
12990
 
12991
+ // EXTERNAL MODULE: ./node_modules/@emotion/memoize/dist/memoize.browser.esm.js
12992
+ var memoize_browser_esm = __webpack_require__(102);
 
12993
 
12994
+ // CONCATENATED MODULE: ./node_modules/@emotion/is-prop-valid/dist/is-prop-valid.browser.esm.js
 
12995
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12996
 
12997
+ var reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|inert|itemProp|itemScope|itemType|itemID|itemRef|on|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23
 
 
 
 
 
12998
 
12999
+ var index = Object(memoize_browser_esm["a" /* default */])(function (prop) {
13000
+ return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111
13001
+ /* o */
13002
+ && prop.charCodeAt(1) === 110
13003
+ /* n */
13004
+ && prop.charCodeAt(2) < 91;
 
 
 
13005
  }
13006
+ /* Z+1 */
13007
+ );
13008
 
13009
+ /* harmony default export */ var is_prop_valid_browser_esm = (index);
 
 
 
 
13010
 
13011
+ // EXTERNAL MODULE: ./node_modules/@emotion/core/dist/core.browser.esm.js + 6 modules
13012
+ var core_browser_esm = __webpack_require__(67);
 
 
 
 
 
13013
 
13014
+ // EXTERNAL MODULE: ./node_modules/@emotion/utils/dist/utils.browser.esm.js
13015
+ var utils_browser_esm = __webpack_require__(50);
13016
 
13017
+ // EXTERNAL MODULE: ./node_modules/@emotion/serialize/dist/serialize.browser.esm.js + 2 modules
13018
+ var serialize_browser_esm = __webpack_require__(49);
13019
 
13020
+ // CONCATENATED MODULE: ./node_modules/@emotion/styled-base/dist/styled-base.browser.esm.js
13021
 
 
13022
 
 
13023
 
13024
 
13025
 
13026
 
13027
 
13028
+ var testOmitPropsOnStringTag = is_prop_valid_browser_esm;
13029
 
13030
+ var testOmitPropsOnComponent = function testOmitPropsOnComponent(key) {
13031
+ return key !== 'theme' && key !== 'innerRef';
13032
+ };
13033
 
13034
+ var getDefaultShouldForwardProp = function getDefaultShouldForwardProp(tag) {
13035
+ return typeof tag === 'string' && // 96 is one less than the char code
13036
+ // for "a" so this is checking that
13037
+ // it's a lowercase character
13038
+ tag.charCodeAt(0) > 96 ? testOmitPropsOnStringTag : testOmitPropsOnComponent;
13039
+ };
13040
 
13041
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
13042
 
13043
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { defineProperty_default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
13044
+ var ILLEGAL_ESCAPE_SEQUENCE_ERROR = "You have illegal escape sequence in your template literal, most likely inside content's property value.\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \"content: '\\00d7';\" should become \"content: '\\\\00d7';\".\nYou can read more about this here:\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences";
13045
 
13046
+ var styled_base_browser_esm_createStyled = function createStyled(tag, options) {
13047
+ if (false) {}
13048
 
13049
+ var identifierName;
13050
+ var shouldForwardProp;
13051
+ var targetClassName;
13052
 
13053
+ if (options !== undefined) {
13054
+ identifierName = options.label;
13055
+ targetClassName = options.target;
13056
+ shouldForwardProp = tag.__emotion_forwardProp && options.shouldForwardProp ? function (propName) {
13057
+ return tag.__emotion_forwardProp(propName) && // $FlowFixMe
13058
+ options.shouldForwardProp(propName);
13059
+ } : options.shouldForwardProp;
13060
+ }
13061
 
13062
+ var isReal = tag.__emotion_real === tag;
13063
+ var baseTag = isReal && tag.__emotion_base || tag;
13064
 
13065
+ if (typeof shouldForwardProp !== 'function' && isReal) {
13066
+ shouldForwardProp = tag.__emotion_forwardProp;
13067
+ }
13068
 
13069
+ var defaultShouldForwardProp = shouldForwardProp || getDefaultShouldForwardProp(baseTag);
13070
+ var shouldUseAs = !defaultShouldForwardProp('as');
13071
+ return function () {
13072
+ var args = arguments;
13073
+ var styles = isReal && tag.__emotion_styles !== undefined ? tag.__emotion_styles.slice(0) : [];
13074
 
13075
+ if (identifierName !== undefined) {
13076
+ styles.push("label:" + identifierName + ";");
13077
+ }
13078
 
13079
+ if (args[0] == null || args[0].raw === undefined) {
13080
+ styles.push.apply(styles, args);
13081
+ } else {
13082
+ if (false) {}
13083
 
13084
+ styles.push(args[0][0]);
13085
+ var len = args.length;
13086
+ var i = 1;
13087
 
13088
+ for (; i < len; i++) {
13089
+ if (false) {}
13090
 
13091
+ styles.push(args[i], args[0][i]);
13092
+ }
13093
+ } // $FlowFixMe: we need to cast StatelessFunctionalComponent to our PrivateStyledComponent class
13094
 
13095
 
13096
+ var Styled = Object(core_browser_esm["c" /* withEmotionCache */])(function (props, context, ref) {
13097
+ return Object(external_React_["createElement"])(core_browser_esm["a" /* ThemeContext */].Consumer, null, function (theme) {
13098
+ var finalTag = shouldUseAs && props.as || baseTag;
13099
+ var className = '';
13100
+ var classInterpolations = [];
13101
+ var mergedProps = props;
13102
 
13103
+ if (props.theme == null) {
13104
+ mergedProps = {};
 
13105
 
13106
+ for (var key in props) {
13107
+ mergedProps[key] = props[key];
13108
+ }
13109
 
13110
+ mergedProps.theme = theme;
 
 
 
 
13111
  }
13112
 
13113
+ if (typeof props.className === 'string') {
13114
+ className = Object(utils_browser_esm["a" /* getRegisteredStyles */])(context.registered, classInterpolations, props.className);
13115
+ } else if (props.className != null) {
13116
+ className = props.className + " ";
13117
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13118
 
13119
+ var serialized = Object(serialize_browser_esm["a" /* serializeStyles */])(styles.concat(classInterpolations), context.registered, mergedProps);
13120
+ var rules = Object(utils_browser_esm["b" /* insertStyles */])(context, serialized, typeof finalTag === 'string');
13121
+ className += context.key + "-" + serialized.name;
 
13122
 
13123
+ if (targetClassName !== undefined) {
13124
+ className += " " + targetClassName;
13125
+ }
13126
 
13127
+ var finalShouldForwardProp = shouldUseAs && shouldForwardProp === undefined ? getDefaultShouldForwardProp(finalTag) : defaultShouldForwardProp;
13128
+ var newProps = {};
13129
 
13130
+ for (var _key in props) {
13131
+ if (shouldUseAs && _key === 'as') continue;
13132
 
13133
+ if ( // $FlowFixMe
13134
+ finalShouldForwardProp(_key)) {
13135
+ newProps[_key] = props[_key];
13136
+ }
13137
+ }
13138
 
13139
+ newProps.className = className;
13140
+ newProps.ref = ref || props.innerRef;
13141
 
13142
+ if (false) {}
13143
 
13144
+ var ele = Object(external_React_["createElement"])(finalTag, newProps);
13145
 
13146
+ return ele;
13147
+ });
13148
+ });
13149
+ Styled.displayName = identifierName !== undefined ? identifierName : "Styled(" + (typeof baseTag === 'string' ? baseTag : baseTag.displayName || baseTag.name || 'Component') + ")";
13150
+ Styled.defaultProps = tag.defaultProps;
13151
+ Styled.__emotion_real = Styled;
13152
+ Styled.__emotion_base = baseTag;
13153
+ Styled.__emotion_styles = styles;
13154
+ Styled.__emotion_forwardProp = shouldForwardProp;
13155
+ Object.defineProperty(Styled, 'toString', {
13156
+ value: function value() {
13157
+ if (targetClassName === undefined && "production" !== 'production') {
13158
+ return 'NO_COMPONENT_SELECTOR';
13159
+ } // $FlowFixMe: coerce undefined to string
13160
+
13161
+
13162
+ return "." + targetClassName;
13163
+ }
13164
+ });
13165
 
13166
+ Styled.withComponent = function (nextTag, nextOptions) {
13167
+ return createStyled(nextTag, nextOptions !== undefined ? _objectSpread({}, options || {}, {}, nextOptions) : options).apply(void 0, styles);
13168
+ };
13169
 
13170
+ return Styled;
13171
+ };
13172
+ };
13173
 
13174
+ /* harmony default export */ var styled_base_browser_esm = __webpack_exports__["a"] = (styled_base_browser_esm_createStyled);
13175
 
13176
 
13177
+ /***/ }),
13178
 
13179
+ /***/ 43:
13180
+ /***/ (function(module, exports) {
13181
 
13182
+ (function() { module.exports = this["wp"]["apiFetch"]; }());
13183
 
13184
+ /***/ }),
13185
 
13186
+ /***/ 436:
13187
+ /***/ (function(module, exports, __webpack_require__) {
13188
 
13189
+ "use strict";
13190
 
 
13191
 
13192
+ Object.defineProperty(exports, '__esModule', { value: true });
13193
 
13194
+ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
13195
 
13196
+ var _extends = _interopDefault(__webpack_require__(38));
13197
+ var _objectWithoutPropertiesLoose = _interopDefault(__webpack_require__(280));
13198
+ var React = __webpack_require__(6);
13199
+ var React__default = _interopDefault(React);
13200
+ var _inheritsLoose = _interopDefault(__webpack_require__(197));
13201
+ var _assertThisInitialized = _interopDefault(__webpack_require__(11));
13202
 
13203
+ var is = {
13204
+ arr: Array.isArray,
13205
+ obj: function obj(a) {
13206
+ return Object.prototype.toString.call(a) === '[object Object]';
13207
+ },
13208
+ fun: function fun(a) {
13209
+ return typeof a === 'function';
13210
+ },
13211
+ str: function str(a) {
13212
+ return typeof a === 'string';
13213
+ },
13214
+ num: function num(a) {
13215
+ return typeof a === 'number';
13216
+ },
13217
+ und: function und(a) {
13218
+ return a === void 0;
13219
+ },
13220
+ nul: function nul(a) {
13221
+ return a === null;
13222
+ },
13223
+ set: function set(a) {
13224
+ return a instanceof Set;
13225
+ },
13226
+ map: function map(a) {
13227
+ return a instanceof Map;
13228
+ },
13229
+ equ: function equ(a, b) {
13230
+ if (typeof a !== typeof b) return false;
13231
+ if (is.str(a) || is.num(a)) return a === b;
13232
+ if (is.obj(a) && is.obj(b) && Object.keys(a).length + Object.keys(b).length === 0) return true;
13233
+ var i;
13234
+
13235
+ for (i in a) {
13236
+ if (!(i in b)) return false;
13237
+ }
13238
 
13239
+ for (i in b) {
13240
+ if (a[i] !== b[i]) return false;
13241
+ }
13242
 
13243
+ return is.und(i) ? a === b : true;
13244
+ }
13245
+ };
13246
+ function merge(target, lowercase) {
13247
+ if (lowercase === void 0) {
13248
+ lowercase = true;
13249
+ }
13250
 
13251
+ return function (object) {
13252
+ return (is.arr(object) ? object : Object.keys(object)).reduce(function (acc, element) {
13253
+ var key = lowercase ? element[0].toLowerCase() + element.substring(1) : element;
13254
+ acc[key] = target(key);
13255
+ return acc;
13256
+ }, target);
13257
+ };
13258
+ }
13259
+ function useForceUpdate() {
13260
+ var _useState = React.useState(false),
13261
+ f = _useState[1];
13262
 
13263
+ var forceUpdate = React.useCallback(function () {
13264
+ return f(function (v) {
13265
+ return !v;
13266
+ });
13267
+ }, []);
13268
+ return forceUpdate;
13269
+ }
13270
+ function withDefault(value, defaultValue) {
13271
+ return is.und(value) || is.nul(value) ? defaultValue : value;
13272
+ }
13273
+ function toArray(a) {
13274
+ return !is.und(a) ? is.arr(a) ? a : [a] : [];
13275
+ }
13276
+ function callProp(obj) {
13277
+ for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
13278
+ args[_key - 1] = arguments[_key];
13279
+ }
13280
 
13281
+ return is.fun(obj) ? obj.apply(void 0, args) : obj;
13282
+ }
13283
 
13284
+ function getForwardProps(props) {
13285
+ var to = props.to,
13286
+ from = props.from,
13287
+ config = props.config,
13288
+ onStart = props.onStart,
13289
+ onRest = props.onRest,
13290
+ onFrame = props.onFrame,
13291
+ children = props.children,
13292
+ reset = props.reset,
13293
+ reverse = props.reverse,
13294
+ force = props.force,
13295
+ immediate = props.immediate,
13296
+ delay = props.delay,
13297
+ attach = props.attach,
13298
+ destroyed = props.destroyed,
13299
+ interpolateTo = props.interpolateTo,
13300
+ ref = props.ref,
13301
+ lazy = props.lazy,
13302
+ forward = _objectWithoutPropertiesLoose(props, ["to", "from", "config", "onStart", "onRest", "onFrame", "children", "reset", "reverse", "force", "immediate", "delay", "attach", "destroyed", "interpolateTo", "ref", "lazy"]);
13303
 
13304
+ return forward;
13305
+ }
13306
 
13307
+ function interpolateTo(props) {
13308
+ var forward = getForwardProps(props);
13309
+ if (is.und(forward)) return _extends({
13310
+ to: forward
13311
+ }, props);
13312
+ var rest = Object.keys(props).reduce(function (a, k) {
13313
+ var _extends2;
13314
 
13315
+ return !is.und(forward[k]) ? a : _extends({}, a, (_extends2 = {}, _extends2[k] = props[k], _extends2));
13316
+ }, {});
13317
+ return _extends({
13318
+ to: forward
13319
+ }, rest);
13320
+ }
13321
+ function handleRef(ref, forward) {
13322
+ if (forward) {
13323
+ // If it's a function, assume it's a ref callback
13324
+ if (is.fun(forward)) forward(ref);else if (is.obj(forward)) {
13325
+ forward.current = ref;
13326
+ }
13327
+ }
13328
 
13329
+ return ref;
13330
+ }
 
13331
 
13332
+ var Animated =
13333
+ /*#__PURE__*/
13334
+ function () {
13335
+ function Animated() {
13336
+ this.payload = void 0;
13337
+ this.children = [];
13338
+ }
13339
 
13340
+ var _proto = Animated.prototype;
13341
 
13342
+ _proto.getAnimatedValue = function getAnimatedValue() {
13343
+ return this.getValue();
13344
+ };
13345
 
13346
+ _proto.getPayload = function getPayload() {
13347
+ return this.payload || this;
13348
+ };
13349
 
13350
+ _proto.attach = function attach() {};
13351
 
13352
+ _proto.detach = function detach() {};
13353
 
13354
+ _proto.getChildren = function getChildren() {
13355
+ return this.children;
13356
+ };
13357
 
13358
+ _proto.addChild = function addChild(child) {
13359
+ if (this.children.length === 0) this.attach();
13360
+ this.children.push(child);
13361
+ };
13362
 
13363
+ _proto.removeChild = function removeChild(child) {
13364
+ var index = this.children.indexOf(child);
13365
+ this.children.splice(index, 1);
13366
+ if (this.children.length === 0) this.detach();
13367
+ };
13368
 
13369
+ return Animated;
13370
+ }();
13371
+ var AnimatedArray =
13372
+ /*#__PURE__*/
13373
+ function (_Animated) {
13374
+ _inheritsLoose(AnimatedArray, _Animated);
13375
 
13376
+ function AnimatedArray() {
13377
+ var _this;
13378
 
13379
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
13380
+ args[_key] = arguments[_key];
13381
+ }
13382
 
13383
+ _this = _Animated.call.apply(_Animated, [this].concat(args)) || this;
13384
+ _this.payload = [];
 
13385
 
13386
+ _this.attach = function () {
13387
+ return _this.payload.forEach(function (p) {
13388
+ return p instanceof Animated && p.addChild(_assertThisInitialized(_this));
13389
+ });
13390
+ };
13391
 
13392
+ _this.detach = function () {
13393
+ return _this.payload.forEach(function (p) {
13394
+ return p instanceof Animated && p.removeChild(_assertThisInitialized(_this));
13395
+ });
13396
+ };
13397
 
13398
+ return _this;
13399
+ }
13400
 
13401
+ return AnimatedArray;
13402
+ }(Animated);
13403
+ var AnimatedObject =
13404
+ /*#__PURE__*/
13405
+ function (_Animated2) {
13406
+ _inheritsLoose(AnimatedObject, _Animated2);
13407
 
13408
+ function AnimatedObject() {
13409
+ var _this2;
13410
 
13411
+ for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
13412
+ args[_key3] = arguments[_key3];
13413
+ }
13414
 
13415
+ _this2 = _Animated2.call.apply(_Animated2, [this].concat(args)) || this;
13416
+ _this2.payload = {};
 
 
 
 
 
 
13417
 
13418
+ _this2.attach = function () {
13419
+ return Object.values(_this2.payload).forEach(function (s) {
13420
+ return s instanceof Animated && s.addChild(_assertThisInitialized(_this2));
13421
+ });
13422
+ };
13423
 
13424
+ _this2.detach = function () {
13425
+ return Object.values(_this2.payload).forEach(function (s) {
13426
+ return s instanceof Animated && s.removeChild(_assertThisInitialized(_this2));
13427
+ });
13428
+ };
13429
 
13430
+ return _this2;
13431
  }
13432
 
13433
+ var _proto2 = AnimatedObject.prototype;
 
 
 
 
 
 
 
 
 
 
 
13434
 
13435
+ _proto2.getValue = function getValue(animated) {
13436
+ if (animated === void 0) {
13437
+ animated = false;
13438
+ }
13439
 
13440
+ var payload = {};
 
13441
 
13442
+ for (var _key4 in this.payload) {
13443
+ var value = this.payload[_key4];
13444
+ if (animated && !(value instanceof Animated)) continue;
13445
+ payload[_key4] = value instanceof Animated ? value[animated ? 'getAnimatedValue' : 'getValue']() : value;
13446
+ }
13447
 
13448
+ return payload;
13449
+ };
13450
 
13451
+ _proto2.getAnimatedValue = function getAnimatedValue() {
13452
+ return this.getValue(true);
13453
+ };
13454
 
13455
+ return AnimatedObject;
13456
+ }(Animated);
 
 
 
 
 
 
 
 
13457
 
13458
+ var applyAnimatedValues;
13459
+ function injectApplyAnimatedValues(fn, transform) {
13460
+ applyAnimatedValues = {
13461
+ fn: fn,
13462
+ transform: transform
13463
+ };
13464
+ }
13465
+ var colorNames;
13466
+ function injectColorNames(names) {
13467
+ colorNames = names;
13468
+ }
13469
+ var requestFrame = function requestFrame(cb) {
13470
+ return typeof window !== 'undefined' ? window.requestAnimationFrame(cb) : -1;
13471
+ };
13472
+ var cancelFrame = function cancelFrame(id) {
13473
+ typeof window !== 'undefined' && window.cancelAnimationFrame(id);
13474
+ };
13475
+ function injectFrame(raf, caf) {
13476
+ requestFrame = raf;
13477
+ cancelFrame = caf;
13478
+ }
13479
+ var interpolation;
13480
+ function injectStringInterpolator(fn) {
13481
+ interpolation = fn;
13482
+ }
13483
+ var now = function now() {
13484
+ return Date.now();
13485
+ };
13486
+ function injectNow(nowFn) {
13487
+ now = nowFn;
13488
+ }
13489
+ var defaultElement;
13490
+ function injectDefaultElement(el) {
13491
+ defaultElement = el;
13492
+ }
13493
+ var animatedApi = function animatedApi(node) {
13494
+ return node.current;
13495
+ };
13496
+ function injectAnimatedApi(fn) {
13497
+ animatedApi = fn;
13498
+ }
13499
+ var createAnimatedStyle;
13500
+ function injectCreateAnimatedStyle(factory) {
13501
+ createAnimatedStyle = factory;
13502
+ }
13503
+ var manualFrameloop;
13504
+ function injectManualFrameloop(callback) {
13505
+ manualFrameloop = callback;
13506
+ }
13507
 
13508
+ var Globals = /*#__PURE__*/Object.freeze({
13509
+ get applyAnimatedValues () { return applyAnimatedValues; },
13510
+ injectApplyAnimatedValues: injectApplyAnimatedValues,
13511
+ get colorNames () { return colorNames; },
13512
+ injectColorNames: injectColorNames,
13513
+ get requestFrame () { return requestFrame; },
13514
+ get cancelFrame () { return cancelFrame; },
13515
+ injectFrame: injectFrame,
13516
+ get interpolation () { return interpolation; },
13517
+ injectStringInterpolator: injectStringInterpolator,
13518
+ get now () { return now; },
13519
+ injectNow: injectNow,
13520
+ get defaultElement () { return defaultElement; },
13521
+ injectDefaultElement: injectDefaultElement,
13522
+ get animatedApi () { return animatedApi; },
13523
+ injectAnimatedApi: injectAnimatedApi,
13524
+ get createAnimatedStyle () { return createAnimatedStyle; },
13525
+ injectCreateAnimatedStyle: injectCreateAnimatedStyle,
13526
+ get manualFrameloop () { return manualFrameloop; },
13527
+ injectManualFrameloop: injectManualFrameloop
13528
+ });
13529
 
13530
+ /**
13531
+ * Wraps the `style` property with `AnimatedStyle`.
13532
+ */
13533
 
13534
+ var AnimatedProps =
13535
+ /*#__PURE__*/
13536
+ function (_AnimatedObject) {
13537
+ _inheritsLoose(AnimatedProps, _AnimatedObject);
13538
 
13539
+ function AnimatedProps(props, callback) {
13540
+ var _this;
 
 
 
 
 
 
 
 
 
 
13541
 
13542
+ _this = _AnimatedObject.call(this) || this;
13543
+ _this.update = void 0;
13544
+ _this.payload = !props.style ? props : _extends({}, props, {
13545
+ style: createAnimatedStyle(props.style)
13546
+ });
13547
+ _this.update = callback;
 
 
 
 
13548
 
13549
+ _this.attach();
 
 
 
 
 
 
 
13550
 
13551
+ return _this;
13552
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13553
 
13554
+ return AnimatedProps;
13555
+ }(AnimatedObject);
13556
 
13557
+ var isFunctionComponent = function isFunctionComponent(val) {
13558
+ return is.fun(val) && !(val.prototype instanceof React__default.Component);
 
 
 
 
 
 
 
13559
  };
 
 
 
 
13560
 
13561
+ var createAnimatedComponent = function createAnimatedComponent(Component) {
13562
+ var AnimatedComponent = React.forwardRef(function (props, ref) {
13563
+ var forceUpdate = useForceUpdate();
13564
+ var mounted = React.useRef(true);
13565
+ var propsAnimated = React.useRef(null);
13566
+ var node = React.useRef(null);
13567
+ var attachProps = React.useCallback(function (props) {
13568
+ var oldPropsAnimated = propsAnimated.current;
13569
 
13570
+ var callback = function callback() {
13571
+ var didUpdate = false;
 
 
13572
 
13573
+ if (node.current) {
13574
+ didUpdate = applyAnimatedValues.fn(node.current, propsAnimated.current.getAnimatedValue());
13575
+ }
 
 
 
13576
 
13577
+ if (!node.current || didUpdate === false) {
13578
+ // If no referenced node has been found, or the update target didn't have a
13579
+ // native-responder, then forceUpdate the animation ...
13580
+ forceUpdate();
13581
+ }
13582
+ };
13583
 
13584
+ propsAnimated.current = new AnimatedProps(props, callback);
13585
+ oldPropsAnimated && oldPropsAnimated.detach();
13586
+ }, []);
13587
+ React.useEffect(function () {
13588
+ return function () {
13589
+ mounted.current = false;
13590
+ propsAnimated.current && propsAnimated.current.detach();
13591
+ };
13592
+ }, []);
13593
+ React.useImperativeHandle(ref, function () {
13594
+ return animatedApi(node, mounted, forceUpdate);
 
 
 
13595
  });
13596
+ attachProps(props);
13597
+
13598
+ var _getValue = propsAnimated.current.getValue(),
13599
+ scrollTop = _getValue.scrollTop,
13600
+ scrollLeft = _getValue.scrollLeft,
13601
+ animatedProps = _objectWithoutPropertiesLoose(_getValue, ["scrollTop", "scrollLeft"]); // Functions cannot have refs, see:
13602
+ // See: https://github.com/react-spring/react-spring/issues/569
13603
 
 
13604
 
13605
+ var refFn = isFunctionComponent(Component) ? undefined : function (childRef) {
13606
+ return node.current = handleRef(childRef, ref);
13607
+ };
13608
+ return React__default.createElement(Component, _extends({}, animatedProps, {
13609
+ ref: refFn
13610
+ }));
13611
  });
13612
+ return AnimatedComponent;
13613
  };
13614
 
13615
+ var active = false;
13616
+ var controllers = new Set();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13617
 
13618
+ var update = function update() {
13619
+ if (!active) return false;
13620
+ var time = now();
 
 
13621
 
13622
+ for (var _iterator = controllers, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {
13623
+ var _ref;
13624
 
13625
+ if (_isArray) {
13626
+ if (_i >= _iterator.length) break;
13627
+ _ref = _iterator[_i++];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13628
  } else {
13629
+ _i = _iterator.next();
13630
+ if (_i.done) break;
13631
+ _ref = _i.value;
13632
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13633
 
13634
+ var controller = _ref;
13635
+ var isActive = false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13636
 
13637
+ for (var configIdx = 0; configIdx < controller.configs.length; configIdx++) {
13638
+ var config = controller.configs[configIdx];
13639
+ var endOfAnimation = void 0,
13640
+ lastTime = void 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13641
 
13642
+ for (var valIdx = 0; valIdx < config.animatedValues.length; valIdx++) {
13643
+ var animation = config.animatedValues[valIdx]; // If an animation is done, skip, until all of them conclude
 
 
 
 
 
 
 
 
13644
 
13645
+ if (animation.done) continue;
13646
+ var from = config.fromValues[valIdx];
13647
+ var to = config.toValues[valIdx];
13648
+ var position = animation.lastPosition;
13649
+ var isAnimated = to instanceof Animated;
13650
+ var velocity = Array.isArray(config.initialVelocity) ? config.initialVelocity[valIdx] : config.initialVelocity;
13651
+ if (isAnimated) to = to.getValue(); // Conclude animation if it's either immediate, or from-values match end-state
13652
 
13653
+ if (config.immediate) {
13654
+ animation.setValue(to);
13655
+ animation.done = true;
13656
+ continue;
13657
+ } // Break animation when string values are involved
 
 
 
13658
 
 
 
 
13659
 
13660
+ if (typeof from === 'string' || typeof to === 'string') {
13661
+ animation.setValue(to);
13662
+ animation.done = true;
13663
+ continue;
13664
+ }
13665
 
13666
+ if (config.duration !== void 0) {
13667
+ /** Duration easing */
13668
+ position = from + config.easing((time - animation.startTime) / config.duration) * (to - from);
13669
+ endOfAnimation = time >= animation.startTime + config.duration;
13670
+ } else if (config.decay) {
13671
+ /** Decay easing */
13672
+ position = from + velocity / (1 - 0.998) * (1 - Math.exp(-(1 - 0.998) * (time - animation.startTime)));
13673
+ endOfAnimation = Math.abs(animation.lastPosition - position) < 0.1;
13674
+ if (endOfAnimation) to = position;
13675
+ } else {
13676
+ /** Spring easing */
13677
+ lastTime = animation.lastTime !== void 0 ? animation.lastTime : time;
13678
+ velocity = animation.lastVelocity !== void 0 ? animation.lastVelocity : config.initialVelocity; // If we lost a lot of frames just jump to the end.
13679
 
13680
+ if (time > lastTime + 64) lastTime = time; // http://gafferongames.com/game-physics/fix-your-timestep/
 
 
 
 
13681
 
13682
+ var numSteps = Math.floor(time - lastTime);
 
 
 
 
 
 
13683
 
13684
+ for (var i = 0; i < numSteps; ++i) {
13685
+ var force = -config.tension * (position - to);
13686
+ var damping = -config.friction * velocity;
13687
+ var acceleration = (force + damping) / config.mass;
13688
+ velocity = velocity + acceleration * 1 / 1000;
13689
+ position = position + velocity * 1 / 1000;
13690
+ } // Conditions for stopping the spring animation
13691
 
 
 
 
13692
 
13693
+ var isOvershooting = config.clamp && config.tension !== 0 ? from < to ? position > to : position < to : false;
13694
+ var isVelocity = Math.abs(velocity) <= config.precision;
13695
+ var isDisplacement = config.tension !== 0 ? Math.abs(to - position) <= config.precision : true;
13696
+ endOfAnimation = isOvershooting || isVelocity && isDisplacement;
13697
+ animation.lastVelocity = velocity;
13698
+ animation.lastTime = time;
13699
+ } // Trails aren't done until their parents conclude
13700
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13701
 
13702
+ if (isAnimated && !config.toValues[valIdx].done) endOfAnimation = false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13703
 
13704
+ if (endOfAnimation) {
13705
+ // Ensure that we end up with a round value
13706
+ if (animation.value !== to) position = to;
13707
+ animation.done = true;
13708
+ } else isActive = true;
 
 
 
 
 
 
 
 
13709
 
13710
+ animation.setValue(position);
13711
+ animation.lastPosition = position;
13712
+ } // Keep track of updated values only when necessary
 
 
 
 
 
13713
 
 
 
 
 
 
 
 
 
13714
 
13715
+ if (controller.props.onFrame) controller.values[config.name] = config.interpolation.getValue();
13716
+ } // Update callbacks in the end of the frame
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13717
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13718
 
13719
+ if (controller.props.onFrame) controller.props.onFrame(controller.values); // Either call onEnd or next frame
 
 
 
 
13720
 
13721
+ if (!isActive) {
13722
+ controllers.delete(controller);
13723
+ controller.stop(true);
13724
+ }
13725
+ } // Loop over as long as there are controllers ...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13726
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13727
 
13728
+ if (controllers.size) {
13729
+ if (manualFrameloop) manualFrameloop();else requestFrame(update);
13730
+ } else {
13731
+ active = false;
13732
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13733
 
13734
+ return active;
13735
+ };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13736
 
13737
+ var start = function start(controller) {
13738
+ if (!controllers.has(controller)) controllers.add(controller);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13739
 
13740
+ if (!active) {
13741
+ active = true;
13742
+ if (manualFrameloop) requestFrame(manualFrameloop);else requestFrame(update);
13743
  }
13744
  };
13745
 
13746
+ var stop = function stop(controller) {
13747
+ if (controllers.has(controller)) controllers.delete(controller);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13748
  };
13749
 
13750
+ function createInterpolator(range, output, extrapolate) {
13751
+ if (typeof range === 'function') {
13752
+ return range;
13753
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13754
 
13755
+ if (Array.isArray(range)) {
13756
+ return createInterpolator({
13757
+ range: range,
13758
+ output: output,
13759
+ extrapolate: extrapolate
13760
+ });
 
 
13761
  }
 
 
 
13762
 
13763
+ if (interpolation && typeof range.output[0] === 'string') {
13764
+ return interpolation(range);
13765
+ }
13766
 
13767
+ var config = range;
13768
+ var outputRange = config.output;
13769
+ var inputRange = config.range || [0, 1];
13770
+ var extrapolateLeft = config.extrapolateLeft || config.extrapolate || 'extend';
13771
+ var extrapolateRight = config.extrapolateRight || config.extrapolate || 'extend';
13772
 
13773
+ var easing = config.easing || function (t) {
13774
+ return t;
13775
+ };
13776
 
13777
+ return function (input) {
13778
+ var range = findRange(input, inputRange);
13779
+ return interpolate(input, inputRange[range], inputRange[range + 1], outputRange[range], outputRange[range + 1], easing, extrapolateLeft, extrapolateRight, config.map);
13780
+ };
13781
+ }
 
 
 
13782
 
13783
+ function interpolate(input, inputMin, inputMax, outputMin, outputMax, easing, extrapolateLeft, extrapolateRight, map) {
13784
+ var result = map ? map(input) : input; // Extrapolate
 
 
13785
 
13786
+ if (result < inputMin) {
13787
+ if (extrapolateLeft === 'identity') return result;else if (extrapolateLeft === 'clamp') result = inputMin;
13788
+ }
 
13789
 
13790
+ if (result > inputMax) {
13791
+ if (extrapolateRight === 'identity') return result;else if (extrapolateRight === 'clamp') result = inputMax;
13792
+ }
 
 
13793
 
13794
+ if (outputMin === outputMax) return outputMin;
13795
+ if (inputMin === inputMax) return input <= inputMin ? outputMin : outputMax; // Input Range
 
 
13796
 
13797
+ if (inputMin === -Infinity) result = -result;else if (inputMax === Infinity) result = result - inputMin;else result = (result - inputMin) / (inputMax - inputMin); // Easing
 
 
 
 
 
 
 
13798
 
13799
+ result = easing(result); // Output Range
 
 
13800
 
13801
+ if (outputMin === -Infinity) result = -result;else if (outputMax === Infinity) result = result + outputMin;else result = result * (outputMax - outputMin) + outputMin;
13802
+ return result;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13803
  }
13804
 
13805
+ function findRange(input, inputRange) {
13806
+ for (var i = 1; i < inputRange.length - 1; ++i) {
13807
+ if (inputRange[i] >= input) break;
13808
+ }
13809
+
13810
+ return i - 1;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13811
  }
13812
 
13813
+ var AnimatedInterpolation =
13814
+ /*#__PURE__*/
13815
+ function (_AnimatedArray) {
13816
+ _inheritsLoose(AnimatedInterpolation, _AnimatedArray);
13817
 
13818
+ function AnimatedInterpolation(parents, range, output, extrapolate) {
13819
+ var _this;
 
13820
 
13821
+ _this = _AnimatedArray.call(this) || this;
13822
+ _this.calc = void 0;
13823
+ _this.payload = parents instanceof AnimatedArray && !(parents instanceof AnimatedInterpolation) ? parents.getPayload() : Array.isArray(parents) ? parents : [parents];
13824
+ _this.calc = createInterpolator(range, output, extrapolate);
13825
+ return _this;
13826
+ }
13827
 
13828
+ var _proto = AnimatedInterpolation.prototype;
 
 
 
 
 
 
 
13829
 
13830
+ _proto.getValue = function getValue() {
13831
+ return this.calc.apply(this, this.payload.map(function (value) {
13832
+ return value.getValue();
13833
+ }));
13834
+ };
13835
 
13836
+ _proto.updateConfig = function updateConfig(range, output, extrapolate) {
13837
+ this.calc = createInterpolator(range, output, extrapolate);
13838
+ };
13839
 
13840
+ _proto.interpolate = function interpolate(range, output, extrapolate) {
13841
+ return new AnimatedInterpolation(this, range, output, extrapolate);
13842
+ };
13843
 
13844
+ return AnimatedInterpolation;
13845
+ }(AnimatedArray);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13846
 
13847
+ var interpolate$1 = function interpolate(parents, range, output) {
13848
+ return parents && new AnimatedInterpolation(parents, range, output);
 
 
 
 
 
13849
  };
13850
 
13851
+ var config = {
13852
+ default: {
13853
+ tension: 170,
13854
+ friction: 26
13855
+ },
13856
+ gentle: {
13857
+ tension: 120,
13858
+ friction: 14
13859
+ },
13860
+ wobbly: {
13861
+ tension: 180,
13862
+ friction: 12
13863
+ },
13864
+ stiff: {
13865
+ tension: 210,
13866
+ friction: 20
13867
+ },
13868
+ slow: {
13869
+ tension: 280,
13870
+ friction: 60
13871
+ },
13872
+ molasses: {
13873
+ tension: 280,
13874
+ friction: 120
13875
  }
 
13876
  };
13877
 
13878
+ /** API
13879
+ * useChain(references, timeSteps, timeFrame)
 
13880
  */
 
 
 
13881
 
13882
+ function useChain(refs, timeSteps, timeFrame) {
13883
+ if (timeFrame === void 0) {
13884
+ timeFrame = 1000;
13885
+ }
 
13886
 
13887
+ var previous = React.useRef();
13888
+ React.useEffect(function () {
13889
+ if (is.equ(refs, previous.current)) refs.forEach(function (_ref) {
13890
+ var current = _ref.current;
13891
+ return current && current.start();
13892
+ });else if (timeSteps) {
13893
+ refs.forEach(function (_ref2, index) {
13894
+ var current = _ref2.current;
13895
 
13896
+ if (current) {
13897
+ var ctrls = current.controllers;
 
 
 
 
 
13898
 
13899
+ if (ctrls.length) {
13900
+ var t = timeFrame * timeSteps[index];
13901
+ ctrls.forEach(function (ctrl) {
13902
+ ctrl.queue = ctrl.queue.map(function (e) {
13903
+ return _extends({}, e, {
13904
+ delay: e.delay + t
13905
+ });
13906
+ });
13907
+ ctrl.start();
13908
+ });
13909
+ }
13910
+ }
13911
+ });
13912
+ } else refs.reduce(function (q, _ref3, rI) {
13913
+ var current = _ref3.current;
13914
+ return q = q.then(function () {
13915
+ return current.start();
13916
+ });
13917
+ }, Promise.resolve());
13918
+ previous.current = refs;
13919
+ });
13920
+ }
13921
 
13922
+ /**
13923
+ * Animated works by building a directed acyclic graph of dependencies
13924
+ * transparently when you render your Animated components.
13925
+ *
13926
+ * new Animated.Value(0)
13927
+ * .interpolate() .interpolate() new Animated.Value(1)
13928
+ * opacity translateY scale
13929
+ * style transform
13930
+ * View#234 style
13931
+ * View#123
13932
+ *
13933
+ * A) Top Down phase
13934
+ * When an AnimatedValue is updated, we recursively go down through this
13935
+ * graph in order to find leaf nodes: the views that we flag as needing
13936
+ * an update.
13937
+ *
13938
+ * B) Bottom Up phase
13939
+ * When a view is flagged as needing an update, we recursively go back up
13940
+ * in order to build the new value that it needs. The reason why we need
13941
+ * this two-phases process is to deal with composite props such as
13942
+ * transform which can receive values from multiple parents.
13943
+ */
13944
+ function addAnimatedStyles(node, styles) {
13945
+ if ('update' in node) {
13946
+ styles.add(node);
13947
+ } else {
13948
+ node.getChildren().forEach(function (child) {
13949
+ return addAnimatedStyles(child, styles);
13950
+ });
13951
  }
13952
+ }
13953
 
13954
+ var AnimatedValue =
13955
+ /*#__PURE__*/
13956
+ function (_Animated) {
13957
+ _inheritsLoose(AnimatedValue, _Animated);
 
 
 
 
 
 
13958
 
13959
+ function AnimatedValue(_value) {
13960
+ var _this;
 
 
 
13961
 
13962
+ _this = _Animated.call(this) || this;
13963
+ _this.animatedStyles = new Set();
13964
+ _this.value = void 0;
13965
+ _this.startPosition = void 0;
13966
+ _this.lastPosition = void 0;
13967
+ _this.lastVelocity = void 0;
13968
+ _this.startTime = void 0;
13969
+ _this.lastTime = void 0;
13970
+ _this.done = false;
13971
 
13972
+ _this.setValue = function (value, flush) {
13973
+ if (flush === void 0) {
13974
+ flush = true;
 
13975
  }
 
 
 
 
 
 
 
 
 
 
 
13976
 
13977
+ _this.value = value;
13978
+ if (flush) _this.flush();
13979
+ };
 
 
 
13980
 
13981
+ _this.value = _value;
13982
+ _this.startPosition = _value;
13983
+ _this.lastPosition = _value;
13984
+ return _this;
13985
  }
 
 
13986
 
13987
+ var _proto = AnimatedValue.prototype;
 
 
 
 
 
 
 
 
 
13988
 
13989
+ _proto.flush = function flush() {
13990
+ if (this.animatedStyles.size === 0) {
13991
+ addAnimatedStyles(this, this.animatedStyles);
13992
+ }
13993
 
13994
+ this.animatedStyles.forEach(function (animatedStyle) {
13995
+ return animatedStyle.update();
13996
+ });
13997
+ };
13998
 
13999
+ _proto.clearStyles = function clearStyles() {
14000
+ this.animatedStyles.clear();
14001
+ };
14002
 
14003
+ _proto.getValue = function getValue() {
14004
+ return this.value;
14005
+ };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14006
 
14007
+ _proto.interpolate = function interpolate(range, output, extrapolate) {
14008
+ return new AnimatedInterpolation(this, range, output, extrapolate);
14009
+ };
 
 
 
 
14010
 
14011
+ return AnimatedValue;
14012
+ }(Animated);
 
 
 
 
 
 
 
 
 
 
14013
 
14014
+ var AnimatedValueArray =
14015
+ /*#__PURE__*/
14016
+ function (_AnimatedArray) {
14017
+ _inheritsLoose(AnimatedValueArray, _AnimatedArray);
14018
 
14019
+ function AnimatedValueArray(values) {
14020
+ var _this;
 
 
 
 
 
 
14021
 
14022
+ _this = _AnimatedArray.call(this) || this;
14023
+ _this.payload = values.map(function (n) {
14024
+ return new AnimatedValue(n);
14025
+ });
14026
+ return _this;
14027
+ }
14028
 
14029
+ var _proto = AnimatedValueArray.prototype;
 
 
14030
 
14031
+ _proto.setValue = function setValue(value, flush) {
14032
+ var _this2 = this;
14033
+
14034
+ if (flush === void 0) {
14035
+ flush = true;
14036
+ }
14037
+
14038
+ if (Array.isArray(value)) {
14039
+ if (value.length === this.payload.length) {
14040
+ value.forEach(function (v, i) {
14041
+ return _this2.payload[i].setValue(v, flush);
 
14042
  });
14043
  }
14044
+ } else {
14045
+ this.payload.forEach(function (p) {
14046
+ return p.setValue(value, flush);
14047
+ });
14048
  }
14049
+ };
 
14050
 
14051
+ _proto.getValue = function getValue() {
14052
+ return this.payload.map(function (v) {
14053
+ return v.getValue();
14054
+ });
14055
+ };
14056
 
14057
+ _proto.interpolate = function interpolate(range, output) {
14058
+ return new AnimatedInterpolation(this, range, output);
14059
+ };
14060
 
14061
+ return AnimatedValueArray;
14062
+ }(AnimatedArray);
 
 
 
 
 
 
 
 
 
 
 
 
 
14063
 
14064
+ var G = 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14065
 
14066
+ var Controller =
14067
+ /*#__PURE__*/
14068
+ function () {
14069
+ function Controller() {
14070
+ var _this = this;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14071
 
14072
+ this.id = void 0;
14073
+ this.idle = true;
14074
+ this.hasChanged = false;
14075
+ this.guid = 0;
14076
+ this.local = 0;
14077
+ this.props = {};
14078
+ this.merged = {};
14079
+ this.animations = {};
14080
+ this.interpolations = {};
14081
+ this.values = {};
14082
+ this.configs = [];
14083
+ this.listeners = [];
14084
+ this.queue = [];
14085
+ this.localQueue = void 0;
14086
 
14087
+ this.getValues = function () {
14088
+ return _this.interpolations;
14089
+ };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14090
 
14091
+ this.id = G++;
14092
+ }
14093
+ /** update(props)
14094
+ * This function filters input props and creates an array of tasks which are executed in .start()
14095
+ * Each task is allowed to carry a delay, which means it can execute asnychroneously */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14096
 
 
 
 
 
14097
 
14098
+ var _proto = Controller.prototype;
14099
 
14100
+ _proto.update = function update$$1(args) {
14101
+ //this._id = n + this.id
14102
+ if (!args) return this; // Extract delay and the to-prop from props
14103
 
14104
+ var _ref = interpolateTo(args),
14105
+ _ref$delay = _ref.delay,
14106
+ delay = _ref$delay === void 0 ? 0 : _ref$delay,
14107
+ to = _ref.to,
14108
+ props = _objectWithoutPropertiesLoose(_ref, ["delay", "to"]);
14109
 
14110
+ if (is.arr(to) || is.fun(to)) {
14111
+ // If config is either a function or an array queue it up as is
14112
+ this.queue.push(_extends({}, props, {
14113
+ delay: delay,
14114
+ to: to
14115
+ }));
14116
+ } else if (to) {
14117
+ // Otherwise go through each key since it could be delayed individually
14118
+ var ops = {};
14119
+ Object.entries(to).forEach(function (_ref2) {
14120
+ var _to;
14121
 
14122
+ var k = _ref2[0],
14123
+ v = _ref2[1];
14124
 
14125
+ // Fetch delay and create an entry, consisting of the to-props, the delay, and basic props
14126
+ var entry = _extends({
14127
+ to: (_to = {}, _to[k] = v, _to),
14128
+ delay: callProp(delay, k)
14129
+ }, props);
14130
 
14131
+ var previous = ops[entry.delay] && ops[entry.delay].to;
14132
+ ops[entry.delay] = _extends({}, ops[entry.delay], entry, {
14133
+ to: _extends({}, previous, entry.to)
14134
+ });
14135
+ });
14136
+ this.queue = Object.values(ops);
14137
+ } // Sort queue, so that async calls go last
14138
 
 
 
 
 
14139
 
14140
+ this.queue = this.queue.sort(function (a, b) {
14141
+ return a.delay - b.delay;
14142
+ }); // Diff the reduced props immediately (they'll contain the from-prop and some config)
14143
 
14144
+ this.diff(props);
14145
+ return this;
14146
+ }
14147
+ /** start(onEnd)
14148
+ * This function either executes a queue, if present, or starts the frameloop, which animates */
14149
+ ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14150
 
14151
+ _proto.start = function start$$1(onEnd) {
14152
+ var _this2 = this;
14153
 
14154
+ // If a queue is present we must excecute it
14155
+ if (this.queue.length) {
14156
+ this.idle = false; // Updates can interrupt trailing queues, in that case we just merge values
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14157
 
14158
+ if (this.localQueue) {
14159
+ this.localQueue.forEach(function (_ref3) {
14160
+ var _ref3$from = _ref3.from,
14161
+ from = _ref3$from === void 0 ? {} : _ref3$from,
14162
+ _ref3$to = _ref3.to,
14163
+ to = _ref3$to === void 0 ? {} : _ref3$to;
14164
+ if (is.obj(from)) _this2.merged = _extends({}, from, _this2.merged);
14165
+ if (is.obj(to)) _this2.merged = _extends({}, _this2.merged, to);
14166
+ });
14167
+ } // The guid helps us tracking frames, a new queue over an old one means an override
14168
+ // We discard async calls in that caseÍ
14169
 
14170
 
14171
+ var local = this.local = ++this.guid;
14172
+ var queue = this.localQueue = this.queue;
14173
+ this.queue = []; // Go through each entry and execute it
 
 
14174
 
14175
+ queue.forEach(function (_ref4, index) {
14176
+ var delay = _ref4.delay,
14177
+ props = _objectWithoutPropertiesLoose(_ref4, ["delay"]);
 
 
 
 
 
 
 
 
 
 
 
14178
 
14179
+ var cb = function cb(finished) {
14180
+ if (index === queue.length - 1 && local === _this2.guid && finished) {
14181
+ _this2.idle = true;
14182
+ if (_this2.props.onRest) _this2.props.onRest(_this2.merged);
14183
+ }
 
14184
 
14185
+ if (onEnd) onEnd();
14186
+ }; // Entries can be delayed, ansyc or immediate
14187
+
14188
+
14189
+ var async = is.arr(props.to) || is.fun(props.to);
14190
+
14191
+ if (delay) {
14192
+ setTimeout(function () {
14193
+ if (local === _this2.guid) {
14194
+ if (async) _this2.runAsync(props, cb);else _this2.diff(props).start(cb);
14195
  }
14196
+ }, delay);
14197
+ } else if (async) _this2.runAsync(props, cb);else _this2.diff(props).start(cb);
14198
+ });
14199
+ } // Otherwise we kick of the frameloop
14200
+ else {
14201
+ if (is.fun(onEnd)) this.listeners.push(onEnd);
14202
+ if (this.props.onStart) this.props.onStart();
 
14203
 
14204
+ start(this);
14205
+ }
 
 
 
 
 
 
 
 
 
 
14206
 
14207
+ return this;
14208
+ };
 
 
 
 
 
 
 
 
 
 
 
 
14209
 
14210
+ _proto.stop = function stop$$1(finished) {
14211
+ this.listeners.forEach(function (onEnd) {
14212
+ return onEnd(finished);
14213
+ });
14214
+ this.listeners = [];
14215
+ return this;
14216
+ }
14217
+ /** Pause sets onEnd listeners free, but also removes the controller from the frameloop */
14218
+ ;
14219
 
14220
+ _proto.pause = function pause(finished) {
14221
+ this.stop(true);
14222
+ if (finished) stop(this);
14223
+ return this;
14224
+ };
 
 
 
 
14225
 
14226
+ _proto.runAsync = function runAsync(_ref5, onEnd) {
14227
+ var _this3 = this;
14228
 
14229
+ var delay = _ref5.delay,
14230
+ props = _objectWithoutPropertiesLoose(_ref5, ["delay"]);
 
14231
 
14232
+ var local = this.local; // If "to" is either a function or an array it will be processed async, therefor "to" should be empty right now
14233
+ // If the view relies on certain values "from" has to be present
 
 
 
14234
 
14235
+ var queue = Promise.resolve(undefined);
14236
 
14237
+ if (is.arr(props.to)) {
14238
+ var _loop = function _loop(i) {
14239
+ var index = i;
14240
 
14241
+ var fresh = _extends({}, props, interpolateTo(props.to[index]));
 
 
 
 
 
 
 
 
14242
 
14243
+ if (is.arr(fresh.config)) fresh.config = fresh.config[index];
14244
+ queue = queue.then(function () {
14245
+ //this.stop()
14246
+ if (local === _this3.guid) return new Promise(function (r) {
14247
+ return _this3.diff(fresh).start(r);
14248
+ });
14249
+ });
14250
+ };
14251
 
14252
+ for (var i = 0; i < props.to.length; i++) {
14253
+ _loop(i);
14254
+ }
14255
+ } else if (is.fun(props.to)) {
14256
+ var index = 0;
14257
+ var last;
14258
+ queue = queue.then(function () {
14259
+ return props.to( // next(props)
14260
+ function (p) {
14261
+ var fresh = _extends({}, props, interpolateTo(p));
14262
 
14263
+ if (is.arr(fresh.config)) fresh.config = fresh.config[index];
14264
+ index++; //this.stop()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14265
 
14266
+ if (local === _this3.guid) return last = new Promise(function (r) {
14267
+ return _this3.diff(fresh).start(r);
14268
+ });
14269
+ return;
14270
+ }, // cancel()
14271
+ function (finished) {
14272
+ if (finished === void 0) {
14273
+ finished = true;
14274
+ }
14275
 
14276
+ return _this3.stop(finished);
14277
+ }).then(function () {
14278
+ return last;
14279
+ });
14280
+ });
14281
+ }
14282
 
14283
+ queue.then(onEnd);
14284
+ };
14285
 
14286
+ _proto.diff = function diff(props) {
14287
+ var _this4 = this;
14288
 
14289
+ this.props = _extends({}, this.props, props);
14290
+ var _this$props = this.props,
14291
+ _this$props$from = _this$props.from,
14292
+ from = _this$props$from === void 0 ? {} : _this$props$from,
14293
+ _this$props$to = _this$props.to,
14294
+ to = _this$props$to === void 0 ? {} : _this$props$to,
14295
+ _this$props$config = _this$props.config,
14296
+ config = _this$props$config === void 0 ? {} : _this$props$config,
14297
+ reverse = _this$props.reverse,
14298
+ attach = _this$props.attach,
14299
+ reset = _this$props.reset,
14300
+ immediate = _this$props.immediate; // Reverse values when requested
14301
 
14302
+ if (reverse) {
14303
+ var _ref6 = [to, from];
14304
+ from = _ref6[0];
14305
+ to = _ref6[1];
14306
+ } // This will collect all props that were ever set, reset merged props when necessary
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14307
 
 
 
 
14308
 
14309
+ this.merged = _extends({}, from, this.merged, to);
14310
+ this.hasChanged = false; // Attachment handling, trailed springs can "attach" themselves to a previous spring
 
14311
 
14312
+ var target = attach && attach(this); // Reduces input { name: value } pairs into animated values
 
 
 
 
 
 
14313
 
14314
+ this.animations = Object.entries(this.merged).reduce(function (acc, _ref7) {
14315
+ var name = _ref7[0],
14316
+ value = _ref7[1];
14317
+ // Issue cached entries, except on reset
14318
+ var entry = acc[name] || {}; // Figure out what the value is supposed to be
 
 
 
 
 
 
14319
 
14320
+ var isNumber = is.num(value);
14321
+ var isString = is.str(value) && !value.startsWith('#') && !/\d/.test(value) && !colorNames[value];
14322
+ var isArray = is.arr(value);
14323
+ var isInterpolation = !isNumber && !isArray && !isString;
14324
+ var fromValue = !is.und(from[name]) ? from[name] : value;
14325
+ var toValue = isNumber || isArray ? value : isString ? value : 1;
14326
+ var toConfig = callProp(config, name);
14327
+ if (target) toValue = target.animations[name].parent;
14328
+ var parent = entry.parent,
14329
+ interpolation$$1 = entry.interpolation,
14330
+ toValues = toArray(target ? toValue.getPayload() : toValue),
14331
+ animatedValues;
14332
+ var newValue = value;
14333
+ if (isInterpolation) newValue = interpolation({
14334
+ range: [0, 1],
14335
+ output: [value, value]
14336
+ })(1);
14337
+ var currentValue = interpolation$$1 && interpolation$$1.getValue(); // Change detection flags
14338
 
14339
+ var isFirst = is.und(parent);
14340
+ var isActive = !isFirst && entry.animatedValues.some(function (v) {
14341
+ return !v.done;
14342
+ });
14343
+ var currentValueDiffersFromGoal = !is.equ(newValue, currentValue);
14344
+ var hasNewGoal = !is.equ(newValue, entry.previous);
14345
+ var hasNewConfig = !is.equ(toConfig, entry.config); // Change animation props when props indicate a new goal (new value differs from previous one)
14346
+ // and current values differ from it. Config changes trigger a new update as well (though probably shouldn't?)
14347
 
14348
+ if (reset || hasNewGoal && currentValueDiffersFromGoal || hasNewConfig) {
14349
+ var _extends2;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14350
 
14351
+ // Convert regular values into animated values, ALWAYS re-use if possible
14352
+ if (isNumber || isString) parent = interpolation$$1 = entry.parent || new AnimatedValue(fromValue);else if (isArray) parent = interpolation$$1 = entry.parent || new AnimatedValueArray(fromValue);else if (isInterpolation) {
14353
+ var prev = entry.interpolation && entry.interpolation.calc(entry.parent.value);
14354
+ prev = prev !== void 0 && !reset ? prev : fromValue;
14355
 
14356
+ if (entry.parent) {
14357
+ parent = entry.parent;
14358
+ parent.setValue(0, false);
14359
+ } else parent = new AnimatedValue(0);
 
 
 
14360
 
14361
+ var range = {
14362
+ output: [prev, value]
14363
+ };
 
 
 
 
 
 
 
 
 
 
14364
 
14365
+ if (entry.interpolation) {
14366
+ interpolation$$1 = entry.interpolation;
14367
+ entry.interpolation.updateConfig(range);
14368
+ } else interpolation$$1 = parent.interpolate(range);
14369
+ }
14370
+ toValues = toArray(target ? toValue.getPayload() : toValue);
14371
+ animatedValues = toArray(parent.getPayload());
14372
+ if (reset && !isInterpolation) parent.setValue(fromValue, false);
14373
+ _this4.hasChanged = true; // Reset animated values
14374
 
14375
+ animatedValues.forEach(function (value) {
14376
+ value.startPosition = value.value;
14377
+ value.lastPosition = value.value;
14378
+ value.lastVelocity = isActive ? value.lastVelocity : undefined;
14379
+ value.lastTime = isActive ? value.lastTime : undefined;
14380
+ value.startTime = now();
14381
+ value.done = false;
14382
+ value.animatedStyles.clear();
14383
+ }); // Set immediate values
14384
 
14385
+ if (callProp(immediate, name)) {
14386
+ parent.setValue(isInterpolation ? toValue : value, false);
14387
+ }
14388
 
14389
+ return _extends({}, acc, (_extends2 = {}, _extends2[name] = _extends({}, entry, {
14390
+ name: name,
14391
+ parent: parent,
14392
+ interpolation: interpolation$$1,
14393
+ animatedValues: animatedValues,
14394
+ toValues: toValues,
14395
+ previous: newValue,
14396
+ config: toConfig,
14397
+ fromValues: toArray(parent.getValue()),
14398
+ immediate: callProp(immediate, name),
14399
+ initialVelocity: withDefault(toConfig.velocity, 0),
14400
+ clamp: withDefault(toConfig.clamp, false),
14401
+ precision: withDefault(toConfig.precision, 0.01),
14402
+ tension: withDefault(toConfig.tension, 170),
14403
+ friction: withDefault(toConfig.friction, 26),
14404
+ mass: withDefault(toConfig.mass, 1),
14405
+ duration: toConfig.duration,
14406
+ easing: withDefault(toConfig.easing, function (t) {
14407
+ return t;
14408
+ }),
14409
+ decay: toConfig.decay
14410
+ }), _extends2));
14411
+ } else {
14412
+ if (!currentValueDiffersFromGoal) {
14413
+ var _extends3;
14414
 
14415
+ // So ... the current target value (newValue) appears to be different from the previous value,
14416
+ // which normally constitutes an update, but the actual value (currentValue) matches the target!
14417
+ // In order to resolve this without causing an animation update we silently flag the animation as done,
14418
+ // which it technically is. Interpolations also needs a config update with their target set to 1.
14419
+ if (isInterpolation) {
14420
+ parent.setValue(1, false);
14421
+ interpolation$$1.updateConfig({
14422
+ output: [newValue, newValue]
14423
+ });
14424
+ }
14425
 
14426
+ parent.done = true;
14427
+ _this4.hasChanged = true;
14428
+ return _extends({}, acc, (_extends3 = {}, _extends3[name] = _extends({}, acc[name], {
14429
+ previous: newValue
14430
+ }), _extends3));
14431
+ }
14432
 
14433
+ return acc;
14434
+ }
14435
+ }, this.animations);
14436
 
14437
+ if (this.hasChanged) {
14438
+ // Make animations available to frameloop
14439
+ this.configs = Object.values(this.animations);
14440
+ this.values = {};
14441
+ this.interpolations = {};
14442
 
14443
+ for (var key in this.animations) {
14444
+ this.interpolations[key] = this.animations[key].interpolation;
14445
+ this.values[key] = this.animations[key].interpolation.getValue();
14446
+ }
14447
+ }
14448
+
14449
+ return this;
14450
  };
14451
 
14452
+ _proto.destroy = function destroy() {
14453
+ this.stop();
14454
+ this.props = {};
14455
+ this.merged = {};
14456
+ this.animations = {};
14457
+ this.interpolations = {};
14458
+ this.values = {};
14459
+ this.configs = [];
14460
+ this.local = 0;
14461
  };
14462
 
14463
+ return Controller;
14464
  }();
 
 
 
 
14465
 
14466
+ /** API
14467
+ * const props = useSprings(number, [{ ... }, { ... }, ...])
14468
+ * const [props, set] = useSprings(number, (i, controller) => ({ ... }))
14469
+ */
14470
 
14471
+ var useSprings = function useSprings(length, props) {
14472
+ var mounted = React.useRef(false);
14473
+ var ctrl = React.useRef();
14474
+ var isFn = is.fun(props); // The controller maintains the animation values, starts and stops animations
14475
+
14476
+ var _useMemo = React.useMemo(function () {
14477
+ // Remove old controllers
14478
+ if (ctrl.current) {
14479
+ ctrl.current.map(function (c) {
14480
+ return c.destroy();
14481
+ });
14482
+ ctrl.current = undefined;
14483
  }
14484
 
14485
+ var ref;
14486
+ return [new Array(length).fill().map(function (_, i) {
14487
+ var ctrl = new Controller();
14488
+ var newProps = isFn ? callProp(props, i, ctrl) : props[i];
14489
+ if (i === 0) ref = newProps.ref;
14490
+ ctrl.update(newProps);
14491
+ if (!ref) ctrl.start();
14492
+ return ctrl;
14493
+ }), ref];
14494
+ }, [length]),
14495
+ controllers = _useMemo[0],
14496
+ ref = _useMemo[1];
 
 
 
 
 
 
 
 
 
 
 
 
14497
 
14498
+ ctrl.current = controllers; // The hooks reference api gets defined here ...
 
14499
 
14500
+ var api = React.useImperativeHandle(ref, function () {
14501
+ return {
14502
+ start: function start() {
14503
+ return Promise.all(ctrl.current.map(function (c) {
14504
+ return new Promise(function (r) {
14505
+ return c.start(r);
14506
+ });
14507
+ }));
14508
+ },
14509
+ stop: function stop(finished) {
14510
+ return ctrl.current.forEach(function (c) {
14511
+ return c.stop(finished);
14512
+ });
14513
+ },
14514
 
14515
+ get controllers() {
14516
+ return ctrl.current;
14517
+ }
14518
 
 
 
 
 
14519
  };
14520
+ }); // This function updates the controllers
14521
 
14522
+ var updateCtrl = React.useMemo(function () {
14523
+ return function (updateProps) {
14524
+ return ctrl.current.map(function (c, i) {
14525
+ c.update(isFn ? callProp(updateProps, i, c) : updateProps[i]);
14526
+ if (!ref) c.start();
14527
  });
14528
  };
14529
+ }, [length]); // Update controller if props aren't functional
14530
 
14531
+ React.useEffect(function () {
14532
+ if (mounted.current) {
14533
+ if (!isFn) updateCtrl(props);
14534
+ } else if (!ref) ctrl.current.forEach(function (c) {
14535
+ return c.start();
14536
+ });
14537
+ }); // Update mounted flag and destroy controller on unmount
 
 
14538
 
14539
+ React.useEffect(function () {
14540
+ return mounted.current = true, function () {
14541
+ return ctrl.current.forEach(function (c) {
14542
+ return c.destroy();
14543
+ });
14544
+ };
14545
+ }, []); // Return animated props, or, anim-props + the update-setter above
14546
 
14547
+ var propValues = ctrl.current.map(function (c) {
14548
+ return c.getValues();
14549
+ });
14550
+ return isFn ? [propValues, updateCtrl, function (finished) {
14551
+ return ctrl.current.forEach(function (c) {
14552
+ return c.pause(finished);
14553
+ });
14554
+ }] : propValues;
14555
+ };
14556
 
14557
+ /** API
14558
+ * const props = useSpring({ ... })
14559
+ * const [props, set] = useSpring(() => ({ ... }))
14560
+ */
14561
 
14562
+ var useSpring = function useSpring(props) {
14563
+ var isFn = is.fun(props);
 
14564
 
14565
+ var _useSprings = useSprings(1, isFn ? props : [props]),
14566
+ result = _useSprings[0],
14567
+ set = _useSprings[1],
14568
+ pause = _useSprings[2];
14569
 
14570
+ return isFn ? [result[0], set, pause] : result;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14571
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14572
 
14573
+ /** API
14574
+ * const trails = useTrail(number, { ... })
14575
+ * const [trails, set] = useTrail(number, () => ({ ... }))
14576
  */
14577
 
14578
+ var useTrail = function useTrail(length, props) {
14579
+ var mounted = React.useRef(false);
14580
+ var isFn = is.fun(props);
14581
+ var updateProps = callProp(props);
14582
+ var instances = React.useRef();
 
 
14583
 
14584
+ var _useSprings = useSprings(length, function (i, ctrl) {
14585
+ if (i === 0) instances.current = [];
14586
+ instances.current.push(ctrl);
14587
+ return _extends({}, updateProps, {
14588
+ config: callProp(updateProps.config, i),
14589
+ attach: i > 0 && function () {
14590
+ return instances.current[i - 1];
14591
+ }
14592
  });
14593
+ }),
14594
+ result = _useSprings[0],
14595
+ set = _useSprings[1],
14596
+ pause = _useSprings[2]; // Set up function to update controller
14597
 
 
14598
 
14599
+ var updateCtrl = React.useMemo(function () {
14600
+ return function (props) {
14601
+ return set(function (i, ctrl) {
14602
+ var last = props.reverse ? i === 0 : length - 1 === i;
14603
+ var attachIdx = props.reverse ? i + 1 : i - 1;
14604
+ var attachController = instances.current[attachIdx];
14605
+ return _extends({}, props, {
14606
+ config: callProp(props.config || updateProps.config, i),
14607
+ attach: attachController && function () {
14608
+ return attachController;
14609
+ }
14610
+ });
14611
+ });
14612
+ };
14613
+ }, [length, updateProps.reverse]); // Update controller if props aren't functional
14614
 
14615
+ React.useEffect(function () {
14616
+ return void (mounted.current && !isFn && updateCtrl(props));
14617
+ }); // Update mounted flag and destroy controller on unmount
14618
 
14619
+ React.useEffect(function () {
14620
+ return void (mounted.current = true);
14621
+ }, []);
14622
+ return isFn ? [result, updateCtrl, pause] : result;
14623
  };
14624
 
14625
+ /** API
14626
+ * const transitions = useTransition(items, itemKeys, { ... })
14627
+ * const [transitions, update] = useTransition(items, itemKeys, () => ({ ... }))
14628
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14629
 
14630
+ var guid = 0;
14631
+ var ENTER = 'enter';
14632
+ var LEAVE = 'leave';
14633
+ var UPDATE = 'update';
14634
 
14635
+ var mapKeys = function mapKeys(items, keys) {
14636
+ return (typeof keys === 'function' ? items.map(keys) : toArray(keys)).map(String);
 
 
 
 
 
 
14637
  };
14638
 
14639
+ var get = function get(props) {
14640
+ var items = props.items,
14641
+ _props$keys = props.keys,
14642
+ keys = _props$keys === void 0 ? function (item) {
14643
+ return item;
14644
+ } : _props$keys,
14645
+ rest = _objectWithoutPropertiesLoose(props, ["items", "keys"]);
14646
 
14647
+ items = toArray(items !== void 0 ? items : null);
14648
+ return _extends({
14649
+ items: items,
14650
+ keys: mapKeys(items, keys)
14651
+ }, rest);
14652
+ };
14653
 
14654
+ function useTransition(input, keyTransform, config) {
14655
+ var props = _extends({
14656
+ items: input,
14657
+ keys: keyTransform || function (i) {
14658
+ return i;
 
 
14659
  }
14660
+ }, config);
14661
 
14662
+ var _get = get(props),
14663
+ _get$lazy = _get.lazy,
14664
+ lazy = _get$lazy === void 0 ? false : _get$lazy,
14665
+ _get$unique = _get.unique,
14666
+ _get$reset = _get.reset,
14667
+ reset = _get$reset === void 0 ? false : _get$reset,
14668
+ enter = _get.enter,
14669
+ leave = _get.leave,
14670
+ update = _get.update,
14671
+ onDestroyed = _get.onDestroyed,
14672
+ keys = _get.keys,
14673
+ items = _get.items,
14674
+ onFrame = _get.onFrame,
14675
+ _onRest = _get.onRest,
14676
+ onStart = _get.onStart,
14677
+ ref = _get.ref,
14678
+ extra = _objectWithoutPropertiesLoose(_get, ["lazy", "unique", "reset", "enter", "leave", "update", "onDestroyed", "keys", "items", "onFrame", "onRest", "onStart", "ref"]);
14679
 
14680
+ var forceUpdate = useForceUpdate();
14681
+ var mounted = React.useRef(false);
14682
+ var state = React.useRef({
14683
+ mounted: false,
14684
+ first: true,
14685
+ deleted: [],
14686
+ current: {},
14687
+ transitions: [],
14688
+ prevProps: {},
14689
+ paused: !!props.ref,
14690
+ instances: !mounted.current && new Map(),
14691
+ forceUpdate: forceUpdate
14692
+ });
14693
+ React.useImperativeHandle(props.ref, function () {
14694
+ return {
14695
+ start: function start() {
14696
+ return Promise.all(Array.from(state.current.instances).map(function (_ref) {
14697
+ var c = _ref[1];
14698
+ return new Promise(function (r) {
14699
+ return c.start(r);
14700
+ });
14701
+ }));
14702
+ },
14703
+ stop: function stop(finished) {
14704
+ return Array.from(state.current.instances).forEach(function (_ref2) {
14705
+ var c = _ref2[1];
14706
+ return c.stop(finished);
14707
+ });
14708
+ },
14709
 
14710
+ get controllers() {
14711
+ return Array.from(state.current.instances).map(function (_ref3) {
14712
+ var c = _ref3[1];
14713
+ return c;
14714
+ });
14715
+ }
 
14716
 
14717
+ };
14718
+ }); // Update state
 
 
 
14719
 
14720
+ state.current = diffItems(state.current, props);
14721
 
14722
+ if (state.current.changed) {
14723
+ // Update state
14724
+ state.current.transitions.forEach(function (transition) {
14725
+ var slot = transition.slot,
14726
+ from = transition.from,
14727
+ to = transition.to,
14728
+ config = transition.config,
14729
+ trail = transition.trail,
14730
+ key = transition.key,
14731
+ item = transition.item;
14732
+ if (!state.current.instances.has(key)) state.current.instances.set(key, new Controller()); // update the map object
14733
 
14734
+ var ctrl = state.current.instances.get(key);
 
 
 
 
 
 
 
 
 
 
 
 
14735
 
14736
+ var newProps = _extends({}, extra, {
14737
+ to: to,
14738
+ from: from,
14739
+ config: config,
14740
+ ref: ref,
14741
+ onRest: function onRest(values) {
14742
+ if (state.current.mounted) {
14743
+ if (transition.destroyed) {
14744
+ // If no ref is given delete destroyed items immediately
14745
+ if (!ref && !lazy) cleanUp(state, key);
14746
+ if (onDestroyed) onDestroyed(item);
14747
+ } // A transition comes to rest once all its springs conclude
14748
 
 
14749
 
14750
+ var curInstances = Array.from(state.current.instances);
14751
+ var active = curInstances.some(function (_ref4) {
14752
+ var c = _ref4[1];
14753
+ return !c.idle;
14754
+ });
14755
+ if (!active && (ref || lazy) && state.current.deleted.length > 0) cleanUp(state);
14756
+ if (_onRest) _onRest(item, slot, values);
14757
+ }
14758
+ },
14759
+ onStart: onStart && function () {
14760
+ return onStart(item, slot);
14761
+ },
14762
+ onFrame: onFrame && function (values) {
14763
+ return onFrame(item, slot, values);
14764
+ },
14765
+ delay: trail,
14766
+ reset: reset && slot === ENTER // Update controller
14767
 
14768
+ });
14769
 
14770
+ ctrl.update(newProps);
14771
+ if (!state.current.paused) ctrl.start();
14772
+ });
14773
+ }
 
 
 
14774
 
14775
+ React.useEffect(function () {
14776
+ state.current.mounted = mounted.current = true;
14777
+ return function () {
14778
+ state.current.mounted = mounted.current = false;
14779
+ Array.from(state.current.instances).map(function (_ref5) {
14780
+ var c = _ref5[1];
14781
+ return c.destroy();
14782
+ });
14783
+ state.current.instances.clear();
14784
+ };
14785
+ }, []);
14786
+ return state.current.transitions.map(function (_ref6) {
14787
+ var item = _ref6.item,
14788
+ slot = _ref6.slot,
14789
+ key = _ref6.key;
14790
+ return {
14791
+ item: item,
14792
+ key: key,
14793
+ state: slot,
14794
+ props: state.current.instances.get(key).getValues()
14795
+ };
14796
+ });
14797
+ }
14798
 
14799
+ function cleanUp(state, filterKey) {
14800
+ var deleted = state.current.deleted;
 
 
 
 
 
 
 
 
 
 
14801
 
14802
+ var _loop = function _loop() {
14803
+ if (_isArray) {
14804
+ if (_i >= _iterator.length) return "break";
14805
+ _ref8 = _iterator[_i++];
14806
+ } else {
14807
+ _i = _iterator.next();
14808
+ if (_i.done) return "break";
14809
+ _ref8 = _i.value;
14810
+ }
14811
 
14812
+ var _ref7 = _ref8;
14813
+ var key = _ref7.key;
14814
 
14815
+ var filter = function filter(t) {
14816
+ return t.key !== key;
14817
+ };
14818
 
14819
+ if (is.und(filterKey) || filterKey === key) {
14820
+ state.current.instances.delete(key);
14821
+ state.current.transitions = state.current.transitions.filter(filter);
14822
+ state.current.deleted = state.current.deleted.filter(filter);
14823
  }
14824
+ };
14825
+
14826
+ for (var _iterator = deleted, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {
14827
+ var _ref8;
14828
 
14829
+ var _ret = _loop();
14830
 
14831
+ if (_ret === "break") break;
 
 
 
14832
  }
14833
 
14834
+ state.current.forceUpdate();
14835
+ }
14836
 
14837
+ function diffItems(_ref9, props) {
14838
+ var first = _ref9.first,
14839
+ prevProps = _ref9.prevProps,
14840
+ state = _objectWithoutPropertiesLoose(_ref9, ["first", "prevProps"]);
14841
 
14842
+ var _get2 = get(props),
14843
+ items = _get2.items,
14844
+ keys = _get2.keys,
14845
+ initial = _get2.initial,
14846
+ from = _get2.from,
14847
+ enter = _get2.enter,
14848
+ leave = _get2.leave,
14849
+ update = _get2.update,
14850
+ _get2$trail = _get2.trail,
14851
+ trail = _get2$trail === void 0 ? 0 : _get2$trail,
14852
+ unique = _get2.unique,
14853
+ config = _get2.config,
14854
+ _get2$order = _get2.order,
14855
+ order = _get2$order === void 0 ? [ENTER, LEAVE, UPDATE] : _get2$order;
14856
 
14857
+ var _get3 = get(prevProps),
14858
+ _keys = _get3.keys,
14859
+ _items = _get3.items;
14860
 
14861
+ var current = _extends({}, state.current);
 
 
 
14862
 
14863
+ var deleted = [].concat(state.deleted); // Compare next keys with current keys
 
 
 
 
 
 
14864
 
14865
+ var currentKeys = Object.keys(current);
14866
+ var currentSet = new Set(currentKeys);
14867
+ var nextSet = new Set(keys);
14868
+ var added = keys.filter(function (item) {
14869
+ return !currentSet.has(item);
14870
+ });
14871
+ var removed = state.transitions.filter(function (item) {
14872
+ return !item.destroyed && !nextSet.has(item.originalKey);
14873
+ }).map(function (i) {
14874
+ return i.originalKey;
14875
+ });
14876
+ var updated = keys.filter(function (item) {
14877
+ return currentSet.has(item);
14878
+ });
14879
+ var delay = -trail;
14880
 
14881
+ while (order.length) {
14882
+ var changeType = order.shift();
 
 
 
14883
 
14884
+ switch (changeType) {
14885
+ case ENTER:
14886
+ {
14887
+ added.forEach(function (key, index) {
14888
+ // In unique mode, remove fading out transitions if their key comes in again
14889
+ if (unique && deleted.find(function (d) {
14890
+ return d.originalKey === key;
14891
+ })) deleted = deleted.filter(function (t) {
14892
+ return t.originalKey !== key;
14893
+ });
14894
+ var keyIndex = keys.indexOf(key);
14895
+ var item = items[keyIndex];
14896
+ var slot = first && initial !== void 0 ? 'initial' : ENTER;
14897
+ current[key] = {
14898
+ slot: slot,
14899
+ originalKey: key,
14900
+ key: unique ? String(key) : guid++,
14901
+ item: item,
14902
+ trail: delay = delay + trail,
14903
+ config: callProp(config, item, slot),
14904
+ from: callProp(first ? initial !== void 0 ? initial || {} : from : from, item),
14905
+ to: callProp(enter, item)
14906
+ };
14907
+ });
14908
+ break;
14909
+ }
14910
 
14911
+ case LEAVE:
14912
+ {
14913
+ removed.forEach(function (key) {
14914
+ var keyIndex = _keys.indexOf(key);
 
14915
 
14916
+ var item = _items[keyIndex];
14917
+ var slot = LEAVE;
14918
+ deleted.unshift(_extends({}, current[key], {
14919
+ slot: slot,
14920
+ destroyed: true,
14921
+ left: _keys[Math.max(0, keyIndex - 1)],
14922
+ right: _keys[Math.min(_keys.length, keyIndex + 1)],
14923
+ trail: delay = delay + trail,
14924
+ config: callProp(config, item, slot),
14925
+ to: callProp(leave, item)
14926
+ }));
14927
+ delete current[key];
14928
+ });
14929
+ break;
14930
+ }
14931
 
14932
+ case UPDATE:
14933
+ {
14934
+ updated.forEach(function (key) {
14935
+ var keyIndex = keys.indexOf(key);
14936
+ var item = items[keyIndex];
14937
+ var slot = UPDATE;
14938
+ current[key] = _extends({}, current[key], {
14939
+ item: item,
14940
+ slot: slot,
14941
+ trail: delay = delay + trail,
14942
+ config: callProp(config, item, slot),
14943
+ to: callProp(update, item)
14944
+ });
14945
+ });
14946
+ break;
14947
+ }
14948
+ }
14949
  }
14950
 
14951
+ var out = keys.map(function (key) {
14952
+ return current[key];
14953
+ }); // This tries to restore order for deleted items by finding their last known siblings
14954
+ // only using the left sibling to keep order placement consistent for all deleted items
14955
 
14956
+ deleted.forEach(function (_ref10) {
14957
+ var left = _ref10.left,
14958
+ right = _ref10.right,
14959
+ item = _objectWithoutPropertiesLoose(_ref10, ["left", "right"]);
14960
 
14961
+ var pos; // Was it the element on the left, if yes, move there ...
14962
 
14963
+ if ((pos = out.findIndex(function (t) {
14964
+ return t.originalKey === left;
14965
+ })) !== -1) pos += 1; // And if nothing else helps, move it to the start ¯\_(ツ)_/¯
14966
 
14967
+ pos = Math.max(0, pos);
14968
+ out = [].concat(out.slice(0, pos), [item], out.slice(pos));
14969
+ });
14970
+ return _extends({}, state, {
14971
+ changed: added.length || removed.length || updated.length,
14972
+ first: first && added.length === 0,
14973
+ transitions: out,
14974
+ current: current,
14975
+ deleted: deleted,
14976
+ prevProps: props
14977
+ });
14978
  }
14979
 
14980
+ var AnimatedStyle =
14981
+ /*#__PURE__*/
14982
+ function (_AnimatedObject) {
14983
+ _inheritsLoose(AnimatedStyle, _AnimatedObject);
14984
+
14985
+ function AnimatedStyle(style) {
14986
+ var _this;
14987
+
14988
+ if (style === void 0) {
14989
+ style = {};
14990
+ }
14991
+
14992
+ _this = _AnimatedObject.call(this) || this;
14993
+
14994
+ if (style.transform && !(style.transform instanceof Animated)) {
14995
+ style = applyAnimatedValues.transform(style);
14996
+ }
14997
+
14998
+ _this.payload = style;
14999
+ return _this;
15000
+ }
15001
+
15002
+ return AnimatedStyle;
15003
+ }(AnimatedObject);
15004
+
15005
+ // http://www.w3.org/TR/css3-color/#svg-color
15006
+ var colors = {
15007
+ transparent: 0x00000000,
15008
+ aliceblue: 0xf0f8ffff,
15009
+ antiquewhite: 0xfaebd7ff,
15010
+ aqua: 0x00ffffff,
15011
+ aquamarine: 0x7fffd4ff,
15012
+ azure: 0xf0ffffff,
15013
+ beige: 0xf5f5dcff,
15014
+ bisque: 0xffe4c4ff,
15015
+ black: 0x000000ff,
15016
+ blanchedalmond: 0xffebcdff,
15017
+ blue: 0x0000ffff,
15018
+ blueviolet: 0x8a2be2ff,
15019
+ brown: 0xa52a2aff,
15020
+ burlywood: 0xdeb887ff,
15021
+ burntsienna: 0xea7e5dff,
15022
+ cadetblue: 0x5f9ea0ff,
15023
+ chartreuse: 0x7fff00ff,
15024
+ chocolate: 0xd2691eff,
15025
+ coral: 0xff7f50ff,
15026
+ cornflowerblue: 0x6495edff,
15027
+ cornsilk: 0xfff8dcff,
15028
+ crimson: 0xdc143cff,
15029
+ cyan: 0x00ffffff,
15030
+ darkblue: 0x00008bff,
15031
+ darkcyan: 0x008b8bff,
15032
+ darkgoldenrod: 0xb8860bff,
15033
+ darkgray: 0xa9a9a9ff,
15034
+ darkgreen: 0x006400ff,
15035
+ darkgrey: 0xa9a9a9ff,
15036
+ darkkhaki: 0xbdb76bff,
15037
+ darkmagenta: 0x8b008bff,
15038
+ darkolivegreen: 0x556b2fff,
15039
+ darkorange: 0xff8c00ff,
15040
+ darkorchid: 0x9932ccff,
15041
+ darkred: 0x8b0000ff,
15042
+ darksalmon: 0xe9967aff,
15043
+ darkseagreen: 0x8fbc8fff,
15044
+ darkslateblue: 0x483d8bff,
15045
+ darkslategray: 0x2f4f4fff,
15046
+ darkslategrey: 0x2f4f4fff,
15047
+ darkturquoise: 0x00ced1ff,
15048
+ darkviolet: 0x9400d3ff,
15049
+ deeppink: 0xff1493ff,
15050
+ deepskyblue: 0x00bfffff,
15051
+ dimgray: 0x696969ff,
15052
+ dimgrey: 0x696969ff,
15053
+ dodgerblue: 0x1e90ffff,
15054
+ firebrick: 0xb22222ff,
15055
+ floralwhite: 0xfffaf0ff,
15056
+ forestgreen: 0x228b22ff,
15057
+ fuchsia: 0xff00ffff,
15058
+ gainsboro: 0xdcdcdcff,
15059
+ ghostwhite: 0xf8f8ffff,
15060
+ gold: 0xffd700ff,
15061
+ goldenrod: 0xdaa520ff,
15062
+ gray: 0x808080ff,
15063
+ green: 0x008000ff,
15064
+ greenyellow: 0xadff2fff,
15065
+ grey: 0x808080ff,
15066
+ honeydew: 0xf0fff0ff,
15067
+ hotpink: 0xff69b4ff,
15068
+ indianred: 0xcd5c5cff,
15069
+ indigo: 0x4b0082ff,
15070
+ ivory: 0xfffff0ff,
15071
+ khaki: 0xf0e68cff,
15072
+ lavender: 0xe6e6faff,
15073
+ lavenderblush: 0xfff0f5ff,
15074
+ lawngreen: 0x7cfc00ff,
15075
+ lemonchiffon: 0xfffacdff,
15076
+ lightblue: 0xadd8e6ff,
15077
+ lightcoral: 0xf08080ff,
15078
+ lightcyan: 0xe0ffffff,
15079
+ lightgoldenrodyellow: 0xfafad2ff,
15080
+ lightgray: 0xd3d3d3ff,
15081
+ lightgreen: 0x90ee90ff,
15082
+ lightgrey: 0xd3d3d3ff,
15083
+ lightpink: 0xffb6c1ff,
15084
+ lightsalmon: 0xffa07aff,
15085
+ lightseagreen: 0x20b2aaff,
15086
+ lightskyblue: 0x87cefaff,
15087
+ lightslategray: 0x778899ff,
15088
+ lightslategrey: 0x778899ff,
15089
+ lightsteelblue: 0xb0c4deff,
15090
+ lightyellow: 0xffffe0ff,
15091
+ lime: 0x00ff00ff,
15092
+ limegreen: 0x32cd32ff,
15093
+ linen: 0xfaf0e6ff,
15094
+ magenta: 0xff00ffff,
15095
+ maroon: 0x800000ff,
15096
+ mediumaquamarine: 0x66cdaaff,
15097
+ mediumblue: 0x0000cdff,
15098
+ mediumorchid: 0xba55d3ff,
15099
+ mediumpurple: 0x9370dbff,
15100
+ mediumseagreen: 0x3cb371ff,
15101
+ mediumslateblue: 0x7b68eeff,
15102
+ mediumspringgreen: 0x00fa9aff,
15103
+ mediumturquoise: 0x48d1ccff,
15104
+ mediumvioletred: 0xc71585ff,
15105
+ midnightblue: 0x191970ff,
15106
+ mintcream: 0xf5fffaff,
15107
+ mistyrose: 0xffe4e1ff,
15108
+ moccasin: 0xffe4b5ff,
15109
+ navajowhite: 0xffdeadff,
15110
+ navy: 0x000080ff,
15111
+ oldlace: 0xfdf5e6ff,
15112
+ olive: 0x808000ff,
15113
+ olivedrab: 0x6b8e23ff,
15114
+ orange: 0xffa500ff,
15115
+ orangered: 0xff4500ff,
15116
+ orchid: 0xda70d6ff,
15117
+ palegoldenrod: 0xeee8aaff,
15118
+ palegreen: 0x98fb98ff,
15119
+ paleturquoise: 0xafeeeeff,
15120
+ palevioletred: 0xdb7093ff,
15121
+ papayawhip: 0xffefd5ff,
15122
+ peachpuff: 0xffdab9ff,
15123
+ peru: 0xcd853fff,
15124
+ pink: 0xffc0cbff,
15125
+ plum: 0xdda0ddff,
15126
+ powderblue: 0xb0e0e6ff,
15127
+ purple: 0x800080ff,
15128
+ rebeccapurple: 0x663399ff,
15129
+ red: 0xff0000ff,
15130
+ rosybrown: 0xbc8f8fff,
15131
+ royalblue: 0x4169e1ff,
15132
+ saddlebrown: 0x8b4513ff,
15133
+ salmon: 0xfa8072ff,
15134
+ sandybrown: 0xf4a460ff,
15135
+ seagreen: 0x2e8b57ff,
15136
+ seashell: 0xfff5eeff,
15137
+ sienna: 0xa0522dff,
15138
+ silver: 0xc0c0c0ff,
15139
+ skyblue: 0x87ceebff,
15140
+ slateblue: 0x6a5acdff,
15141
+ slategray: 0x708090ff,
15142
+ slategrey: 0x708090ff,
15143
+ snow: 0xfffafaff,
15144
+ springgreen: 0x00ff7fff,
15145
+ steelblue: 0x4682b4ff,
15146
+ tan: 0xd2b48cff,
15147
+ teal: 0x008080ff,
15148
+ thistle: 0xd8bfd8ff,
15149
+ tomato: 0xff6347ff,
15150
+ turquoise: 0x40e0d0ff,
15151
+ violet: 0xee82eeff,
15152
+ wheat: 0xf5deb3ff,
15153
+ white: 0xffffffff,
15154
+ whitesmoke: 0xf5f5f5ff,
15155
+ yellow: 0xffff00ff,
15156
+ yellowgreen: 0x9acd32ff
15157
+ };
15158
+
15159
+ // const INTEGER = '[-+]?\\d+';
15160
+ var NUMBER = '[-+]?\\d*\\.?\\d+';
15161
+ var PERCENTAGE = NUMBER + '%';
15162
+
15163
+ function call() {
15164
+ for (var _len = arguments.length, parts = new Array(_len), _key = 0; _key < _len; _key++) {
15165
+ parts[_key] = arguments[_key];
15166
+ }
15167
+
15168
+ return '\\(\\s*(' + parts.join(')\\s*,\\s*(') + ')\\s*\\)';
15169
+ }
15170
+
15171
+ var rgb = new RegExp('rgb' + call(NUMBER, NUMBER, NUMBER));
15172
+ var rgba = new RegExp('rgba' + call(NUMBER, NUMBER, NUMBER, NUMBER));
15173
+ var hsl = new RegExp('hsl' + call(NUMBER, PERCENTAGE, PERCENTAGE));
15174
+ var hsla = new RegExp('hsla' + call(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER));
15175
+ var hex3 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;
15176
+ var hex4 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;
15177
+ var hex6 = /^#([0-9a-fA-F]{6})$/;
15178
+ var hex8 = /^#([0-9a-fA-F]{8})$/;
15179
+
15180
+ /*
15181
+ https://github.com/react-community/normalize-css-color
15182
+
15183
+ BSD 3-Clause License
15184
+
15185
+ Copyright (c) 2016, React Community
15186
+ All rights reserved.
15187
+
15188
+ Redistribution and use in source and binary forms, with or without
15189
+ modification, are permitted provided that the following conditions are met:
15190
+
15191
+ * Redistributions of source code must retain the above copyright notice, this
15192
+ list of conditions and the following disclaimer.
15193
+
15194
+ * Redistributions in binary form must reproduce the above copyright notice,
15195
+ this list of conditions and the following disclaimer in the documentation
15196
+ and/or other materials provided with the distribution.
15197
+
15198
+ * Neither the name of the copyright holder nor the names of its
15199
+ contributors may be used to endorse or promote products derived from
15200
+ this software without specific prior written permission.
15201
+
15202
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
15203
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15204
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
15205
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
15206
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
15207
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
15208
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
15209
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
15210
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
15211
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
15212
+ */
15213
+ function normalizeColor(color) {
15214
+ var match;
15215
+
15216
+ if (typeof color === 'number') {
15217
+ return color >>> 0 === color && color >= 0 && color <= 0xffffffff ? color : null;
15218
+ } // Ordered based on occurrences on Facebook codebase
15219
+
15220
+
15221
+ if (match = hex6.exec(color)) return parseInt(match[1] + 'ff', 16) >>> 0;
15222
+ if (colors.hasOwnProperty(color)) return colors[color];
15223
+
15224
+ if (match = rgb.exec(color)) {
15225
+ return (parse255(match[1]) << 24 | // r
15226
+ parse255(match[2]) << 16 | // g
15227
+ parse255(match[3]) << 8 | // b
15228
+ 0x000000ff) >>> // a
15229
+ 0;
15230
+ }
15231
+
15232
+ if (match = rgba.exec(color)) {
15233
+ return (parse255(match[1]) << 24 | // r
15234
+ parse255(match[2]) << 16 | // g
15235
+ parse255(match[3]) << 8 | // b
15236
+ parse1(match[4])) >>> // a
15237
+ 0;
15238
+ }
15239
+
15240
+ if (match = hex3.exec(color)) {
15241
+ return parseInt(match[1] + match[1] + // r
15242
+ match[2] + match[2] + // g
15243
+ match[3] + match[3] + // b
15244
+ 'ff', // a
15245
+ 16) >>> 0;
15246
+ } // https://drafts.csswg.org/css-color-4/#hex-notation
15247
+
15248
+
15249
+ if (match = hex8.exec(color)) return parseInt(match[1], 16) >>> 0;
15250
+
15251
+ if (match = hex4.exec(color)) {
15252
+ return parseInt(match[1] + match[1] + // r
15253
+ match[2] + match[2] + // g
15254
+ match[3] + match[3] + // b
15255
+ match[4] + match[4], // a
15256
+ 16) >>> 0;
15257
+ }
15258
+
15259
+ if (match = hsl.exec(color)) {
15260
+ return (hslToRgb(parse360(match[1]), // h
15261
+ parsePercentage(match[2]), // s
15262
+ parsePercentage(match[3]) // l
15263
+ ) | 0x000000ff) >>> // a
15264
+ 0;
15265
+ }
15266
+
15267
+ if (match = hsla.exec(color)) {
15268
+ return (hslToRgb(parse360(match[1]), // h
15269
+ parsePercentage(match[2]), // s
15270
+ parsePercentage(match[3]) // l
15271
+ ) | parse1(match[4])) >>> // a
15272
+ 0;
15273
+ }
15274
+
15275
+ return null;
15276
+ }
15277
+
15278
+ function hue2rgb(p, q, t) {
15279
+ if (t < 0) t += 1;
15280
+ if (t > 1) t -= 1;
15281
+ if (t < 1 / 6) return p + (q - p) * 6 * t;
15282
+ if (t < 1 / 2) return q;
15283
+ if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;
15284
+ return p;
15285
+ }
15286
+
15287
+ function hslToRgb(h, s, l) {
15288
+ var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
15289
+ var p = 2 * l - q;
15290
+ var r = hue2rgb(p, q, h + 1 / 3);
15291
+ var g = hue2rgb(p, q, h);
15292
+ var b = hue2rgb(p, q, h - 1 / 3);
15293
+ return Math.round(r * 255) << 24 | Math.round(g * 255) << 16 | Math.round(b * 255) << 8;
15294
+ }
15295
+
15296
+ function parse255(str) {
15297
+ var int = parseInt(str, 10);
15298
+ if (int < 0) return 0;
15299
+ if (int > 255) return 255;
15300
+ return int;
15301
+ }
15302
+
15303
+ function parse360(str) {
15304
+ var int = parseFloat(str);
15305
+ return (int % 360 + 360) % 360 / 360;
15306
+ }
15307
+
15308
+ function parse1(str) {
15309
+ var num = parseFloat(str);
15310
+ if (num < 0) return 0;
15311
+ if (num > 1) return 255;
15312
+ return Math.round(num * 255);
15313
+ }
15314
+
15315
+ function parsePercentage(str) {
15316
+ // parseFloat conveniently ignores the final %
15317
+ var int = parseFloat(str);
15318
+ if (int < 0) return 0;
15319
+ if (int > 100) return 1;
15320
+ return int / 100;
15321
+ }
15322
+
15323
+ function colorToRgba(input) {
15324
+ var int32Color = normalizeColor(input);
15325
+ if (int32Color === null) return input;
15326
+ int32Color = int32Color || 0;
15327
+ var r = (int32Color & 0xff000000) >>> 24;
15328
+ var g = (int32Color & 0x00ff0000) >>> 16;
15329
+ var b = (int32Color & 0x0000ff00) >>> 8;
15330
+ var a = (int32Color & 0x000000ff) / 255;
15331
+ return "rgba(" + r + ", " + g + ", " + b + ", " + a + ")";
15332
+ } // Problem: https://github.com/animatedjs/animated/pull/102
15333
+ // Solution: https://stackoverflow.com/questions/638565/parsing-scientific-notation-sensibly/658662
15334
+
15335
+
15336
+ var stringShapeRegex = /[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?/g; // Covers rgb, rgba, hsl, hsla
15337
+ // Taken from https://gist.github.com/olmokramer/82ccce673f86db7cda5e
15338
+
15339
+ var colorRegex = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d\.]+%?\))/gi; // Covers color names (transparent, blue, etc.)
15340
+
15341
+ var colorNamesRegex = new RegExp("(" + Object.keys(colors).join('|') + ")", 'g');
15342
+ /**
15343
+ * Supports string shapes by extracting numbers so new values can be computed,
15344
+ * and recombines those values into new strings of the same shape. Supports
15345
+ * things like:
15346
+ *
15347
+ * rgba(123, 42, 99, 0.36) // colors
15348
+ * -45deg // values with units
15349
+ * 0 2px 2px 0px rgba(0, 0, 0, 0.12) // box shadows
15350
+ */
15351
+
15352
+ var createStringInterpolator = function createStringInterpolator(config) {
15353
+ // Replace colors with rgba
15354
+ var outputRange = config.output.map(function (rangeValue) {
15355
+ return rangeValue.replace(colorRegex, colorToRgba);
15356
+ }).map(function (rangeValue) {
15357
+ return rangeValue.replace(colorNamesRegex, colorToRgba);
15358
+ });
15359
+ var outputRanges = outputRange[0].match(stringShapeRegex).map(function () {
15360
+ return [];
15361
+ });
15362
+ outputRange.forEach(function (value) {
15363
+ value.match(stringShapeRegex).forEach(function (number, i) {
15364
+ return outputRanges[i].push(+number);
15365
+ });
15366
+ });
15367
+ var interpolations = outputRange[0].match(stringShapeRegex).map(function (_value, i) {
15368
+ return createInterpolator(_extends({}, config, {
15369
+ output: outputRanges[i]
15370
+ }));
15371
+ });
15372
+ return function (input) {
15373
+ var i = 0;
15374
+ return outputRange[0] // 'rgba(0, 100, 200, 0)'
15375
+ // ->
15376
+ // 'rgba(${interpolations[0](input)}, ${interpolations[1](input)}, ...'
15377
+ .replace(stringShapeRegex, function () {
15378
+ return interpolations[i++](input);
15379
+ }) // rgba requires that the r,g,b are integers.... so we want to round them, but we *dont* want to
15380
+ // round the opacity (4th column).
15381
+ .replace(/rgba\(([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+)\)/gi, function (_, p1, p2, p3, p4) {
15382
+ return "rgba(" + Math.round(p1) + ", " + Math.round(p2) + ", " + Math.round(p3) + ", " + p4 + ")";
15383
+ });
15384
+ };
15385
+ };
15386
+
15387
+ var isUnitlessNumber = {
15388
+ animationIterationCount: true,
15389
+ borderImageOutset: true,
15390
+ borderImageSlice: true,
15391
+ borderImageWidth: true,
15392
+ boxFlex: true,
15393
+ boxFlexGroup: true,
15394
+ boxOrdinalGroup: true,
15395
+ columnCount: true,
15396
+ columns: true,
15397
+ flex: true,
15398
+ flexGrow: true,
15399
+ flexPositive: true,
15400
+ flexShrink: true,
15401
+ flexNegative: true,
15402
+ flexOrder: true,
15403
+ gridRow: true,
15404
+ gridRowEnd: true,
15405
+ gridRowSpan: true,
15406
+ gridRowStart: true,
15407
+ gridColumn: true,
15408
+ gridColumnEnd: true,
15409
+ gridColumnSpan: true,
15410
+ gridColumnStart: true,
15411
+ fontWeight: true,
15412
+ lineClamp: true,
15413
+ lineHeight: true,
15414
+ opacity: true,
15415
+ order: true,
15416
+ orphans: true,
15417
+ tabSize: true,
15418
+ widows: true,
15419
+ zIndex: true,
15420
+ zoom: true,
15421
+ // SVG-related properties
15422
+ fillOpacity: true,
15423
+ floodOpacity: true,
15424
+ stopOpacity: true,
15425
+ strokeDasharray: true,
15426
+ strokeDashoffset: true,
15427
+ strokeMiterlimit: true,
15428
+ strokeOpacity: true,
15429
+ strokeWidth: true
15430
+ };
15431
+
15432
+ var prefixKey = function prefixKey(prefix, key) {
15433
+ return prefix + key.charAt(0).toUpperCase() + key.substring(1);
15434
+ };
15435
+
15436
+ var prefixes = ['Webkit', 'Ms', 'Moz', 'O'];
15437
+ isUnitlessNumber = Object.keys(isUnitlessNumber).reduce(function (acc, prop) {
15438
+ prefixes.forEach(function (prefix) {
15439
+ return acc[prefixKey(prefix, prop)] = acc[prop];
15440
+ });
15441
+ return acc;
15442
+ }, isUnitlessNumber);
15443
+
15444
+ function dangerousStyleValue(name, value, isCustomProperty) {
15445
+ if (value == null || typeof value === 'boolean' || value === '') return '';
15446
+ if (!isCustomProperty && typeof value === 'number' && value !== 0 && !(isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name])) return value + 'px'; // Presumes implicit 'px' suffix for unitless numbers
15447
+
15448
+ return ('' + value).trim();
15449
+ }
15450
+
15451
+ var attributeCache = {};
15452
+ injectCreateAnimatedStyle(function (style) {
15453
+ return new AnimatedStyle(style);
15454
+ });
15455
+ injectDefaultElement('div');
15456
+ injectStringInterpolator(createStringInterpolator);
15457
+ injectColorNames(colors);
15458
+ injectApplyAnimatedValues(function (instance, props) {
15459
+ if (instance.nodeType && instance.setAttribute !== undefined) {
15460
+ var style = props.style,
15461
+ children = props.children,
15462
+ scrollTop = props.scrollTop,
15463
+ scrollLeft = props.scrollLeft,
15464
+ attributes = _objectWithoutPropertiesLoose(props, ["style", "children", "scrollTop", "scrollLeft"]);
15465
+
15466
+ var filter = instance.nodeName === 'filter' || instance.parentNode && instance.parentNode.nodeName === 'filter';
15467
+ if (scrollTop !== void 0) instance.scrollTop = scrollTop;
15468
+ if (scrollLeft !== void 0) instance.scrollLeft = scrollLeft; // Set textContent, if children is an animatable value
15469
+
15470
+ if (children !== void 0) instance.textContent = children; // Set styles ...
15471
+
15472
+ for (var styleName in style) {
15473
+ if (!style.hasOwnProperty(styleName)) continue;
15474
+ var isCustomProperty = styleName.indexOf('--') === 0;
15475
+ var styleValue = dangerousStyleValue(styleName, style[styleName], isCustomProperty);
15476
+ if (styleName === 'float') styleName = 'cssFloat';
15477
+ if (isCustomProperty) instance.style.setProperty(styleName, styleValue);else instance.style[styleName] = styleValue;
15478
+ } // Set attributes ...
15479
+
15480
+
15481
+ for (var name in attributes) {
15482
+ // Attributes are written in dash case
15483
+ var dashCase = filter ? name : attributeCache[name] || (attributeCache[name] = name.replace(/([A-Z])/g, function (n) {
15484
+ return '-' + n.toLowerCase();
15485
+ }));
15486
+ if (typeof instance.getAttribute(dashCase) !== 'undefined') instance.setAttribute(dashCase, attributes[name]);
15487
+ }
15488
+
15489
+ return;
15490
+ } else return false;
15491
+ }, function (style) {
15492
+ return style;
15493
+ });
15494
+
15495
+ var domElements = ['a', 'abbr', 'address', 'area', 'article', 'aside', 'audio', 'b', 'base', 'bdi', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'keygen', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'menu', 'menuitem', 'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'param', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video', 'wbr', // SVG
15496
+ 'circle', 'clipPath', 'defs', 'ellipse', 'foreignObject', 'g', 'image', 'line', 'linearGradient', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'svg', 'text', 'tspan'];
15497
+ // Extend animated with all the available THREE elements
15498
+ var apply = merge(createAnimatedComponent, false);
15499
+ var extendedAnimated = apply(domElements);
15500
+
15501
+ exports.apply = apply;
15502
+ exports.config = config;
15503
+ exports.update = update;
15504
+ exports.animated = extendedAnimated;
15505
+ exports.a = extendedAnimated;
15506
+ exports.interpolate = interpolate$1;
15507
+ exports.Globals = Globals;
15508
+ exports.useSpring = useSpring;
15509
+ exports.useTrail = useTrail;
15510
+ exports.useTransition = useTransition;
15511
+ exports.useChain = useChain;
15512
+ exports.useSprings = useSprings;
15513
+
15514
+
15515
+ /***/ }),
15516
+
15517
+ /***/ 437:
15518
+ /***/ (function(module, exports, __webpack_require__) {
15519
+
15520
+ var isarray = __webpack_require__(573)
15521
+
15522
+ /**
15523
+ * Expose `pathToRegexp`.
15524
+ */
15525
+ module.exports = pathToRegexp
15526
+ module.exports.parse = parse
15527
+ module.exports.compile = compile
15528
+ module.exports.tokensToFunction = tokensToFunction
15529
+ module.exports.tokensToRegExp = tokensToRegExp
15530
+
15531
+ /**
15532
+ * The main path matching regexp utility.
15533
+ *
15534
+ * @type {RegExp}
15535
+ */
15536
+ var PATH_REGEXP = new RegExp([
15537
+ // Match escaped characters that would otherwise appear in future matches.
15538
+ // This allows the user to escape special characters that won't transform.
15539
+ '(\\\\.)',
15540
+ // Match Express-style parameters and un-named parameters with a prefix
15541
+ // and optional suffixes. Matches appear as:
15542
+ //
15543
+ // "/:test(\\d+)?" => ["/", "test", "\d+", undefined, "?", undefined]
15544
+ // "/route(\\d+)" => [undefined, undefined, undefined, "\d+", undefined, undefined]
15545
+ // "/*" => ["/", undefined, undefined, undefined, undefined, "*"]
15546
+ '([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))'
15547
+ ].join('|'), 'g')
15548
+
15549
+ /**
15550
+ * Parse a string for the raw tokens.
15551
+ *
15552
+ * @param {string} str
15553
+ * @param {Object=} options
15554
+ * @return {!Array}
15555
+ */
15556
+ function parse (str, options) {
15557
+ var tokens = []
15558
+ var key = 0
15559
+ var index = 0
15560
+ var path = ''
15561
+ var defaultDelimiter = options && options.delimiter || '/'
15562
+ var res
15563
+
15564
+ while ((res = PATH_REGEXP.exec(str)) != null) {
15565
+ var m = res[0]
15566
+ var escaped = res[1]
15567
+ var offset = res.index
15568
+ path += str.slice(index, offset)
15569
+ index = offset + m.length
15570
+
15571
+ // Ignore already escaped sequences.
15572
+ if (escaped) {
15573
+ path += escaped[1]
15574
+ continue
15575
+ }
15576
+
15577
+ var next = str[index]
15578
+ var prefix = res[2]
15579
+ var name = res[3]
15580
+ var capture = res[4]
15581
+ var group = res[5]
15582
+ var modifier = res[6]
15583
+ var asterisk = res[7]
15584
+
15585
+ // Push the current path onto the tokens.
15586
+ if (path) {
15587
+ tokens.push(path)
15588
+ path = ''
15589
+ }
15590
+
15591
+ var partial = prefix != null && next != null && next !== prefix
15592
+ var repeat = modifier === '+' || modifier === '*'
15593
+ var optional = modifier === '?' || modifier === '*'
15594
+ var delimiter = res[2] || defaultDelimiter
15595
+ var pattern = capture || group
15596
+
15597
+ tokens.push({
15598
+ name: name || key++,
15599
+ prefix: prefix || '',
15600
+ delimiter: delimiter,
15601
+ optional: optional,
15602
+ repeat: repeat,
15603
+ partial: partial,
15604
+ asterisk: !!asterisk,
15605
+ pattern: pattern ? escapeGroup(pattern) : (asterisk ? '.*' : '[^' + escapeString(delimiter) + ']+?')
15606
+ })
15607
+ }
15608
+
15609
+ // Match any characters still remaining.
15610
+ if (index < str.length) {
15611
+ path += str.substr(index)
15612
+ }
15613
+
15614
+ // If the path exists, push it onto the end.
15615
+ if (path) {
15616
+ tokens.push(path)
15617
+ }
15618
+
15619
+ return tokens
15620
+ }
15621
+
15622
+ /**
15623
+ * Compile a string to a template function for the path.
15624
+ *
15625
+ * @param {string} str
15626
+ * @param {Object=} options
15627
+ * @return {!function(Object=, Object=)}
15628
+ */
15629
+ function compile (str, options) {
15630
+ return tokensToFunction(parse(str, options), options)
15631
+ }
15632
+
15633
+ /**
15634
+ * Prettier encoding of URI path segments.
15635
+ *
15636
+ * @param {string}
15637
+ * @return {string}
15638
+ */
15639
+ function encodeURIComponentPretty (str) {
15640
+ return encodeURI(str).replace(/[\/?#]/g, function (c) {
15641
+ return '%' + c.charCodeAt(0).toString(16).toUpperCase()
15642
+ })
15643
+ }
15644
+
15645
+ /**
15646
+ * Encode the asterisk parameter. Similar to `pretty`, but allows slashes.
15647
+ *
15648
+ * @param {string}
15649
+ * @return {string}
15650
+ */
15651
+ function encodeAsterisk (str) {
15652
+ return encodeURI(str).replace(/[?#]/g, function (c) {
15653
+ return '%' + c.charCodeAt(0).toString(16).toUpperCase()
15654
+ })
15655
+ }
15656
+
15657
+ /**
15658
+ * Expose a method for transforming tokens into the path function.
15659
+ */
15660
+ function tokensToFunction (tokens, options) {
15661
+ // Compile all the tokens into regexps.
15662
+ var matches = new Array(tokens.length)
15663
+
15664
+ // Compile all the patterns before compilation.
15665
+ for (var i = 0; i < tokens.length; i++) {
15666
+ if (typeof tokens[i] === 'object') {
15667
+ matches[i] = new RegExp('^(?:' + tokens[i].pattern + ')$', flags(options))
15668
+ }
15669
+ }
15670
+
15671
+ return function (obj, opts) {
15672
+ var path = ''
15673
+ var data = obj || {}
15674
+ var options = opts || {}
15675
+ var encode = options.pretty ? encodeURIComponentPretty : encodeURIComponent
15676
+
15677
+ for (var i = 0; i < tokens.length; i++) {
15678
+ var token = tokens[i]
15679
+
15680
+ if (typeof token === 'string') {
15681
+ path += token
15682
+
15683
+ continue
15684
+ }
15685
+
15686
+ var value = data[token.name]
15687
+ var segment
15688
+
15689
+ if (value == null) {
15690
+ if (token.optional) {
15691
+ // Prepend partial segment prefixes.
15692
+ if (token.partial) {
15693
+ path += token.prefix
15694
+ }
15695
+
15696
+ continue
15697
+ } else {
15698
+ throw new TypeError('Expected "' + token.name + '" to be defined')
15699
+ }
15700
+ }
15701
+
15702
+ if (isarray(value)) {
15703
+ if (!token.repeat) {
15704
+ throw new TypeError('Expected "' + token.name + '" to not repeat, but received `' + JSON.stringify(value) + '`')
15705
+ }
15706
+
15707
+ if (value.length === 0) {
15708
+ if (token.optional) {
15709
+ continue
15710
+ } else {
15711
+ throw new TypeError('Expected "' + token.name + '" to not be empty')
15712
+ }
15713
+ }
15714
+
15715
+ for (var j = 0; j < value.length; j++) {
15716
+ segment = encode(value[j])
15717
+
15718
+ if (!matches[i].test(segment)) {
15719
+ throw new TypeError('Expected all "' + token.name + '" to match "' + token.pattern + '", but received `' + JSON.stringify(segment) + '`')
15720
+ }
15721
+
15722
+ path += (j === 0 ? token.prefix : token.delimiter) + segment
15723
+ }
15724
+
15725
+ continue
15726
+ }
15727
+
15728
+ segment = token.asterisk ? encodeAsterisk(value) : encode(value)
15729
+
15730
+ if (!matches[i].test(segment)) {
15731
+ throw new TypeError('Expected "' + token.name + '" to match "' + token.pattern + '", but received "' + segment + '"')
15732
+ }
15733
+
15734
+ path += token.prefix + segment
15735
+ }
15736
+
15737
+ return path
15738
+ }
15739
+ }
15740
+
15741
+ /**
15742
+ * Escape a regular expression string.
15743
+ *
15744
+ * @param {string} str
15745
+ * @return {string}
15746
+ */
15747
+ function escapeString (str) {
15748
+ return str.replace(/([.+*?=^!:${}()[\]|\/\\])/g, '\\$1')
15749
+ }
15750
+
15751
+ /**
15752
+ * Escape the capturing group by escaping special characters and meaning.
15753
+ *
15754
+ * @param {string} group
15755
+ * @return {string}
15756
+ */
15757
+ function escapeGroup (group) {
15758
+ return group.replace(/([=!:$\/()])/g, '\\$1')
15759
+ }
15760
+
15761
+ /**
15762
+ * Attach the keys as a property of the regexp.
15763
+ *
15764
+ * @param {!RegExp} re
15765
+ * @param {Array} keys
15766
+ * @return {!RegExp}
15767
+ */
15768
+ function attachKeys (re, keys) {
15769
+ re.keys = keys
15770
+ return re
15771
+ }
15772
+
15773
+ /**
15774
+ * Get the flags for a regexp from the options.
15775
+ *
15776
+ * @param {Object} options
15777
+ * @return {string}
15778
+ */
15779
+ function flags (options) {
15780
+ return options && options.sensitive ? '' : 'i'
15781
+ }
15782
+
15783
+ /**
15784
+ * Pull out keys from a regexp.
15785
+ *
15786
+ * @param {!RegExp} path
15787
+ * @param {!Array} keys
15788
+ * @return {!RegExp}
15789
+ */
15790
+ function regexpToRegexp (path, keys) {
15791
+ // Use a negative lookahead to match only capturing groups.
15792
+ var groups = path.source.match(/\((?!\?)/g)
15793
+
15794
+ if (groups) {
15795
+ for (var i = 0; i < groups.length; i++) {
15796
+ keys.push({
15797
+ name: i,
15798
+ prefix: null,
15799
+ delimiter: null,
15800
+ optional: false,
15801
+ repeat: false,
15802
+ partial: false,
15803
+ asterisk: false,
15804
+ pattern: null
15805
+ })
15806
+ }
15807
+ }
15808
+
15809
+ return attachKeys(path, keys)
15810
+ }
15811
+
15812
+ /**
15813
+ * Transform an array into a regexp.
15814
+ *
15815
+ * @param {!Array} path
15816
+ * @param {Array} keys
15817
+ * @param {!Object} options
15818
+ * @return {!RegExp}
15819
+ */
15820
+ function arrayToRegexp (path, keys, options) {
15821
+ var parts = []
15822
+
15823
+ for (var i = 0; i < path.length; i++) {
15824
+ parts.push(pathToRegexp(path[i], keys, options).source)
15825
+ }
15826
+
15827
+ var regexp = new RegExp('(?:' + parts.join('|') + ')', flags(options))
15828
+
15829
+ return attachKeys(regexp, keys)
15830
+ }
15831
+
15832
+ /**
15833
+ * Create a path regexp from string input.
15834
+ *
15835
+ * @param {string} path
15836
+ * @param {!Array} keys
15837
+ * @param {!Object} options
15838
+ * @return {!RegExp}
15839
+ */
15840
+ function stringToRegexp (path, keys, options) {
15841
+ return tokensToRegExp(parse(path, options), keys, options)
15842
+ }
15843
+
15844
+ /**
15845
+ * Expose a function for taking tokens and returning a RegExp.
15846
+ *
15847
+ * @param {!Array} tokens
15848
+ * @param {(Array|Object)=} keys
15849
+ * @param {Object=} options
15850
+ * @return {!RegExp}
15851
+ */
15852
+ function tokensToRegExp (tokens, keys, options) {
15853
+ if (!isarray(keys)) {
15854
+ options = /** @type {!Object} */ (keys || options)
15855
+ keys = []
15856
+ }
15857
+
15858
+ options = options || {}
15859
+
15860
+ var strict = options.strict
15861
+ var end = options.end !== false
15862
+ var route = ''
15863
+
15864
+ // Iterate over the tokens and create our regexp string.
15865
+ for (var i = 0; i < tokens.length; i++) {
15866
+ var token = tokens[i]
15867
+
15868
+ if (typeof token === 'string') {
15869
+ route += escapeString(token)
15870
+ } else {
15871
+ var prefix = escapeString(token.prefix)
15872
+ var capture = '(?:' + token.pattern + ')'
15873
+
15874
+ keys.push(token)
15875
+
15876
+ if (token.repeat) {
15877
+ capture += '(?:' + prefix + capture + ')*'
15878
+ }
15879
+
15880
+ if (token.optional) {
15881
+ if (!token.partial) {
15882
+ capture = '(?:' + prefix + '(' + capture + '))?'
15883
+ } else {
15884
+ capture = prefix + '(' + capture + ')?'
15885
+ }
15886
+ } else {
15887
+ capture = prefix + '(' + capture + ')'
15888
+ }
15889
+
15890
+ route += capture
15891
+ }
15892
+ }
15893
+
15894
+ var delimiter = escapeString(options.delimiter || '/')
15895
+ var endsWithDelimiter = route.slice(-delimiter.length) === delimiter
15896
+
15897
+ // In non-strict mode we allow a slash at the end of match. If the path to
15898
+ // match already ends with a slash, we remove it for consistency. The slash
15899
+ // is valid at the end of a path match, not in the middle. This is important
15900
+ // in non-ending mode, where "/test/" shouldn't match "/test//route".
15901
+ if (!strict) {
15902
+ route = (endsWithDelimiter ? route.slice(0, -delimiter.length) : route) + '(?:' + delimiter + '(?=$))?'
15903
+ }
15904
+
15905
+ if (end) {
15906
+ route += '$'
15907
+ } else {
15908
+ // In non-ending mode, we need the capturing groups to match as much as
15909
+ // possible by using a positive lookahead to the end or next path segment.
15910
+ route += strict && endsWithDelimiter ? '' : '(?=' + delimiter + '|$)'
15911
+ }
15912
+
15913
+ return attachKeys(new RegExp('^' + route, flags(options)), keys)
15914
+ }
15915
+
15916
+ /**
15917
+ * Normalize the given path string, returning a regular expression.
15918
+ *
15919
+ * An empty array can be passed in for the keys, which will hold the
15920
+ * placeholder key descriptions. For example, using `/user/:id`, `keys` will
15921
+ * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.
15922
+ *
15923
+ * @param {(string|RegExp|Array)} path
15924
+ * @param {(Array|Object)=} keys
15925
+ * @param {Object=} options
15926
+ * @return {!RegExp}
15927
+ */
15928
+ function pathToRegexp (path, keys, options) {
15929
+ if (!isarray(keys)) {
15930
+ options = /** @type {!Object} */ (keys || options)
15931
+ keys = []
15932
+ }
15933
+
15934
+ options = options || {}
15935
+
15936
+ if (path instanceof RegExp) {
15937
+ return regexpToRegexp(path, /** @type {!Array} */ (keys))
15938
+ }
15939
+
15940
+ if (isarray(path)) {
15941
+ return arrayToRegexp(/** @type {!Array} */ (path), /** @type {!Array} */ (keys), options)
15942
+ }
15943
+
15944
+ return stringToRegexp(/** @type {string} */ (path), /** @type {!Array} */ (keys), options)
15945
+ }
15946
+
15947
+
15948
+ /***/ }),
15949
+
15950
+ /***/ 446:
15951
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
15952
+
15953
+ "use strict";
15954
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getUnreadNotesCount; });
15955
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return hasValidNotes; });
15956
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
15957
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);
15958
+ /**
15959
+ * External dependencies
15960
+ */
15961
+
15962
+ /**
15963
+ * Get the count of the unread notes from the received list.
15964
+ *
15965
+ * @param {Array} notes - List of notes, contains read and unread notes.
15966
+ * @param {number} lastRead - The timestamp that the user read a note.
15967
+ * @return {number} - Unread notes count.
15968
+ */
15969
+
15970
+ function getUnreadNotesCount(notes, lastRead) {
15971
+ var unreadNotes = Object(lodash__WEBPACK_IMPORTED_MODULE_0__["filter"])(notes, function (note) {
15972
+ var isDeleted = note.is_deleted,
15973
+ dateCreatedGmt = note.date_created_gmt,
15974
+ status = note.status;
15975
+
15976
+ if (!isDeleted) {
15977
+ var unread = !lastRead || !dateCreatedGmt || new Date(dateCreatedGmt + 'Z').getTime() > lastRead;
15978
+ return unread && status === 'unactioned';
15979
+ }
15980
+ });
15981
+ return unreadNotes.length;
15982
+ }
15983
+ /**
15984
+ * Verifies if there are any valid notes in the list.
15985
+ *
15986
+ * @param {Array} notes - List of notes, contains read and unread notes.
15987
+ * @return {boolean} - Whether there are valid notes or not.
15988
+ */
15989
+
15990
+ function hasValidNotes(notes) {
15991
+ var validNotes = Object(lodash__WEBPACK_IMPORTED_MODULE_0__["filter"])(notes, function (note) {
15992
+ var isDeleted = note.is_deleted;
15993
+ return !isDeleted;
15994
+ });
15995
+ return validNotes.length > 0;
15996
+ }
15997
+
15998
+ /***/ }),
15999
+
16000
+ /***/ 451:
16001
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
16002
+
16003
+ "use strict";
16004
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
16005
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
16006
+ /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(88);
16007
+
16008
+
16009
+ /**
16010
+ * WordPress dependencies
16011
+ */
16012
+
16013
+ var close = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__[/* SVG */ "c"], {
16014
+ xmlns: "http://www.w3.org/2000/svg",
16015
+ viewBox: "0 0 24 24"
16016
+ }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__[/* Path */ "b"], {
16017
+ d: "M13 11.8l6.1-6.3-1-1-6.1 6.2-6.1-6.2-1 1 6.1 6.3-6.5 6.7 1 1 6.5-6.6 6.5 6.6 1-1z"
16018
+ }));
16019
+ /* harmony default export */ __webpack_exports__["a"] = (close);
16020
+ //# sourceMappingURL=close.js.map
16021
+
16022
+ /***/ }),
16023
+
16024
+ /***/ 46:
16025
+ /***/ (function(module, exports) {
16026
+
16027
+ var g;
16028
+
16029
+ // This works in non-strict mode
16030
+ g = (function() {
16031
+ return this;
16032
+ })();
16033
+
16034
+ try {
16035
+ // This works if eval is allowed (see CSP)
16036
+ g = g || new Function("return this")();
16037
+ } catch (e) {
16038
+ // This works if the window reference is available
16039
+ if (typeof window === "object") g = window;
16040
+ }
16041
+
16042
+ // g can still be undefined, but nothing to do about it...
16043
+ // We return undefined, instead of nothing here, so it's
16044
+ // easier to handle this case. if(!global) { ...}
16045
+
16046
+ module.exports = g;
16047
+
16048
+
16049
+ /***/ }),
16050
+
16051
+ /***/ 47:
16052
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
16053
+
16054
+ "use strict";
16055
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _typeof; });
16056
+ function _typeof(obj) {
16057
+ "@babel/helpers - typeof";
16058
+
16059
+ if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
16060
+ _typeof = function _typeof(obj) {
16061
+ return typeof obj;
16062
+ };
16063
+ } else {
16064
+ _typeof = function _typeof(obj) {
16065
+ return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
16066
+ };
16067
+ }
16068
+
16069
+ return _typeof(obj);
16070
+ }
16071
+
16072
+ /***/ }),
16073
+
16074
+ /***/ 48:
16075
+ /***/ (function(module, exports) {
16076
+
16077
+ function _typeof(obj) {
16078
+ "@babel/helpers - typeof";
16079
+
16080
+ if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
16081
+ module.exports = _typeof = function _typeof(obj) {
16082
+ return typeof obj;
16083
+ };
16084
+ } else {
16085
+ module.exports = _typeof = function _typeof(obj) {
16086
+ return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
16087
+ };
16088
+ }
16089
+
16090
+ return _typeof(obj);
16091
+ }
16092
+
16093
+ module.exports = _typeof;
16094
+
16095
+ /***/ }),
16096
+
16097
+ /***/ 49:
16098
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
16099
+
16100
+ "use strict";
16101
+
16102
+ // EXPORTS
16103
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ serialize_browser_esm_serializeStyles; });
16104
+
16105
+ // CONCATENATED MODULE: ./node_modules/@emotion/hash/dist/hash.browser.esm.js
16106
+ /* eslint-disable */
16107
+ // Inspired by https://github.com/garycourt/murmurhash-js
16108
+ // Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86
16109
+ function murmur2(str) {
16110
+ // 'm' and 'r' are mixing constants generated offline.
16111
+ // They're not really 'magic', they just happen to work well.
16112
+ // const m = 0x5bd1e995;
16113
+ // const r = 24;
16114
+ // Initialize the hash
16115
+ var h = 0; // Mix 4 bytes at a time into the hash
16116
+
16117
+ var k,
16118
+ i = 0,
16119
+ len = str.length;
16120
+
16121
+ for (; len >= 4; ++i, len -= 4) {
16122
+ k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;
16123
+ k =
16124
+ /* Math.imul(k, m): */
16125
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);
16126
+ k ^=
16127
+ /* k >>> r: */
16128
+ k >>> 24;
16129
+ h =
16130
+ /* Math.imul(k, m): */
16131
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^
16132
+ /* Math.imul(h, m): */
16133
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
16134
+ } // Handle the last few bytes of the input array
16135
+
16136
+
16137
+ switch (len) {
16138
+ case 3:
16139
+ h ^= (str.charCodeAt(i + 2) & 0xff) << 16;
16140
+
16141
+ case 2:
16142
+ h ^= (str.charCodeAt(i + 1) & 0xff) << 8;
16143
+
16144
+ case 1:
16145
+ h ^= str.charCodeAt(i) & 0xff;
16146
+ h =
16147
+ /* Math.imul(h, m): */
16148
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
16149
+ } // Do a few final mixes of the hash to ensure the last few
16150
+ // bytes are well-incorporated.
16151
+
16152
+
16153
+ h ^= h >>> 13;
16154
+ h =
16155
+ /* Math.imul(h, m): */
16156
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
16157
+ return ((h ^ h >>> 15) >>> 0).toString(36);
16158
+ }
16159
+
16160
+ /* harmony default export */ var hash_browser_esm = (murmur2);
16161
+
16162
+ // CONCATENATED MODULE: ./node_modules/@emotion/unitless/dist/unitless.browser.esm.js
16163
+ var unitlessKeys = {
16164
+ animationIterationCount: 1,
16165
+ borderImageOutset: 1,
16166
+ borderImageSlice: 1,
16167
+ borderImageWidth: 1,
16168
+ boxFlex: 1,
16169
+ boxFlexGroup: 1,
16170
+ boxOrdinalGroup: 1,
16171
+ columnCount: 1,
16172
+ columns: 1,
16173
+ flex: 1,
16174
+ flexGrow: 1,
16175
+ flexPositive: 1,
16176
+ flexShrink: 1,
16177
+ flexNegative: 1,
16178
+ flexOrder: 1,
16179
+ gridRow: 1,
16180
+ gridRowEnd: 1,
16181
+ gridRowSpan: 1,
16182
+ gridRowStart: 1,
16183
+ gridColumn: 1,
16184
+ gridColumnEnd: 1,
16185
+ gridColumnSpan: 1,
16186
+ gridColumnStart: 1,
16187
+ msGridRow: 1,
16188
+ msGridRowSpan: 1,
16189
+ msGridColumn: 1,
16190
+ msGridColumnSpan: 1,
16191
+ fontWeight: 1,
16192
+ lineHeight: 1,
16193
+ opacity: 1,
16194
+ order: 1,
16195
+ orphans: 1,
16196
+ tabSize: 1,
16197
+ widows: 1,
16198
+ zIndex: 1,
16199
+ zoom: 1,
16200
+ WebkitLineClamp: 1,
16201
+ // SVG-related properties
16202
+ fillOpacity: 1,
16203
+ floodOpacity: 1,
16204
+ stopOpacity: 1,
16205
+ strokeDasharray: 1,
16206
+ strokeDashoffset: 1,
16207
+ strokeMiterlimit: 1,
16208
+ strokeOpacity: 1,
16209
+ strokeWidth: 1
16210
+ };
16211
+
16212
+ /* harmony default export */ var unitless_browser_esm = (unitlessKeys);
16213
+
16214
+ // EXTERNAL MODULE: ./node_modules/@emotion/memoize/dist/memoize.browser.esm.js
16215
+ var memoize_browser_esm = __webpack_require__(102);
16216
+
16217
+ // CONCATENATED MODULE: ./node_modules/@emotion/serialize/dist/serialize.browser.esm.js
16218
+
16219
+
16220
+
16221
+
16222
+ var ILLEGAL_ESCAPE_SEQUENCE_ERROR = "You have illegal escape sequence in your template literal, most likely inside content's property value.\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \"content: '\\00d7';\" should become \"content: '\\\\00d7';\".\nYou can read more about this here:\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences";
16223
+ var UNDEFINED_AS_OBJECT_KEY_ERROR = "You have passed in falsy value as style object's key (can happen when in example you pass unexported component as computed key).";
16224
+ var hyphenateRegex = /[A-Z]|^ms/g;
16225
+ var animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g;
16226
+
16227
+ var isCustomProperty = function isCustomProperty(property) {
16228
+ return property.charCodeAt(1) === 45;
16229
+ };
16230
+
16231
+ var isProcessableValue = function isProcessableValue(value) {
16232
+ return value != null && typeof value !== 'boolean';
16233
+ };
16234
+
16235
+ var processStyleName = Object(memoize_browser_esm["a" /* default */])(function (styleName) {
16236
+ return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, '-$&').toLowerCase();
16237
+ });
16238
+
16239
+ var serialize_browser_esm_processStyleValue = function processStyleValue(key, value) {
16240
+ switch (key) {
16241
+ case 'animation':
16242
+ case 'animationName':
16243
+ {
16244
+ if (typeof value === 'string') {
16245
+ return value.replace(animationRegex, function (match, p1, p2) {
16246
+ cursor = {
16247
+ name: p1,
16248
+ styles: p2,
16249
+ next: cursor
16250
+ };
16251
+ return p1;
16252
+ });
16253
+ }
16254
+ }
16255
+ }
16256
+
16257
+ if (unitless_browser_esm[key] !== 1 && !isCustomProperty(key) && typeof value === 'number' && value !== 0) {
16258
+ return value + 'px';
16259
+ }
16260
+
16261
+ return value;
16262
+ };
16263
+
16264
+ if (false) { var hyphenatedCache, hyphenPattern, msPattern, oldProcessStyleValue, contentValues, contentValuePattern; }
16265
+
16266
+ var shouldWarnAboutInterpolatingClassNameFromCss = true;
16267
+
16268
+ function handleInterpolation(mergedProps, registered, interpolation, couldBeSelectorInterpolation) {
16269
+ if (interpolation == null) {
16270
+ return '';
16271
+ }
16272
+
16273
+ if (interpolation.__emotion_styles !== undefined) {
16274
+ if (false) {}
16275
+
16276
+ return interpolation;
16277
+ }
16278
+
16279
+ switch (typeof interpolation) {
16280
+ case 'boolean':
16281
+ {
16282
+ return '';
16283
+ }
16284
+
16285
+ case 'object':
16286
+ {
16287
+ if (interpolation.anim === 1) {
16288
+ cursor = {
16289
+ name: interpolation.name,
16290
+ styles: interpolation.styles,
16291
+ next: cursor
16292
+ };
16293
+ return interpolation.name;
16294
+ }
16295
+
16296
+ if (interpolation.styles !== undefined) {
16297
+ var next = interpolation.next;
16298
+
16299
+ if (next !== undefined) {
16300
+ // not the most efficient thing ever but this is a pretty rare case
16301
+ // and there will be very few iterations of this generally
16302
+ while (next !== undefined) {
16303
+ cursor = {
16304
+ name: next.name,
16305
+ styles: next.styles,
16306
+ next: cursor
16307
+ };
16308
+ next = next.next;
16309
+ }
16310
+ }
16311
+
16312
+ var styles = interpolation.styles + ";";
16313
+
16314
+ if (false) {}
16315
+
16316
+ return styles;
16317
+ }
16318
+
16319
+ return createStringFromObject(mergedProps, registered, interpolation);
16320
+ }
16321
+
16322
+ case 'function':
16323
+ {
16324
+ if (mergedProps !== undefined) {
16325
+ var previousCursor = cursor;
16326
+ var result = interpolation(mergedProps);
16327
+ cursor = previousCursor;
16328
+ return handleInterpolation(mergedProps, registered, result, couldBeSelectorInterpolation);
16329
+ } else if (false) {}
16330
+
16331
+ break;
16332
+ }
16333
+
16334
+ case 'string':
16335
+ if (false) { var replaced, matched; }
16336
+
16337
+ break;
16338
+ } // finalize string values (regular strings and functions interpolated into css calls)
16339
+
16340
+
16341
+ if (registered == null) {
16342
+ return interpolation;
16343
+ }
16344
+
16345
+ var cached = registered[interpolation];
16346
+
16347
+ if (false) {}
16348
+
16349
+ return cached !== undefined && !couldBeSelectorInterpolation ? cached : interpolation;
16350
+ }
16351
+
16352
+ function createStringFromObject(mergedProps, registered, obj) {
16353
+ var string = '';
16354
+
16355
+ if (Array.isArray(obj)) {
16356
+ for (var i = 0; i < obj.length; i++) {
16357
+ string += handleInterpolation(mergedProps, registered, obj[i], false);
16358
+ }
16359
+ } else {
16360
+ for (var _key in obj) {
16361
+ var value = obj[_key];
16362
+
16363
+ if (typeof value !== 'object') {
16364
+ if (registered != null && registered[value] !== undefined) {
16365
+ string += _key + "{" + registered[value] + "}";
16366
+ } else if (isProcessableValue(value)) {
16367
+ string += processStyleName(_key) + ":" + serialize_browser_esm_processStyleValue(_key, value) + ";";
16368
+ }
16369
+ } else {
16370
+ if (_key === 'NO_COMPONENT_SELECTOR' && "production" !== 'production') {
16371
+ throw new Error('Component selectors can only be used in conjunction with babel-plugin-emotion.');
16372
+ }
16373
+
16374
+ if (Array.isArray(value) && typeof value[0] === 'string' && (registered == null || registered[value[0]] === undefined)) {
16375
+ for (var _i = 0; _i < value.length; _i++) {
16376
+ if (isProcessableValue(value[_i])) {
16377
+ string += processStyleName(_key) + ":" + serialize_browser_esm_processStyleValue(_key, value[_i]) + ";";
16378
+ }
16379
+ }
16380
+ } else {
16381
+ var interpolated = handleInterpolation(mergedProps, registered, value, false);
16382
+
16383
+ switch (_key) {
16384
+ case 'animation':
16385
+ case 'animationName':
16386
+ {
16387
+ string += processStyleName(_key) + ":" + interpolated + ";";
16388
+ break;
16389
+ }
16390
+
16391
+ default:
16392
+ {
16393
+ if (false) {}
16394
+
16395
+ string += _key + "{" + interpolated + "}";
16396
+ }
16397
+ }
16398
+ }
16399
+ }
16400
+ }
16401
+ }
16402
+
16403
+ return string;
16404
+ }
16405
+
16406
+ var labelPattern = /label:\s*([^\s;\n{]+)\s*;/g;
16407
+ var sourceMapPattern;
16408
+
16409
+ if (false) {} // this is the cursor for keyframes
16410
+ // keyframes are stored on the SerializedStyles object as a linked list
16411
+
16412
+
16413
+ var cursor;
16414
+ var serialize_browser_esm_serializeStyles = function serializeStyles(args, registered, mergedProps) {
16415
+ if (args.length === 1 && typeof args[0] === 'object' && args[0] !== null && args[0].styles !== undefined) {
16416
+ return args[0];
16417
+ }
16418
+
16419
+ var stringMode = true;
16420
+ var styles = '';
16421
+ cursor = undefined;
16422
+ var strings = args[0];
16423
+
16424
+ if (strings == null || strings.raw === undefined) {
16425
+ stringMode = false;
16426
+ styles += handleInterpolation(mergedProps, registered, strings, false);
16427
+ } else {
16428
+ if (false) {}
16429
+
16430
+ styles += strings[0];
16431
+ } // we start at 1 since we've already handled the first arg
16432
+
16433
+
16434
+ for (var i = 1; i < args.length; i++) {
16435
+ styles += handleInterpolation(mergedProps, registered, args[i], styles.charCodeAt(styles.length - 1) === 46);
16436
+
16437
+ if (stringMode) {
16438
+ if (false) {}
16439
+
16440
+ styles += strings[i];
16441
+ }
16442
+ }
16443
+
16444
+ var sourceMap;
16445
+
16446
+ if (false) {} // using a global regex with .exec is stateful so lastIndex has to be reset each time
16447
+
16448
+
16449
+ labelPattern.lastIndex = 0;
16450
+ var identifierName = '';
16451
+ var match; // https://esbench.com/bench/5b809c2cf2949800a0f61fb5
16452
+
16453
+ while ((match = labelPattern.exec(styles)) !== null) {
16454
+ identifierName += '-' + // $FlowFixMe we know it's not null
16455
+ match[1];
16456
+ }
16457
+
16458
+ var name = hash_browser_esm(styles) + identifierName;
16459
+
16460
+ if (false) {}
16461
+
16462
+ return {
16463
+ name: name,
16464
+ styles: styles,
16465
+ next: cursor
16466
+ };
16467
+ };
16468
+
16469
+
16470
+
16471
+
16472
+ /***/ }),
16473
+
16474
+ /***/ 5:
16475
+ /***/ (function(module, exports) {
16476
+
16477
+ function _defineProperty(obj, key, value) {
16478
+ if (key in obj) {
16479
+ Object.defineProperty(obj, key, {
16480
+ value: value,
16481
+ enumerable: true,
16482
+ configurable: true,
16483
+ writable: true
16484
+ });
16485
+ } else {
16486
+ obj[key] = value;
16487
+ }
16488
+
16489
+ return obj;
16490
+ }
16491
+
16492
+ module.exports = _defineProperty;
16493
+
16494
+ /***/ }),
16495
+
16496
+ /***/ 50:
16497
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
16498
+
16499
+ "use strict";
16500
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getRegisteredStyles; });
16501
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return insertStyles; });
16502
+ var isBrowser = "object" !== 'undefined';
16503
+ function getRegisteredStyles(registered, registeredStyles, classNames) {
16504
+ var rawClassName = '';
16505
+ classNames.split(' ').forEach(function (className) {
16506
+ if (registered[className] !== undefined) {
16507
+ registeredStyles.push(registered[className]);
16508
+ } else {
16509
+ rawClassName += className + " ";
16510
+ }
16511
+ });
16512
+ return rawClassName;
16513
+ }
16514
+ var insertStyles = function insertStyles(cache, serialized, isStringTag) {
16515
+ var className = cache.key + "-" + serialized.name;
16516
+
16517
+ if ( // we only need to add the styles to the registered cache if the
16518
+ // class name could be used further down
16519
+ // the tree but if it's a string tag, we know it won't
16520
+ // so we don't have to add it to registered cache.
16521
+ // this improves memory usage since we can avoid storing the whole style string
16522
+ (isStringTag === false || // we need to always store it if we're in compat mode and
16523
+ // in node since emotion-server relies on whether a style is in
16524
+ // the registered cache to know whether a style is global or not
16525
+ // also, note that this check will be dead code eliminated in the browser
16526
+ isBrowser === false && cache.compat !== undefined) && cache.registered[className] === undefined) {
16527
+ cache.registered[className] = serialized.styles;
16528
+ }
16529
+
16530
+ if (cache.inserted[serialized.name] === undefined) {
16531
+ var current = serialized;
16532
+
16533
+ do {
16534
+ var maybeStyles = cache.insert("." + className, current, cache.sheet, true);
16535
+
16536
+ current = current.next;
16537
+ } while (current !== undefined);
16538
+ }
16539
+ };
16540
+
16541
+
16542
+
16543
+
16544
+ /***/ }),
16545
+
16546
+ /***/ 51:
16547
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
16548
+
16549
+ "use strict";
16550
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _taggedTemplateLiteral; });
16551
+ function _taggedTemplateLiteral(strings, raw) {
16552
+ if (!raw) {
16553
+ raw = strings.slice(0);
16554
+ }
16555
+
16556
+ return Object.freeze(Object.defineProperties(strings, {
16557
+ raw: {
16558
+ value: Object.freeze(raw)
16559
+ }
16560
+ }));
16561
+ }
16562
+
16563
+ /***/ }),
16564
+
16565
+ /***/ 53:
16566
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
16567
+
16568
+ "use strict";
16569
+
16570
+ // EXPORTS
16571
+ __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ context_useSlot; });
16572
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ Consumer; });
16573
+
16574
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
16575
+ var slicedToArray = __webpack_require__(26);
16576
+
16577
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 3 modules
16578
+ var toConsumableArray = __webpack_require__(27);
16579
+
16580
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
16581
+ var classCallCheck = __webpack_require__(21);
16582
+
16583
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
16584
+ var createClass = __webpack_require__(22);
16585
+
16586
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
16587
+ var assertThisInitialized = __webpack_require__(13);
16588
+
16589
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules
16590
+ var inherits = __webpack_require__(23);
16591
+
16592
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
16593
+ var possibleConstructorReturn = __webpack_require__(24);
16594
+
16595
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
16596
+ var getPrototypeOf = __webpack_require__(10);
16597
+
16598
+ // EXTERNAL MODULE: external {"this":["wp","element"]}
16599
+ var external_this_wp_element_ = __webpack_require__(0);
16600
+
16601
+ // EXTERNAL MODULE: external "lodash"
16602
+ var external_lodash_ = __webpack_require__(2);
16603
+
16604
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/typeof.js
16605
+ var esm_typeof = __webpack_require__(47);
16606
+
16607
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
16608
+ var objectWithoutProperties = __webpack_require__(12);
16609
+
16610
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
16611
+ var defineProperty = __webpack_require__(8);
16612
+
16613
+ // EXTERNAL MODULE: ./node_modules/@wordpress/is-shallow-equal/lib/index.js
16614
+ var lib = __webpack_require__(82);
16615
+ var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
16616
+
16617
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/slot-fill-context.js
16618
+ var slot_fill_context = __webpack_require__(63);
16619
+
16620
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js
16621
+
16622
+
16623
+
16624
+
16625
+
16626
+
16627
+
16628
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return Object(esm_typeof["a" /* default */])(key) === "symbol" ? key : String(key); }
16629
+
16630
+ function _toPrimitive(input, hint) { if (Object(esm_typeof["a" /* default */])(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (Object(esm_typeof["a" /* default */])(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
16631
+
16632
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
16633
+
16634
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
16635
+
16636
+ /**
16637
+ * WordPress dependencies
16638
+ */
16639
+
16640
+
16641
+ /**
16642
+ * Internal dependencies
16643
+ */
16644
+
16645
+
16646
+
16647
+ function useSlotRegistry() {
16648
+ var _useState = Object(external_this_wp_element_["useState"])({}),
16649
+ _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
16650
+ slots = _useState2[0],
16651
+ setSlots = _useState2[1];
16652
+
16653
+ var _useState3 = Object(external_this_wp_element_["useState"])({}),
16654
+ _useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
16655
+ fills = _useState4[0],
16656
+ setFills = _useState4[1];
16657
+
16658
+ var registerSlot = Object(external_this_wp_element_["useCallback"])(function (name, ref, fillProps) {
16659
+ setSlots(function (prevSlots) {
16660
+ var slot = prevSlots[name] || {};
16661
+ return _objectSpread(_objectSpread({}, prevSlots), {}, Object(defineProperty["a" /* default */])({}, name, _objectSpread(_objectSpread({}, slot), {}, {
16662
+ ref: ref || slot.ref,
16663
+ fillProps: fillProps || slot.fillProps || {}
16664
+ })));
16665
+ });
16666
+ }, []);
16667
+ var unregisterSlot = Object(external_this_wp_element_["useCallback"])(function (name, ref) {
16668
+ setSlots(function (prevSlots) {
16669
+ var slot = prevSlots[name],
16670
+ nextSlots = Object(objectWithoutProperties["a" /* default */])(prevSlots, [name].map(_toPropertyKey)); // Make sure we're not unregistering a slot registered by another element
16671
+ // See https://github.com/WordPress/gutenberg/pull/19242#issuecomment-590295412
16672
+
16673
+
16674
+ if ((slot === null || slot === void 0 ? void 0 : slot.ref) === ref) {
16675
+ return nextSlots;
16676
+ }
16677
+
16678
+ return prevSlots;
16679
+ });
16680
+ }, []);
16681
+ var updateSlot = Object(external_this_wp_element_["useCallback"])(function (name, fillProps) {
16682
+ var slot = slots[name];
16683
+
16684
+ if (!slot) {
16685
+ return;
16686
+ }
16687
+
16688
+ if (!lib_default()(slot.fillProps, fillProps)) {
16689
+ slot.fillProps = fillProps;
16690
+ var slotFills = fills[name];
16691
+
16692
+ if (slotFills) {
16693
+ // Force update fills
16694
+ slotFills.map(function (fill) {
16695
+ return fill.current.rerender();
16696
+ });
16697
+ }
16698
+ }
16699
+ }, [slots, fills]);
16700
+ var registerFill = Object(external_this_wp_element_["useCallback"])(function (name, ref) {
16701
+ setFills(function (prevFills) {
16702
+ return _objectSpread(_objectSpread({}, prevFills), {}, Object(defineProperty["a" /* default */])({}, name, [].concat(Object(toConsumableArray["a" /* default */])(prevFills[name] || []), [ref])));
16703
+ });
16704
+ }, []);
16705
+ var unregisterFill = Object(external_this_wp_element_["useCallback"])(function (name, ref) {
16706
+ setFills(function (prevFills) {
16707
+ if (prevFills[name]) {
16708
+ return _objectSpread(_objectSpread({}, prevFills), {}, Object(defineProperty["a" /* default */])({}, name, prevFills[name].filter(function (fillRef) {
16709
+ return fillRef !== ref;
16710
+ })));
16711
+ }
16712
+
16713
+ return prevFills;
16714
+ });
16715
+ }, []); // Memoizing the return value so it can be directly passed to Provider value
16716
+
16717
+ var registry = Object(external_this_wp_element_["useMemo"])(function () {
16718
+ return {
16719
+ slots: slots,
16720
+ fills: fills,
16721
+ registerSlot: registerSlot,
16722
+ updateSlot: updateSlot,
16723
+ unregisterSlot: unregisterSlot,
16724
+ registerFill: registerFill,
16725
+ unregisterFill: unregisterFill
16726
+ };
16727
+ }, [slots, fills, registerSlot, updateSlot, unregisterSlot, registerFill, unregisterFill]);
16728
+ return registry;
16729
+ }
16730
+
16731
+ function slot_fill_provider_SlotFillProvider(_ref) {
16732
+ var children = _ref.children;
16733
+ var registry = useSlotRegistry();
16734
+ return Object(external_this_wp_element_["createElement"])(slot_fill_context["a" /* default */].Provider, {
16735
+ value: registry
16736
+ }, children);
16737
+ }
16738
+ //# sourceMappingURL=slot-fill-provider.js.map
16739
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/context.js
16740
+
16741
+
16742
+
16743
+
16744
+
16745
+
16746
+
16747
+
16748
+
16749
+
16750
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
16751
+
16752
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
16753
+
16754
+ /**
16755
+ * External dependencies
16756
+ */
16757
+
16758
+ /**
16759
+ * WordPress dependencies
16760
+ */
16761
+
16762
+
16763
+ /**
16764
+ * Internal dependencies
16765
+ */
16766
+
16767
+
16768
+ var SlotFillContext = Object(external_this_wp_element_["createContext"])({
16769
+ registerSlot: function registerSlot() {},
16770
+ unregisterSlot: function unregisterSlot() {},
16771
+ registerFill: function registerFill() {},
16772
+ unregisterFill: function unregisterFill() {},
16773
+ getSlot: function getSlot() {},
16774
+ getFills: function getFills() {},
16775
+ subscribe: function subscribe() {}
16776
+ });
16777
+ var Provider = SlotFillContext.Provider,
16778
+ Consumer = SlotFillContext.Consumer;
16779
+
16780
+ var context_SlotFillProvider = /*#__PURE__*/function (_Component) {
16781
+ Object(inherits["a" /* default */])(SlotFillProvider, _Component);
16782
+
16783
+ var _super = _createSuper(SlotFillProvider);
16784
+
16785
+ function SlotFillProvider() {
16786
+ var _this;
16787
+
16788
+ Object(classCallCheck["a" /* default */])(this, SlotFillProvider);
16789
+
16790
+ _this = _super.apply(this, arguments);
16791
+ _this.registerSlot = _this.registerSlot.bind(Object(assertThisInitialized["a" /* default */])(_this));
16792
+ _this.registerFill = _this.registerFill.bind(Object(assertThisInitialized["a" /* default */])(_this));
16793
+ _this.unregisterSlot = _this.unregisterSlot.bind(Object(assertThisInitialized["a" /* default */])(_this));
16794
+ _this.unregisterFill = _this.unregisterFill.bind(Object(assertThisInitialized["a" /* default */])(_this));
16795
+ _this.getSlot = _this.getSlot.bind(Object(assertThisInitialized["a" /* default */])(_this));
16796
+ _this.getFills = _this.getFills.bind(Object(assertThisInitialized["a" /* default */])(_this));
16797
+ _this.hasFills = _this.hasFills.bind(Object(assertThisInitialized["a" /* default */])(_this));
16798
+ _this.subscribe = _this.subscribe.bind(Object(assertThisInitialized["a" /* default */])(_this));
16799
+ _this.slots = {};
16800
+ _this.fills = {};
16801
+ _this.listeners = [];
16802
+ _this.contextValue = {
16803
+ registerSlot: _this.registerSlot,
16804
+ unregisterSlot: _this.unregisterSlot,
16805
+ registerFill: _this.registerFill,
16806
+ unregisterFill: _this.unregisterFill,
16807
+ getSlot: _this.getSlot,
16808
+ getFills: _this.getFills,
16809
+ hasFills: _this.hasFills,
16810
+ subscribe: _this.subscribe
16811
+ };
16812
+ return _this;
16813
+ }
16814
+
16815
+ Object(createClass["a" /* default */])(SlotFillProvider, [{
16816
+ key: "registerSlot",
16817
+ value: function registerSlot(name, slot) {
16818
+ var previousSlot = this.slots[name];
16819
+ this.slots[name] = slot;
16820
+ this.triggerListeners(); // Sometimes the fills are registered after the initial render of slot
16821
+ // But before the registerSlot call, we need to rerender the slot
16822
+
16823
+ this.forceUpdateSlot(name); // If a new instance of a slot is being mounted while another with the
16824
+ // same name exists, force its update _after_ the new slot has been
16825
+ // assigned into the instance, such that its own rendering of children
16826
+ // will be empty (the new Slot will subsume all fills for this name).
16827
+
16828
+ if (previousSlot) {
16829
+ previousSlot.forceUpdate();
16830
+ }
16831
+ }
16832
+ }, {
16833
+ key: "registerFill",
16834
+ value: function registerFill(name, instance) {
16835
+ this.fills[name] = [].concat(Object(toConsumableArray["a" /* default */])(this.fills[name] || []), [instance]);
16836
+ this.forceUpdateSlot(name);
16837
+ }
16838
+ }, {
16839
+ key: "unregisterSlot",
16840
+ value: function unregisterSlot(name, instance) {
16841
+ // If a previous instance of a Slot by this name unmounts, do nothing,
16842
+ // as the slot and its fills should only be removed for the current
16843
+ // known instance.
16844
+ if (this.slots[name] !== instance) {
16845
+ return;
16846
+ }
16847
+
16848
+ delete this.slots[name];
16849
+ this.triggerListeners();
16850
+ }
16851
+ }, {
16852
+ key: "unregisterFill",
16853
+ value: function unregisterFill(name, instance) {
16854
+ this.fills[name] = Object(external_lodash_["without"])(this.fills[name], instance);
16855
+ this.resetFillOccurrence(name);
16856
+ this.forceUpdateSlot(name);
16857
+ }
16858
+ }, {
16859
+ key: "getSlot",
16860
+ value: function getSlot(name) {
16861
+ return this.slots[name];
16862
+ }
16863
+ }, {
16864
+ key: "getFills",
16865
+ value: function getFills(name, slotInstance) {
16866
+ // Fills should only be returned for the current instance of the slot
16867
+ // in which they occupy.
16868
+ if (this.slots[name] !== slotInstance) {
16869
+ return [];
16870
+ }
16871
+
16872
+ return Object(external_lodash_["sortBy"])(this.fills[name], 'occurrence');
16873
+ }
16874
+ }, {
16875
+ key: "hasFills",
16876
+ value: function hasFills(name) {
16877
+ return this.fills[name] && !!this.fills[name].length;
16878
+ }
16879
+ }, {
16880
+ key: "resetFillOccurrence",
16881
+ value: function resetFillOccurrence(name) {
16882
+ Object(external_lodash_["forEach"])(this.fills[name], function (instance) {
16883
+ instance.occurrence = undefined;
16884
+ });
16885
+ }
16886
+ }, {
16887
+ key: "forceUpdateSlot",
16888
+ value: function forceUpdateSlot(name) {
16889
+ var slot = this.getSlot(name);
16890
+
16891
+ if (slot) {
16892
+ slot.forceUpdate();
16893
+ }
16894
+ }
16895
+ }, {
16896
+ key: "triggerListeners",
16897
+ value: function triggerListeners() {
16898
+ this.listeners.forEach(function (listener) {
16899
+ return listener();
16900
+ });
16901
+ }
16902
+ }, {
16903
+ key: "subscribe",
16904
+ value: function subscribe(listener) {
16905
+ var _this2 = this;
16906
+
16907
+ this.listeners.push(listener);
16908
+ return function () {
16909
+ _this2.listeners = Object(external_lodash_["without"])(_this2.listeners, listener);
16910
+ };
16911
+ }
16912
+ }, {
16913
+ key: "render",
16914
+ value: function render() {
16915
+ return Object(external_this_wp_element_["createElement"])(Provider, {
16916
+ value: this.contextValue
16917
+ }, Object(external_this_wp_element_["createElement"])(slot_fill_provider_SlotFillProvider, null, this.props.children));
16918
+ }
16919
+ }]);
16920
+
16921
+ return SlotFillProvider;
16922
+ }(external_this_wp_element_["Component"]);
16923
+ /**
16924
+ * React hook returning the active slot given a name.
16925
+ *
16926
+ * @param {string} name Slot name.
16927
+ * @return {Object} Slot object.
16928
+ */
16929
+
16930
+
16931
+ var context_useSlot = function useSlot(name) {
16932
+ var _useContext = Object(external_this_wp_element_["useContext"])(SlotFillContext),
16933
+ getSlot = _useContext.getSlot,
16934
+ subscribe = _useContext.subscribe;
16935
+
16936
+ var _useState = Object(external_this_wp_element_["useState"])(getSlot(name)),
16937
+ _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
16938
+ slot = _useState2[0],
16939
+ setSlot = _useState2[1];
16940
+
16941
+ Object(external_this_wp_element_["useEffect"])(function () {
16942
+ setSlot(getSlot(name));
16943
+ var unsubscribe = subscribe(function () {
16944
+ setSlot(getSlot(name));
16945
+ });
16946
+ return unsubscribe;
16947
+ }, [name]);
16948
+ return slot;
16949
+ };
16950
+ /* harmony default export */ var context = __webpack_exports__["b"] = (context_SlotFillProvider);
16951
+
16952
+ //# sourceMappingURL=context.js.map
16953
+
16954
+ /***/ }),
16955
+
16956
+ /***/ 533:
16957
+ /***/ (function(module, exports, __webpack_require__) {
16958
+
16959
+ "use strict";
16960
+
16961
+
16962
+ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
16963
+
16964
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
16965
+
16966
+ function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
16967
+
16968
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
16969
+
16970
+ function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
16971
+
16972
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
16973
+
16974
+ var hoistNonReactStatic = __webpack_require__(568);
16975
+ var React = __webpack_require__(6);
16976
+ var ReactDOM = __webpack_require__(100);
16977
+
16978
+ module.exports = function enhanceWithClickOutside(WrappedComponent) {
16979
+ var componentName = WrappedComponent.displayName || WrappedComponent.name;
16980
+
16981
+ var EnhancedComponent = function (_React$Component) {
16982
+ _inherits(EnhancedComponent, _React$Component);
16983
+
16984
+ function EnhancedComponent(props) {
16985
+ _classCallCheck(this, EnhancedComponent);
16986
+
16987
+ var _this = _possibleConstructorReturn(this, (EnhancedComponent.__proto__ || Object.getPrototypeOf(EnhancedComponent)).call(this, props));
16988
+
16989
+ _this.handleClickOutside = _this.handleClickOutside.bind(_this);
16990
+ return _this;
16991
+ }
16992
+
16993
+ _createClass(EnhancedComponent, [{
16994
+ key: 'componentDidMount',
16995
+ value: function componentDidMount() {
16996
+ document.addEventListener('click', this.handleClickOutside, true);
16997
+ }
16998
+ }, {
16999
+ key: 'componentWillUnmount',
17000
+ value: function componentWillUnmount() {
17001
+ document.removeEventListener('click', this.handleClickOutside, true);
17002
+ }
17003
+ }, {
17004
+ key: 'handleClickOutside',
17005
+ value: function handleClickOutside(e) {
17006
+ var domNode = this.__domNode;
17007
+ if ((!domNode || !domNode.contains(e.target)) && this.__wrappedInstance && typeof this.__wrappedInstance.handleClickOutside === 'function') {
17008
+ this.__wrappedInstance.handleClickOutside(e);
17009
+ }
17010
+ }
17011
+ }, {
17012
+ key: 'render',
17013
+ value: function render() {
17014
+ var _this2 = this;
17015
+
17016
+ var _props = this.props,
17017
+ wrappedRef = _props.wrappedRef,
17018
+ rest = _objectWithoutProperties(_props, ['wrappedRef']);
17019
+
17020
+ return React.createElement(WrappedComponent, _extends({}, rest, {
17021
+ ref: function ref(c) {
17022
+ _this2.__wrappedInstance = c;
17023
+ _this2.__domNode = ReactDOM.findDOMNode(c);
17024
+ wrappedRef && wrappedRef(c);
17025
+ }
17026
+ }));
17027
+ }
17028
+ }]);
17029
+
17030
+ return EnhancedComponent;
17031
+ }(React.Component);
17032
+
17033
+ EnhancedComponent.displayName = 'clickOutside(' + componentName + ')';
17034
+
17035
+ return hoistNonReactStatic(EnhancedComponent, WrappedComponent);
17036
+ };
17037
+
17038
+ /***/ }),
17039
+
17040
+ /***/ 534:
17041
+ /***/ (function(module, exports, __webpack_require__) {
17042
+
17043
+ "use strict";
17044
+ var _extends=Object.assign||function(a){for(var c,b=1;b<arguments.length;b++)for(var d in c=arguments[b],c)Object.prototype.hasOwnProperty.call(c,d)&&(a[d]=c[d]);return a};Object.defineProperty(exports,'__esModule',{value:!0});exports.default=function(a){var b=a.size,c=b===void 0?24:b,d=a.onClick,e=a.icon,f=a.className,g=_objectWithoutProperties(a,['size','onClick','icon','className']),j=['gridicon','gridicons-cross-small',f,!1,!1,!1].filter(Boolean).join(' ');return _react2.default.createElement('svg',_extends({className:j,height:c,width:c,onClick:d},g,{xmlns:'http://www.w3.org/2000/svg',viewBox:'0 0 24 24'}),_react2.default.createElement('g',null,_react2.default.createElement('path',{d:'M17.705 7.705l-1.41-1.41L12 10.59 7.705 6.295l-1.41 1.41L10.59 12l-4.295 4.295 1.41 1.41L12 13.41l4.295 4.295 1.41-1.41L13.41 12l4.295-4.295z'})))};var _react=__webpack_require__(6),_react2=_interopRequireDefault(_react);function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _objectWithoutProperties(a,b){var d={};for(var c in a)0<=b.indexOf(c)||Object.prototype.hasOwnProperty.call(a,c)&&(d[c]=a[c]);return d}module.exports=exports['default'];
17045
+
17046
+
17047
+ /***/ }),
17048
+
17049
+ /***/ 535:
17050
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
17051
+
17052
+ "use strict";
17053
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Dropdown; });
17054
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);
17055
+ /* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(26);
17056
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
17057
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__);
17058
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(4);
17059
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_3__);
17060
+ /* harmony import */ var _popover__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(136);
17061
+
17062
+
17063
+
17064
+
17065
+ /**
17066
+ * External dependencies
17067
+ */
17068
+
17069
+ /**
17070
+ * WordPress dependencies
17071
+ */
17072
+
17073
+
17074
+ /**
17075
+ * Internal dependencies
17076
+ */
17077
+
17078
+
17079
+
17080
+ function useObservableState(initialState, onStateChange) {
17081
+ var _useState = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["useState"])(initialState),
17082
+ _useState2 = Object(_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_useState, 2),
17083
+ state = _useState2[0],
17084
+ setState = _useState2[1];
17085
+
17086
+ return [state, function (value) {
17087
+ setState(value);
17088
+
17089
+ if (onStateChange) {
17090
+ onStateChange(value);
17091
+ }
17092
+ }];
17093
+ }
17094
+
17095
+ function Dropdown(_ref) {
17096
+ var renderContent = _ref.renderContent,
17097
+ renderToggle = _ref.renderToggle,
17098
+ _ref$position = _ref.position,
17099
+ position = _ref$position === void 0 ? 'bottom right' : _ref$position,
17100
+ className = _ref.className,
17101
+ contentClassName = _ref.contentClassName,
17102
+ expandOnMobile = _ref.expandOnMobile,
17103
+ headerTitle = _ref.headerTitle,
17104
+ focusOnMount = _ref.focusOnMount,
17105
+ popoverProps = _ref.popoverProps,
17106
+ onClose = _ref.onClose,
17107
+ onToggle = _ref.onToggle;
17108
+ var containerRef = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["useRef"])();
17109
+
17110
+ var _useObservableState = useObservableState(false, onToggle),
17111
+ _useObservableState2 = Object(_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_useObservableState, 2),
17112
+ isOpen = _useObservableState2[0],
17113
+ setIsOpen = _useObservableState2[1];
17114
+
17115
+ Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["useEffect"])(function () {
17116
+ return function () {
17117
+ if (onToggle) {
17118
+ onToggle(false);
17119
+ }
17120
+ };
17121
+ }, []);
17122
+
17123
+ function toggle() {
17124
+ setIsOpen(!isOpen);
17125
+ }
17126
+ /**
17127
+ * Closes the dropdown if a focus leaves the dropdown wrapper. This is
17128
+ * intentionally distinct from `onClose` since focus loss from the popover
17129
+ * is expected to occur when using the Dropdown's toggle button, in which
17130
+ * case the correct behavior is to keep the dropdown closed. The same applies
17131
+ * in case when focus is moved to the modal dialog.
17132
+ */
17133
+
17134
+
17135
+ function closeIfFocusOutside() {
17136
+ var ownerDocument = containerRef.current.ownerDocument;
17137
+
17138
+ if (!containerRef.current.contains(ownerDocument.activeElement) && !ownerDocument.activeElement.closest('[role="dialog"]')) {
17139
+ close();
17140
+ }
17141
+ }
17142
+
17143
+ function close() {
17144
+ if (onClose) {
17145
+ onClose();
17146
+ }
17147
+
17148
+ setIsOpen(false);
17149
+ }
17150
+
17151
+ var args = {
17152
+ isOpen: isOpen,
17153
+ onToggle: toggle,
17154
+ onClose: close
17155
+ };
17156
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["createElement"])("div", {
17157
+ className: classnames__WEBPACK_IMPORTED_MODULE_3___default()('components-dropdown', className),
17158
+ ref: containerRef
17159
+ }, renderToggle(args), isOpen && Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["createElement"])(_popover__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
17160
+ position: position,
17161
+ onClose: close,
17162
+ onFocusOutside: closeIfFocusOutside,
17163
+ expandOnMobile: expandOnMobile,
17164
+ headerTitle: headerTitle,
17165
+ focusOnMount: focusOnMount
17166
+ }, popoverProps, {
17167
+ anchorRef: containerRef.current,
17168
+ className: classnames__WEBPACK_IMPORTED_MODULE_3___default()('components-dropdown__content', popoverProps ? popoverProps.className : undefined, contentClassName)
17169
+ }), renderContent(args)));
17170
+ }
17171
+ //# sourceMappingURL=index.js.map
17172
+
17173
+ /***/ }),
17174
+
17175
+ /***/ 536:
17176
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
17177
+
17178
+ "use strict";
17179
+ /* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
17180
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
17181
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
17182
+ /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);
17183
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4);
17184
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
17185
+ /* harmony import */ var _wordpress_a11y__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(189);
17186
+ /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3);
17187
+ /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_4__);
17188
+ /* harmony import */ var _wordpress_warning__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(90);
17189
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(72);
17190
+
17191
+
17192
+ /**
17193
+ * External dependencies
17194
+ */
17195
+
17196
+
17197
+ /**
17198
+ * WordPress dependencies
17199
+ */
17200
+
17201
+
17202
+
17203
+
17204
+
17205
+ /**
17206
+ * Internal dependencies
17207
+ */
17208
+
17209
+
17210
+ var NOTICE_TIMEOUT = 10000;
17211
+ /** @typedef {import('@wordpress/element').WPElement} WPElement */
17212
+
17213
+ /**
17214
+ * Custom hook which announces the message with the given politeness, if a
17215
+ * valid message is provided.
17216
+ *
17217
+ * @param {string|WPElement} [message] Message to announce.
17218
+ * @param {'polite'|'assertive'} politeness Politeness to announce.
17219
+ */
17220
+
17221
+ function useSpokenMessage(message, politeness) {
17222
+ var spokenMessage = typeof message === 'string' ? message : Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["renderToString"])(message);
17223
+ Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
17224
+ if (spokenMessage) {
17225
+ Object(_wordpress_a11y__WEBPACK_IMPORTED_MODULE_3__[/* speak */ "a"])(spokenMessage, politeness);
17226
+ }
17227
+ }, [spokenMessage, politeness]);
17228
+ }
17229
+
17230
+ function Snackbar(_ref, ref) {
17231
+ var className = _ref.className,
17232
+ children = _ref.children,
17233
+ _ref$spokenMessage = _ref.spokenMessage,
17234
+ spokenMessage = _ref$spokenMessage === void 0 ? children : _ref$spokenMessage,
17235
+ _ref$politeness = _ref.politeness,
17236
+ politeness = _ref$politeness === void 0 ? 'polite' : _ref$politeness,
17237
+ _ref$actions = _ref.actions,
17238
+ actions = _ref$actions === void 0 ? [] : _ref$actions,
17239
+ _ref$onRemove = _ref.onRemove,
17240
+ onRemove = _ref$onRemove === void 0 ? lodash__WEBPACK_IMPORTED_MODULE_1__["noop"] : _ref$onRemove;
17241
+ useSpokenMessage(spokenMessage, politeness);
17242
+ Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
17243
+ var timeoutHandle = setTimeout(function () {
17244
+ onRemove();
17245
+ }, NOTICE_TIMEOUT);
17246
+ return function () {
17247
+ return clearTimeout(timeoutHandle);
17248
+ };
17249
+ }, []);
17250
+ var classes = classnames__WEBPACK_IMPORTED_MODULE_2___default()(className, 'components-snackbar');
17251
+
17252
+ if (actions && actions.length > 1) {
17253
+ // we need to inform developers that snackbar only accepts 1 action
17254
+ typeof process !== "undefined" && process.env && "production" !== "production" ? Object(_wordpress_warning__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])('Snackbar can only have 1 action, use Notice if your message require many messages') : void 0; // return first element only while keeping it inside an array
17255
+
17256
+ actions = [actions[0]];
17257
+ }
17258
+
17259
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
17260
+ ref: ref,
17261
+ className: classes,
17262
+ onClick: onRemove,
17263
+ tabIndex: "0",
17264
+ role: "button",
17265
+ onKeyPress: onRemove,
17266
+ "aria-label": Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_4__["__"])('Dismiss this notice')
17267
+ }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
17268
+ className: "components-snackbar__content"
17269
+ }, children, actions.map(function (_ref2, index) {
17270
+ var label = _ref2.label,
17271
+ _onClick = _ref2.onClick,
17272
+ url = _ref2.url;
17273
+ return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(___WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"], {
17274
+ key: index,
17275
+ href: url,
17276
+ isTertiary: true,
17277
+ onClick: function onClick(event) {
17278
+ event.stopPropagation();
17279
+
17280
+ if (_onClick) {
17281
+ _onClick(event);
17282
+ }
17283
+ },
17284
+ className: "components-snackbar__action"
17285
+ }, label);
17286
+ })));
17287
+ }
17288
+
17289
+ /* harmony default export */ __webpack_exports__["a"] = (Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["forwardRef"])(Snackbar));
17290
+ //# sourceMappingURL=index.js.map
17291
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(33)))
17292
+
17293
+ /***/ }),
17294
+
17295
+ /***/ 537:
17296
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
17297
+
17298
+ "use strict";
17299
+ /* WEBPACK VAR INJECTION */(function(global) {/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);
17300
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
17301
+ /* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(56);
17302
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(1);
17303
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);
17304
+
17305
+
17306
+
17307
+
17308
+
17309
+ var MAX_SIGNED_31_BIT_INT = 1073741823;
17310
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : {};
17311
+
17312
+ function getUniqueId() {
17313
+ var key = '__global_unique_id__';
17314
+ return commonjsGlobal[key] = (commonjsGlobal[key] || 0) + 1;
17315
+ }
17316
+
17317
+ function objectIs(x, y) {
17318
+ if (x === y) {
17319
+ return x !== 0 || 1 / x === 1 / y;
17320
+ } else {
17321
+ return x !== x && y !== y;
17322
+ }
17323
+ }
17324
+
17325
+ function createEventEmitter(value) {
17326
+ var handlers = [];
17327
+ return {
17328
+ on: function on(handler) {
17329
+ handlers.push(handler);
17330
+ },
17331
+ off: function off(handler) {
17332
+ handlers = handlers.filter(function (h) {
17333
+ return h !== handler;
17334
+ });
17335
+ },
17336
+ get: function get() {
17337
+ return value;
17338
+ },
17339
+ set: function set(newValue, changedBits) {
17340
+ value = newValue;
17341
+ handlers.forEach(function (handler) {
17342
+ return handler(value, changedBits);
17343
+ });
17344
+ }
17345
+ };
17346
+ }
17347
+
17348
+ function onlyChild(children) {
17349
+ return Array.isArray(children) ? children[0] : children;
17350
+ }
17351
+
17352
+ function createReactContext(defaultValue, calculateChangedBits) {
17353
+ var _Provider$childContex, _Consumer$contextType;
17354
+
17355
+ var contextProp = '__create-react-context-' + getUniqueId() + '__';
17356
+
17357
+ var Provider = /*#__PURE__*/function (_Component) {
17358
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(Provider, _Component);
17359
+
17360
+ function Provider() {
17361
+ var _this;
17362
+
17363
+ _this = _Component.apply(this, arguments) || this;
17364
+ _this.emitter = createEventEmitter(_this.props.value);
17365
+ return _this;
17366
+ }
17367
+
17368
+ var _proto = Provider.prototype;
17369
+
17370
+ _proto.getChildContext = function getChildContext() {
17371
+ var _ref;
17372
+
17373
+ return _ref = {}, _ref[contextProp] = this.emitter, _ref;
17374
+ };
17375
+
17376
+ _proto.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
17377
+ if (this.props.value !== nextProps.value) {
17378
+ var oldValue = this.props.value;
17379
+ var newValue = nextProps.value;
17380
+ var changedBits;
17381
+
17382
+ if (objectIs(oldValue, newValue)) {
17383
+ changedBits = 0;
17384
+ } else {
17385
+ changedBits = typeof calculateChangedBits === 'function' ? calculateChangedBits(oldValue, newValue) : MAX_SIGNED_31_BIT_INT;
17386
+
17387
+ if (false) {}
17388
+
17389
+ changedBits |= 0;
17390
+
17391
+ if (changedBits !== 0) {
17392
+ this.emitter.set(nextProps.value, changedBits);
17393
+ }
17394
+ }
17395
+ }
17396
+ };
17397
+
17398
+ _proto.render = function render() {
17399
+ return this.props.children;
17400
+ };
17401
+
17402
+ return Provider;
17403
+ }(react__WEBPACK_IMPORTED_MODULE_0__["Component"]);
17404
+
17405
+ Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[contextProp] = prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.object.isRequired, _Provider$childContex);
17406
+
17407
+ var Consumer = /*#__PURE__*/function (_Component2) {
17408
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(Consumer, _Component2);
17409
+
17410
+ function Consumer() {
17411
+ var _this2;
17412
+
17413
+ _this2 = _Component2.apply(this, arguments) || this;
17414
+ _this2.state = {
17415
+ value: _this2.getValue()
17416
+ };
17417
+
17418
+ _this2.onUpdate = function (newValue, changedBits) {
17419
+ var observedBits = _this2.observedBits | 0;
17420
+
17421
+ if ((observedBits & changedBits) !== 0) {
17422
+ _this2.setState({
17423
+ value: _this2.getValue()
17424
+ });
17425
+ }
17426
+ };
17427
+
17428
+ return _this2;
17429
+ }
17430
+
17431
+ var _proto2 = Consumer.prototype;
17432
+
17433
+ _proto2.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
17434
+ var observedBits = nextProps.observedBits;
17435
+ this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT : observedBits;
17436
+ };
17437
+
17438
+ _proto2.componentDidMount = function componentDidMount() {
17439
+ if (this.context[contextProp]) {
17440
+ this.context[contextProp].on(this.onUpdate);
17441
+ }
17442
+
17443
+ var observedBits = this.props.observedBits;
17444
+ this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT : observedBits;
17445
+ };
17446
+
17447
+ _proto2.componentWillUnmount = function componentWillUnmount() {
17448
+ if (this.context[contextProp]) {
17449
+ this.context[contextProp].off(this.onUpdate);
17450
+ }
17451
+ };
17452
+
17453
+ _proto2.getValue = function getValue() {
17454
+ if (this.context[contextProp]) {
17455
+ return this.context[contextProp].get();
17456
+ } else {
17457
+ return defaultValue;
17458
+ }
17459
+ };
17460
+
17461
+ _proto2.render = function render() {
17462
+ return onlyChild(this.props.children)(this.state.value);
17463
+ };
17464
+
17465
+ return Consumer;
17466
+ }(react__WEBPACK_IMPORTED_MODULE_0__["Component"]);
17467
+
17468
+ Consumer.contextTypes = (_Consumer$contextType = {}, _Consumer$contextType[contextProp] = prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.object, _Consumer$contextType);
17469
+ return {
17470
+ Provider: Provider,
17471
+ Consumer: Consumer
17472
+ };
17473
+ }
17474
+
17475
+ var index = react__WEBPACK_IMPORTED_MODULE_0___default.a.createContext || createReactContext;
17476
+
17477
+ /* harmony default export */ __webpack_exports__["a"] = (index);
17478
+
17479
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(46)))
17480
+
17481
+ /***/ }),
17482
+
17483
+ /***/ 538:
17484
+ /***/ (function(module, exports) {
17485
+
17486
+ (function() { module.exports = this["wc"]["customerEffortScore"]; }());
17487
+
17488
+ /***/ }),
17489
+
17490
+ /***/ 54:
17491
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
17492
+
17493
+ "use strict";
17494
+
17495
+ // EXPORTS
17496
+ __webpack_require__.d(__webpack_exports__, "e", function() { return /* binding */ TAB; });
17497
+ __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ ESCAPE; });
17498
+ __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ LEFT; });
17499
+ __webpack_require__.d(__webpack_exports__, "f", function() { return /* binding */ UP; });
17500
+ __webpack_require__.d(__webpack_exports__, "d", function() { return /* binding */ RIGHT; });
17501
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ DOWN; });
17502
+
17503
+ // UNUSED EXPORTS: BACKSPACE, ENTER, SPACE, DELETE, F10, ALT, CTRL, COMMAND, SHIFT, ZERO, modifiers, rawShortcut, displayShortcutList, displayShortcut, shortcutAriaLabel, isKeyboardEvent
17504
+
17505
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
17506
+ var defineProperty = __webpack_require__(8);
17507
+
17508
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 3 modules
17509
+ var toConsumableArray = __webpack_require__(27);
17510
+
17511
+ // EXTERNAL MODULE: external "lodash"
17512
+ var external_lodash_ = __webpack_require__(2);
17513
+
17514
+ // EXTERNAL MODULE: external {"this":["wp","i18n"]}
17515
+ var external_this_wp_i18n_ = __webpack_require__(3);
17516
+
17517
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/node_modules/@wordpress/keycodes/build-module/platform.js
17518
+ /**
17519
+ * External dependencies
17520
+ */
17521
+
17522
+ /**
17523
+ * Return true if platform is MacOS.
17524
+ *
17525
+ * @param {Object} _window window object by default; used for DI testing.
17526
+ *
17527
+ * @return {boolean} True if MacOS; false otherwise.
17528
+ */
17529
+
17530
+ function isAppleOS() {
17531
+ var _window = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
17532
+
17533
+ var platform = _window.navigator.platform;
17534
+ return platform.indexOf('Mac') !== -1 || Object(external_lodash_["includes"])(['iPad', 'iPhone'], platform);
17535
+ }
17536
+ //# sourceMappingURL=platform.js.map
17537
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/node_modules/@wordpress/keycodes/build-module/index.js
17538
+
17539
+
17540
+
17541
+ /**
17542
+ * Note: The order of the modifier keys in many of the [foo]Shortcut()
17543
+ * functions in this file are intentional and should not be changed. They're
17544
+ * designed to fit with the standard menu keyboard shortcuts shown in the
17545
+ * user's platform.
17546
+ *
17547
+ * For example, on MacOS menu shortcuts will place Shift before Command, but
17548
+ * on Windows Control will usually come first. So don't provide your own
17549
+ * shortcut combos directly to keyboardShortcut().
17550
+ */
17551
+
17552
+ /**
17553
+ * External dependencies
17554
+ */
17555
+
17556
+ /**
17557
+ * WordPress dependencies
17558
+ */
17559
+
17560
+
17561
+ /**
17562
+ * Internal dependencies
17563
+ */
17564
+
17565
+
17566
+ /**
17567
+ * @typedef {'primary'|'primaryShift'|'primaryAlt'|'secondary'|'access'|'ctrl'|'alt'|'ctrlShift'|'shift'|'shiftAlt'} WPKeycodeModifier
17568
+ */
17569
+
17570
+ /**
17571
+ * An object of handler functions for each of the possible modifier
17572
+ * combinations. A handler will return a value for a given key.
17573
+ *
17574
+ * @typedef {Record<WPKeycodeModifier, (key:string)=>any>} WPKeycodeHandlerByModifier
17575
+ */
17576
+
17577
+ /**
17578
+ * Keycode for BACKSPACE key.
17579
+ */
17580
+
17581
+ var BACKSPACE = 8;
17582
+ /**
17583
+ * Keycode for TAB key.
17584
+ */
17585
+
17586
+ var TAB = 9;
17587
+ /**
17588
+ * Keycode for ENTER key.
17589
+ */
17590
+
17591
+ var ENTER = 13;
17592
+ /**
17593
+ * Keycode for ESCAPE key.
17594
+ */
17595
+
17596
+ var ESCAPE = 27;
17597
+ /**
17598
+ * Keycode for SPACE key.
17599
+ */
17600
+
17601
+ var SPACE = 32;
17602
+ /**
17603
+ * Keycode for LEFT key.
17604
+ */
17605
+
17606
+ var LEFT = 37;
17607
+ /**
17608
+ * Keycode for UP key.
17609
+ */
17610
+
17611
+ var UP = 38;
17612
+ /**
17613
+ * Keycode for RIGHT key.
17614
+ */
17615
+
17616
+ var RIGHT = 39;
17617
+ /**
17618
+ * Keycode for DOWN key.
17619
+ */
17620
+
17621
+ var DOWN = 40;
17622
+ /**
17623
+ * Keycode for DELETE key.
17624
+ */
17625
+
17626
+ var DELETE = 46;
17627
+ /**
17628
+ * Keycode for F10 key.
17629
+ */
17630
+
17631
+ var F10 = 121;
17632
+ /**
17633
+ * Keycode for ALT key.
17634
+ */
17635
+
17636
+ var ALT = 'alt';
17637
+ /**
17638
+ * Keycode for CTRL key.
17639
+ */
17640
+
17641
+ var CTRL = 'ctrl';
17642
+ /**
17643
+ * Keycode for COMMAND/META key.
17644
+ */
17645
+
17646
+ var COMMAND = 'meta';
17647
+ /**
17648
+ * Keycode for SHIFT key.
17649
+ */
17650
+
17651
+ var SHIFT = 'shift';
17652
+ /**
17653
+ * Keycode for ZERO key.
17654
+ */
17655
+
17656
+ var ZERO = 48;
17657
+ /**
17658
+ * Object that contains functions that return the available modifier
17659
+ * depending on platform.
17660
+ *
17661
+ * - `primary`: takes a isApple function as a parameter.
17662
+ * - `primaryShift`: takes a isApple function as a parameter.
17663
+ * - `primaryAlt`: takes a isApple function as a parameter.
17664
+ * - `secondary`: takes a isApple function as a parameter.
17665
+ * - `access`: takes a isApple function as a parameter.
17666
+ * - `ctrl`
17667
+ * - `alt`
17668
+ * - `ctrlShift`
17669
+ * - `shift`
17670
+ * - `shiftAlt`
17671
+ */
17672
+
17673
+ var modifiers = {
17674
+ primary: function primary(_isApple) {
17675
+ return _isApple() ? [COMMAND] : [CTRL];
17676
+ },
17677
+ primaryShift: function primaryShift(_isApple) {
17678
+ return _isApple() ? [SHIFT, COMMAND] : [CTRL, SHIFT];
17679
+ },
17680
+ primaryAlt: function primaryAlt(_isApple) {
17681
+ return _isApple() ? [ALT, COMMAND] : [CTRL, ALT];
17682
+ },
17683
+ secondary: function secondary(_isApple) {
17684
+ return _isApple() ? [SHIFT, ALT, COMMAND] : [CTRL, SHIFT, ALT];
17685
+ },
17686
+ access: function access(_isApple) {
17687
+ return _isApple() ? [CTRL, ALT] : [SHIFT, ALT];
17688
+ },
17689
+ ctrl: function ctrl() {
17690
+ return [CTRL];
17691
+ },
17692
+ alt: function alt() {
17693
+ return [ALT];
17694
+ },
17695
+ ctrlShift: function ctrlShift() {
17696
+ return [CTRL, SHIFT];
17697
+ },
17698
+ shift: function shift() {
17699
+ return [SHIFT];
17700
+ },
17701
+ shiftAlt: function shiftAlt() {
17702
+ return [SHIFT, ALT];
17703
+ }
17704
+ };
17705
+ /**
17706
+ * An object that contains functions to get raw shortcuts.
17707
+ * E.g. rawShortcut.primary( 'm' ) will return 'meta+m' on Mac.
17708
+ * These are intended for user with the KeyboardShortcuts component or TinyMCE.
17709
+ *
17710
+ * @type {WPKeycodeHandlerByModifier} Keyed map of functions to raw shortcuts.
17711
+ */
17712
+
17713
+ var rawShortcut = Object(external_lodash_["mapValues"])(modifiers, function (modifier) {
17714
+ return function (character) {
17715
+ var _isApple = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : isAppleOS;
17716
+
17717
+ return [].concat(Object(toConsumableArray["a" /* default */])(modifier(_isApple)), [character.toLowerCase()]).join('+');
17718
+ };
17719
+ });
17720
+ /**
17721
+ * Return an array of the parts of a keyboard shortcut chord for display
17722
+ * E.g displayShortcutList.primary( 'm' ) will return [ '⌘', 'M' ] on Mac.
17723
+ *
17724
+ * @type {WPKeycodeHandlerByModifier} Keyed map of functions to shortcut
17725
+ * sequences.
17726
+ */
17727
+
17728
+ var displayShortcutList = Object(external_lodash_["mapValues"])(modifiers, function (modifier) {
17729
+ return function (character) {
17730
+ var _replacementKeyMap;
17731
+
17732
+ var _isApple = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : isAppleOS;
17733
+
17734
+ var isApple = _isApple();
17735
+
17736
+ var replacementKeyMap = (_replacementKeyMap = {}, Object(defineProperty["a" /* default */])(_replacementKeyMap, ALT, isApple ? '⌥' : 'Alt'), Object(defineProperty["a" /* default */])(_replacementKeyMap, CTRL, isApple ? '⌃' : 'Ctrl'), Object(defineProperty["a" /* default */])(_replacementKeyMap, COMMAND, '⌘'), Object(defineProperty["a" /* default */])(_replacementKeyMap, SHIFT, isApple ? '⇧' : 'Shift'), _replacementKeyMap);
17737
+ var modifierKeys = modifier(_isApple).reduce(function (accumulator, key) {
17738
+ var replacementKey = Object(external_lodash_["get"])(replacementKeyMap, key, key); // If on the Mac, adhere to platform convention and don't show plus between keys.
17739
+
17740
+ if (isApple) {
17741
+ return [].concat(Object(toConsumableArray["a" /* default */])(accumulator), [replacementKey]);
17742
+ }
17743
+
17744
+ return [].concat(Object(toConsumableArray["a" /* default */])(accumulator), [replacementKey, '+']);
17745
+ }, []);
17746
+ var capitalizedCharacter = Object(external_lodash_["capitalize"])(character);
17747
+ return [].concat(Object(toConsumableArray["a" /* default */])(modifierKeys), [capitalizedCharacter]);
17748
+ };
17749
+ });
17750
+ /**
17751
+ * An object that contains functions to display shortcuts.
17752
+ * E.g. displayShortcut.primary( 'm' ) will return '⌘M' on Mac.
17753
+ *
17754
+ * @type {WPKeycodeHandlerByModifier} Keyed map of functions to display
17755
+ * shortcuts.
17756
+ */
17757
+
17758
+ var displayShortcut = Object(external_lodash_["mapValues"])(displayShortcutList, function (shortcutList) {
17759
+ return function (character) {
17760
+ var _isApple = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : isAppleOS;
17761
+
17762
+ return shortcutList(character, _isApple).join('');
17763
+ };
17764
+ });
17765
+ /**
17766
+ * An object that contains functions to return an aria label for a keyboard shortcut.
17767
+ * E.g. shortcutAriaLabel.primary( '.' ) will return 'Command + Period' on Mac.
17768
+ *
17769
+ * @type {WPKeycodeHandlerByModifier} Keyed map of functions to shortcut ARIA
17770
+ * labels.
17771
+ */
17772
+
17773
+ var shortcutAriaLabel = Object(external_lodash_["mapValues"])(modifiers, function (modifier) {
17774
+ return function (character) {
17775
+ var _replacementKeyMap2;
17776
+
17777
+ var _isApple = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : isAppleOS;
17778
+
17779
+ var isApple = _isApple();
17780
+
17781
+ var replacementKeyMap = (_replacementKeyMap2 = {}, Object(defineProperty["a" /* default */])(_replacementKeyMap2, SHIFT, 'Shift'), Object(defineProperty["a" /* default */])(_replacementKeyMap2, COMMAND, isApple ? 'Command' : 'Control'), Object(defineProperty["a" /* default */])(_replacementKeyMap2, CTRL, 'Control'), Object(defineProperty["a" /* default */])(_replacementKeyMap2, ALT, isApple ? 'Option' : 'Alt'), Object(defineProperty["a" /* default */])(_replacementKeyMap2, ',', Object(external_this_wp_i18n_["__"])('Comma')), Object(defineProperty["a" /* default */])(_replacementKeyMap2, '.', Object(external_this_wp_i18n_["__"])('Period')), Object(defineProperty["a" /* default */])(_replacementKeyMap2, '`', Object(external_this_wp_i18n_["__"])('Backtick')), _replacementKeyMap2);
17782
+ return [].concat(Object(toConsumableArray["a" /* default */])(modifier(_isApple)), [character]).map(function (key) {
17783
+ return Object(external_lodash_["capitalize"])(Object(external_lodash_["get"])(replacementKeyMap, key, key));
17784
+ }).join(isApple ? ' ' : ' + ');
17785
+ };
17786
+ });
17787
+ /**
17788
+ * From a given KeyboardEvent, returns an array of active modifier constants for
17789
+ * the event.
17790
+ *
17791
+ * @param {KeyboardEvent} event Keyboard event.
17792
+ *
17793
+ * @return {Array<ALT|CTRL|COMMAND|SHIFT>} Active modifier constants.
17794
+ */
17795
+
17796
+ function getEventModifiers(event) {
17797
+ return [ALT, CTRL, COMMAND, SHIFT].filter(function (key) {
17798
+ return event["".concat(key, "Key")];
17799
+ });
17800
+ }
17801
+ /**
17802
+ * An object that contains functions to check if a keyboard event matches a
17803
+ * predefined shortcut combination.
17804
+ * E.g. isKeyboardEvent.primary( event, 'm' ) will return true if the event
17805
+ * signals pressing ⌘M.
17806
+ *
17807
+ * @type {WPKeycodeHandlerByModifier} Keyed map of functions to match events.
17808
+ */
17809
+
17810
+
17811
+ var isKeyboardEvent = Object(external_lodash_["mapValues"])(modifiers, function (getModifiers) {
17812
+ return function (event, character) {
17813
+ var _isApple = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : isAppleOS;
17814
+
17815
+ var mods = getModifiers(_isApple);
17816
+ var eventMods = getEventModifiers(event);
17817
+
17818
+ if (Object(external_lodash_["xor"])(mods, eventMods).length) {
17819
+ return false;
17820
+ }
17821
+
17822
+ if (!character) {
17823
+ return Object(external_lodash_["includes"])(mods, event.key.toLowerCase());
17824
+ }
17825
+
17826
+ return event.key === character;
17827
+ };
17828
+ });
17829
+ //# sourceMappingURL=index.js.map
17830
+
17831
+ /***/ }),
17832
+
17833
+ /***/ 543:
17834
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
17835
+
17836
+ "use strict";
17837
+
17838
+ // EXTERNAL MODULE: external {"this":["wp","element"]}
17839
+ var external_this_wp_element_ = __webpack_require__(0);
17840
+
17841
+ // EXTERNAL MODULE: external {"this":["wp","plugins"]}
17842
+ var external_this_wp_plugins_ = __webpack_require__(296);
17843
+
17844
+ // EXTERNAL MODULE: external {"this":["wc","navigation"]}
17845
+ var external_this_wc_navigation_ = __webpack_require__(32);
17846
+
17847
+ // EXTERNAL MODULE: external {"this":["wc","data"]}
17848
+ var external_this_wc_data_ = __webpack_require__(35);
17849
+
17850
+ // EXTERNAL MODULE: ./client/navigation/style.scss
17851
+ var style = __webpack_require__(574);
17852
+
17853
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
17854
+ var slicedToArray = __webpack_require__(34);
17855
+ var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
17856
+
17857
+ // EXTERNAL MODULE: external {"this":["wp","i18n"]}
17858
+ var external_this_wp_i18n_ = __webpack_require__(3);
17859
+
17860
+ // EXTERNAL MODULE: ./node_modules/@wordpress/compose/build-module/higher-order/compose.js
17861
+ var compose = __webpack_require__(277);
17862
+
17863
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
17864
+ var defineProperty = __webpack_require__(8);
17865
+
17866
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
17867
+ var esm_slicedToArray = __webpack_require__(26);
17868
+
17869
+ // EXTERNAL MODULE: ./node_modules/classnames/index.js
17870
+ var classnames = __webpack_require__(4);
17871
+ var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
17872
+
17873
+ // EXTERNAL MODULE: external "lodash"
17874
+ var external_lodash_ = __webpack_require__(2);
17875
+
17876
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/animate/index.js
17877
+ var animate = __webpack_require__(134);
17878
+
17879
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/constants.js
17880
+ var ROOT_MENU = 'root';
17881
+ //# sourceMappingURL=constants.js.map
17882
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/context.js
17883
+ /**
17884
+ * External dependencies
17885
+ */
17886
+
17887
+ /**
17888
+ * WordPress dependencies
17889
+ */
17890
+
17891
+
17892
+ /**
17893
+ * Internal dependencies
17894
+ */
17895
+
17896
+
17897
+ var NavigationContext = Object(external_this_wp_element_["createContext"])({
17898
+ activeItem: undefined,
17899
+ activeMenu: ROOT_MENU,
17900
+ setActiveMenu: external_lodash_["noop"],
17901
+ navigationTree: {
17902
+ items: {},
17903
+ getItem: external_lodash_["noop"],
17904
+ addItem: external_lodash_["noop"],
17905
+ removeItem: external_lodash_["noop"],
17906
+ menus: {},
17907
+ getMenu: external_lodash_["noop"],
17908
+ addMenu: external_lodash_["noop"],
17909
+ removeMenu: external_lodash_["noop"]
17910
+ }
17911
+ });
17912
+ var context_useNavigationContext = function useNavigationContext() {
17913
+ return Object(external_this_wp_element_["useContext"])(NavigationContext);
17914
+ };
17915
+ //# sourceMappingURL=context.js.map
17916
+ // EXTERNAL MODULE: ./node_modules/@emotion/styled-base/dist/styled-base.browser.esm.js + 1 modules
17917
+ var styled_base_browser_esm = __webpack_require__(41);
17918
+
17919
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/utils/colors-values.js
17920
+ var colors_values = __webpack_require__(91);
17921
+
17922
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/button/index.js
17923
+ var build_module_button = __webpack_require__(72);
17924
+
17925
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/text/index.js + 3 modules
17926
+ var build_module_text = __webpack_require__(190);
17927
+
17928
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/utils/reduce-motion.js
17929
+ /**
17930
+ * Allows users to opt-out of animations via OS-level preferences.
17931
+ *
17932
+ * @param {string} prop CSS Property name
17933
+ * @return {string} Generated CSS code for the reduced style
17934
+ */
17935
+ function reduceMotion() {
17936
+ var prop = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'transition';
17937
+ var style;
17938
+
17939
+ switch (prop) {
17940
+ case 'transition':
17941
+ style = 'transition-duration: 0ms;';
17942
+ break;
17943
+
17944
+ case 'animation':
17945
+ style = 'animation-duration: 1ms;';
17946
+ break;
17947
+
17948
+ default:
17949
+ style = "\n\t\t\t\tanimation-duration: 1ms;\n\t\t\t\ttransition-duration: 0ms;\n\t\t\t";
17950
+ }
17951
+
17952
+ return "\n\t\t@media ( prefers-reduced-motion: reduce ) {\n\t\t\t".concat(style, ";\n\t\t}\n\t");
17953
+ }
17954
+ //# sourceMappingURL=reduce-motion.js.map
17955
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/styles/navigation-styles.js
17956
+
17957
+
17958
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
17959
+
17960
+ /**
17961
+ * Internal dependencies
17962
+ */
17963
+
17964
+
17965
+
17966
+
17967
+ var NavigationUI = Object(styled_base_browser_esm["a" /* default */])("div", {
17968
+ target: "ejwewyf0",
17969
+ label: "NavigationUI"
17970
+ })("width:100%;background-color:", colors_values["b" /* G2 */].darkGray.primary, ";color:#f0f0f0;padding:0 8px;overflow:hidden;" + ( true ? "" : undefined));
17971
+ var MenuUI = Object(styled_base_browser_esm["a" /* default */])("div", {
17972
+ target: "ejwewyf1",
17973
+ label: "MenuUI"
17974
+ })( true ? {
17975
+ name: "1wlvkgj",
17976
+ styles: "margin-top:24px;margin-bottom:24px;display:flex;flex-direction:column;ul{padding:0;margin:0;list-style:none;}.components-navigation__back-button{margin-bottom:24px;}"
17977
+ } : undefined);
17978
+ var MenuBackButtonUI = /*#__PURE__*/Object(styled_base_browser_esm["a" /* default */])(build_module_button["a" /* default */], {
17979
+ target: "ejwewyf2",
17980
+ label: "MenuBackButtonUI"
17981
+ })("&.is-tertiary{color:", colors_values["b" /* G2 */].lightGray.ui, ";&:hover:not(:disabled ){color:#ddd;box-shadow:none;}&:active:not(:disabled ){background:transparent;color:#ddd;}}" + ( true ? "" : undefined));
17982
+ var MenuTitleUI = /*#__PURE__*/Object(styled_base_browser_esm["a" /* default */])(build_module_text["a" /* default */], {
17983
+ target: "ejwewyf3",
17984
+ label: "MenuTitleUI"
17985
+ })("padding:4px 0 4px 16px;margin-bottom:8px;color:", colors_values["b" /* G2 */].gray[100], ";" + ( true ? "" : undefined));
17986
+ var GroupTitleUI = /*#__PURE__*/Object(styled_base_browser_esm["a" /* default */])(build_module_text["a" /* default */], {
17987
+ target: "ejwewyf4",
17988
+ label: "GroupTitleUI"
17989
+ })("margin-top:8px;padding:4px 0 4px 16px;text-transform:uppercase;color:", colors_values["b" /* G2 */].gray[100], ";" + ( true ? "" : undefined));
17990
+ var ItemUI = Object(styled_base_browser_esm["a" /* default */])("li", {
17991
+ target: "ejwewyf5",
17992
+ label: "ItemUI"
17993
+ })("border-radius:2px;color:", colors_values["b" /* G2 */].lightGray.ui, ";button,a{margin:0;font-weight:400;font-size:14px;line-height:20px;padding-left:16px;padding-right:16px;width:100%;color:", colors_values["b" /* G2 */].lightGray.ui, ";&:hover,&:focus:not( [aria-disabled='true'] ):active,&:active:not( [aria-disabled='true'] ):active{color:#ddd;}}&.is-active{background-color:", colors_values["c" /* UI */].theme, ";color:", colors_values["c" /* UI */].textDark, ";button,a{color:", colors_values["c" /* UI */].textDark, ";}}svg path{color:", colors_values["b" /* G2 */].lightGray.ui, ";}" + ( true ? "" : undefined));
17994
+ var ItemBadgeUI = Object(styled_base_browser_esm["a" /* default */])("span", {
17995
+ target: "ejwewyf6",
17996
+ label: "ItemBadgeUI"
17997
+ })("margin-left:8px;display:inline-flex;padding:4px 12px;border-radius:2px;animation:fade-in 250ms ease-out;@keyframes fade-in{from{opacity:0;}to{opacity:1;}}", reduceMotion('animation'), ";" + ( true ? "" : undefined));
17998
+ var ItemTitleUI = /*#__PURE__*/Object(styled_base_browser_esm["a" /* default */])(build_module_text["a" /* default */], {
17999
+ target: "ejwewyf7",
18000
+ label: "ItemTitleUI"
18001
+ })( true ? {
18002
+ name: "zs804i",
18003
+ styles: "margin-right:auto;text-align:left;"
18004
+ } : undefined);
18005
+ //# sourceMappingURL=navigation-styles.js.map
18006
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/use-navigation-tree-nodes.js
18007
+
18008
+
18009
+
18010
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
18011
+
18012
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
18013
+
18014
+ /**
18015
+ * External dependencies
18016
+ */
18017
+
18018
+ /**
18019
+ * WordPress dependencies
18020
+ */
18021
+
18022
+
18023
+ var use_navigation_tree_nodes_useNavigationTreeNodes = function useNavigationTreeNodes() {
18024
+ var _useState = Object(external_this_wp_element_["useState"])({}),
18025
+ _useState2 = Object(esm_slicedToArray["a" /* default */])(_useState, 2),
18026
+ nodes = _useState2[0],
18027
+ setNodes = _useState2[1];
18028
+
18029
+ var getNode = function getNode(key) {
18030
+ return nodes[key];
18031
+ };
18032
+
18033
+ var addNode = function addNode(key, value) {
18034
+ return setNodes(function (original) {
18035
+ return _objectSpread(_objectSpread({}, original), {}, Object(defineProperty["a" /* default */])({}, key, Object(external_lodash_["omit"])(value, 'children')));
18036
+ });
18037
+ };
18038
+
18039
+ var removeNode = function removeNode(key) {
18040
+ return setNodes(function (original) {
18041
+ return Object(external_lodash_["omit"])(original, key);
18042
+ });
18043
+ };
18044
+
18045
+ return {
18046
+ nodes: nodes,
18047
+ getNode: getNode,
18048
+ addNode: addNode,
18049
+ removeNode: removeNode
18050
+ };
18051
+ };
18052
+ //# sourceMappingURL=use-navigation-tree-nodes.js.map
18053
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/use-create-navigation-tree.js
18054
+ /**
18055
+ * Internal dependencies
18056
+ */
18057
+
18058
+ var use_create_navigation_tree_useCreateNavigationTree = function useCreateNavigationTree() {
18059
+ var _useNavigationTreeNod = use_navigation_tree_nodes_useNavigationTreeNodes(),
18060
+ items = _useNavigationTreeNod.nodes,
18061
+ getItem = _useNavigationTreeNod.getNode,
18062
+ addItem = _useNavigationTreeNod.addNode,
18063
+ removeItem = _useNavigationTreeNod.removeNode;
18064
+
18065
+ var _useNavigationTreeNod2 = use_navigation_tree_nodes_useNavigationTreeNodes(),
18066
+ menus = _useNavigationTreeNod2.nodes,
18067
+ getMenu = _useNavigationTreeNod2.getNode,
18068
+ addMenu = _useNavigationTreeNod2.addNode,
18069
+ removeMenu = _useNavigationTreeNod2.removeNode;
18070
+
18071
+ return {
18072
+ items: items,
18073
+ getItem: getItem,
18074
+ addItem: addItem,
18075
+ removeItem: removeItem,
18076
+ menus: menus,
18077
+ getMenu: getMenu,
18078
+ addMenu: addMenu,
18079
+ removeMenu: removeMenu
18080
+ };
18081
+ };
18082
+ //# sourceMappingURL=use-create-navigation-tree.js.map
18083
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/index.js
18084
+
18085
+
18086
+
18087
+
18088
+ /**
18089
+ * External dependencies
18090
+ */
18091
+
18092
+
18093
+ /**
18094
+ * WordPress dependencies
18095
+ */
18096
+
18097
+
18098
+ /**
18099
+ * Internal dependencies
18100
+ */
18101
+
18102
+
18103
+
18104
+
18105
+
18106
+
18107
+ function navigation_Navigation(_ref) {
18108
+ var activeItem = _ref.activeItem,
18109
+ _ref$activeMenu = _ref.activeMenu,
18110
+ activeMenu = _ref$activeMenu === void 0 ? ROOT_MENU : _ref$activeMenu,
18111
+ children = _ref.children,
18112
+ className = _ref.className,
18113
+ _ref$onActivateMenu = _ref.onActivateMenu,
18114
+ onActivateMenu = _ref$onActivateMenu === void 0 ? external_lodash_["noop"] : _ref$onActivateMenu;
18115
+
18116
+ var _useState = Object(external_this_wp_element_["useState"])(activeMenu),
18117
+ _useState2 = Object(esm_slicedToArray["a" /* default */])(_useState, 2),
18118
+ menu = _useState2[0],
18119
+ setMenu = _useState2[1];
18120
+
18121
+ var _useState3 = Object(external_this_wp_element_["useState"])(),
18122
+ _useState4 = Object(esm_slicedToArray["a" /* default */])(_useState3, 2),
18123
+ slideOrigin = _useState4[0],
18124
+ setSlideOrigin = _useState4[1];
18125
+
18126
+ var navigationTree = use_create_navigation_tree_useCreateNavigationTree();
18127
+
18128
+ var setActiveMenu = function setActiveMenu(menuId) {
18129
+ var slideInOrigin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'left';
18130
+
18131
+ if (!navigationTree.getMenu(menuId)) {
18132
+ return;
18133
+ }
18134
+
18135
+ setSlideOrigin(slideInOrigin);
18136
+ setMenu(menuId);
18137
+ onActivateMenu(menuId);
18138
+ }; // Used to prevent the sliding animation on mount
18139
+
18140
+
18141
+ var isMounted = Object(external_this_wp_element_["useRef"])(false);
18142
+ Object(external_this_wp_element_["useEffect"])(function () {
18143
+ if (!isMounted.current) {
18144
+ isMounted.current = true;
18145
+ }
18146
+ }, []);
18147
+ Object(external_this_wp_element_["useEffect"])(function () {
18148
+ if (activeMenu !== menu) {
18149
+ setActiveMenu(activeMenu);
18150
+ }
18151
+ }, [activeMenu]);
18152
+ var context = {
18153
+ activeItem: activeItem,
18154
+ activeMenu: menu,
18155
+ setActiveMenu: setActiveMenu,
18156
+ navigationTree: navigationTree
18157
+ };
18158
+ var classes = classnames_default()('components-navigation', className);
18159
+ return Object(external_this_wp_element_["createElement"])(NavigationUI, {
18160
+ className: classes
18161
+ }, Object(external_this_wp_element_["createElement"])(animate["a" /* default */], {
18162
+ key: menu,
18163
+ type: "slide-in",
18164
+ options: {
18165
+ origin: slideOrigin
18166
+ }
18167
+ }, function (_ref2) {
18168
+ var animateClassName = _ref2.className;
18169
+ return Object(external_this_wp_element_["createElement"])("div", {
18170
+ className: classnames_default()(Object(defineProperty["a" /* default */])({}, animateClassName, isMounted.current && slideOrigin))
18171
+ }, Object(external_this_wp_element_["createElement"])(NavigationContext.Provider, {
18172
+ value: context
18173
+ }, children));
18174
+ }));
18175
+ }
18176
+ //# sourceMappingURL=index.js.map
18177
+ // EXTERNAL MODULE: ./node_modules/@wordpress/components/node_modules/@wordpress/icons/build-module/icon/index.js
18178
+ var icon = __webpack_require__(575);
18179
+
18180
+ // EXTERNAL MODULE: ./node_modules/@wordpress/primitives/build-module/svg/index.js
18181
+ var svg = __webpack_require__(88);
18182
+
18183
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/node_modules/@wordpress/icons/build-module/library/chevron-left.js
18184
+
18185
+
18186
+ /**
18187
+ * WordPress dependencies
18188
+ */
18189
+
18190
+ var chevronLeft = Object(external_this_wp_element_["createElement"])(svg["c" /* SVG */], {
18191
+ xmlns: "http://www.w3.org/2000/svg",
18192
+ viewBox: "0 0 24 24"
18193
+ }, Object(external_this_wp_element_["createElement"])(svg["b" /* Path */], {
18194
+ d: "M14.6 7l-1.2-1L8 12l5.4 6 1.2-1-4.6-5z"
18195
+ }));
18196
+ /* harmony default export */ var chevron_left = (chevronLeft);
18197
+ //# sourceMappingURL=chevron-left.js.map
18198
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/back-button/index.js
18199
+
18200
+
18201
+ /**
18202
+ * External dependencies
18203
+ */
18204
+
18205
+ /**
18206
+ * WordPress dependencies
18207
+ */
18208
+
18209
+
18210
+
18211
+ /**
18212
+ * Internal dependencies
18213
+ */
18214
+
18215
+
18216
+
18217
+ function NavigationBackButton(_ref) {
18218
+ var _navigationTree$getMe;
18219
+
18220
+ var backButtonLabel = _ref.backButtonLabel,
18221
+ className = _ref.className,
18222
+ href = _ref.href,
18223
+ _onClick = _ref.onClick,
18224
+ parentMenu = _ref.parentMenu;
18225
+
18226
+ var _useNavigationContext = context_useNavigationContext(),
18227
+ setActiveMenu = _useNavigationContext.setActiveMenu,
18228
+ navigationTree = _useNavigationContext.navigationTree;
18229
+
18230
+ var classes = classnames_default()('components-navigation__back-button', className);
18231
+ var parentMenuTitle = (_navigationTree$getMe = navigationTree.getMenu(parentMenu)) === null || _navigationTree$getMe === void 0 ? void 0 : _navigationTree$getMe.title;
18232
+ return Object(external_this_wp_element_["createElement"])(MenuBackButtonUI, {
18233
+ className: classes,
18234
+ isTertiary: true,
18235
+ href: href,
18236
+ onClick: function onClick() {
18237
+ return parentMenu ? setActiveMenu(parentMenu, 'right') : _onClick;
18238
+ }
18239
+ }, Object(external_this_wp_element_["createElement"])(icon["a" /* default */], {
18240
+ icon: chevron_left
18241
+ }), backButtonLabel || parentMenuTitle || Object(external_this_wp_i18n_["__"])('Back'));
18242
+ }
18243
+ //# sourceMappingURL=index.js.map
18244
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/menu/context.js
18245
+ /**
18246
+ * WordPress dependencies
18247
+ */
18248
+
18249
+ var NavigationMenuContext = Object(external_this_wp_element_["createContext"])({
18250
+ menu: undefined,
18251
+ isActive: false
18252
+ });
18253
+ var context_useNavigationMenuContext = function useNavigationMenuContext() {
18254
+ return Object(external_this_wp_element_["useContext"])(NavigationMenuContext);
18255
+ };
18256
+ //# sourceMappingURL=context.js.map
18257
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/menu/use-navigation-tree-menu.js
18258
+
18259
+
18260
+ function use_navigation_tree_menu_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
18261
+
18262
+ function use_navigation_tree_menu_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { use_navigation_tree_menu_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { use_navigation_tree_menu_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
18263
+
18264
+ /**
18265
+ * WordPress dependencies
18266
+ */
18267
+
18268
+ /**
18269
+ * Internal dependencies
18270
+ */
18271
+
18272
+
18273
+
18274
+ var use_navigation_tree_menu_useNavigationTreeMenu = function useNavigationTreeMenu(props) {
18275
+ var _useNavigationContext = context_useNavigationContext(),
18276
+ _useNavigationContext2 = _useNavigationContext.navigationTree,
18277
+ addMenu = _useNavigationContext2.addMenu,
18278
+ removeMenu = _useNavigationContext2.removeMenu;
18279
+
18280
+ var key = props.menu || ROOT_MENU;
18281
+ Object(external_this_wp_element_["useEffect"])(function () {
18282
+ addMenu(key, use_navigation_tree_menu_objectSpread(use_navigation_tree_menu_objectSpread({}, props), {}, {
18283
+ menu: key
18284
+ }));
18285
+ return function () {
18286
+ removeMenu(key);
18287
+ };
18288
+ }, []);
18289
+ };
18290
+ //# sourceMappingURL=use-navigation-tree-menu.js.map
18291
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/menu/index.js
18292
+
18293
+
18294
+ /**
18295
+ * External dependencies
18296
+ */
18297
+
18298
+ /**
18299
+ * Internal dependencies
18300
+ */
18301
+
18302
+
18303
+
18304
+
18305
+
18306
+
18307
+
18308
+ function NavigationMenu(props) {
18309
+ var backButtonLabel = props.backButtonLabel,
18310
+ children = props.children,
18311
+ className = props.className,
18312
+ _props$menu = props.menu,
18313
+ menu = _props$menu === void 0 ? ROOT_MENU : _props$menu,
18314
+ parentMenu = props.parentMenu,
18315
+ title = props.title;
18316
+ use_navigation_tree_menu_useNavigationTreeMenu(props);
18317
+
18318
+ var _useNavigationContext = context_useNavigationContext(),
18319
+ activeMenu = _useNavigationContext.activeMenu;
18320
+
18321
+ var isActive = activeMenu === menu;
18322
+ var classes = classnames_default()('components-navigation__menu', className);
18323
+ var context = {
18324
+ menu: menu,
18325
+ isActive: isActive
18326
+ }; // Keep the children rendered to make sure inactive items are included in the navigation tree
18327
+
18328
+ if (!isActive) {
18329
+ return Object(external_this_wp_element_["createElement"])(NavigationMenuContext.Provider, {
18330
+ value: context
18331
+ }, children);
18332
+ }
18333
+
18334
+ return Object(external_this_wp_element_["createElement"])(NavigationMenuContext.Provider, {
18335
+ value: context
18336
+ }, Object(external_this_wp_element_["createElement"])(MenuUI, {
18337
+ className: classes
18338
+ }, parentMenu && Object(external_this_wp_element_["createElement"])(NavigationBackButton, {
18339
+ backButtonLabel: backButtonLabel,
18340
+ parentMenu: parentMenu
18341
+ }), title && Object(external_this_wp_element_["createElement"])(MenuTitleUI, {
18342
+ as: "h2",
18343
+ className: "components-navigation__menu-title",
18344
+ variant: "subtitle"
18345
+ }, title), Object(external_this_wp_element_["createElement"])("ul", null, children)));
18346
+ }
18347
+ //# sourceMappingURL=index.js.map
18348
+ // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigation/group/index.js
18349
+
18350
+
18351
+ /**
18352
+ * External dependencies
18353
+ */
18354
+
18355
+ /**
18356
+ * Internal dependencies
18357
+ */
18358
+
18359
+
18360
+
18361
+ function NavigationGroup(_ref) {
18362
+ var children = _ref.children,
18363
+ className = _ref.className,
18364
+ title = _ref.title;
18365
+
18366
+ var _useNavigationMenuCon = context_useNavigationMenuContext(),
18367
+ isActive = _useNavigationMenuCon.isActive; // Keep the children rendered to make sure inactive items are included in the navigation tree
18368
+
18369
+
18370
+ if (!isActive) {
18371
+ return children;
18372
+ }
18373
+
18374
+ var classes = classnames_default()('components-navigation__group', className);
18375
+ return Object(external_this_wp_element_["createElement"])("li", {
18376
+ className: classes
18377
+ }, title && Object(external_this_wp_element_["createElement"])(GroupTitleUI, {
18378
+ as: "h3",
18379
+ className: "components-navigation__group-title",
18380
+ variant: "caption"
18381
+ }, title), Object(external_this_wp_element_["createElement"])("ul", null, children));
18382
+ }
18383
+ //# sourceMappingURL=index.js.map
18384
+ // EXTERNAL MODULE: ./client/settings/index.js
18385
+ var settings = __webpack_require__(36);
18386
+
18387
+ // EXTERNAL MODULE: external {"this":["wp","data"]}
18388
+ var external_this_wp_data_ = __webpack_require__(20);
18389
+
18390
+ // CONCATENATED MODULE: ./client/navigation/utils.js
18391
+ /**
18392
+ * External dependencies
18393
+ */
18394
+
18395
+ /**
18396
+ * Get the params from a location as a key/value pair object.
18397
+ *
18398
+ * @param {Object} location Window location
18399
+ * @return {Object} Params
18400
+ */
18401
+
18402
+ var getParams = function getParams(location) {
18403
+ var params = {};
18404
+
18405
+ if (location.search) {
18406
+ new URLSearchParams(location.search.substring(1)).forEach(function (value, key) {
18407
+ params[key] = value;
18408
+ });
18409
+ }
18410
+
18411
+ return params;
18412
+ };
18413
+ /**
18414
+ * Get the full URL if a relative path is passed.
18415
+ *
18416
+ * @param {string} url URL
18417
+ * @return {string} Full URL
18418
+ */
18419
+
18420
+ var getFullUrl = function getFullUrl(url) {
18421
+ var _window$location = window.location,
18422
+ origin = _window$location.origin,
18423
+ pathname = _window$location.pathname,
18424
+ search = _window$location.search;
18425
+
18426
+ if (url.indexOf('#') === 0) {
18427
+ return origin + pathname + search + url;
18428
+ }
18429
+
18430
+ if (url.indexOf('http') === 0) {
18431
+ return url;
18432
+ }
18433
+
18434
+ return origin + url;
18435
+ };
18436
+ /**
18437
+ * Check to see if a URL matches a given window location.
18438
+ *
18439
+ * @param {Object} location Window location
18440
+ * @param {string} url URL to compare
18441
+ * @return {number} Number of matches or 0 if not matched.
18442
+ */
18443
+
18444
+ var getMatchScore = function getMatchScore(location, url) {
18445
+ if (!url) {
18446
+ return;
18447
+ }
18448
+
18449
+ var fullUrl = getFullUrl(url);
18450
+ var urlLocation = new URL(fullUrl);
18451
+ var urlOrigin = urlLocation.origin,
18452
+ urlPathname = urlLocation.pathname;
18453
+ var hash = location.hash,
18454
+ origin = location.origin,
18455
+ pathname = location.pathname,
18456
+ search = location.search; // Exact match found.
18457
+
18458
+ if (origin + pathname + search + hash === fullUrl) {
18459
+ return Number.MAX_SAFE_INTEGER;
18460
+ } // Matched URL without hash.
18461
+
18462
+
18463
+ if (hash.length && origin + pathname + search === fullUrl) {
18464
+ return Number.MAX_SAFE_INTEGER - 1;
18465
+ }
18466
+
18467
+ var urlParams = getParams(urlLocation); // Post type match.
18468
+
18469
+ if (window.wcNavigation.postType === urlParams.post_type && urlPathname.indexOf('edit.php') >= 0 && origin === urlOrigin) {
18470
+ return Number.MAX_SAFE_INTEGER - 2;
18471
+ } // Add points for each matching param.
18472
+
18473
+
18474
+ var matchingParamCount = 0;
18475
+ var locationParams = getParams(location);
18476
+ Object.keys(urlParams).forEach(function (key) {
18477
+ if (urlParams[key] === locationParams[key]) {
18478
+ matchingParamCount++;
18479
+ }
18480
+ });
18481
+ return origin === urlOrigin && pathname === urlPathname ? matchingParamCount : 0;
18482
+ };
18483
+ /**
18484
+ * Adds a listener that runs on history change.
18485
+ *
18486
+ * @param {Function} listener Listener to add on history change.
18487
+ * @return {Function} Function to remove listeners.
18488
+ */
18489
+
18490
+ var addHistoryListener = function addHistoryListener(listener) {
18491
+ // Monkey patch pushState to allow trigger the pushstate event listener.
18492
+ if (!window.wcNavigation.historyPatched) {
18493
+ (function (history) {
18494
+ /* global CustomEvent */
18495
+ var pushState = history.pushState;
18496
+ var replaceState = history.replaceState;
18497
+
18498
+ history.pushState = function (state) {
18499
+ var pushStateEvent = new CustomEvent('pushstate', {
18500
+ state: state
18501
+ });
18502
+ window.dispatchEvent(pushStateEvent);
18503
+ return pushState.apply(history, arguments);
18504
+ };
18505
+
18506
+ history.replaceState = function (state) {
18507
+ var replaceStateEvent = new CustomEvent('replacestate', {
18508
+ state: state
18509
+ });
18510
+ window.dispatchEvent(replaceStateEvent);
18511
+ return replaceState.apply(history, arguments);
18512
+ };
18513
+
18514
+ window.wcNavigation.historyPatched = true;
18515
+ })(window.history);
18516
+ }
18517
+
18518
+ window.addEventListener('popstate', listener);
18519
+ window.addEventListener('pushstate', listener);
18520
+ window.addEventListener('replacestate', listener);
18521
+ return function () {
18522
+ window.removeEventListener('popstate', listener);
18523
+ window.removeEventListener('pushstate', listener);
18524
+ window.removeEventListener('replacestate', listener);
18525
+ };
18526
+ };
18527
+ /**
18528
+ * Get the closest matching item.
18529
+ *
18530
+ * @param {Array} items An array of items to match against.
18531
+ */
18532
+
18533
+ var utils_getMatchingItem = function getMatchingItem(items) {
18534
+ var matchedItem = null;
18535
+ var highestMatch = 0;
18536
+ items.forEach(function (item) {
18537
+ var score = getMatchScore(window.location, Object(settings["f" /* getAdminLink */])(item.url));
18538
+
18539
+ if (score >= highestMatch && score > 0) {
18540
+ matchedItem = item;
18541
+ highestMatch = score;
18542
+ }
18543
+ });
18544
+ return matchedItem || null;
18545
+ };
18546
+ // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/icon/index.js
18547
+ var build_module_icon = __webpack_require__(570);
18548
+
18549
+ // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/wordpress.js
18550
+
18551
+
18552
+ /**
18553
+ * WordPress dependencies
18554
+ */
18555
+
18556
+ var wordpress = Object(external_this_wp_element_["createElement"])(svg["c" /* SVG */], {
18557
+ xmlns: "http://www.w3.org/2000/svg",
18558
+ viewBox: "-2 -2 24 24"
18559
+ }, Object(external_this_wp_element_["createElement"])(svg["b" /* Path */], {
18560
+ d: "M20 10c0-5.51-4.49-10-10-10C4.48 0 0 4.49 0 10c0 5.52 4.48 10 10 10 5.51 0 10-4.48 10-10zM7.78 15.37L4.37 6.22c.55-.02 1.17-.08 1.17-.08.5-.06.44-1.13-.06-1.11 0 0-1.45.11-2.37.11-.18 0-.37 0-.58-.01C4.12 2.69 6.87 1.11 10 1.11c2.33 0 4.45.87 6.05 2.34-.68-.11-1.65.39-1.65 1.58 0 .74.45 1.36.9 2.1.35.61.55 1.36.55 2.46 0 1.49-1.4 5-1.4 5l-3.03-8.37c.54-.02.82-.17.82-.17.5-.05.44-1.25-.06-1.22 0 0-1.44.12-2.38.12-.87 0-2.33-.12-2.33-.12-.5-.03-.56 1.2-.06 1.22l.92.08 1.26 3.41zM17.41 10c.24-.64.74-1.87.43-4.25.7 1.29 1.05 2.71 1.05 4.25 0 3.29-1.73 6.24-4.4 7.78.97-2.59 1.94-5.2 2.92-7.78zM6.1 18.09C3.12 16.65 1.11 13.53 1.11 10c0-1.3.23-2.48.72-3.59C3.25 10.3 4.67 14.2 6.1 18.09zm4.03-6.63l2.58 6.98c-.86.29-1.76.45-2.71.45-.79 0-1.57-.11-2.29-.33.81-2.38 1.62-4.74 2.42-7.1z"
18561
+ }));
18562
+ /* harmony default export */ var library_wordpress = (wordpress);
18563
+ //# sourceMappingURL=wordpress.js.map
18564
+ // EXTERNAL MODULE: external "React"
18565
+ var external_React_ = __webpack_require__(6);
18566
+
18567
+ // EXTERNAL MODULE: ./client/hooks/useIsScrolled.js
18568
+ var useIsScrolled = __webpack_require__(295);
18569
+
18570
+ // CONCATENATED MODULE: ./client/navigation/components/header/index.js
18571
+
18572
+
18573
+ /**
18574
+ * External dependencies
18575
+ */
18576
+
18577
+
18578
+
18579
+
18580
+
18581
+
18582
+
18583
+
18584
+ /**
18585
+ * Internal dependencies
18586
+ */
18587
+
18588
+
18589
+
18590
+ var header_Header = function Header() {
18591
+ var siteTitle = Object(settings["g" /* getSetting */])('siteTitle', '');
18592
+ var siteUrl = Object(settings["g" /* getSetting */])('siteUrl', '');
18593
+ var isScrolled = Object(useIsScrolled["a" /* default */])();
18594
+
18595
+ var toggleFolded = function toggleFolded() {
18596
+ document.body.classList.toggle('is-folded');
18597
+ };
18598
+
18599
+ var foldOnMobile = function foldOnMobile() {
18600
+ var screenWidth = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document.body.clientWidth;
18601
+ var isSmallScreen = screenWidth <= 960;
18602
+ document.body.classList[isSmallScreen ? 'add' : 'remove']('is-folded');
18603
+ };
18604
+
18605
+ Object(external_React_["useEffect"])(function () {
18606
+ foldOnMobile();
18607
+ var foldEvents = [{
18608
+ eventName: 'orientationchange',
18609
+ handler: function handler(e) {
18610
+ return foldOnMobile(e.target.screen.availWidth);
18611
+ }
18612
+ }, {
18613
+ eventName: 'resize',
18614
+ handler: Object(external_lodash_["debounce"])(function () {
18615
+ return foldOnMobile();
18616
+ }, 200)
18617
+ }];
18618
+
18619
+ for (var _i = 0, _foldEvents = foldEvents; _i < _foldEvents.length; _i++) {
18620
+ var _foldEvents$_i = _foldEvents[_i],
18621
+ eventName = _foldEvents$_i.eventName,
18622
+ handler = _foldEvents$_i.handler;
18623
+ window.addEventListener(eventName, handler, false);
18624
+ }
18625
+ }, []);
18626
+ var buttonIcon = Object(external_this_wp_element_["createElement"])(build_module_icon["a" /* default */], {
18627
+ size: "36px",
18628
+ icon: library_wordpress
18629
+ });
18630
+
18631
+ var _useSelect = Object(external_this_wp_data_["useSelect"])(function (select) {
18632
+ var _select = select('core/data'),
18633
+ isResolving = _select.isResolving;
18634
+
18635
+ var _select2 = select('core'),
18636
+ getEntityRecord = _select2.getEntityRecord;
18637
+
18638
+ var siteData = getEntityRecord('root', '__unstableBase', undefined) || {};
18639
+ return {
18640
+ isRequestingSiteIcon: isResolving('core', 'getEntityRecord', ['root', '__unstableBase', undefined]),
18641
+ siteIconUrl: siteData.siteIconUrl
18642
+ };
18643
+ }),
18644
+ isRequestingSiteIcon = _useSelect.isRequestingSiteIcon,
18645
+ siteIconUrl = _useSelect.siteIconUrl;
18646
+
18647
+ if (siteIconUrl) {
18648
+ buttonIcon = Object(external_this_wp_element_["createElement"])("img", {
18649
+ alt: Object(external_this_wp_i18n_["__"])('Site Icon'),
18650
+ src: siteIconUrl
18651
+ });
18652
+ } else if (isRequestingSiteIcon) {
18653
+ buttonIcon = null;
18654
+ }
18655
+
18656
+ var className = classnames_default()('woocommerce-navigation-header', {
18657
+ 'is-scrolled': isScrolled
18658
+ });
18659
+ return Object(external_this_wp_element_["createElement"])("div", {
18660
+ className: className
18661
+ }, Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
18662
+ onClick: function onClick() {
18663
+ return toggleFolded();
18664
+ },
18665
+ className: "woocommerce-navigation-header__site-icon"
18666
+ }, buttonIcon), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
18667
+ href: siteUrl,
18668
+ className: "woocommerce-navigation-header__site-title",
18669
+ as: "span"
18670
+ }, siteTitle));
18671
+ };
18672
+
18673
+ /* harmony default export */ var header = (header_Header);
18674
+ // EXTERNAL MOD