Smart Floating / Sticky Buttons – Call, Sharing, Chat Widgets & More – Buttonizer - Version 2.3.0

Version Description

Release date: 4 Feb 2021

Changelog: - Added close on button click - Added Line social sharing - Added WP Popups action - Added Join Signal Group action - Added export & import functionality - Discontinued 'Popups - WordPress Popup' action, please use the alternative 'WP Popups' - Updated our color picker - Fixed issue with not being able to click a button in single button mode - Fixed issue with background image - Fixed issue with 'open on hover' on single button mode

If you experience bugs, problems or you just have some feedback, let us know on our Buttonizer community!

Download this release

Release Info

Developer buttonizer
Plugin Icon wp plugin Smart Floating / Sticky Buttons – Call, Sharing, Chat Widgets & More – Buttonizer
Version 2.3.0
Comparing to
See all releases

Code changes from version 2.2.5 to 2.3.0

Files changed (3) hide show
  1. app/Admin/Translations.php +48 -2
  2. assets/dashboard.css +12 -11
  3. assets/dashboard.js +11460 -12451
app/Admin/Translations.php CHANGED
@@ -27,6 +27,7 @@ class Translations {
27
  'saving' => $this->saving(),
28
  'revert' => $this->reverting(),
29
  'welcome' => $this->welcome(),
 
30
  'settings' => $this->settings(),
31
  'settings_window' => $this->settings_window(),
32
  'bar' => $this->bar(),
@@ -420,6 +421,7 @@ class Translations {
420
  return [
421
  'settings' => __('Settings', 'buttonizer-multifunctional-button'),
422
  'tippy_single_button' => __('Add button to enable group settings', 'buttonizer-multifunctional-button'),
 
423
 
424
  // Setting categories
425
  'setting_categories' => [
@@ -447,6 +449,15 @@ class Translations {
447
  'description' => __('This is the color of your button group and also the default color for your buttons within this group.', 'buttonizer-multifunctional-button'),
448
  ],
449
 
 
 
 
 
 
 
 
 
 
450
  'font_family' => [
451
  'title' => __('Font family', 'buttonizer-multifunctional-button'),
452
  'placeholder' => __('Type a custom font', 'buttonizer-multifunctional-button'),
@@ -610,6 +621,10 @@ class Translations {
610
  'title' => __('Close on click outside', 'buttonizer-multifunctional-button'),
611
  'description' => __('This will close the menu if you click outside Buttonizer.', 'buttonizer-multifunctional-button'),
612
  ],
 
 
 
 
613
  'open_on_mouseover' => [
614
  'title' => __('Open on hover', 'buttonizer-multifunctional-button'),
615
  'description' => __('This will open the menu if you hover the group button.', 'buttonizer-multifunctional-button'),
@@ -744,7 +759,7 @@ class Translations {
744
  'messenger_chat' => [
745
  'description' => sprintf(
746
  // translators: %s and %s will be replaced with links
747
- __('New, Facebook Messenger Chat Widget! First, you\'ll need to <a %1$s>whitelist</a> your site on Facebook. Then add your <a %2$s>Page ID</a> into the input above.', 'buttonizer-multifunctional-button'),
748
  'href="https://developers.facebook.com/docs/messenger-platform/reference/messenger-profile-api/domain-whitelisting#page_settings" target="_blank"', 'href="https://www.facebook.com/help/1503421039731588" target="_blank"'
749
  ),
750
  'invalid' => __('Invalid Page ID.', 'buttonizer-multifunctional-button'),
@@ -762,7 +777,11 @@ class Translations {
762
  __('Share on %s', 'buttonizer-multifunctional-button'),
763
  '{0}'
764
  ),
765
- 'social_sharing' => __('Social Sharing', 'buttonizer-multifunctional-button'),
 
 
 
 
766
  'clipboard' => __('Copy URL to clipboard', 'buttonizer-multifunctional-button'),
767
  'print_page' => __('Print page', 'buttonizer-multifunctional-button'),
768
 
@@ -772,6 +791,12 @@ class Translations {
772
  '{0}'
773
  ),
774
 
 
 
 
 
 
 
775
  'url' => [
776
  'name' => __('Website URL', 'buttonizer-multifunctional-button'),
777
  'invalid' => __('This URL appears to be invalid. The button may not work as expected.', 'buttonizer-multifunctional-button'),
@@ -799,6 +824,12 @@ class Translations {
799
  'href="https://tweeterid.com/" target="_blank"', 'href="https://help.twitter.com/nl/using-twitter/direct-messages#receive" target="_blank"'
800
  ),
801
 
 
 
 
 
 
 
802
  // Currently not translatable
803
  'chat' => [
804
  "sms" => "SMS",
@@ -810,6 +841,7 @@ class Translations {
810
  "waze" => "Waze",
811
  "telegram" => "Telegram",
812
  "viber" => "Viber",
 
813
  ],
814
 
815
  // Currently not translatable
@@ -1307,6 +1339,20 @@ class Translations {
1307
  ];
1308
  }
1309
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1310
  /**
1311
  * Random Tips
1312
  *
27
  'saving' => $this->saving(),
28
  'revert' => $this->reverting(),
29
  'welcome' => $this->welcome(),
30
+ 'import_export' => $this->import_export(),
31
  'settings' => $this->settings(),
32
  'settings_window' => $this->settings_window(),
33
  'bar' => $this->bar(),
421
  return [
422
  'settings' => __('Settings', 'buttonizer-multifunctional-button'),
423
  'tippy_single_button' => __('Add button to enable group settings', 'buttonizer-multifunctional-button'),
424
+ 'more_actions' => __('More actions', 'buttonizer-multifunctional-button'),
425
 
426
  // Setting categories
427
  'setting_categories' => [
449
  'description' => __('This is the color of your button group and also the default color for your buttons within this group.', 'buttonizer-multifunctional-button'),
450
  ],
451
 
452
+ 'color_picker' => [
453
+ 'options' => [
454
+ 'solid' => __('Solid Color', 'buttonizer-multifunctional-button'),
455
+ 'linear' => __('Linear Gradient', 'buttonizer-multifunctional-button'),
456
+ 'radial' => __('Radial Gradient', 'buttonizer-multifunctional-button')
457
+ ],
458
+ 'new_swatch_description' => __('Click to add swatch. Right-click any swatch to remove.', 'buttonizer-multifunctional-button')
459
+ ],
460
+
461
  'font_family' => [
462
  'title' => __('Font family', 'buttonizer-multifunctional-button'),
463
  'placeholder' => __('Type a custom font', 'buttonizer-multifunctional-button'),
621
  'title' => __('Close on click outside', 'buttonizer-multifunctional-button'),
622
  'description' => __('This will close the menu if you click outside Buttonizer.', 'buttonizer-multifunctional-button'),
623
  ],
624
+ 'close_on_click_inside' => [
625
+ 'title' => __('Close on button click', 'buttonizer-multifunctional-button'),
626
+ 'description' => __('This will close the menu if you click on a button inside this group.', 'buttonizer-multifunctional-button'),
627
+ ],
628
  'open_on_mouseover' => [
629
  'title' => __('Open on hover', 'buttonizer-multifunctional-button'),
630
  'description' => __('This will open the menu if you hover the group button.', 'buttonizer-multifunctional-button'),
759
  'messenger_chat' => [
760
  'description' => sprintf(
761
  // translators: %s and %s will be replaced with links
762
+ __('Facebook Messenger Chat Widget! First, you\'ll need to <a %1$s>whitelist</a> your site on Facebook. Then add your <a %2$s>Page ID</a> into the input above.', 'buttonizer-multifunctional-button'),
763
  'href="https://developers.facebook.com/docs/messenger-platform/reference/messenger-profile-api/domain-whitelisting#page_settings" target="_blank"', 'href="https://www.facebook.com/help/1503421039731588" target="_blank"'
764
  ),
765
  'invalid' => __('Invalid Page ID.', 'buttonizer-multifunctional-button'),
777
  __('Share on %s', 'buttonizer-multifunctional-button'),
778
  '{0}'
779
  ),
780
+ 'social_sharing' => [
781
+ 'social_sharing' => __('Social Sharing', 'buttonizer-multifunctional-button'),
782
+ 'popular' => __('Popular Social Sharing', 'buttonizer-multifunctional-button'),
783
+ 'other' => __('Other Social Sharing', 'buttonizer-multifunctional-button'),
784
+ ],
785
  'clipboard' => __('Copy URL to clipboard', 'buttonizer-multifunctional-button'),
786
  'print_page' => __('Print page', 'buttonizer-multifunctional-button'),
787
 
791
  '{0}'
792
  ),
793
 
794
+ 'action_discontinued' => sprintf(
795
+ // translators: %1$s will be replaced with a function name, %2$s will be replaced with the new functionality and %3$s with the link. Example 'Popups - Wordpress Popups has been discontinued and replaced with WP Popups – WordPress Popup builder'
796
+ __('%1$s has been discontinued and replaced with <a %3$s>%2$s</a>.', 'buttonizer-multifunctional-button'),
797
+ '<i>{0}</i>', '{1}', 'href="{2}" target="_blank"'
798
+ ),
799
+
800
  'url' => [
801
  'name' => __('Website URL', 'buttonizer-multifunctional-button'),
802
  'invalid' => __('This URL appears to be invalid. The button may not work as expected.', 'buttonizer-multifunctional-button'),
824
  'href="https://tweeterid.com/" target="_blank"', 'href="https://help.twitter.com/nl/using-twitter/direct-messages#receive" target="_blank"'
825
  ),
826
 
827
+ 'signal_group_info' => sprintf(
828
+ // translators: %1$s will be replaced with a link
829
+ __('Paste the generated Signal group URL into the field. If you need more information about how to enable group invite links, <a %1$s>click here</a>.', 'buttonizer-multifunctional-button'),
830
+ 'href="https://support.signal.org/hc/en-us/articles/360051086971-Group-Link-or-QR-code" target="_blank"'
831
+ ),
832
+
833
  // Currently not translatable
834
  'chat' => [
835
  "sms" => "SMS",
841
  "waze" => "Waze",
842
  "telegram" => "Telegram",
843
  "viber" => "Viber",
844
+ "signal_group" => "Join signal group",
845
  ],
846
 
847
  // Currently not translatable
1339
  ];
1340
  }
1341
 
1342
+ /**
1343
+ * Saving
1344
+ *
1345
+ * @return array
1346
+ */
1347
+ private function import_export() {
1348
+ return [
1349
+ 'export_button' => __('Export button', 'buttonizer-multifunctional-button'),
1350
+ 'import_button' => __('Import button', 'buttonizer-multifunctional-button'),
1351
+ 'export_group' => __('Export group', 'buttonizer-multifunctional-button'),
1352
+ 'import_group' => __('Import group', 'buttonizer-multifunctional-button'),
1353
+ ];
1354
+ }
1355
+
1356
  /**
1357
  * Random Tips
1358
  *
assets/dashboard.css CHANGED
@@ -8,7 +8,7 @@
8
  *
9
  * Buttonizer is Freemium software. The free version (build) does not contain premium functionality.
10
  *
11
- * (C) 2017-2020 Buttonizer dev-version
12
  *
13
  */
14
  /*!
@@ -21,26 +21,24 @@
21
  *
22
  * Buttonizer is Freemium software. The free version (build) does not contain premium functionality.
23
  *
24
- * (C) 2017-2020 Buttonizer dev-version
25
  *
26
  */
27
- @import url(https://fonts.googleapis.com/css?family=Roboto:400,500,700&display=swap);.tippy-touch{cursor:pointer !important}.tippy-notransition{transition:none !important}.tippy-popper{max-width:400px;-webkit-perspective:800px;perspective:800px;z-index:9999;outline:0;transition-timing-function:cubic-bezier(0.165, 0.84, 0.44, 1);pointer-events:none}.tippy-popper.html-template{max-width:96%;max-width:calc(100% - 20px)}.tippy-popper[x-placement^=top] [x-arrow]{border-top:7px solid #333;border-right:7px solid transparent;border-left:7px solid transparent;bottom:-7px;margin:0 9px}.tippy-popper[x-placement^=top] [x-arrow].arrow-small{border-top:5px solid #333;border-right:5px solid transparent;border-left:5px solid transparent;bottom:-5px}.tippy-popper[x-placement^=top] [x-arrow].arrow-big{border-top:10px solid #333;border-right:10px solid transparent;border-left:10px solid transparent;bottom:-10px}.tippy-popper[x-placement^=top] [x-circle]{-webkit-transform-origin:0 33%;transform-origin:0 33%}.tippy-popper[x-placement^=top] [x-circle].enter{-webkit-transform:scale(1) translate(-50%, -55%);transform:scale(1) translate(-50%, -55%);opacity:1}.tippy-popper[x-placement^=top] [x-circle].leave{-webkit-transform:scale(0.15) translate(-50%, -50%);transform:scale(0.15) translate(-50%, -50%);opacity:0}.tippy-popper[x-placement^=top] .tippy-tooltip.light-theme [x-circle]{background-color:#fff}.tippy-popper[x-placement^=top] .tippy-tooltip.light-theme [x-arrow]{border-top:7px solid #fff;border-right:7px solid transparent;border-left:7px solid transparent}.tippy-popper[x-placement^=top] .tippy-tooltip.light-theme [x-arrow].arrow-small{border-top:5px solid #fff;border-right:5px solid transparent;border-left:5px solid transparent}.tippy-popper[x-placement^=top] .tippy-tooltip.light-theme [x-arrow].arrow-big{border-top:10px solid #fff;border-right:10px solid transparent;border-left:10px solid transparent}.tippy-popper[x-placement^=top] .tippy-tooltip.transparent-theme [x-circle]{background-color:rgba(0,0,0,0.7)}.tippy-popper[x-placement^=top] .tippy-tooltip.transparent-theme [x-arrow]{border-top:7px solid rgba(0,0,0,0.7);border-right:7px solid transparent;border-left:7px solid transparent}.tippy-popper[x-placement^=top] .tippy-tooltip.transparent-theme [x-arrow].arrow-small{border-top:5px solid rgba(0,0,0,0.7);border-right:5px solid transparent;border-left:5px solid transparent}.tippy-popper[x-placement^=top] .tippy-tooltip.transparent-theme [x-arrow].arrow-big{border-top:10px solid rgba(0,0,0,0.7);border-right:10px solid transparent;border-left:10px solid transparent}.tippy-popper[x-placement^=top] [data-animation=perspective]{-webkit-transform-origin:bottom;transform-origin:bottom}.tippy-popper[x-placement^=top] [data-animation=perspective].enter{opacity:1;-webkit-transform:translateY(-10px) rotateX(0);transform:translateY(-10px) rotateX(0)}.tippy-popper[x-placement^=top] [data-animation=perspective].leave{opacity:0;-webkit-transform:translateY(0) rotateX(90deg);transform:translateY(0) rotateX(90deg)}.tippy-popper[x-placement^=top] [data-animation=fade].enter{opacity:1;-webkit-transform:translateY(-10px);transform:translateY(-10px)}.tippy-popper[x-placement^=top] [data-animation=fade].leave{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}.tippy-popper[x-placement^=top] [data-animation=shift].enter{opacity:1;-webkit-transform:translateY(-10px);transform:translateY(-10px)}.tippy-popper[x-placement^=top] [data-animation=shift].leave{opacity:0;-webkit-transform:translateY(0);transform:translateY(0)}.tippy-popper[x-placement^=top] [data-animation=scale].enter{opacity:1;-webkit-transform:translateY(-10px) scale(1);transform:translateY(-10px) scale(1)}.tippy-popper[x-placement^=top] [data-animation=scale].leave{opacity:0;-webkit-transform:translateY(0) scale(0);transform:translateY(0) scale(0)}.tippy-popper[x-placement^=bottom] [x-arrow]{border-bottom:7px solid #333;border-right:7px solid transparent;border-left:7px solid transparent;top:-7px;margin:0 9px}.tippy-popper[x-placement^=bottom] [x-arrow].arrow-small{border-bottom:5px solid #333;border-right:5px solid transparent;border-left:5px solid transparent;top:-5px}.tippy-popper[x-placement^=bottom] [x-arrow].arrow-big{border-bottom:10px solid #333;border-right:10px solid transparent;border-left:10px solid transparent;top:-10px}.tippy-popper[x-placement^=bottom] [x-circle]{-webkit-transform-origin:0 -50%;transform-origin:0 -50%}.tippy-popper[x-placement^=bottom] [x-circle].enter{-webkit-transform:scale(1) translate(-50%, -45%);transform:scale(1) translate(-50%, -45%);opacity:1}.tippy-popper[x-placement^=bottom] [x-circle].leave{-webkit-transform:scale(0.15) translate(-50%, -5%);transform:scale(0.15) translate(-50%, -5%);opacity:0}.tippy-popper[x-placement^=bottom] .tippy-tooltip.light-theme [x-circle]{background-color:#fff}.tippy-popper[x-placement^=bottom] .tippy-tooltip.light-theme [x-arrow]{border-bottom:7px solid #fff;border-right:7px solid transparent;border-left:7px solid transparent}.tippy-popper[x-placement^=bottom] .tippy-tooltip.light-theme [x-arrow].arrow-small{border-bottom:5px solid #fff;border-right:5px solid transparent;border-left:5px solid transparent}.tippy-popper[x-placement^=bottom] .tippy-tooltip.light-theme [x-arrow].arrow-big{border-bottom:10px solid #fff;border-right:10px solid transparent;border-left:10px solid transparent}.tippy-popper[x-placement^=bottom] .tippy-tooltip.transparent-theme [x-circle]{background-color:rgba(0,0,0,0.7)}.tippy-popper[x-placement^=bottom] .tippy-tooltip.transparent-theme [x-arrow]{border-bottom:7px solid rgba(0,0,0,0.7);border-right:7px solid transparent;border-left:7px solid transparent}.tippy-popper[x-placement^=bottom] .tippy-tooltip.transparent-theme [x-arrow].arrow-small{border-bottom:5px solid rgba(0,0,0,0.7);border-right:5px solid transparent;border-left:5px solid transparent}.tippy-popper[x-placement^=bottom] .tippy-tooltip.transparent-theme [x-arrow].arrow-big{border-bottom:10px solid rgba(0,0,0,0.7);border-right:10px solid transparent;border-left:10px solid transparent}.tippy-popper[x-placement^=bottom] [data-animation=perspective]{-webkit-transform-origin:top;transform-origin:top}.tippy-popper[x-placement^=bottom] [data-animation=perspective].enter{opacity:1;-webkit-transform:translateY(10px) rotateX(0);transform:translateY(10px) rotateX(0)}.tippy-popper[x-placement^=bottom] [data-animation=perspective].leave{opacity:0;-webkit-transform:translateY(0) rotateX(-90deg);transform:translateY(0) rotateX(-90deg)}.tippy-popper[x-placement^=bottom] [data-animation=fade].enter{opacity:1;-webkit-transform:translateY(10px);transform:translateY(10px)}.tippy-popper[x-placement^=bottom] [data-animation=fade].leave{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}.tippy-popper[x-placement^=bottom] [data-animation=shift].enter{opacity:1;-webkit-transform:translateY(10px);transform:translateY(10px)}.tippy-popper[x-placement^=bottom] [data-animation=shift].leave{opacity:0;-webkit-transform:translateY(0);transform:translateY(0)}.tippy-popper[x-placement^=bottom] [data-animation=scale].enter{opacity:1;-webkit-transform:translateY(10px) scale(1);transform:translateY(10px) scale(1)}.tippy-popper[x-placement^=bottom] [data-animation=scale].leave{opacity:0;-webkit-transform:translateY(0) scale(0);transform:translateY(0) scale(0)}.tippy-popper[x-placement^=left] [x-arrow]{border-left:7px solid #333;border-top:7px solid transparent;border-bottom:7px solid transparent;right:-7px;margin:6px 0}.tippy-popper[x-placement^=left] [x-arrow].arrow-small{border-left:5px solid #333;border-top:5px solid transparent;border-bottom:5px solid transparent;right:-5px}.tippy-popper[x-placement^=left] [x-arrow].arrow-big{border-left:10px solid #333;border-top:10px solid transparent;border-bottom:10px solid transparent;right:-10px}.tippy-popper[x-placement^=left] [x-circle]{-webkit-transform-origin:50% 0;transform-origin:50% 0}.tippy-popper[x-placement^=left] [x-circle].enter{-webkit-transform:scale(1) translate(-50%, -50%);transform:scale(1) translate(-50%, -50%);opacity:1}.tippy-popper[x-placement^=left] [x-circle].leave{-webkit-transform:scale(0.15) translate(-50%, -50%);transform:scale(0.15) translate(-50%, -50%);opacity:0}.tippy-popper[x-placement^=left] .tippy-tooltip.light-theme [x-circle]{background-color:#fff}.tippy-popper[x-placement^=left] .tippy-tooltip.light-theme [x-arrow]{border-left:7px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent}.tippy-popper[x-placement^=left] .tippy-tooltip.light-theme [x-arrow].arrow-small{border-left:5px solid #fff;border-top:5px solid transparent;border-bottom:5px solid transparent}.tippy-popper[x-placement^=left] .tippy-tooltip.light-theme [x-arrow].arrow-big{border-left:10px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}.tippy-popper[x-placement^=left] .tippy-tooltip.transparent-theme [x-circle]{background-color:rgba(0,0,0,0.7)}.tippy-popper[x-placement^=left] .tippy-tooltip.transparent-theme [x-arrow]{border-left:7px solid rgba(0,0,0,0.7);border-top:7px solid transparent;border-bottom:7px solid transparent}.tippy-popper[x-placement^=left] .tippy-tooltip.transparent-theme [x-arrow].arrow-small{border-left:5px solid rgba(0,0,0,0.7);border-top:5px solid transparent;border-bottom:5px solid transparent}.tippy-popper[x-placement^=left] .tippy-tooltip.transparent-theme [x-arrow].arrow-big{border-left:10px solid rgba(0,0,0,0.7);border-top:10px solid transparent;border-bottom:10px solid transparent}.tippy-popper[x-placement^=left] [data-animation=perspective]{-webkit-transform-origin:right;transform-origin:right}.tippy-popper[x-placement^=left] [data-animation=perspective].enter{opacity:1;-webkit-transform:translateX(-10px) rotateY(0);transform:translateX(-10px) rotateY(0)}.tippy-popper[x-placement^=left] [data-animation=perspective].leave{opacity:0;-webkit-transform:translateX(0) rotateY(-90deg);transform:translateX(0) rotateY(-90deg)}.tippy-popper[x-placement^=left] [data-animation=fade].enter{opacity:1;-webkit-transform:translateX(-10px);transform:translateX(-10px)}.tippy-popper[x-placement^=left] [data-animation=fade].leave{opacity:0;-webkit-transform:translateX(-10px);transform:translateX(-10px)}.tippy-popper[x-placement^=left] [data-animation=shift].enter{opacity:1;-webkit-transform:translateX(-10px);transform:translateX(-10px)}.tippy-popper[x-placement^=left] [data-animation=shift].leave{opacity:0;-webkit-transform:translateX(0);transform:translateX(0)}.tippy-popper[x-placement^=left] [data-animation=scale].enter{opacity:1;-webkit-transform:translateX(-10px) scale(1);transform:translateX(-10px) scale(1)}.tippy-popper[x-placement^=left] [data-animation=scale].leave{opacity:0;-webkit-transform:translateX(0) scale(0);transform:translateX(0) scale(0)}.tippy-popper[x-placement^=right] [x-arrow]{border-right:7px solid #333;border-top:7px solid transparent;border-bottom:7px solid transparent;left:-7px;margin:6px 0}.tippy-popper[x-placement^=right] [x-arrow].arrow-small{border-right:5px solid #333;border-top:5px solid transparent;border-bottom:5px solid transparent;left:-5px}.tippy-popper[x-placement^=right] [x-arrow].arrow-big{border-right:10px solid #333;border-top:10px solid transparent;border-bottom:10px solid transparent;left:-10px}.tippy-popper[x-placement^=right] [x-circle]{-webkit-transform-origin:-50% 0;transform-origin:-50% 0}.tippy-popper[x-placement^=right] [x-circle].enter{-webkit-transform:scale(1) translate(-50%, -50%);transform:scale(1) translate(-50%, -50%);opacity:1}.tippy-popper[x-placement^=right] [x-circle].leave{-webkit-transform:scale(0.15) translate(-50%, -50%);transform:scale(0.15) translate(-50%, -50%);opacity:0}.tippy-popper[x-placement^=right] .tippy-tooltip.light-theme [x-circle]{background-color:#fff}.tippy-popper[x-placement^=right] .tippy-tooltip.light-theme [x-arrow]{border-right:7px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent}.tippy-popper[x-placement^=right] .tippy-tooltip.light-theme [x-arrow].arrow-small{border-right:5px solid #fff;border-top:5px solid transparent;border-bottom:5px solid transparent}.tippy-popper[x-placement^=right] .tippy-tooltip.light-theme [x-arrow].arrow-big{border-right:10px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}.tippy-popper[x-placement^=right] .tippy-tooltip.transparent-theme [x-circle]{background-color:rgba(0,0,0,0.7)}.tippy-popper[x-placement^=right] .tippy-tooltip.transparent-theme [x-arrow]{border-right:7px solid rgba(0,0,0,0.7);border-top:7px solid transparent;border-bottom:7px solid transparent}.tippy-popper[x-placement^=right] .tippy-tooltip.transparent-theme [x-arrow].arrow-small{border-right:5px solid rgba(0,0,0,0.7);border-top:5px solid transparent;border-bottom:5px solid transparent}.tippy-popper[x-placement^=right] .tippy-tooltip.transparent-theme [x-arrow].arrow-big{border-right:10px solid rgba(0,0,0,0.7);border-top:10px solid transparent;border-bottom:10px solid transparent}.tippy-popper[x-placement^=right] [data-animation=perspective]{-webkit-transform-origin:left;transform-origin:left}.tippy-popper[x-placement^=right] [data-animation=perspective].enter{opacity:1;-webkit-transform:translateX(10px) rotateY(0);transform:translateX(10px) rotateY(0)}.tippy-popper[x-placement^=right] [data-animation=perspective].leave{opacity:0;-webkit-transform:translateX(0) rotateY(90deg);transform:translateX(0) rotateY(90deg)}.tippy-popper[x-placement^=right] [data-animation=fade].enter{opacity:1;-webkit-transform:translateX(10px);transform:translateX(10px)}.tippy-popper[x-placement^=right] [data-animation=fade].leave{opacity:0;-webkit-transform:translateX(10px);transform:translateX(10px)}.tippy-popper[x-placement^=right] [data-animation=shift].enter{opacity:1;-webkit-transform:translateX(10px);transform:translateX(10px)}.tippy-popper[x-placement^=right] [data-animation=shift].leave{opacity:0;-webkit-transform:translateX(0);transform:translateX(0)}.tippy-popper[x-placement^=right] [data-animation=scale].enter{opacity:1;-webkit-transform:translateX(10px) scale(1);transform:translateX(10px) scale(1)}.tippy-popper[x-placement^=right] [data-animation=scale].leave{opacity:0;-webkit-transform:translateX(0) scale(0);transform:translateX(0) scale(0)}.tippy-popper .tippy-tooltip.transparent-theme{background-color:rgba(0,0,0,0.7)}.tippy-popper .tippy-tooltip.transparent-theme[data-animatefill]{background-color:transparent}.tippy-popper .tippy-tooltip.light-theme{color:#26323d;box-shadow:0 4px 20px 4px rgba(0,20,60,0.1),0 4px 80px -8px rgba(0,20,60,0.2);background-color:#fff}.tippy-popper .tippy-tooltip.light-theme[data-animatefill]{background-color:transparent}.tippy-tooltip{position:relative;color:#fff;border-radius:4px;font-size:.95rem;padding:.4rem .8rem;text-align:center;will-change:transform;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#333}.tippy-tooltip--small{padding:.25rem .5rem;font-size:.8rem}.tippy-tooltip--big{padding:.6rem 1.2rem;font-size:1.2rem}.tippy-tooltip[data-animatefill]{overflow:hidden;background-color:transparent}.tippy-tooltip[data-interactive]{pointer-events:auto}.tippy-tooltip[data-inertia]{transition-timing-function:cubic-bezier(0.53, 2, 0.36, 0.85)}.tippy-tooltip [x-arrow]{position:absolute;width:0;height:0}.tippy-tooltip [x-circle]{position:absolute;will-change:transform;background-color:#333;border-radius:50%;width:130%;width:calc(110% + 2rem);left:50%;top:50%;z-index:-1;overflow:hidden;transition:all ease}.tippy-tooltip [x-circle]:before{content:"";padding-top:90%;float:left}@media (max-width: 450px){.tippy-popper{max-width:96%;max-width:calc(100% - 20px)}}
28
- [data-simplebar]{position:relative;flex-direction:column;flex-wrap:wrap;justify-content:flex-start;align-content:flex-start;align-items:flex-start}.simplebar-wrapper{overflow:hidden;width:inherit;height:inherit;max-width:inherit;max-height:inherit}.simplebar-mask{direction:inherit;position:absolute;overflow:hidden;padding:0;margin:0;left:0;top:0;bottom:0;right:0;width:auto !important;height:auto !important;z-index:0}.simplebar-offset{direction:inherit !important;box-sizing:inherit !important;resize:none !important;position:absolute;top:0;left:0;bottom:0;right:0;padding:0;margin:0;-webkit-overflow-scrolling:touch}.simplebar-content-wrapper{direction:inherit;box-sizing:border-box !important;position:relative;display:block;height:100%;width:auto;visibility:visible;max-width:100%;max-height:100%;scrollbar-width:none;-ms-overflow-style:none}.simplebar-content-wrapper::-webkit-scrollbar,.simplebar-hide-scrollbar::-webkit-scrollbar{width:0;height:0}.simplebar-content:before,.simplebar-content:after{content:' ';display:table}.simplebar-placeholder{max-height:100%;max-width:100%;width:100%;pointer-events:none}.simplebar-height-auto-observer-wrapper{box-sizing:inherit !important;height:100%;width:100%;max-width:1px;position:relative;float:left;max-height:1px;overflow:hidden;z-index:-1;padding:0;margin:0;pointer-events:none;flex-grow:inherit;flex-shrink:0;flex-basis:0}.simplebar-height-auto-observer{box-sizing:inherit;display:block;opacity:0;position:absolute;top:0;left:0;height:1000%;width:1000%;min-height:1px;min-width:1px;overflow:hidden;pointer-events:none;z-index:-1}.simplebar-track{z-index:1;position:absolute;right:0;bottom:0;pointer-events:none;overflow:hidden}[data-simplebar].simplebar-dragging .simplebar-content{pointer-events:none;user-select:none;-webkit-user-select:none}[data-simplebar].simplebar-dragging .simplebar-track{pointer-events:all}.simplebar-scrollbar{position:absolute;left:0;right:0;min-height:10px}.simplebar-scrollbar:before{position:absolute;content:'';background:black;border-radius:7px;left:2px;right:2px;opacity:0;transition:opacity 0.2s linear}.simplebar-scrollbar.simplebar-visible:before{opacity:0.5;transition:opacity 0s linear}.simplebar-track.simplebar-vertical{top:0;width:11px}.simplebar-track.simplebar-vertical .simplebar-scrollbar:before{top:2px;bottom:2px}.simplebar-track.simplebar-horizontal{left:0;height:11px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before{height:100%;left:2px;right:2px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar{right:auto;left:0;top:2px;height:7px;min-height:0;min-width:10px;width:auto}[data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical{right:auto;left:0}.hs-dummy-scrollbar-size{direction:rtl;position:fixed;opacity:0;visibility:hidden;height:500px;width:500px;overflow-y:hidden;overflow-x:scroll}.simplebar-hide-scrollbar{position:fixed;left:0;visibility:hidden;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}
29
  form{display:flex;flex-direction:column;align-items:stretch}form .MuiTextField-root{margin:1em}form .fullwidth-label{align-items:stretch !important}form .crash-report{margin-top:2em}
30
  .random-tip{background:#FFFFFF;border-radius:50px;margin:15px 0;display:flex;flex-flow:row wrap;height:72px;box-shadow:0 1px 1px 0 rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.16);color:#2E788A}.random-tip .buzz{background:#FDF2E8;position:relative;margin:8px;order:1;height:56px;width:56px;border-radius:60px;box-sizing:border-box}.random-tip .tip{margin:8px 20px 8px 8px;flex:1;order:2;display:flex;align-items:center;font-size:14px}
31
- .buttonizer-premium{background:#2d7688;background:-moz-linear-gradient(-45deg, #2d7688 0%, #187287 50%, #187287 50%, #f0841a 51%, #e8832c 98%);background:-webkit-linear-gradient(-45deg, #2d7688 0%, #187287 50%, #187287 50%, #f0841a 51%, #e8832c 98%);background:linear-gradient(135deg, #2d7688 0%, #187287 50%, #187287 50%, #f0841a 51%, #e8832c 98%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#2d7688', endColorstr='#e8832c',GradientType=1 );color:#FFFFFF;font-weight:500;font-size:13px;line-height:17px;padding:4px 20px;display:inline-block;vertical-align:middle;border-radius:4px;-moz-border-radius:4px;-webkit-border-radius:4px;margin-left:10px}.buttonizer-premium.premium-right{position:absolute;right:30px;top:19px;z-index:9}.MuiFormControl-root:not(.MuiTextField-root) .buttonizer-premium{margin-right:15px}
 
32
  .item-not-found{text-align:center;padding:40px 0}.item-not-found i{font-size:50px;display:block;margin:30px auto}.item-not-found h4{font-size:15px;margin:28px 0}
33
  .collapsible-group{margin:10px 20px}.collapsible-group>button{text-align:left;justify-content:normal;padding:0 15px;height:49px}.collapsible-group>button i{margin-left:10px;font-size:12px;-webkit-transition:all 150ms ease;-moz-transition:all 150ms ease;-ms-transition:all 150ms ease;-o-transition:all 150ms ease;transition:all 150ms ease}.collapsible-group .collapsible-body{padding:18px}.collapsible-group.collapsible-opened>button i{transform:rotate(-180deg)}
34
  .settings-container{display:flex;position:relative;margin-bottom:15px}.settings-container.disabled{opacity:0.5;user-select:none}.settings-title{padding-right:15px;padding:4.9px 15px 4.9px 0;margin-right:auto;flex-shrink:0;font-size:14px}.settings-content{display:flex;flex-shrink:1;align-self:center}.container-full-width .settings-content{width:66.666%}
35
- .knowledgebase-link{color:#2f7789;text-decoration:none}.knowledgebase-link.medium{font-size:14px !important}.knowledgebase-link.small{font-size:12px !important}.knowledgebase-link:hover{text-decoration:underline}
36
- .disable-setting.disabled{position:relative}.disable-setting.disabled .settings{opacity:0.5;pointer-events:none}.disable-setting.disabled .disable-content{position:absolute;bottom:0;top:0;left:0;right:0;text-align:center;max-width:100%;color:#2f7789;font-weight:900;display:flex;justify-content:center;align-items:center;user-select:none}
37
  .buttonizer-loading{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.67);z-index:99999;transition:350ms all ease-in-out;-moz-transition:350ms all ease-in-out;-webkit-transition:350ms all ease-in-out}.buttonizer-loading.site-loading{left:431px}@media screen and (max-width: 769px){.buttonizer-loading{left:0 !important}}.buttonizer-loading .middle{position:absolute;left:50%;top:50%;margin-left:-125px;margin-top:-64px;width:250px;text-align:center}.buttonizer-loading .middle img{position:absolute;left:50%;margin-left:-25%;top:18px}.buttonizer-loading .middle .loader-text{text-align:center;font-size:20px;margin-top:20px}.buttonizer-loading .middle .loader-text .slow-website{display:block}.buttonizer-loading .middle .loader-text .slow-website a{display:block;font-size:15px;text-decoration:none;margin-top:18px}.buttonizer-loading .middle svg{-webkit-animation:spin 1s linear infinite;-moz-animation:spin 1s linear infinite;animation:spin 1s linear infinite}@-moz-keyframes spin{100%{-moz-transform:rotate(360deg)}}@-webkit-keyframes spin{100%{-webkit-transform:rotate(360deg)}}@keyframes spin{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}
38
- .buttonizer-menu-item{display:block !important;width:100% !important;text-align:left;text-decoration:none;padding:10px 15px !important;border-bottom:1px solid #dbdbdb !important;transition:background 0.15s ease-in-out;height:auto !important;border-radius:0 !important}.buttonizer-menu-item:last-child{border:0 !important}.buttonizer-menu-item:hover{background:#eeeeee}.buttonizer-menu-item .title{display:block;color:#3d3d3d;font-size:13px;font-weight:600;margin-bottom:5px}.buttonizer-menu-item .description{display:block;color:#545454;font-weight:400;font-size:12px;line-height:20px;letter-spacing:0.5px;text-transform:none}
39
  .buttonizer-bar{position:fixed;left:0;top:0;bottom:0;width:430px;background:#f0f0f0;border-right:1px solid #d2d2d2}@media screen and (max-width: 769px){.buttonizer-bar{width:100%}}.buttonizer-bar.is-loading .router{opacity:0}.buttonizer-bar.is-loading .buttonizer-logo{display:none}.buttonizer-bar .router-window{position:absolute;top:0;bottom:56px;left:0;width:100%}.buttonizer-bar .router-window .simplebar-content-wrapper{height:100% !important}.buttonizer-bar .router-window .simplebar-placeholder{min-height:100vh}.buttonizer-bar .router-window .router{padding:0 30px 50px}.buttonizer-bar .buttonizer-logo img{max-width:200px;display:block;margin:20px auto 30px}.buttonizer-bar .bar-header{margin:10px 0}.buttonizer-bar .bar-header .breadcrumb{margin:15px 0 15px;display:flex}.buttonizer-bar .bar-header .breadcrumb button{height:28px;line-height:28px;padding:0 10px}.buttonizer-bar .bar-header .breadcrumb button .breadcrumb-text{white-space:nowrap;letter-spacing:0.07em;overflow:hidden;text-overflow:ellipsis;height:100%;display:inline-block;align-items:center}.buttonizer-bar .bar-header .breadcrumb button i{margin-left:10px;color:rgba(0,0,0,0.3);vertical-align:middle}.buttonizer-bar .bar-header .breadcrumb button.home-button{flex-shrink:0}.buttonizer-bar .bar-header .MuiTabs-flexContainer .MuiTab-textColorSecondary{color:#95bac3}.buttonizer-bar .bar-header .MuiTabs-flexContainer .MuiTab-textColorSecondary:hover{color:#2f7789}.buttonizer-bar .bar-header .MuiTabs-flexContainer .MuiTab-textColorSecondary.Mui-selected{color:#f08419}.buttonizer-bar .bar-header .MuiTabs-flexContainer a{min-width:unset}.buttonizer-bar .bar-header .MuiTabs-flexContainer a i{font-size:20px;margin-bottom:8px}.buttonizer-bar .bar-header .MuiTabs-flexContainer a .MuiTab-wrapper{font-weight:600;font-size:12px;letter-spacing:1.25006px}.buttonizer-bar .bar-footer{position:absolute;bottom:0;left:0;right:0;box-shadow:0 1px 1px 0 rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.16);background:white}.buttonizer-bar .bar-footer .bar-footer-container{display:flex;align-content:space-between;padding:10px}.buttonizer-bar .bar-footer .bar-footer-container .settings-button{font-size:20px;position:relative;margin-right:8px}.buttonizer-bar .bar-footer .bar-footer-container button{min-width:36px;height:36px}.buttonizer-bar .bar-footer .bar-footer-container button.MuiIconButton-root{padding:0;font-size:16px}.buttonizer-bar .bar-footer .bar-footer-container .MuiButton-Publish{padding:6px 16px !important;font-size:0.785rem !important}.buttonizer-bar .bar-footer .bar-footer-container .footer-button-group-start{position:relative;border-right:#dddddd 1px solid;margin-right:5px}
 
40
  .buttonizer-drawer{padding:2em}.close-button{float:right;margin:-20px !important}
41
  .broke-out-of-iframe{padding:10px 20px;color:#b32828;background:#ffdada;text-align:center;display:flex;align-items:center}.broke-out-of-iframe div{width:100%;line-height:24px;font-size:16px}.broke-out-of-iframe button{margin-left:20px;flex-shrink:0;color:#b32828;border-color:#da9595;background:#FFFFFF}
42
- .device-preview{flex-grow:1}.device-preview button{width:40px;margin:0 2px}
43
- .revert-button{margin:0 5px !important}.revert-button .MuiButton-label{font-size:15px}.revert-button .spin{animation:spin-animation 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite}@keyframes spin-animation{0%{transform:rotate(0deg)}100%{transform:rotate(-360deg)}}
44
 
45
  .btnizr-wp-icon {
46
  background: url(./images/wp-icon.png);
@@ -61,14 +59,17 @@ form{display:flex;flex-direction:column;align-items:stretch}form .MuiTextField-r
61
  .btnizr-buttonizer-buzzer {
62
  background: url(./images/ButtonizerBuzzer.svg);
63
  }.tippy-tooltip[data-animation=fade][data-state=hidden]{opacity:0}.tippy-iOS{cursor:pointer!important;-webkit-tap-highlight-color:transparent}.tippy-popper{pointer-events:none;max-width:calc(100vw - 10px);transition-timing-function:cubic-bezier(.165,.84,.44,1);transition-property:transform}.tippy-tooltip{position:relative;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;background-color:#333;transition-property:visibility,opacity,transform;outline:0}.tippy-tooltip[data-placement^=top]>.tippy-arrow{border-width:8px 8px 0;border-top-color:#333;margin:0 3px;transform-origin:50% 0;bottom:-7px}.tippy-tooltip[data-placement^=bottom]>.tippy-arrow{border-width:0 8px 8px;border-bottom-color:#333;margin:0 3px;transform-origin:50% 7px;top:-7px}.tippy-tooltip[data-placement^=left]>.tippy-arrow{border-width:8px 0 8px 8px;border-left-color:#333;margin:3px 0;transform-origin:0 50%;right:-7px}.tippy-tooltip[data-placement^=right]>.tippy-arrow{border-width:8px 8px 8px 0;border-right-color:#333;margin:3px 0;transform-origin:7px 50%;left:-7px}.tippy-tooltip[data-interactive][data-state=visible]{pointer-events:auto}.tippy-tooltip[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{position:absolute;border-color:transparent;border-style:solid}.tippy-content{padding:5px 9px}#wpadminbar,#adminmenumain{display:none}#wpcontent,#wpfooter{margin:0;padding:0}.buttonizer-admin-overlay{text-align:center;padding:40px 20px}html{padding:0 !important}.screen-reader-text{display:none}body.buttonizer-loaded{background:#191e23}.button.button-red{background:#ba0000;border-color:#aa0000 #990000 #990000;-webkit-box-shadow:0 1px 0 #990000;box-shadow:0 1px 0 #990000;color:#fff;text-decoration:none;text-shadow:0 -1px 1px #990000, 1px 0 1px #990000, 0 1px 1px #990000, -1px 0 1px #990000}.button.button-red:hover{background:#c20000 !important;border-color:#990000 !important;color:#fff}.button.button-red:active,.button.button-red:focus{background:#aa0000 !important;border-color:#990000 !important;-webkit-box-shadow:inset 0 2px 0 #990000;box-shadow:inset 0 2px 0 #990000;vertical-align:top;color:#FFFFFF}.button.button-red.button-centered-reset{margin:0 auto;padding:4px 20px;height:auto;font-size:15px}.button.button-red.button-centered-reset i{margin-right:10px}.label-settings{display:flex}.label-settings .title{min-width:calc(100% / 3);width:calc(100% / 3)}.label-settings .mdc-slider{width:calc(100% /3)}.icon-settings{display:flex}.icon-settings .title{min-width:calc(100% / 3);width:calc(100% / 3)}.icon-settings .mdc-text-field.small{width:calc(100% / 3) !important;height:28px !important}.icon-settings .mdc-text-field.small .material-icons.mdc-text-field__icon.icon{bottom:9px !important;font-size:10px;margin-right:-8px}.icon-settings .mdc-text-field.small .material-icons.mdc-text-field__icon.text{bottom:6px !important;font-size:10px;margin-right:-9px}.icon-settings .mdc-text-field.small .mdc-text-field__input{padding:0;padding-left:16px !important;padding-right:24px !important;height:28px !important;font-size:14px !important}.buttonizer-preview{position:fixed;left:431px;right:0;top:0;bottom:0;transition:transform 250ms ease-in-out}@media screen and (max-width: 769px){.buttonizer-preview{left:0}}.buttonizer-preview.frame-size-tablet{width:720px;max-width:720px;left:50%;margin-left:-170px;right:unset;z-index:-1}.buttonizer-preview.frame-size-mobile{width:340px;height:650px;max-width:340px;top:50%;left:50%;margin-top:-300px;margin-left:15px;right:unset;z-index:-1}.hide-bar-button{display:block;position:fixed;left:429px;top:50%;cursor:pointer;margin-top:-30px;z-index:2;height:60px;line-height:60px;width:20px;border-radius:0 10px 10px 0;background:#f0f0f0;border:1px solid #d2d2d2;border-left:1px solid transparent !important;text-align:center;color:#5d5d5d !important;text-decoration:none;transition:all 250ms ease-out;-moz-transition:all 250ms ease-out;-webkit-transition:all 250ms ease-out}.hide-bar-button .fas{margin-left:-4px;color:#2f7789}@media screen and (max-width: 769px){.hide-bar-button{left:unset !important;right:0;top:40px;width:auto;height:auto;line-height:20px;border:0;background:unset;padding:0 20px}.hide-bar-button:before,.hide-bar-button:after{content:none !important}.hide-bar-button:focus{border-left:none !important}}.hide-bar-button .fa-chevron-right{display:none}.hide-bar-button:before{content:"";position:absolute;background-color:transparent;top:-20px;height:20px;width:10px;left:0;box-sizing:inherit;border-bottom-left-radius:10px;box-shadow:0 10px 0 0 #f0f0f0;border-bottom:1px solid #d2d2d2;border-left:1px solid #d2d2d2;transition:all 250ms ease-out;-moz-transition:all 250ms ease-out;-webkit-transition:all 250ms ease-out}.hide-bar-button:after{content:"";position:absolute;background-color:transparent;bottom:-20px;height:20px;width:10px;left:0;box-sizing:inherit;border-top-left-radius:10px;box-shadow:0 -10px 0 0 #f0f0f0;border-top:1px solid #d2d2d2;border-left:1px solid #d2d2d2;transition:all 250ms ease-out;-moz-transition:all 250ms ease-out;-webkit-transition:all 250ms ease-out}.hide-bar-button:focus{outline:none;outline-style:none;box-shadow:none;box-sizing:border-box;border-left:1px solid #f0f0f0}.buttonizer-app .buttonizer-bar,.buttonizer-app .buttonizer-preview,.buttonizer-app .hide-bar-button{transition:all 250ms ease-out;-moz-transition:all 250ms ease-out;-webkit-transition:all 250ms ease-out}@media screen and (max-width: 769px){body.buttonizer-mobile-hide .buttonizer-preview{transform:translateX(100%)}}body.hide-buttonizer-bar .buttonizer-app .buttonizer-bar{transform:translateX(-100%)}body.hide-buttonizer-bar .buttonizer-app .buttonizer-preview,body.hide-buttonizer-bar .buttonizer-app .hide-bar-button{left:-2px}body.hide-buttonizer-bar .buttonizer-app .fas{margin-left:-1px}body.hide-buttonizer-bar .buttonizer-app .hide-bar-button .fa-chevron-right{display:inline-block}body.hide-buttonizer-bar .buttonizer-app .hide-bar-button .fa-chevron-left{display:none}@media screen and (max-width: 769px){body.hide-buttonizer-bar .buttonizer-preview{transform:translateX(0)}}body{color:#717171}.mdc-card{border-radius:4px;background-color:#fff;display:flex;flex-direction:column;box-sizing:border-box;box-shadow:0 1px 1px 0 rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.16)}.collapsible-group{margin:15px 0 !important}.collapsible-group .collapsible-body{padding:15px}.collapsible-group .collapsible-body .setting-group-title{font-size:13px;color:#888888;text-transform:uppercase;font-weight:500}.collapsible-group .collapsible-body .setting-group-title ~ .setting-group-title{padding-top:10px}.collapsible-group .mdc-button.mdc-button--bold{font-size:13px}.MuiSelect-small .MuiSelect-select{font-size:14px;padding:9px 12px}.Mui-buzz-disabled{color:rgba(0,0,0,0.26) !important;cursor:default !important}.Mui-buzz-premium.MuiButton-textPrimary{color:rgba(0,0,0,0.26)}.Mui-buzz-premium.MuiButton-containedPrimary{background:rgba(0,0,0,0.26)}.Mui-buzz-premium.MuiTabs-root .MuiTab-root{color:rgba(0,0,0,0.26)}.Mui-buzz-premium.MuiTabs-root .MuiTabs-indicator{background-color:rgba(0,0,0,0.26)}.MuiInputBase-root input[type="number"]{-moz-appearance:textfield}.MuiInputBase-root input[type="number"]::-webkit-outer-spin-button,.MuiInputBase-root input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}body{font-family:"Roboto", "Helvetica", "Arial", sans-serif}.tippy-tooltip{background:#6d6d6d;color:#ffffff}.buttonizer-app{font-family:Roboto, sans-serif;position:fixed;top:0;bottom:0;left:0;right:0;background:#eeeeee}.buttonizer-app a,.buttonizer-app input{box-shadow:none}.buttonizer-app hr{margin-bottom:14px}.dashboard-warning-msg{padding:12px;margin-bottom:15px;font-size:14px;line-height:20px;border:2px solid rgba(240,132,25,0.5);color:#f08419;display:block}.dashboard-warning-msg b{display:block}.dashboard-warning-msg a{color:#f08419}iframe{border:0}.simplebar-scrollbar.simplebar-visible:before{opacity:0.38 !important}p{font-size:14px;margin-top:5px}
 
 
64
  .MuiDialog-root #alert-dialog-title i{margin-right:15px;vertical-align:middle}.MuiDialog-root.warning .MuiBackdrop-root{background-color:rgba(93,0,0,0.6)}.MuiDialog-root.warning #alert-dialog-title{color:#710909}
65
  .button-container{margin:0 0 13px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;padding:10px;border:1px solid #e2e2e2;background-color:white}.button-container .button-name{max-width:100%}.button-container .button-name .button-name-span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;max-width:100%}.button-container .button-name.drag-icon{min-width:10px}.button-container .button-header{display:flex}.button-container .button-header .button-actions{margin-left:auto;flex-shrink:0}.button-container .button-settings{display:flex}.button-container .button-settings .button-title{display:inline-flex;height:30px;align-items:center;margin-right:10px;font-size:14px}.button-container .button-settings button{height:30px}.button-container .button-settings .button-visibility{flex-grow:1}.button-container .button-settings .button-visibility button{width:40px;min-width:40px;margin:0 2px}.button-container .button-settings .button-actions button{min-width:35px}.button-container .button-settings .clear{clear:both}
 
66
  .button-group-container{padding:10px;margin-bottom:15px;border:2px white solid}.button-group-container.currentDrop{border:2px #f9bf87 solid}.button-group-container .group-info{display:flex}.button-group-container .group-info .group-arrow{display:inline-block;width:17px;text-align:left;font-size:12px}.button-group-container .group-info .group-arrow i{-webkit-transition:all 150ms ease;-moz-transition:all 150ms ease;-ms-transition:all 150ms ease;-o-transition:all 150ms ease;transition:all 150ms ease}.button-group-container .group-info .group-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block}.button-group-container .group-info .group-action-spacer{flex-grow:1}.button-group-container .group-info .group-actions{flex-grow:0;flex-shrink:0;margin-left:20px}.button-group-container .buttons{display:none}.button-group-container.opened .group-info .group-arrow i{transform:rotate(90deg)}.button-group-container.opened .buttons{display:block;border-radius:10px;padding:10px;border:2px white solid;transition:border 0.5s}.button-group-container.opened .buttons.currentDrop{border:2px #f9bf87 solid}.button-group-container.opened .buttons.currentDrop .button-container{opacity:0.5}.button-group-container.opened .buttons.currentDrop .button-container.currentDrag{opacity:1}
67
  .desktop-mobile-visibility button{min-width:40px;width:40px}.desktop-mobile-visibility button.buttonMobile{margin-right:5px}
68
  .button-action .button-action-type{padding-bottom:20px}.button-action code{padding:3px 5px 2px 5px;margin:0 1px;background:rgba(0,0,0,0.07)}
69
  .position-buttons button svg{width:20px;fill:currentColor}.position-buttons.position-horizontal button:nth-child(1) svg,.position-buttons.position-horizontal button:nth-child(2) svg{transform:rotate(-90deg)}.position-buttons.position-horizontal button:nth-child(3) svg{transform:rotate(90deg)}.position-buttons.position-vertical button:nth-child(3) svg{transform:rotate(180deg)}.position-textfield{height:28px;-moz-appearance:textfield}.position-textfield ::-webkit-outer-spin-button,.position-textfield ::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
70
  .form-icon-selector .selector{overflow:hidden;border-radius:4px;cursor:pointer;width:100%}.form-icon-selector .selector .viewer{width:100%;height:65px;background-color:#dddddd;display:block;border-radius:0 0 4px 4px;color:white;text-align:center}.form-icon-selector .selector span{border-radius:0 0 4px 4px;display:block;color:white;text-align:center}
71
- .color-picker-main{width:100%;display:flex;justify-content:flex-end}.color-picker-main .color-picker{display:flex;width:100%;cursor:pointer;justify-content:flex-end;height:28px}.color-picker-main .color-picker .color-preview{width:100%;background:url(./images/transparent.png) repeat;border-radius:5px 0 0 5px;box-shadow:0 1px 1px 0 rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.16);overflow:hidden}.color-picker-main .color-picker .color-preview span{display:block;height:100%;background:#f08419}.color-picker-main .color-picker .color-button{height:100%;border-radius:0 5px 5px 0;margin-left:1px;margin-right:0px;box-shadow:0 1px 1px 0 rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.16)}
72
  .slider-container{margin-bottom:15px}.slider-container-input{margin-left:20px;height:28px;max-width:78px;flex-shrink:0}.slider-container-input input{font-size:14px}.slider-container-input input::-webkit-outer-spin-button,.slider-container-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.slider-container-input input[type="number"]{-moz-appearance:textfield}
73
  .icon-or-image{width:100%;min-height:30px}.icon-or-image button{min-width:unset;min-height:40px !important}.icon-or-image button .MuiTab-wrapper{display:block !important}.icon-or-image button .MuiTab-wrapper i{margin-right:5px}
74
  .textfield-corners-input{height:100%;max-width:80px;padding-right:5px !important;margin:0 !important}.textfield-corners-input.textfield-corners-select{max-width:35px}.textfield-corners-input .MuiSelect-root{font-size:12px;padding:5px 12px 5px 8px !important}.textfield-corners-input .MuiSvgIcon-root{font-size:1rem;right:0;top:50%;transform:translateY(-50%)}.textfield-corners-input input{font-size:14px;padding:5px 8px}.textfield-corners-input input::-webkit-outer-spin-button,.textfield-corners-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.textfield-corners-input input[type="number"]{-moz-appearance:textfield}.textfield-corners-input .MuiInputAdornment-root{margin-left:5px}.textfield-corners-input .MuiInputAdornment-root>p{font-size:14px}.textfield-corners-menu li{padding-left:8px;padding-right:8px;font-size:14px}
8
  *
9
  * Buttonizer is Freemium software. The free version (build) does not contain premium functionality.
10
  *
11
+ * (C) 2017-2021 Buttonizer dev-version
12
  *
13
  */
14
  /*!
21
  *
22
  * Buttonizer is Freemium software. The free version (build) does not contain premium functionality.
23
  *
24
+ * (C) 2017-2021 Buttonizer dev-version
25
  *
26
  */
27
+ @import url(https://fonts.googleapis.com/css?family=Roboto:400,500,700&display=swap);[data-simplebar]{position:relative;flex-direction:column;flex-wrap:wrap;justify-content:flex-start;align-content:flex-start;align-items:flex-start}.simplebar-wrapper{overflow:hidden;width:inherit;height:inherit;max-width:inherit;max-height:inherit}.simplebar-mask{direction:inherit;position:absolute;overflow:hidden;padding:0;margin:0;left:0;top:0;bottom:0;right:0;width:auto !important;height:auto !important;z-index:0}.simplebar-offset{direction:inherit !important;box-sizing:inherit !important;resize:none !important;position:absolute;top:0;left:0;bottom:0;right:0;padding:0;margin:0;-webkit-overflow-scrolling:touch}.simplebar-content-wrapper{direction:inherit;box-sizing:border-box !important;position:relative;display:block;height:100%;width:auto;max-width:100%;max-height:100%;scrollbar-width:none;-ms-overflow-style:none}.simplebar-content-wrapper::-webkit-scrollbar,.simplebar-hide-scrollbar::-webkit-scrollbar{width:0;height:0}.simplebar-content:before,.simplebar-content:after{content:' ';display:table}.simplebar-placeholder{max-height:100%;max-width:100%;width:100%;pointer-events:none}.simplebar-height-auto-observer-wrapper{box-sizing:inherit !important;height:100%;width:100%;max-width:1px;position:relative;float:left;max-height:1px;overflow:hidden;z-index:-1;padding:0;margin:0;pointer-events:none;flex-grow:inherit;flex-shrink:0;flex-basis:0}.simplebar-height-auto-observer{box-sizing:inherit;display:block;opacity:0;position:absolute;top:0;left:0;height:1000%;width:1000%;min-height:1px;min-width:1px;overflow:hidden;pointer-events:none;z-index:-1}.simplebar-track{z-index:1;position:absolute;right:0;bottom:0;pointer-events:none;overflow:hidden}[data-simplebar].simplebar-dragging .simplebar-content{pointer-events:none;user-select:none;-webkit-user-select:none}[data-simplebar].simplebar-dragging .simplebar-track{pointer-events:all}.simplebar-scrollbar{position:absolute;left:0;right:0;min-height:10px}.simplebar-scrollbar:before{position:absolute;content:'';background:black;border-radius:7px;left:2px;right:2px;opacity:0;transition:opacity 0.2s linear}.simplebar-scrollbar.simplebar-visible:before{opacity:0.5;transition:opacity 0s linear}.simplebar-track.simplebar-vertical{top:0;width:11px}.simplebar-track.simplebar-vertical .simplebar-scrollbar:before{top:2px;bottom:2px}.simplebar-track.simplebar-horizontal{left:0;height:11px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before{height:100%;left:2px;right:2px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar{right:auto;left:0;top:2px;height:7px;min-height:0;min-width:10px;width:auto}[data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical{right:auto;left:0}.hs-dummy-scrollbar-size{direction:rtl;position:fixed;opacity:0;visibility:hidden;height:500px;width:500px;overflow-y:hidden;overflow-x:scroll}.simplebar-hide-scrollbar{position:fixed;left:0;visibility:hidden;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}
28
+ .tippy-touch{cursor:pointer !important}.tippy-notransition{transition:none !important}.tippy-popper{max-width:400px;-webkit-perspective:800px;perspective:800px;z-index:9999;outline:0;transition-timing-function:cubic-bezier(0.165, 0.84, 0.44, 1);pointer-events:none}.tippy-popper.html-template{max-width:96%;max-width:calc(100% - 20px)}.tippy-popper[x-placement^=top] [x-arrow]{border-top:7px solid #333;border-right:7px solid transparent;border-left:7px solid transparent;bottom:-7px;margin:0 9px}.tippy-popper[x-placement^=top] [x-arrow].arrow-small{border-top:5px solid #333;border-right:5px solid transparent;border-left:5px solid transparent;bottom:-5px}.tippy-popper[x-placement^=top] [x-arrow].arrow-big{border-top:10px solid #333;border-right:10px solid transparent;border-left:10px solid transparent;bottom:-10px}.tippy-popper[x-placement^=top] [x-circle]{-webkit-transform-origin:0 33%;transform-origin:0 33%}.tippy-popper[x-placement^=top] [x-circle].enter{-webkit-transform:scale(1) translate(-50%, -55%);transform:scale(1) translate(-50%, -55%);opacity:1}.tippy-popper[x-placement^=top] [x-circle].leave{-webkit-transform:scale(0.15) translate(-50%, -50%);transform:scale(0.15) translate(-50%, -50%);opacity:0}.tippy-popper[x-placement^=top] .tippy-tooltip.light-theme [x-circle]{background-color:#fff}.tippy-popper[x-placement^=top] .tippy-tooltip.light-theme [x-arrow]{border-top:7px solid #fff;border-right:7px solid transparent;border-left:7px solid transparent}.tippy-popper[x-placement^=top] .tippy-tooltip.light-theme [x-arrow].arrow-small{border-top:5px solid #fff;border-right:5px solid transparent;border-left:5px solid transparent}.tippy-popper[x-placement^=top] .tippy-tooltip.light-theme [x-arrow].arrow-big{border-top:10px solid #fff;border-right:10px solid transparent;border-left:10px solid transparent}.tippy-popper[x-placement^=top] .tippy-tooltip.transparent-theme [x-circle]{background-color:rgba(0,0,0,0.7)}.tippy-popper[x-placement^=top] .tippy-tooltip.transparent-theme [x-arrow]{border-top:7px solid rgba(0,0,0,0.7);border-right:7px solid transparent;border-left:7px solid transparent}.tippy-popper[x-placement^=top] .tippy-tooltip.transparent-theme [x-arrow].arrow-small{border-top:5px solid rgba(0,0,0,0.7);border-right:5px solid transparent;border-left:5px solid transparent}.tippy-popper[x-placement^=top] .tippy-tooltip.transparent-theme [x-arrow].arrow-big{border-top:10px solid rgba(0,0,0,0.7);border-right:10px solid transparent;border-left:10px solid transparent}.tippy-popper[x-placement^=top] [data-animation=perspective]{-webkit-transform-origin:bottom;transform-origin:bottom}.tippy-popper[x-placement^=top] [data-animation=perspective].enter{opacity:1;-webkit-transform:translateY(-10px) rotateX(0);transform:translateY(-10px) rotateX(0)}.tippy-popper[x-placement^=top] [data-animation=perspective].leave{opacity:0;-webkit-transform:translateY(0) rotateX(90deg);transform:translateY(0) rotateX(90deg)}.tippy-popper[x-placement^=top] [data-animation=fade].enter{opacity:1;-webkit-transform:translateY(-10px);transform:translateY(-10px)}.tippy-popper[x-placement^=top] [data-animation=fade].leave{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}.tippy-popper[x-placement^=top] [data-animation=shift].enter{opacity:1;-webkit-transform:translateY(-10px);transform:translateY(-10px)}.tippy-popper[x-placement^=top] [data-animation=shift].leave{opacity:0;-webkit-transform:translateY(0);transform:translateY(0)}.tippy-popper[x-placement^=top] [data-animation=scale].enter{opacity:1;-webkit-transform:translateY(-10px) scale(1);transform:translateY(-10px) scale(1)}.tippy-popper[x-placement^=top] [data-animation=scale].leave{opacity:0;-webkit-transform:translateY(0) scale(0);transform:translateY(0) scale(0)}.tippy-popper[x-placement^=bottom] [x-arrow]{border-bottom:7px solid #333;border-right:7px solid transparent;border-left:7px solid transparent;top:-7px;margin:0 9px}.tippy-popper[x-placement^=bottom] [x-arrow].arrow-small{border-bottom:5px solid #333;border-right:5px solid transparent;border-left:5px solid transparent;top:-5px}.tippy-popper[x-placement^=bottom] [x-arrow].arrow-big{border-bottom:10px solid #333;border-right:10px solid transparent;border-left:10px solid transparent;top:-10px}.tippy-popper[x-placement^=bottom] [x-circle]{-webkit-transform-origin:0 -50%;transform-origin:0 -50%}.tippy-popper[x-placement^=bottom] [x-circle].enter{-webkit-transform:scale(1) translate(-50%, -45%);transform:scale(1) translate(-50%, -45%);opacity:1}.tippy-popper[x-placement^=bottom] [x-circle].leave{-webkit-transform:scale(0.15) translate(-50%, -5%);transform:scale(0.15) translate(-50%, -5%);opacity:0}.tippy-popper[x-placement^=bottom] .tippy-tooltip.light-theme [x-circle]{background-color:#fff}.tippy-popper[x-placement^=bottom] .tippy-tooltip.light-theme [x-arrow]{border-bottom:7px solid #fff;border-right:7px solid transparent;border-left:7px solid transparent}.tippy-popper[x-placement^=bottom] .tippy-tooltip.light-theme [x-arrow].arrow-small{border-bottom:5px solid #fff;border-right:5px solid transparent;border-left:5px solid transparent}.tippy-popper[x-placement^=bottom] .tippy-tooltip.light-theme [x-arrow].arrow-big{border-bottom:10px solid #fff;border-right:10px solid transparent;border-left:10px solid transparent}.tippy-popper[x-placement^=bottom] .tippy-tooltip.transparent-theme [x-circle]{background-color:rgba(0,0,0,0.7)}.tippy-popper[x-placement^=bottom] .tippy-tooltip.transparent-theme [x-arrow]{border-bottom:7px solid rgba(0,0,0,0.7);border-right:7px solid transparent;border-left:7px solid transparent}.tippy-popper[x-placement^=bottom] .tippy-tooltip.transparent-theme [x-arrow].arrow-small{border-bottom:5px solid rgba(0,0,0,0.7);border-right:5px solid transparent;border-left:5px solid transparent}.tippy-popper[x-placement^=bottom] .tippy-tooltip.transparent-theme [x-arrow].arrow-big{border-bottom:10px solid rgba(0,0,0,0.7);border-right:10px solid transparent;border-left:10px solid transparent}.tippy-popper[x-placement^=bottom] [data-animation=perspective]{-webkit-transform-origin:top;transform-origin:top}.tippy-popper[x-placement^=bottom] [data-animation=perspective].enter{opacity:1;-webkit-transform:translateY(10px) rotateX(0);transform:translateY(10px) rotateX(0)}.tippy-popper[x-placement^=bottom] [data-animation=perspective].leave{opacity:0;-webkit-transform:translateY(0) rotateX(-90deg);transform:translateY(0) rotateX(-90deg)}.tippy-popper[x-placement^=bottom] [data-animation=fade].enter{opacity:1;-webkit-transform:translateY(10px);transform:translateY(10px)}.tippy-popper[x-placement^=bottom] [data-animation=fade].leave{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}.tippy-popper[x-placement^=bottom] [data-animation=shift].enter{opacity:1;-webkit-transform:translateY(10px);transform:translateY(10px)}.tippy-popper[x-placement^=bottom] [data-animation=shift].leave{opacity:0;-webkit-transform:translateY(0);transform:translateY(0)}.tippy-popper[x-placement^=bottom] [data-animation=scale].enter{opacity:1;-webkit-transform:translateY(10px) scale(1);transform:translateY(10px) scale(1)}.tippy-popper[x-placement^=bottom] [data-animation=scale].leave{opacity:0;-webkit-transform:translateY(0) scale(0);transform:translateY(0) scale(0)}.tippy-popper[x-placement^=left] [x-arrow]{border-left:7px solid #333;border-top:7px solid transparent;border-bottom:7px solid transparent;right:-7px;margin:6px 0}.tippy-popper[x-placement^=left] [x-arrow].arrow-small{border-left:5px solid #333;border-top:5px solid transparent;border-bottom:5px solid transparent;right:-5px}.tippy-popper[x-placement^=left] [x-arrow].arrow-big{border-left:10px solid #333;border-top:10px solid transparent;border-bottom:10px solid transparent;right:-10px}.tippy-popper[x-placement^=left] [x-circle]{-webkit-transform-origin:50% 0;transform-origin:50% 0}.tippy-popper[x-placement^=left] [x-circle].enter{-webkit-transform:scale(1) translate(-50%, -50%);transform:scale(1) translate(-50%, -50%);opacity:1}.tippy-popper[x-placement^=left] [x-circle].leave{-webkit-transform:scale(0.15) translate(-50%, -50%);transform:scale(0.15) translate(-50%, -50%);opacity:0}.tippy-popper[x-placement^=left] .tippy-tooltip.light-theme [x-circle]{background-color:#fff}.tippy-popper[x-placement^=left] .tippy-tooltip.light-theme [x-arrow]{border-left:7px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent}.tippy-popper[x-placement^=left] .tippy-tooltip.light-theme [x-arrow].arrow-small{border-left:5px solid #fff;border-top:5px solid transparent;border-bottom:5px solid transparent}.tippy-popper[x-placement^=left] .tippy-tooltip.light-theme [x-arrow].arrow-big{border-left:10px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}.tippy-popper[x-placement^=left] .tippy-tooltip.transparent-theme [x-circle]{background-color:rgba(0,0,0,0.7)}.tippy-popper[x-placement^=left] .tippy-tooltip.transparent-theme [x-arrow]{border-left:7px solid rgba(0,0,0,0.7);border-top:7px solid transparent;border-bottom:7px solid transparent}.tippy-popper[x-placement^=left] .tippy-tooltip.transparent-theme [x-arrow].arrow-small{border-left:5px solid rgba(0,0,0,0.7);border-top:5px solid transparent;border-bottom:5px solid transparent}.tippy-popper[x-placement^=left] .tippy-tooltip.transparent-theme [x-arrow].arrow-big{border-left:10px solid rgba(0,0,0,0.7);border-top:10px solid transparent;border-bottom:10px solid transparent}.tippy-popper[x-placement^=left] [data-animation=perspective]{-webkit-transform-origin:right;transform-origin:right}.tippy-popper[x-placement^=left] [data-animation=perspective].enter{opacity:1;-webkit-transform:translateX(-10px) rotateY(0);transform:translateX(-10px) rotateY(0)}.tippy-popper[x-placement^=left] [data-animation=perspective].leave{opacity:0;-webkit-transform:translateX(0) rotateY(-90deg);transform:translateX(0) rotateY(-90deg)}.tippy-popper[x-placement^=left] [data-animation=fade].enter{opacity:1;-webkit-transform:translateX(-10px);transform:translateX(-10px)}.tippy-popper[x-placement^=left] [data-animation=fade].leave{opacity:0;-webkit-transform:translateX(-10px);transform:translateX(-10px)}.tippy-popper[x-placement^=left] [data-animation=shift].enter{opacity:1;-webkit-transform:translateX(-10px);transform:translateX(-10px)}.tippy-popper[x-placement^=left] [data-animation=shift].leave{opacity:0;-webkit-transform:translateX(0);transform:translateX(0)}.tippy-popper[x-placement^=left] [data-animation=scale].enter{opacity:1;-webkit-transform:translateX(-10px) scale(1);transform:translateX(-10px) scale(1)}.tippy-popper[x-placement^=left] [data-animation=scale].leave{opacity:0;-webkit-transform:translateX(0) scale(0);transform:translateX(0) scale(0)}.tippy-popper[x-placement^=right] [x-arrow]{border-right:7px solid #333;border-top:7px solid transparent;border-bottom:7px solid transparent;left:-7px;margin:6px 0}.tippy-popper[x-placement^=right] [x-arrow].arrow-small{border-right:5px solid #333;border-top:5px solid transparent;border-bottom:5px solid transparent;left:-5px}.tippy-popper[x-placement^=right] [x-arrow].arrow-big{border-right:10px solid #333;border-top:10px solid transparent;border-bottom:10px solid transparent;left:-10px}.tippy-popper[x-placement^=right] [x-circle]{-webkit-transform-origin:-50% 0;transform-origin:-50% 0}.tippy-popper[x-placement^=right] [x-circle].enter{-webkit-transform:scale(1) translate(-50%, -50%);transform:scale(1) translate(-50%, -50%);opacity:1}.tippy-popper[x-placement^=right] [x-circle].leave{-webkit-transform:scale(0.15) translate(-50%, -50%);transform:scale(0.15) translate(-50%, -50%);opacity:0}.tippy-popper[x-placement^=right] .tippy-tooltip.light-theme [x-circle]{background-color:#fff}.tippy-popper[x-placement^=right] .tippy-tooltip.light-theme [x-arrow]{border-right:7px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent}.tippy-popper[x-placement^=right] .tippy-tooltip.light-theme [x-arrow].arrow-small{border-right:5px solid #fff;border-top:5px solid transparent;border-bottom:5px solid transparent}.tippy-popper[x-placement^=right] .tippy-tooltip.light-theme [x-arrow].arrow-big{border-right:10px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}.tippy-popper[x-placement^=right] .tippy-tooltip.transparent-theme [x-circle]{background-color:rgba(0,0,0,0.7)}.tippy-popper[x-placement^=right] .tippy-tooltip.transparent-theme [x-arrow]{border-right:7px solid rgba(0,0,0,0.7);border-top:7px solid transparent;border-bottom:7px solid transparent}.tippy-popper[x-placement^=right] .tippy-tooltip.transparent-theme [x-arrow].arrow-small{border-right:5px solid rgba(0,0,0,0.7);border-top:5px solid transparent;border-bottom:5px solid transparent}.tippy-popper[x-placement^=right] .tippy-tooltip.transparent-theme [x-arrow].arrow-big{border-right:10px solid rgba(0,0,0,0.7);border-top:10px solid transparent;border-bottom:10px solid transparent}.tippy-popper[x-placement^=right] [data-animation=perspective]{-webkit-transform-origin:left;transform-origin:left}.tippy-popper[x-placement^=right] [data-animation=perspective].enter{opacity:1;-webkit-transform:translateX(10px) rotateY(0);transform:translateX(10px) rotateY(0)}.tippy-popper[x-placement^=right] [data-animation=perspective].leave{opacity:0;-webkit-transform:translateX(0) rotateY(90deg);transform:translateX(0) rotateY(90deg)}.tippy-popper[x-placement^=right] [data-animation=fade].enter{opacity:1;-webkit-transform:translateX(10px);transform:translateX(10px)}.tippy-popper[x-placement^=right] [data-animation=fade].leave{opacity:0;-webkit-transform:translateX(10px);transform:translateX(10px)}.tippy-popper[x-placement^=right] [data-animation=shift].enter{opacity:1;-webkit-transform:translateX(10px);transform:translateX(10px)}.tippy-popper[x-placement^=right] [data-animation=shift].leave{opacity:0;-webkit-transform:translateX(0);transform:translateX(0)}.tippy-popper[x-placement^=right] [data-animation=scale].enter{opacity:1;-webkit-transform:translateX(10px) scale(1);transform:translateX(10px) scale(1)}.tippy-popper[x-placement^=right] [data-animation=scale].leave{opacity:0;-webkit-transform:translateX(0) scale(0);transform:translateX(0) scale(0)}.tippy-popper .tippy-tooltip.transparent-theme{background-color:rgba(0,0,0,0.7)}.tippy-popper .tippy-tooltip.transparent-theme[data-animatefill]{background-color:transparent}.tippy-popper .tippy-tooltip.light-theme{color:#26323d;box-shadow:0 4px 20px 4px rgba(0,20,60,0.1),0 4px 80px -8px rgba(0,20,60,0.2);background-color:#fff}.tippy-popper .tippy-tooltip.light-theme[data-animatefill]{background-color:transparent}.tippy-tooltip{position:relative;color:#fff;border-radius:4px;font-size:.95rem;padding:.4rem .8rem;text-align:center;will-change:transform;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#333}.tippy-tooltip--small{padding:.25rem .5rem;font-size:.8rem}.tippy-tooltip--big{padding:.6rem 1.2rem;font-size:1.2rem}.tippy-tooltip[data-animatefill]{overflow:hidden;background-color:transparent}.tippy-tooltip[data-interactive]{pointer-events:auto}.tippy-tooltip[data-inertia]{transition-timing-function:cubic-bezier(0.53, 2, 0.36, 0.85)}.tippy-tooltip [x-arrow]{position:absolute;width:0;height:0}.tippy-tooltip [x-circle]{position:absolute;will-change:transform;background-color:#333;border-radius:50%;width:130%;width:calc(110% + 2rem);left:50%;top:50%;z-index:-1;overflow:hidden;transition:all ease}.tippy-tooltip [x-circle]:before{content:"";padding-top:90%;float:left}@media (max-width: 450px){.tippy-popper{max-width:96%;max-width:calc(100% - 20px)}}
29
  form{display:flex;flex-direction:column;align-items:stretch}form .MuiTextField-root{margin:1em}form .fullwidth-label{align-items:stretch !important}form .crash-report{margin-top:2em}
30
  .random-tip{background:#FFFFFF;border-radius:50px;margin:15px 0;display:flex;flex-flow:row wrap;height:72px;box-shadow:0 1px 1px 0 rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.16);color:#2E788A}.random-tip .buzz{background:#FDF2E8;position:relative;margin:8px;order:1;height:56px;width:56px;border-radius:60px;box-sizing:border-box}.random-tip .tip{margin:8px 20px 8px 8px;flex:1;order:2;display:flex;align-items:center;font-size:14px}
31
+ .knowledgebase-link{color:#2f7789;text-decoration:none}.knowledgebase-link.medium{font-size:14px !important}.knowledgebase-link.small{font-size:12px !important}.knowledgebase-link:hover{text-decoration:underline}.knowledgebase-icon{color:#2f7789}
32
+ .buttonizer-premium{background:#2d7688;background:-moz-linear-gradient(-45deg, #2d7688 0%, #187287 50%, #187287 50%, #f0841a 51%, #e8832c 98%);background:-webkit-linear-gradient(-45deg, #2d7688 0%, #187287 50%, #187287 50%, #f0841a 51%, #e8832c 98%);background:linear-gradient(135deg, #2d7688 0%, #187287 50%, #187287 50%, #f0841a 51%, #e8832c 98%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#2d7688', endColorstr='#e8832c',GradientType=1 );color:#FFFFFF;font-weight:500;font-size:13px;line-height:17px;padding:4px 20px;display:inline-block;vertical-align:middle;border-radius:4px;-moz-border-radius:4px;-webkit-border-radius:4px;margin-left:10px}.buttonizer-premium.premium-right{position:absolute;right:30px;top:19px;z-index:9}.buttonizer-premium::after{content:"PRO"}.MuiFormControl-root:not(.MuiTextField-root) .buttonizer-premium{margin-right:15px}
33
  .item-not-found{text-align:center;padding:40px 0}.item-not-found i{font-size:50px;display:block;margin:30px auto}.item-not-found h4{font-size:15px;margin:28px 0}
34
  .collapsible-group{margin:10px 20px}.collapsible-group>button{text-align:left;justify-content:normal;padding:0 15px;height:49px}.collapsible-group>button i{margin-left:10px;font-size:12px;-webkit-transition:all 150ms ease;-moz-transition:all 150ms ease;-ms-transition:all 150ms ease;-o-transition:all 150ms ease;transition:all 150ms ease}.collapsible-group .collapsible-body{padding:18px}.collapsible-group.collapsible-opened>button i{transform:rotate(-180deg)}
35
  .settings-container{display:flex;position:relative;margin-bottom:15px}.settings-container.disabled{opacity:0.5;user-select:none}.settings-title{padding-right:15px;padding:4.9px 15px 4.9px 0;margin-right:auto;flex-shrink:0;font-size:14px}.settings-content{display:flex;flex-shrink:1;align-self:center}.container-full-width .settings-content{width:66.666%}
36
+ .disable-setting.disabled{position:relative}.disable-setting.disabled .settings{opacity:0.5;pointer-events:none}.disable-setting.disabled .disable-content{position:absolute;bottom:0;top:0;left:0;right:0;text-align:center;max-width:100%;color:#2f7789;font-weight:900;display:flex;align-items:center;user-select:none}.disable-setting.disabled .disable-content .buttonizer-premium{margin-right:30px;margin-left:auto}
 
37
  .buttonizer-loading{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.67);z-index:99999;transition:350ms all ease-in-out;-moz-transition:350ms all ease-in-out;-webkit-transition:350ms all ease-in-out}.buttonizer-loading.site-loading{left:431px}@media screen and (max-width: 769px){.buttonizer-loading{left:0 !important}}.buttonizer-loading .middle{position:absolute;left:50%;top:50%;margin-left:-125px;margin-top:-64px;width:250px;text-align:center}.buttonizer-loading .middle img{position:absolute;left:50%;margin-left:-25%;top:18px}.buttonizer-loading .middle .loader-text{text-align:center;font-size:20px;margin-top:20px}.buttonizer-loading .middle .loader-text .slow-website{display:block}.buttonizer-loading .middle .loader-text .slow-website a{display:block;font-size:15px;text-decoration:none;margin-top:18px}.buttonizer-loading .middle svg{-webkit-animation:spin 1s linear infinite;-moz-animation:spin 1s linear infinite;animation:spin 1s linear infinite}@-moz-keyframes spin{100%{-moz-transform:rotate(360deg)}}@-webkit-keyframes spin{100%{-webkit-transform:rotate(360deg)}}@keyframes spin{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}
 
38
  .buttonizer-bar{position:fixed;left:0;top:0;bottom:0;width:430px;background:#f0f0f0;border-right:1px solid #d2d2d2}@media screen and (max-width: 769px){.buttonizer-bar{width:100%}}.buttonizer-bar.is-loading .router{opacity:0}.buttonizer-bar.is-loading .buttonizer-logo{display:none}.buttonizer-bar .router-window{position:absolute;top:0;bottom:56px;left:0;width:100%}.buttonizer-bar .router-window .simplebar-content-wrapper{height:100% !important}.buttonizer-bar .router-window .simplebar-placeholder{min-height:100vh}.buttonizer-bar .router-window .router{padding:0 30px 50px}.buttonizer-bar .buttonizer-logo img{max-width:200px;display:block;margin:20px auto 30px}.buttonizer-bar .bar-header{margin:10px 0}.buttonizer-bar .bar-header .breadcrumb{margin:15px 0 15px;display:flex}.buttonizer-bar .bar-header .breadcrumb button{height:28px;line-height:28px;padding:0 10px}.buttonizer-bar .bar-header .breadcrumb button .breadcrumb-text{white-space:nowrap;letter-spacing:0.07em;overflow:hidden;text-overflow:ellipsis;height:100%;display:inline-block;align-items:center}.buttonizer-bar .bar-header .breadcrumb button i{margin-left:10px;color:rgba(0,0,0,0.3);vertical-align:middle}.buttonizer-bar .bar-header .breadcrumb button.home-button{flex-shrink:0}.buttonizer-bar .bar-header .MuiTabs-flexContainer .MuiTab-textColorSecondary{color:#95bac3}.buttonizer-bar .bar-header .MuiTabs-flexContainer .MuiTab-textColorSecondary:hover{color:#2f7789}.buttonizer-bar .bar-header .MuiTabs-flexContainer .MuiTab-textColorSecondary.Mui-selected{color:#f08419}.buttonizer-bar .bar-header .MuiTabs-flexContainer a{min-width:unset}.buttonizer-bar .bar-header .MuiTabs-flexContainer a i{font-size:20px;margin-bottom:8px}.buttonizer-bar .bar-header .MuiTabs-flexContainer a .MuiTab-wrapper{font-weight:600;font-size:12px;letter-spacing:1.25006px}.buttonizer-bar .bar-footer{position:absolute;bottom:0;left:0;right:0;box-shadow:0 1px 1px 0 rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.16);background:white}.buttonizer-bar .bar-footer .bar-footer-container{display:flex;align-content:space-between;padding:10px}.buttonizer-bar .bar-footer .bar-footer-container .settings-button{font-size:20px;position:relative;margin-right:8px}.buttonizer-bar .bar-footer .bar-footer-container button{min-width:36px;height:36px}.buttonizer-bar .bar-footer .bar-footer-container button.MuiIconButton-root{padding:0;font-size:16px}.buttonizer-bar .bar-footer .bar-footer-container .MuiButton-Publish{padding:6px 16px !important;font-size:0.785rem !important}.buttonizer-bar .bar-footer .bar-footer-container .footer-button-group-start{position:relative;border-right:#dddddd 1px solid;margin-right:5px}
39
+ .buttonizer-menu-item{display:block !important;width:100% !important;text-align:left;text-decoration:none;padding:10px 15px !important;border-bottom:1px solid #dbdbdb !important;transition:background 0.15s ease-in-out;height:auto !important;border-radius:0 !important}.buttonizer-menu-item:last-child{border:0 !important}.buttonizer-menu-item:hover{background:#eeeeee}.buttonizer-menu-item .title{display:block;color:#3d3d3d;font-size:13px;font-weight:600;margin-bottom:5px}.buttonizer-menu-item .description{display:block;color:#545454;font-weight:400;font-size:12px;line-height:20px;letter-spacing:0.5px;text-transform:none}
40
  .buttonizer-drawer{padding:2em}.close-button{float:right;margin:-20px !important}
41
  .broke-out-of-iframe{padding:10px 20px;color:#b32828;background:#ffdada;text-align:center;display:flex;align-items:center}.broke-out-of-iframe div{width:100%;line-height:24px;font-size:16px}.broke-out-of-iframe button{margin-left:20px;flex-shrink:0;color:#b32828;border-color:#da9595;background:#FFFFFF}
 
 
42
 
43
  .btnizr-wp-icon {
44
  background: url(./images/wp-icon.png);
59
  .btnizr-buttonizer-buzzer {
60
  background: url(./images/ButtonizerBuzzer.svg);
61
  }.tippy-tooltip[data-animation=fade][data-state=hidden]{opacity:0}.tippy-iOS{cursor:pointer!important;-webkit-tap-highlight-color:transparent}.tippy-popper{pointer-events:none;max-width:calc(100vw - 10px);transition-timing-function:cubic-bezier(.165,.84,.44,1);transition-property:transform}.tippy-tooltip{position:relative;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;background-color:#333;transition-property:visibility,opacity,transform;outline:0}.tippy-tooltip[data-placement^=top]>.tippy-arrow{border-width:8px 8px 0;border-top-color:#333;margin:0 3px;transform-origin:50% 0;bottom:-7px}.tippy-tooltip[data-placement^=bottom]>.tippy-arrow{border-width:0 8px 8px;border-bottom-color:#333;margin:0 3px;transform-origin:50% 7px;top:-7px}.tippy-tooltip[data-placement^=left]>.tippy-arrow{border-width:8px 0 8px 8px;border-left-color:#333;margin:3px 0;transform-origin:0 50%;right:-7px}.tippy-tooltip[data-placement^=right]>.tippy-arrow{border-width:8px 8px 8px 0;border-right-color:#333;margin:3px 0;transform-origin:7px 50%;left:-7px}.tippy-tooltip[data-interactive][data-state=visible]{pointer-events:auto}.tippy-tooltip[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{position:absolute;border-color:transparent;border-style:solid}.tippy-content{padding:5px 9px}#wpadminbar,#adminmenumain{display:none}#wpcontent,#wpfooter{margin:0;padding:0}.buttonizer-admin-overlay{text-align:center;padding:40px 20px}html{padding:0 !important}.screen-reader-text{display:none}body.buttonizer-loaded{background:#191e23}.button.button-red{background:#ba0000;border-color:#aa0000 #990000 #990000;-webkit-box-shadow:0 1px 0 #990000;box-shadow:0 1px 0 #990000;color:#fff;text-decoration:none;text-shadow:0 -1px 1px #990000, 1px 0 1px #990000, 0 1px 1px #990000, -1px 0 1px #990000}.button.button-red:hover{background:#c20000 !important;border-color:#990000 !important;color:#fff}.button.button-red:active,.button.button-red:focus{background:#aa0000 !important;border-color:#990000 !important;-webkit-box-shadow:inset 0 2px 0 #990000;box-shadow:inset 0 2px 0 #990000;vertical-align:top;color:#FFFFFF}.button.button-red.button-centered-reset{margin:0 auto;padding:4px 20px;height:auto;font-size:15px}.button.button-red.button-centered-reset i{margin-right:10px}.label-settings{display:flex}.label-settings .title{min-width:calc(100% / 3);width:calc(100% / 3)}.label-settings .mdc-slider{width:calc(100% /3)}.icon-settings{display:flex}.icon-settings .title{min-width:calc(100% / 3);width:calc(100% / 3)}.icon-settings .mdc-text-field.small{width:calc(100% / 3) !important;height:28px !important}.icon-settings .mdc-text-field.small .material-icons.mdc-text-field__icon.icon{bottom:9px !important;font-size:10px;margin-right:-8px}.icon-settings .mdc-text-field.small .material-icons.mdc-text-field__icon.text{bottom:6px !important;font-size:10px;margin-right:-9px}.icon-settings .mdc-text-field.small .mdc-text-field__input{padding:0;padding-left:16px !important;padding-right:24px !important;height:28px !important;font-size:14px !important}.buttonizer-preview{position:fixed;left:431px;right:0;top:0;bottom:0;transition:transform 250ms ease-in-out}@media screen and (max-width: 769px){.buttonizer-preview{left:0}}.buttonizer-preview.frame-size-tablet{width:720px;max-width:720px;left:50%;margin-left:-170px;right:unset;z-index:-1}.buttonizer-preview.frame-size-mobile{width:340px;height:650px;max-width:340px;top:50%;left:50%;margin-top:-300px;margin-left:15px;right:unset;z-index:-1}.hide-bar-button{display:block;position:fixed;left:429px;top:50%;cursor:pointer;margin-top:-30px;z-index:2;height:60px;line-height:60px;width:20px;border-radius:0 10px 10px 0;background:#f0f0f0;border:1px solid #d2d2d2;border-left:1px solid transparent !important;text-align:center;color:#5d5d5d !important;text-decoration:none;transition:all 250ms ease-out;-moz-transition:all 250ms ease-out;-webkit-transition:all 250ms ease-out}.hide-bar-button .fas{margin-left:-4px;color:#2f7789}@media screen and (max-width: 769px){.hide-bar-button{left:unset !important;right:0;top:40px;width:auto;height:auto;line-height:20px;border:0;background:unset;padding:0 20px}.hide-bar-button:before,.hide-bar-button:after{content:none !important}.hide-bar-button:focus{border-left:none !important}}.hide-bar-button .fa-chevron-right{display:none}.hide-bar-button:before{content:"";position:absolute;background-color:transparent;top:-20px;height:20px;width:10px;left:0;box-sizing:inherit;border-bottom-left-radius:10px;box-shadow:0 10px 0 0 #f0f0f0;border-bottom:1px solid #d2d2d2;border-left:1px solid #d2d2d2;transition:all 250ms ease-out;-moz-transition:all 250ms ease-out;-webkit-transition:all 250ms ease-out}.hide-bar-button:after{content:"";position:absolute;background-color:transparent;bottom:-20px;height:20px;width:10px;left:0;box-sizing:inherit;border-top-left-radius:10px;box-shadow:0 -10px 0 0 #f0f0f0;border-top:1px solid #d2d2d2;border-left:1px solid #d2d2d2;transition:all 250ms ease-out;-moz-transition:all 250ms ease-out;-webkit-transition:all 250ms ease-out}.hide-bar-button:focus{outline:none;outline-style:none;box-shadow:none;box-sizing:border-box;border-left:1px solid #f0f0f0}.buttonizer-app .buttonizer-bar,.buttonizer-app .buttonizer-preview,.buttonizer-app .hide-bar-button{transition:all 250ms ease-out;-moz-transition:all 250ms ease-out;-webkit-transition:all 250ms ease-out}@media screen and (max-width: 769px){body.buttonizer-mobile-hide .buttonizer-preview{transform:translateX(100%)}}body.hide-buttonizer-bar .buttonizer-app .buttonizer-bar{transform:translateX(-100%)}body.hide-buttonizer-bar .buttonizer-app .buttonizer-preview,body.hide-buttonizer-bar .buttonizer-app .hide-bar-button{left:-2px}body.hide-buttonizer-bar .buttonizer-app .fas{margin-left:-1px}body.hide-buttonizer-bar .buttonizer-app .hide-bar-button .fa-chevron-right{display:inline-block}body.hide-buttonizer-bar .buttonizer-app .hide-bar-button .fa-chevron-left{display:none}@media screen and (max-width: 769px){body.hide-buttonizer-bar .buttonizer-preview{transform:translateX(0)}}body{color:#717171}.mdc-card{border-radius:4px;background-color:#fff;display:flex;flex-direction:column;box-sizing:border-box;box-shadow:0 1px 1px 0 rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.16)}.collapsible-group{margin:15px 0 !important}.collapsible-group .collapsible-body{padding:15px}.collapsible-group .collapsible-body .setting-group-title{font-size:13px;color:#888888;text-transform:uppercase;font-weight:500}.collapsible-group .collapsible-body .setting-group-title ~ .setting-group-title{padding-top:10px}.collapsible-group .mdc-button.mdc-button--bold{font-size:13px}.MuiSelect-small .MuiSelect-select{font-size:14px;padding:9px 12px}.Mui-buzz-disabled{color:rgba(0,0,0,0.26) !important;cursor:default !important}.Mui-buzz-premium.MuiButton-textPrimary{color:rgba(0,0,0,0.26)}.Mui-buzz-premium.MuiButton-containedPrimary{background:rgba(0,0,0,0.26)}.Mui-buzz-premium.MuiTabs-root .MuiTab-root{color:rgba(0,0,0,0.26)}.Mui-buzz-premium.MuiTabs-root .MuiTabs-indicator{background-color:rgba(0,0,0,0.26)}.MuiInputBase-root input[type="number"]{-moz-appearance:textfield}.MuiInputBase-root input[type="number"]::-webkit-outer-spin-button,.MuiInputBase-root input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}body{font-family:"Roboto", "Helvetica", "Arial", sans-serif}.tippy-tooltip{background:#6d6d6d;color:#ffffff}.buttonizer-app{font-family:Roboto, sans-serif;position:fixed;top:0;bottom:0;left:0;right:0;background:#eeeeee}.buttonizer-app a,.buttonizer-app input{box-shadow:none}.buttonizer-app hr{margin-bottom:14px}.dashboard-warning-msg{padding:12px;margin-bottom:15px;font-size:14px;line-height:20px;border:2px solid rgba(240,132,25,0.5);color:#f08419;display:block}.dashboard-warning-msg b{display:block}.dashboard-warning-msg a{color:#f08419}iframe{border:0}.simplebar-scrollbar.simplebar-visible:before{opacity:0.38 !important}p{font-size:14px;margin-top:5px}
62
+ .device-preview{flex-grow:1}.device-preview button{width:40px;margin:0 2px}
63
+ .revert-button{margin:0 5px !important}.revert-button .MuiButton-label{font-size:15px}.revert-button .spin{animation:spin-animation 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite}@keyframes spin-animation{0%{transform:rotate(0deg)}100%{transform:rotate(-360deg)}}
64
  .MuiDialog-root #alert-dialog-title i{margin-right:15px;vertical-align:middle}.MuiDialog-root.warning .MuiBackdrop-root{background-color:rgba(93,0,0,0.6)}.MuiDialog-root.warning #alert-dialog-title{color:#710909}
65
  .button-container{margin:0 0 13px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;padding:10px;border:1px solid #e2e2e2;background-color:white}.button-container .button-name{max-width:100%}.button-container .button-name .button-name-span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;max-width:100%}.button-container .button-name.drag-icon{min-width:10px}.button-container .button-header{display:flex}.button-container .button-header .button-actions{margin-left:auto;flex-shrink:0}.button-container .button-settings{display:flex}.button-container .button-settings .button-title{display:inline-flex;height:30px;align-items:center;margin-right:10px;font-size:14px}.button-container .button-settings button{height:30px}.button-container .button-settings .button-visibility{flex-grow:1}.button-container .button-settings .button-visibility button{width:40px;min-width:40px;margin:0 2px}.button-container .button-settings .button-actions button{min-width:35px}.button-container .button-settings .clear{clear:both}
66
+ #group-button-extra-buttons .MuiListItemIcon-root{min-width:45px}#group-button-extra-buttons .MuiListItemIcon-root .fas,#group-button-extra-buttons .MuiListItemIcon-root .far{overflow:unset;font-size:1rem;margin-left:5px;text-align:center}
67
  .button-group-container{padding:10px;margin-bottom:15px;border:2px white solid}.button-group-container.currentDrop{border:2px #f9bf87 solid}.button-group-container .group-info{display:flex}.button-group-container .group-info .group-arrow{display:inline-block;width:17px;text-align:left;font-size:12px}.button-group-container .group-info .group-arrow i{-webkit-transition:all 150ms ease;-moz-transition:all 150ms ease;-ms-transition:all 150ms ease;-o-transition:all 150ms ease;transition:all 150ms ease}.button-group-container .group-info .group-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block}.button-group-container .group-info .group-action-spacer{flex-grow:1}.button-group-container .group-info .group-actions{flex-grow:0;flex-shrink:0;margin-left:20px}.button-group-container .buttons{display:none}.button-group-container.opened .group-info .group-arrow i{transform:rotate(90deg)}.button-group-container.opened .buttons{display:block;border-radius:10px;padding:10px;border:2px white solid;transition:border 0.5s}.button-group-container.opened .buttons.currentDrop{border:2px #f9bf87 solid}.button-group-container.opened .buttons.currentDrop .button-container{opacity:0.5}.button-group-container.opened .buttons.currentDrop .button-container.currentDrag{opacity:1}
68
  .desktop-mobile-visibility button{min-width:40px;width:40px}.desktop-mobile-visibility button.buttonMobile{margin-right:5px}
69
  .button-action .button-action-type{padding-bottom:20px}.button-action code{padding:3px 5px 2px 5px;margin:0 1px;background:rgba(0,0,0,0.07)}
70
  .position-buttons button svg{width:20px;fill:currentColor}.position-buttons.position-horizontal button:nth-child(1) svg,.position-buttons.position-horizontal button:nth-child(2) svg{transform:rotate(-90deg)}.position-buttons.position-horizontal button:nth-child(3) svg{transform:rotate(90deg)}.position-buttons.position-vertical button:nth-child(3) svg{transform:rotate(180deg)}.position-textfield{height:28px;-moz-appearance:textfield}.position-textfield ::-webkit-outer-spin-button,.position-textfield ::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
71
  .form-icon-selector .selector{overflow:hidden;border-radius:4px;cursor:pointer;width:100%}.form-icon-selector .selector .viewer{width:100%;height:65px;background-color:#dddddd;display:block;border-radius:0 0 4px 4px;color:white;text-align:center}.form-icon-selector .selector span{border-radius:0 0 4px 4px;display:block;color:white;text-align:center}
72
+ .color-picker-main{width:100%;display:flex;justify-content:flex-end}.color-picker-main .color-picker{display:flex;width:100%;cursor:pointer;justify-content:flex-end;height:28px}.color-picker-main .color-picker .gpw{width:100%;background:url(./images/transparent.png) repeat;border-radius:5px 0 0 5px;box-shadow:0 1px 1px 0 rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.16);overflow:hidden;padding:0}.color-picker-main .color-picker .gpw span.color-preview{display:block;height:100%;background:#f08419}.color-picker-main .color-picker .color-button{height:100%;border-radius:0 5px 5px 0;margin-left:1px;margin-right:0px;box-shadow:0 1px 1px 0 rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.16)}.gpw .popover .type-selector{margin:3px;width:100%}
73
  .slider-container{margin-bottom:15px}.slider-container-input{margin-left:20px;height:28px;max-width:78px;flex-shrink:0}.slider-container-input input{font-size:14px}.slider-container-input input::-webkit-outer-spin-button,.slider-container-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.slider-container-input input[type="number"]{-moz-appearance:textfield}
74
  .icon-or-image{width:100%;min-height:30px}.icon-or-image button{min-width:unset;min-height:40px !important}.icon-or-image button .MuiTab-wrapper{display:block !important}.icon-or-image button .MuiTab-wrapper i{margin-right:5px}
75
  .textfield-corners-input{height:100%;max-width:80px;padding-right:5px !important;margin:0 !important}.textfield-corners-input.textfield-corners-select{max-width:35px}.textfield-corners-input .MuiSelect-root{font-size:12px;padding:5px 12px 5px 8px !important}.textfield-corners-input .MuiSvgIcon-root{font-size:1rem;right:0;top:50%;transform:translateY(-50%)}.textfield-corners-input input{font-size:14px;padding:5px 8px}.textfield-corners-input input::-webkit-outer-spin-button,.textfield-corners-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.textfield-corners-input input[type="number"]{-moz-appearance:textfield}.textfield-corners-input .MuiInputAdornment-root{margin-left:5px}.textfield-corners-input .MuiInputAdornment-root>p{font-size:14px}.textfield-corners-menu li{padding-left:8px;padding-right:8px;font-size:14px}
assets/dashboard.js CHANGED
@@ -8,7 +8,7 @@
8
  *
9
  * Buttonizer is Freemium software. The free version (build) does not contain premium functionality.
10
  *
11
- * (C) 2017-2020 Buttonizer dev-version
12
  *
13
  */
14
  /*!
@@ -21,7 +21,7 @@
21
  *
22
  * Buttonizer is Freemium software. The free version (build) does not contain premium functionality.
23
  *
24
- * (C) 2017-2020 Buttonizer dev-version
25
  *
26
  */
27
  /******/ (function(modules) { // webpackBootstrap
@@ -107,7 +107,7 @@
107
  /******/
108
  /******/
109
  /******/ // Load entry module and return exports
110
- /******/ return __webpack_require__(__webpack_require__.s = 532);
111
  /******/ })
112
  /************************************************************************/
113
  /******/ ([
@@ -118,7 +118,7 @@
118
 
119
 
120
  if (true) {
121
- module.exports = __webpack_require__(533);
122
  } else {}
123
 
124
 
@@ -128,7 +128,7 @@ if (true) {
128
 
129
  "use strict";
130
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return translate; });
131
- /* harmony import */ var dlv__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13);
132
  /* harmony import */ var dlv__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(dlv__WEBPACK_IMPORTED_MODULE_0__);
133
 
134
  function translate(key) {
@@ -182,42 +182,63 @@ function _extends() {
182
 
183
  /***/ }),
184
  /* 3 */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
185
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
186
 
187
  "use strict";
188
  function toVal(mix) {
189
  var k, y, str='';
190
- if (mix) {
191
- if (typeof mix === 'object') {
192
- if (Array.isArray(mix)) {
193
- for (k=0; k < mix.length; k++) {
194
- if (mix[k] && (y = toVal(mix[k]))) {
 
 
 
195
  str && (str += ' ');
196
  str += y;
197
  }
198
  }
199
- } else {
200
- for (k in mix) {
201
- if (mix[k] && (y = toVal(k))) {
202
- str && (str += ' ');
203
- str += y;
204
- }
205
  }
206
  }
207
- } else if (typeof mix !== 'boolean' && !mix.call) {
208
- str && (str += ' ');
209
- str += mix;
210
  }
211
  }
 
212
  return str;
213
  }
214
 
215
  /* harmony default export */ __webpack_exports__["a"] = (function () {
216
- var i=0, x, str='';
217
  while (i < arguments.length) {
218
- if (x = toVal(arguments[i++])) {
219
- str && (str += ' ');
220
- str += x
 
 
221
  }
222
  }
223
  return str;
@@ -225,7 +246,7 @@ function toVal(mix) {
225
 
226
 
227
  /***/ }),
228
- /* 4 */
229
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
230
 
231
  "use strict";
@@ -348,9 +369,10 @@ var formats = {
348
  format: function format(normal, hover) {
349
  return [normal, hover].map(function (val) {
350
  return val === "unset" ? "" : val == null ? "" : val;
351
- }).filter(function (val, key) {
352
- return key === 0 || val !== "";
353
- }).join(";") || "unset";
 
354
  },
355
  parse: function parse(val) {
356
  var value = val;
@@ -371,7 +393,9 @@ var formats = {
371
  if (val === "false") return false;
372
  if (!isNaN(Number(val))) return Number(val);
373
  return val;
374
- });
 
 
375
  }
376
  },
377
 
@@ -399,236 +423,10 @@ var formats = {
399
  }
400
  };
401
 
402
- /***/ }),
403
- /* 5 */
404
- /***/ (function(module, exports, __webpack_require__) {
405
-
406
- /**
407
- * Copyright (c) 2013-present, Facebook, Inc.
408
- *
409
- * This source code is licensed under the MIT license found in the
410
- * LICENSE file in the root directory of this source tree.
411
- */
412
-
413
- if (false) { var throwOnDirectAccess, ReactIs; } else {
414
- // By explicitly using `prop-types` you are opting into new production behavior.
415
- // http://fb.me/prop-types-in-prod
416
- module.exports = __webpack_require__(554)();
417
- }
418
-
419
-
420
  /***/ }),
421
  /* 6 */
422
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
423
 
424
- "use strict";
425
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutProperties; });
426
- /* harmony import */ var _objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22);
427
-
428
- function _objectWithoutProperties(source, excluded) {
429
- if (source == null) return {};
430
- var target = Object(_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(source, excluded);
431
- var key, i;
432
-
433
- if (Object.getOwnPropertySymbols) {
434
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
435
-
436
- for (i = 0; i < sourceSymbolKeys.length; i++) {
437
- key = sourceSymbolKeys[i];
438
- if (excluded.indexOf(key) >= 0) continue;
439
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
440
- target[key] = source[key];
441
- }
442
- }
443
-
444
- return target;
445
- }
446
-
447
- /***/ }),
448
- /* 7 */
449
- /***/ (function(module, exports, __webpack_require__) {
450
-
451
- var global = __webpack_require__(25);
452
- var core = __webpack_require__(89);
453
- var hide = __webpack_require__(68);
454
- var redefine = __webpack_require__(69);
455
- var ctx = __webpack_require__(90);
456
- var PROTOTYPE = 'prototype';
457
-
458
- var $export = function (type, name, source) {
459
- var IS_FORCED = type & $export.F;
460
- var IS_GLOBAL = type & $export.G;
461
- var IS_STATIC = type & $export.S;
462
- var IS_PROTO = type & $export.P;
463
- var IS_BIND = type & $export.B;
464
- var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
465
- var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
466
- var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
467
- var key, own, out, exp;
468
- if (IS_GLOBAL) source = name;
469
- for (key in source) {
470
- // contains in native
471
- own = !IS_FORCED && target && target[key] !== undefined;
472
- // export native or passed
473
- out = (own ? target : source)[key];
474
- // bind timers to global for call from export context
475
- exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
476
- // extend global
477
- if (target) redefine(target, key, out, type & $export.U);
478
- // export
479
- if (exports[key] != out) hide(exports, key, exp);
480
- if (IS_PROTO && expProto[key] != out) expProto[key] = out;
481
- }
482
- };
483
- global.core = core;
484
- // type bitmap
485
- $export.F = 1; // forced
486
- $export.G = 2; // global
487
- $export.S = 4; // static
488
- $export.P = 8; // proto
489
- $export.B = 16; // bind
490
- $export.W = 32; // wrap
491
- $export.U = 64; // safe
492
- $export.R = 128; // real proto method for `library`
493
- module.exports = $export;
494
-
495
-
496
- /***/ }),
497
- /* 8 */
498
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
499
-
500
- "use strict";
501
-
502
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
503
- var esm_extends = __webpack_require__(2);
504
-
505
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
506
- var objectWithoutProperties = __webpack_require__(6);
507
-
508
- // EXTERNAL MODULE: ./node_modules/react/index.js
509
- var react = __webpack_require__(0);
510
- var react_default = /*#__PURE__*/__webpack_require__.n(react);
511
-
512
- // EXTERNAL MODULE: ./node_modules/prop-types/index.js
513
- var prop_types = __webpack_require__(5);
514
-
515
- // EXTERNAL MODULE: ./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
516
- var hoist_non_react_statics_cjs = __webpack_require__(155);
517
- var hoist_non_react_statics_cjs_default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics_cjs);
518
-
519
- // EXTERNAL MODULE: ./node_modules/@material-ui/styles/esm/makeStyles/makeStyles.js + 4 modules
520
- var makeStyles = __webpack_require__(918);
521
-
522
- // EXTERNAL MODULE: ./node_modules/@material-ui/styles/esm/getThemeProps/getThemeProps.js
523
- var getThemeProps = __webpack_require__(965);
524
-
525
- // EXTERNAL MODULE: ./node_modules/@material-ui/styles/esm/useTheme/useTheme.js
526
- var useTheme = __webpack_require__(519);
527
-
528
- // CONCATENATED MODULE: ./node_modules/@material-ui/styles/esm/withStyles/withStyles.js
529
-
530
-
531
-
532
-
533
-
534
-
535
-
536
-
537
- // Link a style sheet with a component.
538
- // It does not modify the component passed to it;
539
- // instead, it returns a new component, with a `classes` property.
540
-
541
- var withStyles_withStyles = function withStyles(stylesOrCreator) {
542
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
543
- return function (Component) {
544
- var defaultTheme = options.defaultTheme,
545
- _options$withTheme = options.withTheme,
546
- withTheme = _options$withTheme === void 0 ? false : _options$withTheme,
547
- name = options.name,
548
- stylesOptions = Object(objectWithoutProperties["a" /* default */])(options, ["defaultTheme", "withTheme", "name"]);
549
-
550
- if (false) {}
551
-
552
- var classNamePrefix = name;
553
-
554
- if (false) { var displayName; }
555
-
556
- var useStyles = Object(makeStyles["a" /* default */])(stylesOrCreator, Object(esm_extends["a" /* default */])({
557
- defaultTheme: defaultTheme,
558
- Component: Component,
559
- name: name || Component.displayName,
560
- classNamePrefix: classNamePrefix
561
- }, stylesOptions));
562
- var WithStyles = react_default.a.forwardRef(function WithStyles(props, ref) {
563
- var classesProp = props.classes,
564
- innerRef = props.innerRef,
565
- other = Object(objectWithoutProperties["a" /* default */])(props, ["classes", "innerRef"]); // The wrapper receives only user supplied props, which could be a subset of
566
- // the actual props Component might receive due to merging with defaultProps.
567
- // So copying it here would give us the same result in the wrapper as well.
568
-
569
-
570
- var classes = useStyles(Object(esm_extends["a" /* default */])({}, Component.defaultProps, {}, props));
571
- var theme;
572
- var more = other;
573
-
574
- if (typeof name === 'string' || withTheme) {
575
- // name and withTheme are invariant in the outer scope
576
- // eslint-disable-next-line react-hooks/rules-of-hooks
577
- theme = Object(useTheme["a" /* default */])() || defaultTheme;
578
-
579
- if (name) {
580
- more = Object(getThemeProps["a" /* default */])({
581
- theme: theme,
582
- name: name,
583
- props: other
584
- });
585
- } // Provide the theme to the wrapped component.
586
- // So we don't have to use the `withTheme()` Higher-order Component.
587
-
588
-
589
- if (withTheme && !more.theme) {
590
- more.theme = theme;
591
- }
592
- }
593
-
594
- return react_default.a.createElement(Component, Object(esm_extends["a" /* default */])({
595
- ref: innerRef || ref,
596
- classes: classes
597
- }, more));
598
- });
599
- false ? undefined : void 0;
600
-
601
- if (false) {}
602
-
603
- hoist_non_react_statics_cjs_default()(WithStyles, Component);
604
-
605
- if (false) {}
606
-
607
- return WithStyles;
608
- };
609
- };
610
-
611
- /* harmony default export */ var esm_withStyles_withStyles = (withStyles_withStyles);
612
- // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/styles/defaultTheme.js
613
- var styles_defaultTheme = __webpack_require__(185);
614
-
615
- // CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/withStyles.js
616
-
617
-
618
-
619
-
620
- function styles_withStyles_withStyles(stylesOrCreator, options) {
621
- return esm_withStyles_withStyles(stylesOrCreator, Object(esm_extends["a" /* default */])({
622
- defaultTheme: styles_defaultTheme["a" /* default */]
623
- }, options));
624
- }
625
-
626
- /* harmony default export */ var styles_withStyles = __webpack_exports__["a"] = (styles_withStyles_withStyles);
627
-
628
- /***/ }),
629
- /* 9 */
630
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
631
-
632
  "use strict";
633
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __extends; });
634
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __assign; });
@@ -848,25 +646,291 @@ function __importDefault(mod) {
848
  }
849
 
850
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
851
  /***/ }),
852
  /* 10 */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
853
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
854
 
855
  "use strict";
856
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return capitalize; });
 
 
857
  // It should to be noted that this function isn't equivalent to `text-transform: capitalize`.
858
  //
859
  // A strict capitalization should uppercase the first letter of each word a the sentence.
860
  // We only handle the first word.
861
  function capitalize(string) {
862
- if (false) {}
 
 
863
 
864
  return string.charAt(0).toUpperCase() + string.slice(1);
865
  }
866
 
867
  /***/ }),
868
- /* 11 */,
869
- /* 12 */
870
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
871
 
872
  "use strict";
@@ -874,21 +938,20 @@ function capitalize(string) {
874
  // EXPORTS
875
  __webpack_require__.d(__webpack_exports__, "a", function() { return /* reexport */ components_Provider; });
876
  __webpack_require__.d(__webpack_exports__, "b", function() { return /* reexport */ connect_connect; });
 
877
 
878
- // UNUSED EXPORTS: connectAdvanced, ReactReduxContext, batch, useDispatch, createDispatchHook, useSelector, createSelectorHook, useStore, createStoreHook, shallowEqual
879
 
880
  // EXTERNAL MODULE: ./node_modules/react/index.js
881
  var react = __webpack_require__(0);
882
  var react_default = /*#__PURE__*/__webpack_require__.n(react);
883
 
884
  // EXTERNAL MODULE: ./node_modules/prop-types/index.js
885
- var prop_types = __webpack_require__(5);
886
 
887
  // CONCATENATED MODULE: ./node_modules/react-redux/es/components/Context.js
888
 
889
- var ReactReduxContext =
890
- /*#__PURE__*/
891
- react_default.a.createContext(null);
892
 
893
  if (false) {}
894
 
@@ -981,9 +1044,7 @@ function createListenerCollection() {
981
  };
982
  }
983
 
984
- var Subscription =
985
- /*#__PURE__*/
986
- function () {
987
  function Subscription(store, parentSub) {
988
  this.store = store;
989
  this.parentSub = parentSub;
@@ -1068,7 +1129,7 @@ function Provider(_ref) {
1068
  };
1069
  }, [contextValue, previousState]);
1070
  var Context = context || ReactReduxContext;
1071
- return react_default.a.createElement(Context.Provider, {
1072
  value: contextValue
1073
  }, children);
1074
  }
@@ -1076,18 +1137,45 @@ function Provider(_ref) {
1076
  if (false) {}
1077
 
1078
  /* harmony default export */ var components_Provider = (Provider);
1079
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
1080
- var esm_extends = __webpack_require__(2);
 
 
 
1081
 
1082
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
1083
- var objectWithoutPropertiesLoose = __webpack_require__(22);
 
 
 
 
1084
 
1085
- // EXTERNAL MODULE: ./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
1086
- var hoist_non_react_statics_cjs = __webpack_require__(155);
1087
- var hoist_non_react_statics_cjs_default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics_cjs);
1088
 
1089
- // EXTERNAL MODULE: ./node_modules/react-is/index.js
1090
- var react_is = __webpack_require__(116);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1091
 
1092
  // CONCATENATED MODULE: ./node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js
1093
  // React currently throws a warning when using useLayoutEffect on the server.
@@ -1227,19 +1315,19 @@ var initStateUpdates = function initStateUpdates() {
1227
  };
1228
 
1229
  function connectAdvanced(
1230
- /*
1231
- selectorFactory is a func that is responsible for returning the selector function used to
1232
- compute new props from state, props, and dispatch. For example:
1233
- export default connectAdvanced((dispatch, options) => (state, props) => ({
1234
- thing: state.things[props.thingId],
1235
- saveThing: fields => dispatch(actionCreators.saveThing(props.thingId, fields)),
1236
- }))(YourComponent)
1237
- Access to dispatch is provided to the factory so selectorFactories can bind actionCreators
1238
- outside of their selector as an optimization. Options passed to connectAdvanced are passed to
1239
- the selectorFactory, along with displayName and WrappedComponent, as the second argument.
1240
- Note that selectorFactory is responsible for all caching/memoization of inbound and outbound
1241
- props. Do not use connectAdvanced directly without memoizing results between calls to your
1242
- selector, otherwise the Connect component will re-render on every state or props change.
1243
  */
1244
  selectorFactory, // options object:
1245
  _ref) {
@@ -1266,7 +1354,7 @@ _ref) {
1266
  forwardRef = _ref2$forwardRef === void 0 ? false : _ref2$forwardRef,
1267
  _ref2$context = _ref2.context,
1268
  context = _ref2$context === void 0 ? ReactReduxContext : _ref2$context,
1269
- connectOptions = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref2, ["getDisplayName", "methodName", "renderCountProp", "shouldHandleStateChanges", "storeKey", "withRef", "forwardRef", "context"]);
1270
 
1271
  if (false) { var customStoreWarningMessage; }
1272
 
@@ -1277,7 +1365,7 @@ _ref) {
1277
  var wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component';
1278
  var displayName = getDisplayName(wrappedComponentName);
1279
 
1280
- var selectorFactoryOptions = Object(esm_extends["a" /* default */])({}, connectOptions, {
1281
  getDisplayName: getDisplayName,
1282
  methodName: methodName,
1283
  renderCountProp: renderCountProp,
@@ -1306,19 +1394,19 @@ _ref) {
1306
  // Distinguish between actual "data" props that were passed to the wrapper component,
1307
  // and values needed to control behavior (forwarded refs, alternate context instances).
1308
  // To maintain the wrapperProps object reference, memoize this destructuring.
1309
- var forwardedRef = props.forwardedRef,
1310
- wrapperProps = Object(objectWithoutPropertiesLoose["a" /* default */])(props, ["forwardedRef"]);
1311
 
1312
- return [props.context, forwardedRef, wrapperProps];
1313
  }, [props]),
1314
  propsContext = _useMemo[0],
1315
- forwardedRef = _useMemo[1],
1316
  wrapperProps = _useMemo[2];
1317
 
1318
  var ContextToUse = Object(react["useMemo"])(function () {
1319
  // Users may optionally pass in a custom context instance to use instead of our ReactReduxContext.
1320
  // Memoize the check that determines which context instance we should use.
1321
- return propsContext && propsContext.Consumer && Object(react_is["isContextConsumer"])(react_default.a.createElement(propsContext.Consumer, null)) ? propsContext : Context;
1322
  }, [propsContext, Context]); // Retrieve the store and ancestor subscription via context, if available
1323
 
1324
  var contextValue = Object(react["useContext"])(ContextToUse); // The store _must_ exist as either a prop or in context.
@@ -1365,7 +1453,7 @@ _ref) {
1365
  // connected descendants won't update until after this component is done
1366
 
1367
 
1368
- return Object(esm_extends["a" /* default */])({}, contextValue, {
1369
  subscription: subscription
1370
  });
1371
  }, [didStoreComeFromProps, contextValue, subscription]); // We need to force this wrapper component to re-render whenever a Redux store update
@@ -1412,10 +1500,10 @@ _ref) {
1412
  // We memoize the elements for the rendered child component as an optimization.
1413
 
1414
  var renderedWrappedComponent = Object(react["useMemo"])(function () {
1415
- return react_default.a.createElement(WrappedComponent, Object(esm_extends["a" /* default */])({}, actualChildProps, {
1416
- ref: forwardedRef
1417
  }));
1418
- }, [forwardedRef, WrappedComponent, actualChildProps]); // If React sees the exact same element reference as last time, it bails out of re-rendering
1419
  // that child, same as if it was wrapped in React.memo() or returned false from shouldComponentUpdate.
1420
 
1421
  var renderedChild = Object(react["useMemo"])(function () {
@@ -1423,7 +1511,7 @@ _ref) {
1423
  // If this component is subscribed to store updates, we need to pass its own
1424
  // subscription instance down to our descendants. That means rendering the same
1425
  // Context instance, and putting a different value into the context.
1426
- return react_default.a.createElement(ContextToUse.Provider, {
1427
  value: overriddenContextValue
1428
  }, renderedWrappedComponent);
1429
  }
@@ -1440,8 +1528,8 @@ _ref) {
1440
 
1441
  if (forwardRef) {
1442
  var forwarded = react_default.a.forwardRef(function forwardConnectRef(props, ref) {
1443
- return react_default.a.createElement(Connect, Object(esm_extends["a" /* default */])({}, props, {
1444
- forwardedRef: ref
1445
  }));
1446
  });
1447
  forwarded.displayName = displayName;
@@ -1481,12 +1569,12 @@ function shallowEqual(objA, objB) {
1481
  return true;
1482
  }
1483
  // EXTERNAL MODULE: ./node_modules/redux/es/redux.js
1484
- var redux = __webpack_require__(97);
1485
 
1486
  // CONCATENATED MODULE: ./node_modules/react-redux/es/utils/isPlainObject.js
1487
- /**
1488
- * @param {any} obj The object to inspect.
1489
- * @returns {boolean} True if the argument appears to be a plain object.
1490
  */
1491
  function isPlainObject(obj) {
1492
  if (typeof obj !== 'object' || obj === null) return false;
@@ -1501,11 +1589,11 @@ function isPlainObject(obj) {
1501
  return proto === baseProto;
1502
  }
1503
  // CONCATENATED MODULE: ./node_modules/react-redux/es/utils/warning.js
1504
- /**
1505
- * Prints a warning in the console if it exists.
1506
- *
1507
- * @param {String} message The warning message.
1508
- * @returns {void}
1509
  */
1510
  function warning(message) {
1511
  /* eslint-disable no-console */
@@ -1632,7 +1720,7 @@ function whenMapStateToPropsIsMissing(mapStateToProps) {
1632
 
1633
 
1634
  function defaultMergeProps(stateProps, dispatchProps, ownProps) {
1635
- return Object(esm_extends["a" /* default */])({}, ownProps, {}, stateProps, {}, dispatchProps);
1636
  }
1637
  function wrapMergePropsFunc(mergeProps) {
1638
  return function initMergePropsProxy(dispatch, _ref) {
@@ -1758,7 +1846,7 @@ function finalPropsSelectorFactory(dispatch, _ref2) {
1758
  var initMapStateToProps = _ref2.initMapStateToProps,
1759
  initMapDispatchToProps = _ref2.initMapDispatchToProps,
1760
  initMergeProps = _ref2.initMergeProps,
1761
- options = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref2, ["initMapStateToProps", "initMapDispatchToProps", "initMergeProps"]);
1762
 
1763
  var mapStateToProps = initMapStateToProps(dispatch, options);
1764
  var mapDispatchToProps = initMapDispatchToProps(dispatch, options);
@@ -1778,21 +1866,21 @@ function finalPropsSelectorFactory(dispatch, _ref2) {
1778
 
1779
 
1780
 
1781
- /*
1782
- connect is a facade over connectAdvanced. It turns its args into a compatible
1783
- selectorFactory, which has the signature:
1784
-
1785
- (dispatch, options) => (nextState, nextOwnProps) => nextFinalProps
1786
-
1787
- connect passes its args to connectAdvanced as options, which will in turn pass them to
1788
- selectorFactory each time a Connect component instance is instantiated or hot reloaded.
1789
-
1790
- selectorFactory returns a final props selector from its mapStateToProps,
1791
- mapStateToPropsFactories, mapDispatchToProps, mapDispatchToPropsFactories, mergeProps,
1792
- mergePropsFactories, and pure args.
1793
-
1794
- The resulting final props selector is called by the Connect component instance whenever
1795
- it receives new props or store state.
1796
  */
1797
 
1798
  function match(arg, factories, name) {
@@ -1841,12 +1929,12 @@ function createConnect(_temp) {
1841
  areStatePropsEqual = _ref3$areStatePropsEq === void 0 ? shallowEqual : _ref3$areStatePropsEq,
1842
  _ref3$areMergedPropsE = _ref3.areMergedPropsEqual,
1843
  areMergedPropsEqual = _ref3$areMergedPropsE === void 0 ? shallowEqual : _ref3$areMergedPropsE,
1844
- extraOptions = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref3, ["pure", "areStatesEqual", "areOwnPropsEqual", "areStatePropsEqual", "areMergedPropsEqual"]);
1845
 
1846
  var initMapStateToProps = match(mapStateToProps, mapStateToPropsFactories, 'mapStateToProps');
1847
  var initMapDispatchToProps = match(mapDispatchToProps, mapDispatchToPropsFactories, 'mapDispatchToProps');
1848
  var initMergeProps = match(mergeProps, mergePropsFactories, 'mergeProps');
1849
- return connectHOC(selectorFactory, Object(esm_extends["a" /* default */])({
1850
  // used in error messages
1851
  methodName: 'connect',
1852
  // used to compute Connect's displayName from the wrapped component's displayName.
@@ -1871,21 +1959,21 @@ function createConnect(_temp) {
1871
  // CONCATENATED MODULE: ./node_modules/react-redux/es/hooks/useReduxContext.js
1872
 
1873
 
1874
- /**
1875
- * A hook to access the value of the `ReactReduxContext`. This is a low-level
1876
- * hook that you should usually not need to call directly.
1877
- *
1878
- * @returns {any} the value of the `ReactReduxContext`
1879
- *
1880
- * @example
1881
- *
1882
- * import React from 'react'
1883
- * import { useReduxContext } from 'react-redux'
1884
- *
1885
- * export const CounterComponent = ({ value }) => {
1886
- * const { store } = useReduxContext()
1887
- * return <div>{store.getState()}</div>
1888
- * }
1889
  */
1890
 
1891
  function useReduxContext_useReduxContext() {
@@ -1899,11 +1987,11 @@ function useReduxContext_useReduxContext() {
1899
 
1900
 
1901
 
1902
- /**
1903
- * Hook factory, which creates a `useStore` hook bound to a given context.
1904
- *
1905
- * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.
1906
- * @returns {Function} A `useStore` hook bound to the specified context.
1907
  */
1908
 
1909
  function createStoreHook(context) {
@@ -1921,33 +2009,31 @@ function createStoreHook(context) {
1921
  return store;
1922
  };
1923
  }
1924
- /**
1925
- * A hook to access the redux store.
1926
- *
1927
- * @returns {any} the redux store
1928
- *
1929
- * @example
1930
- *
1931
- * import React from 'react'
1932
- * import { useStore } from 'react-redux'
1933
- *
1934
- * export const ExampleComponent = () => {
1935
- * const store = useStore()
1936
- * return <div>{store.getState()}</div>
1937
- * }
1938
  */
1939
 
1940
- var useStore_useStore =
1941
- /*#__PURE__*/
1942
- createStoreHook();
1943
  // CONCATENATED MODULE: ./node_modules/react-redux/es/hooks/useDispatch.js
1944
 
1945
 
1946
- /**
1947
- * Hook factory, which creates a `useDispatch` hook bound to a given context.
1948
- *
1949
- * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.
1950
- * @returns {Function} A `useDispatch` hook bound to the specified context.
1951
  */
1952
 
1953
  function createDispatchHook(context) {
@@ -1961,31 +2047,29 @@ function createDispatchHook(context) {
1961
  return store.dispatch;
1962
  };
1963
  }
1964
- /**
1965
- * A hook to access the redux `dispatch` function.
1966
- *
1967
- * @returns {any|function} redux store's `dispatch` function
1968
- *
1969
- * @example
1970
- *
1971
- * import React, { useCallback } from 'react'
1972
- * import { useDispatch } from 'react-redux'
1973
- *
1974
- * export const CounterComponent = ({ value }) => {
1975
- * const dispatch = useDispatch()
1976
- * const increaseCounter = useCallback(() => dispatch({ type: 'increase-counter' }), [])
1977
- * return (
1978
- * <div>
1979
- * <span>{value}</span>
1980
- * <button onClick={increaseCounter}>Increase counter</button>
1981
- * </div>
1982
- * )
1983
- * }
1984
- */
1985
-
1986
- var useDispatch =
1987
- /*#__PURE__*/
1988
- createDispatchHook();
1989
  // CONCATENATED MODULE: ./node_modules/react-redux/es/hooks/useSelector.js
1990
 
1991
 
@@ -2008,12 +2092,14 @@ function useSelectorWithStoreAndSubscription(selector, equalityFn, store, contex
2008
  }, [store, contextSub]);
2009
  var latestSubscriptionCallbackError = Object(react["useRef"])();
2010
  var latestSelector = Object(react["useRef"])();
 
2011
  var latestSelectedState = Object(react["useRef"])();
 
2012
  var selectedState;
2013
 
2014
  try {
2015
- if (selector !== latestSelector.current || latestSubscriptionCallbackError.current) {
2016
- selectedState = selector(store.getState());
2017
  } else {
2018
  selectedState = latestSelectedState.current;
2019
  }
@@ -2027,6 +2113,7 @@ function useSelectorWithStoreAndSubscription(selector, equalityFn, store, contex
2027
 
2028
  useIsomorphicLayoutEffect(function () {
2029
  latestSelector.current = selector;
 
2030
  latestSelectedState.current = selectedState;
2031
  latestSubscriptionCallbackError.current = undefined;
2032
  });
@@ -2048,7 +2135,7 @@ function useSelectorWithStoreAndSubscription(selector, equalityFn, store, contex
2048
  latestSubscriptionCallbackError.current = err;
2049
  }
2050
 
2051
- forceRender({});
2052
  }
2053
 
2054
  subscription.onStateChange = checkForUpdates;
@@ -2060,11 +2147,11 @@ function useSelectorWithStoreAndSubscription(selector, equalityFn, store, contex
2060
  }, [store, subscription]);
2061
  return selectedState;
2062
  }
2063
- /**
2064
- * Hook factory, which creates a `useSelector` hook bound to a given context.
2065
- *
2066
- * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.
2067
- * @returns {Function} A `useSelector` hook bound to the specified context.
2068
  */
2069
 
2070
 
@@ -2087,38 +2174,38 @@ function createSelectorHook(context) {
2087
  store = _useReduxContext.store,
2088
  contextSub = _useReduxContext.subscription;
2089
 
2090
- return useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub);
 
 
2091
  };
2092
  }
2093
- /**
2094
- * A hook to access the redux store's state. This hook takes a selector function
2095
- * as an argument. The selector is called with the store state.
2096
- *
2097
- * This hook takes an optional equality comparison function as the second parameter
2098
- * that allows you to customize the way the selected state is compared to determine
2099
- * whether the component needs to be re-rendered.
2100
- *
2101
- * @param {Function} selector the selector function
2102
- * @param {Function=} equalityFn the function that will be used to determine equality
2103
- *
2104
- * @returns {any} the selected state
2105
- *
2106
- * @example
2107
- *
2108
- * import React from 'react'
2109
- * import { useSelector } from 'react-redux'
2110
- *
2111
- * export const CounterComponent = () => {
2112
- * const counter = useSelector(state => state.counter)
2113
- * return <div>{counter}</div>
2114
- * }
2115
  */
2116
 
2117
- var useSelector =
2118
- /*#__PURE__*/
2119
- createSelectorHook();
2120
  // EXTERNAL MODULE: ./node_modules/react-dom/index.js
2121
- var react_dom = __webpack_require__(29);
2122
 
2123
  // CONCATENATED MODULE: ./node_modules/react-redux/es/utils/reactBatchedUpdates.js
2124
  /* eslint-disable import/no-unresolved */
@@ -2138,7 +2225,7 @@ setBatch(react_dom["unstable_batchedUpdates"]);
2138
 
2139
 
2140
  /***/ }),
2141
- /* 13 */
2142
  /***/ (function(module, exports, __webpack_require__) {
2143
 
2144
  !function(t,n){ true?module.exports=function(t,n,e,i,o){for(n=n.split?n.split("."):n,i=0;i<n.length;i++)t=t?t[n[i]]:o;return t===o?e:t}:undefined}(this);
@@ -2146,7 +2233,7 @@ setBatch(react_dom["unstable_batchedUpdates"]);
2146
 
2147
 
2148
  /***/ }),
2149
- /* 14 */
2150
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2151
 
2152
  "use strict";
@@ -2162,8 +2249,8 @@ setBatch(react_dom["unstable_batchedUpdates"]);
2162
  /* unused harmony export removeExcludedDate */
2163
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return addRecord; });
2164
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return removeRecord; });
2165
- /* harmony import */ var buttonizer_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);
2166
- /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(119);
2167
 
2168
 
2169
  /**
@@ -2345,7 +2432,7 @@ function removeRecord(model_id, model) {
2345
  }
2346
 
2347
  /***/ }),
2348
- /* 15 */
2349
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2350
 
2351
  "use strict";
@@ -2360,6 +2447,9 @@ function removeRecord(model_id, model) {
2360
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return fade; });
2361
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return darken; });
2362
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return lighten; });
 
 
 
2363
  /* eslint-disable no-use-before-define */
2364
 
2365
  /**
@@ -2388,7 +2478,7 @@ function clamp(value) {
2388
 
2389
  function hexToRgb(color) {
2390
  color = color.substr(1);
2391
- var re = new RegExp(".{1,".concat(color.length / 3, "}"), 'g');
2392
  var colors = color.match(re);
2393
 
2394
  if (colors && colors[0].length === 1) {
@@ -2397,8 +2487,8 @@ function hexToRgb(color) {
2397
  });
2398
  }
2399
 
2400
- return colors ? "rgb(".concat(colors.map(function (n) {
2401
- return parseInt(n, 16);
2402
  }).join(', '), ")") : '';
2403
  }
2404
 
@@ -2484,7 +2574,7 @@ function decomposeColor(color) {
2484
  var type = color.substring(0, marker);
2485
 
2486
  if (['rgb', 'rgba', 'hsl', 'hsla'].indexOf(type) === -1) {
2487
- throw new Error(["Material-UI: unsupported `".concat(color, "` color."), 'We support the following formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla().'].join('\n'));
2488
  }
2489
 
2490
  var values = color.substring(marker + 1, color.length - 1).split(',');
@@ -2635,60 +2725,6 @@ function lighten(color, coefficient) {
2635
  return recomposeColor(color);
2636
  }
2637
 
2638
- /***/ }),
2639
- /* 16 */
2640
- /***/ (function(module, exports, __webpack_require__) {
2641
-
2642
- "use strict";
2643
-
2644
-
2645
- Object.defineProperty(exports, "__esModule", {
2646
- value: true
2647
- });
2648
- exports.ReactCSS = exports.loop = exports.handleActive = exports.handleHover = exports.hover = undefined;
2649
-
2650
- var _flattenNames = __webpack_require__(608);
2651
-
2652
- var _flattenNames2 = _interopRequireDefault(_flattenNames);
2653
-
2654
- var _mergeClasses = __webpack_require__(629);
2655
-
2656
- var _mergeClasses2 = _interopRequireDefault(_mergeClasses);
2657
-
2658
- var _autoprefix = __webpack_require__(646);
2659
-
2660
- var _autoprefix2 = _interopRequireDefault(_autoprefix);
2661
-
2662
- var _hover2 = __webpack_require__(647);
2663
-
2664
- var _hover3 = _interopRequireDefault(_hover2);
2665
-
2666
- var _active = __webpack_require__(648);
2667
-
2668
- var _active2 = _interopRequireDefault(_active);
2669
-
2670
- var _loop2 = __webpack_require__(649);
2671
-
2672
- var _loop3 = _interopRequireDefault(_loop2);
2673
-
2674
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2675
-
2676
- exports.hover = _hover3.default;
2677
- exports.handleHover = _hover3.default;
2678
- exports.handleActive = _active2.default;
2679
- exports.loop = _loop3.default;
2680
- var ReactCSS = exports.ReactCSS = function ReactCSS(classes) {
2681
- for (var _len = arguments.length, activations = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
2682
- activations[_key - 1] = arguments[_key];
2683
- }
2684
-
2685
- var activeNames = (0, _flattenNames2.default)(activations);
2686
- var merged = (0, _mergeClasses2.default)(classes, activeNames);
2687
- return (0, _autoprefix2.default)(merged);
2688
- };
2689
-
2690
- exports.default = ReactCSS;
2691
-
2692
  /***/ }),
2693
  /* 17 */
2694
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -2697,7 +2733,7 @@ exports.default = ReactCSS;
2697
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useForkRef; });
2698
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
2699
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2700
- /* harmony import */ var _setRef__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(95);
2701
 
2702
 
2703
  function useForkRef(refA, refB) {
@@ -2719,136 +2755,16 @@ function useForkRef(refA, refB) {
2719
  }
2720
 
2721
  /***/ }),
2722
- /* 18 */
2723
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
2724
-
2725
- "use strict";
2726
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return CollapsibleGroup; });
2727
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
2728
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2729
- /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(109);
2730
- /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3);
2731
- /* harmony import */ var _collapsibleGroup_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(1251);
2732
- /* harmony import */ var _collapsibleGroup_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_collapsibleGroup_scss__WEBPACK_IMPORTED_MODULE_3__);
2733
- function _extends() { _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; }; return _extends.apply(this, arguments); }
2734
-
2735
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2736
-
2737
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
2738
-
2739
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
2740
-
2741
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
2742
-
2743
- function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
2744
-
2745
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
2746
-
2747
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
2748
-
2749
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
2750
-
2751
-
2752
-
2753
-
2754
-
2755
- function CollapsibleGroup(_ref) {
2756
- var _ref$opened = _ref.opened,
2757
- opened = _ref$opened === void 0 ? false : _ref$opened,
2758
- _ref$title = _ref.title,
2759
- title = _ref$title === void 0 ? "" : _ref$title,
2760
- _ref$bodySpacing = _ref.bodySpacing,
2761
- bodySpacing = _ref$bodySpacing === void 0 ? true : _ref$bodySpacing,
2762
- _ref$className = _ref.className,
2763
- className = _ref$className === void 0 ? null : _ref$className,
2764
- children = _ref.children,
2765
- onSetIsOpened = _ref.onSetIsOpened,
2766
- groupProps = _objectWithoutProperties(_ref, ["opened", "title", "bodySpacing", "className", "children", "onSetIsOpened"]);
2767
-
2768
- if (children == null) return null;
2769
-
2770
- var _useState = Object(react__WEBPACK_IMPORTED_MODULE_0__["useState"])(opened),
2771
- _useState2 = _slicedToArray(_useState, 2),
2772
- isOpened = _useState2[0],
2773
- setIsOpened = _useState2[1];
2774
-
2775
- Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
2776
- setIsOpened(opened);
2777
- }, [opened]);
2778
-
2779
- var handleClick = function handleClick() {
2780
- var newIsOpened = !isOpened;
2781
- onSetIsOpened && onSetIsOpened(newIsOpened);
2782
- setIsOpened(newIsOpened);
2783
- };
2784
-
2785
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
2786
- className: Object(clsx__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])("collapsible-group mdc-card", isOpened && "collapsible-opened", className)
2787
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], _extends({
2788
- onClick: handleClick,
2789
- color: "primary"
2790
- }, groupProps), title, " ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("i", {
2791
- className: "fas fa-chevron-down"
2792
- })), isOpened && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
2793
- className: Object(clsx__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(bodySpacing && "collapsible-body")
2794
- }, children));
2795
- }
2796
-
2797
- /***/ }),
2798
  /* 19 */
2799
- /***/ (function(module, exports, __webpack_require__) {
2800
-
2801
- var baseMerge = __webpack_require__(293),
2802
- createAssigner = __webpack_require__(333);
2803
-
2804
- /**
2805
- * This method is like `_.assign` except that it recursively merges own and
2806
- * inherited enumerable string keyed properties of source objects into the
2807
- * destination object. Source properties that resolve to `undefined` are
2808
- * skipped if a destination value exists. Array and plain object properties
2809
- * are merged recursively. Other objects and value types are overridden by
2810
- * assignment. Source objects are applied from left to right. Subsequent
2811
- * sources overwrite property assignments of previous sources.
2812
- *
2813
- * **Note:** This method mutates `object`.
2814
- *
2815
- * @static
2816
- * @memberOf _
2817
- * @since 0.5.0
2818
- * @category Object
2819
- * @param {Object} object The destination object.
2820
- * @param {...Object} [sources] The source objects.
2821
- * @returns {Object} Returns `object`.
2822
- * @example
2823
- *
2824
- * var object = {
2825
- * 'a': [{ 'b': 2 }, { 'd': 4 }]
2826
- * };
2827
- *
2828
- * var other = {
2829
- * 'a': [{ 'c': 3 }, { 'e': 5 }]
2830
- * };
2831
- *
2832
- * _.merge(object, other);
2833
- * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }
2834
- */
2835
- var merge = createAssigner(function(object, source, srcIndex) {
2836
- baseMerge(object, source, srcIndex);
2837
- });
2838
-
2839
- module.exports = merge;
2840
-
2841
-
2842
- /***/ }),
2843
- /* 20 */
2844
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2845
 
2846
  "use strict";
2847
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return SettingsContainer; });
2848
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
2849
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2850
- /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);
2851
- /* harmony import */ var _settingsContainer_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(1253);
2852
  /* harmony import */ var _settingsContainer_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_settingsContainer_scss__WEBPACK_IMPORTED_MODULE_2__);
2853
  function _extends() { _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; }; return _extends.apply(this, arguments); }
2854
 
@@ -2880,39 +2796,83 @@ function SettingsContainer(_ref) {
2880
  }
2881
 
2882
  /***/ }),
2883
- /* 21 */
2884
- /***/ (function(module, exports, __webpack_require__) {
2885
 
2886
- var isObject = __webpack_require__(32);
2887
- module.exports = function (it) {
2888
- if (!isObject(it)) throw TypeError(it + ' is not an object!');
2889
- return it;
2890
- };
 
 
 
 
2891
 
 
2892
 
2893
- /***/ }),
2894
- /* 22 */
2895
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
2896
 
2897
- "use strict";
2898
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutPropertiesLoose; });
2899
- function _objectWithoutPropertiesLoose(source, excluded) {
2900
- if (source == null) return {};
2901
- var target = {};
2902
- var sourceKeys = Object.keys(source);
2903
- var key, i;
2904
 
2905
- for (i = 0; i < sourceKeys.length; i++) {
2906
- key = sourceKeys[i];
2907
- if (excluded.indexOf(key) >= 0) continue;
2908
- target[key] = source[key];
2909
- }
2910
 
2911
- return target;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2912
  }
2913
 
2914
  /***/ }),
2915
- /* 23 */
2916
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2917
 
2918
  "use strict";
@@ -2923,13 +2883,13 @@ function _objectWithoutPropertiesLoose(source, excluded) {
2923
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return _get; });
2924
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _def; });
2925
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return _defs; });
2926
- /* harmony import */ var _index__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(38);
2927
- /* harmony import */ var buttonizer_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4);
2928
- /* harmony import */ var buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(51);
2929
  /* harmony import */ var buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2__);
2930
- /* harmony import */ var lodash_defaults__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(386);
2931
  /* harmony import */ var lodash_defaults__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_defaults__WEBPACK_IMPORTED_MODULE_3__);
2932
- /* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(19);
2933
  /* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_merge__WEBPACK_IMPORTED_MODULE_4__);
2934
  /* global process */
2935
 
@@ -2977,11 +2937,15 @@ function getGroupCount() {
2977
  * @param {string} key to be getted key
2978
  * @param {obj} record object to get key out of
2979
  * @param {string} model (optional) when filled with (button|group), returns default if value not present. when defaults is left blank, returns "" when there is no value.
 
2980
  */
2981
 
2982
  function _get(key, record) {
2983
  var model = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
2984
  var parent = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
 
 
 
2985
 
2986
  if (typeof record === "undefined" || typeof key === "undefined") {
2987
  console.log("record: " + record);
@@ -3005,7 +2969,7 @@ function _get(key, record) {
3005
 
3006
  if (value == null) return !model ? ["", ""] : _defs(model, key, [], parentValue);
3007
  var result = buttonizer_constants__WEBPACK_IMPORTED_MODULE_1__[/* formats */ "c"]["normal_hover"].parse(value);
3008
- return model ? _defs(model, key, result, parentValue) : lodash_merge__WEBPACK_IMPORTED_MODULE_4___default()(["", ""], result);
3009
  }
3010
  function _def(model, key) {
3011
  var fallback = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "";
@@ -3025,6 +2989,7 @@ function _def(model, key) {
3025
  function _defs(model, key) {
3026
  var self = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
3027
  var parent = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
 
3028
 
3029
  if (!Object.keys(buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2__["dashboard"]).includes(model)) {
3030
  console.error("model ".concat(model, " not familiar"));
@@ -3037,4217 +3002,3677 @@ function _defs(model, key) {
3037
  }
3038
 
3039
  var def = buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2__["dashboard"][model][key];
3040
- if (model === "group") return mergeGroupDefaults(self, def);
3041
- if (model === "button") return mergeButtonDefaults(self, parent, def);
 
3042
  }
3043
 
3044
  function mergeGroupDefaults() {
3045
  var self = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
3046
  var def = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
3047
- return lodash_defaults__WEBPACK_IMPORTED_MODULE_3___default()(self, def, [self[0], self[0]], [def[0], def[0]]);
 
 
 
 
 
 
 
 
3048
  }
3049
 
3050
  function mergeButtonDefaults() {
3051
  var self = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
3052
  var parent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
3053
  var def = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
3054
- return lodash_defaults__WEBPACK_IMPORTED_MODULE_3___default()(self, parent, [undefined, self[0]], def, [undefined, parent[0]], [undefined, def[0]]);
3055
- }
3056
 
3057
- /***/ }),
3058
- /* 24 */
3059
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
3060
 
3061
- "use strict";
3062
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _inheritsLoose; });
3063
- function _inheritsLoose(subClass, superClass) {
3064
- subClass.prototype = Object.create(superClass.prototype);
3065
- subClass.prototype.constructor = subClass;
3066
- subClass.__proto__ = superClass;
3067
  }
3068
 
3069
  /***/ }),
3070
- /* 25 */
3071
- /***/ (function(module, exports) {
3072
 
3073
- // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
3074
- var global = module.exports = typeof window != 'undefined' && window.Math == Math
3075
- ? window : typeof self != 'undefined' && self.Math == Math ? self
3076
- // eslint-disable-next-line no-new-func
3077
- : Function('return this')();
3078
- if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
3079
 
3080
 
3081
  /***/ }),
3082
- /* 26 */
3083
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3084
 
3085
  "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3086
 
3087
- // EXPORTS
3088
- __webpack_require__.d(__webpack_exports__, "d", function() { return /* reexport */ openDrawer; });
3089
- __webpack_require__.d(__webpack_exports__, "b", function() { return /* reexport */ closeDrawer; });
3090
- __webpack_require__.d(__webpack_exports__, "c", function() { return /* reexport */ data_utils["a" /* dateToFormat */]; });
3091
- __webpack_require__.d(__webpack_exports__, "a", function() { return /* reexport */ GenerateUniqueId; });
3092
- __webpack_require__.d(__webpack_exports__, "e", function() { return /* reexport */ shuffleTips; });
3093
- __webpack_require__.d(__webpack_exports__, "f", function() { return /* reexport */ uniqueCharset; });
3094
 
3095
- // UNUSED EXPORTS: formatToDate, importIcons
3096
 
3097
- // CONCATENATED MODULE: ./utils/utils/drawer-utils.js
3098
- function openDrawer(drawer, page) {
3099
- closeDrawer();
3100
- document.location.hash += "".concat(document.location.hash.match(/\/$/) ? "" : "/").concat(drawer).concat(page ? "/" + page : "");
3101
- }
3102
- function closeDrawer() {
3103
- document.location.hash = document.location.hash.replace(/\/?(settings|menu|timeschedules|pagerules).*$/i, "");
3104
- }
3105
- // EXTERNAL MODULE: ./utils/utils/data-utils.js
3106
- var data_utils = __webpack_require__(153);
3107
 
3108
- // EXTERNAL MODULE: ./node_modules/uuid/v4.js
3109
- var v4 = __webpack_require__(216);
3110
- var v4_default = /*#__PURE__*/__webpack_require__.n(v4);
3111
 
3112
- // CONCATENATED MODULE: ./utils/utils/random.js
3113
 
3114
- function GenerateUniqueId() {
3115
- return v4_default()();
3116
- }
3117
- function shuffleTips(array) {
3118
- var currentIndex = array.length,
3119
- temporaryValue,
3120
- randomIndex; // While there remain elements to shuffle...
3121
 
3122
- while (0 !== currentIndex) {
3123
- // Pick a remaining element...
3124
- randomIndex = Math.floor(Math.random() * currentIndex);
3125
- currentIndex -= 1; // And swap it with the current element.
3126
 
3127
- temporaryValue = array[currentIndex];
3128
- array[currentIndex] = array[randomIndex];
3129
- array[randomIndex] = temporaryValue;
 
 
 
 
 
 
3130
  }
3131
 
3132
- return array;
3133
- }
3134
- function uniqueCharset() {
3135
- return Array.apply(0, Array(15)).map(function () {
3136
- return function (charset) {
3137
- return charset.charAt(Math.floor(Math.random() * charset.length));
3138
- }("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789");
3139
- }).join("");
3140
  }
3141
- // CONCATENATED MODULE: ./utils/utils/index.js
3142
-
3143
 
 
 
 
3144
 
 
 
 
 
3145
 
3146
- /***/ }),
3147
- /* 27 */,
3148
- /* 28 */
3149
- /***/ (function(module, exports) {
3150
 
3151
- module.exports = function (exec) {
3152
- try {
3153
- return !!exec();
3154
- } catch (e) {
3155
- return true;
3156
  }
3157
- };
3158
 
 
 
3159
 
3160
- /***/ }),
3161
- /* 29 */
3162
- /***/ (function(module, exports, __webpack_require__) {
3163
 
3164
- "use strict";
 
 
 
 
 
3165
 
 
 
3166
 
3167
- function checkDCE() {
3168
- /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
3169
- if (
3170
- typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||
3171
- typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'
3172
- ) {
3173
- return;
3174
- }
3175
- if (false) {}
3176
- try {
3177
- // Verify that the code above has been dead code eliminated (DCE'd).
3178
- __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);
3179
- } catch (err) {
3180
- // DevTools shouldn't crash React, no matter what.
3181
- // We should still report in case we break this code.
3182
- console.error(err);
3183
  }
3184
- }
3185
 
3186
- if (true) {
3187
- // DCE check should happen before ReactDOM bundle executes so that
3188
- // DevTools can report bad minification during injection.
3189
- checkDCE();
3190
- module.exports = __webpack_require__(534);
3191
- } else {}
3192
 
 
 
 
 
 
 
 
3193
 
3194
- /***/ }),
3195
- /* 30 */
3196
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
3197
 
3198
- "use strict";
3199
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _assertThisInitialized; });
3200
- function _assertThisInitialized(self) {
3201
- if (self === void 0) {
3202
- throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
3203
  }
3204
 
3205
- return self;
3206
- }
3207
 
3208
- /***/ }),
3209
- /* 31 */
3210
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
3211
 
3212
- "use strict";
3213
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; });
3214
- function _defineProperty(obj, key, value) {
3215
- if (key in obj) {
3216
- Object.defineProperty(obj, key, {
3217
- value: value,
3218
- enumerable: true,
3219
- configurable: true,
3220
- writable: true
3221
- });
3222
- } else {
3223
- obj[key] = value;
3224
  }
3225
 
3226
- return obj;
3227
  }
 
 
 
3228
 
3229
- /***/ }),
3230
- /* 32 */
3231
- /***/ (function(module, exports) {
3232
 
3233
- module.exports = function (it) {
3234
- return typeof it === 'object' ? it !== null : typeof it === 'function';
3235
- };
 
 
 
 
 
 
 
 
 
3236
 
 
 
 
 
 
3237
 
3238
- /***/ }),
3239
- /* 33 */
3240
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
3241
 
3242
- "use strict";
3243
- var isProduction = "production" === 'production';
3244
- function warning(condition, message) {
3245
- if (!isProduction) {
3246
- if (condition) {
3247
- return;
 
 
 
 
 
 
 
 
 
 
3248
  }
 
3249
 
3250
- var text = "Warning: " + message;
 
3251
 
3252
- if (typeof console !== 'undefined') {
3253
- console.warn(text);
 
3254
  }
 
3255
 
3256
- try {
3257
- throw Error(text);
3258
- } catch (x) {}
3259
- }
3260
- }
3261
 
3262
- /* harmony default export */ __webpack_exports__["a"] = (warning);
3263
 
 
 
 
 
 
3264
 
3265
- /***/ }),
3266
- /* 34 */
3267
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
3268
 
3269
- "use strict";
3270
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useEventCallback; });
3271
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
3272
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3273
 
3274
- var useEnhancedEffect = typeof window !== 'undefined' ? react__WEBPACK_IMPORTED_MODULE_0__["useLayoutEffect"] : react__WEBPACK_IMPORTED_MODULE_0__["useEffect"];
3275
- /**
3276
- * https://github.com/facebook/react/issues/14099#issuecomment-440013892
3277
- *
3278
- * @param {function} fn
3279
- */
3280
 
3281
- function useEventCallback(fn) {
3282
- var ref = react__WEBPACK_IMPORTED_MODULE_0__["useRef"](fn);
3283
- useEnhancedEffect(function () {
3284
- ref.current = fn;
3285
- });
3286
- return react__WEBPACK_IMPORTED_MODULE_0__["useCallback"](function () {
3287
- return (0, ref.current).apply(void 0, arguments);
3288
- }, []);
3289
- }
3290
 
3291
- /***/ }),
3292
- /* 35 */
3293
- /***/ (function(module, exports, __webpack_require__) {
3294
 
3295
- "use strict";
 
 
3296
 
 
 
 
3297
 
3298
- var bind = __webpack_require__(192);
 
3299
 
3300
- /*global toString:true*/
3301
 
3302
- // utils is a library of generic helper functions non-specific to axios
 
3303
 
3304
- var toString = Object.prototype.toString;
 
 
 
3305
 
3306
- /**
3307
- * Determine if a value is an Array
3308
- *
3309
- * @param {Object} val The value to test
3310
- * @returns {boolean} True if value is an Array, otherwise false
3311
- */
3312
- function isArray(val) {
3313
- return toString.call(val) === '[object Array]';
3314
- }
3315
 
3316
- /**
3317
- * Determine if a value is undefined
3318
- *
3319
- * @param {Object} val The value to test
3320
- * @returns {boolean} True if the value is undefined, otherwise false
3321
- */
3322
- function isUndefined(val) {
3323
- return typeof val === 'undefined';
3324
- }
3325
 
3326
- /**
3327
- * Determine if a value is a Buffer
3328
- *
3329
- * @param {Object} val The value to test
3330
- * @returns {boolean} True if value is a Buffer, otherwise false
3331
- */
3332
- function isBuffer(val) {
3333
- return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)
3334
- && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);
3335
- }
3336
 
3337
- /**
3338
- * Determine if a value is an ArrayBuffer
3339
- *
3340
- * @param {Object} val The value to test
3341
- * @returns {boolean} True if value is an ArrayBuffer, otherwise false
3342
- */
3343
- function isArrayBuffer(val) {
3344
- return toString.call(val) === '[object ArrayBuffer]';
3345
- }
3346
 
3347
- /**
3348
- * Determine if a value is a FormData
3349
- *
3350
- * @param {Object} val The value to test
3351
- * @returns {boolean} True if value is an FormData, otherwise false
3352
- */
3353
- function isFormData(val) {
3354
- return (typeof FormData !== 'undefined') && (val instanceof FormData);
3355
- }
3356
 
3357
- /**
3358
- * Determine if a value is a view on an ArrayBuffer
3359
- *
3360
- * @param {Object} val The value to test
3361
- * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false
3362
- */
3363
- function isArrayBufferView(val) {
3364
- var result;
3365
- if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {
3366
- result = ArrayBuffer.isView(val);
3367
- } else {
3368
- result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);
3369
- }
3370
- return result;
3371
- }
3372
 
3373
- /**
3374
- * Determine if a value is a String
3375
- *
3376
- * @param {Object} val The value to test
3377
- * @returns {boolean} True if value is a String, otherwise false
3378
- */
3379
- function isString(val) {
3380
- return typeof val === 'string';
3381
- }
3382
 
3383
- /**
3384
- * Determine if a value is a Number
3385
- *
3386
- * @param {Object} val The value to test
3387
- * @returns {boolean} True if value is a Number, otherwise false
3388
- */
3389
- function isNumber(val) {
3390
- return typeof val === 'number';
3391
- }
3392
 
3393
- /**
3394
- * Determine if a value is an Object
3395
- *
3396
- * @param {Object} val The value to test
3397
- * @returns {boolean} True if value is an Object, otherwise false
3398
- */
3399
- function isObject(val) {
3400
- return val !== null && typeof val === 'object';
3401
- }
3402
 
3403
- /**
3404
- * Determine if a value is a Date
3405
- *
3406
- * @param {Object} val The value to test
3407
- * @returns {boolean} True if value is a Date, otherwise false
3408
- */
3409
- function isDate(val) {
3410
- return toString.call(val) === '[object Date]';
3411
- }
3412
 
3413
- /**
3414
- * Determine if a value is a File
3415
- *
3416
- * @param {Object} val The value to test
3417
- * @returns {boolean} True if value is a File, otherwise false
3418
- */
3419
- function isFile(val) {
3420
- return toString.call(val) === '[object File]';
3421
- }
3422
 
3423
- /**
3424
- * Determine if a value is a Blob
3425
- *
3426
- * @param {Object} val The value to test
3427
- * @returns {boolean} True if value is a Blob, otherwise false
3428
- */
3429
- function isBlob(val) {
3430
- return toString.call(val) === '[object Blob]';
3431
- }
3432
 
3433
- /**
3434
- * Determine if a value is a Function
3435
- *
3436
- * @param {Object} val The value to test
3437
- * @returns {boolean} True if value is a Function, otherwise false
3438
- */
3439
- function isFunction(val) {
3440
- return toString.call(val) === '[object Function]';
3441
- }
3442
 
3443
- /**
3444
- * Determine if a value is a Stream
3445
- *
3446
- * @param {Object} val The value to test
3447
- * @returns {boolean} True if value is a Stream, otherwise false
3448
- */
3449
- function isStream(val) {
3450
- return isObject(val) && isFunction(val.pipe);
3451
- }
3452
 
3453
- /**
3454
- * Determine if a value is a URLSearchParams object
3455
- *
3456
- * @param {Object} val The value to test
3457
- * @returns {boolean} True if value is a URLSearchParams object, otherwise false
3458
- */
3459
- function isURLSearchParams(val) {
3460
- return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;
3461
- }
3462
 
3463
- /**
3464
- * Trim excess whitespace off the beginning and end of a string
3465
- *
3466
- * @param {String} str The String to trim
3467
- * @returns {String} The String freed of excess whitespace
3468
- */
3469
- function trim(str) {
3470
- return str.replace(/^\s*/, '').replace(/\s*$/, '');
3471
- }
3472
 
3473
- /**
3474
- * Determine if we're running in a standard browser environment
3475
- *
3476
- * This allows axios to run in a web worker, and react-native.
3477
- * Both environments support XMLHttpRequest, but not fully standard globals.
3478
- *
3479
- * web workers:
3480
- * typeof window -> undefined
3481
- * typeof document -> undefined
3482
- *
3483
- * react-native:
3484
- * navigator.product -> 'ReactNative'
3485
- * nativescript
3486
- * navigator.product -> 'NativeScript' or 'NS'
3487
- */
3488
- function isStandardBrowserEnv() {
3489
- if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||
3490
- navigator.product === 'NativeScript' ||
3491
- navigator.product === 'NS')) {
3492
- return false;
3493
  }
3494
- return (
3495
- typeof window !== 'undefined' &&
3496
- typeof document !== 'undefined'
3497
- );
3498
- }
3499
 
3500
- /**
3501
- * Iterate over an Array or an Object invoking a function for each item.
3502
- *
3503
- * If `obj` is an Array callback will be called passing
3504
- * the value, index, and complete array for each item.
3505
- *
3506
- * If 'obj' is an Object callback will be called passing
3507
- * the value, key, and complete object for each property.
3508
- *
3509
- * @param {Object|Array} obj The object to iterate
3510
- * @param {Function} fn The callback to invoke for each item
3511
- */
3512
- function forEach(obj, fn) {
3513
- // Don't bother if no value provided
3514
- if (obj === null || typeof obj === 'undefined') {
3515
- return;
3516
- }
3517
 
3518
- // Force an array if not already something iterable
3519
- if (typeof obj !== 'object') {
3520
- /*eslint no-param-reassign:0*/
3521
- obj = [obj];
3522
- }
 
 
 
 
3523
 
3524
- if (isArray(obj)) {
3525
- // Iterate over array values
3526
- for (var i = 0, l = obj.length; i < l; i++) {
3527
- fn.call(null, obj[i], i, obj);
3528
- }
3529
- } else {
3530
- // Iterate over object keys
3531
- for (var key in obj) {
3532
- if (Object.prototype.hasOwnProperty.call(obj, key)) {
3533
- fn.call(null, obj[key], key, obj);
3534
  }
3535
  }
3536
- }
3537
- }
3538
-
3539
- /**
3540
- * Accepts varargs expecting each argument to be an object, then
3541
- * immutably merges the properties of each object and returns result.
3542
- *
3543
- * When multiple objects contain the same key the later object in
3544
- * the arguments list will take precedence.
3545
- *
3546
- * Example:
3547
- *
3548
- * ```js
3549
- * var result = merge({foo: 123}, {foo: 456});
3550
- * console.log(result.foo); // outputs 456
3551
- * ```
3552
- *
3553
- * @param {Object} obj1 Object to merge
3554
- * @returns {Object} Result of all merge properties
3555
- */
3556
- function merge(/* obj1, obj2, obj3, ... */) {
3557
- var result = {};
3558
- function assignValue(val, key) {
3559
- if (typeof result[key] === 'object' && typeof val === 'object') {
3560
- result[key] = merge(result[key], val);
3561
- } else {
3562
- result[key] = val;
3563
  }
3564
- }
3565
-
3566
- for (var i = 0, l = arguments.length; i < l; i++) {
3567
- forEach(arguments[i], assignValue);
3568
- }
3569
- return result;
3570
- }
3571
 
3572
- /**
3573
- * Function equal to merge with the difference being that no reference
3574
- * to original objects is kept.
3575
- *
3576
- * @see merge
3577
- * @param {Object} obj1 Object to merge
3578
- * @returns {Object} Result of all merge properties
3579
- */
3580
- function deepMerge(/* obj1, obj2, obj3, ... */) {
3581
- var result = {};
3582
- function assignValue(val, key) {
3583
- if (typeof result[key] === 'object' && typeof val === 'object') {
3584
- result[key] = deepMerge(result[key], val);
3585
- } else if (typeof val === 'object') {
3586
- result[key] = deepMerge({}, val);
3587
- } else {
3588
- result[key] = val;
3589
  }
3590
- }
3591
 
3592
- for (var i = 0, l = arguments.length; i < l; i++) {
3593
- forEach(arguments[i], assignValue);
3594
  }
3595
- return result;
3596
- }
3597
 
 
 
 
 
 
3598
  /**
3599
- * Extends object a by mutably adding to it the properties of object b.
3600
- *
3601
- * @param {Object} a The object to be extended
3602
- * @param {Object} b The object to copy properties from
3603
- * @param {Object} thisArg The object to bind function to
3604
- * @return {Object} The resulting value of object a
3605
  */
3606
- function extend(a, b, thisArg) {
3607
- forEach(b, function assignValue(val, key) {
3608
- if (thisArg && typeof val === 'function') {
3609
- a[key] = bind(val, thisArg);
3610
- } else {
3611
- a[key] = val;
3612
- }
3613
- });
3614
- return a;
3615
- }
3616
-
3617
- module.exports = {
3618
- isArray: isArray,
3619
- isArrayBuffer: isArrayBuffer,
3620
- isBuffer: isBuffer,
3621
- isFormData: isFormData,
3622
- isArrayBufferView: isArrayBufferView,
3623
- isString: isString,
3624
- isNumber: isNumber,
3625
- isObject: isObject,
3626
- isUndefined: isUndefined,
3627
- isDate: isDate,
3628
- isFile: isFile,
3629
- isBlob: isBlob,
3630
- isFunction: isFunction,
3631
- isStream: isStream,
3632
- isURLSearchParams: isURLSearchParams,
3633
- isStandardBrowserEnv: isStandardBrowserEnv,
3634
- forEach: forEach,
3635
- merge: merge,
3636
- deepMerge: deepMerge,
3637
- extend: extend,
3638
- trim: trim
3639
- };
3640
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3641
 
3642
- /***/ }),
3643
- /* 36 */
3644
- /***/ (function(module, exports, __webpack_require__) {
 
 
3645
 
3646
- "use strict";
 
 
3647
 
 
 
 
 
 
3648
 
3649
- Object.defineProperty(exports, "__esModule", {
3650
- value: true
3651
- });
3652
 
3653
- var _Alpha = __webpack_require__(650);
3654
 
3655
- Object.defineProperty(exports, 'Alpha', {
3656
- enumerable: true,
3657
- get: function get() {
3658
- return _interopRequireDefault(_Alpha).default;
3659
  }
3660
- });
3661
-
3662
- var _Checkboard = __webpack_require__(357);
 
3663
 
3664
- Object.defineProperty(exports, 'Checkboard', {
3665
- enumerable: true,
3666
- get: function get() {
3667
- return _interopRequireDefault(_Checkboard).default;
3668
  }
3669
- });
3670
-
3671
- var _EditableInput = __webpack_require__(653);
 
3672
 
3673
- Object.defineProperty(exports, 'EditableInput', {
3674
- enumerable: true,
3675
- get: function get() {
3676
- return _interopRequireDefault(_EditableInput).default;
 
3677
  }
3678
- });
 
 
 
3679
 
3680
- var _Hue = __webpack_require__(654);
 
 
 
3681
 
3682
- Object.defineProperty(exports, 'Hue', {
3683
- enumerable: true,
3684
- get: function get() {
3685
- return _interopRequireDefault(_Hue).default;
3686
- }
3687
- });
3688
 
3689
- var _Raised = __webpack_require__(656);
 
 
3690
 
3691
- Object.defineProperty(exports, 'Raised', {
3692
- enumerable: true,
3693
- get: function get() {
3694
- return _interopRequireDefault(_Raised).default;
 
 
3695
  }
3696
- });
3697
 
3698
- var _Saturation = __webpack_require__(657);
 
 
 
 
 
 
 
3699
 
3700
- Object.defineProperty(exports, 'Saturation', {
3701
- enumerable: true,
3702
- get: function get() {
3703
- return _interopRequireDefault(_Saturation).default;
3704
- }
3705
- });
 
 
 
 
 
 
 
 
3706
 
3707
- var _ColorWrap = __webpack_require__(454);
 
 
 
 
 
3708
 
3709
- Object.defineProperty(exports, 'ColorWrap', {
3710
- enumerable: true,
3711
- get: function get() {
3712
- return _interopRequireDefault(_ColorWrap).default;
3713
- }
3714
- });
 
 
 
3715
 
3716
- var _Swatch = __webpack_require__(665);
 
 
 
 
3717
 
3718
- Object.defineProperty(exports, 'Swatch', {
3719
- enumerable: true,
3720
- get: function get() {
3721
- return _interopRequireDefault(_Swatch).default;
3722
  }
3723
- });
 
 
3724
 
3725
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
3726
 
3727
- /***/ }),
3728
- /* 37 */
3729
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
3730
 
3731
- "use strict";
3732
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _createClass; });
3733
- function _defineProperties(target, props) {
3734
- for (var i = 0; i < props.length; i++) {
3735
- var descriptor = props[i];
3736
- descriptor.enumerable = descriptor.enumerable || false;
3737
- descriptor.configurable = true;
3738
- if ("value" in descriptor) descriptor.writable = true;
3739
- Object.defineProperty(target, descriptor.key, descriptor);
3740
- }
3741
- }
3742
-
3743
- function _createClass(Constructor, protoProps, staticProps) {
3744
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
3745
- if (staticProps) _defineProperties(Constructor, staticProps);
3746
- return Constructor;
3747
- }
3748
 
3749
- /***/ }),
3750
- /* 38 */
3751
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
3752
 
3753
- "use strict";
 
 
3754
 
3755
- // EXTERNAL MODULE: ./node_modules/redux/es/redux.js
3756
- var redux = __webpack_require__(97);
 
 
3757
 
3758
- // EXTERNAL MODULE: ./src/js/dashboard/store/actions/dataActions/index.js
3759
- var dataActions = __webpack_require__(14);
 
 
3760
 
3761
- // EXTERNAL MODULE: ./src/js/dashboard/store/actions/savingMiddleware.js + 3 modules
3762
- var savingMiddleware = __webpack_require__(186);
 
 
 
 
3763
 
3764
- // EXTERNAL MODULE: ./utils/buttonizer-constants.js
3765
- var buttonizer_constants = __webpack_require__(4);
 
 
3766
 
3767
- // EXTERNAL MODULE: ./node_modules/immer/dist/immer.module.js
3768
- var immer_module = __webpack_require__(52);
 
 
 
3769
 
3770
- // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/wpReducer.js
3771
 
 
 
 
3772
 
3773
- var initialStore = {
3774
- loading: {
3775
- posts: false,
3776
- pages: false,
3777
- categories: false,
3778
- roles: false
3779
- },
3780
- loaded: {
3781
- posts: false,
3782
- pages: false,
3783
- categories: false,
3784
- roles: false
3785
- },
3786
- data: {
3787
- posts: [],
3788
- pages: [],
3789
- categories: [],
3790
- roles: []
3791
  }
3792
  };
3793
- /* harmony default export */ var wpReducer = (function () {
3794
- var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialStore;
3795
- var action = arguments.length > 1 ? arguments[1] : undefined;
3796
- if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return initialStore;
3797
- return Object(immer_module["b" /* produce */])(store, function (draftStore) {
3798
- switch (action.type) {
3799
- case buttonizer_constants["a" /* actionTypes */].wp.GET_DATA_BEGIN:
3800
- {
3801
- draftStore.loading[action.payload.type] = true;
3802
- break;
3803
- }
3804
-
3805
- case buttonizer_constants["a" /* actionTypes */].wp.GET_DATA_END:
3806
- {
3807
- draftStore.loading[action.payload.type] = false;
3808
- break;
3809
- }
3810
 
3811
- case buttonizer_constants["a" /* actionTypes */].wp.GET_DATA_FAILURE:
3812
- {
3813
- console.error(action.payload.error);
3814
- break;
3815
- }
 
 
 
 
 
 
 
 
3816
 
3817
- case buttonizer_constants["a" /* actionTypes */].wp.GET_DATA_SUCCESS:
3818
- {
3819
- draftStore.data[action.payload.type] = action.payload.data;
3820
- draftStore.loaded[action.payload.type] = true;
3821
- break;
3822
- }
3823
  }
3824
- });
3825
- });
3826
- // EXTERNAL MODULE: ./utils/utils/index.js + 2 modules
3827
- var utils = __webpack_require__(26);
3828
-
3829
- // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/timeScheduleReducer.js
3830
-
3831
 
 
 
 
3832
 
3833
- /* harmony default export */ var timeScheduleReducer = (function () {
3834
- var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3835
- var action = arguments.length > 1 ? arguments[1] : undefined;
3836
- if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return action.payload.timeSchedules;
3837
- return Object(immer_module["a" /* default */])(store, function (draftStore) {
3838
- switch (action.type) {
3839
- case buttonizer_constants["a" /* actionTypes */].timeSchedules.ADD_RECORD:
3840
- {
3841
- // Add data to store/model
3842
- draftStore[action.payload.record.id] = action.payload.record;
3843
- break;
3844
- }
3845
 
3846
- case buttonizer_constants["a" /* actionTypes */].timeSchedules.REMOVE_RECORD:
3847
- {
3848
- delete draftStore[action.payload.id];
3849
- break;
3850
- }
3851
 
3852
- /**
3853
- * Button actions
3854
- */
 
3855
 
3856
- case buttonizer_constants["a" /* actionTypes */].timeSchedules.SET_KEY_VALUE:
3857
- {
3858
- draftStore[action.payload.id][action.payload.key] = action.payload.value;
3859
- break;
3860
- }
3861
 
3862
- /**
3863
- * Time Schedule reducers
3864
- */
3865
 
3866
- case buttonizer_constants["a" /* actionTypes */].timeSchedules.SET_WEEKDAY:
3867
- {
3868
- draftStore[action.payload.id].weekdays[action.payload.weekdayKey][action.payload.key] = action.payload.value;
3869
- break;
3870
- }
3871
 
3872
- case buttonizer_constants["a" /* actionTypes */].timeSchedules.ADD_EXCLUDED_DATE:
3873
- {
3874
- draftStore[action.payload.id].dates.push({
3875
- opened: true,
3876
- open: "8:00",
3877
- close: "17:00",
3878
- date: Object(utils["c" /* dateToFormat */])(new Date())
3879
- });
3880
- break;
3881
- }
3882
 
3883
- case buttonizer_constants["a" /* actionTypes */].timeSchedules.SET_EXCLUDED_DATE:
3884
- {
3885
- draftStore[action.payload.id].dates[action.payload.dateKey][action.payload.key] = action.payload.value;
3886
- break;
3887
- }
 
 
 
 
 
 
3888
 
3889
- case buttonizer_constants["a" /* actionTypes */].timeSchedules.REMOVE_EXCLUDED_DATE:
3890
- {
3891
- draftStore[action.payload.id].dates.splice(action.payload.dateKey, 1);
3892
- break;
3893
- }
 
3894
  }
3895
- });
3896
- });
3897
- // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/rootReducer.js
3898
 
3899
-
3900
- var defaultStore = {
3901
- loading: {},
3902
- drawer: ""
3903
  };
3904
- /* harmony default export */ var rootReducer = (function () {
3905
- var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultStore;
3906
- var action = arguments.length > 1 ? arguments[1] : undefined;
3907
- return Object(immer_module["a" /* default */])(store, function (draftStore) {
3908
- switch (action.type) {
3909
- case buttonizer_constants["a" /* actionTypes */].INIT:
3910
- {
3911
- draftStore.frameUrl = action.payload.wordpress.base + "?buttonizer-preview=1"; // Start loading iframe
3912
-
3913
- draftStore.loading.loadingIframe = true; // Show loading
3914
 
3915
- draftStore.loading.showLoading = true;
3916
- draftStore.loading.loadingString = "loading.website";
3917
- draftStore.hasChanges = action.payload.hasChanges === "1";
3918
- draftStore.loading.loaded = true;
3919
- draftStore.wordpress = action.payload.wordpress;
3920
- draftStore._premium = action.payload.premium;
3921
- draftStore.is_opt_in = action.payload.is_opt_in;
3922
- draftStore.additional_permissions = action.payload.additional_permissions;
3923
- draftStore._premiumCode = action.payload.premium_code;
3924
- break;
3925
- }
 
 
 
 
 
 
 
3926
 
3927
- case buttonizer_constants["a" /* actionTypes */].GET_DATA_BEGIN:
3928
- {
3929
- draftStore.loading.showLoading = true;
3930
- draftStore.loading.loadingString = "loading.loading";
3931
- break;
3932
- }
3933
 
3934
- case buttonizer_constants["a" /* actionTypes */].GET_DATA_SUCCESS:
3935
- {
3936
- draftStore.loading.showLoading = false;
3937
- draftStore.loading.fetchError = null;
3938
- draftStore.loading.loaded = true;
3939
- break;
3940
- }
3941
 
3942
- case buttonizer_constants["a" /* actionTypes */].GET_DATA_FAILURE:
3943
- {
3944
- draftStore.loading.showLoading = false;
3945
- draftStore.loading.fetchError = action.payload.error;
3946
- console.error(action.payload.error);
3947
- break;
3948
- }
3949
 
3950
- case buttonizer_constants["a" /* actionTypes */].HAS_CHANGES:
3951
- {
3952
- draftStore.hasChanges = action.payload.hasChanges;
3953
- break;
3954
- }
3955
 
3956
- case buttonizer_constants["a" /* actionTypes */].STOP_LOADING:
3957
- {
3958
- draftStore.loading.showLoading = false;
3959
- draftStore.loading.loadingSlowWebsite = false;
3960
- draftStore.loading.loadingIframe = false;
3961
- break;
3962
- }
3963
  }
3964
- });
3965
- });
3966
- // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/pageRuleReducer.js
3967
 
 
 
3968
 
3969
- /**
3970
- * Page rule reducers
3971
- */
 
 
 
 
 
3972
 
3973
- /* harmony default export */ var pageRuleReducer = (function () {
3974
- var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3975
- var action = arguments.length > 1 ? arguments[1] : undefined;
3976
- if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return action.payload.pageRules;
3977
- return Object(immer_module["a" /* default */])(store, function (draftStore) {
3978
- switch (action.type) {
3979
- // Add record
3980
- case buttonizer_constants["a" /* actionTypes */].pageRules.ADD_RECORD:
3981
- {
3982
- draftStore[action.payload.record.id] = action.payload.record;
3983
- break;
3984
- }
3985
- // Remove record
 
 
 
 
 
3986
 
3987
- case buttonizer_constants["a" /* actionTypes */].pageRules.REMOVE_RECORD:
3988
- {
3989
- delete draftStore[action.payload.id];
3990
- break;
3991
- }
3992
- // Set key
3993
 
3994
- case buttonizer_constants["a" /* actionTypes */].pageRules.SET_KEY_VALUE:
3995
- {
3996
- draftStore[action.payload.id][action.payload.key] = action.payload.value;
3997
- break;
3998
- }
3999
- // Add page rule row
4000
 
4001
- case buttonizer_constants["a" /* actionTypes */].pageRules.ADD_PAGE_RULE_ROW:
4002
- {
4003
- draftStore[action.payload.id].rules.push({
4004
- type: "page_title",
4005
- value: ""
4006
- });
4007
- break;
4008
- }
4009
- // Update page rule row
4010
 
4011
- case buttonizer_constants["a" /* actionTypes */].pageRules.SET_PAGE_RULE_ROW:
4012
- {
4013
- draftStore[action.payload.id].rules[action.payload.ruleRowKey][action.payload.key] = action.payload.value;
4014
- break;
4015
- }
4016
- // Remove page rule row
 
4017
 
4018
- case buttonizer_constants["a" /* actionTypes */].pageRules.REMOVE_PAGE_RULE_ROW:
4019
- {
4020
- draftStore[action.payload.id].rules.splice(action.payload.ruleRowKey, 1);
4021
- break;
4022
- }
4023
- }
4024
- });
4025
- });
4026
- // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/settingReducer.js
 
 
 
 
 
 
 
 
 
4027
 
4028
 
4029
- /* harmony default export */ var settingReducer = (function () {
4030
- var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4031
- var action = arguments.length > 1 ? arguments[1] : undefined;
4032
- if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return action.payload.settings;
4033
- return Object(immer_module["a" /* default */])(store, function (draftStore) {
4034
- switch (action.type) {
4035
- case buttonizer_constants["a" /* actionTypes */].SET_SETTING_VALUE:
4036
- {
4037
- if (action.payload.setting === "can_send_errors" && typeof buttonizer_admin !== "undefined") {
4038
- buttonizer_admin.can_send_errors = action.payload.value;
4039
- }
4040
 
4041
- draftStore[action.payload.setting] = action.payload.value;
4042
- break;
4043
- }
4044
- }
4045
- });
4046
- });
4047
- // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/savingReducer.js
4048
 
 
 
 
 
4049
 
4050
- var savingReducer_initialStore = {
4051
- isUpdating: false
4052
- };
4053
- function savingReducer() {
4054
- var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : savingReducer_initialStore;
4055
- var action = arguments.length > 1 ? arguments[1] : undefined;
4056
- return Object(immer_module["b" /* produce */])(store, function (draftStore) {
4057
- if (Object.values(buttonizer_constants["a" /* actionTypes */].buttons).includes(action.type) || Object.values(buttonizer_constants["a" /* actionTypes */].groups).includes(action.type) || Object.values(buttonizer_constants["a" /* actionTypes */].pageRules).includes(action.type) || Object.values(buttonizer_constants["a" /* actionTypes */].timeSchedules).includes(action.type) || buttonizer_constants["a" /* actionTypes */].SET_SETTING_VALUE === action.type) {// draftStore.isUpdating = true;
4058
- } else if (action.type === buttonizer_constants["a" /* actionTypes */].IS_UPDATING) {
4059
- draftStore.isUpdating = action.payload.isUpdating;
4060
  }
4061
- });
4062
- }
4063
- // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/groupReducer.js
4064
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
4065
 
4066
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
 
4067
 
4068
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
 
 
 
 
 
 
 
 
 
 
 
4069
 
4070
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
4071
 
4072
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
 
 
 
 
 
 
 
 
 
4073
 
4074
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
4075
 
4076
- 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; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4077
 
4078
- 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(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; }
4079
 
4080
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4081
 
 
 
 
 
 
 
 
 
4082
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4083
 
4084
- /* harmony default export */ var groupReducer = (function () {
4085
- var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4086
- var action = arguments.length > 1 ? arguments[1] : undefined;
4087
- if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return action.payload.groups;
4088
 
4089
- if (action.type === buttonizer_constants["a" /* actionTypes */].groups.ADD_RECORD && typeof action.payload.index !== "string") {
4090
- // Add data to store/model
4091
- var unorderedStore = _objectSpread({}, store, _defineProperty({}, action.payload.record.id, action.payload.record));
4092
 
4093
- var newKeys = Object.keys(store);
4094
- newKeys.splice(action.payload.index, 0, action.payload.record.id);
4095
- return newKeys.reduce(function (result, key) {
4096
- result[key] = unorderedStore[key];
4097
- return result;
4098
- }, {});
4099
- }
4100
 
4101
- return Object(immer_module["b" /* produce */])(store, function (draftStore) {
4102
- switch (action.type) {
4103
- case buttonizer_constants["a" /* actionTypes */].groups.ADD_RECORD:
4104
- {
4105
- draftStore[action.payload.record.id] = action.payload.record; // Last place
4106
 
4107
- break;
4108
- }
4109
 
4110
- case buttonizer_constants["a" /* actionTypes */].groups.REMOVE_RECORD:
4111
- {
4112
- delete draftStore[action.payload.model_id];
4113
- break;
4114
- }
4115
 
4116
- case buttonizer_constants["a" /* actionTypes */].groups.SET_KEY_VALUE:
4117
- {
4118
- if (action.payload.value === "unset") {
4119
- if (typeof draftStore[action.payload.id][action.payload.key] !== "undefined") delete draftStore[action.payload.id][action.payload.key];
4120
- break;
4121
- }
 
 
 
 
 
4122
 
4123
- draftStore[action.payload.id][action.payload.key] = action.payload.value;
4124
- break;
4125
- }
 
 
 
 
4126
 
4127
- case buttonizer_constants["a" /* actionTypes */].groups.SET_KEY_FORMAT:
4128
- {
4129
- var format = buttonizer_constants["c" /* formats */][action.payload.format];
4130
- if (!format) break;
4131
- var parsedValue = format.format.apply(format, _toConsumableArray(action.payload.values));
 
 
 
 
4132
 
4133
- if (parsedValue === "unset") {
4134
- if (typeof draftStore[action.payload.id][action.payload.key] !== "undefined") delete draftStore[action.payload.id][action.payload.key];
4135
- break;
4136
- }
 
 
 
4137
 
4138
- draftStore[action.payload.id][action.payload.key] = parsedValue;
4139
- break;
4140
- }
4141
 
4142
- case buttonizer_constants["a" /* actionTypes */].ADD_RELATION:
4143
- {
4144
- draftStore[action.payload.group_id].children = draftStore[action.payload.group_id].children || [];
 
 
 
4145
 
4146
- if (typeof action.payload.index !== "string") {
4147
- draftStore[action.payload.group_id].children.splice(action.payload.index, 0, action.payload.button_id);
4148
- break;
4149
- }
4150
 
4151
- draftStore[action.payload.group_id].children.push(action.payload.button_id);
4152
- break;
4153
- }
 
 
 
 
 
 
 
 
4154
 
4155
- case buttonizer_constants["a" /* actionTypes */].CHANGE_RELATION:
4156
- {
4157
- // Remove button from group
4158
- var buttonIndex = draftStore[action.payload.old_group_id].children.indexOf(action.payload.button_id);
4159
- draftStore[action.payload.old_group_id].children.splice(buttonIndex, 1); // If old group has no children, delete it
4160
 
4161
- if (draftStore[action.payload.old_group_id].children.length === 0) {
4162
- delete draftStore[action.payload.old_group_id];
4163
- } // Add button to new group
 
 
 
 
 
 
 
 
4164
 
 
 
 
 
4165
 
4166
- draftStore[action.payload.new_group_id].children.splice(action.payload.button_index, 0, action.payload.button_id);
4167
- break;
4168
- }
4169
 
4170
- case buttonizer_constants["a" /* actionTypes */].REMOVE_RELATION:
4171
- {
4172
- var index = draftStore[action.payload.group_id].children.indexOf(action.payload.button_id);
4173
- draftStore[action.payload.group_id].children.splice(index, 1);
4174
- break;
4175
- }
 
 
4176
  }
4177
- });
4178
- });
4179
- // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/buttonReducer.js
4180
- function buttonReducer_toConsumableArray(arr) { return buttonReducer_arrayWithoutHoles(arr) || buttonReducer_iterableToArray(arr) || buttonReducer_unsupportedIterableToArray(arr) || buttonReducer_nonIterableSpread(); }
4181
 
4182
- function buttonReducer_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
 
 
 
 
 
 
 
 
 
 
 
4183
 
4184
- function buttonReducer_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return buttonReducer_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return buttonReducer_arrayLikeToArray(o, minLen); }
 
 
 
4185
 
4186
- function buttonReducer_iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
 
 
4187
 
4188
- function buttonReducer_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return buttonReducer_arrayLikeToArray(arr); }
 
 
 
4189
 
4190
- function buttonReducer_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
 
 
4191
 
 
 
 
4192
 
 
 
 
 
4193
 
4194
- var buttonReducer_initialStore = {
4195
- buttons: {},
4196
- groups: {},
4197
- timeSchedules: {},
4198
- settings: {},
4199
- pageRules: {},
4200
- _premium: false
4201
- };
4202
- function dataReducer() {
4203
- var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : buttonReducer_initialStore;
4204
- var action = arguments.length > 1 ? arguments[1] : undefined;
4205
- if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return action.payload.buttons;
4206
- return Object(immer_module["b" /* produce */])(store, function (draftStore) {
4207
- switch (action.type) {
4208
- case buttonizer_constants["a" /* actionTypes */].buttons.ADD_RECORD:
4209
- {
4210
- draftStore[action.payload.record.id] = action.payload.record;
4211
- break;
4212
  }
 
4213
 
4214
- case buttonizer_constants["a" /* actionTypes */].buttons.REMOVE_RECORD:
4215
- {
4216
- delete draftStore[action.payload.model_id];
4217
- break;
4218
- }
4219
 
4220
- case buttonizer_constants["a" /* actionTypes */].buttons.SET_KEY_VALUE:
4221
- {
4222
- if (action.payload.value === "unset") {
4223
- if (typeof draftStore[action.payload.id][action.payload.key] !== "undefined") delete draftStore[action.payload.id][action.payload.key];
4224
- break;
4225
- }
4226
 
4227
- draftStore[action.payload.id][action.payload.key] = action.payload.value;
4228
- break;
4229
  }
 
 
 
 
 
 
 
4230
 
4231
- case buttonizer_constants["a" /* actionTypes */].buttons.SET_KEY_FORMAT:
4232
- {
4233
- var format = buttonizer_constants["c" /* formats */][action.payload.format];
4234
- if (!format) break;
4235
- var parsedValue = format.format.apply(format, buttonReducer_toConsumableArray(action.payload.values));
4236
 
4237
- if (parsedValue === "unset") {
4238
- if (typeof draftStore[action.payload.id][action.payload.key] !== "undefined") delete draftStore[action.payload.id][action.payload.key];
4239
- break;
4240
- }
4241
 
4242
- draftStore[action.payload.id][action.payload.key] = parsedValue;
4243
- break;
4244
- }
 
4245
 
4246
- case buttonizer_constants["a" /* actionTypes */].ADD_RELATION:
4247
- {
4248
- draftStore[action.payload.button_id].parent = action.payload.group_id;
4249
- break;
4250
- }
4251
 
4252
- case buttonizer_constants["a" /* actionTypes */].CHANGE_RELATION:
4253
- {
4254
- draftStore[action.payload.button_id].parent = action.payload.new_group_id;
4255
- break;
4256
- }
4257
 
4258
- case buttonizer_constants["a" /* actionTypes */].REMOVE_RELATION:
4259
- {
4260
- draftStore[action.payload.button_id].parent = null;
4261
- break;
4262
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4263
 
4264
- default:
4265
- {
4266
- return draftStore;
4267
- }
4268
  }
4269
- });
4270
- }
4271
- // CONCATENATED MODULE: ./src/js/dashboard/store/index.js
4272
 
 
4273
 
 
 
 
4274
 
 
 
 
 
 
4275
 
4276
 
 
4277
 
 
 
 
 
4278
 
 
 
 
 
 
 
 
4279
 
 
 
 
 
 
 
 
 
 
 
 
4280
 
 
 
 
 
4281
 
 
 
 
 
4282
 
4283
- /**
4284
- * Welcome to the Castore, proceed with caution
4285
- */
4286
 
4287
- var combinedReducers = Object(redux["c" /* combineReducers */])({
4288
- saving: savingReducer,
4289
- wp: wpReducer,
4290
- timeSchedules: timeScheduleReducer,
4291
- pageRules: pageRuleReducer,
4292
- groups: groupReducer,
4293
- buttons: dataReducer,
4294
- misc: rootReducer,
4295
- settings: settingReducer
4296
- });
4297
- /**
4298
- * Logs all actions and states after they are dispatched.
4299
- */
4300
- // const logger = store => next => action => {
4301
- // console.group(action.type);
4302
- // console.info("dispatching", action);
4303
- // let result = next(action);
4304
- // console.log("next state", store.getState());
4305
- // console.groupEnd();
4306
- // return result;
4307
- // };
4308
 
4309
- var store_store = Object(redux["e" /* createStore */])(combinedReducers);
 
 
 
 
 
 
 
4310
 
4311
- store_store.add = function (data, model) {
4312
- return store_store.dispatch(Object(dataActions["a" /* addRecord */])(data, model));
4313
- };
4314
 
4315
- store_store.subscribe(savingMiddleware["a" /* save */]);
4316
- /* harmony default export */ var dashboard_store = __webpack_exports__["a"] = (store_store);
 
 
 
 
 
4317
 
4318
- /***/ }),
4319
- /* 39 */
4320
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
 
 
4321
 
4322
- "use strict";
4323
- /* WEBPACK VAR INJECTION */(function(process, global, module) {/* unused harmony export dynamicRequire */
4324
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return isNodeEnv; });
4325
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return getGlobalObject; });
4326
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "m", function() { return uuid4; });
4327
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return parseUrl; });
4328
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return getEventDescription; });
4329
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return consoleSandbox; });
4330
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return addExceptionTypeValue; });
4331
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return addExceptionMechanism; });
4332
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return getLocationHref; });
4333
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return htmlTreeAsString; });
4334
- /* unused harmony export crossPlatformPerformance */
4335
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "l", function() { return timestampWithMs; });
4336
- /* unused harmony export parseSemver */
4337
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return parseRetryAfterHeader; });
4338
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return getFunctionName; });
4339
- /* unused harmony export addContextToFrame */
4340
- /* harmony import */ var _is__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(44);
4341
- /* harmony import */ var _string__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(159);
4342
 
 
 
 
 
4343
 
4344
- /**
4345
- * Requires a module which is protected against bundler minification.
4346
- *
4347
- * @param request The module path to resolve
4348
- */
4349
- function dynamicRequire(mod, request) {
4350
- // tslint:disable-next-line: no-unsafe-any
4351
- return mod.require(request);
4352
- }
4353
- /**
4354
- * Checks whether we're in the Node.js or Browser environment
4355
- *
4356
- * @returns Answer to given question
4357
- */
4358
- function isNodeEnv() {
4359
- // tslint:disable:strict-type-predicates
4360
- return Object.prototype.toString.call(typeof process !== 'undefined' ? process : 0) === '[object process]';
4361
- }
4362
- var fallbackGlobalObject = {};
4363
- /**
4364
- * Safely get global scope object
4365
- *
4366
- * @returns Global scope object
4367
- */
4368
- function getGlobalObject() {
4369
- return (isNodeEnv()
4370
- ? global
4371
- : typeof window !== 'undefined'
4372
- ? window
4373
- : typeof self !== 'undefined'
4374
- ? self
4375
- : fallbackGlobalObject);
4376
- }
4377
- /**
4378
- * UUID4 generator
4379
- *
4380
- * @returns string Generated UUID4.
4381
- */
4382
- function uuid4() {
4383
- var global = getGlobalObject();
4384
- var crypto = global.crypto || global.msCrypto;
4385
- if (!(crypto === void 0) && crypto.getRandomValues) {
4386
- // Use window.crypto API if available
4387
- var arr = new Uint16Array(8);
4388
- crypto.getRandomValues(arr);
4389
- // set 4 in byte 7
4390
- // tslint:disable-next-line:no-bitwise
4391
- arr[3] = (arr[3] & 0xfff) | 0x4000;
4392
- // set 2 most significant bits of byte 9 to '10'
4393
- // tslint:disable-next-line:no-bitwise
4394
- arr[4] = (arr[4] & 0x3fff) | 0x8000;
4395
- var pad = function (num) {
4396
- var v = num.toString(16);
4397
- while (v.length < 4) {
4398
- v = "0" + v;
4399
- }
4400
- return v;
4401
- };
4402
- return (pad(arr[0]) + pad(arr[1]) + pad(arr[2]) + pad(arr[3]) + pad(arr[4]) + pad(arr[5]) + pad(arr[6]) + pad(arr[7]));
4403
- }
4404
- // http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/2117523#2117523
4405
- return 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
4406
- // tslint:disable-next-line:no-bitwise
4407
- var r = (Math.random() * 16) | 0;
4408
- // tslint:disable-next-line:no-bitwise
4409
- var v = c === 'x' ? r : (r & 0x3) | 0x8;
4410
- return v.toString(16);
4411
- });
4412
- }
4413
- /**
4414
- * Parses string form of URL into an object
4415
- * // borrowed from https://tools.ietf.org/html/rfc3986#appendix-B
4416
- * // intentionally using regex and not <a/> href parsing trick because React Native and other
4417
- * // environments where DOM might not be available
4418
- * @returns parsed URL object
4419
- */
4420
- function parseUrl(url) {
4421
- if (!url) {
4422
- return {};
4423
- }
4424
- var match = url.match(/^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);
4425
- if (!match) {
4426
- return {};
4427
- }
4428
- // coerce to undefined values to empty string so we don't get 'undefined'
4429
- var query = match[6] || '';
4430
- var fragment = match[8] || '';
4431
- return {
4432
- host: match[4],
4433
- path: match[5],
4434
- protocol: match[2],
4435
- relative: match[5] + query + fragment,
4436
- };
4437
- }
4438
- /**
4439
- * Extracts either message or type+value from an event that can be used for user-facing logs
4440
- * @returns event's description
4441
- */
4442
- function getEventDescription(event) {
4443
- if (event.message) {
4444
- return event.message;
4445
- }
4446
- if (event.exception && event.exception.values && event.exception.values[0]) {
4447
- var exception = event.exception.values[0];
4448
- if (exception.type && exception.value) {
4449
- return exception.type + ": " + exception.value;
4450
- }
4451
- return exception.type || exception.value || event.event_id || '<unknown>';
4452
- }
4453
- return event.event_id || '<unknown>';
4454
- }
4455
- /** JSDoc */
4456
- function consoleSandbox(callback) {
4457
- var global = getGlobalObject();
4458
- var levels = ['debug', 'info', 'warn', 'error', 'log', 'assert'];
4459
- if (!('console' in global)) {
4460
- return callback();
4461
- }
4462
- var originalConsole = global.console;
4463
- var wrappedLevels = {};
4464
- // Restore all wrapped console methods
4465
- levels.forEach(function (level) {
4466
- if (level in global.console && originalConsole[level].__sentry_original__) {
4467
- wrappedLevels[level] = originalConsole[level];
4468
- originalConsole[level] = originalConsole[level].__sentry_original__;
4469
- }
4470
- });
4471
- // Perform callback manipulations
4472
- var result = callback();
4473
- // Revert restoration to wrapped state
4474
- Object.keys(wrappedLevels).forEach(function (level) {
4475
- originalConsole[level] = wrappedLevels[level];
4476
- });
4477
- return result;
4478
- }
4479
- /**
4480
- * Adds exception values, type and value to an synthetic Exception.
4481
- * @param event The event to modify.
4482
- * @param value Value of the exception.
4483
- * @param type Type of the exception.
4484
- * @hidden
4485
- */
4486
- function addExceptionTypeValue(event, value, type) {
4487
- event.exception = event.exception || {};
4488
- event.exception.values = event.exception.values || [];
4489
- event.exception.values[0] = event.exception.values[0] || {};
4490
- event.exception.values[0].value = event.exception.values[0].value || value || '';
4491
- event.exception.values[0].type = event.exception.values[0].type || type || 'Error';
4492
- }
4493
- /**
4494
- * Adds exception mechanism to a given event.
4495
- * @param event The event to modify.
4496
- * @param mechanism Mechanism of the mechanism.
4497
- * @hidden
4498
- */
4499
- function addExceptionMechanism(event, mechanism) {
4500
- if (mechanism === void 0) { mechanism = {}; }
4501
- // TODO: Use real type with `keyof Mechanism` thingy and maybe make it better?
4502
- try {
4503
- // @ts-ignore
4504
- // tslint:disable:no-non-null-assertion
4505
- event.exception.values[0].mechanism = event.exception.values[0].mechanism || {};
4506
- Object.keys(mechanism).forEach(function (key) {
4507
- // @ts-ignore
4508
- event.exception.values[0].mechanism[key] = mechanism[key];
4509
- });
4510
- }
4511
- catch (_oO) {
4512
- // no-empty
4513
- }
4514
- }
4515
- /**
4516
- * A safe form of location.href
4517
- */
4518
- function getLocationHref() {
4519
- try {
4520
- return document.location.href;
4521
- }
4522
- catch (oO) {
4523
- return '';
4524
- }
4525
- }
4526
- /**
4527
- * Given a child DOM element, returns a query-selector statement describing that
4528
- * and its ancestors
4529
- * e.g. [HTMLElement] => body > div > input#foo.btn[name=baz]
4530
- * @returns generated DOM path
4531
- */
4532
- function htmlTreeAsString(elem) {
4533
- // try/catch both:
4534
- // - accessing event.target (see getsentry/raven-js#838, #768)
4535
- // - `htmlTreeAsString` because it's complex, and just accessing the DOM incorrectly
4536
- // - can throw an exception in some circumstances.
4537
- try {
4538
- var currentElem = elem;
4539
- var MAX_TRAVERSE_HEIGHT = 5;
4540
- var MAX_OUTPUT_LEN = 80;
4541
- var out = [];
4542
- var height = 0;
4543
- var len = 0;
4544
- var separator = ' > ';
4545
- var sepLength = separator.length;
4546
- var nextStr = void 0;
4547
- while (currentElem && height++ < MAX_TRAVERSE_HEIGHT) {
4548
- nextStr = _htmlElementAsString(currentElem);
4549
- // bail out if
4550
- // - nextStr is the 'html' element
4551
- // - the length of the string that would be created exceeds MAX_OUTPUT_LEN
4552
- // (ignore this limit if we are on the first iteration)
4553
- if (nextStr === 'html' || (height > 1 && len + out.length * sepLength + nextStr.length >= MAX_OUTPUT_LEN)) {
4554
- break;
4555
- }
4556
- out.push(nextStr);
4557
- len += nextStr.length;
4558
- currentElem = currentElem.parentNode;
4559
- }
4560
- return out.reverse().join(separator);
4561
- }
4562
- catch (_oO) {
4563
- return '<unknown>';
4564
- }
4565
- }
4566
- /**
4567
- * Returns a simple, query-selector representation of a DOM element
4568
- * e.g. [HTMLElement] => input#foo.btn[name=baz]
4569
- * @returns generated DOM path
4570
- */
4571
- function _htmlElementAsString(el) {
4572
- var elem = el;
4573
- var out = [];
4574
- var className;
4575
- var classes;
4576
- var key;
4577
- var attr;
4578
- var i;
4579
- if (!elem || !elem.tagName) {
4580
- return '';
4581
- }
4582
- out.push(elem.tagName.toLowerCase());
4583
- if (elem.id) {
4584
- out.push("#" + elem.id);
4585
- }
4586
- className = elem.className;
4587
- if (className && Object(_is__WEBPACK_IMPORTED_MODULE_0__[/* isString */ "k"])(className)) {
4588
- classes = className.split(/\s+/);
4589
- for (i = 0; i < classes.length; i++) {
4590
- out.push("." + classes[i]);
4591
- }
4592
- }
4593
- var attrWhitelist = ['type', 'name', 'title', 'alt'];
4594
- for (i = 0; i < attrWhitelist.length; i++) {
4595
- key = attrWhitelist[i];
4596
- attr = elem.getAttribute(key);
4597
- if (attr) {
4598
- out.push("[" + key + "=\"" + attr + "\"]");
4599
- }
4600
- }
4601
- return out.join('');
4602
- }
4603
- var INITIAL_TIME = Date.now();
4604
- var prevNow = 0;
4605
- var performanceFallback = {
4606
- now: function () {
4607
- var now = Date.now() - INITIAL_TIME;
4608
- if (now < prevNow) {
4609
- now = prevNow;
4610
- }
4611
- prevNow = now;
4612
- return now;
4613
- },
4614
- timeOrigin: INITIAL_TIME,
4615
- };
4616
- var crossPlatformPerformance = (function () {
4617
- if (isNodeEnv()) {
4618
- try {
4619
- var perfHooks = dynamicRequire(module, 'perf_hooks');
4620
- return perfHooks.performance;
4621
- }
4622
- catch (_) {
4623
- return performanceFallback;
4624
- }
4625
- }
4626
- if (getGlobalObject().performance) {
4627
- // Polyfill for performance.timeOrigin.
4628
- //
4629
- // While performance.timing.navigationStart is deprecated in favor of performance.timeOrigin, performance.timeOrigin
4630
- // is not as widely supported. Namely, performance.timeOrigin is undefined in Safari as of writing.
4631
- // tslint:disable-next-line:strict-type-predicates
4632
- if (performance.timeOrigin === undefined) {
4633
- // As of writing, performance.timing is not available in Web Workers in mainstream browsers, so it is not always a
4634
- // valid fallback. In the absence of a initial time provided by the browser, fallback to INITIAL_TIME.
4635
- // @ts-ignore
4636
- // tslint:disable-next-line:deprecation
4637
- performance.timeOrigin = (performance.timing && performance.timing.navigationStart) || INITIAL_TIME;
4638
- }
4639
- }
4640
- return getGlobalObject().performance || performanceFallback;
4641
- })();
4642
- /**
4643
- * Returns a timestamp in seconds with milliseconds precision since the UNIX epoch calculated with the monotonic clock.
4644
- */
4645
- function timestampWithMs() {
4646
- return (crossPlatformPerformance.timeOrigin + crossPlatformPerformance.now()) / 1000;
4647
- }
4648
- // https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string
4649
- var SEMVER_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;
4650
- /**
4651
- * Parses input into a SemVer interface
4652
- * @param input string representation of a semver version
4653
- */
4654
- function parseSemver(input) {
4655
- var match = input.match(SEMVER_REGEXP) || [];
4656
- var major = parseInt(match[1], 10);
4657
- var minor = parseInt(match[2], 10);
4658
- var patch = parseInt(match[3], 10);
4659
- return {
4660
- buildmetadata: match[5],
4661
- major: isNaN(major) ? undefined : major,
4662
- minor: isNaN(minor) ? undefined : minor,
4663
- patch: isNaN(patch) ? undefined : patch,
4664
- prerelease: match[4],
4665
- };
4666
- }
4667
- var defaultRetryAfter = 60 * 1000; // 60 seconds
4668
- /**
4669
- * Extracts Retry-After value from the request header or returns default value
4670
- * @param now current unix timestamp
4671
- * @param header string representation of 'Retry-After' header
4672
- */
4673
- function parseRetryAfterHeader(now, header) {
4674
- if (!header) {
4675
- return defaultRetryAfter;
4676
- }
4677
- var headerDelay = parseInt("" + header, 10);
4678
- if (!isNaN(headerDelay)) {
4679
- return headerDelay * 1000;
4680
- }
4681
- var headerDate = Date.parse("" + header);
4682
- if (!isNaN(headerDate)) {
4683
- return headerDate - now;
4684
- }
4685
- return defaultRetryAfter;
4686
- }
4687
- var defaultFunctionName = '<anonymous>';
4688
- /**
4689
- * Safely extract function name from itself
4690
- */
4691
- function getFunctionName(fn) {
4692
- try {
4693
- if (!fn || typeof fn !== 'function') {
4694
- return defaultFunctionName;
4695
- }
4696
- return fn.name || defaultFunctionName;
4697
- }
4698
- catch (e) {
4699
- // Just accessing custom props in some Selenium environments
4700
- // can cause a "Permission denied" exception (see raven-js#495).
4701
- return defaultFunctionName;
4702
- }
4703
- }
4704
- /**
4705
- * This function adds context (pre/post/line) lines to the provided frame
4706
- *
4707
- * @param lines string[] containing all lines
4708
- * @param frame StackFrame that will be mutated
4709
- * @param linesOfContext number of context lines we want to add pre/post
4710
- */
4711
- function addContextToFrame(lines, frame, linesOfContext) {
4712
- if (linesOfContext === void 0) { linesOfContext = 5; }
4713
- var lineno = frame.lineno || 0;
4714
- var maxLines = lines.length;
4715
- var sourceLine = Math.max(Math.min(maxLines, lineno - 1), 0);
4716
- frame.pre_context = lines
4717
- .slice(Math.max(0, sourceLine - linesOfContext), sourceLine)
4718
- .map(function (line) { return Object(_string__WEBPACK_IMPORTED_MODULE_1__[/* snipLine */ "c"])(line, 0); });
4719
- frame.context_line = Object(_string__WEBPACK_IMPORTED_MODULE_1__[/* snipLine */ "c"])(lines[Math.min(maxLines - 1, sourceLine)], frame.colno || 0);
4720
- frame.post_context = lines
4721
- .slice(Math.min(sourceLine + 1, maxLines), sourceLine + 1 + linesOfContext)
4722
- .map(function (line) { return Object(_string__WEBPACK_IMPORTED_MODULE_1__[/* snipLine */ "c"])(line, 0); });
4723
- }
4724
- //# sourceMappingURL=misc.js.map
4725
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(168), __webpack_require__(49), __webpack_require__(208)(module)))
4726
-
4727
- /***/ }),
4728
- /* 40 */
4729
- /***/ (function(module, exports, __webpack_require__) {
4730
 
4731
- var store = __webpack_require__(249)('wks');
4732
- var uid = __webpack_require__(144);
4733
- var Symbol = __webpack_require__(25).Symbol;
4734
- var USE_SYMBOL = typeof Symbol == 'function';
 
 
 
 
4735
 
4736
- var $exports = module.exports = function (name) {
4737
- return store[name] || (store[name] =
4738
- USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
4739
- };
4740
 
4741
- $exports.store = store;
 
 
 
 
4742
 
 
4743
 
4744
- /***/ }),
4745
- /* 41 */
4746
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
4747
 
4748
- "use strict";
4749
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return RuleList; });
4750
- /* unused harmony export SheetsManager */
4751
- /* unused harmony export SheetsRegistry */
4752
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return create; });
4753
- /* unused harmony export createGenerateId */
4754
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return createRule; });
4755
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return getDynamicStyles; });
4756
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return hasCSSTOMSupport; });
4757
- /* unused harmony export sheets */
4758
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return toCssValue; });
4759
- /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
4760
- /* harmony import */ var is_in_browser__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(42);
4761
- /* harmony import */ var tiny_warning__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(33);
4762
- /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(37);
4763
- /* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(24);
4764
- /* harmony import */ var _babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(30);
4765
- /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(22);
4766
 
 
 
 
 
 
 
 
4767
 
 
 
 
 
 
 
 
 
 
4768
 
 
 
4769
 
 
4770
 
 
 
 
 
 
 
4771
 
 
 
 
 
 
 
 
 
4772
 
 
 
 
4773
 
4774
- var plainObjectConstrurctor = {}.constructor;
4775
- function cloneStyle(style) {
4776
- if (style == null || typeof style !== 'object') return style;
4777
- if (Array.isArray(style)) return style.map(cloneStyle);
4778
- if (style.constructor !== plainObjectConstrurctor) return style;
4779
- var newStyle = {};
4780
 
4781
- for (var name in style) {
4782
- newStyle[name] = cloneStyle(style[name]);
 
 
 
 
 
 
 
4783
  }
4784
 
4785
- return newStyle;
4786
- }
4787
 
4788
- /**
4789
- * Create a rule instance.
4790
- */
 
 
 
 
 
4791
 
4792
- function createRule(name, decl, options) {
4793
- if (name === void 0) {
4794
- name = 'unnamed';
4795
  }
 
 
 
 
4796
 
4797
- var jss = options.jss;
4798
- var declCopy = cloneStyle(decl);
4799
- var rule = jss.plugins.onCreateRule(name, declCopy, options);
4800
- if (rule) return rule; // It is an at-rule and it has no instance.
4801
 
4802
- if (name[0] === '@') {
4803
- false ? undefined : void 0;
 
 
 
 
4804
  }
 
 
 
 
4805
 
4806
- return null;
4807
- }
 
 
 
 
 
 
 
 
4808
 
4809
- var join = function join(value, by) {
4810
- var result = '';
 
 
 
 
 
 
 
4811
 
4812
- for (var i = 0; i < value.length; i++) {
4813
- // Remove !important from the value, it will be readded later.
4814
- if (value[i] === '!important') break;
4815
- if (result) result += by;
4816
- result += value[i];
4817
  }
 
 
 
 
4818
 
4819
- return result;
4820
- };
4821
- /**
4822
- * Converts array values to string.
4823
- *
4824
- * `margin: [['5px', '10px']]` > `margin: 5px 10px;`
4825
- * `border: ['1px', '2px']` > `border: 1px, 2px;`
4826
- * `margin: [['5px', '10px'], '!important']` > `margin: 5px 10px !important;`
4827
- * `color: ['red', !important]` > `color: red !important;`
4828
- */
4829
 
 
 
 
4830
 
4831
- function toCssValue(value, ignoreImportant) {
4832
- if (ignoreImportant === void 0) {
4833
- ignoreImportant = false;
4834
  }
 
 
 
 
4835
 
4836
- if (!Array.isArray(value)) return value;
4837
- var cssValue = ''; // Support space separated values via `[['5px', '10px']]`.
4838
-
4839
- if (Array.isArray(value[0])) {
4840
- for (var i = 0; i < value.length; i++) {
4841
- if (value[i] === '!important') break;
4842
- if (cssValue) cssValue += ', ';
4843
- cssValue += join(value[i], ' ');
4844
  }
4845
- } else cssValue = join(value, ', '); // Add !important, because it was ignored.
4846
 
 
4847
 
4848
- if (!ignoreImportant && value[value.length - 1] === '!important') {
4849
- cssValue += ' !important';
4850
- }
4851
 
4852
- return cssValue;
4853
- }
 
 
 
 
 
 
 
4854
 
4855
- /**
4856
- * Indent a string.
4857
- * http://jsperf.com/array-join-vs-for
4858
- */
4859
- function indentStr(str, indent) {
4860
- var result = '';
 
 
 
 
4861
 
4862
- for (var index = 0; index < indent; index++) {
4863
- result += ' ';
4864
- }
4865
 
4866
- return result + str;
4867
- }
4868
  /**
4869
- * Converts a Rule to CSS string.
4870
  */
4871
-
4872
-
4873
- function toCss(selector, style, options) {
4874
- if (options === void 0) {
4875
- options = {};
4876
  }
4877
 
4878
- var result = '';
4879
- if (!style) return result;
4880
- var _options = options,
4881
- _options$indent = _options.indent,
4882
- indent = _options$indent === void 0 ? 0 : _options$indent;
4883
- var fallbacks = style.fallbacks;
4884
- if (selector) indent++; // Apply fallbacks first.
4885
 
4886
- if (fallbacks) {
4887
- // Array syntax {fallbacks: [{prop: value}]}
4888
- if (Array.isArray(fallbacks)) {
4889
- for (var index = 0; index < fallbacks.length; index++) {
4890
- var fallback = fallbacks[index];
 
 
4891
 
4892
- for (var prop in fallback) {
4893
- var value = fallback[prop];
 
 
4894
 
4895
- if (value != null) {
4896
- if (result) result += '\n';
4897
- result += "" + indentStr(prop + ": " + toCssValue(value) + ";", indent);
4898
- }
4899
- }
4900
- }
4901
- } else {
4902
- // Object syntax {fallbacks: {prop: value}}
4903
- for (var _prop in fallbacks) {
4904
- var _value = fallbacks[_prop];
4905
 
4906
- if (_value != null) {
4907
- if (result) result += '\n';
4908
- result += "" + indentStr(_prop + ": " + toCssValue(_value) + ";", indent);
4909
- }
4910
  }
4911
  }
4912
  }
 
 
 
 
4913
 
4914
- for (var _prop2 in style) {
4915
- var _value2 = style[_prop2];
4916
-
4917
- if (_value2 != null && _prop2 !== 'fallbacks') {
4918
- if (result) result += '\n';
4919
- result += "" + indentStr(_prop2 + ": " + toCssValue(_value2) + ";", indent);
4920
- }
4921
- } // Allow empty style in this case, because properties will be added dynamically.
4922
-
4923
-
4924
- if (!result && !options.allowEmpty) return result; // When rule is being stringified before selector was defined.
4925
-
4926
- if (!selector) return result;
4927
- indent--;
4928
- if (result) result = "\n" + result + "\n";
4929
- return indentStr(selector + " {" + result, indent) + indentStr('}', indent);
4930
- }
4931
-
4932
- var escapeRegex = /([[\].#*$><+~=|^:(),"'`\s])/g;
4933
- var nativeEscape = typeof CSS !== 'undefined' && CSS.escape;
4934
- var escape = (function (str) {
4935
- return nativeEscape ? nativeEscape(str) : str.replace(escapeRegex, '\\$1');
4936
- });
4937
 
4938
- var BaseStyleRule =
4939
- /*#__PURE__*/
4940
- function () {
4941
- function BaseStyleRule(key, style, options) {
4942
- this.type = 'style';
4943
- this.key = void 0;
4944
- this.isProcessed = false;
4945
- this.style = void 0;
4946
- this.renderer = void 0;
4947
- this.renderable = void 0;
4948
- this.options = void 0;
4949
- var sheet = options.sheet,
4950
- Renderer = options.Renderer;
4951
- this.key = key;
4952
- this.options = options;
4953
- this.style = style;
4954
- if (sheet) this.renderer = sheet.renderer;else if (Renderer) this.renderer = new Renderer();
4955
  }
4956
  /**
4957
- * Get or set a style property.
4958
  */
 
4959
 
 
 
 
 
4960
 
4961
- var _proto = BaseStyleRule.prototype;
4962
 
4963
- _proto.prop = function prop(name, value, options) {
4964
- // It's a getter.
4965
- if (value === undefined) return this.style[name]; // Don't do anything if the value has not changed.
4966
 
4967
- var force = options ? options.force : false;
4968
- if (!force && this.style[name] === value) return this;
4969
- var newValue = value;
4970
 
4971
- if (!options || options.process !== false) {
4972
- newValue = this.options.jss.plugins.onChangeValue(value, name, this);
4973
  }
4974
 
4975
- var isEmpty = newValue == null || newValue === false;
4976
- var isDefined = name in this.style; // Value is empty and wasn't defined before.
4977
-
4978
- if (isEmpty && !isDefined && !force) return this; // We are going to remove this value.
4979
 
4980
- var remove = isEmpty && isDefined;
4981
- if (remove) delete this.style[name];else this.style[name] = newValue; // Renderable is defined if StyleSheet option `link` is true.
4982
 
4983
- if (this.renderable && this.renderer) {
4984
- if (remove) this.renderer.removeProperty(this.renderable, name);else this.renderer.setProperty(this.renderable, name, newValue);
4985
- return this;
 
 
4986
  }
 
4987
 
4988
- var sheet = this.options.sheet;
 
4989
 
4990
- if (sheet && sheet.attached) {
4991
- false ? undefined : void 0;
4992
- }
 
 
 
4993
 
4994
- return this;
4995
- };
4996
 
4997
- return BaseStyleRule;
4998
- }();
4999
- var StyleRule =
5000
- /*#__PURE__*/
5001
- function (_BaseStyleRule) {
5002
- Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(StyleRule, _BaseStyleRule);
5003
 
5004
- function StyleRule(key, style, options) {
5005
- var _this;
 
 
 
5006
 
5007
- _this = _BaseStyleRule.call(this, key, style, options) || this;
5008
- _this.selectorText = void 0;
5009
- _this.id = void 0;
5010
- _this.renderable = void 0;
5011
- var selector = options.selector,
5012
- scoped = options.scoped,
5013
- sheet = options.sheet,
5014
- generateId = options.generateId;
5015
 
5016
- if (selector) {
5017
- _this.selectorText = selector;
5018
- } else if (scoped !== false) {
5019
- _this.id = generateId(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(_this)), sheet);
5020
- _this.selectorText = "." + escape(_this.id);
5021
- }
5022
 
5023
- return _this;
 
 
 
 
 
 
 
5024
  }
5025
- /**
5026
- * Set selector string.
5027
- * Attention: use this with caution. Most browsers didn't implement
5028
- * selectorText setter, so this may result in rerendering of entire Style Sheet.
5029
- */
5030
 
 
 
 
5031
 
5032
- var _proto2 = StyleRule.prototype;
 
 
5033
 
5034
- /**
5035
- * Apply rule to an element inline.
5036
- */
5037
- _proto2.applyTo = function applyTo(renderable) {
5038
- var renderer = this.renderer;
5039
 
5040
- if (renderer) {
5041
- var json = this.toJSON();
 
 
5042
 
5043
- for (var prop in json) {
5044
- renderer.setProperty(renderable, prop, json[prop]);
5045
  }
5046
  }
5047
 
5048
- return this;
5049
- }
5050
- /**
5051
- * Returns JSON representation of the rule.
5052
- * Fallbacks are not supported.
5053
- * Useful for inline styles.
5054
- */
5055
- ;
5056
 
5057
- _proto2.toJSON = function toJSON() {
5058
- var json = {};
 
5059
 
5060
- for (var prop in this.style) {
5061
- var value = this.style[prop];
5062
- if (typeof value !== 'object') json[prop] = value;else if (Array.isArray(value)) json[prop] = toCssValue(value);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5063
  }
5064
 
5065
- return json;
 
 
 
5066
  }
5067
- /**
5068
- * Generates a CSS string.
5069
- */
5070
- ;
5071
 
5072
- _proto2.toString = function toString(options) {
5073
- var sheet = this.options.sheet;
5074
- var link = sheet ? sheet.options.link : false;
5075
- var opts = link ? Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
5076
- allowEmpty: true
5077
- }) : options;
5078
- return toCss(this.selectorText, this.style, opts);
5079
- };
5080
 
5081
- Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(StyleRule, [{
5082
- key: "selector",
5083
- set: function set(selector) {
5084
- if (selector === this.selectorText) return;
5085
- this.selectorText = selector;
5086
- var renderer = this.renderer,
5087
- renderable = this.renderable;
5088
- if (!renderable || !renderer) return;
5089
- var hasChanged = renderer.setSelector(renderable, selector); // If selector setter is not implemented, rerender the rule.
5090
 
5091
- if (!hasChanged) {
5092
- renderer.replaceRule(renderable, this);
 
5093
  }
5094
- }
5095
- /**
5096
- * Get selector string.
5097
- */
5098
- ,
5099
- get: function get() {
5100
- return this.selectorText;
5101
- }
5102
- }]);
5103
 
5104
- return StyleRule;
5105
- }(BaseStyleRule);
5106
- var pluginStyleRule = {
5107
- onCreateRule: function onCreateRule(name, style, options) {
5108
- if (name[0] === '@' || options.parent && options.parent.type === 'keyframes') {
5109
- return null;
5110
  }
 
 
 
 
5111
 
5112
- return new StyleRule(name, style, options);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5113
  }
5114
  };
5115
 
5116
- var defaultToStringOptions = {
5117
- indent: 1,
5118
- children: true
 
 
 
 
 
5119
  };
5120
- var atRegExp = /@([\w-]+)/;
5121
  /**
5122
- * Conditional rule for @media, @supports
 
5123
  */
5124
 
5125
- var ConditionalRule =
5126
- /*#__PURE__*/
5127
- function () {
5128
- function ConditionalRule(key, styles, options) {
5129
- this.type = 'conditional';
5130
- this.at = void 0;
5131
- this.key = void 0;
5132
- this.query = void 0;
5133
- this.rules = void 0;
5134
- this.options = void 0;
5135
- this.isProcessed = false;
5136
- this.renderable = void 0;
5137
- this.key = key; // Key might contain a unique suffix in case the `name` passed by user was duplicate.
5138
 
5139
- this.query = options.name;
5140
- var atMatch = key.match(atRegExp);
5141
- this.at = atMatch ? atMatch[1] : 'unknown';
5142
- this.options = options;
5143
- this.rules = new RuleList(Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
5144
- parent: this
5145
- }));
5146
 
5147
- for (var name in styles) {
5148
- this.rules.add(name, styles[name]);
5149
- }
5150
 
5151
- this.rules.process();
 
 
5152
  }
5153
- /**
5154
- * Get a rule.
5155
- */
5156
-
5157
 
5158
- var _proto = ConditionalRule.prototype;
 
 
 
 
5159
 
5160
- _proto.getRule = function getRule(name) {
5161
- return this.rules.get(name);
5162
- }
5163
- /**
5164
- * Get index of a rule.
5165
- */
5166
- ;
5167
 
5168
- _proto.indexOf = function indexOf(rule) {
5169
- return this.rules.indexOf(rule);
5170
- }
5171
- /**
5172
- * Create and register rule, run plugins.
5173
- */
5174
- ;
5175
 
5176
- _proto.addRule = function addRule(name, style, options) {
5177
- var rule = this.rules.add(name, style, options);
5178
- if (!rule) return null;
5179
- this.options.jss.plugins.onProcessRule(rule);
5180
- return rule;
5181
  }
5182
- /**
5183
- * Generates a CSS string.
5184
- */
5185
- ;
5186
 
5187
- _proto.toString = function toString(options) {
5188
- if (options === void 0) {
5189
- options = defaultToStringOptions;
5190
- }
 
5191
 
5192
- if (options.indent == null) options.indent = defaultToStringOptions.indent;
5193
- if (options.children == null) options.children = defaultToStringOptions.children;
5194
 
5195
- if (options.children === false) {
5196
- return this.query + " {}";
5197
- }
5198
 
5199
- var children = this.rules.toString(options);
5200
- return children ? this.query + " {\n" + children + "\n}" : '';
5201
- };
5202
 
5203
- return ConditionalRule;
5204
- }();
5205
- var keyRegExp = /@media|@supports\s+/;
5206
- var pluginConditionalRule = {
5207
- onCreateRule: function onCreateRule(key, styles, options) {
5208
- return keyRegExp.test(key) ? new ConditionalRule(key, styles, options) : null;
5209
  }
5210
- };
5211
 
5212
- var defaultToStringOptions$1 = {
5213
- indent: 1,
5214
- children: true
5215
- };
5216
- var nameRegExp = /@keyframes\s+([\w-]+)/;
5217
  /**
5218
- * Rule for @keyframes
5219
  */
 
 
5220
 
5221
- var KeyframesRule =
5222
- /*#__PURE__*/
5223
- function () {
5224
- function KeyframesRule(key, frames, options) {
5225
- this.type = 'keyframes';
5226
- this.at = '@keyframes';
5227
- this.key = void 0;
5228
- this.name = void 0;
5229
- this.id = void 0;
5230
- this.rules = void 0;
5231
- this.options = void 0;
5232
- this.isProcessed = false;
5233
- this.renderable = void 0;
5234
- var nameMatch = key.match(nameRegExp);
5235
-
5236
- if (nameMatch && nameMatch[1]) {
5237
- this.name = nameMatch[1];
5238
- } else {
5239
- this.name = 'noname';
5240
- false ? undefined : void 0;
5241
- }
5242
-
5243
- this.key = this.type + "-" + this.name;
5244
- this.options = options;
5245
- var scoped = options.scoped,
5246
- sheet = options.sheet,
5247
- generateId = options.generateId;
5248
- this.id = scoped === false ? this.name : escape(generateId(this, sheet));
5249
- this.rules = new RuleList(Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
5250
- parent: this
5251
- }));
5252
-
5253
- for (var name in frames) {
5254
- this.rules.add(name, frames[name], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
5255
- parent: this
5256
- }));
5257
- }
5258
 
5259
- this.rules.process();
5260
- }
5261
- /**
5262
- * Generates a CSS string.
5263
- */
 
5264
 
5265
 
5266
- var _proto = KeyframesRule.prototype;
5267
 
5268
- _proto.toString = function toString(options) {
5269
- if (options === void 0) {
5270
- options = defaultToStringOptions$1;
 
 
5271
  }
 
5272
 
5273
- if (options.indent == null) options.indent = defaultToStringOptions$1.indent;
5274
- if (options.children == null) options.children = defaultToStringOptions$1.children;
5275
 
5276
- if (options.children === false) {
5277
- return this.at + " " + this.id + " {}";
5278
- }
5279
 
5280
- var children = this.rules.toString(options);
5281
- if (children) children = "\n" + children + "\n";
5282
- return this.at + " " + this.id + " {" + children + "}";
5283
- };
5284
 
5285
- return KeyframesRule;
5286
- }();
5287
- var keyRegExp$1 = /@keyframes\s+/;
5288
- var refRegExp = /\$([\w-]+)/g;
 
 
 
5289
 
5290
- var findReferencedKeyframe = function findReferencedKeyframe(val, keyframes) {
5291
- if (typeof val === 'string') {
5292
- return val.replace(refRegExp, function (match, name) {
5293
- if (name in keyframes) {
5294
- return keyframes[name];
5295
- }
5296
 
5297
- false ? undefined : void 0;
5298
- return match;
5299
- });
5300
  }
5301
 
5302
- return val;
5303
- };
5304
  /**
5305
- * Replace the reference for a animation name.
5306
  */
5307
 
5308
 
5309
- var replaceRef = function replaceRef(style, prop, keyframes) {
5310
- var value = style[prop];
5311
- var refKeyframe = findReferencedKeyframe(value, keyframes);
5312
 
5313
- if (refKeyframe !== value) {
5314
- style[prop] = refKeyframe;
 
 
 
 
 
 
 
 
 
 
5315
  }
5316
- };
5317
 
5318
- var plugin = {
5319
- onCreateRule: function onCreateRule(key, frames, options) {
5320
- return typeof key === 'string' && keyRegExp$1.test(key) ? new KeyframesRule(key, frames, options) : null;
5321
- },
5322
- // Animation name ref replacer.
5323
- onProcessStyle: function onProcessStyle(style, rule, sheet) {
5324
- if (rule.type !== 'style' || !sheet) return style;
5325
- if ('animation-name' in style) replaceRef(style, 'animation-name', sheet.keyframes);
5326
- if ('animation' in style) replaceRef(style, 'animation', sheet.keyframes);
5327
- return style;
5328
- },
5329
- onChangeValue: function onChangeValue(val, prop, rule) {
5330
- var sheet = rule.options.sheet;
5331
 
5332
- if (!sheet) {
5333
- return val;
5334
- }
5335
 
5336
- switch (prop) {
5337
- case 'animation':
5338
- return findReferencedKeyframe(val, sheet.keyframes);
 
5339
 
5340
- case 'animation-name':
5341
- return findReferencedKeyframe(val, sheet.keyframes);
 
 
 
 
 
 
5342
 
5343
- default:
5344
- return val;
5345
- }
 
 
5346
  }
5347
- };
5348
-
5349
- var KeyframeRule =
5350
- /*#__PURE__*/
5351
- function (_BaseStyleRule) {
5352
- Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(KeyframeRule, _BaseStyleRule);
5353
 
5354
- function KeyframeRule() {
5355
- var _this;
5356
 
5357
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
5358
- args[_key] = arguments[_key];
5359
- }
5360
 
5361
- _this = _BaseStyleRule.call.apply(_BaseStyleRule, [this].concat(args)) || this;
5362
- _this.renderable = void 0;
5363
- return _this;
5364
  }
5365
 
5366
- var _proto = KeyframeRule.prototype;
5367
-
5368
- /**
5369
- * Generates a CSS string.
5370
- */
5371
- _proto.toString = function toString(options) {
5372
- var sheet = this.options.sheet;
5373
- var link = sheet ? sheet.options.link : false;
5374
- var opts = link ? Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
5375
- allowEmpty: true
5376
- }) : options;
5377
- return toCss(this.key, this.style, opts);
5378
- };
5379
 
5380
- return KeyframeRule;
5381
- }(BaseStyleRule);
5382
- var pluginKeyframeRule = {
5383
- onCreateRule: function onCreateRule(key, style, options) {
5384
- if (options.parent && options.parent.type === 'keyframes') {
5385
- return new KeyframeRule(key, style, options);
5386
- }
5387
 
5388
- return null;
5389
- }
5390
  };
5391
 
5392
- var FontFaceRule =
5393
  /*#__PURE__*/
5394
  function () {
5395
- function FontFaceRule(key, style, options) {
5396
- this.type = 'font-face';
5397
- this.at = '@font-face';
5398
- this.key = void 0;
5399
- this.style = void 0;
5400
- this.options = void 0;
5401
- this.isProcessed = false;
5402
- this.renderable = void 0;
5403
- this.key = key;
5404
- this.style = style;
5405
- this.options = options;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5406
  }
5407
  /**
5408
- * Generates a CSS string.
5409
  */
5410
 
5411
 
5412
- var _proto = FontFaceRule.prototype;
5413
 
5414
- _proto.toString = function toString(options) {
5415
- if (Array.isArray(this.style)) {
5416
- var str = '';
 
 
5417
 
5418
- for (var index = 0; index < this.style.length; index++) {
5419
- str += toCss(this.at, this.style[index]);
5420
- if (this.style[index + 1]) str += '\n';
5421
- }
5422
 
5423
- return str;
 
 
5424
  }
5425
-
5426
- return toCss(this.at, this.style, options);
5427
- };
5428
-
5429
- return FontFaceRule;
5430
- }();
5431
- var keyRegExp$2 = /@font-face/;
5432
- var pluginFontFaceRule = {
5433
- onCreateRule: function onCreateRule(key, style, options) {
5434
- return keyRegExp$2.test(key) ? new FontFaceRule(key, style, options) : null;
5435
- }
5436
- };
5437
-
5438
- var ViewportRule =
5439
- /*#__PURE__*/
5440
- function () {
5441
- function ViewportRule(key, style, options) {
5442
- this.type = 'viewport';
5443
- this.at = '@viewport';
5444
- this.key = void 0;
5445
- this.style = void 0;
5446
- this.options = void 0;
5447
- this.isProcessed = false;
5448
- this.renderable = void 0;
5449
- this.key = key;
5450
- this.style = style;
5451
- this.options = options;
5452
  }
5453
  /**
5454
- * Generates a CSS string.
5455
  */
 
5456
 
 
 
 
 
 
5457
 
5458
- var _proto = ViewportRule.prototype;
5459
-
5460
- _proto.toString = function toString(options) {
5461
- return toCss(this.key, this.style, options);
5462
- };
5463
-
5464
- return ViewportRule;
5465
- }();
5466
- var pluginViewportRule = {
5467
- onCreateRule: function onCreateRule(key, style, options) {
5468
- return key === '@viewport' || key === '@-ms-viewport' ? new ViewportRule(key, style, options) : null;
5469
- }
5470
- };
5471
-
5472
- var SimpleRule =
5473
- /*#__PURE__*/
5474
- function () {
5475
- function SimpleRule(key, value, options) {
5476
- this.type = 'simple';
5477
- this.key = void 0;
5478
- this.value = void 0;
5479
- this.options = void 0;
5480
- this.isProcessed = false;
5481
- this.renderable = void 0;
5482
- this.key = key;
5483
- this.value = value;
5484
- this.options = options;
5485
  }
5486
  /**
5487
- * Generates a CSS string.
5488
  */
5489
- // eslint-disable-next-line no-unused-vars
5490
-
5491
-
5492
- var _proto = SimpleRule.prototype;
5493
-
5494
- _proto.toString = function toString(options) {
5495
- if (Array.isArray(this.value)) {
5496
- var str = '';
5497
 
5498
- for (var index = 0; index < this.value.length; index++) {
5499
- str += this.key + " " + this.value[index] + ";";
5500
- if (this.value[index + 1]) str += '\n';
5501
- }
5502
 
5503
- return str;
 
 
5504
  }
5505
 
5506
- return this.key + " " + this.value + ";";
5507
- };
5508
-
5509
- return SimpleRule;
5510
- }();
5511
- var keysMap = {
5512
- '@charset': true,
5513
- '@import': true,
5514
- '@namespace': true
5515
- };
5516
- var pluginSimpleRule = {
5517
- onCreateRule: function onCreateRule(key, value, options) {
5518
- return key in keysMap ? new SimpleRule(key, value, options) : null;
5519
  }
5520
- };
5521
-
5522
- var plugins = [pluginStyleRule, pluginConditionalRule, plugin, pluginKeyframeRule, pluginFontFaceRule, pluginViewportRule, pluginSimpleRule];
5523
-
5524
- var defaultUpdateOptions = {
5525
- process: true
5526
- };
5527
- var forceUpdateOptions = {
5528
- force: true,
5529
- process: true
5530
  /**
5531
- * Contains rules objects and allows adding/removing etc.
5532
- * Is used for e.g. by `StyleSheet` or `ConditionalRule`.
5533
  */
 
5534
 
5535
- };
5536
-
5537
- var RuleList =
5538
- /*#__PURE__*/
5539
- function () {
5540
- // Rules registry for access by .get() method.
5541
- // It contains the same rule registered by name and by selector.
5542
- // Original styles object.
5543
- // Used to ensure correct rules order.
5544
- function RuleList(options) {
5545
- this.map = {};
5546
- this.raw = {};
5547
- this.index = [];
5548
- this.counter = 0;
5549
- this.options = void 0;
5550
- this.classes = void 0;
5551
- this.keyframes = void 0;
5552
- this.options = options;
5553
- this.classes = options.classes;
5554
- this.keyframes = options.keyframes;
5555
  }
5556
  /**
5557
- * Create and register rule.
5558
- *
5559
- * Will not render after Style Sheet was rendered the first time.
5560
  */
 
5561
 
 
 
 
 
5562
 
5563
- var _proto = RuleList.prototype;
 
 
5564
 
5565
- _proto.add = function add(name, decl, ruleOptions) {
5566
- var _this$options = this.options,
5567
- parent = _this$options.parent,
5568
- sheet = _this$options.sheet,
5569
- jss = _this$options.jss,
5570
- Renderer = _this$options.Renderer,
5571
- generateId = _this$options.generateId,
5572
- scoped = _this$options.scoped;
5573
 
5574
- var options = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
5575
- classes: this.classes,
5576
- parent: parent,
5577
- sheet: sheet,
5578
- jss: jss,
5579
- Renderer: Renderer,
5580
- generateId: generateId,
5581
- scoped: scoped,
5582
- name: name
5583
- }, ruleOptions); // When user uses .createStyleSheet(), duplicate names are not possible, but
5584
- // `sheet.addRule()` opens the door for any duplicate rule name. When this happens
5585
- // we need to make the key unique within this RuleList instance scope.
5586
 
 
 
 
5587
 
5588
- var key = name;
 
 
5589
 
5590
- if (name in this.raw) {
5591
- key = name + "-d" + this.counter++;
5592
- } // We need to save the original decl before creating the rule
5593
- // because cache plugin needs to use it as a key to return a cached rule.
5594
 
 
 
 
5595
 
5596
- this.raw[key] = decl;
 
 
5597
 
5598
- if (key in this.classes) {
5599
- // E.g. rules inside of @media container
5600
- options.selector = "." + escape(this.classes[key]);
 
5601
  }
5602
 
5603
- var rule = createRule(key, decl, options);
5604
- if (!rule) return null;
5605
- this.register(rule);
5606
- var index = options.index === undefined ? this.index.length : options.index;
5607
- this.index.splice(index, 0, rule);
5608
- return rule;
 
 
 
 
 
 
5609
  }
5610
  /**
5611
- * Get a rule.
5612
  */
5613
  ;
5614
 
5615
- _proto.get = function get(name) {
5616
- return this.map[name];
 
 
 
 
 
5617
  }
5618
  /**
5619
- * Delete a rule.
5620
  */
5621
  ;
5622
 
5623
- _proto.remove = function remove(rule) {
5624
- this.unregister(rule);
5625
- delete this.raw[rule.key];
5626
- this.index.splice(this.index.indexOf(rule), 1);
5627
  }
5628
  /**
5629
- * Get index of a rule.
 
 
5630
  */
5631
  ;
5632
 
5633
- _proto.indexOf = function indexOf(rule) {
5634
- return this.index.indexOf(rule);
 
 
 
 
5635
  }
5636
  /**
5637
- * Run `onProcessRule()` plugins on every rule.
5638
  */
5639
  ;
5640
 
5641
- _proto.process = function process() {
5642
- var plugins = this.options.jss.plugins; // We need to clone array because if we modify the index somewhere else during a loop
5643
- // we end up with very hard-to-track-down side effects.
5644
 
5645
- this.index.slice(0).forEach(plugins.onProcessRule, plugins);
5646
- }
5647
- /**
5648
- * Register a rule in `.map`, `.classes` and `.keyframes` maps.
5649
- */
5650
- ;
5651
-
5652
- _proto.register = function register(rule) {
5653
- this.map[rule.key] = rule;
5654
 
5655
- if (rule instanceof StyleRule) {
5656
- this.map[rule.selector] = rule;
5657
- if (rule.id) this.classes[rule.key] = rule.id;
5658
- } else if (rule instanceof KeyframesRule && this.keyframes) {
5659
- this.keyframes[rule.name] = rule.id;
5660
- }
5661
- }
5662
- /**
5663
- * Unregister a rule.
5664
- */
5665
- ;
5666
 
5667
- _proto.unregister = function unregister(rule) {
5668
- delete this.map[rule.key];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5669
 
5670
- if (rule instanceof StyleRule) {
5671
- delete this.map[rule.selector];
5672
- delete this.classes[rule.key];
5673
- } else if (rule instanceof KeyframesRule) {
5674
- delete this.keyframes[rule.name];
5675
  }
 
 
5676
  }
5677
  /**
5678
- * Update the function values with a new data.
 
 
5679
  */
5680
- ;
5681
-
5682
- _proto.update = function update() {
5683
- var name;
5684
- var data;
5685
- var options;
5686
-
5687
- if (typeof (arguments.length <= 0 ? undefined : arguments[0]) === 'string') {
5688
- name = arguments.length <= 0 ? undefined : arguments[0]; // $FlowFixMe
5689
 
5690
- data = arguments.length <= 1 ? undefined : arguments[1]; // $FlowFixMe
5691
 
5692
- options = arguments.length <= 2 ? undefined : arguments[2];
5693
- } else {
5694
- data = arguments.length <= 0 ? undefined : arguments[0]; // $FlowFixMe
5695
 
5696
- options = arguments.length <= 1 ? undefined : arguments[1];
5697
- name = null;
 
5698
  }
5699
 
5700
- if (name) {
5701
- this.updateOne(this.map[name], data, options);
5702
- } else {
5703
- for (var index = 0; index < this.index.length; index++) {
5704
- this.updateOne(this.index[index], data, options);
5705
- }
5706
  }
5707
- }
5708
- /**
5709
- * Execute plugins, update rule props.
5710
- */
5711
- ;
5712
 
5713
- _proto.updateOne = function updateOne(rule, data, options) {
5714
- if (options === void 0) {
5715
- options = defaultUpdateOptions;
5716
  }
5717
 
5718
- var _this$options2 = this.options,
5719
- plugins = _this$options2.jss.plugins,
5720
- sheet = _this$options2.sheet; // It is a rules container like for e.g. ConditionalRule.
5721
-
5722
- if (rule.rules instanceof RuleList) {
5723
- rule.rules.update(data, options);
5724
- return;
5725
  }
5726
 
5727
- var styleRule = rule;
5728
- var style = styleRule.style;
5729
- plugins.onUpdate(data, rule, sheet, options); // We rely on a new `style` ref in case it was mutated during onUpdate hook.
5730
-
5731
- if (options.process && style && style !== styleRule.style) {
5732
- // We need to run the plugins in case new `style` relies on syntax plugins.
5733
- plugins.onProcessStyle(styleRule.style, styleRule, sheet); // Update and add props.
5734
-
5735
- for (var prop in styleRule.style) {
5736
- var nextValue = styleRule.style[prop];
5737
- var prevValue = style[prop]; // We need to use `force: true` because `rule.style` has been updated during onUpdate hook, so `rule.prop()` will not update the CSSOM rule.
5738
- // We do this comparison to avoid unneeded `rule.prop()` calls, since we have the old `style` object here.
5739
-
5740
- if (nextValue !== prevValue) {
5741
- styleRule.prop(prop, nextValue, forceUpdateOptions);
5742
- }
5743
- } // Remove props.
5744
 
 
 
 
5745
 
5746
- for (var _prop in style) {
5747
- var _nextValue = styleRule.style[_prop];
5748
- var _prevValue = style[_prop]; // We need to use `force: true` because `rule.style` has been updated during onUpdate hook, so `rule.prop()` will not update the CSSOM rule.
5749
- // We do this comparison to avoid unneeded `rule.prop()` calls, since we have the old `style` object here.
5750
 
5751
- if (_nextValue == null && _nextValue !== _prevValue) {
5752
- styleRule.prop(_prop, null, forceUpdateOptions);
5753
- }
5754
- }
5755
- }
5756
  }
5757
  /**
5758
- * Convert rules to a CSS string.
5759
  */
5760
  ;
5761
 
5762
- _proto.toString = function toString(options) {
5763
- var str = '';
5764
- var sheet = this.options.sheet;
5765
- var link = sheet ? sheet.options.link : false;
5766
-
5767
- for (var index = 0; index < this.index.length; index++) {
5768
- var rule = this.index[index];
5769
- var css = rule.toString(options); // No need to render an empty rule.
5770
-
5771
- if (!css && !link) continue;
5772
- if (str) str += '\n';
5773
- str += css;
5774
- }
5775
-
5776
- return str;
5777
- };
5778
-
5779
- return RuleList;
5780
- }();
5781
-
5782
- var StyleSheet =
5783
- /*#__PURE__*/
5784
- function () {
5785
- function StyleSheet(styles, options) {
5786
- this.options = void 0;
5787
- this.deployed = void 0;
5788
- this.attached = void 0;
5789
- this.rules = void 0;
5790
- this.renderer = void 0;
5791
- this.classes = void 0;
5792
- this.keyframes = void 0;
5793
- this.queue = void 0;
5794
- this.attached = false;
5795
- this.deployed = false;
5796
- this.classes = {};
5797
- this.keyframes = {};
5798
- this.options = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
5799
- sheet: this,
5800
- parent: this,
5801
- classes: this.classes,
5802
- keyframes: this.keyframes
5803
- });
5804
-
5805
- if (options.Renderer) {
5806
- this.renderer = new options.Renderer(this);
5807
  }
5808
 
5809
- this.rules = new RuleList(this.options);
 
5810
 
5811
- for (var name in styles) {
5812
- this.rules.add(name, styles[name]);
5813
  }
5814
 
5815
- this.rules.process();
5816
- }
5817
- /**
5818
- * Attach renderable to the render tree.
5819
- */
5820
-
5821
-
5822
- var _proto = StyleSheet.prototype;
5823
-
5824
- _proto.attach = function attach() {
5825
- if (this.attached) return this;
5826
- if (this.renderer) this.renderer.attach();
5827
- this.attached = true; // Order is important, because we can't use insertRule API if style element is not attached.
5828
-
5829
- if (!this.deployed) this.deploy();
5830
- return this;
5831
  }
5832
  /**
5833
- * Remove renderable from render tree.
5834
  */
5835
  ;
5836
 
5837
- _proto.detach = function detach() {
5838
- if (!this.attached) return this;
5839
- if (this.renderer) this.renderer.detach();
5840
- this.attached = false;
5841
  return this;
5842
  }
5843
  /**
5844
- * Add a rule to the current stylesheet.
5845
- * Will insert a rule also after the stylesheet has been rendered first time.
5846
  */
5847
  ;
5848
 
5849
- _proto.addRule = function addRule(name, decl, options) {
5850
- var queue = this.queue; // Plugins can create rules.
5851
- // In order to preserve the right order, we need to queue all `.addRule` calls,
5852
- // which happen after the first `rules.add()` call.
5853
 
5854
- if (this.attached && !queue) this.queue = [];
5855
- var rule = this.rules.add(name, decl, options);
5856
- if (!rule) return null;
5857
- this.options.jss.plugins.onProcessRule(rule);
5858
 
5859
- if (this.attached) {
5860
- if (!this.deployed) return rule; // Don't insert rule directly if there is no stringified version yet.
5861
- // It will be inserted all together when .attach is called.
 
 
5862
 
5863
- if (queue) queue.push(rule);else {
5864
- this.insertRule(rule);
5865
 
5866
- if (this.queue) {
5867
- this.queue.forEach(this.insertRule, this);
5868
- this.queue = undefined;
5869
- }
5870
- }
5871
- return rule;
5872
- } // We can't add rules to a detached style node.
5873
- // We will redeploy the sheet once user will attach it.
5874
 
 
 
 
5875
 
5876
- this.deployed = false;
5877
- return rule;
5878
- }
5879
- /**
5880
- * Insert rule into the StyleSheet
5881
- */
5882
- ;
5883
 
5884
- _proto.insertRule = function insertRule(rule) {
5885
- if (this.renderer) {
5886
- this.renderer.insertRule(rule);
5887
- }
5888
  }
5889
  /**
5890
- * Create and add rules.
5891
- * Will render also after Style Sheet was rendered the first time.
5892
  */
5893
  ;
5894
 
5895
- _proto.addRules = function addRules(styles, options) {
5896
- var added = [];
5897
 
5898
- for (var name in styles) {
5899
- var rule = this.addRule(name, styles[name], options);
5900
- if (rule) added.push(rule);
5901
  }
5902
 
5903
- return added;
5904
- }
5905
- /**
5906
- * Get a rule by name.
5907
- */
5908
- ;
5909
-
5910
- _proto.getRule = function getRule(name) {
5911
- return this.rules.get(name);
5912
- }
5913
- /**
5914
- * Delete a rule by name.
5915
- * Returns `true`: if rule has been deleted from the DOM.
5916
- */
5917
- ;
5918
 
5919
- _proto.deleteRule = function deleteRule(name) {
5920
- var rule = typeof name === 'object' ? name : this.rules.get(name);
5921
- if (!rule) return false;
5922
- this.rules.remove(rule);
5923
 
5924
- if (this.attached && rule.renderable && this.renderer) {
5925
- return this.renderer.deleteRule(rule.renderable);
5926
- }
 
 
5927
 
5928
- return true;
5929
- }
5930
- /**
5931
- * Get index of a rule.
5932
- */
5933
- ;
5934
 
5935
- _proto.indexOf = function indexOf(rule) {
5936
- return this.rules.indexOf(rule);
5937
- }
5938
- /**
5939
- * Deploy pure CSS string to a renderable.
5940
- */
5941
- ;
5942
 
5943
- _proto.deploy = function deploy() {
5944
- if (this.renderer) this.renderer.deploy();
5945
- this.deployed = true;
5946
- return this;
 
5947
  }
5948
- /**
5949
- * Update the function values with a new data.
5950
- */
5951
- ;
5952
-
5953
- _proto.update = function update() {
5954
- var _this$rules;
5955
 
5956
- (_this$rules = this.rules).update.apply(_this$rules, arguments);
 
5957
 
5958
- return this;
 
 
 
 
 
 
 
 
 
5959
  }
5960
- /**
5961
- * Updates a single rule.
5962
- */
5963
- ;
5964
 
5965
- _proto.updateOne = function updateOne(rule, data, options) {
5966
- this.rules.updateOne(rule, data, options);
5967
- return this;
5968
- }
5969
- /**
5970
- * Convert rules to a CSS string.
5971
- */
5972
- ;
5973
 
5974
- _proto.toString = function toString(options) {
5975
- return this.rules.toString(options);
 
5976
  };
5977
 
5978
- return StyleSheet;
5979
- }();
 
 
 
 
 
 
5980
 
5981
- var PluginsRegistry =
5982
- /*#__PURE__*/
5983
- function () {
5984
- function PluginsRegistry() {
5985
- this.plugins = {
5986
- internal: [],
5987
- external: []
5988
- };
5989
- this.registry = void 0;
5990
- }
5991
 
5992
- var _proto = PluginsRegistry.prototype;
 
 
 
5993
 
5994
- /**
5995
- * Call `onCreateRule` hooks and return an object if returned by a hook.
5996
- */
5997
- _proto.onCreateRule = function onCreateRule(name, decl, options) {
5998
- for (var i = 0; i < this.registry.onCreateRule.length; i++) {
5999
- var rule = this.registry.onCreateRule[i](name, decl, options);
6000
- if (rule) return rule;
6001
  }
6002
 
6003
- return null;
6004
- }
6005
- /**
6006
- * Call `onProcessRule` hooks.
6007
- */
6008
- ;
6009
 
6010
- _proto.onProcessRule = function onProcessRule(rule) {
6011
- if (rule.isProcessed) return;
6012
- var sheet = rule.options.sheet;
6013
 
6014
- for (var i = 0; i < this.registry.onProcessRule.length; i++) {
6015
- this.registry.onProcessRule[i](rule, sheet);
 
 
 
 
 
6016
  }
 
6017
 
6018
- if (rule.style) this.onProcessStyle(rule.style, rule, sheet);
6019
- rule.isProcessed = true;
6020
- }
6021
- /**
6022
- * Call `onProcessStyle` hooks.
6023
- */
6024
- ;
6025
-
6026
- _proto.onProcessStyle = function onProcessStyle(style, rule, sheet) {
6027
- for (var i = 0; i < this.registry.onProcessStyle.length; i++) {
6028
- // $FlowFixMe
6029
- rule.style = this.registry.onProcessStyle[i](rule.style, rule, sheet);
6030
  }
6031
- }
6032
- /**
6033
- * Call `onProcessSheet` hooks.
6034
- */
6035
- ;
6036
 
6037
- _proto.onProcessSheet = function onProcessSheet(sheet) {
6038
- for (var i = 0; i < this.registry.onProcessSheet.length; i++) {
6039
- this.registry.onProcessSheet[i](sheet);
6040
- }
6041
- }
6042
- /**
6043
- * Call `onUpdate` hooks.
6044
- */
6045
- ;
6046
 
6047
- _proto.onUpdate = function onUpdate(data, rule, sheet, options) {
6048
- for (var i = 0; i < this.registry.onUpdate.length; i++) {
6049
- this.registry.onUpdate[i](data, rule, sheet, options);
6050
- }
6051
- }
6052
- /**
6053
- * Call `onChangeValue` hooks.
6054
- */
6055
- ;
6056
 
6057
- _proto.onChangeValue = function onChangeValue(value, prop, rule) {
6058
- var processedValue = value;
 
 
 
 
 
 
6059
 
6060
- for (var i = 0; i < this.registry.onChangeValue.length; i++) {
6061
- processedValue = this.registry.onChangeValue[i](processedValue, prop, rule);
6062
- }
6063
-
6064
- return processedValue;
6065
- }
6066
- /**
6067
- * Register a plugin.
6068
- */
6069
- ;
6070
-
6071
- _proto.use = function use(newPlugin, options) {
6072
- if (options === void 0) {
6073
- options = {
6074
- queue: 'external'
6075
- };
6076
- }
6077
 
6078
- var plugins = this.plugins[options.queue]; // Avoids applying same plugin twice, at least based on ref.
6079
 
6080
- if (plugins.indexOf(newPlugin) !== -1) {
6081
- return;
6082
- }
6083
 
6084
- plugins.push(newPlugin);
6085
- this.registry = [].concat(this.plugins.external, this.plugins.internal).reduce(function (registry, plugin) {
6086
- for (var name in plugin) {
6087
- if (name in registry) {
6088
- registry[name].push(plugin[name]);
6089
- } else {
6090
- false ? undefined : void 0;
6091
- }
6092
- }
6093
 
6094
- return registry;
6095
- }, {
6096
- onCreateRule: [],
6097
- onProcessRule: [],
6098
- onProcessStyle: [],
6099
- onProcessSheet: [],
6100
- onChangeValue: [],
6101
- onUpdate: []
6102
- });
6103
- };
6104
 
6105
- return PluginsRegistry;
6106
- }();
 
6107
 
6108
- /**
6109
- * Sheets registry to access them all at one place.
6110
- */
6111
- var SheetsRegistry =
6112
- /*#__PURE__*/
6113
- function () {
6114
- function SheetsRegistry() {
6115
- this.registry = [];
6116
- }
6117
 
6118
- var _proto = SheetsRegistry.prototype;
6119
 
6120
- /**
6121
- * Register a Style Sheet.
6122
- */
6123
- _proto.add = function add(sheet) {
6124
- var registry = this.registry;
6125
- var index = sheet.options.index;
6126
- if (registry.indexOf(sheet) !== -1) return;
6127
 
6128
- if (registry.length === 0 || index >= this.index) {
6129
- registry.push(sheet);
6130
- return;
6131
- } // Find a position.
6132
 
6133
 
6134
- for (var i = 0; i < registry.length; i++) {
6135
- if (registry[i].options.index > index) {
6136
- registry.splice(i, 0, sheet);
6137
- return;
6138
- }
6139
- }
 
6140
  }
6141
- /**
6142
- * Reset the registry.
6143
- */
6144
- ;
6145
-
6146
- _proto.reset = function reset() {
6147
- this.registry = [];
 
6148
  }
6149
- /**
6150
- * Remove a Style Sheet.
6151
- */
6152
- ;
6153
 
6154
- _proto.remove = function remove(sheet) {
6155
- var index = this.registry.indexOf(sheet);
6156
- this.registry.splice(index, 1);
6157
- }
6158
- /**
6159
- * Convert all attached sheets to a CSS string.
6160
- */
6161
- ;
6162
 
6163
- _proto.toString = function toString(_temp) {
6164
- var _ref = _temp === void 0 ? {} : _temp,
6165
- attached = _ref.attached,
6166
- options = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(_ref, ["attached"]);
6167
 
6168
- var css = '';
 
 
6169
 
6170
- for (var i = 0; i < this.registry.length; i++) {
6171
- var sheet = this.registry[i];
6172
 
6173
- if (attached != null && sheet.attached !== attached) {
6174
- continue;
6175
- }
 
 
 
 
6176
 
6177
- if (css) css += '\n';
6178
- css += sheet.toString(options);
6179
- }
6180
 
6181
- return css;
6182
- };
 
 
 
 
 
 
 
 
6183
 
6184
- Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(SheetsRegistry, [{
6185
- key: "index",
 
6186
 
6187
- /**
6188
- * Current highest index number.
6189
- */
6190
- get: function get() {
6191
- return this.registry.length === 0 ? 0 : this.registry[this.registry.length - 1].options.index;
6192
- }
6193
- }]);
6194
 
6195
- return SheetsRegistry;
6196
- }();
 
 
 
 
 
6197
 
6198
- /**
6199
- * This is a global sheets registry. Only DomRenderer will add sheets to it.
6200
- * On the server one should use an own SheetsRegistry instance and add the
6201
- * sheets to it, because you need to make sure to create a new registry for
6202
- * each request in order to not leak sheets across requests.
6203
- */
6204
 
6205
- var sheets = new SheetsRegistry();
 
 
 
6206
 
6207
- /* eslint-disable */
6208
- // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
6209
- var globalThis = typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
 
 
 
 
 
 
 
6210
 
6211
- var ns = '2f1acc6c3a606b082e5eef5e54414ffb';
6212
- if (globalThis[ns] == null) globalThis[ns] = 0; // Bundle may contain multiple JSS versions at the same time. In order to identify
6213
- // the current version with just one short number and use it for classes generation
6214
- // we use a counter. Also it is more accurate, because user can manually reevaluate
6215
- // the module.
6216
 
6217
- var moduleId = globalThis[ns]++;
6218
 
6219
- var maxRules = 1e10;
6220
 
6221
- /**
6222
- * Returns a function which generates unique class names based on counters.
6223
- * When new generator function is created, rule counter is reseted.
6224
- * We need to reset the rule counter for SSR for each request.
6225
- */
6226
- var createGenerateId = function createGenerateId(options) {
6227
- if (options === void 0) {
6228
- options = {};
6229
- }
6230
 
6231
- var ruleCounter = 0;
6232
- return function (rule, sheet) {
6233
- ruleCounter += 1;
 
 
 
 
6234
 
6235
- if (ruleCounter > maxRules) {
6236
- false ? undefined : void 0;
6237
- }
6238
 
6239
- var jssId = '';
6240
- var prefix = '';
 
6241
 
6242
- if (sheet) {
6243
- if (sheet.options.classNamePrefix) {
6244
- prefix = sheet.options.classNamePrefix;
6245
- }
 
 
 
 
 
 
 
 
 
6246
 
6247
- if (sheet.options.jss.id != null) {
6248
- jssId = String(sheet.options.jss.id);
6249
- }
6250
- }
6251
 
6252
- if (options.minify) {
6253
- // Using "c" because a number can't be the first char in a class name.
6254
- return "" + (prefix || 'c') + moduleId + jssId + ruleCounter;
6255
- }
6256
 
6257
- return prefix + rule.key + "-" + moduleId + (jssId ? "-" + jssId : '') + "-" + ruleCounter;
6258
- };
6259
- };
 
6260
 
 
6261
  /**
6262
- * Cache the value from the first time a function is called.
6263
- */
6264
- var memoize = function memoize(fn) {
6265
- var value;
6266
- return function () {
6267
- if (!value) value = fn();
6268
- return value;
6269
- };
6270
- };
6271
- /**
6272
- * Get a style property value.
6273
  */
6274
 
6275
-
6276
- function getPropertyValue(cssRule, prop) {
6277
- try {
6278
- // Support CSSTOM.
6279
- if (cssRule.attributeStyleMap) {
6280
- return cssRule.attributeStyleMap.get(prop);
6281
- }
6282
-
6283
- return cssRule.style.getPropertyValue(prop);
6284
- } catch (err) {
6285
- // IE may throw if property is unknown.
6286
- return '';
6287
- }
6288
  }
6289
- /**
6290
- * Set a style property.
6291
- */
6292
-
6293
 
6294
- function setProperty(cssRule, prop, value) {
6295
- try {
6296
- var cssValue = value;
6297
 
6298
- if (Array.isArray(value)) {
6299
- cssValue = toCssValue(value, true);
 
6300
 
6301
- if (value[value.length - 1] === '!important') {
6302
- cssRule.style.setProperty(prop, cssValue, 'important');
6303
- return true;
6304
- }
6305
- } // Support CSSTOM.
6306
 
 
 
 
6307
 
6308
- if (cssRule.attributeStyleMap) {
6309
- cssRule.attributeStyleMap.set(prop, cssValue);
6310
- } else {
6311
- cssRule.style.setProperty(prop, cssValue);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6312
  }
6313
- } catch (err) {
6314
- // IE may throw if property is unknown.
6315
- return false;
6316
- }
6317
-
6318
- return true;
6319
  }
6320
  /**
6321
- * Remove a style property.
 
 
 
 
6322
  */
6323
-
6324
-
6325
- function removeProperty(cssRule, prop) {
6326
- try {
6327
- // Support CSSTOM.
6328
- if (cssRule.attributeStyleMap) {
6329
- cssRule.attributeStyleMap.delete(prop);
6330
- } else {
6331
- cssRule.style.removeProperty(prop);
6332
- }
6333
- } catch (err) {
6334
- false ? undefined : void 0;
6335
- }
6336
  }
6337
  /**
6338
- * Set the selector.
 
 
 
 
6339
  */
6340
-
6341
-
6342
- function setSelector(cssRule, selectorText) {
6343
- cssRule.selectorText = selectorText; // Return false if setter was not successful.
6344
- // Currently works in chrome only.
6345
-
6346
- return cssRule.selectorText === selectorText;
6347
  }
6348
  /**
6349
- * Gets the `head` element upon the first call and caches it.
6350
- * We assume it can't be null.
 
 
 
6351
  */
6352
-
6353
-
6354
- var getHead = memoize(function () {
6355
- return document.querySelector('head');
6356
- });
6357
  /**
6358
- * Find attached sheet with an index higher than the passed one.
 
 
 
 
6359
  */
6360
-
6361
- function findHigherSheet(registry, options) {
6362
- for (var i = 0; i < registry.length; i++) {
6363
- var sheet = registry[i];
6364
-
6365
- if (sheet.attached && sheet.options.index > options.index && sheet.options.insertionPoint === options.insertionPoint) {
6366
- return sheet;
6367
- }
6368
- }
6369
-
6370
- return null;
6371
  }
6372
  /**
6373
- * Find attached sheet with the highest index.
 
 
 
 
6374
  */
6375
-
6376
-
6377
- function findHighestSheet(registry, options) {
6378
- for (var i = registry.length - 1; i >= 0; i--) {
6379
- var sheet = registry[i];
6380
-
6381
- if (sheet.attached && sheet.options.insertionPoint === options.insertionPoint) {
6382
- return sheet;
6383
- }
6384
- }
6385
-
6386
- return null;
6387
  }
6388
  /**
6389
- * Find a comment with "jss" inside.
 
 
 
 
6390
  */
6391
-
6392
-
6393
- function findCommentNode(text) {
6394
- var head = getHead();
6395
-
6396
- for (var i = 0; i < head.childNodes.length; i++) {
6397
- var node = head.childNodes[i];
6398
-
6399
- if (node.nodeType === 8 && node.nodeValue.trim() === text) {
6400
- return node;
6401
- }
6402
- }
6403
-
6404
- return null;
6405
  }
6406
-
6407
  /**
6408
- * Find a node before which we can insert the sheet.
 
 
 
 
6409
  */
6410
- function findPrevNode(options) {
6411
- var registry = sheets.registry;
6412
-
6413
- if (registry.length > 0) {
6414
- // Try to insert before the next higher sheet.
6415
- var sheet = findHigherSheet(registry, options);
6416
-
6417
- if (sheet && sheet.renderer) {
6418
- return {
6419
- parent: sheet.renderer.element.parentNode,
6420
- node: sheet.renderer.element
6421
- };
6422
- } // Otherwise insert after the last attached.
6423
-
6424
-
6425
- sheet = findHighestSheet(registry, options);
6426
-
6427
- if (sheet && sheet.renderer) {
6428
- return {
6429
- parent: sheet.renderer.element.parentNode,
6430
- node: sheet.renderer.element.nextSibling
6431
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6432
  }
6433
- } // Try to find a comment placeholder if registry is empty.
 
 
 
 
6434
 
 
 
 
6435
 
6436
- var insertionPoint = options.insertionPoint;
 
6437
 
6438
- if (insertionPoint && typeof insertionPoint === 'string') {
6439
- var comment = findCommentNode(insertionPoint);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6440
 
6441
- if (comment) {
6442
- return {
6443
- parent: comment.parentNode,
6444
- node: comment.nextSibling
6445
- };
6446
- } // If user specifies an insertion point and it can't be found in the document -
6447
- // bad specificity issues may appear.
6448
 
6449
 
6450
- false ? undefined : void 0;
6451
- }
 
6452
 
6453
- return false;
6454
- }
6455
- /**
6456
- * Insert style element into the DOM.
6457
- */
6458
 
6459
 
6460
- function insertStyle(style, options) {
6461
- var insertionPoint = options.insertionPoint;
6462
- var nextNode = findPrevNode(options);
6463
 
6464
- if (nextNode !== false && nextNode.parent) {
6465
- nextNode.parent.insertBefore(style, nextNode.node);
6466
- return;
6467
- } // Works with iframes and any node types.
6468
 
 
6469
 
6470
- if (insertionPoint && typeof insertionPoint.nodeType === 'number') {
6471
- // https://stackoverflow.com/questions/41328728/force-casting-in-flow
6472
- var insertionPointElement = insertionPoint;
6473
- var parentNode = insertionPointElement.parentNode;
6474
- if (parentNode) parentNode.insertBefore(style, insertionPointElement.nextSibling);else false ? undefined : void 0;
6475
- return;
6476
- }
6477
 
6478
- getHead().appendChild(style);
 
 
 
 
 
 
 
6479
  }
 
6480
  /**
6481
- * Read jss nonce setting from the page if the user has set it.
 
 
 
6482
  */
 
 
 
6483
 
 
 
 
 
 
 
 
 
 
 
6484
 
6485
- var getNonce = memoize(function () {
6486
- var node = document.querySelector('meta[property="csp-nonce"]');
6487
- return node ? node.getAttribute('content') : null;
6488
- });
 
 
 
 
 
6489
 
6490
- var _insertRule = function insertRule(container, rule, index) {
6491
- var maxIndex = container.cssRules.length; // In case previous insertion fails, passed index might be wrong
 
 
 
 
 
 
 
6492
 
6493
- if (index === undefined || index > maxIndex) {
6494
- // eslint-disable-next-line no-param-reassign
6495
- index = maxIndex;
 
 
 
 
 
 
 
 
 
6496
  }
 
 
6497
 
6498
- try {
6499
- if ('insertRule' in container) {
6500
- var c = container;
6501
- c.insertRule(rule, index);
6502
- } // Keyframes rule.
6503
- else if ('appendRule' in container) {
6504
- var _c = container;
 
 
6505
 
6506
- _c.appendRule(rule);
6507
- }
6508
- } catch (err) {
6509
- false ? undefined : void 0;
6510
- return false;
6511
- }
 
 
 
6512
 
6513
- return container.cssRules[index];
6514
- };
 
 
 
 
 
 
 
6515
 
6516
- var createStyle = function createStyle() {
6517
- var el = document.createElement('style'); // Without it, IE will have a broken source order specificity if we
6518
- // insert rules after we insert the style tag.
6519
- // It seems to kick-off the source order specificity algorithm.
 
 
 
 
 
 
6520
 
6521
- el.textContent = '\n';
6522
- return el;
6523
- };
6524
 
6525
- var DomRenderer =
6526
- /*#__PURE__*/
6527
- function () {
6528
- // HTMLStyleElement needs fixing https://github.com/facebook/flow/issues/2696
6529
- function DomRenderer(sheet) {
6530
- this.getPropertyValue = getPropertyValue;
6531
- this.setProperty = setProperty;
6532
- this.removeProperty = removeProperty;
6533
- this.setSelector = setSelector;
6534
- this.element = void 0;
6535
- this.sheet = void 0;
6536
- this.hasInsertedRules = false;
6537
- // There is no sheet when the renderer is used from a standalone StyleRule.
6538
- if (sheet) sheets.add(sheet);
6539
- this.sheet = sheet;
6540
 
6541
- var _ref = this.sheet ? this.sheet.options : {},
6542
- media = _ref.media,
6543
- meta = _ref.meta,
6544
- element = _ref.element;
 
 
 
 
 
6545
 
6546
- this.element = element || createStyle();
6547
- this.element.setAttribute('data-jss', '');
6548
- if (media) this.element.setAttribute('media', media);
6549
- if (meta) this.element.setAttribute('data-meta', meta);
6550
- var nonce = getNonce();
6551
- if (nonce) this.element.setAttribute('nonce', nonce);
6552
- }
6553
- /**
6554
- * Insert style element into render tree.
6555
- */
6556
 
 
 
 
 
 
 
 
 
 
6557
 
6558
- var _proto = DomRenderer.prototype;
 
 
 
 
 
 
 
 
6559
 
6560
- _proto.attach = function attach() {
6561
- // In the case the element node is external and it is already in the DOM.
6562
- if (this.element.parentNode || !this.sheet) return;
6563
- insertStyle(this.element, this.sheet.options); // When rules are inserted using `insertRule` API, after `sheet.detach().attach()`
6564
- // most browsers create a new CSSStyleSheet, except of all IEs.
 
 
 
 
6565
 
6566
- var deployed = Boolean(this.sheet && this.sheet.deployed);
 
 
 
 
 
 
 
 
6567
 
6568
- if (this.hasInsertedRules && deployed) {
6569
- this.hasInsertedRules = false;
6570
- this.deploy();
6571
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6572
  }
6573
- /**
6574
- * Remove style element from render tree.
6575
- */
6576
- ;
 
6577
 
6578
- _proto.detach = function detach() {
6579
- var parentNode = this.element.parentNode;
6580
- if (parentNode) parentNode.removeChild(this.element);
 
 
 
 
 
 
 
 
 
 
 
 
 
6581
  }
6582
- /**
6583
- * Inject CSS string into element.
6584
- */
6585
- ;
6586
 
6587
- _proto.deploy = function deploy() {
6588
- var sheet = this.sheet;
6589
- if (!sheet) return;
 
 
6590
 
6591
- if (sheet.options.link) {
6592
- this.insertRules(sheet.rules);
6593
- return;
 
 
 
 
 
 
 
 
6594
  }
6595
-
6596
- this.element.textContent = "\n" + sheet.toString() + "\n";
6597
  }
6598
- /**
6599
- * Insert RuleList into an element.
6600
- */
6601
- ;
6602
 
6603
- _proto.insertRules = function insertRules(rules, nativeParent) {
6604
- for (var i = 0; i < rules.index.length; i++) {
6605
- this.insertRule(rules.index[i], i, nativeParent);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6606
  }
6607
  }
6608
- /**
6609
- * Insert a rule into element.
6610
- */
6611
- ;
6612
 
6613
- _proto.insertRule = function insertRule(rule, index, nativeParent) {
6614
- if (nativeParent === void 0) {
6615
- nativeParent = this.element.sheet;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6616
  }
 
 
 
6617
 
6618
- if (rule.rules) {
6619
- var parent = rule;
6620
- var latestNativeParent = nativeParent;
 
 
 
 
 
 
 
 
 
6621
 
6622
- if (rule.type === 'conditional' || rule.type === 'keyframes') {
6623
- // We need to render the container without children first.
6624
- latestNativeParent = _insertRule(nativeParent, parent.toString({
6625
- children: false
6626
- }), index);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6627
 
6628
- if (latestNativeParent === false) {
6629
- return false;
6630
- }
6631
- }
6632
 
6633
- this.insertRules(parent.rules, latestNativeParent);
6634
- return latestNativeParent;
6635
- } // IE keeps the CSSStyleSheet after style node has been reattached,
6636
- // so we need to check if the `renderable` reference the right style sheet and not
6637
- // rerender those rules.
6638
 
 
 
6639
 
6640
- if (rule.renderable && rule.renderable.parentStyleSheet === this.element.sheet) {
6641
- return rule.renderable;
6642
- }
6643
 
6644
- var ruleStr = rule.toString();
6645
- if (!ruleStr) return false;
6646
 
6647
- var nativeRule = _insertRule(nativeParent, ruleStr, index);
 
6648
 
6649
- if (nativeRule === false) {
6650
- return false;
6651
- }
6652
 
6653
- this.hasInsertedRules = true;
6654
- rule.renderable = nativeRule;
6655
- return nativeRule;
6656
- }
6657
- /**
6658
- * Delete a rule.
6659
- */
6660
- ;
6661
 
6662
- _proto.deleteRule = function deleteRule(cssRule) {
6663
- var sheet = this.element.sheet;
6664
- var index = this.indexOf(cssRule);
6665
- if (index === -1) return false;
6666
- sheet.deleteRule(index);
6667
- return true;
 
 
 
 
 
 
 
 
 
 
 
 
 
6668
  }
6669
- /**
6670
- * Get index of a CSS Rule.
6671
- */
6672
- ;
 
 
 
 
 
 
 
 
6673
 
6674
- _proto.indexOf = function indexOf(cssRule) {
6675
- var cssRules = this.element.sheet.cssRules;
 
 
 
 
 
 
 
 
 
6676
 
6677
- for (var index = 0; index < cssRules.length; index++) {
6678
- if (cssRule === cssRules[index]) return index;
 
 
 
 
6679
  }
 
 
 
 
6680
 
6681
- return -1;
6682
- }
6683
- /**
6684
- * Generate a new CSS rule and replace the existing one.
6685
- *
6686
- * Only used for some old browsers because they can't set a selector.
6687
- */
6688
- ;
6689
 
6690
- _proto.replaceRule = function replaceRule(cssRule, rule) {
6691
- var index = this.indexOf(cssRule);
6692
- if (index === -1) return false;
6693
- this.element.sheet.deleteRule(index);
6694
- return this.insertRule(rule, index);
6695
- }
6696
- /**
6697
- * Get all rules elements.
6698
- */
6699
- ;
6700
 
6701
- _proto.getRules = function getRules() {
6702
- return this.element.sheet.cssRules;
6703
- };
6704
 
6705
- return DomRenderer;
6706
- }();
 
 
 
 
 
 
 
 
 
 
6707
 
6708
- var instanceCounter = 0;
 
 
 
 
6709
 
6710
- var Jss =
6711
- /*#__PURE__*/
6712
- function () {
6713
- function Jss(options) {
6714
- this.id = instanceCounter++;
6715
- this.version = "10.3.0";
6716
- this.plugins = new PluginsRegistry();
6717
- this.options = {
6718
- id: {
6719
- minify: false
6720
- },
6721
- createGenerateId: createGenerateId,
6722
- Renderer: is_in_browser__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"] ? DomRenderer : null,
6723
- plugins: []
6724
- };
6725
- this.generateId = createGenerateId({
6726
- minify: false
6727
- });
6728
 
6729
- for (var i = 0; i < plugins.length; i++) {
6730
- this.plugins.use(plugins[i], {
6731
- queue: 'internal'
6732
- });
6733
- }
6734
 
6735
- this.setup(options);
6736
- }
6737
- /**
6738
- * Prepares various options, applies plugins.
6739
- * Should not be used twice on the same instance, because there is no plugins
6740
- * deduplication logic.
6741
- */
6742
 
 
 
 
 
 
6743
 
6744
- var _proto = Jss.prototype;
 
 
 
 
 
 
 
 
 
6745
 
6746
- _proto.setup = function setup(options) {
6747
- if (options === void 0) {
6748
- options = {};
6749
- }
 
6750
 
6751
- if (options.createGenerateId) {
6752
- this.options.createGenerateId = options.createGenerateId;
 
 
 
6753
  }
 
 
 
6754
 
6755
- if (options.id) {
6756
- this.options.id = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, this.options.id, options.id);
6757
- }
6758
 
6759
- if (options.createGenerateId || options.id) {
6760
- this.generateId = this.options.createGenerateId(this.options.id);
6761
- }
 
 
 
 
 
 
 
 
 
6762
 
6763
- if (options.insertionPoint != null) this.options.insertionPoint = options.insertionPoint;
6764
 
6765
- if ('Renderer' in options) {
6766
- this.options.Renderer = options.Renderer;
6767
- } // eslint-disable-next-line prefer-spread
 
 
 
 
 
 
 
 
6768
 
 
 
 
 
 
 
6769
 
6770
- if (options.plugins) this.use.apply(this, options.plugins);
6771
- return this;
6772
- }
6773
- /**
6774
- * Create a Style Sheet.
6775
- */
6776
- ;
6777
 
6778
- _proto.createStyleSheet = function createStyleSheet(styles, options) {
6779
- if (options === void 0) {
6780
- options = {};
6781
- }
 
 
 
6782
 
6783
- var _options = options,
6784
- index = _options.index;
 
 
 
6785
 
6786
- if (typeof index !== 'number') {
6787
- index = sheets.index === 0 ? 0 : sheets.index + 1;
 
 
 
 
 
6788
  }
 
 
 
6789
 
6790
- var sheet = new StyleSheet(styles, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
6791
- jss: this,
6792
- generateId: options.generateId || this.generateId,
6793
- insertionPoint: this.options.insertionPoint,
6794
- Renderer: this.options.Renderer,
6795
- index: index
6796
- }));
6797
- this.plugins.onProcessSheet(sheet);
6798
- return sheet;
6799
- }
6800
- /**
6801
- * Detach the Style Sheet and remove it from the registry.
6802
- */
6803
- ;
6804
 
6805
- _proto.removeStyleSheet = function removeStyleSheet(sheet) {
6806
- sheet.detach();
6807
- sheets.remove(sheet);
6808
- return this;
6809
- }
6810
- /**
6811
- * Create a rule without a Style Sheet.
6812
- * [Deprecated] will be removed in the next major version.
6813
- */
6814
- ;
6815
 
6816
- _proto.createRule = function createRule$1(name, style, options) {
6817
- if (style === void 0) {
6818
- style = {};
6819
- }
 
 
 
 
 
 
 
 
 
6820
 
6821
- if (options === void 0) {
6822
- options = {};
6823
- }
 
 
 
6824
 
6825
- // Enable rule without name for inline styles.
6826
- if (typeof name === 'object') {
6827
- return this.createRule(undefined, name, style);
6828
- }
 
 
6829
 
6830
- var ruleOptions = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
6831
- name: name,
6832
- jss: this,
6833
- Renderer: this.options.Renderer
6834
- });
 
 
 
 
6835
 
6836
- if (!ruleOptions.generateId) ruleOptions.generateId = this.generateId;
6837
- if (!ruleOptions.classes) ruleOptions.classes = {};
6838
- if (!ruleOptions.keyframes) ruleOptions.keyframes = {};
 
 
 
6839
 
6840
- var rule = createRule(name, style, ruleOptions);
 
 
 
 
 
 
 
 
6841
 
6842
- if (rule) this.plugins.onProcessRule(rule);
6843
- return rule;
6844
- }
6845
- /**
6846
- * Register plugin. Passed function will be invoked with a rule instance.
6847
- */
6848
- ;
6849
 
6850
- _proto.use = function use() {
6851
- var _this = this;
 
 
 
 
 
 
 
 
 
6852
 
6853
- for (var _len = arguments.length, plugins = new Array(_len), _key = 0; _key < _len; _key++) {
6854
- plugins[_key] = arguments[_key];
 
6855
  }
 
 
 
6856
 
6857
- plugins.forEach(function (plugin) {
6858
- _this.plugins.use(plugin);
6859
- });
6860
- return this;
6861
- };
6862
-
6863
- return Jss;
6864
- }();
6865
 
6866
- /**
6867
- * Extracts a styles object with only props that contain function values.
6868
- */
6869
- function getDynamicStyles(styles) {
6870
- var to = null;
 
 
 
 
 
 
 
 
 
 
6871
 
6872
- for (var key in styles) {
6873
- var value = styles[key];
6874
- var type = typeof value;
6875
 
6876
- if (type === 'function') {
6877
- if (!to) to = {};
6878
- to[key] = value;
6879
- } else if (type === 'object' && value !== null && !Array.isArray(value)) {
6880
- var extracted = getDynamicStyles(value);
6881
 
6882
- if (extracted) {
6883
- if (!to) to = {};
6884
- to[key] = extracted;
6885
- }
6886
- }
6887
- }
6888
 
6889
- return to;
6890
- }
6891
 
6892
- /**
6893
- * SheetsManager is like a WeakMap which is designed to count StyleSheet
6894
- * instances and attach/detach automatically.
6895
- */
6896
- var SheetsManager =
6897
- /*#__PURE__*/
6898
- function () {
6899
- function SheetsManager() {
6900
- this.length = 0;
6901
- this.sheets = new WeakMap();
6902
- }
6903
 
6904
- var _proto = SheetsManager.prototype;
6905
 
6906
- _proto.get = function get(key) {
6907
- var entry = this.sheets.get(key);
6908
- return entry && entry.sheet;
6909
- };
6910
 
6911
- _proto.add = function add(key, sheet) {
6912
- if (this.sheets.has(key)) return;
6913
- this.length++;
6914
- this.sheets.set(key, {
6915
- sheet: sheet,
6916
- refs: 0
6917
- });
6918
- };
6919
 
6920
- _proto.manage = function manage(key) {
6921
- var entry = this.sheets.get(key);
6922
 
6923
- if (entry) {
6924
- if (entry.refs === 0) {
6925
- entry.sheet.attach();
6926
- }
6927
 
6928
- entry.refs++;
6929
- return entry.sheet;
6930
- }
 
6931
 
6932
- Object(tiny_warning__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(false, "[JSS] SheetsManager: can't find sheet to manage");
6933
- return undefined;
6934
- };
6935
 
6936
- _proto.unmanage = function unmanage(key) {
6937
- var entry = this.sheets.get(key);
 
 
 
 
 
6938
 
6939
- if (entry) {
6940
- if (entry.refs > 0) {
6941
- entry.refs--;
6942
- if (entry.refs === 0) entry.sheet.detach();
6943
- }
6944
- } else {
6945
- Object(tiny_warning__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(false, "SheetsManager: can't find sheet to unmanage");
6946
- }
6947
- };
6948
 
6949
- Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(SheetsManager, [{
6950
- key: "size",
6951
- get: function get() {
6952
- return this.length;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6953
  }
6954
- }]);
 
 
 
6955
 
6956
- return SheetsManager;
6957
- }();
6958
 
6959
- /**
6960
- * A better abstraction over CSS.
6961
- *
6962
- * @copyright Oleg Isonen (Slobodskoi) / Isonen 2014-present
6963
- * @website https://github.com/cssinjs/jss
6964
- * @license MIT
6965
- */
6966
 
6967
- /**
6968
- * Export a constant indicating if this browser has CSSTOM support.
6969
- * https://developers.google.com/web/updates/2018/03/cssom
6970
- */
6971
- var hasCSSTOMSupport = typeof CSS !== 'undefined' && CSS && 'number' in CSS;
6972
- /**
6973
- * Creates a new instance of Jss.
6974
- */
6975
 
6976
- var create = function create(options) {
6977
- return new Jss(options);
6978
- };
6979
- /**
6980
- * A global Jss instance.
6981
- */
6982
 
6983
- var index = create();
6984
 
6985
- /* harmony default export */ __webpack_exports__["d"] = (index);
6986
 
6987
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6988
 
6989
- /***/ }),
6990
- /* 42 */
6991
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
6992
 
6993
- "use strict";
6994
- /* unused harmony export isBrowser */
6995
- var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
 
 
 
6996
 
6997
- var isBrowser = (typeof window === "undefined" ? "undefined" : _typeof(window)) === "object" && (typeof document === "undefined" ? "undefined" : _typeof(document)) === 'object' && document.nodeType === 9;
 
 
6998
 
6999
- /* harmony default export */ __webpack_exports__["a"] = (isBrowser);
 
 
 
 
7000
 
 
 
 
 
7001
 
7002
- /***/ }),
7003
- /* 43 */,
7004
- /* 44 */
7005
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
7006
 
7007
- "use strict";
7008
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return isError; });
7009
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return isErrorEvent; });
7010
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isDOMError; });
7011
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return isDOMException; });
7012
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return isString; });
7013
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return isPrimitive; });
7014
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return isPlainObject; });
7015
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return isEvent; });
7016
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return isElement; });
7017
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return isRegExp; });
7018
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "m", function() { return isThenable; });
7019
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "l", function() { return isSyntheticEvent; });
7020
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return isInstanceOf; });
7021
- /**
7022
- * Checks whether given value's type is one of a few Error or Error-like
7023
- * {@link isError}.
7024
- *
7025
- * @param wat A value to be checked.
7026
- * @returns A boolean representing the result.
7027
- */
7028
- function isError(wat) {
7029
- switch (Object.prototype.toString.call(wat)) {
7030
- case '[object Error]':
7031
- return true;
7032
- case '[object Exception]':
7033
- return true;
7034
- case '[object DOMException]':
7035
- return true;
7036
- default:
7037
- return isInstanceOf(wat, Error);
7038
  }
 
7039
  }
 
 
 
 
 
 
 
 
 
 
 
 
7040
  /**
7041
- * Checks whether given value's type is ErrorEvent
7042
- * {@link isErrorEvent}.
7043
- *
7044
- * @param wat A value to be checked.
7045
- * @returns A boolean representing the result.
7046
- */
7047
- function isErrorEvent(wat) {
7048
- return Object.prototype.toString.call(wat) === '[object ErrorEvent]';
7049
- }
7050
- /**
7051
- * Checks whether given value's type is DOMError
7052
- * {@link isDOMError}.
7053
- *
7054
- * @param wat A value to be checked.
7055
- * @returns A boolean representing the result.
7056
- */
7057
- function isDOMError(wat) {
7058
- return Object.prototype.toString.call(wat) === '[object DOMError]';
7059
- }
7060
- /**
7061
- * Checks whether given value's type is DOMException
7062
- * {@link isDOMException}.
7063
- *
7064
- * @param wat A value to be checked.
7065
- * @returns A boolean representing the result.
7066
- */
7067
- function isDOMException(wat) {
7068
- return Object.prototype.toString.call(wat) === '[object DOMException]';
7069
- }
7070
- /**
7071
- * Checks whether given value's type is a string
7072
- * {@link isString}.
7073
- *
7074
- * @param wat A value to be checked.
7075
- * @returns A boolean representing the result.
7076
- */
7077
- function isString(wat) {
7078
- return Object.prototype.toString.call(wat) === '[object String]';
7079
- }
7080
- /**
7081
- * Checks whether given value's is a primitive (undefined, null, number, boolean, string)
7082
- * {@link isPrimitive}.
7083
- *
7084
- * @param wat A value to be checked.
7085
- * @returns A boolean representing the result.
7086
- */
7087
- function isPrimitive(wat) {
7088
- return wat === null || (typeof wat !== 'object' && typeof wat !== 'function');
7089
- }
7090
- /**
7091
- * Checks whether given value's type is an object literal
7092
- * {@link isPlainObject}.
7093
- *
7094
- * @param wat A value to be checked.
7095
- * @returns A boolean representing the result.
7096
- */
7097
- function isPlainObject(wat) {
7098
- return Object.prototype.toString.call(wat) === '[object Object]';
7099
- }
7100
- /**
7101
- * Checks whether given value's type is an Event instance
7102
- * {@link isEvent}.
7103
- *
7104
- * @param wat A value to be checked.
7105
- * @returns A boolean representing the result.
7106
- */
7107
- function isEvent(wat) {
7108
- // tslint:disable-next-line:strict-type-predicates
7109
- return typeof Event !== 'undefined' && isInstanceOf(wat, Event);
7110
- }
7111
- /**
7112
- * Checks whether given value's type is an Element instance
7113
- * {@link isElement}.
7114
- *
7115
- * @param wat A value to be checked.
7116
- * @returns A boolean representing the result.
7117
- */
7118
- function isElement(wat) {
7119
- // tslint:disable-next-line:strict-type-predicates
7120
- return typeof Element !== 'undefined' && isInstanceOf(wat, Element);
7121
- }
7122
- /**
7123
- * Checks whether given value's type is an regexp
7124
- * {@link isRegExp}.
7125
- *
7126
- * @param wat A value to be checked.
7127
- * @returns A boolean representing the result.
7128
- */
7129
- function isRegExp(wat) {
7130
- return Object.prototype.toString.call(wat) === '[object RegExp]';
7131
- }
7132
- /**
7133
- * Checks whether given value has a then function.
7134
- * @param wat A value to be checked.
7135
- */
7136
- function isThenable(wat) {
7137
- // tslint:disable:no-unsafe-any
7138
- return Boolean(wat && wat.then && typeof wat.then === 'function');
7139
- // tslint:enable:no-unsafe-any
7140
- }
7141
- /**
7142
- * Checks whether given value's type is a SyntheticEvent
7143
- * {@link isSyntheticEvent}.
7144
- *
7145
- * @param wat A value to be checked.
7146
- * @returns A boolean representing the result.
7147
  */
7148
- function isSyntheticEvent(wat) {
7149
- // tslint:disable-next-line:no-unsafe-any
7150
- return isPlainObject(wat) && 'nativeEvent' in wat && 'preventDefault' in wat && 'stopPropagation' in wat;
7151
- }
 
 
 
 
 
 
 
7152
  /**
7153
- * Checks whether given value's type is an instance of provided constructor.
7154
- * {@link isInstanceOf}.
7155
- *
7156
- * @param wat A value to be checked.
7157
- * @param base A constructor to be used in a check.
7158
- * @returns A boolean representing the result.
7159
  */
7160
- function isInstanceOf(wat, base) {
7161
- try {
7162
- // tslint:disable-next-line:no-unsafe-any
7163
- return wat instanceof base;
7164
- }
7165
- catch (_e) {
7166
- return false;
7167
- }
7168
- }
7169
- //# sourceMappingURL=is.js.map
7170
 
7171
- /***/ }),
7172
- /* 45 */
7173
- /***/ (function(module, exports, __webpack_require__) {
7174
 
7175
- // Thank's IE8 for his funny defineProperty
7176
- module.exports = !__webpack_require__(28)(function () {
7177
- return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
7178
- });
7179
 
 
 
7180
 
7181
  /***/ }),
7182
- /* 46 */
7183
  /***/ (function(module, exports, __webpack_require__) {
7184
 
7185
- var anObject = __webpack_require__(21);
7186
- var IE8_DOM_DEFINE = __webpack_require__(456);
7187
- var toPrimitive = __webpack_require__(101);
7188
- var dP = Object.defineProperty;
7189
 
7190
- exports.f = __webpack_require__(45) ? Object.defineProperty : function defineProperty(O, P, Attributes) {
7191
- anObject(O);
7192
- P = toPrimitive(P, true);
7193
- anObject(Attributes);
7194
- if (IE8_DOM_DEFINE) try {
7195
- return dP(O, P, Attributes);
7196
- } catch (e) { /* empty */ }
7197
- if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
7198
- if ('value' in Attributes) O[P] = Attributes.value;
7199
- return O;
7200
  };
7201
 
7202
-
7203
- /***/ }),
7204
- /* 47 */
7205
- /***/ (function(module, exports, __webpack_require__) {
7206
-
7207
- // 7.1.15 ToLength
7208
- var toInteger = __webpack_require__(103);
7209
- var min = Math.min;
7210
- module.exports = function (it) {
7211
- return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
7212
- };
7213
 
7214
 
7215
  /***/ }),
7216
- /* 48 */
 
7217
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7218
 
7219
  "use strict";
7220
-
7221
- // EXPORTS
7222
- __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _toConsumableArray; });
7223
-
7224
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
7225
- function _arrayWithoutHoles(arr) {
7226
- if (Array.isArray(arr)) {
7227
- for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
7228
- arr2[i] = arr[i];
7229
- }
7230
-
7231
- return arr2;
7232
- }
7233
- }
7234
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js
7235
- var iterableToArray = __webpack_require__(218);
7236
-
7237
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
7238
- function _nonIterableSpread() {
7239
- throw new TypeError("Invalid attempt to spread non-iterable instance");
7240
  }
7241
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
7242
-
7243
 
 
 
 
7244
 
7245
- function _toConsumableArray(arr) {
7246
- return _arrayWithoutHoles(arr) || Object(iterableToArray["a" /* default */])(arr) || _nonIterableSpread();
 
 
7247
  }
7248
 
7249
  /***/ }),
7250
- /* 49 */
7251
  /***/ (function(module, exports) {
7252
 
7253
  var g;
@@ -7273,2064 +6698,1014 @@ module.exports = g;
7273
 
7274
 
7275
  /***/ }),
7276
- /* 50 */
7277
- /***/ (function(module, exports) {
7278
 
7279
- /**
7280
- * Checks if `value` is the
7281
- * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
7282
- * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
7283
- *
7284
- * @static
7285
- * @memberOf _
7286
- * @since 0.1.0
7287
- * @category Lang
7288
- * @param {*} value The value to check.
7289
- * @returns {boolean} Returns `true` if `value` is an object, else `false`.
7290
- * @example
7291
- *
7292
- * _.isObject({});
7293
- * // => true
7294
- *
7295
- * _.isObject([1, 2, 3]);
7296
- * // => true
7297
- *
7298
- * _.isObject(_.noop);
7299
- * // => true
7300
- *
7301
- * _.isObject(null);
7302
- * // => false
7303
- */
7304
- function isObject(value) {
7305
- var type = typeof value;
7306
- return value != null && (type == 'object' || type == 'function');
7307
- }
7308
 
7309
- module.exports = isObject;
7310
-
7311
-
7312
- /***/ }),
7313
- /* 51 */
7314
- /***/ (function(module, exports, __webpack_require__) {
7315
-
7316
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
7317
-
7318
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
7319
-
7320
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
7321
-
7322
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
7323
-
7324
- function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
7325
-
7326
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7327
 
7328
- /* global module, require */
7329
- var defaults = __webpack_require__(292);
7330
 
7331
- var merge = __webpack_require__(19);
 
7332
 
7333
- module.exports = {
7334
- frontend: {
7335
- styling: {
7336
- button: merge({}, defaults.styling.button),
7337
- group: merge({}, defaults.styling.button, defaults.styling.group)
7338
- },
7339
- data: {
7340
- button: merge({}, defaults.data.button),
7341
- icon: merge({}, defaults.data.icon),
7342
- group: merge({}, defaults.data.button, defaults.data.group),
7343
- menu_button: merge({}, defaults.data.group),
7344
- edit_button: merge({}, defaults.data.edit_button)
7345
- }
7346
- },
7347
- dashboard: {
7348
- button: merge({}, defaults.data.button, defaults.styling.button),
7349
- group: merge({}, defaults.data.group, defaults.styling.button, defaults.styling.group),
7350
- formatted: Object.entries(merge({}, defaults.data.group, defaults.data.button, defaults.styling.button, defaults.styling.group)).filter(function (entry) {
7351
- return Array.isArray(entry[1]);
7352
- }).map(function (_ref) {
7353
- var _ref2 = _slicedToArray(_ref, 1),
7354
- key = _ref2[0];
7355
 
7356
- return key;
7357
- })
7358
- }
7359
- };
7360
 
7361
  /***/ }),
7362
- /* 52 */
7363
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7364
 
7365
  "use strict";
7366
- /* WEBPACK VAR INJECTION */(function(process) {/* unused harmony export Immer */
7367
  /* unused harmony export applyPatches */
7368
  /* unused harmony export castDraft */
7369
  /* unused harmony export castImmutable */
7370
  /* unused harmony export createDraft */
 
 
 
 
 
7371
  /* unused harmony export finishDraft */
 
7372
  /* unused harmony export immerable */
7373
  /* unused harmony export isDraft */
7374
  /* unused harmony export isDraftable */
7375
  /* unused harmony export nothing */
7376
  /* unused harmony export original */
7377
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return produce; });
7378
  /* unused harmony export produceWithPatches */
7379
  /* unused harmony export setAutoFreeze */
7380
  /* unused harmony export setUseProxies */
7381
- // Should be no imports here!
7382
- var _a; // SOme things that should be evaluated before all else...
7383
 
7384
 
7385
- var hasSymbol = typeof Symbol !== "undefined";
7386
- var hasMap = typeof Map !== "undefined";
7387
- var hasSet = typeof Set !== "undefined";
7388
- /**
7389
- * The sentinel value returned by producers to replace the draft with undefined.
7390
- */
7391
 
7392
- var NOTHING = hasSymbol ? Symbol("immer-nothing") : (_a = {}, _a["immer-nothing"] = true, _a);
7393
- /**
7394
- * To let Immer treat your class instances as plain immutable objects
7395
- * (albeit with a custom prototype), you must define either an instance property
7396
- * or a static property on each of your custom classes.
7397
- *
7398
- * Otherwise, your class instance will never be drafted, which means it won't be
7399
- * safe to mutate in a produce callback.
7400
- */
7401
 
7402
- var DRAFTABLE = hasSymbol ? Symbol("immer-draftable") : "__$immer_draftable";
7403
- var DRAFT_STATE = hasSymbol ? Symbol("immer-state") : "__$immer_state";
7404
- var iteratorSymbol = hasSymbol ? Symbol.iterator : "@@iterator";
7405
 
7406
- /* istanbul ignore next */
7407
- var extendStatics = function (d, b) {
7408
- extendStatics = Object.setPrototypeOf || {
7409
- __proto__: []
7410
- } instanceof Array && function (d, b) {
7411
- d.__proto__ = b;
7412
- } || function (d, b) {
7413
- for (var p in b) { if (b.hasOwnProperty(p)) { d[p] = b[p]; } }
7414
- };
7415
 
7416
- return extendStatics(d, b);
7417
- }; // Ugly hack to resolve #502 and inherit built in Map / Set
 
 
7418
 
 
 
 
 
 
 
 
 
 
 
 
7419
 
7420
- function __extends(d, b) {
7421
- extendStatics(d, b);
7422
 
7423
- function __() {
7424
- this.constructor = d;
7425
- }
7426
 
7427
- d.prototype = ( // @ts-ignore
7428
- __.prototype = b.prototype, new __());
7429
- }
 
 
 
7430
 
7431
- var Archtype;
7432
 
7433
- (function (Archtype) {
7434
- Archtype[Archtype["Object"] = 0] = "Object";
7435
- Archtype[Archtype["Array"] = 1] = "Array";
7436
- Archtype[Archtype["Map"] = 2] = "Map";
7437
- Archtype[Archtype["Set"] = 3] = "Set";
7438
- })(Archtype || (Archtype = {}));
7439
 
7440
- var ProxyType;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7441
 
7442
- (function (ProxyType) {
7443
- ProxyType[ProxyType["ProxyObject"] = 0] = "ProxyObject";
7444
- ProxyType[ProxyType["ProxyArray"] = 1] = "ProxyArray";
7445
- ProxyType[ProxyType["ES5Object"] = 2] = "ES5Object";
7446
- ProxyType[ProxyType["ES5Array"] = 3] = "ES5Array";
7447
- ProxyType[ProxyType["Map"] = 4] = "Map";
7448
- ProxyType[ProxyType["Set"] = 5] = "Set";
7449
- })(ProxyType || (ProxyType = {}));
7450
 
7451
- /** Returns true if the given value is an Immer draft */
7452
 
7453
- function isDraft(value) {
7454
- return !!value && !!value[DRAFT_STATE];
7455
- }
7456
- /** Returns true if the given value can be drafted by Immer */
7457
 
7458
- function isDraftable(value) {
7459
- if (!value) { return false; }
7460
- return isPlainObject(value) || Array.isArray(value) || !!value[DRAFTABLE] || !!value.constructor[DRAFTABLE] || isMap(value) || isSet(value);
7461
- }
7462
- function isPlainObject(value) {
7463
- if (!value || typeof value !== "object") { return false; }
7464
- var proto = Object.getPrototypeOf(value);
7465
- return !proto || proto === Object.prototype;
7466
- }
7467
- function original(value) {
7468
- if (value && value[DRAFT_STATE]) {
7469
- return value[DRAFT_STATE].base;
7470
- } // otherwise return undefined
7471
-
7472
- }
7473
- var ownKeys = typeof Reflect !== "undefined" && Reflect.ownKeys ? Reflect.ownKeys : typeof Object.getOwnPropertySymbols !== "undefined" ? function (obj) {
7474
- return Object.getOwnPropertyNames(obj).concat(Object.getOwnPropertySymbols(obj));
7475
- } :
7476
- /* istanbul ignore next */
7477
- Object.getOwnPropertyNames;
7478
- function each(obj, iter) {
7479
- if (getArchtype(obj) === Archtype.Object) {
7480
- ownKeys(obj).forEach(function (key) {
7481
- return iter(key, obj[key], obj);
7482
- });
7483
- } else {
7484
- obj.forEach(function (entry, index) {
7485
- return iter(index, entry, obj);
7486
- });
7487
- }
7488
- }
7489
- function isEnumerable(base, prop) {
7490
- var desc = Object.getOwnPropertyDescriptor(base, prop);
7491
- return desc && desc.enumerable ? true : false;
7492
- }
7493
- function getArchtype(thing) {
7494
- /* istanbul ignore next */
7495
- if (!thing) { die(); }
7496
 
7497
- if (thing[DRAFT_STATE]) {
7498
- switch (thing[DRAFT_STATE].type) {
7499
- case ProxyType.ES5Object:
7500
- case ProxyType.ProxyObject:
7501
- return Archtype.Object;
7502
 
7503
- case ProxyType.ES5Array:
7504
- case ProxyType.ProxyArray:
7505
- return Archtype.Array;
7506
 
7507
- case ProxyType.Map:
7508
- return Archtype.Map;
7509
 
7510
- case ProxyType.Set:
7511
- return Archtype.Set;
7512
- }
7513
- }
7514
 
7515
- return Array.isArray(thing) ? Archtype.Array : isMap(thing) ? Archtype.Map : isSet(thing) ? Archtype.Set : Archtype.Object;
7516
- }
7517
- function has(thing, prop) {
7518
- return getArchtype(thing) === Archtype.Map ? thing.has(prop) : Object.prototype.hasOwnProperty.call(thing, prop);
7519
- }
7520
- function get(thing, prop) {
7521
- // @ts-ignore
7522
- return getArchtype(thing) === Archtype.Map ? thing.get(prop) : thing[prop];
7523
- }
7524
- function set(thing, propOrOldValue, value) {
7525
- switch (getArchtype(thing)) {
7526
- case Archtype.Map:
7527
- thing.set(propOrOldValue, value);
7528
- break;
7529
 
7530
- case Archtype.Set:
7531
- thing.delete(propOrOldValue);
7532
- thing.add(value);
7533
- break;
7534
 
7535
- default:
7536
- thing[propOrOldValue] = value;
7537
- }
7538
- }
7539
- function is(x, y) {
7540
- // From: https://github.com/facebook/fbjs/blob/c69904a511b900266935168223063dd8772dfc40/packages/fbjs/src/core/shallowEqual.js
7541
- if (x === y) {
7542
- return x !== 0 || 1 / x === 1 / y;
7543
- } else {
7544
- return x !== x && y !== y;
7545
- }
7546
- }
7547
- function isMap(target) {
7548
- return hasMap && target instanceof Map;
7549
- }
7550
- function isSet(target) {
7551
- return hasSet && target instanceof Set;
7552
- }
7553
- function latest(state) {
7554
- return state.copy || state.base;
7555
- }
7556
- function shallowCopy(base, invokeGetters) {
7557
- if (invokeGetters === void 0) {
7558
- invokeGetters = false;
7559
- }
7560
 
7561
- if (Array.isArray(base)) { return base.slice(); }
7562
- var clone = Object.create(Object.getPrototypeOf(base));
7563
- ownKeys(base).forEach(function (key) {
7564
- if (key === DRAFT_STATE) {
7565
- return; // Never copy over draft state.
7566
- }
7567
 
7568
- var desc = Object.getOwnPropertyDescriptor(base, key);
7569
- var value = desc.value;
7570
 
7571
- if (desc.get) {
7572
- if (!invokeGetters) {
7573
- throw new Error("Immer drafts cannot have computed properties");
7574
- }
 
7575
 
7576
- value = desc.get.call(base);
7577
- }
 
7578
 
7579
- if (desc.enumerable) {
7580
- clone[key] = value;
7581
- } else {
7582
- Object.defineProperty(clone, key, {
7583
- value: value,
7584
- writable: true,
7585
- configurable: true
7586
- });
7587
- }
7588
- });
7589
- return clone;
7590
- }
7591
- function freeze(obj, deep) {
7592
- if (!isDraftable(obj) || isDraft(obj) || Object.isFrozen(obj)) { return; }
7593
- var type = getArchtype(obj);
7594
 
7595
- if (type === Archtype.Set) {
7596
- obj.add = obj.clear = obj.delete = dontMutateFrozenCollections;
7597
- } else if (type === Archtype.Map) {
7598
- obj.set = obj.clear = obj.delete = dontMutateFrozenCollections;
7599
- }
7600
 
7601
- Object.freeze(obj);
7602
- if (deep) { each(obj, function (_, value) {
7603
- return freeze(value, true);
7604
- }); }
7605
- }
7606
 
7607
- function dontMutateFrozenCollections() {
7608
- throw new Error("This object has been frozen and should not be mutated");
7609
- }
7610
 
7611
- function createHiddenProperty(target, prop, value) {
7612
- Object.defineProperty(target, prop, {
7613
- value: value,
7614
- enumerable: false,
7615
- writable: true
7616
- });
7617
- }
7618
- /* istanbul ignore next */
7619
 
7620
- function die() {
7621
- throw new Error("Illegal state, please file a bug");
7622
- }
 
 
 
 
 
7623
 
7624
- /** Each scope represents a `produce` call. */
 
7625
 
7626
- var ImmerScope =
7627
- /** @class */
7628
- function () {
7629
- function ImmerScope(parent, immer) {
7630
- this.drafts = [];
7631
- this.parent = parent;
7632
- this.immer = immer; // Whenever the modified draft contains a draft from another scope, we
7633
- // need to prevent auto-freezing so the unowned draft can be finalized.
7634
 
7635
- this.canAutoFreeze = true;
7636
- }
7637
 
7638
- ImmerScope.prototype.usePatches = function (patchListener) {
7639
- if (patchListener) {
7640
- this.patches = [];
7641
- this.inversePatches = [];
7642
- this.patchListener = patchListener;
 
 
 
 
 
7643
  }
7644
- };
7645
 
7646
- ImmerScope.prototype.revoke = function () {
7647
- this.leave();
7648
- this.drafts.forEach(revoke); // @ts-ignore
7649
 
7650
- this.drafts = null;
7651
- };
7652
 
7653
- ImmerScope.prototype.leave = function () {
7654
- if (this === ImmerScope.current) {
7655
- ImmerScope.current = this.parent;
 
 
 
 
7656
  }
7657
  };
7658
 
7659
- ImmerScope.enter = function (immer) {
7660
- var scope = new ImmerScope(ImmerScope.current, immer);
7661
- ImmerScope.current = scope;
7662
- return scope;
7663
  };
7664
 
7665
- return ImmerScope;
7666
- }();
 
 
 
 
 
 
 
 
 
 
 
7667
 
7668
- function revoke(draft) {
7669
- var state = draft[DRAFT_STATE];
7670
- if (state.type === ProxyType.ProxyObject || state.type === ProxyType.ProxyArray) { state.revoke(); }else { state.revoked = true; }
7671
- }
7672
 
7673
- function processResult(immer, result, scope) {
7674
- var baseDraft = scope.drafts[0];
7675
- var isReplaced = result !== undefined && result !== baseDraft;
7676
- immer.willFinalize(scope, result, isReplaced);
7677
 
7678
- if (isReplaced) {
7679
- if (baseDraft[DRAFT_STATE].modified) {
7680
- scope.revoke();
7681
- throw new Error("An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft."); // prettier-ignore
7682
- }
7683
 
7684
- if (isDraftable(result)) {
7685
- // Finalize the result in case it contains (or is) a subset of the draft.
7686
- result = finalize(immer, result, scope);
7687
- if (!scope.parent) { maybeFreeze(immer, result); }
7688
- }
7689
 
7690
- if (scope.patches) {
7691
- scope.patches.push({
7692
- op: "replace",
7693
- path: [],
7694
- value: result
7695
- });
7696
- scope.inversePatches.push({
7697
- op: "replace",
7698
- path: [],
7699
- value: baseDraft[DRAFT_STATE].base
7700
- });
7701
- }
7702
- } else {
7703
- // Finalize the base draft.
7704
- result = finalize(immer, baseDraft, scope, []);
7705
- }
7706
 
7707
- scope.revoke();
 
 
7708
 
7709
- if (scope.patches) {
7710
- scope.patchListener(scope.patches, scope.inversePatches);
 
7711
  }
7712
 
7713
- return result !== NOTHING ? result : undefined;
7714
- }
7715
 
7716
- function finalize(immer, draft, scope, path) {
7717
- var state = draft[DRAFT_STATE];
 
 
 
 
7718
 
7719
- if (!state) {
7720
- if (Object.isFrozen(draft)) { return draft; }
7721
- return finalizeTree(immer, draft, scope);
7722
- } // Never finalize drafts owned by another scope.
7723
 
 
7724
 
7725
- if (state.scope !== scope) {
7726
- return draft;
7727
- }
 
7728
 
7729
- if (!state.modified) {
7730
- maybeFreeze(immer, state.base, true);
7731
- return state.base;
7732
  }
7733
 
7734
- if (!state.finalized) {
7735
- state.finalized = true;
7736
- finalizeTree(immer, state.draft, scope, path); // We cannot really delete anything inside of a Set. We can only replace the whole Set.
7737
-
7738
- if (immer.onDelete && state.type !== ProxyType.Set) {
7739
- // The `assigned` object is unreliable with ES5 drafts.
7740
- if (immer.useProxies) {
7741
- var assigned = state.assigned;
7742
- each(assigned, function (prop, exists) {
7743
- if (!exists) { immer.onDelete(state, prop); }
7744
- });
7745
- } else {
7746
- var base = state.base,
7747
- copy_1 = state.copy;
7748
- each(base, function (prop) {
7749
- if (!has(copy_1, prop)) { immer.onDelete(state, prop); }
7750
- });
7751
- }
7752
- }
7753
-
7754
- if (immer.onCopy) {
7755
- immer.onCopy(state);
7756
- } // At this point, all descendants of `state.copy` have been finalized,
7757
- // so we can be sure that `scope.canAutoFreeze` is accurate.
7758
-
7759
 
7760
- if (immer.autoFreeze && scope.canAutoFreeze) {
7761
- freeze(state.copy, false);
7762
- }
7763
 
7764
- if (path && scope.patches) {
7765
- generatePatches(state, path, scope.patches, scope.inversePatches);
7766
- }
7767
- }
7768
 
7769
- return state.copy;
7770
- }
 
7771
 
7772
- function finalizeTree(immer, root, scope, rootPath) {
7773
- var state = root[DRAFT_STATE];
 
7774
 
7775
- if (state) {
7776
- if (state.type === ProxyType.ES5Object || state.type === ProxyType.ES5Array) {
7777
- // Create the final copy, with added keys and without deleted keys.
7778
- state.copy = shallowCopy(state.draft, true);
7779
- }
7780
 
7781
- root = state.copy;
7782
- }
 
7783
 
7784
- each(root, function (key, value) {
7785
- return finalizeProperty(immer, scope, root, state, root, key, value, rootPath);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7786
  });
7787
- return root;
7788
  }
7789
 
7790
- function finalizeProperty(immer, scope, root, rootState, parentValue, prop, childValue, rootPath) {
7791
- if (childValue === parentValue) {
7792
- throw Error("Immer forbids circular references");
7793
- } // In the `finalizeTree` method, only the `root` object may be a draft.
7794
 
 
 
 
7795
 
7796
- var isDraftProp = !!rootState && parentValue === root;
7797
- var isSetMember = isSet(parentValue);
 
7798
 
7799
- if (isDraft(childValue)) {
7800
- var path = rootPath && isDraftProp && !isSetMember && // Set objects are atomic since they have no keys.
7801
- !has(rootState.assigned, prop) // Skip deep patches for assigned keys.
7802
- ? rootPath.concat(prop) : undefined; // Drafts owned by `scope` are finalized here.
7803
 
7804
- childValue = finalize(immer, childValue, scope, path);
7805
- set(parentValue, prop, childValue); // Drafts from another scope must prevent auto-freezing.
 
 
 
7806
 
7807
- if (isDraft(childValue)) {
7808
- scope.canAutoFreeze = false;
7809
- }
7810
- } // Unchanged draft properties are ignored.
7811
- else if (isDraftProp && is(childValue, get(rootState.base, prop))) {
7812
- return;
7813
- } // Search new objects for unfinalized drafts. Frozen objects should never contain drafts.
7814
- // TODO: the recursion over here looks weird, shouldn't non-draft stuff have it's own recursion?
7815
- // especially the passing on of root and rootState doesn't make sense...
7816
- else if (isDraftable(childValue)) {
7817
- each(childValue, function (key, grandChild) {
7818
- return finalizeProperty(immer, scope, root, rootState, childValue, key, grandChild, rootPath);
7819
- });
7820
- if (!scope.parent) { maybeFreeze(immer, childValue); }
7821
- }
7822
 
7823
- if (isDraftProp && immer.onAssign && !isSetMember) {
7824
- immer.onAssign(rootState, prop, childValue);
 
7825
  }
7826
- }
7827
 
7828
- function maybeFreeze(immer, value, deep) {
7829
- if (deep === void 0) {
7830
- deep = false;
7831
  }
7832
 
7833
- if (immer.autoFreeze && !isDraft(value)) {
7834
- freeze(value, deep);
7835
- }
7836
  }
7837
 
7838
- /**
7839
- * Returns a new draft of the `base` object.
7840
- *
7841
- * The second argument is the parent draft-state (used internally).
7842
- */
7843
-
7844
- function createProxy(base, parent) {
7845
- var isArray = Array.isArray(base);
7846
- var state = {
7847
- type: isArray ? ProxyType.ProxyArray : ProxyType.ProxyObject,
7848
- // Track which produce call this is associated with.
7849
- scope: parent ? parent.scope : ImmerScope.current,
7850
- // True for both shallow and deep changes.
7851
- modified: false,
7852
- // Used during finalization.
7853
- finalized: false,
7854
- // Track which properties have been assigned (true) or deleted (false).
7855
- assigned: {},
7856
- // The parent draft state.
7857
- parent: parent,
7858
- // The base state.
7859
- base: base,
7860
- // The base proxy.
7861
- draft: null,
7862
- // Any property proxies.
7863
- drafts: {},
7864
- // The base copy with any updated values.
7865
- copy: null,
7866
- // Called by the `produce` function.
7867
- revoke: null,
7868
- isManual: false
7869
- }; // the traps must target something, a bit like the 'real' base.
7870
- // but also, we need to be able to determine from the target what the relevant state is
7871
- // (to avoid creating traps per instance to capture the state in closure,
7872
- // and to avoid creating weird hidden properties as well)
7873
- // So the trick is to use 'state' as the actual 'target'! (and make sure we intercept everything)
7874
- // Note that in the case of an array, we put the state in an array to have better Reflect defaults ootb
7875
-
7876
- var target = state;
7877
- var traps = objectTraps;
7878
-
7879
- if (isArray) {
7880
- target = [state];
7881
- traps = arrayTraps;
7882
- } // TODO: optimization: might be faster, cheaper if we created a non-revocable proxy
7883
- // and administrate revoking ourselves
7884
-
7885
-
7886
- var _a = Proxy.revocable(target, traps),
7887
- revoke = _a.revoke,
7888
- proxy = _a.proxy;
7889
-
7890
- state.draft = proxy;
7891
- state.revoke = revoke;
7892
- return proxy;
7893
- }
7894
- /**
7895
- * Object drafts
7896
  */
7897
 
7898
- var objectTraps = {
7899
- get: function (state, prop) {
7900
- if (prop === DRAFT_STATE) { return state; }
7901
- var drafts = state.drafts; // Check for existing draft in unmodified state.
7902
-
7903
- if (!state.modified && has(drafts, prop)) {
7904
- return drafts[prop];
7905
- }
7906
-
7907
- var value = latest(state)[prop];
7908
-
7909
- if (state.finalized || !isDraftable(value)) {
7910
- return value;
7911
- } // Check for existing draft in modified state.
7912
-
7913
-
7914
- if (state.modified) {
7915
- // Assigned values are never drafted. This catches any drafts we created, too.
7916
- if (value !== peek(state.base, prop)) { return value; } // Store drafts on the copy (when one exists).
7917
- // @ts-ignore
7918
 
7919
- drafts = state.copy;
 
 
7920
  }
7921
 
7922
- return drafts[prop] = state.scope.immer.createProxy(value, state);
7923
- },
7924
- has: function (state, prop) {
7925
- return prop in latest(state);
7926
- },
7927
- ownKeys: function (state) {
7928
- return Reflect.ownKeys(latest(state));
7929
- },
7930
- set: function (state, prop
7931
- /* strictly not, but helps TS */
7932
- , value) {
7933
- if (!state.modified) {
7934
- var baseValue = peek(state.base, prop); // Optimize based on value's truthiness. Truthy values are guaranteed to
7935
- // never be undefined, so we can avoid the `in` operator. Lastly, truthy
7936
- // values may be drafts, but falsy values are never drafts.
7937
 
7938
- var isUnchanged = value ? is(baseValue, value) || value === state.drafts[prop] : is(baseValue, value) && prop in state.base;
7939
- if (isUnchanged) { return true; }
7940
- prepareCopy(state);
7941
- markChanged(state);
7942
- }
 
 
 
 
 
7943
 
7944
- state.assigned[prop] = true; // @ts-ignore
7945
 
7946
- state.copy[prop] = value;
7947
- return true;
7948
- },
7949
- deleteProperty: function (state, prop) {
7950
- // The `undefined` check is a fast path for pre-existing keys.
7951
- if (peek(state.base, prop) !== undefined || prop in state.base) {
7952
- state.assigned[prop] = false;
7953
- prepareCopy(state);
7954
- markChanged(state);
7955
- } else if (state.assigned[prop]) {
7956
- // if an originally not assigned property was deleted
7957
- delete state.assigned[prop];
7958
- } // @ts-ignore
7959
-
7960
-
7961
- if (state.copy) { delete state.copy[prop]; }
7962
- return true;
7963
- },
7964
- // Note: We never coerce `desc.value` into an Immer draft, because we can't make
7965
- // the same guarantee in ES5 mode.
7966
- getOwnPropertyDescriptor: function (state, prop) {
7967
- var owner = latest(state);
7968
- var desc = Reflect.getOwnPropertyDescriptor(owner, prop);
7969
 
7970
- if (desc) {
7971
- desc.writable = true;
7972
- desc.configurable = state.type !== ProxyType.ProxyArray || prop !== "length";
7973
- }
 
 
 
 
 
 
7974
 
7975
- return desc;
7976
- },
7977
- defineProperty: function () {
7978
- throw new Error("Object.defineProperty() cannot be used on an Immer draft"); // prettier-ignore
7979
- },
7980
- getPrototypeOf: function (state) {
7981
- return Object.getPrototypeOf(state.base);
7982
- },
7983
- setPrototypeOf: function () {
7984
- throw new Error("Object.setPrototypeOf() cannot be used on an Immer draft"); // prettier-ignore
7985
  }
7986
- };
7987
- /**
7988
- * Array drafts
 
 
7989
  */
7990
 
7991
- var arrayTraps = {};
7992
- each(objectTraps, function (key, fn) {
7993
- // @ts-ignore
7994
- arrayTraps[key] = function () {
7995
- arguments[0] = arguments[0][0];
7996
- return fn.apply(this, arguments);
7997
- };
7998
- });
7999
 
8000
- arrayTraps.deleteProperty = function (state, prop) {
8001
- if (isNaN(parseInt(prop))) {
8002
- throw new Error("Immer only supports deleting array indices"); // prettier-ignore
8003
  }
8004
 
8005
- return objectTraps.deleteProperty.call(this, state[0], prop);
8006
- };
8007
-
8008
- arrayTraps.set = function (state, prop, value) {
8009
- if (prop !== "length" && isNaN(parseInt(prop))) {
8010
- throw new Error("Immer only supports setting array indices and the 'length' property"); // prettier-ignore
8011
  }
8012
 
8013
- return objectTraps.set.call(this, state[0], prop, value, state[0]);
8014
- };
8015
- /**
8016
- * Map drafts
8017
- */
8018
- // Access a property without creating an Immer draft.
 
 
 
 
 
 
8019
 
 
 
 
 
 
 
 
8020
 
8021
- function peek(draft, prop) {
8022
- var state = draft[DRAFT_STATE];
8023
- var desc = Reflect.getOwnPropertyDescriptor(state ? latest(state) : draft, prop);
8024
- return desc && desc.value;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8025
  }
8026
 
8027
- function markChanged(state) {
8028
- if (!state.modified) {
8029
- state.modified = true;
8030
-
8031
- if (state.type === ProxyType.ProxyObject || state.type === ProxyType.ProxyArray) {
8032
- var copy_1 = state.copy = shallowCopy(state.base);
8033
- each(state.drafts, function (key, value) {
8034
- // @ts-ignore
8035
- copy_1[key] = value;
8036
- });
8037
- state.drafts = undefined;
8038
- }
8039
-
8040
- if (state.parent) {
8041
- markChanged(state.parent);
8042
- }
8043
- }
8044
  }
8045
 
8046
- function prepareCopy(state) {
8047
- if (!state.copy) {
8048
- state.copy = shallowCopy(state.base);
8049
- }
8050
  }
 
 
 
8051
 
8052
- function willFinalizeES5(scope, result, isReplaced) {
8053
- scope.drafts.forEach(function (draft) {
8054
- draft[DRAFT_STATE].finalizing = true;
8055
- });
8056
-
8057
- if (!isReplaced) {
8058
- if (scope.patches) {
8059
- markChangesRecursively(scope.drafts[0]);
8060
- } // This is faster when we don't care about which attributes changed.
8061
 
 
 
 
 
8062
 
8063
- markChangesSweep(scope.drafts);
8064
- } // When a child draft is returned, look for changes.
8065
- else if (isDraft(result) && result[DRAFT_STATE].scope === scope) {
8066
- markChangesSweep(scope.drafts);
8067
- }
8068
- }
8069
- function createES5Proxy(base, parent) {
8070
- var isArray = Array.isArray(base);
8071
- var draft = clonePotentialDraft(base);
8072
- each(draft, function (prop) {
8073
- proxyProperty(draft, prop, isArray || isEnumerable(base, prop));
8074
- });
8075
- var state = {
8076
- type: isArray ? ProxyType.ES5Array : ProxyType.ES5Object,
8077
- scope: parent ? parent.scope : ImmerScope.current,
8078
- modified: false,
8079
- finalizing: false,
8080
- finalized: false,
8081
- assigned: {},
8082
- parent: parent,
8083
- base: base,
8084
- draft: draft,
8085
- copy: null,
8086
- revoked: false,
8087
- isManual: false
8088
- };
8089
- createHiddenProperty(draft, DRAFT_STATE, state);
8090
- return draft;
8091
- } // Access a property without creating an Immer draft.
8092
-
8093
- function peek$1(draft, prop) {
8094
- var state = draft[DRAFT_STATE];
8095
-
8096
- if (state && !state.finalizing) {
8097
- state.finalizing = true;
8098
- var value = draft[prop];
8099
- state.finalizing = false;
8100
- return value;
8101
  }
8102
 
8103
- return draft[prop];
8104
- }
8105
 
8106
- function get$1(state, prop) {
8107
- assertUnrevoked(state);
8108
- var value = peek$1(latest(state), prop);
8109
- if (state.finalizing) { return value; } // Create a draft if the value is unmodified.
8110
 
8111
- if (value === peek$1(state.base, prop) && isDraftable(value)) {
8112
- prepareCopy$1(state); // @ts-ignore
 
 
 
8113
 
8114
- return state.copy[prop] = state.scope.immer.createProxy(value, state);
8115
- }
 
 
8116
 
8117
- return value;
8118
- }
 
 
 
8119
 
8120
- function set$1(state, prop, value) {
8121
- assertUnrevoked(state);
8122
- state.assigned[prop] = true;
8123
 
8124
- if (!state.modified) {
8125
- if (is(value, peek$1(latest(state), prop))) { return; }
8126
- markChangedES5(state);
8127
- prepareCopy$1(state);
8128
- } // @ts-ignore
8129
 
 
 
8130
 
8131
- state.copy[prop] = value;
8132
- }
8133
 
8134
- function markChangedES5(state) {
8135
- if (!state.modified) {
8136
- state.modified = true;
8137
- if (state.parent) { markChangedES5(state.parent); }
8138
- }
8139
  }
8140
 
8141
- function prepareCopy$1(state) {
8142
- if (!state.copy) { state.copy = clonePotentialDraft(state.base); }
 
 
 
8143
  }
8144
 
8145
- function clonePotentialDraft(base) {
8146
- var state = base && base[DRAFT_STATE];
8147
-
8148
- if (state) {
8149
- state.finalizing = true;
8150
- var draft = shallowCopy(state.draft, true);
8151
- state.finalizing = false;
8152
- return draft;
8153
- }
8154
-
8155
- return shallowCopy(base);
8156
- } // property descriptors are recycled to make sure we don't create a get and set closure per property,
8157
- // but share them all instead
8158
 
 
 
 
8159
 
8160
- var descriptors = {};
8161
-
8162
- function proxyProperty(draft, prop, enumerable) {
8163
- var desc = descriptors[prop];
8164
-
8165
- if (desc) {
8166
- desc.enumerable = enumerable;
8167
- } else {
8168
- descriptors[prop] = desc = {
8169
- configurable: true,
8170
- enumerable: enumerable,
8171
- get: function () {
8172
- return get$1(this[DRAFT_STATE], prop);
8173
- },
8174
- set: function (value) {
8175
- set$1(this[DRAFT_STATE], prop, value);
8176
- }
8177
- };
8178
- }
8179
-
8180
- Object.defineProperty(draft, prop, desc);
8181
- }
8182
-
8183
- function assertUnrevoked(state) {
8184
- if (state.revoked === true) { throw new Error("Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? " + JSON.stringify(latest(state))); }
8185
- } // This looks expensive, but only proxies are visited, and only objects without known changes are scanned.
8186
-
8187
- function markChangesSweep(drafts) {
8188
- // The natural order of drafts in the `scope` array is based on when they
8189
- // were accessed. By processing drafts in reverse natural order, we have a
8190
- // better chance of processing leaf nodes first. When a leaf node is known to
8191
- // have changed, we can avoid any traversal of its ancestor nodes.
8192
- for (var i = drafts.length - 1; i >= 0; i--) {
8193
- var state = drafts[i][DRAFT_STATE];
8194
-
8195
- if (!state.modified) {
8196
- switch (state.type) {
8197
- case ProxyType.ES5Array:
8198
- if (hasArrayChanges(state)) { markChangedES5(state); }
8199
- break;
8200
-
8201
- case ProxyType.ES5Object:
8202
- if (hasObjectChanges(state)) { markChangedES5(state); }
8203
- break;
8204
- }
8205
- }
8206
- }
8207
  }
8208
 
8209
- function markChangesRecursively(object) {
8210
- if (!object || typeof object !== "object") { return; }
8211
- var state = object[DRAFT_STATE];
8212
- if (!state) { return; }
8213
- var base = state.base,
8214
- draft = state.draft,
8215
- assigned = state.assigned,
8216
- type = state.type;
8217
-
8218
- if (type === ProxyType.ES5Object) {
8219
- // Look for added keys.
8220
- // TODO: looks quite duplicate to hasObjectChanges,
8221
- // probably there is a faster way to detect changes, as sweep + recurse seems to do some
8222
- // unnecessary work.
8223
- // also: probably we can store the information we detect here, to speed up tree finalization!
8224
- each(draft, function (key) {
8225
- if (key === DRAFT_STATE) { return; } // The `undefined` check is a fast path for pre-existing keys.
8226
-
8227
- if (base[key] === undefined && !has(base, key)) {
8228
- assigned[key] = true;
8229
- markChangedES5(state);
8230
- } else if (!assigned[key]) {
8231
- // Only untouched properties trigger recursion.
8232
- markChangesRecursively(draft[key]);
8233
- }
8234
- }); // Look for removed keys.
8235
-
8236
- each(base, function (key) {
8237
- // The `undefined` check is a fast path for pre-existing keys.
8238
- if (draft[key] === undefined && !has(draft, key)) {
8239
- assigned[key] = false;
8240
- markChangedES5(state);
8241
- }
8242
- });
8243
- } else if (type === ProxyType.ES5Array) {
8244
- if (hasArrayChanges(state)) {
8245
- markChangedES5(state);
8246
- assigned.length = true;
8247
- }
8248
 
8249
- if (draft.length < base.length) {
8250
- for (var i = draft.length; i < base.length; i++) { assigned[i] = false; }
8251
- } else {
8252
- for (var i = base.length; i < draft.length; i++) { assigned[i] = true; }
8253
- } // Minimum count is enough, the other parts has been processed.
8254
 
 
 
 
 
8255
 
8256
- var min = Math.min(draft.length, base.length);
 
8257
 
8258
- for (var i = 0; i < min; i++) {
8259
- // Only untouched indices trigger recursion.
8260
- if (assigned[i] === undefined) { markChangesRecursively(draft[i]); }
8261
  }
8262
- }
8263
- }
8264
-
8265
- function hasObjectChanges(state) {
8266
- var base = state.base,
8267
- draft = state.draft; // Search for added keys and changed keys. Start at the back, because
8268
- // non-numeric keys are ordered by time of definition on the object.
8269
-
8270
- var keys = Object.keys(draft);
8271
-
8272
- for (var i = keys.length - 1; i >= 0; i--) {
8273
- var key = keys[i];
8274
- var baseValue = base[key]; // The `undefined` check is a fast path for pre-existing keys.
8275
-
8276
- if (baseValue === undefined && !has(base, key)) {
8277
- return true;
8278
- } // Once a base key is deleted, future changes go undetected, because its
8279
- // descriptor is erased. This branch detects any missed changes.
8280
- else {
8281
- var value = draft[key];
8282
- var state_1 = value && value[DRAFT_STATE];
8283
-
8284
- if (state_1 ? state_1.base !== baseValue : !is(value, baseValue)) {
8285
- return true;
8286
- }
8287
- }
8288
- } // At this point, no keys were added or changed.
8289
- // Compare key count to determine if keys were deleted.
8290
-
8291
-
8292
- return keys.length !== Object.keys(base).length;
8293
- }
8294
-
8295
- function hasArrayChanges(state) {
8296
- var draft = state.draft;
8297
- if (draft.length !== state.base.length) { return true; } // See #116
8298
- // If we first shorten the length, our array interceptors will be removed.
8299
- // If after that new items are added, result in the same original length,
8300
- // those last items will have no intercepting property.
8301
- // So if there is no own descriptor on the last position, we know that items were removed and added
8302
- // N.B.: splice, unshift, etc only shift values around, but not prop descriptors, so we only have to check
8303
- // the last one
8304
-
8305
- var descriptor = Object.getOwnPropertyDescriptor(draft, draft.length - 1); // descriptor can be null, but only for newly created sparse arrays, eg. new Array(10)
8306
-
8307
- if (descriptor && !descriptor.get) { return true; } // For all other cases, we don't have to compare, as they would have been picked up by the index setters
8308
-
8309
- return false;
8310
- }
8311
-
8312
- var DraftMap = function (_super) {
8313
- if (!_super) {
8314
- /* istanbul ignore next */
8315
- throw new Error("Map is not polyfilled");
8316
- }
8317
-
8318
- __extends(DraftMap, _super); // Create class manually, cause #502
8319
 
 
8320
 
8321
- function DraftMap(target, parent) {
8322
- this[DRAFT_STATE] = {
8323
- type: ProxyType.Map,
8324
- parent: parent,
8325
- scope: parent ? parent.scope : ImmerScope.current,
8326
- modified: false,
8327
- finalized: false,
8328
- copy: undefined,
8329
- assigned: undefined,
8330
- base: target,
8331
- draft: this,
8332
- isManual: false,
8333
- revoked: false
8334
  };
8335
- return this;
8336
- }
8337
-
8338
- var p = DraftMap.prototype; // TODO: smaller build size if we create a util for Object.defineProperty
8339
-
8340
- Object.defineProperty(p, "size", {
8341
- get: function () {
8342
- return latest(this[DRAFT_STATE]).size;
8343
- },
8344
- enumerable: true,
8345
- configurable: true
8346
- });
8347
 
8348
- p.has = function (key) {
8349
- return latest(this[DRAFT_STATE]).has(key);
8350
- };
8351
-
8352
- p.set = function (key, value) {
8353
- var state = this[DRAFT_STATE];
8354
- assertUnrevoked(state);
8355
 
8356
- if (latest(state).get(key) !== value) {
8357
- prepareCopy$2(state);
8358
- state.scope.immer.markChanged(state);
8359
- state.assigned.set(key, true);
8360
- state.copy.set(key, value);
8361
- state.assigned.set(key, true);
8362
- }
8363
 
8364
- return this;
8365
- };
 
8366
 
8367
- p.delete = function (key) {
8368
- if (!this.has(key)) {
8369
- return false;
8370
- }
8371
 
8372
- var state = this[DRAFT_STATE];
8373
- assertUnrevoked(state);
8374
- prepareCopy$2(state);
8375
- state.scope.immer.markChanged(state);
8376
- state.assigned.set(key, false);
8377
- state.copy.delete(key);
8378
- return true;
8379
- };
8380
 
8381
- p.clear = function () {
8382
- var state = this[DRAFT_STATE];
8383
- assertUnrevoked(state);
8384
- prepareCopy$2(state);
8385
- state.scope.immer.markChanged(state);
8386
- state.assigned = new Map();
8387
- return state.copy.clear();
 
 
8388
  };
8389
 
8390
- p.forEach = function (cb, thisArg) {
8391
- var _this = this;
 
 
 
 
 
 
 
8392
 
8393
- var state = this[DRAFT_STATE];
8394
- latest(state).forEach(function (_value, key, _map) {
8395
- cb.call(thisArg, _this.get(key), key, _this);
8396
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8397
  };
8398
 
8399
- p.get = function (key) {
8400
- var state = this[DRAFT_STATE];
8401
- assertUnrevoked(state);
8402
- var value = latest(state).get(key);
8403
-
8404
- if (state.finalized || !isDraftable(value)) {
8405
- return value;
8406
- }
8407
 
8408
- if (value !== state.base.get(key)) {
8409
- return value; // either already drafted or reassigned
8410
- } // despite what it looks, this creates a draft only once, see above condition
8411
 
 
 
 
8412
 
8413
- var draft = state.scope.immer.createProxy(value, state);
8414
- prepareCopy$2(state);
8415
- state.copy.set(key, draft);
8416
- return draft;
8417
- };
8418
 
8419
- p.keys = function () {
8420
- return latest(this[DRAFT_STATE]).keys();
8421
- };
8422
 
8423
- p.values = function () {
8424
- var _a;
8425
 
 
8426
  var _this = this;
8427
 
8428
- var iterator = this.keys();
8429
- return _a = {}, _a[iteratorSymbol] = function () {
8430
- return _this.values();
8431
- }, _a.next = function () {
8432
- var r = iterator.next();
8433
- /* istanbul ignore next */
8434
-
8435
- if (r.done) { return r; }
8436
-
8437
- var value = _this.get(r.value);
8438
 
8439
- return {
8440
- done: false,
8441
- value: value
8442
- };
8443
- }, _a;
 
 
 
 
 
 
 
 
 
8444
  };
8445
 
8446
- p.entries = function () {
8447
- var _a;
8448
-
8449
- var _this = this;
8450
 
8451
- var iterator = this.keys();
8452
- return _a = {}, _a[iteratorSymbol] = function () {
8453
- return _this.entries();
8454
- }, _a.next = function () {
8455
- var r = iterator.next();
8456
- /* istanbul ignore next */
8457
 
8458
- if (r.done) { return r; }
 
 
8459
 
8460
- var value = _this.get(r.value);
 
8461
 
8462
- return {
8463
- done: false,
8464
- value: [r.value, value]
8465
- };
8466
- }, _a;
8467
- };
8468
 
8469
- p[iteratorSymbol] = function () {
8470
- return this.entries();
 
 
 
 
8471
  };
8472
 
8473
- return DraftMap;
8474
- }(Map);
8475
 
8476
- function proxyMap(target, parent) {
8477
- // @ts-ignore
8478
- return new DraftMap(target, parent);
8479
- }
8480
 
8481
- function prepareCopy$2(state) {
8482
- if (!state.copy) {
8483
- state.assigned = new Map();
8484
- state.copy = new Map(state.base);
8485
- }
8486
  }
8487
 
8488
- var DraftSet = function (_super) {
8489
- if (!_super) {
8490
- /* istanbul ignore next */
8491
- throw new Error("Set is not polyfilled");
8492
- }
8493
-
8494
- __extends(DraftSet, _super); // Create class manually, cause #502
8495
-
8496
-
8497
- function DraftSet(target, parent) {
8498
- this[DRAFT_STATE] = {
8499
- type: ProxyType.Set,
8500
- parent: parent,
8501
- scope: parent ? parent.scope : ImmerScope.current,
8502
- modified: false,
8503
- finalized: false,
8504
- copy: undefined,
8505
- base: target,
8506
- draft: this,
8507
- drafts: new Map(),
8508
- revoked: false,
8509
- isManual: false
8510
- };
8511
- return this;
8512
- }
8513
-
8514
- var p = DraftSet.prototype;
8515
- Object.defineProperty(p, "size", {
8516
- get: function () {
8517
- return latest(this[DRAFT_STATE]).size;
8518
- },
8519
- enumerable: true,
8520
- configurable: true
8521
- });
8522
-
8523
- p.has = function (value) {
8524
- var state = this[DRAFT_STATE];
8525
- assertUnrevoked(state); // bit of trickery here, to be able to recognize both the value, and the draft of its value
8526
-
8527
- if (!state.copy) {
8528
- return state.base.has(value);
8529
- }
8530
-
8531
- if (state.copy.has(value)) { return true; }
8532
- if (state.drafts.has(value) && state.copy.has(state.drafts.get(value))) { return true; }
8533
- return false;
8534
- };
8535
-
8536
- p.add = function (value) {
8537
- var state = this[DRAFT_STATE];
8538
- assertUnrevoked(state);
8539
-
8540
- if (state.copy) {
8541
- state.copy.add(value);
8542
- } else if (!state.base.has(value)) {
8543
- prepareCopy$3(state);
8544
- state.scope.immer.markChanged(state);
8545
- state.copy.add(value);
8546
- }
8547
-
8548
- return this;
8549
- };
8550
-
8551
- p.delete = function (value) {
8552
- if (!this.has(value)) {
8553
- return false;
8554
- }
8555
-
8556
- var state = this[DRAFT_STATE];
8557
- assertUnrevoked(state);
8558
- prepareCopy$3(state);
8559
- state.scope.immer.markChanged(state);
8560
- return state.copy.delete(value) || (state.drafts.has(value) ? state.copy.delete(state.drafts.get(value)) :
8561
- /* istanbul ignore next */
8562
- false);
8563
- };
8564
-
8565
- p.clear = function () {
8566
- var state = this[DRAFT_STATE];
8567
- assertUnrevoked(state);
8568
- prepareCopy$3(state);
8569
- state.scope.immer.markChanged(state);
8570
- return state.copy.clear();
8571
- };
8572
-
8573
- p.values = function () {
8574
- var state = this[DRAFT_STATE];
8575
- assertUnrevoked(state);
8576
- prepareCopy$3(state);
8577
- return state.copy.values();
8578
- };
8579
-
8580
- p.entries = function entries() {
8581
- var state = this[DRAFT_STATE];
8582
- assertUnrevoked(state);
8583
- prepareCopy$3(state);
8584
- return state.copy.entries();
8585
- };
8586
-
8587
- p.keys = function () {
8588
- return this.values();
8589
- };
8590
-
8591
- p[iteratorSymbol] = function () {
8592
- return this.values();
8593
- };
8594
-
8595
- p.forEach = function forEach(cb, thisArg) {
8596
- var iterator = this.values();
8597
- var result = iterator.next();
8598
-
8599
- while (!result.done) {
8600
- cb.call(thisArg, result.value, result.value, this);
8601
- result = iterator.next();
8602
- }
8603
- };
8604
-
8605
- return DraftSet;
8606
- }(Set);
8607
 
8608
- function proxySet(target, parent) {
8609
- // @ts-ignore
8610
- return new DraftSet(target, parent);
8611
  }
 
 
8612
 
8613
- function prepareCopy$3(state) {
8614
- if (!state.copy) {
8615
- // create drafts for all entries to preserve insertion order
8616
- state.copy = new Set();
8617
- state.base.forEach(function (value) {
8618
- if (isDraftable(value)) {
8619
- var draft = state.scope.immer.createProxy(value, state);
8620
- state.drafts.set(value, draft);
8621
- state.copy.add(draft);
8622
- } else {
8623
- state.copy.add(value);
8624
- }
8625
- });
8626
- }
8627
  }
 
 
8628
 
8629
- function generatePatches(state, basePath, patches, inversePatches) {
8630
- switch (state.type) {
8631
- case ProxyType.ProxyObject:
8632
- case ProxyType.ES5Object:
8633
- case ProxyType.Map:
8634
- return generatePatchesFromAssigned(state, basePath, patches, inversePatches);
8635
-
8636
- case ProxyType.ES5Array:
8637
- case ProxyType.ProxyArray:
8638
- return generateArrayPatches(state, basePath, patches, inversePatches);
8639
-
8640
- case ProxyType.Set:
8641
- return generateSetPatches(state, basePath, patches, inversePatches);
8642
- }
8643
  }
 
 
8644
 
8645
- function generateArrayPatches(state, basePath, patches, inversePatches) {
8646
- var _a, _b;
8647
-
8648
- var base = state.base,
8649
- assigned = state.assigned,
8650
- copy = state.copy;
8651
- /* istanbul ignore next */
8652
-
8653
- if (!copy) { die(); } // Reduce complexity by ensuring `base` is never longer.
8654
-
8655
- if (copy.length < base.length) {
8656
- _a = [copy, base], base = _a[0], copy = _a[1];
8657
- _b = [inversePatches, patches], patches = _b[0], inversePatches = _b[1];
8658
- }
8659
-
8660
- var delta = copy.length - base.length; // Find the first replaced index.
8661
-
8662
- var start = 0;
8663
-
8664
- while (base[start] === copy[start] && start < base.length) {
8665
- ++start;
8666
- } // Find the last replaced index. Search from the end to optimize splice patches.
8667
 
 
8668
 
8669
- var end = base.length;
8670
 
8671
- while (end > start && base[end - 1] === copy[end + delta - 1]) {
8672
- --end;
8673
- } // Process replaced indices.
8674
 
8675
 
8676
- for (var i = start; i < end; ++i) {
8677
- if (assigned[i] && copy[i] !== base[i]) {
8678
- var path = basePath.concat([i]);
8679
- patches.push({
8680
- op: "replace",
8681
- path: path,
8682
- value: copy[i]
8683
- });
8684
- inversePatches.push({
8685
- op: "replace",
8686
- path: path,
8687
- value: base[i]
8688
- });
8689
- }
8690
- }
8691
 
8692
- var replaceCount = patches.length; // Process added indices.
 
 
 
 
 
 
8693
 
8694
- for (var i = end + delta - 1; i >= end; --i) {
8695
- var path = basePath.concat([i]);
8696
- patches[replaceCount + i - end] = {
8697
- op: "add",
8698
- path: path,
8699
- value: copy[i]
8700
- };
8701
- inversePatches.push({
8702
- op: "remove",
8703
- path: path
8704
- });
8705
  }
8706
- } // This is used for both Map objects and normal objects.
8707
-
8708
-
8709
- function generatePatchesFromAssigned(state, basePath, patches, inversePatches) {
8710
- var base = state.base,
8711
- copy = state.copy;
8712
- each(state.assigned, function (key, assignedValue) {
8713
- var origValue = get(base, key);
8714
- var value = get(copy, key);
8715
- var op = !assignedValue ? "remove" : has(base, key) ? "replace" : "add";
8716
- if (origValue === value && op === "replace") { return; }
8717
- var path = basePath.concat(key);
8718
- patches.push(op === "remove" ? {
8719
- op: op,
8720
- path: path
8721
- } : {
8722
- op: op,
8723
- path: path,
8724
- value: value
8725
- });
8726
- inversePatches.push(op === "add" ? {
8727
- op: "remove",
8728
- path: path
8729
- } : op === "remove" ? {
8730
- op: "add",
8731
- path: path,
8732
- value: origValue
8733
- } : {
8734
- op: "replace",
8735
- path: path,
8736
- value: origValue
8737
- });
8738
- });
8739
- }
8740
-
8741
- function generateSetPatches(state, basePath, patches, inversePatches) {
8742
- var base = state.base,
8743
- copy = state.copy;
8744
- var i = 0;
8745
- base.forEach(function (value) {
8746
- if (!copy.has(value)) {
8747
- var path = basePath.concat([i]);
8748
- patches.push({
8749
- op: "remove",
8750
- path: path,
8751
- value: value
8752
- });
8753
- inversePatches.unshift({
8754
- op: "add",
8755
- path: path,
8756
- value: value
8757
- });
8758
- }
8759
-
8760
- i++;
8761
- });
8762
- i = 0;
8763
- copy.forEach(function (value) {
8764
- if (!base.has(value)) {
8765
- var path = basePath.concat([i]);
8766
- patches.push({
8767
- op: "add",
8768
- path: path,
8769
- value: value
8770
- });
8771
- inversePatches.unshift({
8772
- op: "remove",
8773
- path: path,
8774
- value: value
8775
- });
8776
- }
8777
 
8778
- i++;
8779
- });
8780
  }
8781
 
8782
- function applyPatches(draft, patches) {
8783
- patches.forEach(function (patch) {
8784
- var path = patch.path,
8785
- op = patch.op;
8786
- /* istanbul ignore next */
8787
-
8788
- if (!path.length) { die(); }
8789
- var base = draft;
8790
 
8791
- for (var i = 0; i < path.length - 1; i++) {
8792
- base = get(base, path[i]);
8793
- if (!base || typeof base !== "object") { throw new Error("Cannot apply patch, path doesn't resolve: " + path.join("/")); } // prettier-ignore
8794
- }
8795
 
8796
- var type = getArchtype(base);
8797
- var value = deepClonePatchValue(patch.value); // used to clone patch to ensure original patch is not modified, see #411
8798
 
8799
- var key = path[path.length - 1];
8800
 
8801
- switch (op) {
8802
- case "replace":
8803
- switch (type) {
8804
- case Archtype.Map:
8805
- return base.set(key, value);
8806
 
8807
- /* istanbul ignore next */
8808
 
8809
- case Archtype.Set:
8810
- throw new Error('Sets cannot have "replace" patches.');
8811
 
8812
- default:
8813
- // if value is an object, then it's assigned by reference
8814
- // in the following add or remove ops, the value field inside the patch will also be modifyed
8815
- // so we use value from the cloned patch
8816
- // @ts-ignore
8817
- return base[key] = value;
8818
- }
8819
 
8820
- case "add":
8821
- switch (type) {
8822
- case Archtype.Array:
8823
- return base.splice(key, 0, value);
8824
 
8825
- case Archtype.Map:
8826
- return base.set(key, value);
 
 
 
 
8827
 
8828
- case Archtype.Set:
8829
- return base.add(value);
 
8830
 
8831
- default:
8832
- return base[key] = value;
8833
- }
 
 
8834
 
8835
- case "remove":
8836
- switch (type) {
8837
- case Archtype.Array:
8838
- return base.splice(key, 1);
8839
 
8840
- case Archtype.Map:
8841
- return base.delete(key);
 
8842
 
8843
- case Archtype.Set:
8844
- return base.delete(patch.value);
 
8845
 
8846
- default:
8847
- return delete base[key];
8848
- }
8849
 
8850
- default:
8851
- throw new Error("Unsupported patch operation: " + op);
8852
  }
8853
- });
8854
- return draft;
8855
- }
8856
-
8857
- function deepClonePatchValue(obj) {
8858
- if (!obj || typeof obj !== "object") { return obj; }
8859
- if (Array.isArray(obj)) { return obj.map(deepClonePatchValue); }
8860
- if (isMap(obj)) { return new Map(Array.from(obj.entries()).map(function (_a) {
8861
- var k = _a[0],
8862
- v = _a[1];
8863
- return [k, deepClonePatchValue(v)];
8864
- })); }
8865
- if (isSet(obj)) { return new Set(Array.from(obj).map(deepClonePatchValue)); }
8866
- var cloned = Object.create(Object.getPrototypeOf(obj));
8867
-
8868
- for (var key in obj) { cloned[key] = deepClonePatchValue(obj[key]); }
8869
-
8870
- return cloned;
8871
- }
8872
 
8873
- /*! *****************************************************************************
8874
- Copyright (c) Microsoft Corporation. All rights reserved.
8875
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
8876
- this file except in compliance with the License. You may obtain a copy of the
8877
- License at http://www.apache.org/licenses/LICENSE-2.0
8878
-
8879
- THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8880
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
8881
- WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
8882
- MERCHANTABLITY OR NON-INFRINGEMENT.
8883
-
8884
- See the Apache Version 2.0 License for specific language governing permissions
8885
- and limitations under the License.
8886
- ***************************************************************************** */
8887
-
8888
- function __spreadArrays() {
8889
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
8890
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
8891
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
8892
- r[k] = a[j];
8893
- return r;
8894
- }
8895
 
8896
- /* istanbul ignore next */
 
 
 
 
 
8897
 
8898
- function verifyMinified() {}
 
 
8899
 
8900
- var configDefaults = {
8901
- useProxies: typeof Proxy !== "undefined" && typeof Proxy.revocable !== "undefined" && typeof Reflect !== "undefined",
8902
- autoFreeze: typeof process !== "undefined" ? "production" !== "production" :
8903
- /* istanbul ignore next */
8904
- verifyMinified.name === "verifyMinified",
8905
- onAssign: null,
8906
- onDelete: null,
8907
- onCopy: null
8908
  };
8909
 
8910
- var Immer =
8911
- /** @class */
8912
- function () {
8913
- function Immer(config) {
8914
- var _this = this;
8915
-
8916
- this.useProxies = false;
8917
- this.autoFreeze = false;
8918
- each(configDefaults, function (key, value) {
8919
- var _a, _b; // @ts-ignore
8920
-
8921
-
8922
- _this[key] = (_b = (_a = config) === null || _a === void 0 ? void 0 : _a[key], _b !== null && _b !== void 0 ? _b : value);
8923
- });
8924
- this.setUseProxies(this.useProxies);
8925
- this.produce = this.produce.bind(this);
8926
- this.produceWithPatches = this.produceWithPatches.bind(this);
8927
- }
8928
- /**
8929
- * The `produce` function takes a value and a "recipe function" (whose
8930
- * return value often depends on the base state). The recipe function is
8931
- * free to mutate its first argument however it wants. All mutations are
8932
- * only ever applied to a __copy__ of the base state.
8933
- *
8934
- * Pass only a function to create a "curried producer" which relieves you
8935
- * from passing the recipe function every time.
8936
- *
8937
- * Only plain objects and arrays are made mutable. All other objects are
8938
- * considered uncopyable.
8939
- *
8940
- * Note: This function is __bound__ to its `Immer` instance.
8941
- *
8942
- * @param {any} base - the initial state
8943
- * @param {Function} producer - function that receives a proxy of the base state as first argument and which can be freely modified
8944
- * @param {Function} patchListener - optional function that will be called with all the patches produced here
8945
- * @returns {any} a new state, or the initial state if nothing was modified
8946
- */
8947
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8948
 
8949
- Immer.prototype.produce = function (base, recipe, patchListener) {
8950
- var _this = this; // curried invocation
8951
 
8952
 
8953
- if (typeof base === "function" && typeof recipe !== "function") {
8954
- var defaultBase_1 = recipe;
8955
- recipe = base;
8956
- var self_1 = this;
8957
- return function curriedProduce(base) {
8958
- var arguments$1 = arguments;
8959
 
8960
- var _this = this;
8961
 
8962
- if (base === void 0) {
8963
- base = defaultBase_1;
8964
- }
8965
 
8966
- var args = [];
 
8967
 
8968
- for (var _i = 1; _i < arguments.length; _i++) {
8969
- args[_i - 1] = arguments$1[_i];
8970
- }
8971
 
8972
- return self_1.produce(base, function (draft) {
8973
- return recipe.call.apply(recipe, __spreadArrays([_this, draft], args));
8974
- }); // prettier-ignore
8975
- };
8976
- } // prettier-ignore
8977
 
 
 
 
8978
 
8979
- {
8980
- if (typeof recipe !== "function") {
8981
- throw new Error("The first or second argument to `produce` must be a function");
8982
- }
 
8983
 
8984
- if (patchListener !== undefined && typeof patchListener !== "function") {
8985
- throw new Error("The third argument to `produce` must be a function or undefined");
8986
- }
8987
- }
8988
- var result; // Only plain objects, arrays, and "immerable classes" are drafted.
8989
 
8990
- if (isDraftable(base)) {
8991
- var scope_1 = ImmerScope.enter(this);
8992
- var proxy = this.createProxy(base, undefined);
8993
- var hasError = true;
8994
 
8995
- try {
8996
- result = recipe(proxy);
8997
- hasError = false;
8998
- } finally {
8999
- // finally instead of catch + rethrow better preserves original stack
9000
- if (hasError) { scope_1.revoke(); }else { scope_1.leave(); }
9001
- }
 
 
 
 
 
 
 
 
 
 
9002
 
9003
- if (typeof Promise !== "undefined" && result instanceof Promise) {
9004
- return result.then(function (result) {
9005
- scope_1.usePatches(patchListener);
9006
- return processResult(_this, result, scope_1);
9007
- }, function (error) {
9008
- scope_1.revoke();
9009
- throw error;
9010
- });
9011
- }
9012
 
9013
- scope_1.usePatches(patchListener);
9014
- return processResult(this, result, scope_1);
9015
- } else {
9016
- result = recipe(base);
9017
- if (result === NOTHING) { return undefined; }
9018
- if (result === undefined) { result = base; }
9019
- maybeFreeze(this, result, true);
9020
- return result;
 
 
9021
  }
9022
- };
9023
-
9024
- Immer.prototype.produceWithPatches = function (arg1, arg2, arg3) {
9025
- var _this = this;
9026
-
9027
- if (typeof arg1 === "function") {
9028
- return function (state) {
9029
- var arguments$1 = arguments;
9030
-
9031
- var args = [];
9032
-
9033
- for (var _i = 1; _i < arguments.length; _i++) {
9034
- args[_i - 1] = arguments$1[_i];
9035
- }
9036
-
9037
- return _this.produceWithPatches(state, function (draft) {
9038
- return arg1.apply(void 0, __spreadArrays([draft], args));
9039
- });
9040
- };
9041
- } // non-curried form
9042
-
9043
- /* istanbul ignore next */
9044
-
9045
-
9046
- if (arg3) { die(); }
9047
- var patches, inversePatches;
9048
- var nextState = this.produce(arg1, arg2, function (p, ip) {
9049
- patches = p;
9050
- inversePatches = ip;
9051
- });
9052
- return [nextState, patches, inversePatches];
9053
- };
9054
-
9055
- Immer.prototype.createDraft = function (base) {
9056
- if (!isDraftable(base)) {
9057
- throw new Error("First argument to `createDraft` must be a plain object, an array, or an immerable object"); // prettier-ignore
9058
  }
9059
-
9060
- var scope = ImmerScope.enter(this);
9061
- var proxy = this.createProxy(base, undefined);
9062
- proxy[DRAFT_STATE].isManual = true;
9063
- scope.leave();
9064
- return proxy;
9065
- };
9066
-
9067
- Immer.prototype.finishDraft = function (draft, patchListener) {
9068
- var state = draft && draft[DRAFT_STATE];
9069
-
9070
- if (!state || !state.isManual) {
9071
- throw new Error("First argument to `finishDraft` must be a draft returned by `createDraft`"); // prettier-ignore
9072
  }
9073
-
9074
- if (state.finalized) {
9075
- throw new Error("The given draft is already finalized"); // prettier-ignore
9076
- }
9077
-
9078
- var scope = state.scope;
9079
- scope.usePatches(patchListener);
9080
- return processResult(this, undefined, scope);
9081
- };
9082
- /**
9083
- * Pass true to automatically freeze all copies created by Immer.
9084
- *
9085
- * By default, auto-freezing is disabled in production.
9086
- */
9087
-
9088
-
9089
- Immer.prototype.setAutoFreeze = function (value) {
9090
- this.autoFreeze = value;
9091
- };
9092
- /**
9093
- * Pass true to use the ES2015 `Proxy` class when creating drafts, which is
9094
- * always faster than using ES5 proxies.
9095
- *
9096
- * By default, feature detection is used, so calling this is rarely necessary.
9097
- */
9098
-
9099
-
9100
- Immer.prototype.setUseProxies = function (value) {
9101
- this.useProxies = value;
9102
- };
9103
-
9104
- Immer.prototype.applyPatches = function (base, patches) {
9105
- // If a patch replaces the entire state, take that replacement as base
9106
- // before applying patches
9107
- var i;
9108
-
9109
- for (i = patches.length - 1; i >= 0; i--) {
9110
- var patch = patches[i];
9111
-
9112
- if (patch.path.length === 0 && patch.op === "replace") {
9113
- base = patch.value;
9114
- break;
9115
- }
9116
- }
9117
-
9118
- if (isDraft(base)) {
9119
- // N.B: never hits if some patch a replacement, patches are never drafts
9120
- return applyPatches(base, patches);
9121
- } // Otherwise, produce a copy of the base state.
9122
-
9123
-
9124
- return this.produce(base, function (draft) {
9125
- return applyPatches(draft, patches.slice(i + 1));
9126
- });
9127
- };
9128
-
9129
- Immer.prototype.createProxy = function (value, parent) {
9130
- // precondition: createProxy should be guarded by isDraftable, so we know we can safely draft
9131
- var draft = isMap(value) ? proxyMap(value, parent) : isSet(value) ? proxySet(value, parent) : this.useProxies ? createProxy(value, parent) : createES5Proxy(value, parent);
9132
- var scope = parent ? parent.scope : ImmerScope.current;
9133
- scope.drafts.push(draft);
9134
- return draft;
9135
- };
9136
-
9137
- Immer.prototype.willFinalize = function (scope, thing, isReplaced) {
9138
- if (!this.useProxies) { willFinalizeES5(scope, thing, isReplaced); }
9139
- };
9140
-
9141
- Immer.prototype.markChanged = function (state) {
9142
- if (this.useProxies) {
9143
- markChanged(state);
9144
- } else {
9145
- markChangedES5(state);
9146
- }
9147
- };
9148
-
9149
- return Immer;
9150
- }();
9151
-
9152
- var immer = new Immer();
9153
- /**
9154
- * The `produce` function takes a value and a "recipe function" (whose
9155
- * return value often depends on the base state). The recipe function is
9156
- * free to mutate its first argument however it wants. All mutations are
9157
- * only ever applied to a __copy__ of the base state.
9158
- *
9159
- * Pass only a function to create a "curried producer" which relieves you
9160
- * from passing the recipe function every time.
9161
- *
9162
- * Only plain objects and arrays are made mutable. All other objects are
9163
- * considered uncopyable.
9164
- *
9165
- * Note: This function is __bound__ to its `Immer` instance.
9166
- *
9167
- * @param {any} base - the initial state
9168
- * @param {Function} producer - function that receives a proxy of the base state as first argument and which can be freely modified
9169
- * @param {Function} patchListener - optional function that will be called with all the patches produced here
9170
- * @returns {any} a new state, or the initial state if nothing was modified
9171
- */
9172
-
9173
- var produce = immer.produce;
9174
- /**
9175
- * Like `produce`, but `produceWithPatches` always returns a tuple
9176
- * [nextState, patches, inversePatches] (instead of just the next state)
9177
- */
9178
-
9179
- var produceWithPatches = immer.produceWithPatches.bind(immer);
9180
- /**
9181
- * Pass true to automatically freeze all copies created by Immer.
9182
- *
9183
- * By default, auto-freezing is disabled in production.
9184
- */
9185
-
9186
- var setAutoFreeze = immer.setAutoFreeze.bind(immer);
9187
- /**
9188
- * Pass true to use the ES2015 `Proxy` class when creating drafts, which is
9189
- * always faster than using ES5 proxies.
9190
- *
9191
- * By default, feature detection is used, so calling this is rarely necessary.
9192
- */
9193
-
9194
- var setUseProxies = immer.setUseProxies.bind(immer);
9195
- /**
9196
- * Apply an array of Immer patches to the first argument.
9197
- *
9198
- * This function is a producer, which means copy-on-write is in effect.
9199
- */
9200
-
9201
- var applyPatches$1 = immer.applyPatches.bind(immer);
9202
- /**
9203
- * Create an Immer draft from the given base state, which may be a draft itself.
9204
- * The draft can be modified until you finalize it with the `finishDraft` function.
9205
- */
9206
-
9207
- var createDraft = immer.createDraft.bind(immer);
9208
- /**
9209
- * Finalize an Immer draft from a `createDraft` call, returning the base state
9210
- * (if no changes were made) or a modified copy. The draft must *not* be
9211
- * mutated afterwards.
9212
- *
9213
- * Pass a function as the 2nd argument to generate Immer patches based on the
9214
- * changes that were made.
9215
- */
9216
-
9217
- var finishDraft = immer.finishDraft.bind(immer);
9218
- /**
9219
- * This function is actually a no-op, but can be used to cast an immutable type
9220
- * to an draft type and make TypeScript happy
9221
- *
9222
- * @param value
9223
- */
9224
-
9225
- function castDraft(value) {
9226
- return value;
9227
- }
9228
- /**
9229
- * This function is actually a no-op, but can be used to cast a mutable type
9230
- * to an immutable type and make TypeScript happy
9231
- * @param value
9232
- */
9233
-
9234
- function castImmutable(value) {
9235
- return value;
9236
- }
9237
-
9238
- /* harmony default export */ __webpack_exports__["a"] = (produce);
9239
-
9240
- //# sourceMappingURL=immer.module.js.map
9241
-
9242
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(168)))
9243
-
9244
- /***/ }),
9245
- /* 53 */
9246
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
9247
-
9248
- "use strict";
9249
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ownerDocument; });
9250
- function ownerDocument(node) {
9251
- return node && node.ownerDocument || document;
9252
- }
9253
-
9254
- /***/ }),
9255
- /* 54 */
9256
- /***/ (function(module, exports, __webpack_require__) {
9257
-
9258
- var freeGlobal = __webpack_require__(200);
9259
-
9260
- /** Detect free variable `self`. */
9261
- var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
9262
-
9263
- /** Used as a reference to the global object. */
9264
- var root = freeGlobal || freeSelf || Function('return this')();
9265
-
9266
- module.exports = root;
9267
-
9268
-
9269
- /***/ }),
9270
- /* 55 */
9271
- /***/ (function(module, exports, __webpack_require__) {
9272
-
9273
- // 7.1.13 ToObject(argument)
9274
- var defined = __webpack_require__(102);
9275
- module.exports = function (it) {
9276
- return Object(defined(it));
9277
- };
9278
-
9279
-
9280
- /***/ }),
9281
- /* 56 */
9282
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
9283
-
9284
- "use strict";
9285
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return captureException; });
9286
- /* unused harmony export captureMessage */
9287
- /* unused harmony export captureEvent */
9288
- /* unused harmony export configureScope */
9289
- /* unused harmony export addBreadcrumb */
9290
- /* unused harmony export setContext */
9291
- /* unused harmony export setExtras */
9292
- /* unused harmony export setTags */
9293
- /* unused harmony export setExtra */
9294
- /* unused harmony export setTag */
9295
- /* unused harmony export setUser */
9296
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return withScope; });
9297
- /* unused harmony export _callOnClient */
9298
- /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
9299
- /* harmony import */ var _sentry_hub__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(909);
9300
-
9301
-
9302
- /**
9303
- * This calls a function on the current hub.
9304
- * @param method function to call on hub.
9305
- * @param args to pass to function.
9306
- */
9307
- function callOnHub(method) {
9308
- var args = [];
9309
- for (var _i = 1; _i < arguments.length; _i++) {
9310
- args[_i - 1] = arguments[_i];
9311
- }
9312
- var hub = Object(_sentry_hub__WEBPACK_IMPORTED_MODULE_1__[/* getCurrentHub */ "a"])();
9313
- if (hub && hub[method]) {
9314
- // tslint:disable-next-line:no-unsafe-any
9315
- return hub[method].apply(hub, tslib__WEBPACK_IMPORTED_MODULE_0__[/* __spread */ "d"](args));
9316
- }
9317
- throw new Error("No hub defined or " + method + " was not found on the hub, please open a bug report.");
9318
- }
9319
- /**
9320
- * Captures an exception event and sends it to Sentry.
9321
- *
9322
- * @param exception An exception-like object.
9323
- * @returns The generated eventId.
9324
- */
9325
- function captureException(exception) {
9326
- var syntheticException;
9327
- try {
9328
- throw new Error('Sentry syntheticException');
9329
- }
9330
- catch (exception) {
9331
- syntheticException = exception;
9332
  }
9333
  return callOnHub('captureException', exception, {
 
9334
  originalException: exception,
9335
  syntheticException: syntheticException,
9336
  });
@@ -9342,7 +7717,7 @@ function captureException(exception) {
9342
  * @param level Define the level of the message.
9343
  * @returns The generated eventId.
9344
  */
9345
- function captureMessage(message, level) {
9346
  var syntheticException;
9347
  try {
9348
  throw new Error(message);
@@ -9350,10 +7725,11 @@ function captureMessage(message, level) {
9350
  catch (exception) {
9351
  syntheticException = exception;
9352
  }
9353
- return callOnHub('captureMessage', message, level, {
9354
- originalException: message,
9355
- syntheticException: syntheticException,
9356
- });
 
9357
  }
9358
  /**
9359
  * Captures a manually created event and sends it to Sentry.
@@ -9385,8 +7761,9 @@ function addBreadcrumb(breadcrumb) {
9385
  /**
9386
  * Sets context data with the given name.
9387
  * @param name of the context
9388
- * @param context Any kind of data. This data will be normailzed.
9389
  */
 
9390
  function setContext(name, context) {
9391
  callOnHub('setContext', name, context);
9392
  }
@@ -9407,7 +7784,7 @@ function setTags(tags) {
9407
  /**
9408
  * Set key:value that will be sent as extra data with the event.
9409
  * @param key String of extra
9410
- * @param extra Any kind of data. This data will be normailzed.
9411
  */
9412
  function setExtra(key, extra) {
9413
  callOnHub('setExtra', key, extra);
@@ -9454,182 +7831,79 @@ function withScope(callback) {
9454
  * @param args Arguments to pass to the client/fontend.
9455
  * @hidden
9456
  */
 
9457
  function _callOnClient(method) {
9458
  var args = [];
9459
  for (var _i = 1; _i < arguments.length; _i++) {
9460
  args[_i - 1] = arguments[_i];
9461
  }
9462
- callOnHub.apply(void 0, tslib__WEBPACK_IMPORTED_MODULE_0__[/* __spread */ "d"](['_invokeClient', method], args));
9463
- }
9464
- //# sourceMappingURL=index.js.map
9465
-
9466
- /***/ }),
9467
- /* 57 */
9468
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
9469
-
9470
- "use strict";
9471
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return isError; });
9472
- /* unused harmony export isErrorEvent */
9473
- /* unused harmony export isDOMError */
9474
- /* unused harmony export isDOMException */
9475
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return isString; });
9476
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return isPrimitive; });
9477
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return isPlainObject; });
9478
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return isEvent; });
9479
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isElement; });
9480
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return isRegExp; });
9481
- /* unused harmony export isThenable */
9482
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return isSyntheticEvent; });
9483
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return isInstanceOf; });
9484
- /* eslint-disable @typescript-eslint/no-explicit-any */
9485
- /* eslint-disable @typescript-eslint/explicit-module-boundary-types */
9486
- /**
9487
- * Checks whether given value's type is one of a few Error or Error-like
9488
- * {@link isError}.
9489
- *
9490
- * @param wat A value to be checked.
9491
- * @returns A boolean representing the result.
9492
- */
9493
- function isError(wat) {
9494
- switch (Object.prototype.toString.call(wat)) {
9495
- case '[object Error]':
9496
- return true;
9497
- case '[object Exception]':
9498
- return true;
9499
- case '[object DOMException]':
9500
- return true;
9501
- default:
9502
- return isInstanceOf(wat, Error);
9503
- }
9504
- }
9505
- /**
9506
- * Checks whether given value's type is ErrorEvent
9507
- * {@link isErrorEvent}.
9508
- *
9509
- * @param wat A value to be checked.
9510
- * @returns A boolean representing the result.
9511
- */
9512
- function isErrorEvent(wat) {
9513
- return Object.prototype.toString.call(wat) === '[object ErrorEvent]';
9514
- }
9515
- /**
9516
- * Checks whether given value's type is DOMError
9517
- * {@link isDOMError}.
9518
- *
9519
- * @param wat A value to be checked.
9520
- * @returns A boolean representing the result.
9521
- */
9522
- function isDOMError(wat) {
9523
- return Object.prototype.toString.call(wat) === '[object DOMError]';
9524
- }
9525
- /**
9526
- * Checks whether given value's type is DOMException
9527
- * {@link isDOMException}.
9528
- *
9529
- * @param wat A value to be checked.
9530
- * @returns A boolean representing the result.
9531
- */
9532
- function isDOMException(wat) {
9533
- return Object.prototype.toString.call(wat) === '[object DOMException]';
9534
- }
9535
- /**
9536
- * Checks whether given value's type is a string
9537
- * {@link isString}.
9538
- *
9539
- * @param wat A value to be checked.
9540
- * @returns A boolean representing the result.
9541
- */
9542
- function isString(wat) {
9543
- return Object.prototype.toString.call(wat) === '[object String]';
9544
- }
9545
- /**
9546
- * Checks whether given value's is a primitive (undefined, null, number, boolean, string)
9547
- * {@link isPrimitive}.
9548
- *
9549
- * @param wat A value to be checked.
9550
- * @returns A boolean representing the result.
9551
- */
9552
- function isPrimitive(wat) {
9553
- return wat === null || (typeof wat !== 'object' && typeof wat !== 'function');
9554
  }
9555
  /**
9556
- * Checks whether given value's type is an object literal
9557
- * {@link isPlainObject}.
9558
  *
9559
- * @param wat A value to be checked.
9560
- * @returns A boolean representing the result.
9561
- */
9562
- function isPlainObject(wat) {
9563
- return Object.prototype.toString.call(wat) === '[object Object]';
9564
- }
9565
- /**
9566
- * Checks whether given value's type is an Event instance
9567
- * {@link isEvent}.
9568
  *
9569
- * @param wat A value to be checked.
9570
- * @returns A boolean representing the result.
9571
- */
9572
- function isEvent(wat) {
9573
- return typeof Event !== 'undefined' && isInstanceOf(wat, Event);
9574
- }
9575
- /**
9576
- * Checks whether given value's type is an Element instance
9577
- * {@link isElement}.
9578
  *
9579
- * @param wat A value to be checked.
9580
- * @returns A boolean representing the result.
9581
- */
9582
- function isElement(wat) {
9583
- return typeof Element !== 'undefined' && isInstanceOf(wat, Element);
9584
- }
9585
- /**
9586
- * Checks whether given value's type is an regexp
9587
- * {@link isRegExp}.
9588
  *
9589
- * @param wat A value to be checked.
9590
- * @returns A boolean representing the result.
9591
- */
9592
- function isRegExp(wat) {
9593
- return Object.prototype.toString.call(wat) === '[object RegExp]';
9594
- }
9595
- /**
9596
- * Checks whether given value has a then function.
9597
- * @param wat A value to be checked.
9598
- */
9599
- function isThenable(wat) {
9600
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
9601
- return Boolean(wat && wat.then && typeof wat.then === 'function');
9602
- }
9603
- /**
9604
- * Checks whether given value's type is a SyntheticEvent
9605
- * {@link isSyntheticEvent}.
9606
  *
9607
- * @param wat A value to be checked.
9608
- * @returns A boolean representing the result.
9609
  */
9610
- function isSyntheticEvent(wat) {
9611
- return isPlainObject(wat) && 'nativeEvent' in wat && 'preventDefault' in wat && 'stopPropagation' in wat;
9612
  }
9613
- /**
9614
- * Checks whether given value's type is an instance of provided constructor.
9615
- * {@link isInstanceOf}.
9616
- *
9617
- * @param wat A value to be checked.
9618
- * @param base A constructor to be used in a check.
9619
- * @returns A boolean representing the result.
9620
- */
9621
- function isInstanceOf(wat, base) {
9622
- try {
9623
- return wat instanceof base;
 
9624
  }
9625
- catch (_e) {
9626
- return false;
 
 
 
9627
  }
 
 
 
 
 
9628
  }
9629
- //# sourceMappingURL=is.js.map
 
 
9630
 
9631
  /***/ }),
9632
- /* 58 */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9633
  /***/ (function(module, exports) {
9634
 
9635
  /**
@@ -9664,7 +7938,7 @@ module.exports = isObjectLike;
9664
 
9665
 
9666
  /***/ }),
9667
- /* 59 */
9668
  /***/ (function(module, exports) {
9669
 
9670
  /**
@@ -9696,15 +7970,35 @@ module.exports = isArray;
9696
 
9697
 
9698
  /***/ }),
9699
- /* 60 */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9700
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9701
 
9702
  "use strict";
9703
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useTheme; });
9704
- /* harmony import */ var _material_ui_styles__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(519);
9705
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
9706
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
9707
- /* harmony import */ var _defaultTheme__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(185);
9708
 
9709
 
9710
 
@@ -9717,535 +8011,924 @@ function useTheme() {
9717
  }
9718
 
9719
  /***/ }),
9720
- /* 61 */
9721
- /***/ (function(module, exports, __webpack_require__) {
9722
-
9723
- /* WEBPACK VAR INJECTION */(function(global) {var check = function (it) {
9724
- return it && it.Math == Math && it;
9725
- };
9726
 
9727
- // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
9728
- module.exports =
9729
- // eslint-disable-next-line no-undef
9730
- check(typeof globalThis == 'object' && globalThis) ||
9731
- check(typeof window == 'object' && window) ||
9732
- check(typeof self == 'object' && self) ||
9733
- check(typeof global == 'object' && global) ||
9734
- // eslint-disable-next-line no-new-func
9735
- Function('return this')();
9736
 
9737
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(49)))
9738
 
9739
- /***/ }),
9740
- /* 62 */
9741
- /***/ (function(module, exports) {
9742
 
9743
- module.exports = function (it) {
9744
- if (typeof it != 'function') throw TypeError(it + ' is not a function!');
9745
- return it;
9746
- };
9747
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9748
 
9749
  /***/ }),
9750
- /* 63 */
9751
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9752
 
9753
  "use strict";
9754
- var isProduction = "production" === 'production';
9755
- var prefix = 'Invariant failed';
9756
- function invariant(condition, message) {
9757
- if (condition) {
9758
- return;
9759
- }
9760
- if (isProduction) {
9761
- throw new Error(prefix);
9762
- }
9763
- throw new Error(prefix + ": " + (message || ''));
9764
- }
9765
 
9766
- /* harmony default export */ __webpack_exports__["a"] = (invariant);
 
9767
 
 
 
9768
 
9769
- /***/ }),
9770
- /* 64 */
9771
- /***/ (function(module, exports) {
 
 
 
 
 
 
 
9772
 
9773
- module.exports = function (exec) {
9774
  try {
9775
- return !!exec();
9776
- } catch (error) {
9777
- return true;
 
 
 
 
 
 
 
 
 
 
 
9778
  }
9779
- };
9780
 
 
 
 
 
 
 
 
 
 
 
 
 
9781
 
9782
  /***/ }),
9783
- /* 65 */
9784
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9785
 
9786
  "use strict";
9787
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ConfirmDialog; });
9788
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
9789
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
9790
- /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(222);
9791
- /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(223);
9792
- /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(165);
9793
- /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(166);
9794
- /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(224);
9795
- /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(109);
9796
- /* harmony import */ var translate__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(1);
9797
- /* harmony import */ var _confirmDialog_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(1235);
9798
- /* harmony import */ var _confirmDialog_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_confirmDialog_scss__WEBPACK_IMPORTED_MODULE_8__);
9799
- function _extends() { _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; }; return _extends.apply(this, arguments); }
 
9800
 
 
 
 
9801
 
 
 
 
9802
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9803
 
9804
 
9805
- var defaultButtons = [{
9806
- value: "cancel",
9807
- text: Object(translate__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])("modal.cancel")
9808
- }, {
9809
- value: "confirm",
9810
- text: Object(translate__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])("common.confirm")
9811
- }];
9812
- function ConfirmDialog(_ref) {
9813
- var onClose = _ref.onClose,
9814
- _ref$icon = _ref.icon,
9815
- icon = _ref$icon === void 0 ? null : _ref$icon,
9816
- _ref$open = _ref.open,
9817
- open = _ref$open === void 0 ? false : _ref$open,
9818
- _ref$title = _ref.title,
9819
- title = _ref$title === void 0 ? "Confirm" : _ref$title,
9820
- _ref$children = _ref.children,
9821
- children = _ref$children === void 0 ? null : _ref$children,
9822
- _ref$buttons = _ref.buttons,
9823
- buttons = _ref$buttons === void 0 ? null : _ref$buttons,
9824
- _ref$maxWidth = _ref.maxWidth,
9825
- maxWidth = _ref$maxWidth === void 0 ? "xs" : _ref$maxWidth,
9826
- _ref$fullWidth = _ref.fullWidth,
9827
- fullWidth = _ref$fullWidth === void 0 ? true : _ref$fullWidth,
9828
- className = _ref.className,
9829
- _ref$testId = _ref.testId,
9830
- testId = _ref$testId === void 0 ? null : _ref$testId;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9831
 
9832
- var handleClose = function handleClose(status) {
9833
- onClose(status);
9834
- };
 
 
 
 
 
9835
 
9836
- if (!buttons) buttons = defaultButtons;
9837
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], {
9838
- open: open,
9839
- onClose: handleClose,
9840
- maxWidth: maxWidth,
9841
- fullWidth: fullWidth,
9842
- "aria-labelledby": "alert-dialog-title",
9843
- "aria-describedby": "alert-dialog-description",
9844
- className: className,
9845
- "data-testid": testId ? "dialog:".concat(testId) : null
9846
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"], {
9847
- id: "alert-dialog-title"
9848
- }, icon, title), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"], {
9849
- id: "alert-dialog-description",
9850
- component: "div"
9851
- }, children)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"], null, buttons.map(function (button, key) {
9852
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"], _extends({
9853
- onClick: function onClick() {
9854
- return handleClose(button.value);
9855
- },
9856
- color: "primary",
9857
- key: key,
9858
- variant: button.variant,
9859
- "data-testid": testId ? "dialog:".concat(testId, ":button:").concat(button.value) : null
9860
- }, button.props), button.text);
9861
- })));
9862
- }
9863
 
9864
  /***/ }),
9865
- /* 66 */
9866
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9867
 
9868
  "use strict";
9869
- /* unused harmony export easing */
9870
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return duration; });
9871
- /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);
9872
 
9873
- // Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves
9874
- // to learn the context in which each easing should be used.
9875
- var easing = {
9876
- // This is the most common easing curve.
9877
- easeInOut: 'cubic-bezier(0.4, 0, 0.2, 1)',
9878
- // Objects enter the screen at full velocity from off-screen and
9879
- // slowly decelerate to a resting point.
9880
- easeOut: 'cubic-bezier(0.0, 0, 0.2, 1)',
9881
- // Objects leave the screen at full velocity. They do not decelerate when off-screen.
9882
- easeIn: 'cubic-bezier(0.4, 0, 1, 1)',
9883
- // The sharp curve is used by objects that may return to the screen at any time.
9884
- sharp: 'cubic-bezier(0.4, 0, 0.6, 1)'
9885
- }; // Follow https://material.io/guidelines/motion/duration-easing.html#duration-easing-common-durations
9886
- // to learn when use what timing
9887
 
9888
- var duration = {
9889
- shortest: 150,
9890
- shorter: 200,
9891
- short: 250,
9892
- // most basic recommended timing
9893
- standard: 300,
9894
- // this is to be used in complex animations
9895
- complex: 375,
9896
- // recommended when something is entering screen
9897
- enteringScreen: 225,
9898
- // recommended when something is leaving screen
9899
- leavingScreen: 195
9900
- };
9901
 
9902
- function formatMs(milliseconds) {
9903
- return "".concat(Math.round(milliseconds), "ms");
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9904
  }
9905
- /**
9906
- * @param {string|Array} props
9907
- * @param {object} param
9908
- * @param {string} param.prop
9909
- * @param {number} param.duration
9910
- * @param {string} param.easing
9911
- * @param {number} param.delay
9912
- */
9913
 
 
9914
 
9915
- /* harmony default export */ __webpack_exports__["a"] = ({
9916
- easing: easing,
9917
- duration: duration,
9918
- create: function create() {
9919
- var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['all'];
9920
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
9921
 
9922
- var _options$duration = options.duration,
9923
- durationOption = _options$duration === void 0 ? duration.standard : _options$duration,
9924
- _options$easing = options.easing,
9925
- easingOption = _options$easing === void 0 ? easing.easeInOut : _options$easing,
9926
- _options$delay = options.delay,
9927
- delay = _options$delay === void 0 ? 0 : _options$delay,
9928
- other = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(options, ["duration", "easing", "delay"]);
9929
 
9930
- if (false) { var isNumber, isString; }
 
 
 
 
 
 
 
 
 
9931
 
9932
- return (Array.isArray(props) ? props : [props]).map(function (animatedProp) {
9933
- return "".concat(animatedProp, " ").concat(typeof durationOption === 'string' ? durationOption : formatMs(durationOption), " ").concat(easingOption, " ").concat(typeof delay === 'string' ? delay : formatMs(delay));
9934
- }).join(',');
9935
- },
9936
- getAutoHeightDuration: function getAutoHeightDuration(height) {
9937
- if (!height) {
9938
- return 0;
9939
- }
9940
 
9941
- var constant = height / 36; // https://www.wolframalpha.com/input/?i=(4+%2B+15+*+(x+%2F+36+)+**+0.25+%2B+(x+%2F+36)+%2F+5)+*+10
9942
 
9943
- return Math.round((4 + 15 * Math.pow(constant, 0.25) + constant / 5) * 10);
9944
- }
9945
- });
 
9946
 
9947
- /***/ }),
9948
- /* 67 */
9949
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
9950
 
9951
- var global = __webpack_require__(61);
9952
- var shared = __webpack_require__(417);
9953
- var has = __webpack_require__(73);
9954
- var uid = __webpack_require__(346);
9955
- var NATIVE_SYMBOL = __webpack_require__(423);
9956
- var USE_SYMBOL_AS_UID = __webpack_require__(566);
9957
 
9958
- var WellKnownSymbolsStore = shared('wks');
9959
- var Symbol = global.Symbol;
9960
- var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;
9961
 
9962
- module.exports = function (name) {
9963
- if (!has(WellKnownSymbolsStore, name)) {
9964
- if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];
9965
- else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
9966
- } return WellKnownSymbolsStore[name];
9967
  };
9968
 
 
 
 
 
 
 
 
 
9969
 
9970
- /***/ }),
9971
- /* 68 */
9972
- /***/ (function(module, exports, __webpack_require__) {
9973
-
9974
- var dP = __webpack_require__(46);
9975
- var createDesc = __webpack_require__(143);
9976
- module.exports = __webpack_require__(45) ? function (object, key, value) {
9977
- return dP.f(object, key, createDesc(1, value));
9978
- } : function (object, key, value) {
9979
- object[key] = value;
9980
- return object;
9981
  };
9982
 
 
 
 
 
 
 
 
 
 
 
9983
 
9984
- /***/ }),
9985
- /* 69 */
9986
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
9987
 
9988
- var global = __webpack_require__(25);
9989
- var hide = __webpack_require__(68);
9990
- var has = __webpack_require__(74);
9991
- var SRC = __webpack_require__(144)('src');
9992
- var TO_STRING = 'toString';
9993
- var $toString = Function[TO_STRING];
9994
- var TPL = ('' + $toString).split(TO_STRING);
9995
 
9996
- __webpack_require__(89).inspectSource = function (it) {
9997
- return $toString.call(it);
9998
  };
9999
 
10000
- (module.exports = function (O, key, val, safe) {
10001
- var isFunction = typeof val == 'function';
10002
- if (isFunction) has(val, 'name') || hide(val, 'name', key);
10003
- if (O[key] === val) return;
10004
- if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
10005
- if (O === global) {
10006
- O[key] = val;
10007
- } else if (!safe) {
10008
- delete O[key];
10009
- hide(O, key, val);
10010
- } else if (O[key]) {
10011
- O[key] = val;
10012
- } else {
10013
- hide(O, key, val);
 
 
 
 
 
 
 
10014
  }
10015
- // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
10016
- })(Function.prototype, TO_STRING, function toString() {
10017
- return typeof this == 'function' && this[SRC] || $toString.call(this);
10018
- });
10019
 
 
 
 
10020
 
10021
- /***/ }),
10022
- /* 70 */
10023
- /***/ (function(module, exports, __webpack_require__) {
10024
 
10025
- var $export = __webpack_require__(7);
10026
- var fails = __webpack_require__(28);
10027
- var defined = __webpack_require__(102);
10028
- var quot = /"/g;
10029
- // B.2.3.2.1 CreateHTML(string, tag, attribute, value)
10030
- var createHTML = function (string, tag, attribute, value) {
10031
- var S = String(defined(string));
10032
- var p1 = '<' + tag;
10033
- if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '&quot;') + '"';
10034
- return p1 + '>' + S + '</' + tag + '>';
10035
- };
10036
- module.exports = function (NAME, exec) {
10037
- var O = {};
10038
- O[NAME] = exec(createHTML);
10039
- $export($export.P + $export.F * fails(function () {
10040
- var test = ''[NAME]('"');
10041
- return test !== test.toLowerCase() || test.split('"').length > 3;
10042
- }), 'String', O);
10043
- };
10044
 
 
 
10045
 
10046
- /***/ }),
10047
- /* 71 */
10048
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
10049
 
10050
- "use strict";
10051
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getCookie; });
10052
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return setCookie; });
10053
- /**
10054
- * Get cookie util
10055
- *
10056
- * @param {string} cname
10057
- */
10058
- // Get cookie
10059
- function getCookie(name) {
10060
- var value = "; ".concat(document.cookie);
10061
- var parts = value.split("; ".concat(name, "="));
10062
- if (parts.length === 2) return parts.pop().split(";").shift();
10063
- return false;
10064
- } // Set cookie
10065
-
10066
- function setCookie(cname, value) {
10067
- document.cookie = cname + "=" + value;
10068
- }
10069
-
10070
- /***/ }),
10071
- /* 72 */
10072
- /***/ (function(module, exports, __webpack_require__) {
10073
-
10074
- var Symbol = __webpack_require__(122),
10075
- getRawTag = __webpack_require__(305),
10076
- objectToString = __webpack_require__(306);
10077
-
10078
- /** `Object#toString` result references. */
10079
- var nullTag = '[object Null]',
10080
- undefinedTag = '[object Undefined]';
10081
-
10082
- /** Built-in value references. */
10083
- var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
10084
 
10085
- /**
10086
- * The base implementation of `getTag` without fallbacks for buggy environments.
10087
- *
10088
- * @private
10089
- * @param {*} value The value to query.
10090
- * @returns {string} Returns the `toStringTag`.
10091
- */
10092
- function baseGetTag(value) {
10093
- if (value == null) {
10094
- return value === undefined ? undefinedTag : nullTag;
10095
  }
10096
- return (symToStringTag && symToStringTag in Object(value))
10097
- ? getRawTag(value)
10098
- : objectToString(value);
10099
  }
10100
 
10101
- module.exports = baseGetTag;
10102
-
10103
-
10104
- /***/ }),
10105
- /* 73 */
10106
- /***/ (function(module, exports) {
10107
-
10108
- var hasOwnProperty = {}.hasOwnProperty;
10109
-
10110
- module.exports = function (it, key) {
10111
- return hasOwnProperty.call(it, key);
10112
- };
10113
-
10114
-
10115
- /***/ }),
10116
- /* 74 */
10117
- /***/ (function(module, exports) {
10118
-
10119
- var hasOwnProperty = {}.hasOwnProperty;
10120
- module.exports = function (it, key) {
10121
- return hasOwnProperty.call(it, key);
10122
- };
10123
-
10124
-
10125
- /***/ }),
10126
- /* 75 */
10127
- /***/ (function(module, exports, __webpack_require__) {
10128
-
10129
- // to indexed object, toObject with fallback for non-array-like ES3 strings
10130
- var IObject = __webpack_require__(213);
10131
- var defined = __webpack_require__(102);
10132
- module.exports = function (it) {
10133
- return IObject(defined(it));
10134
- };
10135
 
10136
 
10137
  /***/ }),
10138
- /* 76 */
10139
- /***/ (function(module, exports, __webpack_require__) {
10140
-
10141
- var pIE = __webpack_require__(214);
10142
- var createDesc = __webpack_require__(143);
10143
- var toIObject = __webpack_require__(75);
10144
- var toPrimitive = __webpack_require__(101);
10145
- var has = __webpack_require__(74);
10146
- var IE8_DOM_DEFINE = __webpack_require__(456);
10147
- var gOPD = Object.getOwnPropertyDescriptor;
10148
-
10149
- exports.f = __webpack_require__(45) ? gOPD : function getOwnPropertyDescriptor(O, P) {
10150
- O = toIObject(O);
10151
- P = toPrimitive(P, true);
10152
- if (IE8_DOM_DEFINE) try {
10153
- return gOPD(O, P);
10154
- } catch (e) { /* empty */ }
10155
- if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
10156
- };
10157
-
10158
 
10159
- /***/ }),
10160
- /* 77 */
10161
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
10162
 
10163
- // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
10164
- var has = __webpack_require__(74);
10165
- var toObject = __webpack_require__(55);
10166
- var IE_PROTO = __webpack_require__(360)('IE_PROTO');
10167
- var ObjectProto = Object.prototype;
10168
 
10169
- module.exports = Object.getPrototypeOf || function (O) {
10170
- O = toObject(O);
10171
- if (has(O, IE_PROTO)) return O[IE_PROTO];
10172
- if (typeof O.constructor == 'function' && O instanceof O.constructor) {
10173
- return O.constructor.prototype;
10174
- } return O instanceof Object ? ObjectProto : null;
10175
- };
10176
 
10177
 
10178
- /***/ }),
10179
- /* 78 */
10180
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
10181
 
10182
- "use strict";
10183
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return formControlState; });
10184
- function formControlState(_ref) {
10185
- var props = _ref.props,
10186
- states = _ref.states,
10187
- muiFormControl = _ref.muiFormControl;
10188
- return states.reduce(function (acc, state) {
10189
- acc[state] = props[state];
10190
 
10191
- if (muiFormControl) {
10192
- if (typeof props[state] === 'undefined') {
10193
- acc[state] = muiFormControl[state];
10194
- }
 
 
 
 
 
 
 
10195
  }
10196
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10197
  return acc;
10198
- }, {});
10199
  }
10200
-
10201
- /***/ }),
10202
- /* 79 */
10203
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
10204
-
10205
- "use strict";
10206
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useFormControl; });
10207
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
10208
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
10209
- /* harmony import */ var _FormControlContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(108);
10210
-
10211
-
10212
- function useFormControl() {
10213
- return react__WEBPACK_IMPORTED_MODULE_0__["useContext"](_FormControlContext__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10214
  }
 
 
10215
 
10216
  /***/ }),
10217
- /* 80 */
10218
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
10219
-
10220
- "use strict";
10221
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return KnowledgeBaseLink; });
10222
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
10223
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
10224
- /* harmony import */ var translate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1);
10225
- /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3);
10226
- /* harmony import */ var _knowledgeBaseLink_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(1257);
10227
- /* harmony import */ var _knowledgeBaseLink_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_knowledgeBaseLink_scss__WEBPACK_IMPORTED_MODULE_3__);
10228
-
10229
-
10230
 
 
 
 
 
 
 
 
10231
 
10232
- function KnowledgeBaseLink(_ref) {
10233
- var articleId = _ref.articleId,
10234
- setting = _ref.setting,
10235
- _ref$size = _ref.size,
10236
- size = _ref$size === void 0 ? "medium" : _ref$size;
10237
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("a", {
10238
- href: "https://community.buttonizer.pro/knowledgebase/".concat(articleId),
10239
- target: "_blank",
10240
- className: Object(clsx__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])("knowledgebase-link", size),
10241
- dangerouslySetInnerHTML: {
10242
- __html: Object(translate__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])("utils.knowledge_link", setting)
10243
- }
10244
- });
10245
- }
10246
 
10247
  /***/ }),
10248
- /* 81 */
10249
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
10250
 
10251
  "use strict";
@@ -10261,19 +8944,19 @@ var react = __webpack_require__(0);
10261
  var react_default = /*#__PURE__*/__webpack_require__.n(react);
10262
 
10263
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
10264
- var objectWithoutProperties = __webpack_require__(6);
10265
 
10266
  // EXTERNAL MODULE: ./node_modules/prop-types/index.js
10267
- var prop_types = __webpack_require__(5);
10268
 
10269
  // EXTERNAL MODULE: ./node_modules/clsx/dist/clsx.m.js
10270
- var clsx_m = __webpack_require__(3);
10271
 
10272
  // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/styles/withStyles.js + 1 modules
10273
- var withStyles = __webpack_require__(8);
10274
 
10275
  // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/utils/capitalize.js
10276
- var capitalize = __webpack_require__(10);
10277
 
10278
  // CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/SvgIcon/SvgIcon.js
10279
 
@@ -10340,7 +9023,7 @@ var styles = function styles(theme) {
10340
  }
10341
  };
10342
  };
10343
- var SvgIcon_SvgIcon = react["forwardRef"](function SvgIcon(props, ref) {
10344
  var children = props.children,
10345
  classes = props.classes,
10346
  className = props.className,
@@ -10361,7 +9044,7 @@ var SvgIcon_SvgIcon = react["forwardRef"](function SvgIcon(props, ref) {
10361
  focusable: "false",
10362
  viewBox: viewBox,
10363
  color: htmlColor,
10364
- "aria-hidden": titleAccess ? undefined : 'true',
10365
  role: titleAccess ? 'img' : undefined,
10366
  ref: ref
10367
  }, other), children, titleAccess ? /*#__PURE__*/react["createElement"]("title", null, titleAccess) : null);
@@ -10380,765 +9063,1095 @@ SvgIcon_SvgIcon.muiName = 'SvgIcon';
10380
  */
10381
 
10382
  function createSvgIcon(path, displayName) {
10383
- var Component = react_default.a.memo(react_default.a.forwardRef(function (props, ref) {
10384
  return /*#__PURE__*/react_default.a.createElement(esm_SvgIcon_SvgIcon, Object(esm_extends["a" /* default */])({
10385
  ref: ref
10386
  }, props), path);
10387
- }));
10388
 
10389
  if (false) {}
10390
 
10391
  Component.muiName = esm_SvgIcon_SvgIcon.muiName;
10392
- return Component;
10393
- }
10394
-
10395
- /***/ }),
10396
- /* 82 */
10397
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
10398
-
10399
- "use strict";
10400
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return reflow; });
10401
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getTransitionProps; });
10402
- var reflow = function reflow(node) {
10403
- return node.scrollTop;
10404
- };
10405
- function getTransitionProps(props, options) {
10406
- var timeout = props.timeout,
10407
- _props$style = props.style,
10408
- style = _props$style === void 0 ? {} : _props$style;
10409
- return {
10410
- duration: style.transitionDuration || typeof timeout === 'number' ? timeout : timeout[options.mode] || 0,
10411
- delay: style.transitionDelay
10412
- };
10413
  }
10414
 
10415
  /***/ }),
10416
- /* 83 */
10417
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
10418
 
10419
  "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
10420
 
10421
- // EXPORTS
10422
- __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ createBrowserHistory; });
10423
- __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ createHashHistory; });
10424
- __webpack_require__.d(__webpack_exports__, "d", function() { return /* binding */ createMemoryHistory; });
10425
- __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ createLocation; });
10426
- __webpack_require__.d(__webpack_exports__, "f", function() { return /* binding */ locationsAreEqual; });
10427
- __webpack_require__.d(__webpack_exports__, "e", function() { return /* binding */ createPath; });
10428
 
10429
- // UNUSED EXPORTS: parsePath
10430
 
10431
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
10432
- var esm_extends = __webpack_require__(2);
10433
 
10434
- // CONCATENATED MODULE: ./node_modules/resolve-pathname/esm/resolve-pathname.js
10435
- function isAbsolute(pathname) {
10436
- return pathname.charAt(0) === '/';
10437
- }
10438
 
10439
- // About 1.5x faster than the two-arg version of Array#splice()
10440
- function spliceOne(list, index) {
10441
- for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1) {
10442
- list[i] = list[k];
10443
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10444
 
10445
- list.pop();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10446
  }
10447
 
10448
- // This implementation is based heavily on node's url.parse
10449
- function resolvePathname(to, from) {
10450
- if (from === undefined) from = '';
10451
 
10452
- var toParts = (to && to.split('/')) || [];
10453
- var fromParts = (from && from.split('/')) || [];
 
 
10454
 
10455
- var isToAbs = to && isAbsolute(to);
10456
- var isFromAbs = from && isAbsolute(from);
10457
- var mustEndAbs = isToAbs || isFromAbs;
 
 
 
 
 
 
 
 
 
 
 
10458
 
10459
- if (to && isAbsolute(to)) {
10460
- // to is absolute
10461
- fromParts = toParts;
10462
- } else if (toParts.length) {
10463
- // to is relative, drop the filename
10464
- fromParts.pop();
10465
- fromParts = fromParts.concat(toParts);
10466
- }
 
 
 
 
 
10467
 
10468
- if (!fromParts.length) return '/';
 
 
 
 
 
 
 
 
 
 
10469
 
10470
- var hasTrailingSlash;
10471
- if (fromParts.length) {
10472
- var last = fromParts[fromParts.length - 1];
10473
- hasTrailingSlash = last === '.' || last === '..' || last === '';
10474
- } else {
10475
- hasTrailingSlash = false;
10476
- }
10477
 
10478
- var up = 0;
10479
- for (var i = fromParts.length; i >= 0; i--) {
10480
- var part = fromParts[i];
 
 
 
10481
 
10482
- if (part === '.') {
10483
- spliceOne(fromParts, i);
10484
- } else if (part === '..') {
10485
- spliceOne(fromParts, i);
10486
- up++;
10487
- } else if (up) {
10488
- spliceOne(fromParts, i);
10489
- up--;
10490
- }
10491
- }
10492
 
10493
- if (!mustEndAbs) for (; up--; up) fromParts.unshift('..');
10494
 
10495
- if (
10496
- mustEndAbs &&
10497
- fromParts[0] !== '' &&
10498
- (!fromParts[0] || !isAbsolute(fromParts[0]))
10499
- )
10500
- fromParts.unshift('');
 
 
10501
 
10502
- var result = fromParts.join('/');
10503
 
10504
- if (hasTrailingSlash && result.substr(-1) !== '/') result += '/';
 
 
10505
 
10506
- return result;
10507
- }
 
10508
 
10509
- /* harmony default export */ var resolve_pathname = (resolvePathname);
 
 
 
 
 
10510
 
10511
- // CONCATENATED MODULE: ./node_modules/value-equal/esm/value-equal.js
10512
- function value_equal_valueOf(obj) {
10513
- return obj.valueOf ? obj.valueOf() : Object.prototype.valueOf.call(obj);
10514
- }
10515
 
10516
- function valueEqual(a, b) {
10517
- // Test for strict equality first.
10518
- if (a === b) return true;
 
 
 
10519
 
10520
- // Otherwise, if either of them == null they are not equal.
10521
- if (a == null || b == null) return false;
10522
 
10523
- if (Array.isArray(a)) {
10524
- return (
10525
- Array.isArray(b) &&
10526
- a.length === b.length &&
10527
- a.every(function(item, index) {
10528
- return valueEqual(item, b[index]);
10529
- })
10530
- );
10531
- }
10532
 
10533
- if (typeof a === 'object' || typeof b === 'object') {
10534
- var aValue = value_equal_valueOf(a);
10535
- var bValue = value_equal_valueOf(b);
 
 
 
 
 
10536
 
10537
- if (aValue !== a || bValue !== b) return valueEqual(aValue, bValue);
10538
 
10539
- return Object.keys(Object.assign({}, a, b)).every(function(key) {
10540
- return valueEqual(a[key], b[key]);
10541
- });
10542
- }
10543
 
10544
- return false;
10545
- }
 
 
 
 
 
10546
 
10547
- /* harmony default export */ var value_equal = (valueEqual);
 
 
10548
 
10549
- // EXTERNAL MODULE: ./node_modules/tiny-invariant/dist/tiny-invariant.esm.js
10550
- var tiny_invariant_esm = __webpack_require__(63);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10551
 
10552
- // CONCATENATED MODULE: ./node_modules/history/esm/history.js
10553
 
 
 
 
10554
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10555
 
10556
 
 
 
 
10557
 
 
 
 
 
 
 
 
10558
 
10559
- function addLeadingSlash(path) {
10560
- return path.charAt(0) === '/' ? path : '/' + path;
10561
- }
10562
- function stripLeadingSlash(path) {
10563
- return path.charAt(0) === '/' ? path.substr(1) : path;
10564
- }
10565
- function hasBasename(path, prefix) {
10566
- return path.toLowerCase().indexOf(prefix.toLowerCase()) === 0 && '/?#'.indexOf(path.charAt(prefix.length)) !== -1;
10567
- }
10568
- function stripBasename(path, prefix) {
10569
- return hasBasename(path, prefix) ? path.substr(prefix.length) : path;
10570
- }
10571
- function stripTrailingSlash(path) {
10572
- return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;
10573
- }
10574
- function parsePath(path) {
10575
- var pathname = path || '/';
10576
- var search = '';
10577
- var hash = '';
10578
- var hashIndex = pathname.indexOf('#');
10579
 
10580
- if (hashIndex !== -1) {
10581
- hash = pathname.substr(hashIndex);
10582
- pathname = pathname.substr(0, hashIndex);
10583
- }
10584
 
10585
- var searchIndex = pathname.indexOf('?');
 
 
10586
 
10587
- if (searchIndex !== -1) {
10588
- search = pathname.substr(searchIndex);
10589
- pathname = pathname.substr(0, searchIndex);
10590
  }
10591
 
10592
- return {
10593
- pathname: pathname,
10594
- search: search === '?' ? '' : search,
10595
- hash: hash === '#' ? '' : hash
10596
  };
10597
- }
10598
- function createPath(location) {
10599
- var pathname = location.pathname,
10600
- search = location.search,
10601
- hash = location.hash;
10602
- var path = pathname || '/';
10603
- if (search && search !== '?') path += search.charAt(0) === '?' ? search : "?" + search;
10604
- if (hash && hash !== '#') path += hash.charAt(0) === '#' ? hash : "#" + hash;
10605
- return path;
10606
  }
10607
 
10608
- function createLocation(path, state, key, currentLocation) {
10609
- var location;
 
10610
 
10611
- if (typeof path === 'string') {
10612
- // Two-arg form: push(path, state)
10613
- location = parsePath(path);
10614
- location.state = state;
10615
- } else {
10616
- // One-arg form: push(location)
10617
- location = Object(esm_extends["a" /* default */])({}, path);
10618
- if (location.pathname === undefined) location.pathname = '';
10619
 
10620
- if (location.search) {
10621
- if (location.search.charAt(0) !== '?') location.search = '?' + location.search;
10622
- } else {
10623
- location.search = '';
10624
- }
10625
 
10626
- if (location.hash) {
10627
- if (location.hash.charAt(0) !== '#') location.hash = '#' + location.hash;
10628
- } else {
10629
- location.hash = '';
 
10630
  }
10631
 
10632
- if (state !== undefined && location.state === undefined) location.state = state;
10633
  }
 
 
 
10634
 
10635
- try {
10636
- location.pathname = decodeURI(location.pathname);
10637
- } catch (e) {
10638
- if (e instanceof URIError) {
10639
- throw new URIError('Pathname "' + location.pathname + '" could not be decoded. ' + 'This is likely caused by an invalid percent-encoding.');
10640
- } else {
10641
- throw e;
10642
- }
10643
- }
10644
 
10645
- if (key) location.key = key;
10646
 
10647
- if (currentLocation) {
10648
- // Resolve incomplete/relative pathname relative to current location.
10649
- if (!location.pathname) {
10650
- location.pathname = currentLocation.pathname;
10651
- } else if (location.pathname.charAt(0) !== '/') {
10652
- location.pathname = resolve_pathname(location.pathname, currentLocation.pathname);
10653
- }
10654
- } else {
10655
- // When there is no prior location and pathname is empty, set it to /
10656
- if (!location.pathname) {
10657
- location.pathname = '/';
10658
- }
10659
- }
10660
 
10661
- return location;
10662
- }
10663
- function locationsAreEqual(a, b) {
10664
- return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash && a.key === b.key && value_equal(a.state, b.state);
10665
  }
10666
 
10667
- function createTransitionManager() {
10668
- var prompt = null;
 
10669
 
10670
- function setPrompt(nextPrompt) {
10671
- false ? undefined : void 0;
10672
- prompt = nextPrompt;
10673
- return function () {
10674
- if (prompt === nextPrompt) prompt = null;
10675
- };
 
 
10676
  }
 
10677
 
10678
- function confirmTransitionTo(location, action, getUserConfirmation, callback) {
10679
- // TODO: If another transition starts while we're still confirming
10680
- // the previous one, we may end up in a weird state. Figure out the
10681
- // best way to handle this.
10682
- if (prompt != null) {
10683
- var result = typeof prompt === 'function' ? prompt(location, action) : prompt;
10684
 
10685
- if (typeof result === 'string') {
10686
- if (typeof getUserConfirmation === 'function') {
10687
- getUserConfirmation(result, callback);
10688
- } else {
10689
- false ? undefined : void 0;
10690
- callback(true);
10691
- }
10692
- } else {
10693
- // Return false from a transition hook to cancel the transition.
10694
- callback(result !== false);
10695
- }
10696
- } else {
10697
- callback(true);
10698
- }
10699
- }
10700
 
10701
- var listeners = [];
10702
 
10703
- function appendListener(fn) {
10704
- var isActive = true;
 
10705
 
10706
- function listener() {
10707
- if (isActive) fn.apply(void 0, arguments);
10708
- }
10709
 
10710
- listeners.push(listener);
10711
- return function () {
10712
- isActive = false;
10713
- listeners = listeners.filter(function (item) {
10714
- return item !== listener;
10715
- });
10716
- };
10717
  }
 
10718
 
10719
- function notifyListeners() {
10720
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
10721
- args[_key] = arguments[_key];
10722
- }
10723
 
10724
- listeners.forEach(function (listener) {
10725
- return listener.apply(void 0, args);
10726
- });
 
10727
  }
 
10728
 
10729
- return {
10730
- setPrompt: setPrompt,
10731
- confirmTransitionTo: confirmTransitionTo,
10732
- appendListener: appendListener,
10733
- notifyListeners: notifyListeners
10734
- };
10735
- }
10736
 
10737
- var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
10738
- function getConfirmation(message, callback) {
10739
- callback(window.confirm(message)); // eslint-disable-line no-alert
10740
- }
10741
- /**
10742
- * Returns true if the HTML5 history API is supported. Taken from Modernizr.
10743
- *
10744
- * https://github.com/Modernizr/Modernizr/blob/master/LICENSE
10745
- * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js
10746
- * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586
10747
- */
10748
 
10749
- function supportsHistory() {
10750
- var ua = window.navigator.userAgent;
10751
- 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;
10752
- return window.history && 'pushState' in window.history;
10753
- }
10754
- /**
10755
- * Returns true if browser fires popstate on hash change.
10756
- * IE10 and IE11 do not.
10757
- */
10758
 
10759
- function supportsPopStateOnHashChange() {
10760
- return window.navigator.userAgent.indexOf('Trident') === -1;
10761
- }
10762
- /**
10763
- * Returns false if using go(n) with hash history causes a full page reload.
10764
- */
10765
 
10766
- function supportsGoWithoutReloadUsingHash() {
10767
- return window.navigator.userAgent.indexOf('Firefox') === -1;
10768
- }
10769
- /**
10770
- * Returns true if a given popstate event is an extraneous WebKit event.
10771
- * Accounts for the fact that Chrome on iOS fires real popstate events
10772
- * containing undefined state when pressing the back button.
10773
- */
10774
 
10775
- function isExtraneousPopstateEvent(event) {
10776
- return event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1;
10777
- }
 
 
 
10778
 
10779
- var PopStateEvent = 'popstate';
10780
- var HashChangeEvent = 'hashchange';
10781
 
10782
- function getHistoryState() {
10783
- try {
10784
- return window.history.state || {};
10785
- } catch (e) {
10786
- // IE 11 sometimes throws when accessing window.history.state
10787
- // See https://github.com/ReactTraining/history/pull/289
10788
- return {};
10789
  }
10790
- }
10791
- /**
10792
- * Creates a history object that uses the HTML5 history API including
10793
- * pushState, replaceState, and the popstate event.
10794
- */
10795
 
 
10796
 
10797
- function createBrowserHistory(props) {
10798
- if (props === void 0) {
10799
- props = {};
 
10800
  }
 
10801
 
10802
- !canUseDOM ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
10803
- var globalHistory = window.history;
10804
- var canUseHistory = supportsHistory();
10805
- var needsHashChangeListener = !supportsPopStateOnHashChange();
10806
- var _props = props,
10807
- _props$forceRefresh = _props.forceRefresh,
10808
- forceRefresh = _props$forceRefresh === void 0 ? false : _props$forceRefresh,
10809
- _props$getUserConfirm = _props.getUserConfirmation,
10810
- getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,
10811
- _props$keyLength = _props.keyLength,
10812
- keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength;
10813
- var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';
10814
-
10815
- function getDOMLocation(historyState) {
10816
- var _ref = historyState || {},
10817
- key = _ref.key,
10818
- state = _ref.state;
10819
 
10820
- var _window$location = window.location,
10821
- pathname = _window$location.pathname,
10822
- search = _window$location.search,
10823
- hash = _window$location.hash;
10824
- var path = pathname + search + hash;
10825
- false ? undefined : void 0;
10826
- if (basename) path = stripBasename(path, basename);
10827
- return createLocation(path, state, key);
10828
  }
 
10829
 
10830
- function createKey() {
10831
- return Math.random().toString(36).substr(2, keyLength);
10832
- }
10833
 
10834
- var transitionManager = createTransitionManager();
 
 
10835
 
10836
- function setState(nextState) {
10837
- Object(esm_extends["a" /* default */])(history, nextState);
 
10838
 
10839
- history.length = globalHistory.length;
10840
- transitionManager.notifyListeners(history.location, history.action);
10841
- }
10842
 
10843
- function handlePopState(event) {
10844
- // Ignore extraneous popstate events in WebKit.
10845
- if (isExtraneousPopstateEvent(event)) return;
10846
- handlePop(getDOMLocation(event.state));
10847
- }
10848
 
10849
- function handleHashChange() {
10850
- handlePop(getDOMLocation(getHistoryState()));
 
 
 
 
 
 
 
 
10851
  }
 
 
 
 
10852
 
10853
- var forceNextPop = false;
10854
 
10855
- function handlePop(location) {
10856
- if (forceNextPop) {
10857
- forceNextPop = false;
10858
- setState();
10859
- } else {
10860
- var action = 'POP';
10861
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
10862
- if (ok) {
10863
- setState({
10864
- action: action,
10865
- location: location
10866
- });
10867
- } else {
10868
- revertPop(location);
10869
- }
10870
- });
10871
- }
10872
- }
10873
 
10874
- function revertPop(fromLocation) {
10875
- var toLocation = history.location; // TODO: We could probably make this more reliable by
10876
- // keeping a list of keys we've seen in sessionStorage.
10877
- // Instead, we just default to 0 for keys we don't know.
10878
 
10879
- var toIndex = allKeys.indexOf(toLocation.key);
10880
- if (toIndex === -1) toIndex = 0;
10881
- var fromIndex = allKeys.indexOf(fromLocation.key);
10882
- if (fromIndex === -1) fromIndex = 0;
10883
- var delta = toIndex - fromIndex;
10884
 
10885
- if (delta) {
10886
- forceNextPop = true;
10887
- go(delta);
10888
- }
10889
- }
10890
 
10891
- var initialLocation = getDOMLocation(getHistoryState());
10892
- var allKeys = [initialLocation.key]; // Public interface
10893
 
10894
- function createHref(location) {
10895
- return basename + createPath(location);
10896
- }
10897
 
10898
- function push(path, state) {
10899
- false ? undefined : void 0;
10900
- var action = 'PUSH';
10901
- var location = createLocation(path, state, createKey(), history.location);
10902
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
10903
- if (!ok) return;
10904
- var href = createHref(location);
10905
- var key = location.key,
10906
- state = location.state;
10907
 
10908
- if (canUseHistory) {
10909
- globalHistory.pushState({
10910
- key: key,
10911
- state: state
10912
- }, null, href);
10913
 
10914
- if (forceRefresh) {
10915
- window.location.href = href;
10916
- } else {
10917
- var prevIndex = allKeys.indexOf(history.location.key);
10918
- var nextKeys = allKeys.slice(0, prevIndex + 1);
10919
- nextKeys.push(location.key);
10920
- allKeys = nextKeys;
10921
- setState({
10922
- action: action,
10923
- location: location
10924
- });
10925
- }
10926
- } else {
10927
- false ? undefined : void 0;
10928
- window.location.href = href;
10929
- }
10930
- });
10931
- }
10932
 
10933
- function replace(path, state) {
10934
- false ? undefined : void 0;
10935
- var action = 'REPLACE';
10936
- var location = createLocation(path, state, createKey(), history.location);
10937
- transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
10938
- if (!ok) return;
10939
- var href = createHref(location);
10940
- var key = location.key,
10941
- state = location.state;
10942
 
10943
- if (canUseHistory) {
10944
- globalHistory.replaceState({
10945
- key: key,
10946
- state: state
10947
- }, null, href);
10948
 
10949
- if (forceRefresh) {
10950
- window.location.replace(href);
10951
- } else {
10952
- var prevIndex = allKeys.indexOf(history.location.key);
10953
- if (prevIndex !== -1) allKeys[prevIndex] = location.key;
10954
- setState({
10955
- action: action,
10956
- location: location
10957
- });
10958
- }
10959
- } else {
10960
- false ? undefined : void 0;
10961
- window.location.replace(href);
10962
- }
10963
- });
10964
- }
10965
 
10966
- function go(n) {
10967
- globalHistory.go(n);
10968
- }
 
 
 
 
10969
 
10970
- function goBack() {
10971
- go(-1);
10972
- }
 
 
 
 
 
10973
 
10974
- function goForward() {
10975
- go(1);
10976
- }
10977
 
10978
- var listenerCount = 0;
 
 
10979
 
10980
- function checkDOMListeners(delta) {
10981
- listenerCount += delta;
 
 
 
10982
 
10983
- if (listenerCount === 1 && delta === 1) {
10984
- window.addEventListener(PopStateEvent, handlePopState);
10985
- if (needsHashChangeListener) window.addEventListener(HashChangeEvent, handleHashChange);
10986
- } else if (listenerCount === 0) {
10987
- window.removeEventListener(PopStateEvent, handlePopState);
10988
- if (needsHashChangeListener) window.removeEventListener(HashChangeEvent, handleHashChange);
10989
- }
10990
- }
10991
 
10992
- var isBlocked = false;
10993
 
10994
- function block(prompt) {
10995
- if (prompt === void 0) {
10996
- prompt = false;
10997
- }
10998
 
10999
- var unblock = transitionManager.setPrompt(prompt);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11000
 
11001
- if (!isBlocked) {
11002
- checkDOMListeners(1);
11003
- isBlocked = true;
11004
  }
11005
 
11006
- return function () {
11007
- if (isBlocked) {
11008
- isBlocked = false;
11009
- checkDOMListeners(-1);
 
11010
  }
11011
 
11012
- return unblock();
 
11013
  };
11014
- }
 
11015
 
11016
- function listen(listener) {
11017
- var unlisten = transitionManager.appendListener(listener);
11018
- checkDOMListeners(1);
11019
- return function () {
11020
- checkDOMListeners(-1);
11021
- unlisten();
11022
- };
11023
- }
11024
 
11025
- var history = {
11026
- length: globalHistory.length,
11027
- action: 'POP',
11028
- location: initialLocation,
11029
- createHref: createHref,
11030
- push: push,
11031
- replace: replace,
11032
- go: go,
11033
- goBack: goBack,
11034
- goForward: goForward,
11035
- block: block,
11036
- listen: listen
11037
- };
11038
- return history;
11039
- }
11040
 
11041
- var HashChangeEvent$1 = 'hashchange';
11042
- var HashPathCoders = {
11043
- hashbang: {
11044
- encodePath: function encodePath(path) {
11045
- return path.charAt(0) === '!' ? path : '!/' + stripLeadingSlash(path);
11046
- },
11047
- decodePath: function decodePath(path) {
11048
- return path.charAt(0) === '!' ? path.substr(1) : path;
11049
  }
11050
- },
11051
- noslash: {
11052
- encodePath: stripLeadingSlash,
11053
- decodePath: addLeadingSlash
11054
- },
11055
- slash: {
11056
- encodePath: addLeadingSlash,
11057
- decodePath: addLeadingSlash
11058
- }
11059
- };
11060
 
11061
- function stripHash(url) {
11062
- var hashIndex = url.indexOf('#');
11063
- return hashIndex === -1 ? url : url.slice(0, hashIndex);
11064
  }
11065
 
11066
- function getHashPath() {
11067
- // We can't use window.location.hash here because it's not
11068
- // consistent across browsers - Firefox will pre-decode it!
11069
- var href = window.location.href;
11070
- var hashIndex = href.indexOf('#');
11071
- return hashIndex === -1 ? '' : href.substring(hashIndex + 1);
11072
- }
11073
 
11074
- function pushHashPath(path) {
11075
- window.location.hash = path;
 
 
 
 
 
 
 
11076
  }
11077
 
11078
- function replaceHashPath(path) {
11079
- window.location.replace(stripHash(window.location.href) + '#' + path);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11080
  }
11081
 
11082
- function createHashHistory(props) {
11083
- if (props === void 0) {
11084
- props = {};
11085
- }
11086
 
11087
- !canUseDOM ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
11088
- var globalHistory = window.history;
11089
- var canGoWithoutReload = supportsGoWithoutReloadUsingHash();
11090
- var _props = props,
11091
- _props$getUserConfirm = _props.getUserConfirmation,
11092
- getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,
11093
- _props$hashType = _props.hashType,
11094
- hashType = _props$hashType === void 0 ? 'slash' : _props$hashType;
11095
- var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';
11096
- var _HashPathCoders$hashT = HashPathCoders[hashType],
11097
- encodePath = _HashPathCoders$hashT.encodePath,
11098
- decodePath = _HashPathCoders$hashT.decodePath;
11099
 
11100
- function getDOMLocation() {
11101
- var path = decodePath(getHashPath());
11102
- false ? undefined : void 0;
11103
- if (basename) path = stripBasename(path, basename);
11104
- return createLocation(path);
11105
- }
 
11106
 
11107
- var transitionManager = createTransitionManager();
11108
 
11109
- function setState(nextState) {
11110
- Object(esm_extends["a" /* default */])(history, nextState);
11111
 
11112
- history.length = globalHistory.length;
11113
- transitionManager.notifyListeners(history.location, history.action);
 
 
 
 
 
 
 
11114
  }
11115
 
11116
- var forceNextPop = false;
11117
- var ignorePath = null;
11118
 
11119
- function locationsAreEqual$$1(a, b) {
11120
- return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash;
11121
- }
11122
 
11123
- function handleHashChange() {
11124
- var path = getHashPath();
11125
- var encodedPath = encodePath(path);
11126
 
11127
- if (path !== encodedPath) {
11128
- // Ensure we always have a properly-encoded hash.
11129
- replaceHashPath(encodedPath);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11130
  } else {
11131
- var location = getDOMLocation();
11132
- var prevLocation = history.location;
11133
- if (!forceNextPop && locationsAreEqual$$1(prevLocation, location)) return; // A hashchange doesn't always == location change.
11134
 
11135
- if (ignorePath === createPath(location)) return; // Ignore this change; we already setState in push/replace.
 
 
 
 
11136
 
11137
- ignorePath = null;
11138
- handlePop(location);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11139
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11140
  }
11141
 
 
 
11142
  function handlePop(location) {
11143
  if (forceNextPop) {
11144
  forceNextPop = false;
@@ -11160,12 +10173,12 @@ function createHashHistory(props) {
11160
 
11161
  function revertPop(fromLocation) {
11162
  var toLocation = history.location; // TODO: We could probably make this more reliable by
11163
- // keeping a list of paths we've seen in sessionStorage.
11164
- // Instead, we just default to 0 for paths we don't know.
11165
 
11166
- var toIndex = allPaths.lastIndexOf(createPath(toLocation));
11167
  if (toIndex === -1) toIndex = 0;
11168
- var fromIndex = allPaths.lastIndexOf(createPath(fromLocation));
11169
  if (fromIndex === -1) fromIndex = 0;
11170
  var delta = toIndex - fromIndex;
11171
 
@@ -11173,53 +10186,46 @@ function createHashHistory(props) {
11173
  forceNextPop = true;
11174
  go(delta);
11175
  }
11176
- } // Ensure the hash is encoded properly before doing anything else.
11177
-
11178
 
11179
- var path = getHashPath();
11180
- var encodedPath = encodePath(path);
11181
- if (path !== encodedPath) replaceHashPath(encodedPath);
11182
- var initialLocation = getDOMLocation();
11183
- var allPaths = [createPath(initialLocation)]; // Public interface
11184
 
11185
  function createHref(location) {
11186
- var baseTag = document.querySelector('base');
11187
- var href = '';
11188
-
11189
- if (baseTag && baseTag.getAttribute('href')) {
11190
- href = stripHash(window.location.href);
11191
- }
11192
-
11193
- return href + '#' + encodePath(basename + createPath(location));
11194
  }
11195
 
11196
  function push(path, state) {
11197
  false ? undefined : void 0;
11198
  var action = 'PUSH';
11199
- var location = createLocation(path, undefined, undefined, history.location);
11200
  transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
11201
  if (!ok) return;
11202
- var path = createPath(location);
11203
- var encodedPath = encodePath(basename + path);
11204
- var hashChanged = getHashPath() !== encodedPath;
11205
 
11206
- if (hashChanged) {
11207
- // We cannot tell if a hashchange was caused by a PUSH, so we'd
11208
- // rather setState here and ignore the hashchange. The caveat here
11209
- // is that other hash histories in the page will consider it a POP.
11210
- ignorePath = path;
11211
- pushHashPath(encodedPath);
11212
- var prevIndex = allPaths.lastIndexOf(createPath(history.location));
11213
- var nextPaths = allPaths.slice(0, prevIndex + 1);
11214
- nextPaths.push(path);
11215
- allPaths = nextPaths;
11216
- setState({
11217
- action: action,
11218
- location: location
11219
- });
 
 
 
 
11220
  } else {
11221
  false ? undefined : void 0;
11222
- setState();
11223
  }
11224
  });
11225
  }
@@ -11227,32 +10233,37 @@ function createHashHistory(props) {
11227
  function replace(path, state) {
11228
  false ? undefined : void 0;
11229
  var action = 'REPLACE';
11230
- var location = createLocation(path, undefined, undefined, history.location);
11231
  transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
11232
  if (!ok) return;
11233
- var path = createPath(location);
11234
- var encodedPath = encodePath(basename + path);
11235
- var hashChanged = getHashPath() !== encodedPath;
11236
 
11237
- if (hashChanged) {
11238
- // We cannot tell if a hashchange was caused by a REPLACE, so we'd
11239
- // rather setState here and ignore the hashchange. The caveat here
11240
- // is that other hash histories in the page will consider it a POP.
11241
- ignorePath = path;
11242
- replaceHashPath(encodedPath);
11243
- }
11244
 
11245
- var prevIndex = allPaths.indexOf(createPath(history.location));
11246
- if (prevIndex !== -1) allPaths[prevIndex] = path;
11247
- setState({
11248
- action: action,
11249
- location: location
11250
- });
 
 
 
 
 
 
 
 
11251
  });
11252
  }
11253
 
11254
  function go(n) {
11255
- false ? undefined : void 0;
11256
  globalHistory.go(n);
11257
  }
11258
 
@@ -11270,8 +10281,297 @@ function createHashHistory(props) {
11270
  listenerCount += delta;
11271
 
11272
  if (listenerCount === 1 && delta === 1) {
11273
- window.addEventListener(HashChangeEvent$1, handleHashChange);
11274
- } else if (listenerCount === 0) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11275
  window.removeEventListener(HashChangeEvent$1, handleHashChange);
11276
  }
11277
  }
@@ -11472,7 +10772,7 @@ function createMemoryHistory(props) {
11472
 
11473
 
11474
  /***/ }),
11475
- /* 84 */
11476
  /***/ (function(module, exports) {
11477
 
11478
  /**
@@ -11515,11 +10815,11 @@ module.exports = eq;
11515
 
11516
 
11517
  /***/ }),
11518
- /* 85 */
11519
  /***/ (function(module, exports, __webpack_require__) {
11520
 
11521
- var baseIsNative = __webpack_require__(304),
11522
- getValue = __webpack_require__(309);
11523
 
11524
  /**
11525
  * Gets the native function at `key` of `object`.
@@ -11538,7 +10838,7 @@ module.exports = getNative;
11538
 
11539
 
11540
  /***/ }),
11541
- /* 86 */
11542
  /***/ (function(module, exports) {
11543
 
11544
  module.exports = function (it) {
@@ -11547,10 +10847,10 @@ module.exports = function (it) {
11547
 
11548
 
11549
  /***/ }),
11550
- /* 87 */
11551
  /***/ (function(module, exports, __webpack_require__) {
11552
 
11553
- var isObject = __webpack_require__(86);
11554
 
11555
  module.exports = function (it) {
11556
  if (!isObject(it)) {
@@ -11560,99 +10860,7 @@ module.exports = function (it) {
11560
 
11561
 
11562
  /***/ }),
11563
- /* 88 */
11564
- /***/ (function(module, exports, __webpack_require__) {
11565
-
11566
- "use strict";
11567
-
11568
-
11569
- Object.defineProperty(exports, "__esModule", {
11570
- value: true
11571
- });
11572
- exports.red = exports.getContrastingColor = exports.isValidHex = exports.toState = exports.simpleCheckForValidColor = undefined;
11573
-
11574
- var _each = __webpack_require__(662);
11575
-
11576
- var _each2 = _interopRequireDefault(_each);
11577
-
11578
- var _tinycolor = __webpack_require__(664);
11579
-
11580
- var _tinycolor2 = _interopRequireDefault(_tinycolor);
11581
-
11582
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11583
-
11584
- var simpleCheckForValidColor = exports.simpleCheckForValidColor = function simpleCheckForValidColor(data) {
11585
- var keysToCheck = ['r', 'g', 'b', 'a', 'h', 's', 'l', 'v'];
11586
- var checked = 0;
11587
- var passed = 0;
11588
- (0, _each2.default)(keysToCheck, function (letter) {
11589
- if (data[letter]) {
11590
- checked += 1;
11591
- if (!isNaN(data[letter])) {
11592
- passed += 1;
11593
- }
11594
- if (letter === 's' || letter === 'l') {
11595
- var percentPatt = /^\d+%$/;
11596
- if (percentPatt.test(data[letter])) {
11597
- passed += 1;
11598
- }
11599
- }
11600
- }
11601
- });
11602
- return checked === passed ? data : false;
11603
- };
11604
-
11605
- var toState = exports.toState = function toState(data, oldHue) {
11606
- var color = data.hex ? (0, _tinycolor2.default)(data.hex) : (0, _tinycolor2.default)(data);
11607
- var hsl = color.toHsl();
11608
- var hsv = color.toHsv();
11609
- var rgb = color.toRgb();
11610
- var hex = color.toHex();
11611
- if (hsl.s === 0) {
11612
- hsl.h = oldHue || 0;
11613
- hsv.h = oldHue || 0;
11614
- }
11615
- var transparent = hex === '000000' && rgb.a === 0;
11616
-
11617
- return {
11618
- hsl: hsl,
11619
- hex: transparent ? 'transparent' : '#' + hex,
11620
- rgb: rgb,
11621
- hsv: hsv,
11622
- oldHue: data.h || oldHue || hsl.h,
11623
- source: data.source
11624
- };
11625
- };
11626
-
11627
- var isValidHex = exports.isValidHex = function isValidHex(hex) {
11628
- // disable hex4 and hex8
11629
- var lh = String(hex).charAt(0) === '#' ? 1 : 0;
11630
- return hex.length !== 4 + lh && hex.length < 7 + lh && (0, _tinycolor2.default)(hex).isValid();
11631
- };
11632
-
11633
- var getContrastingColor = exports.getContrastingColor = function getContrastingColor(data) {
11634
- if (!data) {
11635
- return '#fff';
11636
- }
11637
- var col = toState(data);
11638
- if (col.hex === 'transparent') {
11639
- return 'rgba(0,0,0,0.4)';
11640
- }
11641
- var yiq = (col.rgb.r * 299 + col.rgb.g * 587 + col.rgb.b * 114) / 1000;
11642
- return yiq >= 128 ? '#000' : '#fff';
11643
- };
11644
-
11645
- var red = exports.red = {
11646
- hsl: { a: 1, h: 0, l: 0.5, s: 1 },
11647
- hex: '#ff0000',
11648
- rgb: { r: 255, g: 0, b: 0, a: 1 },
11649
- hsv: { h: 0, s: 1, v: 1, a: 1 }
11650
- };
11651
-
11652
- exports.default = exports;
11653
-
11654
- /***/ }),
11655
- /* 89 */
11656
  /***/ (function(module, exports) {
11657
 
11658
  var core = module.exports = { version: '2.5.7' };
@@ -11660,7 +10868,7 @@ if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
11660
 
11661
 
11662
  /***/ }),
11663
- /* 90 */
11664
  /***/ (function(module, exports, __webpack_require__) {
11665
 
11666
  // optional / simple context binding
@@ -11686,7 +10894,7 @@ module.exports = function (fn, that, length) {
11686
 
11687
 
11688
  /***/ }),
11689
- /* 91 */
11690
  /***/ (function(module, exports) {
11691
 
11692
  var toString = {}.toString;
@@ -11697,12 +10905,12 @@ module.exports = function (it) {
11697
 
11698
 
11699
  /***/ }),
11700
- /* 92 */
11701
  /***/ (function(module, exports, __webpack_require__) {
11702
 
11703
  "use strict";
11704
 
11705
- var fails = __webpack_require__(28);
11706
 
11707
  module.exports = function (method, arg) {
11708
  return !!method && fails(function () {
@@ -11713,70 +10921,78 @@ module.exports = function (method, arg) {
11713
 
11714
 
11715
  /***/ }),
11716
- /* 93 */
11717
  /***/ (function(module, exports, __webpack_require__) {
11718
 
11719
- module.exports = __webpack_require__(274);
11720
 
11721
  /***/ }),
11722
- /* 94 */
11723
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
11724
 
11725
  "use strict";
11726
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return debounce; });
11727
- // Corresponds to 10 frames at 60 Hz.
11728
- // A few bytes payload overhead when lodash/debounce is ~3 kB and debounce ~300 B.
11729
- function debounce(func) {
11730
- var wait = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 166;
11731
- var timeout;
11732
 
11733
- function debounced() {
11734
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
11735
- args[_key] = arguments[_key];
11736
- }
 
 
11737
 
11738
- // eslint-disable-next-line consistent-this
11739
- var that = this;
11740
 
11741
- var later = function later() {
11742
- func.apply(that, args);
11743
- };
11744
 
11745
- clearTimeout(timeout);
11746
- timeout = setTimeout(later, wait);
11747
- }
11748
 
11749
- debounced.clear = function () {
11750
- clearTimeout(timeout);
11751
- };
11752
 
11753
- return debounced;
 
 
 
 
 
11754
  }
11755
 
11756
  /***/ }),
11757
- /* 95 */
11758
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
11759
 
11760
  "use strict";
11761
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return setRef; });
11762
- // TODO v5: consider to make it private
11763
- function setRef(ref, value) {
11764
- if (typeof ref === 'function') {
11765
- ref(value);
11766
- } else if (ref) {
11767
- ref.current = value;
 
11768
  }
11769
  }
11770
 
 
 
 
 
 
 
11771
  /***/ }),
11772
- /* 96 */
11773
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
11774
 
11775
  "use strict";
11776
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return changeHasChanges; });
11777
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return changeIsUpdating; });
11778
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return stopLoading; });
11779
- /* harmony import */ var buttonizer_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);
11780
 
11781
  function changeHasChanges(status) {
11782
  return {
@@ -11801,7 +11017,7 @@ function stopLoading() {
11801
  }
11802
 
11803
  /***/ }),
11804
- /* 97 */
11805
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
11806
 
11807
  "use strict";
@@ -11811,7 +11027,7 @@ function stopLoading() {
11811
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return combineReducers; });
11812
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return compose; });
11813
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return createStore; });
11814
- /* harmony import */ var symbol_observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(154);
11815
 
11816
 
11817
  /**
@@ -12464,1203 +11680,1249 @@ if (false) {}
12464
 
12465
 
12466
  /***/ }),
12467
- /* 98 */
12468
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
12469
-
12470
- "use strict";
12471
- /* unused harmony export prefix */
12472
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return supportedKeyframes; });
12473
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return supportedProperty; });
12474
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return supportedValue; });
12475
- /* harmony import */ var is_in_browser__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(42);
12476
- /* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48);
12477
-
12478
-
12479
-
12480
- // Export javascript style and css style vendor prefixes.
12481
- var js = '';
12482
- var css = '';
12483
- var vendor = '';
12484
- var browser = '';
12485
- var isTouch = is_in_browser__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"] && 'ontouchstart' in document.documentElement; // We should not do anything if required serverside.
12486
-
12487
- if (is_in_browser__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"]) {
12488
- // Order matters. We need to check Webkit the last one because
12489
- // other vendors use to add Webkit prefixes to some properties
12490
- var jsCssMap = {
12491
- Moz: '-moz-',
12492
- ms: '-ms-',
12493
- O: '-o-',
12494
- Webkit: '-webkit-'
12495
- };
12496
-
12497
- var _document$createEleme = document.createElement('p'),
12498
- style = _document$createEleme.style;
12499
-
12500
- var testProp = 'Transform';
12501
-
12502
- for (var key in jsCssMap) {
12503
- if (key + testProp in style) {
12504
- js = key;
12505
- css = jsCssMap[key];
12506
- break;
12507
- }
12508
- } // Correctly detect the Edge browser.
12509
-
12510
-
12511
- if (js === 'Webkit' && 'msHyphens' in style) {
12512
- js = 'ms';
12513
- css = jsCssMap.ms;
12514
- browser = 'edge';
12515
- } // Correctly detect the Safari browser.
12516
 
 
 
12517
 
12518
- if (js === 'Webkit' && '-apple-trailing-word' in style) {
12519
- vendor = 'apple';
12520
- }
12521
- }
12522
  /**
12523
- * Vendor prefix string for the current browser.
 
 
12524
  *
12525
- * @type {{js: String, css: String, vendor: String, browser: String}}
12526
- * @api public
12527
- */
12528
-
12529
-
12530
- var prefix = {
12531
- js: js,
12532
- css: css,
12533
- vendor: vendor,
12534
- browser: browser,
12535
- isTouch: isTouch
12536
- };
12537
-
12538
- /**
12539
- * Test if a keyframe at-rule should be prefixed or not
12540
  *
12541
- * @param {String} vendor prefix string for the current browser.
12542
- * @return {String}
12543
- * @api public
12544
- */
12545
-
12546
- function supportedKeyframes(key) {
12547
- // Keyframes is already prefixed. e.g. key = '@-webkit-keyframes a'
12548
- if (key[1] === '-') return key; // No need to prefix IE/Edge. Older browsers will ignore unsupported rules.
12549
- // https://caniuse.com/#search=keyframes
12550
-
12551
- if (prefix.js === 'ms') return key;
12552
- return "@" + prefix.css + "keyframes" + key.substr(10);
12553
- }
12554
-
12555
- // https://caniuse.com/#search=appearance
12556
-
12557
- var appearence = {
12558
- noPrefill: ['appearance'],
12559
- supportedProperty: function supportedProperty(prop) {
12560
- if (prop !== 'appearance') return false;
12561
- if (prefix.js === 'ms') return "-webkit-" + prop;
12562
- return prefix.css + prop;
12563
- }
12564
- };
12565
-
12566
- // https://caniuse.com/#search=color-adjust
12567
-
12568
- var colorAdjust = {
12569
- noPrefill: ['color-adjust'],
12570
- supportedProperty: function supportedProperty(prop) {
12571
- if (prop !== 'color-adjust') return false;
12572
- if (prefix.js === 'Webkit') return prefix.css + "print-" + prop;
12573
- return prop;
12574
- }
12575
- };
12576
-
12577
- var regExp = /[-\s]+(.)?/g;
12578
- /**
12579
- * Replaces the letter with the capital letter
12580
  *
12581
- * @param {String} match
12582
- * @param {String} c
12583
- * @return {String}
12584
- * @api private
12585
- */
12586
-
12587
- function toUpper(match, c) {
12588
- return c ? c.toUpperCase() : '';
12589
- }
12590
- /**
12591
- * Convert dash separated strings to camel-cased.
12592
  *
12593
- * @param {String} str
12594
- * @return {String}
12595
- * @api private
12596
- */
12597
-
12598
-
12599
- function camelize(str) {
12600
- return str.replace(regExp, toUpper);
12601
- }
12602
-
12603
- /**
12604
- * Convert dash separated strings to pascal cased.
12605
  *
12606
- * @param {String} str
12607
- * @return {String}
12608
- * @api private
12609
  */
12610
-
12611
- function pascalize(str) {
12612
- return camelize("-" + str);
12613
  }
12614
 
12615
- // but we can use a longhand property instead.
12616
- // https://caniuse.com/#search=mask
12617
-
12618
- var mask = {
12619
- noPrefill: ['mask'],
12620
- supportedProperty: function supportedProperty(prop, style) {
12621
- if (!/^mask/.test(prop)) return false;
12622
-
12623
- if (prefix.js === 'Webkit') {
12624
- var longhand = 'mask-image';
12625
-
12626
- if (camelize(longhand) in style) {
12627
- return prop;
12628
- }
12629
-
12630
- if (prefix.js + pascalize(longhand) in style) {
12631
- return prefix.css + prop;
12632
- }
12633
- }
12634
-
12635
- return prop;
12636
- }
12637
- };
12638
-
12639
- // https://caniuse.com/#search=text-orientation
12640
 
12641
- var textOrientation = {
12642
- noPrefill: ['text-orientation'],
12643
- supportedProperty: function supportedProperty(prop) {
12644
- if (prop !== 'text-orientation') return false;
12645
 
12646
- if (prefix.vendor === 'apple' && !prefix.isTouch) {
12647
- return prefix.css + prop;
12648
- }
12649
 
12650
- return prop;
12651
- }
 
 
 
 
 
 
 
 
 
12652
  };
12653
 
12654
- // https://caniuse.com/#search=transform
12655
-
12656
- var transform = {
12657
- noPrefill: ['transform'],
12658
- supportedProperty: function supportedProperty(prop, style, options) {
12659
- if (prop !== 'transform') return false;
12660
 
12661
- if (options.transform) {
12662
- return prop;
12663
- }
12664
 
12665
- return prefix.css + prop;
12666
- }
 
 
12667
  };
12668
 
12669
- // https://caniuse.com/#search=transition
12670
-
12671
- var transition = {
12672
- noPrefill: ['transition'],
12673
- supportedProperty: function supportedProperty(prop, style, options) {
12674
- if (prop !== 'transition') return false;
12675
 
12676
- if (options.transition) {
12677
- return prop;
12678
- }
12679
 
12680
- return prefix.css + prop;
12681
- }
 
 
 
12682
  };
12683
 
12684
- // https://caniuse.com/#search=writing-mode
12685
-
12686
- var writingMode = {
12687
- noPrefill: ['writing-mode'],
12688
- supportedProperty: function supportedProperty(prop) {
12689
- if (prop !== 'writing-mode') return false;
12690
 
12691
- if (prefix.js === 'Webkit' || prefix.js === 'ms' && prefix.browser !== 'edge') {
12692
- return prefix.css + prop;
12693
- }
12694
 
12695
- return prop;
12696
- }
 
 
 
 
 
 
 
12697
  };
12698
 
12699
- // https://caniuse.com/#search=user-select
12700
 
12701
- var userSelect = {
12702
- noPrefill: ['user-select'],
12703
- supportedProperty: function supportedProperty(prop) {
12704
- if (prop !== 'user-select') return false;
12705
 
12706
- if (prefix.js === 'Moz' || prefix.js === 'ms' || prefix.vendor === 'apple') {
12707
- return prefix.css + prop;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12708
  }
12709
-
12710
- return prop;
12711
- }
12712
  };
12713
 
12714
- // https://caniuse.com/#search=multicolumn
12715
- // https://github.com/postcss/autoprefixer/issues/491
12716
- // https://github.com/postcss/autoprefixer/issues/177
12717
-
12718
- var breakPropsOld = {
12719
- supportedProperty: function supportedProperty(prop, style) {
12720
- if (!/^break-/.test(prop)) return false;
12721
-
12722
- if (prefix.js === 'Webkit') {
12723
- var jsProp = "WebkitColumn" + pascalize(prop);
12724
- return jsProp in style ? prefix.css + "column-" + prop : false;
12725
- }
12726
-
12727
- if (prefix.js === 'Moz') {
12728
- var _jsProp = "page" + pascalize(prop);
12729
-
12730
- return _jsProp in style ? "page-" + prop : false;
12731
- }
12732
 
12733
- return false;
12734
- }
12735
- };
12736
 
12737
- // See https://github.com/postcss/autoprefixer/issues/324.
 
 
12738
 
12739
- var inlineLogicalOld = {
12740
- supportedProperty: function supportedProperty(prop, style) {
12741
- if (!/^(border|margin|padding)-inline/.test(prop)) return false;
12742
- if (prefix.js === 'Moz') return prop;
12743
- var newProp = prop.replace('-inline', '');
12744
- return prefix.js + pascalize(newProp) in style ? prefix.css + newProp : false;
12745
- }
12746
- };
12747
 
12748
- // Camelization is required because we can't test using.
12749
- // CSS syntax for e.g. in FF.
12750
 
12751
- var unprefixed = {
12752
- supportedProperty: function supportedProperty(prop, style) {
12753
- return camelize(prop) in style ? prop : false;
12754
- }
12755
- };
12756
 
12757
- var prefixed = {
12758
- supportedProperty: function supportedProperty(prop, style) {
12759
- var pascalized = pascalize(prop); // Return custom CSS variable without prefixing.
12760
 
12761
- if (prop[0] === '-') return prop; // Return already prefixed value without prefixing.
 
 
12762
 
12763
- if (prop[0] === '-' && prop[1] === '-') return prop;
12764
- if (prefix.js + pascalized in style) return prefix.css + prop; // Try webkit fallback.
 
 
12765
 
12766
- if (prefix.js !== 'Webkit' && "Webkit" + pascalized in style) return "-webkit-" + prop;
12767
- return false;
12768
- }
12769
- };
12770
 
12771
- // https://caniuse.com/#search=scroll-snap
12772
 
12773
- var scrollSnap = {
12774
- supportedProperty: function supportedProperty(prop) {
12775
- if (prop.substring(0, 11) !== 'scroll-snap') return false;
12776
 
12777
- if (prefix.js === 'ms') {
12778
- return "" + prefix.css + prop;
12779
- }
 
12780
 
12781
- return prop;
12782
- }
12783
- };
12784
 
12785
- // https://caniuse.com/#search=overscroll-behavior
 
 
 
 
 
 
 
 
 
 
 
 
12786
 
12787
- var overscrollBehavior = {
12788
- supportedProperty: function supportedProperty(prop) {
12789
- if (prop !== 'overscroll-behavior') return false;
12790
 
12791
- if (prefix.js === 'ms') {
12792
- return prefix.css + "scroll-chaining";
12793
- }
12794
 
12795
- return prop;
12796
- }
12797
- };
12798
 
12799
- var propMap = {
12800
- 'flex-grow': 'flex-positive',
12801
- 'flex-shrink': 'flex-negative',
12802
- 'flex-basis': 'flex-preferred-size',
12803
- 'justify-content': 'flex-pack',
12804
- order: 'flex-order',
12805
- 'align-items': 'flex-align',
12806
- 'align-content': 'flex-line-pack' // 'align-self' is handled by 'align-self' plugin.
12807
 
12808
- }; // Support old flex spec from 2012.
12809
 
12810
- var flex2012 = {
12811
- supportedProperty: function supportedProperty(prop, style) {
12812
- var newProp = propMap[prop];
12813
- if (!newProp) return false;
12814
- return prefix.js + pascalize(newProp) in style ? prefix.css + newProp : false;
12815
- }
12816
- };
12817
 
12818
- var propMap$1 = {
12819
- flex: 'box-flex',
12820
- 'flex-grow': 'box-flex',
12821
- 'flex-direction': ['box-orient', 'box-direction'],
12822
- order: 'box-ordinal-group',
12823
- 'align-items': 'box-align',
12824
- 'flex-flow': ['box-orient', 'box-direction'],
12825
- 'justify-content': 'box-pack'
12826
- };
12827
- var propKeys = Object.keys(propMap$1);
12828
 
12829
- var prefixCss = function prefixCss(p) {
12830
- return prefix.css + p;
12831
- }; // Support old flex spec from 2009.
12832
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12833
 
12834
- var flex2009 = {
12835
- supportedProperty: function supportedProperty(prop, style, _ref) {
12836
- var multiple = _ref.multiple;
 
 
 
 
 
12837
 
12838
- if (propKeys.indexOf(prop) > -1) {
12839
- var newProp = propMap$1[prop];
 
 
12840
 
12841
- if (!Array.isArray(newProp)) {
12842
- return prefix.js + pascalize(newProp) in style ? prefix.css + newProp : false;
 
 
 
 
 
 
 
12843
  }
 
12844
 
12845
- if (!multiple) return false;
12846
-
12847
- for (var i = 0; i < newProp.length; i++) {
12848
- if (!(prefix.js + pascalize(newProp[0]) in style)) {
12849
- return false;
 
 
 
12850
  }
12851
  }
 
12852
 
12853
- return newProp.map(prefixCss);
12854
- }
12855
-
12856
- return false;
12857
- }
12858
- };
12859
-
12860
- // plugins = [
12861
- // ...plugins,
12862
- // breakPropsOld,
12863
- // inlineLogicalOld,
12864
- // unprefixed,
12865
- // prefixed,
12866
- // scrollSnap,
12867
- // flex2012,
12868
- // flex2009
12869
- // ]
12870
- // Plugins without 'noPrefill' value, going last.
12871
- // 'flex-*' plugins should be at the bottom.
12872
- // 'flex2009' going after 'flex2012'.
12873
- // 'prefixed' going after 'unprefixed'
12874
 
12875
- var plugins = [appearence, colorAdjust, mask, textOrientation, transform, transition, writingMode, userSelect, breakPropsOld, inlineLogicalOld, unprefixed, prefixed, scrollSnap, overscrollBehavior, flex2012, flex2009];
12876
- var propertyDetectors = plugins.filter(function (p) {
12877
- return p.supportedProperty;
12878
- }).map(function (p) {
12879
- return p.supportedProperty;
12880
- });
12881
- var noPrefill = plugins.filter(function (p) {
12882
- return p.noPrefill;
12883
- }).reduce(function (a, p) {
12884
- a.push.apply(a, Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(p.noPrefill));
12885
- return a;
12886
- }, []);
 
12887
 
12888
- var el;
12889
- var cache = {};
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12890
 
12891
- if (is_in_browser__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"]) {
12892
- el = document.createElement('p'); // We test every property on vendor prefix requirement.
12893
- // Once tested, result is cached. It gives us up to 70% perf boost.
12894
- // http://jsperf.com/element-style-object-access-vs-plain-object
12895
- //
12896
- // Prefill cache with known css properties to reduce amount of
12897
- // properties we need to feature test at runtime.
12898
- // http://davidwalsh.name/vendor-prefix
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12899
 
12900
- var computed = window.getComputedStyle(document.documentElement, '');
 
 
 
 
 
 
 
 
 
 
 
12901
 
12902
- for (var key$1 in computed) {
12903
- // eslint-disable-next-line no-restricted-globals
12904
- if (!isNaN(key$1)) cache[computed[key$1]] = computed[key$1];
12905
- } // Properties that cannot be correctly detected using the
12906
- // cache prefill method.
 
 
 
 
 
 
 
12907
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12908
 
12909
- noPrefill.forEach(function (x) {
12910
- return delete cache[x];
12911
- });
12912
- }
12913
- /**
12914
- * Test if a property is supported, returns supported property with vendor
12915
- * prefix if required. Returns `false` if not supported.
12916
- *
12917
- * @param {String} prop dash separated
12918
- * @param {Object} [options]
12919
- * @return {String|Boolean}
12920
- * @api public
12921
- */
12922
 
 
 
12923
 
12924
- function supportedProperty(prop, options) {
12925
- if (options === void 0) {
12926
- options = {};
12927
- }
 
12928
 
12929
- // For server-side rendering.
12930
- if (!el) return prop; // Remove cache for benchmark tests or return property from the cache.
 
 
 
12931
 
12932
- if ( true && cache[prop] != null) {
12933
- return cache[prop];
12934
- } // Check if 'transition' or 'transform' natively supported in browser.
 
 
12935
 
 
 
 
 
 
12936
 
12937
- if (prop === 'transition' || prop === 'transform') {
12938
- options[prop] = prop in el.style;
12939
- } // Find a plugin for current prefix property.
 
 
12940
 
 
 
 
 
 
12941
 
12942
- for (var i = 0; i < propertyDetectors.length; i++) {
12943
- cache[prop] = propertyDetectors[i](prop, el.style, options); // Break loop, if value found.
 
 
 
12944
 
12945
- if (cache[prop]) break;
12946
- } // Reset styles for current property.
12947
- // Firefox can even throw an error for invalid properties, e.g., "0".
12948
 
 
 
12949
 
12950
- try {
12951
- el.style[prop] = '';
12952
- } catch (err) {
12953
- return false;
12954
- }
12955
 
12956
- return cache[prop];
12957
- }
 
 
 
 
 
 
 
12958
 
12959
- var cache$1 = {};
12960
- var transitionProperties = {
12961
- transition: 1,
12962
- 'transition-property': 1,
12963
- '-webkit-transition': 1,
12964
- '-webkit-transition-property': 1
12965
- };
12966
- var transPropsRegExp = /(^\s*[\w-]+)|, (\s*[\w-]+)(?![^()]*\))/g;
12967
- var el$1;
12968
- /**
12969
- * Returns prefixed value transition/transform if needed.
12970
- *
12971
- * @param {String} match
12972
- * @param {String} p1
12973
- * @param {String} p2
12974
- * @return {String}
12975
- * @api private
12976
- */
12977
 
12978
- function prefixTransitionCallback(match, p1, p2) {
12979
- if (p1 === 'var') return 'var';
12980
- if (p1 === 'all') return 'all';
12981
- if (p2 === 'all') return ', all';
12982
- var prefixedValue = p1 ? supportedProperty(p1) : ", " + supportedProperty(p2);
12983
- if (!prefixedValue) return p1 || p2;
12984
- return prefixedValue;
12985
- }
12986
 
12987
- if (is_in_browser__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"]) el$1 = document.createElement('p');
12988
- /**
12989
- * Returns prefixed value if needed. Returns `false` if value is not supported.
12990
- *
12991
- * @param {String} property
12992
- * @param {String} value
12993
- * @return {String|Boolean}
12994
- * @api public
12995
- */
12996
 
12997
- function supportedValue(property, value) {
12998
- // For server-side rendering.
12999
- var prefixedValue = value;
13000
- if (!el$1 || property === 'content') return value; // It is a string or a number as a string like '1'.
13001
- // We want only prefixable values here.
13002
- // eslint-disable-next-line no-restricted-globals
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13003
 
13004
- if (typeof prefixedValue !== 'string' || !isNaN(parseInt(prefixedValue, 10))) {
13005
- return prefixedValue;
13006
- } // Create cache key for current value.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13007
 
 
 
 
13008
 
13009
- var cacheKey = property + prefixedValue; // Remove cache for benchmark tests or return value from cache.
 
 
 
 
13010
 
13011
- if ( true && cache$1[cacheKey] != null) {
13012
- return cache$1[cacheKey];
13013
- } // IE can even throw an error in some cases, for e.g. style.content = 'bar'.
 
 
 
 
 
 
 
13014
 
 
 
 
 
 
 
13015
 
13016
- try {
13017
- // Test value as it is.
13018
- el$1.style[property] = prefixedValue;
13019
- } catch (err) {
13020
- // Return false if value not supported.
13021
- cache$1[cacheKey] = false;
13022
- return false;
13023
- } // If 'transition' or 'transition-property' property.
13024
 
 
13025
 
13026
- if (transitionProperties[property]) {
13027
- prefixedValue = prefixedValue.replace(transPropsRegExp, prefixTransitionCallback);
13028
- } else if (el$1.style[property] === '') {
13029
- // Value with a vendor prefix.
13030
- prefixedValue = prefix.css + prefixedValue; // Hardcode test to convert "flex" to "-ms-flexbox" for IE10.
13031
 
13032
- if (prefixedValue === '-ms-flex') el$1.style[property] = '-ms-flexbox'; // Test prefixed value.
 
 
13033
 
13034
- el$1.style[property] = prefixedValue; // Return false if value not supported.
13035
 
13036
- if (el$1.style[property] === '') {
13037
- cache$1[cacheKey] = false;
13038
- return false;
 
 
 
 
 
 
 
 
 
 
13039
  }
13040
- } // Reset styles for current property.
13041
-
13042
-
13043
- el$1.style[property] = ''; // Write current value to cache.
13044
-
13045
- cache$1[cacheKey] = prefixedValue;
13046
- return cache$1[cacheKey];
13047
  }
13048
 
13049
-
13050
 
13051
 
13052
  /***/ }),
13053
- /* 99 */
13054
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
13055
 
13056
- "use strict";
13057
- /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return fill; });
13058
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return urlEncode; });
13059
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return normalizeToSize; });
13060
- /* unused harmony export walk */
13061
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return normalize; });
13062
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return extractExceptionKeysForMessage; });
13063
- /* unused harmony export dropUndefinedKeys */
13064
- /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
13065
- /* harmony import */ var _is__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(44);
13066
- /* harmony import */ var _memo__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(509);
13067
- /* harmony import */ var _misc__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(39);
13068
- /* harmony import */ var _string__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(159);
13069
 
 
13070
 
13071
 
 
 
 
13072
 
 
13073
 
13074
  /**
13075
- * Wrap a given object method with a higher-order function
13076
  *
13077
- * @param source An object that contains a method to be wrapped.
13078
- * @param name A name of method to be wrapped.
13079
- * @param replacement A function that should be used to wrap a given method.
13080
- * @returns void
13081
  */
13082
- function fill(source, name, replacement) {
13083
- if (!(name in source)) {
13084
- return;
13085
- }
13086
- var original = source[name];
13087
- var wrapped = replacement(original);
13088
- // Make sure it's a function first, as we need to attach an empty prototype for `defineProperties` to work
13089
- // otherwise it'll throw "TypeError: Object.defineProperties called on non-object"
13090
- // tslint:disable-next-line:strict-type-predicates
13091
- if (typeof wrapped === 'function') {
13092
- try {
13093
- wrapped.prototype = wrapped.prototype || {};
13094
- Object.defineProperties(wrapped, {
13095
- __sentry_original__: {
13096
- enumerable: false,
13097
- value: original,
13098
- },
13099
- });
13100
- }
13101
- catch (_Oo) {
13102
- // This can throw if multiple fill happens on a global object like XMLHttpRequest
13103
- // Fixes https://github.com/getsentry/sentry-javascript/issues/2043
13104
- }
13105
- }
13106
- source[name] = wrapped;
13107
  }
 
 
 
 
 
 
 
 
 
 
 
 
13108
  /**
13109
- * Encodes given object into url-friendly format
13110
  *
13111
- * @param object An object that contains serializable values
13112
- * @returns string Encoded
13113
- */
13114
- function urlEncode(object) {
13115
- return Object.keys(object)
13116
- .map(
13117
- // tslint:disable-next-line:no-unsafe-any
13118
- function (key) { return encodeURIComponent(key) + "=" + encodeURIComponent(object[key]); })
13119
- .join('&');
13120
- }
13121
- /**
13122
- * Transforms any object into an object literal with all it's attributes
13123
- * attached to it.
13124
- *
13125
- * @param value Initial source that we have to transform in order to be usable by the serializer
13126
- */
13127
- function getWalkSource(value) {
13128
- if (Object(_is__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "d"])(value)) {
13129
- var error = value;
13130
- var err = {
13131
- message: error.message,
13132
- name: error.name,
13133
- stack: error.stack,
13134
- };
13135
- for (var i in error) {
13136
- if (Object.prototype.hasOwnProperty.call(error, i)) {
13137
- err[i] = error[i];
13138
- }
13139
- }
13140
- return err;
13141
- }
13142
- if (Object(_is__WEBPACK_IMPORTED_MODULE_1__[/* isEvent */ "f"])(value)) {
13143
- var event_1 = value;
13144
- var source = {};
13145
- source.type = event_1.type;
13146
- // Accessing event.target can throw (see getsentry/raven-js#838, #768)
13147
- try {
13148
- source.target = Object(_is__WEBPACK_IMPORTED_MODULE_1__[/* isElement */ "c"])(event_1.target)
13149
- ? Object(_misc__WEBPACK_IMPORTED_MODULE_3__[/* htmlTreeAsString */ "h"])(event_1.target)
13150
- : Object.prototype.toString.call(event_1.target);
13151
- }
13152
- catch (_oO) {
13153
- source.target = '<unknown>';
13154
- }
13155
- try {
13156
- source.currentTarget = Object(_is__WEBPACK_IMPORTED_MODULE_1__[/* isElement */ "c"])(event_1.currentTarget)
13157
- ? Object(_misc__WEBPACK_IMPORTED_MODULE_3__[/* htmlTreeAsString */ "h"])(event_1.currentTarget)
13158
- : Object.prototype.toString.call(event_1.currentTarget);
13159
- }
13160
- catch (_oO) {
13161
- source.currentTarget = '<unknown>';
13162
- }
13163
- // tslint:disable-next-line:strict-type-predicates
13164
- if (typeof CustomEvent !== 'undefined' && Object(_is__WEBPACK_IMPORTED_MODULE_1__[/* isInstanceOf */ "g"])(value, CustomEvent)) {
13165
- source.detail = event_1.detail;
13166
- }
13167
- for (var i in event_1) {
13168
- if (Object.prototype.hasOwnProperty.call(event_1, i)) {
13169
- source[i] = event_1;
13170
- }
13171
- }
13172
- return source;
13173
- }
13174
- return value;
13175
- }
13176
- /** Calculates bytes size of input string */
13177
- function utf8Length(value) {
13178
- // tslint:disable-next-line:no-bitwise
13179
- return ~-encodeURI(value).split(/%..|./).length;
13180
- }
13181
- /** Calculates bytes size of input object */
13182
- function jsonSize(value) {
13183
- return utf8Length(JSON.stringify(value));
13184
- }
13185
- /** JSDoc */
13186
- function normalizeToSize(object,
13187
- // Default Node.js REPL depth
13188
- depth,
13189
- // 100kB, as 200kB is max payload size, so half sounds reasonable
13190
- maxSize) {
13191
- if (depth === void 0) { depth = 3; }
13192
- if (maxSize === void 0) { maxSize = 100 * 1024; }
13193
- var serialized = normalize(object, depth);
13194
- if (jsonSize(serialized) > maxSize) {
13195
- return normalizeToSize(object, depth - 1, maxSize);
13196
- }
13197
- return serialized;
13198
- }
13199
- /** Transforms any input value into a string form, either primitive value or a type of the input */
13200
- function serializeValue(value) {
13201
- var type = Object.prototype.toString.call(value);
13202
- // Node.js REPL notation
13203
- if (typeof value === 'string') {
13204
- return value;
13205
- }
13206
- if (type === '[object Object]') {
13207
- return '[Object]';
13208
- }
13209
- if (type === '[object Array]') {
13210
- return '[Array]';
13211
- }
13212
- var normalized = normalizeValue(value);
13213
- return Object(_is__WEBPACK_IMPORTED_MODULE_1__[/* isPrimitive */ "i"])(normalized) ? normalized : type;
13214
- }
13215
- /**
13216
- * normalizeValue()
13217
- *
13218
- * Takes unserializable input and make it serializable friendly
13219
- *
13220
- * - translates undefined/NaN values to "[undefined]"/"[NaN]" respectively,
13221
- * - serializes Error objects
13222
- * - filter global objects
13223
- */
13224
- // tslint:disable-next-line:cyclomatic-complexity
13225
- function normalizeValue(value, key) {
13226
- if (key === 'domain' && value && typeof value === 'object' && value._events) {
13227
- return '[Domain]';
13228
- }
13229
- if (key === 'domainEmitter') {
13230
- return '[DomainEmitter]';
13231
- }
13232
- if (typeof global !== 'undefined' && value === global) {
13233
- return '[Global]';
13234
- }
13235
- if (typeof window !== 'undefined' && value === window) {
13236
- return '[Window]';
13237
- }
13238
- if (typeof document !== 'undefined' && value === document) {
13239
- return '[Document]';
13240
- }
13241
- // React's SyntheticEvent thingy
13242
- if (Object(_is__WEBPACK_IMPORTED_MODULE_1__[/* isSyntheticEvent */ "l"])(value)) {
13243
- return '[SyntheticEvent]';
13244
- }
13245
- // tslint:disable-next-line:no-tautology-expression
13246
- if (typeof value === 'number' && value !== value) {
13247
- return '[NaN]';
13248
- }
13249
- if (value === void 0) {
13250
- return '[undefined]';
13251
- }
13252
- if (typeof value === 'function') {
13253
- return "[Function: " + Object(_misc__WEBPACK_IMPORTED_MODULE_3__[/* getFunctionName */ "e"])(value) + "]";
13254
- }
13255
- return value;
13256
- }
13257
- /**
13258
- * Walks an object to perform a normalization on it
13259
- *
13260
- * @param key of object that's walked in current iteration
13261
- * @param value object to be walked
13262
- * @param depth Optional number indicating how deep should walking be performed
13263
- * @param memo Optional Memo class handling decycling
13264
- */
13265
- function walk(key, value, depth, memo) {
13266
- if (depth === void 0) { depth = +Infinity; }
13267
- if (memo === void 0) { memo = new _memo__WEBPACK_IMPORTED_MODULE_2__[/* Memo */ "a"](); }
13268
- // If we reach the maximum depth, serialize whatever has left
13269
- if (depth === 0) {
13270
- return serializeValue(value);
13271
- }
13272
- // If value implements `toJSON` method, call it and return early
13273
- // tslint:disable:no-unsafe-any
13274
- if (value !== null && value !== undefined && typeof value.toJSON === 'function') {
13275
- return value.toJSON();
13276
- }
13277
- // tslint:enable:no-unsafe-any
13278
- // If normalized value is a primitive, there are no branches left to walk, so we can just bail out, as theres no point in going down that branch any further
13279
- var normalized = normalizeValue(value, key);
13280
- if (Object(_is__WEBPACK_IMPORTED_MODULE_1__[/* isPrimitive */ "i"])(normalized)) {
13281
- return normalized;
13282
- }
13283
- // Create source that we will use for next itterations, either objectified error object (Error type with extracted keys:value pairs) or the input itself
13284
- var source = getWalkSource(value);
13285
- // Create an accumulator that will act as a parent for all future itterations of that branch
13286
- var acc = Array.isArray(value) ? [] : {};
13287
- // If we already walked that branch, bail out, as it's circular reference
13288
- if (memo.memoize(value)) {
13289
- return '[Circular ~]';
13290
- }
13291
- // Walk all keys of the source
13292
- for (var innerKey in source) {
13293
- // Avoid iterating over fields in the prototype if they've somehow been exposed to enumeration.
13294
- if (!Object.prototype.hasOwnProperty.call(source, innerKey)) {
13295
- continue;
13296
- }
13297
- // Recursively walk through all the child nodes
13298
- acc[innerKey] = walk(innerKey, source[innerKey], depth - 1, memo);
13299
- }
13300
- // Once walked through all the branches, remove the parent from memo storage
13301
- memo.unmemoize(value);
13302
- // Return accumulated values
13303
- return acc;
13304
- }
13305
- /**
13306
- * normalize()
13307
- *
13308
- * - Creates a copy to prevent original input mutation
13309
- * - Skip non-enumerablers
13310
- * - Calls `toJSON` if implemented
13311
- * - Removes circular references
13312
- * - Translates non-serializeable values (undefined/NaN/Functions) to serializable format
13313
- * - Translates known global objects/Classes to a string representations
13314
- * - Takes care of Error objects serialization
13315
- * - Optionally limit depth of final output
13316
- */
13317
- function normalize(input, depth) {
13318
- try {
13319
- // tslint:disable-next-line:no-unsafe-any
13320
- return JSON.parse(JSON.stringify(input, function (key, value) { return walk(key, value, depth); }));
13321
- }
13322
- catch (_oO) {
13323
- return '**non-serializable**';
13324
- }
13325
- }
13326
- /**
13327
- * Given any captured exception, extract its keys and create a sorted
13328
- * and truncated list that will be used inside the event message.
13329
- * eg. `Non-error exception captured with keys: foo, bar, baz`
13330
- */
13331
- function extractExceptionKeysForMessage(exception, maxLength) {
13332
- if (maxLength === void 0) { maxLength = 40; }
13333
- // tslint:disable:strict-type-predicates
13334
- var keys = Object.keys(getWalkSource(exception));
13335
- keys.sort();
13336
- if (!keys.length) {
13337
- return '[object has no keys]';
13338
- }
13339
- if (keys[0].length >= maxLength) {
13340
- return Object(_string__WEBPACK_IMPORTED_MODULE_4__[/* truncate */ "d"])(keys[0], maxLength);
13341
- }
13342
- for (var includedKeys = keys.length; includedKeys > 0; includedKeys--) {
13343
- var serialized = keys.slice(0, includedKeys).join(', ');
13344
- if (serialized.length > maxLength) {
13345
- continue;
13346
- }
13347
- if (includedKeys === keys.length) {
13348
- return serialized;
13349
- }
13350
- return Object(_string__WEBPACK_IMPORTED_MODULE_4__[/* truncate */ "d"])(serialized, maxLength);
13351
- }
13352
- return '';
13353
- }
13354
- /**
13355
- * Given any object, return the new object with removed keys that value was `undefined`.
13356
- * Works recursively on objects and arrays.
13357
- */
13358
- function dropUndefinedKeys(val) {
13359
- var e_1, _a;
13360
- if (Object(_is__WEBPACK_IMPORTED_MODULE_1__[/* isPlainObject */ "h"])(val)) {
13361
- var obj = val;
13362
- var rv = {};
13363
- try {
13364
- for (var _b = tslib__WEBPACK_IMPORTED_MODULE_0__[/* __values */ "e"](Object.keys(obj)), _c = _b.next(); !_c.done; _c = _b.next()) {
13365
- var key = _c.value;
13366
- if (typeof obj[key] !== 'undefined') {
13367
- rv[key] = dropUndefinedKeys(obj[key]);
13368
- }
13369
- }
13370
- }
13371
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
13372
- finally {
13373
- try {
13374
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
13375
- }
13376
- finally { if (e_1) throw e_1.error; }
13377
- }
13378
- return rv;
13379
- }
13380
- if (Array.isArray(val)) {
13381
- return val.map(dropUndefinedKeys);
13382
- }
13383
- return val;
13384
- }
13385
- //# sourceMappingURL=object.js.map
13386
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(49)))
13387
-
13388
- /***/ }),
13389
- /* 100 */
13390
- /***/ (function(module, exports, __webpack_require__) {
13391
-
13392
- var isFunction = __webpack_require__(136),
13393
- isLength = __webpack_require__(174);
13394
-
13395
- /**
13396
- * Checks if `value` is array-like. A value is considered array-like if it's
13397
- * not a function and has a `value.length` that's an integer greater than or
13398
- * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
13399
  *
13400
  * @static
13401
  * @memberOf _
13402
- * @since 4.0.0
13403
- * @category Lang
13404
- * @param {*} value The value to check.
13405
- * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
13406
  * @example
13407
  *
13408
- * _.isArrayLike([1, 2, 3]);
13409
- * // => true
13410
- *
13411
- * _.isArrayLike(document.body.children);
13412
- * // => true
13413
  *
13414
- * _.isArrayLike('abc');
13415
- * // => true
13416
  *
13417
- * _.isArrayLike(_.noop);
13418
- * // => false
13419
  */
13420
- function isArrayLike(value) {
13421
- return value != null && isLength(value.length) && !isFunction(value);
13422
  }
13423
 
13424
- module.exports = isArrayLike;
13425
 
13426
 
13427
  /***/ }),
13428
- /* 101 */
13429
  /***/ (function(module, exports, __webpack_require__) {
13430
 
13431
- // 7.1.1 ToPrimitive(input [, PreferredType])
13432
- var isObject = __webpack_require__(32);
13433
- // instead of the ES6 spec version, we didn't implement @@toPrimitive case
13434
- // and the second argument - flag - preferred type is a string
13435
- module.exports = function (it, S) {
13436
- if (!isObject(it)) return it;
13437
- var fn, val;
13438
- if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
13439
- if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
13440
- if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
13441
- throw TypeError("Can't convert object to primitive value");
13442
- };
13443
-
13444
-
13445
- /***/ }),
13446
- /* 102 */
13447
- /***/ (function(module, exports) {
13448
-
13449
- // 7.2.1 RequireObjectCoercible(argument)
13450
- module.exports = function (it) {
13451
- if (it == undefined) throw TypeError("Can't call method on " + it);
13452
- return it;
13453
- };
13454
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13455
 
13456
- /***/ }),
13457
- /* 103 */
13458
- /***/ (function(module, exports) {
13459
 
13460
- // 7.1.4 ToInteger
13461
- var ceil = Math.ceil;
13462
- var floor = Math.floor;
13463
- module.exports = function (it) {
13464
- return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
13465
- };
13466
 
 
 
 
13467
 
13468
- /***/ }),
13469
- /* 104 */
13470
- /***/ (function(module, exports, __webpack_require__) {
 
 
13471
 
13472
- // most Object methods by ES6 should accept primitives
13473
- var $export = __webpack_require__(7);
13474
- var core = __webpack_require__(89);
13475
- var fails = __webpack_require__(28);
13476
- module.exports = function (KEY, exec) {
13477
- var fn = (core.Object || {})[KEY] || Object[KEY];
13478
- var exp = {};
13479
- exp[KEY] = exec(fn);
13480
- $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
13481
- };
13482
 
 
 
 
 
 
13483
 
13484
- /***/ }),
13485
- /* 105 */
13486
- /***/ (function(module, exports, __webpack_require__) {
13487
 
13488
- // 0 -> Array#forEach
13489
- // 1 -> Array#map
13490
- // 2 -> Array#filter
13491
- // 3 -> Array#some
13492
- // 4 -> Array#every
13493
- // 5 -> Array#find
13494
- // 6 -> Array#findIndex
13495
- var ctx = __webpack_require__(90);
13496
- var IObject = __webpack_require__(213);
13497
- var toObject = __webpack_require__(55);
13498
- var toLength = __webpack_require__(47);
13499
- var asc = __webpack_require__(377);
13500
- module.exports = function (TYPE, $create) {
13501
- var IS_MAP = TYPE == 1;
13502
- var IS_FILTER = TYPE == 2;
13503
- var IS_SOME = TYPE == 3;
13504
- var IS_EVERY = TYPE == 4;
13505
- var IS_FIND_INDEX = TYPE == 6;
13506
- var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
13507
- var create = $create || asc;
13508
- return function ($this, callbackfn, that) {
13509
- var O = toObject($this);
13510
- var self = IObject(O);
13511
- var f = ctx(callbackfn, that, 3);
13512
- var length = toLength(self.length);
13513
  var index = 0;
13514
- var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
13515
- var val, res;
13516
- for (;length > index; index++) if (NO_HOLES || index in self) {
13517
- val = self[index];
13518
- res = f(val, index, O);
13519
- if (TYPE) {
13520
- if (IS_MAP) result[index] = res; // map
13521
- else if (res) switch (TYPE) {
13522
- case 3: return true; // some
13523
- case 5: return val; // find
13524
- case 6: return index; // findIndex
13525
- case 2: result.push(val); // filter
13526
- } else if (IS_EVERY) return false; // every
13527
- }
13528
- }
13529
- return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
13530
  };
13531
- };
13532
-
13533
-
13534
- /***/ }),
13535
- /* 106 */
13536
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
13537
-
13538
- "use strict";
13539
-
13540
- // EXPORTS
13541
- __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _slicedToArray; });
13542
-
13543
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
13544
- var arrayWithHoles = __webpack_require__(493);
13545
-
13546
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
13547
- function _iterableToArrayLimit(arr, i) {
13548
- if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) {
13549
- return;
13550
- }
13551
-
13552
- var _arr = [];
13553
- var _n = true;
13554
- var _d = false;
13555
- var _e = undefined;
13556
 
13557
- try {
13558
- for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
13559
- _arr.push(_s.value);
13560
 
13561
- if (i && _arr.length === i) break;
 
 
 
 
 
 
 
 
 
 
13562
  }
13563
- } catch (err) {
13564
- _d = true;
13565
- _e = err;
13566
- } finally {
13567
- try {
13568
- if (!_n && _i["return"] != null) _i["return"]();
13569
- } finally {
13570
- if (_d) throw _e;
13571
  }
13572
- }
13573
-
13574
- return _arr;
13575
- }
13576
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
13577
- var nonIterableRest = __webpack_require__(494);
13578
-
13579
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
13580
-
13581
 
 
 
 
 
 
 
 
13582
 
13583
- function _slicedToArray(arr, i) {
13584
- return Object(arrayWithHoles["a" /* default */])(arr) || _iterableToArrayLimit(arr, i) || Object(nonIterableRest["a" /* default */])();
13585
- }
13586
 
13587
- /***/ }),
13588
- /* 107 */
13589
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
13590
 
13591
- "use strict";
13592
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return createChainedFunction; });
13593
- /**
13594
- * Safe chained function
13595
- *
13596
- * Will only create a new function if needed,
13597
- * otherwise will pass back existing functions or null.
13598
- *
13599
- * @param {function} functions to chain
13600
- * @returns {function|null}
13601
- */
13602
- function createChainedFunction() {
13603
- for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {
13604
- funcs[_key] = arguments[_key];
13605
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13606
 
13607
- return funcs.reduce(function (acc, func) {
13608
- if (func == null) {
13609
- return acc;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13610
  }
 
13611
 
13612
- if (false) {}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13613
 
13614
- return function chainedFunction() {
13615
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
13616
- args[_key2] = arguments[_key2];
13617
- }
13618
 
13619
- acc.apply(this, args);
13620
- func.apply(this, args);
 
 
 
 
 
 
13621
  };
13622
- }, function () {});
13623
- }
13624
 
13625
- /***/ }),
13626
- /* 108 */
13627
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13628
 
13629
- "use strict";
13630
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return useFormControl; });
13631
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
13632
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13633
 
13634
- /**
13635
- * @ignore - internal component.
13636
- */
 
 
13637
 
13638
- var FormControlContext = react__WEBPACK_IMPORTED_MODULE_0__["createContext"]();
13639
 
13640
- if (false) {}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13641
 
13642
- function useFormControl() {
13643
- return react__WEBPACK_IMPORTED_MODULE_0__["useContext"](FormControlContext);
13644
- }
13645
- /* harmony default export */ __webpack_exports__["a"] = (FormControlContext);
13646
 
13647
  /***/ }),
13648
- /* 109 */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13649
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
13650
 
13651
  "use strict";
13652
- /* unused harmony export styles */
13653
- /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);
13654
- /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
 
 
 
13655
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
13656
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
13657
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5);
13658
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_3__);
13659
- /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3);
13660
- /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(8);
13661
- /* harmony import */ var _styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(15);
13662
- /* harmony import */ var _ButtonBase__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(395);
13663
- /* harmony import */ var _utils_capitalize__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(10);
13664
 
13665
 
13666
 
@@ -13670,6193 +12932,5393 @@ function useFormControl() {
13670
 
13671
 
13672
 
13673
- var styles = function styles(theme) {
13674
- return {
13675
- /* Styles applied to the root element. */
13676
- root: Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])({}, theme.typography.button, {
13677
- boxSizing: 'border-box',
13678
- minWidth: 64,
13679
- padding: '6px 16px',
13680
- borderRadius: theme.shape.borderRadius,
13681
- color: theme.palette.text.primary,
13682
- transition: theme.transitions.create(['background-color', 'box-shadow', 'border'], {
13683
- duration: theme.transitions.duration.short
13684
- }),
13685
- '&:hover': {
13686
- textDecoration: 'none',
13687
- backgroundColor: Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.text.primary, theme.palette.action.hoverOpacity),
13688
- // Reset on touch devices, it doesn't add specificity
13689
- '@media (hover: none)': {
13690
- backgroundColor: 'transparent'
13691
- },
13692
- '&$disabled': {
13693
- backgroundColor: 'transparent'
13694
- }
13695
- },
13696
- '&$disabled': {
13697
- color: theme.palette.action.disabled
13698
- }
13699
- }),
13700
 
13701
- /* Styles applied to the span element that wraps the children. */
13702
- label: {
13703
- width: '100%',
13704
- // Ensure the correct width for iOS Safari
13705
- display: 'inherit',
13706
- alignItems: 'inherit',
13707
- justifyContent: 'inherit'
13708
- },
13709
 
13710
- /* Styles applied to the root element if `variant="text"`. */
13711
- text: {
13712
- padding: '6px 8px'
13713
- },
13714
 
13715
- /* Styles applied to the root element if `variant="text"` and `color="primary"`. */
13716
- textPrimary: {
13717
- color: theme.palette.primary.main,
13718
- '&:hover': {
13719
- backgroundColor: Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.primary.main, theme.palette.action.hoverOpacity),
13720
- // Reset on touch devices, it doesn't add specificity
13721
- '@media (hover: none)': {
13722
- backgroundColor: 'transparent'
13723
- }
13724
- }
13725
- },
13726
 
13727
- /* Styles applied to the root element if `variant="text"` and `color="secondary"`. */
13728
- textSecondary: {
13729
- color: theme.palette.secondary.main,
13730
- '&:hover': {
13731
- backgroundColor: Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.secondary.main, theme.palette.action.hoverOpacity),
13732
- // Reset on touch devices, it doesn't add specificity
13733
- '@media (hover: none)': {
13734
- backgroundColor: 'transparent'
13735
- }
13736
- }
13737
- },
13738
 
13739
- /* Styles applied to the root element if `variant="outlined"`. */
13740
- outlined: {
13741
- padding: '5px 15px',
13742
- border: "1px solid ".concat(theme.palette.type === 'light' ? 'rgba(0, 0, 0, 0.23)' : 'rgba(255, 255, 255, 0.23)'),
13743
- '&$disabled': {
13744
- border: "1px solid ".concat(theme.palette.action.disabledBackground)
13745
- }
13746
- },
13747
 
13748
- /* Styles applied to the root element if `variant="outlined"` and `color="primary"`. */
13749
- outlinedPrimary: {
13750
- color: theme.palette.primary.main,
13751
- border: "1px solid ".concat(Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.primary.main, 0.5)),
13752
- '&:hover': {
13753
- border: "1px solid ".concat(theme.palette.primary.main),
13754
- backgroundColor: Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.primary.main, theme.palette.action.hoverOpacity),
13755
- // Reset on touch devices, it doesn't add specificity
13756
- '@media (hover: none)': {
13757
- backgroundColor: 'transparent'
13758
- }
13759
- }
13760
- },
13761
 
13762
- /* Styles applied to the root element if `variant="outlined"` and `color="secondary"`. */
13763
- outlinedSecondary: {
13764
- color: theme.palette.secondary.main,
13765
- border: "1px solid ".concat(Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.secondary.main, 0.5)),
13766
- '&:hover': {
13767
- border: "1px solid ".concat(theme.palette.secondary.main),
13768
- backgroundColor: Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.secondary.main, theme.palette.action.hoverOpacity),
13769
- // Reset on touch devices, it doesn't add specificity
13770
- '@media (hover: none)': {
13771
- backgroundColor: 'transparent'
13772
- }
13773
- },
13774
- '&$disabled': {
13775
- border: "1px solid ".concat(theme.palette.action.disabled)
13776
- }
13777
- },
13778
 
13779
- /* Styles applied to the root element if `variant="contained"`. */
13780
- contained: {
13781
- color: theme.palette.getContrastText(theme.palette.grey[300]),
13782
- backgroundColor: theme.palette.grey[300],
13783
- boxShadow: theme.shadows[2],
13784
- '&:hover': {
13785
- backgroundColor: theme.palette.grey.A100,
13786
- boxShadow: theme.shadows[4],
13787
- // Reset on touch devices, it doesn't add specificity
13788
- '@media (hover: none)': {
13789
- boxShadow: theme.shadows[2],
13790
- backgroundColor: theme.palette.grey[300]
13791
- },
13792
- '&$disabled': {
13793
- backgroundColor: theme.palette.action.disabledBackground
13794
- }
13795
- },
13796
- '&$focusVisible': {
13797
- boxShadow: theme.shadows[6]
13798
- },
13799
- '&:active': {
13800
- boxShadow: theme.shadows[8]
13801
- },
13802
- '&$disabled': {
13803
- color: theme.palette.action.disabled,
13804
- boxShadow: theme.shadows[0],
13805
- backgroundColor: theme.palette.action.disabledBackground
13806
- }
13807
- },
13808
 
13809
- /* Styles applied to the root element if `variant="contained"` and `color="primary"`. */
13810
- containedPrimary: {
13811
- color: theme.palette.primary.contrastText,
13812
- backgroundColor: theme.palette.primary.main,
13813
- '&:hover': {
13814
- backgroundColor: theme.palette.primary.dark,
13815
- // Reset on touch devices, it doesn't add specificity
13816
- '@media (hover: none)': {
13817
- backgroundColor: theme.palette.primary.main
13818
- }
13819
- }
13820
- },
13821
 
13822
- /* Styles applied to the root element if `variant="contained"` and `color="secondary"`. */
13823
- containedSecondary: {
13824
- color: theme.palette.secondary.contrastText,
13825
- backgroundColor: theme.palette.secondary.main,
13826
- '&:hover': {
13827
- backgroundColor: theme.palette.secondary.dark,
13828
- // Reset on touch devices, it doesn't add specificity
13829
- '@media (hover: none)': {
13830
- backgroundColor: theme.palette.secondary.main
13831
- }
13832
- }
13833
- },
13834
 
13835
- /* Styles applied to the root element if `disableElevation={true}`. */
13836
- disableElevation: {
13837
- boxShadow: 'none',
13838
- '&:hover': {
13839
- boxShadow: 'none'
13840
- },
13841
- '&$focusVisible': {
13842
- boxShadow: 'none'
13843
- },
13844
- '&:active': {
13845
- boxShadow: 'none'
13846
- },
13847
- '&$disabled': {
13848
- boxShadow: 'none'
13849
- }
13850
- },
13851
 
13852
- /* Pseudo-class applied to the ButtonBase root element if the button is keyboard focused. */
13853
- focusVisible: {},
 
 
13854
 
13855
- /* Pseudo-class applied to the root element if `disabled={true}`. */
13856
- disabled: {},
13857
 
13858
- /* Styles applied to the root element if `color="inherit"`. */
13859
- colorInherit: {
13860
- color: 'inherit',
13861
- borderColor: 'currentColor'
13862
- },
13863
 
13864
- /* Styles applied to the root element if `size="small"` and `variant="text"`. */
13865
- textSizeSmall: {
13866
- padding: '4px 5px',
13867
- fontSize: theme.typography.pxToRem(13)
13868
- },
13869
 
13870
- /* Styles applied to the root element if `size="large"` and `variant="text"`. */
13871
- textSizeLarge: {
13872
- padding: '8px 11px',
13873
- fontSize: theme.typography.pxToRem(15)
13874
- },
13875
 
13876
- /* Styles applied to the root element if `size="small"` and `variant="outlined"`. */
13877
- outlinedSizeSmall: {
13878
- padding: '3px 9px',
13879
- fontSize: theme.typography.pxToRem(13)
13880
- },
 
13881
 
13882
- /* Styles applied to the root element if `size="large"` and `variant="outlined"`. */
13883
- outlinedSizeLarge: {
13884
- padding: '7px 21px',
13885
- fontSize: theme.typography.pxToRem(15)
13886
- },
13887
 
13888
- /* Styles applied to the root element if `size="small"` and `variant="contained"`. */
13889
- containedSizeSmall: {
13890
- padding: '4px 10px',
13891
- fontSize: theme.typography.pxToRem(13)
13892
- },
13893
 
13894
- /* Styles applied to the root element if `size="large"` and `variant="contained"`. */
13895
- containedSizeLarge: {
13896
- padding: '8px 22px',
13897
- fontSize: theme.typography.pxToRem(15)
13898
- },
 
13899
 
13900
- /* Styles applied to the root element if `size="small"`. */
13901
- sizeSmall: {},
 
13902
 
13903
- /* Styles applied to the root element if `size="large"`. */
13904
- sizeLarge: {},
13905
 
13906
- /* Styles applied to the root element if `fullWidth={true}`. */
13907
- fullWidth: {
13908
- width: '100%'
13909
- },
13910
 
13911
- /* Styles applied to the startIcon element if supplied. */
13912
- startIcon: {
13913
- display: 'inherit',
13914
- marginRight: 8,
13915
- marginLeft: -4,
13916
- '&$iconSizeSmall': {
13917
- marginLeft: -2
13918
- }
13919
- },
13920
 
13921
- /* Styles applied to the endIcon element if supplied. */
13922
- endIcon: {
13923
- display: 'inherit',
13924
- marginRight: -4,
13925
- marginLeft: 8,
13926
- '&$iconSizeSmall': {
13927
- marginRight: -2
13928
- }
13929
- },
13930
 
13931
- /* Styles applied to the icon element if supplied and `size="small"`. */
13932
- iconSizeSmall: {
13933
- '& > *:first-child': {
13934
- fontSize: 18
13935
- }
13936
- },
13937
 
13938
- /* Styles applied to the icon element if supplied and `size="medium"`. */
13939
- iconSizeMedium: {
13940
- '& > *:first-child': {
13941
- fontSize: 20
 
 
 
13942
  }
13943
- },
13944
 
13945
- /* Styles applied to the icon element if supplied and `size="large"`. */
13946
- iconSizeLarge: {
13947
- '& > *:first-child': {
13948
- fontSize: 22
13949
- }
 
 
 
13950
  }
13951
- };
13952
- };
13953
- var Button = react__WEBPACK_IMPORTED_MODULE_2__["forwardRef"](function Button(props, ref) {
13954
- var children = props.children,
13955
- classes = props.classes,
13956
- className = props.className,
13957
- _props$color = props.color,
13958
- color = _props$color === void 0 ? 'default' : _props$color,
13959
- _props$component = props.component,
13960
- component = _props$component === void 0 ? 'button' : _props$component,
13961
- _props$disabled = props.disabled,
13962
- disabled = _props$disabled === void 0 ? false : _props$disabled,
13963
- _props$disableElevati = props.disableElevation,
13964
- disableElevation = _props$disableElevati === void 0 ? false : _props$disableElevati,
13965
- _props$disableFocusRi = props.disableFocusRipple,
13966
- disableFocusRipple = _props$disableFocusRi === void 0 ? false : _props$disableFocusRi,
13967
- endIconProp = props.endIcon,
13968
- focusVisibleClassName = props.focusVisibleClassName,
13969
- _props$fullWidth = props.fullWidth,
13970
- fullWidth = _props$fullWidth === void 0 ? false : _props$fullWidth,
13971
- _props$size = props.size,
13972
- size = _props$size === void 0 ? 'medium' : _props$size,
13973
- startIconProp = props.startIcon,
13974
- _props$type = props.type,
13975
- type = _props$type === void 0 ? 'button' : _props$type,
13976
- _props$variant = props.variant,
13977
- variant = _props$variant === void 0 ? 'text' : _props$variant,
13978
- other = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(props, ["children", "classes", "className", "color", "component", "disabled", "disableElevation", "disableFocusRipple", "endIcon", "focusVisibleClassName", "fullWidth", "size", "startIcon", "type", "variant"]);
13979
 
13980
- var startIcon = startIconProp && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("span", {
13981
- className: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.startIcon, classes["iconSize".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])(size))])
13982
- }, startIconProp);
13983
- var endIcon = endIconProp && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("span", {
13984
- className: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.endIcon, classes["iconSize".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])(size))])
13985
- }, endIconProp);
13986
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"](_ButtonBase__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])({
13987
- className: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.root, classes[variant], className, color === 'inherit' ? classes.colorInherit : color !== 'default' && classes["".concat(variant).concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])(color))], size !== 'medium' && [classes["".concat(variant, "Size").concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])(size))], classes["size".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])(size))]], disableElevation && classes.disableElevation, disabled && classes.disabled, fullWidth && classes.fullWidth),
13988
- component: component,
13989
- disabled: disabled,
13990
- focusRipple: !disableFocusRipple,
13991
- focusVisibleClassName: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.focusVisible, focusVisibleClassName),
13992
- ref: ref,
13993
- type: type
13994
- }, other), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("span", {
13995
- className: classes.label
13996
- }, startIcon, children, endIcon));
13997
- });
13998
- false ? undefined : void 0;
13999
- /* harmony default export */ __webpack_exports__["a"] = (Object(_styles_withStyles__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(styles, {
14000
- name: 'MuiButton'
14001
- })(Button));
14002
 
14003
- /***/ }),
14004
- /* 110 */
14005
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
14006
 
14007
- var listCacheClear = __webpack_require__(294),
14008
- listCacheDelete = __webpack_require__(295),
14009
- listCacheGet = __webpack_require__(296),
14010
- listCacheHas = __webpack_require__(297),
14011
- listCacheSet = __webpack_require__(298);
14012
 
 
14013
  /**
14014
- * Creates an list cache object.
14015
- *
14016
- * @private
14017
- * @constructor
14018
- * @param {Array} [entries] The key-value pairs to cache.
14019
  */
14020
- function ListCache(entries) {
14021
- var index = -1,
14022
- length = entries == null ? 0 : entries.length;
14023
-
14024
- this.clear();
14025
- while (++index < length) {
14026
- var entry = entries[index];
14027
- this.set(entry[0], entry[1]);
14028
- }
14029
- }
14030
 
14031
- // Add methods to `ListCache`.
14032
- ListCache.prototype.clear = listCacheClear;
14033
- ListCache.prototype['delete'] = listCacheDelete;
14034
- ListCache.prototype.get = listCacheGet;
14035
- ListCache.prototype.has = listCacheHas;
14036
- ListCache.prototype.set = listCacheSet;
14037
 
14038
- module.exports = ListCache;
 
 
 
 
 
 
14039
 
 
 
 
 
 
14040
 
14041
- /***/ }),
14042
- /* 111 */
14043
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
14044
 
14045
- var eq = __webpack_require__(84);
14046
 
14047
- /**
14048
- * Gets the index at which the `key` is found in `array` of key-value pairs.
14049
- *
14050
- * @private
14051
- * @param {Array} array The array to inspect.
14052
- * @param {*} key The key to search for.
14053
- * @returns {number} Returns the index of the matched value, else `-1`.
14054
- */
14055
- function assocIndexOf(array, key) {
14056
- var length = array.length;
14057
- while (length--) {
14058
- if (eq(array[length][0], key)) {
14059
- return length;
14060
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14061
  }
14062
- return -1;
 
 
 
14063
  }
 
 
 
14064
 
14065
- module.exports = assocIndexOf;
14066
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14067
 
14068
- /***/ }),
14069
- /* 112 */
14070
- /***/ (function(module, exports, __webpack_require__) {
 
 
14071
 
14072
- var getNative = __webpack_require__(85);
 
 
 
 
 
 
 
 
 
14073
 
14074
- /* Built-in method references that are verified to be native. */
14075
- var nativeCreate = getNative(Object, 'create');
 
 
 
 
14076
 
14077
- module.exports = nativeCreate;
14078
 
 
 
 
 
 
14079
 
14080
- /***/ }),
14081
- /* 113 */
14082
- /***/ (function(module, exports, __webpack_require__) {
14083
 
14084
- var isKeyable = __webpack_require__(318);
14085
 
14086
- /**
14087
- * Gets the data for `map`.
14088
- *
14089
- * @private
14090
- * @param {Object} map The map to query.
14091
- * @param {string} key The reference key.
14092
- * @returns {*} Returns the map data.
14093
- */
14094
- function getMapData(map, key) {
14095
- var data = map.__data__;
14096
- return isKeyable(key)
14097
- ? data[typeof key == 'string' ? 'string' : 'hash']
14098
- : data.map;
14099
- }
14100
 
14101
- module.exports = getMapData;
14102
 
14103
 
14104
  /***/ }),
14105
- /* 114 */
14106
- /***/ (function(module, exports, __webpack_require__) {
14107
 
14108
  "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
14109
 
14110
- if (__webpack_require__(45)) {
14111
- var LIBRARY = __webpack_require__(129);
14112
- var global = __webpack_require__(25);
14113
- var fails = __webpack_require__(28);
14114
- var $export = __webpack_require__(7);
14115
- var $typed = __webpack_require__(260);
14116
- var $buffer = __webpack_require__(383);
14117
- var ctx = __webpack_require__(90);
14118
- var anInstance = __webpack_require__(150);
14119
- var propertyDesc = __webpack_require__(143);
14120
- var hide = __webpack_require__(68);
14121
- var redefineAll = __webpack_require__(152);
14122
- var toInteger = __webpack_require__(103);
14123
- var toLength = __webpack_require__(47);
14124
- var toIndex = __webpack_require__(482);
14125
- var toAbsoluteIndex = __webpack_require__(146);
14126
- var toPrimitive = __webpack_require__(101);
14127
- var has = __webpack_require__(74);
14128
- var classof = __webpack_require__(215);
14129
- var isObject = __webpack_require__(32);
14130
- var toObject = __webpack_require__(55);
14131
- var isArrayIter = __webpack_require__(374);
14132
- var create = __webpack_require__(147);
14133
- var getPrototypeOf = __webpack_require__(77);
14134
- var gOPN = __webpack_require__(148).f;
14135
- var getIterFn = __webpack_require__(376);
14136
- var uid = __webpack_require__(144);
14137
- var wks = __webpack_require__(40);
14138
- var createArrayMethod = __webpack_require__(105);
14139
- var createArrayIncludes = __webpack_require__(250);
14140
- var speciesConstructor = __webpack_require__(257);
14141
- var ArrayIterators = __webpack_require__(379);
14142
- var Iterators = __webpack_require__(182);
14143
- var $iterDetect = __webpack_require__(254);
14144
- var setSpecies = __webpack_require__(149);
14145
- var arrayFill = __webpack_require__(378);
14146
- var arrayCopyWithin = __webpack_require__(472);
14147
- var $DP = __webpack_require__(46);
14148
- var $GOPD = __webpack_require__(76);
14149
- var dP = $DP.f;
14150
- var gOPD = $GOPD.f;
14151
- var RangeError = global.RangeError;
14152
- var TypeError = global.TypeError;
14153
- var Uint8Array = global.Uint8Array;
14154
- var ARRAY_BUFFER = 'ArrayBuffer';
14155
- var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER;
14156
- var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
14157
- var PROTOTYPE = 'prototype';
14158
- var ArrayProto = Array[PROTOTYPE];
14159
- var $ArrayBuffer = $buffer.ArrayBuffer;
14160
- var $DataView = $buffer.DataView;
14161
- var arrayForEach = createArrayMethod(0);
14162
- var arrayFilter = createArrayMethod(2);
14163
- var arraySome = createArrayMethod(3);
14164
- var arrayEvery = createArrayMethod(4);
14165
- var arrayFind = createArrayMethod(5);
14166
- var arrayFindIndex = createArrayMethod(6);
14167
- var arrayIncludes = createArrayIncludes(true);
14168
- var arrayIndexOf = createArrayIncludes(false);
14169
- var arrayValues = ArrayIterators.values;
14170
- var arrayKeys = ArrayIterators.keys;
14171
- var arrayEntries = ArrayIterators.entries;
14172
- var arrayLastIndexOf = ArrayProto.lastIndexOf;
14173
- var arrayReduce = ArrayProto.reduce;
14174
- var arrayReduceRight = ArrayProto.reduceRight;
14175
- var arrayJoin = ArrayProto.join;
14176
- var arraySort = ArrayProto.sort;
14177
- var arraySlice = ArrayProto.slice;
14178
- var arrayToString = ArrayProto.toString;
14179
- var arrayToLocaleString = ArrayProto.toLocaleString;
14180
- var ITERATOR = wks('iterator');
14181
- var TAG = wks('toStringTag');
14182
- var TYPED_CONSTRUCTOR = uid('typed_constructor');
14183
- var DEF_CONSTRUCTOR = uid('def_constructor');
14184
- var ALL_CONSTRUCTORS = $typed.CONSTR;
14185
- var TYPED_ARRAY = $typed.TYPED;
14186
- var VIEW = $typed.VIEW;
14187
- var WRONG_LENGTH = 'Wrong length!';
14188
 
14189
- var $map = createArrayMethod(1, function (O, length) {
14190
- return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);
14191
- });
14192
 
14193
- var LITTLE_ENDIAN = fails(function () {
14194
- // eslint-disable-next-line no-undef
14195
- return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;
14196
- });
14197
 
14198
- var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () {
14199
- new Uint8Array(1).set({});
14200
- });
14201
 
14202
- var toOffset = function (it, BYTES) {
14203
- var offset = toInteger(it);
14204
- if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!');
14205
- return offset;
14206
- };
14207
 
14208
- var validate = function (it) {
14209
- if (isObject(it) && TYPED_ARRAY in it) return it;
14210
- throw TypeError(it + ' is not a typed array!');
14211
- };
14212
 
14213
- var allocate = function (C, length) {
14214
- if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) {
14215
- throw TypeError('It is not a typed array constructor!');
14216
- } return new C(length);
14217
- };
14218
 
14219
- var speciesFromList = function (O, list) {
14220
- return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);
14221
- };
14222
 
14223
- var fromList = function (C, list) {
14224
- var index = 0;
14225
- var length = list.length;
14226
- var result = allocate(C, length);
14227
- while (length > index) result[index] = list[index++];
14228
- return result;
14229
- };
14230
 
14231
- var addGetter = function (it, key, internal) {
14232
- dP(it, key, { get: function () { return this._d[internal]; } });
14233
- };
14234
 
14235
- var $from = function from(source /* , mapfn, thisArg */) {
14236
- var O = toObject(source);
14237
- var aLen = arguments.length;
14238
- var mapfn = aLen > 1 ? arguments[1] : undefined;
14239
- var mapping = mapfn !== undefined;
14240
- var iterFn = getIterFn(O);
14241
- var i, length, values, result, step, iterator;
14242
- if (iterFn != undefined && !isArrayIter(iterFn)) {
14243
- for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) {
14244
- values.push(step.value);
14245
- } O = values;
14246
- }
14247
- if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2);
14248
- for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) {
14249
- result[i] = mapping ? mapfn(O[i], i) : O[i];
14250
- }
14251
- return result;
14252
- };
14253
 
14254
- var $of = function of(/* ...items */) {
14255
- var index = 0;
14256
- var length = arguments.length;
14257
- var result = allocate(this, length);
14258
- while (length > index) result[index] = arguments[index++];
14259
- return result;
14260
- };
14261
 
14262
- // iOS Safari 6.x fails here
14263
- var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); });
14264
 
14265
- var $toLocaleString = function toLocaleString() {
14266
- return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);
14267
- };
14268
 
14269
- var proto = {
14270
- copyWithin: function copyWithin(target, start /* , end */) {
14271
- return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
14272
- },
14273
- every: function every(callbackfn /* , thisArg */) {
14274
- return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
14275
- },
14276
- fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars
14277
- return arrayFill.apply(validate(this), arguments);
14278
- },
14279
- filter: function filter(callbackfn /* , thisArg */) {
14280
- return speciesFromList(this, arrayFilter(validate(this), callbackfn,
14281
- arguments.length > 1 ? arguments[1] : undefined));
14282
- },
14283
- find: function find(predicate /* , thisArg */) {
14284
- return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
14285
- },
14286
- findIndex: function findIndex(predicate /* , thisArg */) {
14287
- return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
14288
- },
14289
- forEach: function forEach(callbackfn /* , thisArg */) {
14290
- arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
14291
- },
14292
- indexOf: function indexOf(searchElement /* , fromIndex */) {
14293
- return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
14294
- },
14295
- includes: function includes(searchElement /* , fromIndex */) {
14296
- return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
14297
- },
14298
- join: function join(separator) { // eslint-disable-line no-unused-vars
14299
- return arrayJoin.apply(validate(this), arguments);
14300
- },
14301
- lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars
14302
- return arrayLastIndexOf.apply(validate(this), arguments);
14303
- },
14304
- map: function map(mapfn /* , thisArg */) {
14305
- return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);
14306
- },
14307
- reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars
14308
- return arrayReduce.apply(validate(this), arguments);
14309
- },
14310
- reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars
14311
- return arrayReduceRight.apply(validate(this), arguments);
14312
- },
14313
- reverse: function reverse() {
14314
- var that = this;
14315
- var length = validate(that).length;
14316
- var middle = Math.floor(length / 2);
14317
- var index = 0;
14318
- var value;
14319
- while (index < middle) {
14320
- value = that[index];
14321
- that[index++] = that[--length];
14322
- that[length] = value;
14323
- } return that;
14324
- },
14325
- some: function some(callbackfn /* , thisArg */) {
14326
- return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
14327
- },
14328
- sort: function sort(comparefn) {
14329
- return arraySort.call(validate(this), comparefn);
14330
- },
14331
- subarray: function subarray(begin, end) {
14332
- var O = validate(this);
14333
- var length = O.length;
14334
- var $begin = toAbsoluteIndex(begin, length);
14335
- return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(
14336
- O.buffer,
14337
- O.byteOffset + $begin * O.BYTES_PER_ELEMENT,
14338
- toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin)
14339
- );
14340
- }
14341
- };
14342
 
14343
- var $slice = function slice(start, end) {
14344
- return speciesFromList(this, arraySlice.call(validate(this), start, end));
14345
- };
14346
 
14347
- var $set = function set(arrayLike /* , offset */) {
14348
- validate(this);
14349
- var offset = toOffset(arguments[1], 1);
14350
- var length = this.length;
14351
- var src = toObject(arrayLike);
14352
- var len = toLength(src.length);
14353
- var index = 0;
14354
- if (len + offset > length) throw RangeError(WRONG_LENGTH);
14355
- while (index < len) this[offset + index] = src[index++];
14356
- };
14357
 
14358
- var $iterators = {
14359
- entries: function entries() {
14360
- return arrayEntries.call(validate(this));
14361
- },
14362
- keys: function keys() {
14363
- return arrayKeys.call(validate(this));
14364
- },
14365
- values: function values() {
14366
- return arrayValues.call(validate(this));
14367
- }
14368
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14369
 
14370
- var isTAIndex = function (target, key) {
14371
- return isObject(target)
14372
- && target[TYPED_ARRAY]
14373
- && typeof key != 'symbol'
14374
- && key in target
14375
- && String(+key) == String(key);
14376
- };
14377
- var $getDesc = function getOwnPropertyDescriptor(target, key) {
14378
- return isTAIndex(target, key = toPrimitive(key, true))
14379
- ? propertyDesc(2, target[key])
14380
- : gOPD(target, key);
14381
- };
14382
- var $setDesc = function defineProperty(target, key, desc) {
14383
- if (isTAIndex(target, key = toPrimitive(key, true))
14384
- && isObject(desc)
14385
- && has(desc, 'value')
14386
- && !has(desc, 'get')
14387
- && !has(desc, 'set')
14388
- // TODO: add validation descriptor w/o calling accessors
14389
- && !desc.configurable
14390
- && (!has(desc, 'writable') || desc.writable)
14391
- && (!has(desc, 'enumerable') || desc.enumerable)
14392
- ) {
14393
- target[key] = desc.value;
14394
- return target;
14395
- } return dP(target, key, desc);
14396
- };
14397
 
14398
- if (!ALL_CONSTRUCTORS) {
14399
- $GOPD.f = $getDesc;
14400
- $DP.f = $setDesc;
14401
- }
14402
 
14403
- $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {
14404
- getOwnPropertyDescriptor: $getDesc,
14405
- defineProperty: $setDesc
14406
- });
14407
 
14408
- if (fails(function () { arrayToString.call({}); })) {
14409
- arrayToString = arrayToLocaleString = function toString() {
14410
- return arrayJoin.call(this);
14411
- };
14412
- }
14413
 
14414
- var $TypedArrayPrototype$ = redefineAll({}, proto);
14415
- redefineAll($TypedArrayPrototype$, $iterators);
14416
- hide($TypedArrayPrototype$, ITERATOR, $iterators.values);
14417
- redefineAll($TypedArrayPrototype$, {
14418
- slice: $slice,
14419
- set: $set,
14420
- constructor: function () { /* noop */ },
14421
- toString: arrayToString,
14422
- toLocaleString: $toLocaleString
14423
- });
14424
- addGetter($TypedArrayPrototype$, 'buffer', 'b');
14425
- addGetter($TypedArrayPrototype$, 'byteOffset', 'o');
14426
- addGetter($TypedArrayPrototype$, 'byteLength', 'l');
14427
- addGetter($TypedArrayPrototype$, 'length', 'e');
14428
- dP($TypedArrayPrototype$, TAG, {
14429
- get: function () { return this[TYPED_ARRAY]; }
14430
- });
14431
 
14432
- // eslint-disable-next-line max-statements
14433
- module.exports = function (KEY, BYTES, wrapper, CLAMPED) {
14434
- CLAMPED = !!CLAMPED;
14435
- var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array';
14436
- var GETTER = 'get' + KEY;
14437
- var SETTER = 'set' + KEY;
14438
- var TypedArray = global[NAME];
14439
- var Base = TypedArray || {};
14440
- var TAC = TypedArray && getPrototypeOf(TypedArray);
14441
- var FORCED = !TypedArray || !$typed.ABV;
14442
- var O = {};
14443
- var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];
14444
- var getter = function (that, index) {
14445
- var data = that._d;
14446
- return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
14447
- };
14448
- var setter = function (that, index, value) {
14449
- var data = that._d;
14450
- if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;
14451
- data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);
14452
- };
14453
- var addElement = function (that, index) {
14454
- dP(that, index, {
14455
- get: function () {
14456
- return getter(this, index);
14457
- },
14458
- set: function (value) {
14459
- return setter(this, index, value);
14460
  },
14461
- enumerable: true
14462
- });
14463
- };
14464
- if (FORCED) {
14465
- TypedArray = wrapper(function (that, data, $offset, $length) {
14466
- anInstance(that, TypedArray, NAME, '_d');
14467
- var index = 0;
14468
- var offset = 0;
14469
- var buffer, byteLength, length, klass;
14470
- if (!isObject(data)) {
14471
- length = toIndex(data);
14472
- byteLength = length * BYTES;
14473
- buffer = new $ArrayBuffer(byteLength);
14474
- } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {
14475
- buffer = data;
14476
- offset = toOffset($offset, BYTES);
14477
- var $len = data.byteLength;
14478
- if ($length === undefined) {
14479
- if ($len % BYTES) throw RangeError(WRONG_LENGTH);
14480
- byteLength = $len - offset;
14481
- if (byteLength < 0) throw RangeError(WRONG_LENGTH);
14482
- } else {
14483
- byteLength = toLength($length) * BYTES;
14484
- if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH);
14485
- }
14486
- length = byteLength / BYTES;
14487
- } else if (TYPED_ARRAY in data) {
14488
- return fromList(TypedArray, data);
 
 
 
14489
  } else {
14490
- return $from.call(TypedArray, data);
14491
- }
14492
- hide(that, '_d', {
14493
- b: buffer,
14494
- o: offset,
14495
- l: byteLength,
14496
- e: length,
14497
- v: new $DataView(buffer)
14498
- });
14499
- while (index < length) addElement(that, index++);
14500
- });
14501
- TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);
14502
- hide(TypedArrayPrototype, 'constructor', TypedArray);
14503
- } else if (!fails(function () {
14504
- TypedArray(1);
14505
- }) || !fails(function () {
14506
- new TypedArray(-1); // eslint-disable-line no-new
14507
- }) || !$iterDetect(function (iter) {
14508
- new TypedArray(); // eslint-disable-line no-new
14509
- new TypedArray(null); // eslint-disable-line no-new
14510
- new TypedArray(1.5); // eslint-disable-line no-new
14511
- new TypedArray(iter); // eslint-disable-line no-new
14512
- }, true)) {
14513
- TypedArray = wrapper(function (that, data, $offset, $length) {
14514
- anInstance(that, TypedArray, NAME);
14515
- var klass;
14516
- // `ws` module bug, temporarily remove validation length for Uint8Array
14517
- // https://github.com/websockets/ws/pull/645
14518
- if (!isObject(data)) return new Base(toIndex(data));
14519
- if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {
14520
- return $length !== undefined
14521
- ? new Base(data, toOffset($offset, BYTES), $length)
14522
- : $offset !== undefined
14523
- ? new Base(data, toOffset($offset, BYTES))
14524
- : new Base(data);
14525
  }
14526
- if (TYPED_ARRAY in data) return fromList(TypedArray, data);
14527
- return $from.call(TypedArray, data);
14528
- });
14529
- arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) {
14530
- if (!(key in TypedArray)) hide(TypedArray, key, Base[key]);
14531
- });
14532
- TypedArray[PROTOTYPE] = TypedArrayPrototype;
14533
- if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray;
14534
  }
14535
- var $nativeIterator = TypedArrayPrototype[ITERATOR];
14536
- var CORRECT_ITER_NAME = !!$nativeIterator
14537
- && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined);
14538
- var $iterator = $iterators.values;
14539
- hide(TypedArray, TYPED_CONSTRUCTOR, true);
14540
- hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
14541
- hide(TypedArrayPrototype, VIEW, true);
14542
- hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
14543
 
14544
- if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) {
14545
- dP(TypedArrayPrototype, TAG, {
14546
- get: function () { return NAME; }
14547
- });
14548
- }
14549
 
14550
- O[NAME] = TypedArray;
 
 
 
 
 
 
 
 
 
 
14551
 
14552
- $export($export.G + $export.W + $export.F * (TypedArray != Base), O);
14553
 
14554
- $export($export.S, NAME, {
14555
- BYTES_PER_ELEMENT: BYTES
14556
- });
14557
 
14558
- $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, {
14559
- from: $from,
14560
- of: $of
14561
- });
14562
 
14563
- if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);
14564
 
14565
- $export($export.P, NAME, proto);
14566
 
14567
- setSpecies(NAME);
14568
 
14569
- $export($export.P + $export.F * FORCED_SET, NAME, { set: $set });
14570
 
14571
- $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);
14572
 
14573
- if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString;
14574
 
14575
- $export($export.P + $export.F * fails(function () {
14576
- new TypedArray(1).slice();
14577
- }), NAME, { slice: $slice });
14578
 
14579
- $export($export.P + $export.F * (fails(function () {
14580
- return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString();
14581
- }) || !fails(function () {
14582
- TypedArrayPrototype.toLocaleString.call([1, 2]);
14583
- })), NAME, { toLocaleString: $toLocaleString });
 
14584
 
14585
- Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;
14586
- if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator);
 
 
14587
  };
14588
- } else module.exports = function () { /* empty */ };
 
 
 
 
14589
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14590
 
14591
- /***/ }),
14592
- /* 115 */
14593
- /***/ (function(module, exports, __webpack_require__) {
 
14594
 
14595
- var Map = __webpack_require__(477);
14596
- var $export = __webpack_require__(7);
14597
- var shared = __webpack_require__(249)('metadata');
14598
- var store = shared.store || (shared.store = new (__webpack_require__(480))());
14599
 
14600
- var getOrCreateMetadataMap = function (target, targetKey, create) {
14601
- var targetMetadata = store.get(target);
14602
- if (!targetMetadata) {
14603
- if (!create) return undefined;
14604
- store.set(target, targetMetadata = new Map());
14605
- }
14606
- var keyMetadata = targetMetadata.get(targetKey);
14607
- if (!keyMetadata) {
14608
- if (!create) return undefined;
14609
- targetMetadata.set(targetKey, keyMetadata = new Map());
14610
- } return keyMetadata;
14611
- };
14612
- var ordinaryHasOwnMetadata = function (MetadataKey, O, P) {
14613
- var metadataMap = getOrCreateMetadataMap(O, P, false);
14614
- return metadataMap === undefined ? false : metadataMap.has(MetadataKey);
14615
- };
14616
- var ordinaryGetOwnMetadata = function (MetadataKey, O, P) {
14617
- var metadataMap = getOrCreateMetadataMap(O, P, false);
14618
- return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey);
14619
- };
14620
- var ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) {
14621
- getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue);
14622
- };
14623
- var ordinaryOwnMetadataKeys = function (target, targetKey) {
14624
- var metadataMap = getOrCreateMetadataMap(target, targetKey, false);
14625
- var keys = [];
14626
- if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); });
14627
- return keys;
14628
- };
14629
- var toMetaKey = function (it) {
14630
- return it === undefined || typeof it == 'symbol' ? it : String(it);
14631
- };
14632
- var exp = function (O) {
14633
- $export($export.S, 'Reflect', O);
14634
- };
14635
 
14636
- module.exports = {
14637
- store: store,
14638
- map: getOrCreateMetadataMap,
14639
- has: ordinaryHasOwnMetadata,
14640
- get: ordinaryGetOwnMetadata,
14641
- set: ordinaryDefineOwnMetadata,
14642
- keys: ordinaryOwnMetadataKeys,
14643
- key: toMetaKey,
14644
- exp: exp
14645
- };
 
 
 
 
 
 
14646
 
 
 
 
 
 
 
 
14647
 
14648
- /***/ }),
14649
- /* 116 */
14650
- /***/ (function(module, exports, __webpack_require__) {
14651
 
14652
- "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14653
 
14654
 
14655
- if (true) {
14656
- module.exports = __webpack_require__(556);
14657
- } else {}
 
 
 
 
 
 
 
 
 
 
14658
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14659
 
14660
  /***/ }),
14661
- /* 117 */
14662
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
14663
 
14664
  "use strict";
14665
- /* unused harmony export BrowserRouter */
14666
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return HashRouter; });
14667
- /* unused harmony export Link */
14668
- /* unused harmony export NavLink */
14669
- /* harmony import */ var react_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(134);
14670
- /* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(24);
14671
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
14672
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
14673
- /* harmony import */ var history__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(83);
14674
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(5);
14675
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_4__);
14676
- /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(2);
14677
- /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(22);
14678
- /* harmony import */ var tiny_invariant__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(63);
14679
 
14680
 
14681
 
 
 
 
 
14682
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14683
 
 
 
 
 
 
 
 
14684
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14685
 
 
 
 
 
 
 
 
 
 
 
14686
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14687
 
 
 
 
 
14688
 
 
14689
 
14690
- /**
14691
- * The public API for a <Router> that uses HTML5 history.
14692
- */
14693
 
14694
- var BrowserRouter =
14695
- /*#__PURE__*/
14696
- function (_React$Component) {
14697
- Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(BrowserRouter, _React$Component);
14698
 
14699
- function BrowserRouter() {
14700
- var _this;
14701
 
14702
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
14703
- args[_key] = arguments[_key];
14704
- }
14705
 
14706
- _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
14707
- _this.history = Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createBrowserHistory */ "a"])(_this.props);
14708
- return _this;
14709
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14710
 
14711
- var _proto = BrowserRouter.prototype;
14712
 
14713
- _proto.render = function render() {
14714
- return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(react_router__WEBPACK_IMPORTED_MODULE_0__[/* Router */ "b"], {
14715
- history: this.history,
14716
- children: this.props.children
14717
- });
14718
- };
14719
 
14720
- return BrowserRouter;
14721
- }(react__WEBPACK_IMPORTED_MODULE_2___default.a.Component);
 
 
 
 
 
14722
 
14723
- if (false) {}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14724
 
14725
- /**
14726
- * The public API for a <Router> that uses window.location.hash.
14727
- */
14728
 
14729
- var HashRouter =
14730
- /*#__PURE__*/
14731
- function (_React$Component) {
14732
- Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(HashRouter, _React$Component);
14733
 
14734
- function HashRouter() {
14735
- var _this;
14736
 
14737
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
14738
- args[_key] = arguments[_key];
14739
- }
 
14740
 
14741
- _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
14742
- _this.history = Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createHashHistory */ "b"])(_this.props);
14743
- return _this;
14744
- }
14745
 
14746
- var _proto = HashRouter.prototype;
 
 
14747
 
14748
- _proto.render = function render() {
14749
- return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(react_router__WEBPACK_IMPORTED_MODULE_0__[/* Router */ "b"], {
14750
- history: this.history,
14751
- children: this.props.children
14752
- });
14753
- };
14754
 
14755
- return HashRouter;
14756
- }(react__WEBPACK_IMPORTED_MODULE_2___default.a.Component);
 
 
 
 
14757
 
14758
- if (false) {}
14759
 
14760
- var resolveToLocation = function resolveToLocation(to, currentLocation) {
14761
- return typeof to === "function" ? to(currentLocation) : to;
 
 
 
 
 
 
 
 
 
14762
  };
14763
- var normalizeToLocation = function normalizeToLocation(to, currentLocation) {
14764
- return typeof to === "string" ? Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createLocation */ "c"])(to, null, null, currentLocation) : to;
 
 
 
 
 
 
14765
  };
14766
-
14767
- var forwardRefShim = function forwardRefShim(C) {
14768
- return C;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14769
  };
14770
 
14771
- var forwardRef = react__WEBPACK_IMPORTED_MODULE_2___default.a.forwardRef;
14772
 
14773
- if (typeof forwardRef === "undefined") {
14774
- forwardRef = forwardRefShim;
14775
- }
14776
 
14777
- function isModifiedEvent(event) {
14778
- return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);
14779
- }
14780
 
14781
- var LinkAnchor = forwardRef(function (_ref, forwardedRef) {
14782
- var innerRef = _ref.innerRef,
14783
- navigate = _ref.navigate,
14784
- _onClick = _ref.onClick,
14785
- rest = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(_ref, ["innerRef", "navigate", "onClick"]);
14786
 
14787
- var target = rest.target;
 
 
14788
 
14789
- var props = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])({}, rest, {
14790
- onClick: function onClick(event) {
14791
- try {
14792
- if (_onClick) _onClick(event);
14793
- } catch (ex) {
14794
- event.preventDefault();
14795
- throw ex;
14796
- }
14797
 
14798
- if (!event.defaultPrevented && // onClick prevented default
14799
- event.button === 0 && ( // ignore everything but left clicks
14800
- !target || target === "_self") && // let browser handle "target=_blank" etc.
14801
- !isModifiedEvent(event) // ignore clicks with modifier keys
14802
- ) {
14803
- event.preventDefault();
14804
- navigate();
14805
- }
14806
- }
14807
- }); // React 15 compat
14808
 
 
 
 
14809
 
14810
- if (forwardRefShim !== forwardRef) {
14811
- props.ref = forwardedRef || innerRef;
14812
- } else {
14813
- props.ref = innerRef;
14814
- }
 
 
 
14815
 
14816
- return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("a", props);
14817
- });
14818
 
14819
- if (false) {}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14820
  /**
14821
- * The public API for rendering a history-aware <a>.
 
 
 
 
14822
  */
14823
 
 
 
 
14824
 
14825
- var Link = forwardRef(function (_ref2, forwardedRef) {
14826
- var _ref2$component = _ref2.component,
14827
- component = _ref2$component === void 0 ? LinkAnchor : _ref2$component,
14828
- replace = _ref2.replace,
14829
- to = _ref2.to,
14830
- innerRef = _ref2.innerRef,
14831
- rest = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(_ref2, ["component", "replace", "to", "innerRef"]);
14832
 
14833
- return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(react_router__WEBPACK_IMPORTED_MODULE_0__[/* __RouterContext */ "d"].Consumer, null, function (context) {
14834
- !context ? false ? undefined : Object(tiny_invariant__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])(false) : void 0;
14835
- var history = context.history;
14836
- var location = normalizeToLocation(resolveToLocation(to, context.location), context.location);
14837
- var href = location ? history.createHref(location) : "";
14838
-
14839
- var props = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])({}, rest, {
14840
- href: href,
14841
- navigate: function navigate() {
14842
- var location = resolveToLocation(to, context.location);
14843
- var method = replace ? history.replace : history.push;
14844
- method(location);
14845
- }
14846
- }); // React 15 compat
14847
 
 
 
 
14848
 
14849
- if (forwardRefShim !== forwardRef) {
14850
- props.ref = forwardedRef || innerRef;
14851
- } else {
14852
- props.innerRef = innerRef;
14853
- }
 
 
 
 
14854
 
14855
- return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(component, props);
14856
- });
14857
- });
14858
 
14859
- if (false) { var refType, toType; }
 
 
 
14860
 
14861
- var forwardRefShim$1 = function forwardRefShim(C) {
14862
- return C;
14863
- };
 
 
 
 
 
 
14864
 
14865
- var forwardRef$1 = react__WEBPACK_IMPORTED_MODULE_2___default.a.forwardRef;
14866
 
14867
- if (typeof forwardRef$1 === "undefined") {
14868
- forwardRef$1 = forwardRefShim$1;
14869
  }
14870
 
14871
- function joinClassnames() {
14872
- for (var _len = arguments.length, classnames = new Array(_len), _key = 0; _key < _len; _key++) {
14873
- classnames[_key] = arguments[_key];
 
 
 
 
 
 
14874
  }
 
14875
 
14876
- return classnames.filter(function (i) {
14877
- return i;
14878
- }).join(" ");
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14879
  }
14880
  /**
14881
- * A <Link> wrapper that knows if it's "active" or not.
14882
  */
14883
 
14884
 
14885
- var NavLink = forwardRef$1(function (_ref, forwardedRef) {
14886
- var _ref$ariaCurrent = _ref["aria-current"],
14887
- ariaCurrent = _ref$ariaCurrent === void 0 ? "page" : _ref$ariaCurrent,
14888
- _ref$activeClassName = _ref.activeClassName,
14889
- activeClassName = _ref$activeClassName === void 0 ? "active" : _ref$activeClassName,
14890
- activeStyle = _ref.activeStyle,
14891
- classNameProp = _ref.className,
14892
- exact = _ref.exact,
14893
- isActiveProp = _ref.isActive,
14894
- locationProp = _ref.location,
14895
- strict = _ref.strict,
14896
- styleProp = _ref.style,
14897
- to = _ref.to,
14898
- innerRef = _ref.innerRef,
14899
- rest = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(_ref, ["aria-current", "activeClassName", "activeStyle", "className", "exact", "isActive", "location", "strict", "style", "to", "innerRef"]);
14900
 
14901
- return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(react_router__WEBPACK_IMPORTED_MODULE_0__[/* __RouterContext */ "d"].Consumer, null, function (context) {
14902
- !context ? false ? undefined : Object(tiny_invariant__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])(false) : void 0;
14903
- var currentLocation = locationProp || context.location;
14904
- var toLocation = normalizeToLocation(resolveToLocation(to, currentLocation), currentLocation);
14905
- var path = toLocation.pathname; // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202
14906
 
14907
- var escapedPath = path && path.replace(/([.+*?=^!:${}()[\]|/\\])/g, "\\$1");
14908
- var match = escapedPath ? Object(react_router__WEBPACK_IMPORTED_MODULE_0__[/* matchPath */ "e"])(currentLocation.pathname, {
14909
- path: escapedPath,
14910
- exact: exact,
14911
- strict: strict
14912
- }) : null;
14913
- var isActive = !!(isActiveProp ? isActiveProp(match, currentLocation) : match);
14914
- var className = isActive ? joinClassnames(classNameProp, activeClassName) : classNameProp;
14915
- var style = isActive ? Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])({}, styleProp, {}, activeStyle) : styleProp;
14916
 
14917
- var props = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])({
14918
- "aria-current": isActive && ariaCurrent || null,
14919
- className: className,
14920
- style: style,
14921
- to: toLocation
14922
- }, rest); // React 15 compat
14923
 
 
 
 
 
 
 
14924
 
14925
- if (forwardRefShim$1 !== forwardRef$1) {
14926
- props.ref = forwardedRef || innerRef;
14927
- } else {
14928
- props.innerRef = innerRef;
14929
- }
14930
 
14931
- return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(Link, props);
14932
- });
14933
- });
 
 
 
 
 
 
 
 
 
14934
 
14935
- if (false) { var ariaCurrentType; }
 
14936
 
 
 
 
14937
 
14938
- //# sourceMappingURL=react-router-dom.js.map
 
 
14939
 
 
 
 
 
14940
 
14941
  /***/ }),
14942
- /* 118 */
14943
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
14944
 
14945
  "use strict";
14946
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return FormDialog; });
14947
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
14948
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
14949
- /* harmony import */ var _material_ui_core_Button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(109);
14950
- /* harmony import */ var _material_ui_core_TextField__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(920);
14951
- /* harmony import */ var _material_ui_core_Dialog__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(222);
14952
- /* harmony import */ var _material_ui_core_DialogActions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(224);
14953
- /* harmony import */ var _material_ui_core_DialogContent__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(165);
14954
- /* harmony import */ var _material_ui_core_DialogContentText__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(166);
14955
- /* harmony import */ var _material_ui_core_DialogTitle__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(223);
14956
- /* harmony import */ var translate__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(1);
14957
- function _extends() { _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; }; return _extends.apply(this, arguments); }
14958
 
14959
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
 
 
14960
 
14961
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
 
 
 
 
14962
 
14963
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
 
14964
 
14965
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
 
 
 
 
14966
 
14967
- function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14968
 
14969
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14970
 
14971
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
14972
 
14973
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
 
 
14974
 
 
14975
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14976
 
 
14977
 
14978
 
 
 
 
14979
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14980
 
14981
 
 
 
 
14982
 
 
 
14983
 
14984
- var defaultButtons = [{
14985
- value: "cancel",
14986
- text: Object(translate__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])("modal.cancel")
14987
- }, {
14988
- value: "confirm",
14989
- text: Object(translate__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])("common.confirm"),
14990
- focus: true
14991
- }];
14992
- function FormDialog(_ref) {
14993
- var open = _ref.open,
14994
- buttons = _ref.buttons,
14995
- onClose = _ref.onClose,
14996
- text = _ref.text,
14997
- title = _ref.title,
14998
- defaultValue = _ref.defaultValue,
14999
- _ref$canBeEmpty = _ref.canBeEmpty,
15000
- canBeEmpty = _ref$canBeEmpty === void 0 ? false : _ref$canBeEmpty,
15001
- _ref$maxWidth = _ref.maxWidth,
15002
- maxWidth = _ref$maxWidth === void 0 ? "xs" : _ref$maxWidth,
15003
- _ref$fullWidth = _ref.fullWidth,
15004
- fullWidth = _ref$fullWidth === void 0 ? true : _ref$fullWidth,
15005
- _ref$cancelIfSameAsFi = _ref.cancelIfSameAsFirstValue,
15006
- cancelIfSameAsFirstValue = _ref$cancelIfSameAsFi === void 0 ? false : _ref$cancelIfSameAsFi,
15007
- _ref$clearOnConfirm = _ref.clearOnConfirm,
15008
- clearOnConfirm = _ref$clearOnConfirm === void 0 ? false : _ref$clearOnConfirm,
15009
- props = _objectWithoutProperties(_ref, ["open", "buttons", "onClose", "text", "title", "defaultValue", "canBeEmpty", "maxWidth", "fullWidth", "cancelIfSameAsFirstValue", "clearOnConfirm"]);
15010
 
15011
- var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default.a.useState(defaultValue === "" ? "" : defaultValue || " "),
15012
- _React$useState2 = _slicedToArray(_React$useState, 2),
15013
- value = _React$useState2[0],
15014
- setValue = _React$useState2[1];
15015
 
15016
- if (!buttons) buttons = defaultButtons;
 
15017
 
15018
- var beforeClose = function beforeClose(action) {
15019
- if (action !== "cancel" && !canBeEmpty && value == "") {
15020
- return;
15021
- }
15022
 
15023
- if (clearOnConfirm && action === "confirm") {
15024
- setValue("");
15025
- }
15026
 
15027
- onClose(action, value);
15028
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15029
 
15030
- var generateButtons = function generateButtons() {
15031
- return buttons.map(function (button, key) {
15032
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_Button__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], {
15033
- onClick: function onClick() {
15034
- return beforeClose(button.value, value);
15035
- },
15036
- color: "primary",
15037
- key: key
15038
- }, button.text);
15039
- });
15040
- };
15041
 
15042
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_Dialog__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"], _extends({
15043
- open: open,
15044
- maxWidth: maxWidth,
15045
- fullWidth: fullWidth,
15046
- onClose: function onClose() {
15047
- return beforeClose("cancel");
15048
- },
15049
- "aria-labelledby": "form-dialog-title"
15050
- }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_DialogTitle__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"], {
15051
- id: "form-dialog-title"
15052
- }, title), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_DialogContent__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_DialogContentText__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"], null, text), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_TextField__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"], {
15053
- autoFocus: true,
15054
- value: value,
15055
- onChange: function onChange(e) {
15056
- return setValue(e.target.value);
15057
- },
15058
- margin: "dense",
15059
- id: "name",
15060
- fullWidth: true,
15061
- helperText: !canBeEmpty && value == "" ? Object(translate__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])("modal.incorrect") : null,
15062
- error: !canBeEmpty && value == "",
15063
- onKeyPress: function onKeyPress(e) {
15064
- if (e.charCode === 13) {
15065
- if (cancelIfSameAsFirstValue && defaultValue === value) {
15066
- beforeClose("cancel");
15067
- } else {
15068
- beforeClose("confirm");
15069
- }
15070
- }
15071
- }
15072
- })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_DialogActions__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"], null, generateButtons()));
15073
- }
15074
 
15075
  /***/ }),
15076
- /* 119 */
15077
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
15078
-
15079
- "use strict";
15080
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return apiRequest; });
15081
- /* unused harmony export init */
15082
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return convertData; });
15083
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return createRecord; });
15084
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(93);
15085
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);
15086
- /* harmony import */ var buttonizer_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4);
15087
- /* harmony import */ var utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(26);
15088
- /* harmony import */ var translate__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(1);
15089
- 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; }
15090
-
15091
- 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(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; }
15092
-
15093
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
15094
-
15095
- function _createForOfIteratorHelper(o) { if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (o = _unsupportedIterableToArray(o))) { var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var it, normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
15096
 
15097
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
 
15098
 
15099
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
 
 
 
 
 
 
 
 
 
 
 
 
15100
 
 
 
15101
 
 
 
15102
 
 
 
 
15103
 
 
 
 
 
 
 
 
 
 
 
 
15104
 
 
15105
 
15106
- /**
15107
- * Create api request
15108
- *maar j
15109
- * @param {*} endpoint
15110
- * @param {*} data
15111
- */
15112
 
15113
- function apiRequest(endpoint, data) {
15114
- data.url = buttonizer_admin.api + endpoint;
15115
- data.headers = {
15116
- "X-WP-Nonce": buttonizer_admin.nonce
15117
- };
15118
- return axios__WEBPACK_IMPORTED_MODULE_0___default()(data);
15119
- }
15120
- /**
15121
- * init store
15122
- */
15123
 
15124
- function init() {
15125
- return {
15126
- type: buttonizer_constants__WEBPACK_IMPORTED_MODULE_1__[/* actionTypes */ "a"].INIT,
15127
- payload: {
15128
- buttons: {},
15129
- groups: {},
15130
- timeSchedules: {},
15131
- pageRules: {},
15132
- settings: {}
15133
- }
15134
- };
15135
- }
15136
  /**
15137
- * Convert data to models
15138
  *
15139
- * @param result
15140
- * @return {obj} converted data
 
 
 
 
 
 
 
 
 
 
15141
  */
 
 
 
15142
 
15143
- function convertData(result) {
15144
- var data = result;
15145
- var buttons = {};
15146
- var groups = {}; // Initializing groups
15147
 
15148
- var _iterator = _createForOfIteratorHelper(data.groups),
15149
- _step;
15150
 
15151
- try {
15152
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
15153
- var group = _step.value;
15154
- var groupObject = createRecord(group.data);
15155
- groupObject.children = []; // Initializing buttons inside the group
15156
-
15157
- var _iterator2 = _createForOfIteratorHelper(group.buttons),
15158
- _step2;
15159
-
15160
- try {
15161
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
15162
- var button = _step2.value;
15163
- var buttonObject = createRecord(button);
15164
- buttonObject.parent = groupObject.id;
15165
- buttons[buttonObject.id] = buttonObject;
15166
- groupObject.children.push(buttonObject.id);
15167
- }
15168
- } catch (err) {
15169
- _iterator2.e(err);
15170
- } finally {
15171
- _iterator2.f();
15172
- }
15173
-
15174
- groups[groupObject.id] = groupObject;
15175
- }
15176
- } catch (err) {
15177
- _iterator.e(err);
15178
- } finally {
15179
- _iterator.f();
15180
- }
15181
-
15182
- var timeSchedules = {};
15183
- var pageRules = {};
15184
 
15185
- if (data.time_schedules) {
15186
- data.time_schedules.map(function (timeSchedule) {
15187
- timeSchedules[timeSchedule.id] = {
15188
- id: timeSchedule.id,
15189
- name: timeSchedule.name || Object(translate__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])("time_schedules.single_name"),
15190
- weekdays: timeSchedule.weekdays || buttonizer_constants__WEBPACK_IMPORTED_MODULE_1__[/* weekdays */ "e"].map(function (weekday) {
15191
- return {
15192
- opened: true,
15193
- open: "8:00",
15194
- close: "17:00",
15195
- weekday: weekday
15196
- };
15197
- }),
15198
- start_date: timeSchedule.start_date || Object(utils__WEBPACK_IMPORTED_MODULE_2__[/* dateToFormat */ "c"])(new Date()),
15199
- end_date: timeSchedule.end_date || null,
15200
- dates: timeSchedule.dates || []
15201
- };
15202
- });
15203
- } // Add page rules data with placeholders
15204
 
15205
 
15206
- if (data.page_rules) {
15207
- data.page_rules.map(function (pageRule) {
15208
- pageRules[pageRule.id] = {
15209
- id: pageRule.id,
15210
- name: pageRule.name || "Unnamed pagerule",
15211
- type: pageRule.type || "and",
15212
- rules: pageRule.rules || [{
15213
- type: "page_title",
15214
- value: ""
15215
- }]
15216
- };
15217
- });
15218
- }
15219
 
15220
- return {
15221
- hasChanges: data.changes,
15222
- buttons: buttons,
15223
- groups: groups,
15224
- timeSchedules: timeSchedules,
15225
- pageRules: pageRules,
15226
- settings: data.settings,
15227
- premium: data.premium,
15228
- premium_code: data.premium_code,
15229
- version: data.version,
15230
- wordpress: data.wordpress,
15231
- is_opt_in: data.is_opt_in,
15232
- additional_permissions: data.additional_permissions
15233
- };
15234
- }
15235
- function createRecord(data) {
15236
- if (data && typeof data.id !== "undefined") return data;
15237
- return _objectSpread({}, data, {
15238
- id: Object(utils__WEBPACK_IMPORTED_MODULE_2__[/* GenerateUniqueId */ "a"])()
15239
- });
15240
- }
15241
 
15242
  /***/ }),
15243
- /* 120 */
15244
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
15245
-
15246
- "use strict";
15247
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return generateJSONObject; });
15248
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return apiRequest; });
15249
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return resetSettings; });
15250
- /* harmony import */ var _selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(23);
15251
- /* harmony import */ var immer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(52);
15252
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(93);
15253
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_2__);
15254
-
15255
 
 
 
 
 
15256
 
15257
- /**
15258
- * Generate JSON object
15259
- * @returns {Array}
15260
- */
15261
 
15262
- function generateJSONObject(storeDataObject) {
15263
- // Buttons
15264
- var buttonGroups = Object.values(storeDataObject);
15265
- var data = [];
15266
- buttonGroups.forEach(function (groupObject) {
15267
- var outputGroup = Object(immer__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(groupObject, function (draftObject) {
15268
- delete draftObject.children;
15269
- });
15270
- var groupButtons = Object.values(Object(_selectors__WEBPACK_IMPORTED_MODULE_0__[/* getChildrenIndex */ "f"])(groupObject.children));
15271
- var tempButtons = [];
15272
- groupButtons.forEach(function (buttonObject) {
15273
- var outputButton = Object(immer__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(buttonObject, function (draftObject) {
15274
- delete draftObject.parent;
15275
- });
15276
- tempButtons.push(outputButton);
15277
- });
15278
 
15279
- if (tempButtons.length === 0) {
15280
- tempButtons = [{
15281
- name: "Button",
15282
- show_mobile: "true",
15283
- show_desktop: "true"
15284
- }];
15285
- }
15286
 
15287
- data.push({
15288
- data: outputGroup,
15289
- buttons: tempButtons
15290
- });
15291
- });
15292
- return data;
15293
- }
15294
- /**
15295
- * Create api request
15296
- *
15297
- * @param {*} endpoint
15298
- * @param {*} data
15299
- */
15300
 
15301
- function apiRequest(endpoint, data) {
15302
- data.url = buttonizer_admin.api + endpoint;
15303
- data.headers = {
15304
- "X-WP-Nonce": buttonizer_admin.nonce
 
 
15305
  };
15306
- return axios__WEBPACK_IMPORTED_MODULE_2___default()(data);
15307
- }
15308
- /**
15309
- * Reset Buttonizer
15310
- */
15311
 
15312
- function resetSettings() {
15313
- return apiRequest("/reset", {
15314
- method: "POST",
15315
- data: {
15316
- nonce: buttonizer_admin.nonce
15317
- }
15318
- }).then(function () {
15319
- location.reload();
15320
- })["catch"](function (e) {
15321
- console.error(e);
15322
- throw new Error("Something went wrong trying to update this model.");
15323
- });
15324
- }
15325
 
15326
  /***/ }),
15327
- /* 121 */,
15328
- /* 122 */
15329
- /***/ (function(module, exports, __webpack_require__) {
15330
-
15331
- var root = __webpack_require__(54);
15332
-
15333
- /** Built-in value references. */
15334
- var Symbol = root.Symbol;
15335
 
15336
- module.exports = Symbol;
 
 
 
 
15337
 
15338
 
15339
  /***/ }),
15340
- /* 123 */
15341
  /***/ (function(module, exports, __webpack_require__) {
15342
 
15343
- var arrayLikeKeys = __webpack_require__(238),
15344
- baseKeysIn = __webpack_require__(331),
15345
- isArrayLike = __webpack_require__(100);
15346
-
15347
- /**
15348
- * Creates an array of the own and inherited enumerable property names of `object`.
15349
- *
15350
- * **Note:** Non-object values are coerced to objects.
15351
- *
15352
- * @static
15353
- * @memberOf _
15354
- * @since 3.0.0
15355
- * @category Object
15356
- * @param {Object} object The object to query.
15357
- * @returns {Array} Returns the array of property names.
15358
- * @example
15359
- *
15360
- * function Foo() {
15361
- * this.a = 1;
15362
- * this.b = 2;
15363
- * }
15364
- *
15365
- * Foo.prototype.c = 3;
15366
- *
15367
- * _.keysIn(new Foo);
15368
- * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
15369
- */
15370
- function keysIn(object) {
15371
- return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
15372
- }
15373
 
15374
- module.exports = keysIn;
 
 
15375
 
15376
 
15377
  /***/ }),
15378
- /* 124 */
15379
  /***/ (function(module, exports, __webpack_require__) {
15380
 
15381
- var global = __webpack_require__(61);
15382
- var getOwnPropertyDescriptor = __webpack_require__(409).f;
15383
- var createNonEnumerableProperty = __webpack_require__(126);
15384
- var redefine = __webpack_require__(178);
15385
- var setGlobal = __webpack_require__(343);
15386
- var copyConstructorProperties = __webpack_require__(558);
15387
- var isForced = __webpack_require__(420);
15388
-
15389
- /*
15390
- options.target - name of the target object
15391
- options.global - target is the global object
15392
- options.stat - export as static methods of target
15393
- options.proto - export as prototype methods of target
15394
- options.real - real prototype method for the `pure` version
15395
- options.forced - export even if the native feature is available
15396
- options.bind - bind methods to the target, required for the `pure` version
15397
- options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
15398
- options.unsafe - use the simple assignment of property instead of delete + defineProperty
15399
- options.sham - add a flag to not completely full polyfills
15400
- options.enumerable - export as enumerable property
15401
- options.noTargetGet - prevent calling a getter on target
15402
- */
15403
- module.exports = function (options, source) {
15404
- var TARGET = options.target;
15405
- var GLOBAL = options.global;
15406
- var STATIC = options.stat;
15407
- var FORCED, target, key, targetProperty, sourceProperty, descriptor;
15408
- if (GLOBAL) {
15409
- target = global;
15410
- } else if (STATIC) {
15411
- target = global[TARGET] || setGlobal(TARGET, {});
15412
- } else {
15413
- target = (global[TARGET] || {}).prototype;
15414
- }
15415
- if (target) for (key in source) {
15416
- sourceProperty = source[key];
15417
- if (options.noTargetGet) {
15418
- descriptor = getOwnPropertyDescriptor(target, key);
15419
- targetProperty = descriptor && descriptor.value;
15420
- } else targetProperty = target[key];
15421
- FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
15422
- // contained in target
15423
- if (!FORCED && targetProperty !== undefined) {
15424
- if (typeof sourceProperty === typeof targetProperty) continue;
15425
- copyConstructorProperties(sourceProperty, targetProperty);
15426
- }
15427
- // add a flag to not completely full polyfills
15428
- if (options.sham || (targetProperty && targetProperty.sham)) {
15429
- createNonEnumerableProperty(sourceProperty, 'sham', true);
15430
- }
15431
- // extend global
15432
- redefine(target, key, sourceProperty, options);
15433
- }
15434
  };
15435
 
15436
 
15437
  /***/ }),
15438
- /* 125 */
15439
  /***/ (function(module, exports, __webpack_require__) {
15440
 
15441
- var fails = __webpack_require__(64);
 
 
 
 
 
 
15442
 
15443
- // Thank's IE8 for his funny defineProperty
15444
- module.exports = !fails(function () {
15445
- return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
15446
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15447
 
15448
 
15449
  /***/ }),
15450
- /* 126 */
15451
  /***/ (function(module, exports, __webpack_require__) {
15452
 
15453
- var DESCRIPTORS = __webpack_require__(125);
15454
- var definePropertyModule = __webpack_require__(142);
15455
- var createPropertyDescriptor = __webpack_require__(342);
15456
 
15457
- module.exports = DESCRIPTORS ? function (object, key, value) {
15458
- return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
15459
- } : function (object, key, value) {
15460
- object[key] = value;
15461
- return object;
15462
  };
15463
 
15464
 
15465
  /***/ }),
15466
- /* 127 */
15467
  /***/ (function(module, exports, __webpack_require__) {
15468
 
15469
- var arrayMap = __webpack_require__(445),
15470
- baseIteratee = __webpack_require__(610),
15471
- baseMap = __webpack_require__(627),
15472
- isArray = __webpack_require__(59);
15473
 
15474
- /**
15475
- * Creates an array of values by running each element in `collection` thru
15476
- * `iteratee`. The iteratee is invoked with three arguments:
15477
- * (value, index|key, collection).
15478
- *
15479
- * Many lodash methods are guarded to work as iteratees for methods like
15480
- * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.
15481
- *
15482
- * The guarded methods are:
15483
- * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,
15484
- * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,
15485
- * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,
15486
- * `template`, `trim`, `trimEnd`, `trimStart`, and `words`
15487
- *
15488
- * @static
15489
- * @memberOf _
15490
- * @since 0.1.0
15491
- * @category Collection
15492
- * @param {Array|Object} collection The collection to iterate over.
15493
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
15494
- * @returns {Array} Returns the new mapped array.
15495
- * @example
15496
- *
15497
- * function square(n) {
15498
- * return n * n;
15499
- * }
15500
- *
15501
- * _.map([4, 8], square);
15502
- * // => [16, 64]
15503
- *
15504
- * _.map({ 'a': 4, 'b': 8 }, square);
15505
- * // => [16, 64] (iteration order is not guaranteed)
15506
- *
15507
- * var users = [
15508
- * { 'user': 'barney' },
15509
- * { 'user': 'fred' }
15510
- * ];
15511
- *
15512
- * // The `_.property` iteratee shorthand.
15513
- * _.map(users, 'user');
15514
- * // => ['barney', 'fred']
15515
- */
15516
- function map(collection, iteratee) {
15517
- var func = isArray(collection) ? arrayMap : baseMap;
15518
- return func(collection, baseIteratee(iteratee, 3));
15519
- }
15520
 
15521
- module.exports = map;
 
 
 
 
 
 
15522
 
15523
 
15524
  /***/ }),
15525
- /* 128 */
15526
- /***/ (function(module, exports, __webpack_require__) {
15527
 
15528
- var META = __webpack_require__(144)('meta');
15529
- var isObject = __webpack_require__(32);
15530
- var has = __webpack_require__(74);
15531
- var setDesc = __webpack_require__(46).f;
15532
- var id = 0;
15533
- var isExtensible = Object.isExtensible || function () {
15534
- return true;
15535
- };
15536
- var FREEZE = !__webpack_require__(28)(function () {
15537
- return isExtensible(Object.preventExtensions({}));
15538
- });
15539
- var setMeta = function (it) {
15540
- setDesc(it, META, { value: {
15541
- i: 'O' + ++id, // object ID
15542
- w: {} // weak collections IDs
15543
- } });
15544
- };
15545
- var fastKey = function (it, create) {
15546
- // return primitive with prefix
15547
- if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
15548
- if (!has(it, META)) {
15549
- // can't set metadata to uncaught frozen object
15550
- if (!isExtensible(it)) return 'F';
15551
- // not necessary to add metadata
15552
- if (!create) return 'E';
15553
- // add missing metadata
15554
- setMeta(it);
15555
- // return object ID
15556
- } return it[META].i;
15557
- };
15558
- var getWeak = function (it, create) {
15559
- if (!has(it, META)) {
15560
- // can't set metadata to uncaught frozen object
15561
- if (!isExtensible(it)) return true;
15562
- // not necessary to add metadata
15563
- if (!create) return false;
15564
- // add missing metadata
15565
- setMeta(it);
15566
- // return hash weak collections IDs
15567
- } return it[META].w;
15568
- };
15569
- // add metadata on freeze-family methods calling
15570
- var onFreeze = function (it) {
15571
- if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
15572
- return it;
15573
- };
15574
- var meta = module.exports = {
15575
- KEY: META,
15576
- NEED: false,
15577
- fastKey: fastKey,
15578
- getWeak: getWeak,
15579
- onFreeze: onFreeze
15580
  };
15581
 
15582
 
15583
  /***/ }),
15584
- /* 129 */
15585
- /***/ (function(module, exports) {
15586
 
15587
- module.exports = false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15588
 
15589
 
15590
  /***/ }),
15591
- /* 130 */
15592
  /***/ (function(module, exports, __webpack_require__) {
15593
 
15594
- // 22.1.3.31 Array.prototype[@@unscopables]
15595
- var UNSCOPABLES = __webpack_require__(40)('unscopables');
15596
- var ArrayProto = Array.prototype;
15597
- if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(68)(ArrayProto, UNSCOPABLES, {});
15598
- module.exports = function (key) {
15599
- ArrayProto[UNSCOPABLES][key] = true;
15600
  };
15601
 
15602
 
15603
  /***/ }),
15604
- /* 131 */
15605
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
15606
 
15607
  "use strict";
15608
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _typeof; });
15609
- function _typeof(obj) {
15610
- if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
15611
- _typeof = function _typeof(obj) {
15612
- return typeof obj;
15613
- };
15614
- } else {
15615
- _typeof = function _typeof(obj) {
15616
- return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
15617
- };
15618
- }
15619
 
15620
- return _typeof(obj);
15621
- }
15622
 
15623
- /***/ }),
15624
- /* 132 */
15625
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
15626
 
15627
- "use strict";
15628
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ownerWindow; });
15629
- /* harmony import */ var _ownerDocument__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(53);
15630
 
15631
- function ownerWindow(node) {
15632
- var doc = Object(_ownerDocument__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(node);
15633
- return doc.defaultView || window;
 
 
 
 
 
 
15634
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15635
 
15636
  /***/ }),
15637
- /* 133 */
15638
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
15639
 
15640
  "use strict";
15641
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
15642
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
15643
 
15644
- /**
15645
- * @ignore - internal component.
15646
- */
15647
 
15648
- var ListContext = react__WEBPACK_IMPORTED_MODULE_0__["createContext"]({});
15649
 
15650
- if (false) {}
 
 
 
 
 
 
 
 
15651
 
15652
- /* harmony default export */ __webpack_exports__["a"] = (ListContext);
 
 
 
15653
 
15654
  /***/ }),
15655
- /* 134 */
15656
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
15657
 
15658
  "use strict";
15659
 
15660
- // EXPORTS
15661
- __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ react_router_Route; });
15662
- __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ react_router_Router; });
15663
- __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ react_router_Switch; });
15664
- __webpack_require__.d(__webpack_exports__, "d", function() { return /* binding */ react_router_context; });
15665
- __webpack_require__.d(__webpack_exports__, "e", function() { return /* binding */ matchPath; });
15666
- __webpack_require__.d(__webpack_exports__, "f", function() { return /* binding */ useHistory; });
15667
- __webpack_require__.d(__webpack_exports__, "g", function() { return /* binding */ useRouteMatch; });
15668
- __webpack_require__.d(__webpack_exports__, "h", function() { return /* binding */ withRouter; });
15669
-
15670
- // UNUSED EXPORTS: MemoryRouter, Prompt, Redirect, StaticRouter, generatePath, useLocation, useParams
15671
-
15672
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
15673
- var inheritsLoose = __webpack_require__(24);
15674
-
15675
- // EXTERNAL MODULE: ./node_modules/react/index.js
15676
- var react = __webpack_require__(0);
15677
- var react_default = /*#__PURE__*/__webpack_require__.n(react);
15678
 
15679
- // EXTERNAL MODULE: ./node_modules/prop-types/index.js
15680
- var prop_types = __webpack_require__(5);
15681
- var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
15682
 
15683
- // EXTERNAL MODULE: ./node_modules/history/esm/history.js + 2 modules
15684
- var esm_history = __webpack_require__(83);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15685
 
15686
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/inheritsLoose.js
15687
- var helpers_inheritsLoose = __webpack_require__(390);
15688
- var inheritsLoose_default = /*#__PURE__*/__webpack_require__.n(helpers_inheritsLoose);
 
 
15689
 
15690
- // EXTERNAL MODULE: ./node_modules/gud/index.js
15691
- var gud = __webpack_require__(497);
15692
- var gud_default = /*#__PURE__*/__webpack_require__.n(gud);
15693
 
15694
- // CONCATENATED MODULE: ./node_modules/mini-create-react-context/dist/esm/index.js
 
15695
 
 
 
 
 
 
 
 
 
 
 
 
15696
 
 
 
 
 
15697
 
 
15698
 
 
 
 
15699
 
 
 
15700
 
15701
- var MAX_SIGNED_31_BIT_INT = 1073741823;
 
15702
 
15703
- function objectIs(x, y) {
15704
- if (x === y) {
15705
- return x !== 0 || 1 / x === 1 / y;
15706
- } else {
15707
- return x !== x && y !== y;
15708
- }
15709
- }
15710
 
15711
- function createEventEmitter(value) {
15712
- var handlers = [];
15713
- return {
15714
- on: function on(handler) {
15715
- handlers.push(handler);
15716
- },
15717
- off: function off(handler) {
15718
- handlers = handlers.filter(function (h) {
15719
- return h !== handler;
15720
- });
15721
- },
15722
- get: function get() {
15723
- return value;
15724
- },
15725
- set: function set(newValue, changedBits) {
15726
- value = newValue;
15727
- handlers.forEach(function (handler) {
15728
- return handler(value, changedBits);
15729
- });
15730
  }
15731
- };
15732
- }
15733
 
15734
- function onlyChild(children) {
15735
- return Array.isArray(children) ? children[0] : children;
15736
  }
15737
 
15738
- function createReactContext(defaultValue, calculateChangedBits) {
15739
- var _Provider$childContex, _Consumer$contextType;
15740
 
15741
- var contextProp = '__create-react-context-' + gud_default()() + '__';
15742
 
15743
- var Provider =
15744
- /*#__PURE__*/
15745
- function (_Component) {
15746
- inheritsLoose_default()(Provider, _Component);
15747
 
15748
- function Provider() {
15749
- var _this;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15750
 
15751
- _this = _Component.apply(this, arguments) || this;
15752
- _this.emitter = createEventEmitter(_this.props.value);
15753
- return _this;
15754
- }
 
 
 
 
 
15755
 
15756
- var _proto = Provider.prototype;
 
 
15757
 
15758
- _proto.getChildContext = function getChildContext() {
15759
- var _ref;
 
15760
 
15761
- return _ref = {}, _ref[contextProp] = this.emitter, _ref;
15762
- };
 
15763
 
15764
- _proto.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
15765
- if (this.props.value !== nextProps.value) {
15766
- var oldValue = this.props.value;
15767
- var newValue = nextProps.value;
15768
- var changedBits;
15769
 
15770
- if (objectIs(oldValue, newValue)) {
15771
- changedBits = 0;
15772
- } else {
15773
- changedBits = typeof calculateChangedBits === 'function' ? calculateChangedBits(oldValue, newValue) : MAX_SIGNED_31_BIT_INT;
15774
 
15775
- if (false) {}
 
15776
 
15777
- changedBits |= 0;
 
15778
 
15779
- if (changedBits !== 0) {
15780
- this.emitter.set(nextProps.value, changedBits);
15781
- }
15782
- }
15783
- }
15784
- };
15785
 
15786
- _proto.render = function render() {
15787
- return this.props.children;
15788
- };
15789
 
15790
- return Provider;
15791
- }(react["Component"]);
15792
 
15793
- Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[contextProp] = prop_types_default.a.object.isRequired, _Provider$childContex);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15794
 
15795
- var Consumer =
15796
- /*#__PURE__*/
15797
- function (_Component2) {
15798
- inheritsLoose_default()(Consumer, _Component2);
15799
 
15800
- function Consumer() {
15801
- var _this2;
15802
 
15803
- _this2 = _Component2.apply(this, arguments) || this;
15804
- _this2.state = {
15805
- value: _this2.getValue()
15806
- };
15807
 
15808
- _this2.onUpdate = function (newValue, changedBits) {
15809
- var observedBits = _this2.observedBits | 0;
 
 
 
 
15810
 
15811
- if ((observedBits & changedBits) !== 0) {
15812
- _this2.setState({
15813
- value: _this2.getValue()
15814
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15815
  }
15816
- };
15817
-
15818
- return _this2;
15819
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15820
 
15821
- var _proto2 = Consumer.prototype;
15822
-
15823
- _proto2.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
15824
- var observedBits = nextProps.observedBits;
15825
- this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT : observedBits;
15826
- };
15827
 
15828
- _proto2.componentDidMount = function componentDidMount() {
15829
- if (this.context[contextProp]) {
15830
- this.context[contextProp].on(this.onUpdate);
15831
- }
15832
 
15833
- var observedBits = this.props.observedBits;
15834
- this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT : observedBits;
15835
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15836
 
15837
- _proto2.componentWillUnmount = function componentWillUnmount() {
15838
- if (this.context[contextProp]) {
15839
- this.context[contextProp].off(this.onUpdate);
15840
- }
15841
- };
15842
 
15843
- _proto2.getValue = function getValue() {
15844
- if (this.context[contextProp]) {
15845
- return this.context[contextProp].get();
15846
- } else {
15847
- return defaultValue;
15848
- }
15849
- };
15850
 
15851
- _proto2.render = function render() {
15852
- return onlyChild(this.props.children)(this.state.value);
15853
- };
15854
 
15855
- return Consumer;
15856
- }(react["Component"]);
 
 
 
 
 
 
 
 
 
15857
 
15858
- Consumer.contextTypes = (_Consumer$contextType = {}, _Consumer$contextType[contextProp] = prop_types_default.a.object, _Consumer$contextType);
15859
- return {
15860
- Provider: Provider,
15861
- Consumer: Consumer
15862
- };
15863
- }
15864
 
15865
- var index = react_default.a.createContext || createReactContext;
15866
 
15867
- /* harmony default export */ var esm = (index);
15868
 
15869
- // EXTERNAL MODULE: ./node_modules/tiny-invariant/dist/tiny-invariant.esm.js
15870
- var tiny_invariant_esm = __webpack_require__(63);
15871
 
15872
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
15873
- var esm_extends = __webpack_require__(2);
15874
 
15875
- // EXTERNAL MODULE: ./node_modules/path-to-regexp/index.js
15876
- var path_to_regexp = __webpack_require__(391);
15877
- var path_to_regexp_default = /*#__PURE__*/__webpack_require__.n(path_to_regexp);
15878
 
15879
- // EXTERNAL MODULE: ./node_modules/react-is/index.js
15880
- var react_is = __webpack_require__(116);
 
 
 
 
15881
 
15882
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
15883
- var objectWithoutPropertiesLoose = __webpack_require__(22);
15884
 
15885
- // EXTERNAL MODULE: ./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
15886
- var hoist_non_react_statics_cjs = __webpack_require__(155);
15887
- var hoist_non_react_statics_cjs_default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics_cjs);
15888
 
15889
- // CONCATENATED MODULE: ./node_modules/react-router/esm/react-router.js
 
15890
 
 
 
15891
 
 
 
15892
 
 
 
15893
 
 
 
15894
 
 
 
15895
 
 
 
15896
 
 
 
15897
 
 
 
15898
 
 
 
15899
 
 
 
15900
 
 
 
 
 
 
 
 
15901
 
 
 
 
 
15902
 
15903
- // TODO: Replace with React.createContext once we can assume React 16+
 
 
 
15904
 
15905
- var react_router_createNamedContext = function createNamedContext(name) {
15906
- var context = esm();
15907
- context.displayName = name;
15908
- return context;
15909
- };
15910
 
15911
- var react_router_context =
15912
- /*#__PURE__*/
15913
- react_router_createNamedContext("Router");
 
15914
 
15915
- /**
15916
- * The public API for putting history on context.
15917
- */
 
 
 
15918
 
15919
- var react_router_Router =
15920
- /*#__PURE__*/
15921
- function (_React$Component) {
15922
- Object(inheritsLoose["a" /* default */])(Router, _React$Component);
15923
 
15924
- Router.computeRootMatch = function computeRootMatch(pathname) {
15925
- return {
15926
- path: "/",
15927
- url: "/",
15928
- params: {},
15929
- isExact: pathname === "/"
15930
- };
15931
- };
15932
 
15933
- function Router(props) {
15934
- var _this;
 
 
15935
 
15936
- _this = _React$Component.call(this, props) || this;
15937
- _this.state = {
15938
- location: props.history.location
15939
- }; // This is a bit of a hack. We have to start listening for location
15940
- // changes here in the constructor in case there are any <Redirect>s
15941
- // on the initial render. If there are, they will replace/push when
15942
- // they mount and since cDM fires in children before parents, we may
15943
- // get a new location before the <Router> is mounted.
15944
 
15945
- _this._isMounted = false;
15946
- _this._pendingLocation = null;
 
 
15947
 
15948
- if (!props.staticContext) {
15949
- _this.unlisten = props.history.listen(function (location) {
15950
- if (_this._isMounted) {
15951
- _this.setState({
15952
- location: location
15953
- });
15954
- } else {
15955
- _this._pendingLocation = location;
15956
- }
15957
- });
15958
- }
15959
 
15960
- return _this;
15961
- }
 
 
15962
 
15963
- var _proto = Router.prototype;
 
 
 
15964
 
15965
- _proto.componentDidMount = function componentDidMount() {
15966
- this._isMounted = true;
 
 
15967
 
15968
- if (this._pendingLocation) {
15969
- this.setState({
15970
- location: this._pendingLocation
15971
- });
15972
  }
15973
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15974
 
15975
- _proto.componentWillUnmount = function componentWillUnmount() {
15976
- if (this.unlisten) this.unlisten();
15977
- };
15978
-
15979
- _proto.render = function render() {
15980
- return react_default.a.createElement(react_router_context.Provider, {
15981
- children: this.props.children || null,
15982
- value: {
15983
- history: this.props.history,
15984
- location: this.state.location,
15985
- match: Router.computeRootMatch(this.state.location.pathname),
15986
- staticContext: this.props.staticContext
15987
- }
15988
- });
15989
- };
15990
 
15991
- return Router;
15992
- }(react_default.a.Component);
 
15993
 
15994
- if (false) {}
 
 
 
 
 
 
 
 
 
15995
 
15996
- /**
15997
- * The public API for a <Router> that stores location in memory.
15998
- */
15999
 
16000
- var react_router_MemoryRouter =
16001
- /*#__PURE__*/
16002
- function (_React$Component) {
16003
- Object(inheritsLoose["a" /* default */])(MemoryRouter, _React$Component);
16004
 
16005
- function MemoryRouter() {
16006
- var _this;
16007
 
16008
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
16009
- args[_key] = arguments[_key];
16010
- }
16011
 
16012
- _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
16013
- _this.history = Object(esm_history["d" /* createMemoryHistory */])(_this.props);
16014
- return _this;
16015
- }
16016
 
16017
- var _proto = MemoryRouter.prototype;
 
 
 
 
 
 
 
 
 
 
 
 
 
16018
 
16019
- _proto.render = function render() {
16020
- return react_default.a.createElement(react_router_Router, {
16021
- history: this.history,
16022
- children: this.props.children
16023
- });
 
16024
  };
 
 
 
 
 
 
 
16025
 
16026
- return MemoryRouter;
16027
- }(react_default.a.Component);
 
 
 
 
 
 
 
16028
 
16029
- if (false) {}
 
 
16030
 
16031
- var react_router_Lifecycle =
16032
- /*#__PURE__*/
16033
- function (_React$Component) {
16034
- Object(inheritsLoose["a" /* default */])(Lifecycle, _React$Component);
 
 
 
 
 
16035
 
16036
- function Lifecycle() {
16037
- return _React$Component.apply(this, arguments) || this;
16038
- }
16039
 
16040
- var _proto = Lifecycle.prototype;
16041
 
16042
- _proto.componentDidMount = function componentDidMount() {
16043
- if (this.props.onMount) this.props.onMount.call(this, this);
16044
- };
16045
 
16046
- _proto.componentDidUpdate = function componentDidUpdate(prevProps) {
16047
- if (this.props.onUpdate) this.props.onUpdate.call(this, this, prevProps);
16048
- };
16049
 
16050
- _proto.componentWillUnmount = function componentWillUnmount() {
16051
- if (this.props.onUnmount) this.props.onUnmount.call(this, this);
16052
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16053
 
16054
- _proto.render = function render() {
16055
- return null;
16056
- };
 
16057
 
16058
- return Lifecycle;
16059
- }(react_default.a.Component);
 
 
 
 
16060
 
16061
  /**
16062
- * The public API for prompting the user before navigating away from a screen.
 
 
 
 
16063
  */
16064
-
16065
- function Prompt(_ref) {
16066
- var message = _ref.message,
16067
- _ref$when = _ref.when,
16068
- when = _ref$when === void 0 ? true : _ref$when;
16069
- return react_default.a.createElement(react_router_context.Consumer, null, function (context) {
16070
- !context ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
16071
- if (!when || context.staticContext) return null;
16072
- var method = context.history.block;
16073
- return react_default.a.createElement(react_router_Lifecycle, {
16074
- onMount: function onMount(self) {
16075
- self.release = method(message);
16076
- },
16077
- onUpdate: function onUpdate(self, prevProps) {
16078
- if (prevProps.message !== message) {
16079
- self.release();
16080
- self.release = method(message);
16081
- }
16082
- },
16083
- onUnmount: function onUnmount(self) {
16084
- self.release();
16085
- },
16086
- message: message
16087
- });
16088
- });
16089
  }
16090
 
16091
- if (false) { var messageType; }
 
 
 
 
 
16092
 
16093
- var cache = {};
16094
- var cacheLimit = 10000;
16095
- var cacheCount = 0;
16096
 
16097
- function compilePath(path) {
16098
- if (cache[path]) return cache[path];
16099
- var generator = path_to_regexp_default.a.compile(path);
16100
 
16101
- if (cacheCount < cacheLimit) {
16102
- cache[path] = generator;
16103
- cacheCount++;
16104
- }
16105
 
16106
- return generator;
16107
- }
16108
- /**
16109
- * Public API for generating a URL pathname from a path and parameters.
16110
- */
16111
 
 
 
16112
 
16113
- function generatePath(path, params) {
16114
- if (path === void 0) {
16115
- path = "/";
16116
- }
16117
 
16118
- if (params === void 0) {
16119
- params = {};
16120
- }
16121
 
16122
- return path === "/" ? path : compilePath(path)(params, {
16123
- pretty: true
16124
- });
16125
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16126
 
16127
  /**
16128
- * The public API for navigating programmatically with a component.
 
 
 
 
16129
  */
 
 
 
16130
 
16131
- function Redirect(_ref) {
16132
- var computedMatch = _ref.computedMatch,
16133
- to = _ref.to,
16134
- _ref$push = _ref.push,
16135
- push = _ref$push === void 0 ? false : _ref$push;
16136
- return react_default.a.createElement(react_router_context.Consumer, null, function (context) {
16137
- !context ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
16138
- var history = context.history,
16139
- staticContext = context.staticContext;
16140
- var method = push ? history.push : history.replace;
16141
- var location = Object(esm_history["c" /* createLocation */])(computedMatch ? typeof to === "string" ? generatePath(to, computedMatch.params) : Object(esm_extends["a" /* default */])({}, to, {
16142
- pathname: generatePath(to.pathname, computedMatch.params)
16143
- }) : to); // When rendering in a static context,
16144
- // set the new location immediately.
16145
 
16146
- if (staticContext) {
16147
- method(location);
16148
- return null;
16149
- }
16150
 
16151
- return react_default.a.createElement(react_router_Lifecycle, {
16152
- onMount: function onMount() {
16153
- method(location);
16154
- },
16155
- onUpdate: function onUpdate(self, prevProps) {
16156
- var prevLocation = Object(esm_history["c" /* createLocation */])(prevProps.to);
16157
 
16158
- if (!Object(esm_history["f" /* locationsAreEqual */])(prevLocation, Object(esm_extends["a" /* default */])({}, location, {
16159
- key: prevLocation.key
16160
- }))) {
16161
- method(location);
16162
- }
16163
- },
16164
- to: to
16165
- });
16166
- });
16167
- }
16168
 
16169
- if (false) {}
 
16170
 
16171
- var cache$1 = {};
16172
- var cacheLimit$1 = 10000;
16173
- var cacheCount$1 = 0;
16174
 
16175
- function compilePath$1(path, options) {
16176
- var cacheKey = "" + options.end + options.strict + options.sensitive;
16177
- var pathCache = cache$1[cacheKey] || (cache$1[cacheKey] = {});
16178
- if (pathCache[path]) return pathCache[path];
16179
- var keys = [];
16180
- var regexp = path_to_regexp_default()(path, keys, options);
16181
- var result = {
16182
- regexp: regexp,
16183
- keys: keys
16184
- };
16185
 
16186
- if (cacheCount$1 < cacheLimit$1) {
16187
- pathCache[path] = result;
16188
- cacheCount$1++;
16189
- }
16190
 
16191
- return result;
16192
- }
16193
  /**
16194
- * Public API for matching a URL pathname to a path.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16195
  */
 
 
 
 
16196
 
 
16197
 
16198
- function matchPath(pathname, options) {
16199
- if (options === void 0) {
16200
- options = {};
16201
- }
16202
-
16203
- if (typeof options === "string" || Array.isArray(options)) {
16204
- options = {
16205
- path: options
16206
- };
16207
- }
16208
 
16209
- var _options = options,
16210
- path = _options.path,
16211
- _options$exact = _options.exact,
16212
- exact = _options$exact === void 0 ? false : _options$exact,
16213
- _options$strict = _options.strict,
16214
- strict = _options$strict === void 0 ? false : _options$strict,
16215
- _options$sensitive = _options.sensitive,
16216
- sensitive = _options$sensitive === void 0 ? false : _options$sensitive;
16217
- var paths = [].concat(path);
16218
- return paths.reduce(function (matched, path) {
16219
- if (!path && path !== "") return null;
16220
- if (matched) return matched;
16221
 
16222
- var _compilePath = compilePath$1(path, {
16223
- end: exact,
16224
- strict: strict,
16225
- sensitive: sensitive
16226
- }),
16227
- regexp = _compilePath.regexp,
16228
- keys = _compilePath.keys;
16229
 
16230
- var match = regexp.exec(pathname);
16231
- if (!match) return null;
16232
- var url = match[0],
16233
- values = match.slice(1);
16234
- var isExact = pathname === url;
16235
- if (exact && !isExact) return null;
16236
- return {
16237
- path: path,
16238
- // the path used to match
16239
- url: path === "/" && url === "" ? "/" : url,
16240
- // the matched portion of the URL
16241
- isExact: isExact,
16242
- // whether or not we matched exactly
16243
- params: keys.reduce(function (memo, key, index) {
16244
- memo[key.name] = values[index];
16245
- return memo;
16246
- }, {})
16247
- };
16248
- }, null);
16249
- }
16250
-
16251
- function isEmptyChildren(children) {
16252
- return react_default.a.Children.count(children) === 0;
16253
- }
16254
-
16255
- function evalChildrenDev(children, props, path) {
16256
- var value = children(props);
16257
- false ? undefined : void 0;
16258
- return value || null;
16259
- }
16260
  /**
16261
- * The public API for matching a single path and rendering.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16262
  */
 
 
 
 
16263
 
 
16264
 
16265
- var react_router_Route =
16266
- /*#__PURE__*/
16267
- function (_React$Component) {
16268
- Object(inheritsLoose["a" /* default */])(Route, _React$Component);
16269
-
16270
- function Route() {
16271
- return _React$Component.apply(this, arguments) || this;
16272
- }
16273
-
16274
- var _proto = Route.prototype;
16275
-
16276
- _proto.render = function render() {
16277
- var _this = this;
16278
-
16279
- return react_default.a.createElement(react_router_context.Consumer, null, function (context$1) {
16280
- !context$1 ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
16281
- var location = _this.props.location || context$1.location;
16282
- var match = _this.props.computedMatch ? _this.props.computedMatch // <Switch> already computed the match for us
16283
- : _this.props.path ? matchPath(location.pathname, _this.props) : context$1.match;
16284
-
16285
- var props = Object(esm_extends["a" /* default */])({}, context$1, {
16286
- location: location,
16287
- match: match
16288
- });
16289
-
16290
- var _this$props = _this.props,
16291
- children = _this$props.children,
16292
- component = _this$props.component,
16293
- render = _this$props.render; // Preact uses an empty array as children by
16294
- // default, so use null if that's the case.
16295
 
16296
- if (Array.isArray(children) && children.length === 0) {
16297
- children = null;
16298
- }
16299
 
16300
- return react_default.a.createElement(react_router_context.Provider, {
16301
- value: props
16302
- }, props.match ? children ? typeof children === "function" ? false ? undefined : children(props) : children : component ? react_default.a.createElement(component, props) : render ? render(props) : null : typeof children === "function" ? false ? undefined : children(props) : null);
16303
- });
16304
- };
16305
 
16306
- return Route;
16307
- }(react_default.a.Component);
16308
 
16309
- if (false) {}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16310
 
16311
- function addLeadingSlash(path) {
16312
- return path.charAt(0) === "/" ? path : "/" + path;
16313
- }
16314
 
16315
- function addBasename(basename, location) {
16316
- if (!basename) return location;
16317
- return Object(esm_extends["a" /* default */])({}, location, {
16318
- pathname: addLeadingSlash(basename) + location.pathname
16319
- });
16320
- }
16321
 
16322
- function stripBasename(basename, location) {
16323
- if (!basename) return location;
16324
- var base = addLeadingSlash(basename);
16325
- if (location.pathname.indexOf(base) !== 0) return location;
16326
- return Object(esm_extends["a" /* default */])({}, location, {
16327
- pathname: location.pathname.substr(base.length)
16328
- });
16329
- }
16330
 
16331
- function createURL(location) {
16332
- return typeof location === "string" ? location : Object(esm_history["e" /* createPath */])(location);
16333
- }
16334
 
16335
- function staticHandler(methodName) {
16336
- return function () {
16337
- false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) ;
16338
- };
16339
- }
16340
 
16341
- function noop() {}
16342
  /**
16343
- * The public top-level API for a "static" <Router>, so-called because it
16344
- * can't actually change the current location. Instead, it just records
16345
- * location changes in a context object. Useful mainly in testing and
16346
- * server-rendering scenarios.
 
 
16347
  */
 
 
 
16348
 
 
 
 
 
 
16349
 
16350
- var react_router_StaticRouter =
16351
- /*#__PURE__*/
16352
- function (_React$Component) {
16353
- Object(inheritsLoose["a" /* default */])(StaticRouter, _React$Component);
16354
 
16355
- function StaticRouter() {
16356
- var _this;
16357
 
16358
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
16359
- args[_key] = arguments[_key];
16360
- }
16361
 
16362
- _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
 
 
 
 
 
16363
 
16364
- _this.handlePush = function (location) {
16365
- return _this.navigateTo(location, "PUSH");
16366
- };
16367
 
16368
- _this.handleReplace = function (location) {
16369
- return _this.navigateTo(location, "REPLACE");
16370
- };
16371
 
16372
- _this.handleListen = function () {
16373
- return noop;
16374
- };
 
 
 
16375
 
16376
- _this.handleBlock = function () {
16377
- return noop;
16378
- };
16379
 
16380
- return _this;
 
 
 
 
 
 
 
 
 
 
 
 
16381
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16382
 
16383
- var _proto = StaticRouter.prototype;
16384
-
16385
- _proto.navigateTo = function navigateTo(location, action) {
16386
- var _this$props = this.props,
16387
- _this$props$basename = _this$props.basename,
16388
- basename = _this$props$basename === void 0 ? "" : _this$props$basename,
16389
- _this$props$context = _this$props.context,
16390
- context = _this$props$context === void 0 ? {} : _this$props$context;
16391
- context.action = action;
16392
- context.location = addBasename(basename, Object(esm_history["c" /* createLocation */])(location));
16393
- context.url = createURL(context.location);
16394
- };
16395
 
16396
- _proto.render = function render() {
16397
- var _this$props2 = this.props,
16398
- _this$props2$basename = _this$props2.basename,
16399
- basename = _this$props2$basename === void 0 ? "" : _this$props2$basename,
16400
- _this$props2$context = _this$props2.context,
16401
- context = _this$props2$context === void 0 ? {} : _this$props2$context,
16402
- _this$props2$location = _this$props2.location,
16403
- location = _this$props2$location === void 0 ? "/" : _this$props2$location,
16404
- rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_this$props2, ["basename", "context", "location"]);
16405
 
16406
- var history = {
16407
- createHref: function createHref(path) {
16408
- return addLeadingSlash(basename + createURL(path));
16409
- },
16410
- action: "POP",
16411
- location: stripBasename(basename, Object(esm_history["c" /* createLocation */])(location)),
16412
- push: this.handlePush,
16413
- replace: this.handleReplace,
16414
- go: staticHandler("go"),
16415
- goBack: staticHandler("goBack"),
16416
- goForward: staticHandler("goForward"),
16417
- listen: this.handleListen,
16418
- block: this.handleBlock
16419
- };
16420
- return react_default.a.createElement(react_router_Router, Object(esm_extends["a" /* default */])({}, rest, {
16421
- history: history,
16422
- staticContext: context
16423
- }));
16424
- };
16425
 
16426
- return StaticRouter;
16427
- }(react_default.a.Component);
16428
 
16429
- if (false) {}
 
 
 
 
16430
 
16431
- /**
16432
- * The public API for rendering the first <Route> that matches.
16433
- */
16434
 
16435
- var react_router_Switch =
16436
- /*#__PURE__*/
16437
- function (_React$Component) {
16438
- Object(inheritsLoose["a" /* default */])(Switch, _React$Component);
16439
 
16440
- function Switch() {
16441
- return _React$Component.apply(this, arguments) || this;
16442
- }
16443
 
16444
- var _proto = Switch.prototype;
 
 
16445
 
16446
- _proto.render = function render() {
16447
- var _this = this;
16448
 
16449
- return react_default.a.createElement(react_router_context.Consumer, null, function (context) {
16450
- !context ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
16451
- var location = _this.props.location || context.location;
16452
- var element, match; // We use React.Children.forEach instead of React.Children.toArray().find()
16453
- // here because toArray adds keys to all child elements and we do not want
16454
- // to trigger an unmount/remount for two <Route>s that render the same
16455
- // component at different URLs.
16456
 
16457
- react_default.a.Children.forEach(_this.props.children, function (child) {
16458
- if (match == null && react_default.a.isValidElement(child)) {
16459
- element = child;
16460
- var path = child.props.path || child.props.from;
16461
- match = path ? matchPath(location.pathname, Object(esm_extends["a" /* default */])({}, child.props, {
16462
- path: path
16463
- })) : context.match;
16464
- }
16465
- });
16466
- return match ? react_default.a.cloneElement(element, {
16467
- location: location,
16468
- computedMatch: match
16469
- }) : null;
16470
- });
16471
- };
16472
 
16473
- return Switch;
16474
- }(react_default.a.Component);
 
 
 
 
 
 
 
16475
 
16476
- if (false) {}
 
 
 
 
 
 
 
 
16477
 
16478
- /**
16479
- * A public higher-order component to access the imperative API
16480
- */
16481
 
16482
- function withRouter(Component) {
16483
- var displayName = "withRouter(" + (Component.displayName || Component.name) + ")";
16484
 
16485
- var C = function C(props) {
16486
- var wrappedComponentRef = props.wrappedComponentRef,
16487
- remainingProps = Object(objectWithoutPropertiesLoose["a" /* default */])(props, ["wrappedComponentRef"]);
16488
 
16489
- return react_default.a.createElement(react_router_context.Consumer, null, function (context) {
16490
- !context ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
16491
- return react_default.a.createElement(Component, Object(esm_extends["a" /* default */])({}, remainingProps, context, {
16492
- ref: wrappedComponentRef
16493
- }));
16494
- });
16495
- };
16496
 
16497
- C.displayName = displayName;
16498
- C.WrappedComponent = Component;
16499
 
16500
- if (false) {}
 
 
16501
 
16502
- return hoist_non_react_statics_cjs_default()(C, Component);
16503
- }
 
 
 
16504
 
16505
- var useContext = react_default.a.useContext;
16506
- function useHistory() {
16507
- if (false) {}
16508
 
16509
- return useContext(react_router_context).history;
16510
- }
16511
- function useLocation() {
16512
- if (false) {}
16513
 
16514
- return useContext(react_router_context).location;
16515
- }
16516
- function useParams() {
16517
- if (false) {}
16518
 
16519
- var match = useContext(react_router_context).match;
16520
- return match ? match.params : {};
16521
- }
16522
- function useRouteMatch(path) {
16523
- if (false) {}
16524
 
16525
- return path ? matchPath(useLocation().pathname, path) : useContext(react_router_context).match;
16526
- }
 
16527
 
16528
- if (false) { var secondaryBuildName, initialBuildName, buildNames, key, global; }
16529
 
 
 
16530
 
16531
- //# sourceMappingURL=react-router.js.map
 
16532
 
 
 
16533
 
16534
- /***/ }),
16535
- /* 135 */,
16536
- /* 136 */
16537
- /***/ (function(module, exports, __webpack_require__) {
16538
 
16539
- var baseGetTag = __webpack_require__(72),
16540
- isObject = __webpack_require__(50);
16541
 
16542
- /** `Object#toString` result references. */
16543
- var asyncTag = '[object AsyncFunction]',
16544
- funcTag = '[object Function]',
16545
- genTag = '[object GeneratorFunction]',
16546
- proxyTag = '[object Proxy]';
16547
 
16548
  /**
16549
- * Checks if `value` is classified as a `Function` object.
16550
- *
16551
- * @static
16552
- * @memberOf _
16553
- * @since 0.1.0
16554
- * @category Lang
16555
- * @param {*} value The value to check.
16556
- * @returns {boolean} Returns `true` if `value` is a function, else `false`.
16557
- * @example
16558
- *
16559
- * _.isFunction(_);
16560
- * // => true
16561
- *
16562
- * _.isFunction(/abc/);
16563
- * // => false
16564
  */
16565
- function isFunction(value) {
16566
- if (!isObject(value)) {
16567
- return false;
 
 
 
 
 
 
 
 
 
 
16568
  }
16569
- // The use of `Object#toString` avoids issues with the `typeof` operator
16570
- // in Safari 9 which returns 'object' for typed arrays and other constructors.
16571
- var tag = baseGetTag(value);
16572
- return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
16573
  }
16574
-
16575
- module.exports = isFunction;
16576
-
16577
-
16578
- /***/ }),
16579
- /* 137 */
16580
- /***/ (function(module, exports, __webpack_require__) {
16581
-
16582
- var defineProperty = __webpack_require__(203);
16583
-
16584
  /**
16585
- * The base implementation of `assignValue` and `assignMergeValue` without
16586
- * value checks.
16587
- *
16588
- * @private
16589
- * @param {Object} object The object to modify.
16590
- * @param {string} key The key of the property to assign.
16591
- * @param {*} value The value to assign.
16592
  */
16593
- function baseAssignValue(object, key, value) {
16594
- if (key == '__proto__' && defineProperty) {
16595
- defineProperty(object, key, {
16596
- 'configurable': true,
16597
- 'enumerable': true,
16598
- 'value': value,
16599
- 'writable': true
16600
- });
16601
- } else {
16602
- object[key] = value;
 
 
16603
  }
16604
- }
16605
 
16606
- module.exports = baseAssignValue;
 
 
 
 
16607
 
 
 
 
16608
 
16609
- /***/ }),
16610
- /* 138 */
16611
- /***/ (function(module, exports) {
16612
 
16613
- module.exports = function(module) {
16614
- if (!module.webpackPolyfill) {
16615
- module.deprecate = function() {};
16616
- module.paths = [];
16617
- // module.parent = undefined by default
16618
- if (!module.children) module.children = [];
16619
- Object.defineProperty(module, "loaded", {
16620
- enumerable: true,
16621
- get: function() {
16622
- return module.l;
16623
- }
16624
- });
16625
- Object.defineProperty(module, "id", {
16626
- enumerable: true,
16627
- get: function() {
16628
- return module.i;
16629
- }
16630
- });
16631
- module.webpackPolyfill = 1;
16632
- }
16633
- return module;
16634
- };
16635
 
 
16636
 
16637
- /***/ }),
16638
- /* 139 */
16639
- /***/ (function(module, exports, __webpack_require__) {
16640
 
16641
- /* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__(54),
16642
- stubFalse = __webpack_require__(327);
16643
 
16644
- /** Detect free variable `exports`. */
16645
- var freeExports = true && exports && !exports.nodeType && exports;
16646
 
16647
- /** Detect free variable `module`. */
16648
- var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
16649
 
16650
- /** Detect the popular CommonJS extension `module.exports`. */
16651
- var moduleExports = freeModule && freeModule.exports === freeExports;
16652
-
16653
- /** Built-in value references. */
16654
- var Buffer = moduleExports ? root.Buffer : undefined;
16655
-
16656
- /* Built-in method references for those with the same name as other `lodash` methods. */
16657
- var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;
16658
-
16659
- /**
16660
- * Checks if `value` is a buffer.
16661
- *
16662
- * @static
16663
- * @memberOf _
16664
- * @since 4.3.0
16665
- * @category Lang
16666
- * @param {*} value The value to check.
16667
- * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
16668
- * @example
16669
- *
16670
- * _.isBuffer(new Buffer(2));
16671
- * // => true
16672
- *
16673
- * _.isBuffer(new Uint8Array(2));
16674
- * // => false
16675
- */
16676
- var isBuffer = nativeIsBuffer || stubFalse;
16677
-
16678
- module.exports = isBuffer;
16679
-
16680
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(138)(module)))
16681
-
16682
- /***/ }),
16683
- /* 140 */
16684
- /***/ (function(module, exports, __webpack_require__) {
16685
-
16686
- var assignValue = __webpack_require__(237),
16687
- baseAssignValue = __webpack_require__(137);
16688
-
16689
- /**
16690
- * Copies properties of `source` to `object`.
16691
- *
16692
- * @private
16693
- * @param {Object} source The object to copy properties from.
16694
- * @param {Array} props The property identifiers to copy.
16695
- * @param {Object} [object={}] The object to copy properties to.
16696
- * @param {Function} [customizer] The function to customize copied values.
16697
- * @returns {Object} Returns `object`.
16698
- */
16699
- function copyObject(source, props, object, customizer) {
16700
- var isNew = !object;
16701
- object || (object = {});
16702
-
16703
- var index = -1,
16704
- length = props.length;
16705
 
16706
- while (++index < length) {
16707
- var key = props[index];
 
 
16708
 
16709
- var newValue = customizer
16710
- ? customizer(object[key], source[key], key, object, source)
16711
- : undefined;
 
 
 
16712
 
16713
- if (newValue === undefined) {
16714
- newValue = source[key];
16715
- }
16716
- if (isNew) {
16717
- baseAssignValue(object, key, newValue);
16718
- } else {
16719
- assignValue(object, key, newValue);
16720
  }
16721
- }
16722
- return object;
16723
- }
16724
-
16725
- module.exports = copyObject;
16726
-
16727
 
16728
- /***/ }),
16729
- /* 141 */
16730
- /***/ (function(module, exports) {
16731
 
16732
- /**
16733
- * This method returns the first argument it receives.
16734
- *
16735
- * @static
16736
- * @since 0.1.0
16737
- * @memberOf _
16738
- * @category Util
16739
- * @param {*} value Any value.
16740
- * @returns {*} Returns `value`.
16741
- * @example
16742
- *
16743
- * var object = { 'a': 1 };
16744
- *
16745
- * console.log(_.identity(object) === object);
16746
- * // => true
16747
- */
16748
- function identity(value) {
16749
- return value;
16750
- }
16751
 
16752
- module.exports = identity;
 
 
16753
 
 
 
 
 
 
 
16754
 
16755
- /***/ }),
16756
- /* 142 */
16757
- /***/ (function(module, exports, __webpack_require__) {
 
16758
 
16759
- var DESCRIPTORS = __webpack_require__(125);
16760
- var IE8_DOM_DEFINE = __webpack_require__(412);
16761
- var anObject = __webpack_require__(87);
16762
- var toPrimitive = __webpack_require__(411);
 
 
 
16763
 
16764
- var nativeDefineProperty = Object.defineProperty;
 
 
16765
 
16766
- // `Object.defineProperty` method
16767
- // https://tc39.github.io/ecma262/#sec-object.defineproperty
16768
- exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
16769
- anObject(O);
16770
- P = toPrimitive(P, true);
16771
- anObject(Attributes);
16772
- if (IE8_DOM_DEFINE) try {
16773
- return nativeDefineProperty(O, P, Attributes);
16774
- } catch (error) { /* empty */ }
16775
- if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
16776
- if ('value' in Attributes) O[P] = Attributes.value;
16777
- return O;
16778
- };
16779
 
 
16780
 
16781
- /***/ }),
16782
- /* 143 */
16783
- /***/ (function(module, exports) {
16784
 
16785
- module.exports = function (bitmap, value) {
16786
- return {
16787
- enumerable: !(bitmap & 1),
16788
- configurable: !(bitmap & 2),
16789
- writable: !(bitmap & 4),
16790
- value: value
16791
- };
16792
- };
16793
 
 
16794
 
16795
- /***/ }),
16796
- /* 144 */
16797
- /***/ (function(module, exports) {
16798
 
16799
- var id = 0;
16800
- var px = Math.random();
16801
- module.exports = function (key) {
16802
- return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
16803
- };
16804
 
16805
 
16806
- /***/ }),
16807
- /* 145 */
16808
- /***/ (function(module, exports, __webpack_require__) {
16809
 
16810
- // 19.1.2.14 / 15.2.3.14 Object.keys(O)
16811
- var $keys = __webpack_require__(458);
16812
- var enumBugKeys = __webpack_require__(361);
16813
 
16814
- module.exports = Object.keys || function keys(O) {
16815
- return $keys(O, enumBugKeys);
16816
- };
16817
 
16818
 
16819
- /***/ }),
16820
- /* 146 */
16821
- /***/ (function(module, exports, __webpack_require__) {
16822
 
16823
- var toInteger = __webpack_require__(103);
16824
- var max = Math.max;
16825
- var min = Math.min;
16826
- module.exports = function (index, length) {
16827
- index = toInteger(index);
16828
- return index < 0 ? max(index + length, 0) : min(index, length);
16829
- };
16830
 
 
 
 
 
 
16831
 
16832
- /***/ }),
16833
- /* 147 */
16834
- /***/ (function(module, exports, __webpack_require__) {
16835
 
16836
- // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
16837
- var anObject = __webpack_require__(21);
16838
- var dPs = __webpack_require__(459);
16839
- var enumBugKeys = __webpack_require__(361);
16840
- var IE_PROTO = __webpack_require__(360)('IE_PROTO');
16841
- var Empty = function () { /* empty */ };
16842
- var PROTOTYPE = 'prototype';
16843
 
16844
- // Create object with fake `null` prototype: use iframe Object with cleared prototype
16845
- var createDict = function () {
16846
- // Thrash, waste and sodomy: IE GC bug
16847
- var iframe = __webpack_require__(358)('iframe');
16848
- var i = enumBugKeys.length;
16849
- var lt = '<';
16850
- var gt = '>';
16851
- var iframeDocument;
16852
- iframe.style.display = 'none';
16853
- __webpack_require__(362).appendChild(iframe);
16854
- iframe.src = 'javascript:'; // eslint-disable-line no-script-url
16855
- // createDict = iframe.contentWindow.Object;
16856
- // html.removeChild(iframe);
16857
- iframeDocument = iframe.contentWindow.document;
16858
- iframeDocument.open();
16859
- iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
16860
- iframeDocument.close();
16861
- createDict = iframeDocument.F;
16862
- while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
16863
- return createDict();
16864
- };
16865
 
16866
- module.exports = Object.create || function create(O, Properties) {
16867
- var result;
16868
- if (O !== null) {
16869
- Empty[PROTOTYPE] = anObject(O);
16870
- result = new Empty();
16871
- Empty[PROTOTYPE] = null;
16872
- // add "__proto__" for Object.getPrototypeOf polyfill
16873
- result[IE_PROTO] = O;
16874
- } else result = createDict();
16875
- return Properties === undefined ? result : dPs(result, Properties);
16876
- };
16877
 
 
 
 
16878
 
16879
- /***/ }),
16880
- /* 148 */
16881
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
16882
 
16883
- // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
16884
- var $keys = __webpack_require__(458);
16885
- var hiddenKeys = __webpack_require__(361).concat('length', 'prototype');
 
16886
 
16887
- exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
16888
- return $keys(O, hiddenKeys);
 
 
16889
  };
16890
 
16891
-
16892
  /***/ }),
16893
- /* 149 */
16894
- /***/ (function(module, exports, __webpack_require__) {
16895
 
16896
  "use strict";
 
 
 
16897
 
16898
- var global = __webpack_require__(25);
16899
- var dP = __webpack_require__(46);
16900
- var DESCRIPTORS = __webpack_require__(45);
16901
- var SPECIES = __webpack_require__(40)('species');
16902
-
16903
- module.exports = function (KEY) {
16904
- var C = global[KEY];
16905
- if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
16906
- configurable: true,
16907
- get: function () { return this; }
16908
- });
16909
- };
16910
-
16911
-
16912
- /***/ }),
16913
- /* 150 */
16914
- /***/ (function(module, exports) {
16915
-
16916
- module.exports = function (it, Constructor, name, forbiddenField) {
16917
- if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
16918
- throw TypeError(name + ': incorrect invocation!');
16919
- } return it;
16920
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16921
 
 
16922
 
16923
  /***/ }),
16924
- /* 151 */
16925
- /***/ (function(module, exports, __webpack_require__) {
16926
 
16927
- var ctx = __webpack_require__(90);
16928
- var call = __webpack_require__(470);
16929
- var isArrayIter = __webpack_require__(374);
16930
- var anObject = __webpack_require__(21);
16931
- var toLength = __webpack_require__(47);
16932
- var getIterFn = __webpack_require__(376);
16933
- var BREAK = {};
16934
- var RETURN = {};
16935
- var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
16936
- var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
16937
- var f = ctx(fn, that, entries ? 2 : 1);
16938
- var index = 0;
16939
- var length, step, iterator, result;
16940
- if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
16941
- // fast case for arrays with default iterator
16942
- if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
16943
- result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
16944
- if (result === BREAK || result === RETURN) return result;
16945
- } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
16946
- result = call(iterator, f, step.value, entries);
16947
- if (result === BREAK || result === RETURN) return result;
16948
- }
16949
- };
16950
- exports.BREAK = BREAK;
16951
- exports.RETURN = RETURN;
16952
 
 
16953
 
16954
  /***/ }),
16955
- /* 152 */
16956
  /***/ (function(module, exports, __webpack_require__) {
16957
 
16958
- var redefine = __webpack_require__(69);
16959
- module.exports = function (target, src, safe) {
16960
- for (var key in src) redefine(target, key, src[key], safe);
16961
- return target;
16962
- };
16963
-
16964
 
16965
- /***/ }),
16966
- /* 153 */
16967
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
16968
 
16969
- "use strict";
16970
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return dateToFormat; });
16971
- /* unused harmony export formatToDate */
16972
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return importIcons; });
16973
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(93);
16974
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);
16975
- /* global Map */
16976
 
16977
- function dateToFormat(date) {
16978
- if (!date) return null;
16979
 
16980
- var pad = function pad(num, size) {
16981
- var s = String(num);
16982
 
16983
- while (s.length < (size || 2)) {
16984
- s = "0" + s;
 
 
 
 
 
16985
  }
16986
 
16987
- return s;
16988
- };
16989
-
16990
- return "".concat(date.getDate(), "-").concat(pad(date.getMonth() + 1, 2), "-").concat(date.getFullYear());
16991
- }
16992
- function formatToDate(format) {
16993
- if (!format) return null;
16994
- var dateParts = format.split("-");
16995
- return new Date(dateParts[2], dateParts[1] - 1, dateParts[0]);
16996
- }
16997
- var importIcons = function () {
16998
- var cache = new Map();
16999
- return function () {
17000
- var icon_library = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "fontawesome";
17001
- var icon_library_version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "5.free";
17002
- var url = buttonizer_admin.assets + "/icon_definitions/" + icon_library + "." + icon_library_version + ".json?buttonizer-icon-cache=" + buttonizer_admin.version;
17003
- if (cache.has(url)) return cache.get(url);
17004
- var value = axios__WEBPACK_IMPORTED_MODULE_0___default()({
17005
- url: url,
17006
- dataType: "json",
17007
- method: "get"
17008
- });
17009
- cache.set(url, value);
17010
- return value;
17011
- };
17012
- }();
17013
-
17014
- /***/ }),
17015
- /* 154 */
17016
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
17017
-
17018
- "use strict";
17019
- /* WEBPACK VAR INJECTION */(function(global, module) {/* harmony import */ var _ponyfill_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(217);
17020
- /* global window */
17021
 
 
 
 
 
 
 
 
17022
 
17023
- var root;
 
 
17024
 
17025
- if (typeof self !== 'undefined') {
17026
- root = self;
17027
- } else if (typeof window !== 'undefined') {
17028
- root = window;
17029
- } else if (typeof global !== 'undefined') {
17030
- root = global;
17031
- } else if (true) {
17032
- root = module;
17033
- } else {}
17034
-
17035
- var result = Object(_ponyfill_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(root);
17036
- /* harmony default export */ __webpack_exports__["a"] = (result);
17037
-
17038
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(49), __webpack_require__(208)(module)))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17039
 
17040
- /***/ }),
17041
- /* 155 */
17042
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17043
 
17044
- "use strict";
 
 
17045
 
 
 
 
 
 
 
17046
 
17047
- var reactIs = __webpack_require__(116);
 
 
 
17048
 
17049
- /**
17050
- * Copyright 2015, Yahoo! Inc.
17051
- * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
17052
- */
17053
- var REACT_STATICS = {
17054
- childContextTypes: true,
17055
- contextType: true,
17056
- contextTypes: true,
17057
- defaultProps: true,
17058
- displayName: true,
17059
- getDefaultProps: true,
17060
- getDerivedStateFromError: true,
17061
- getDerivedStateFromProps: true,
17062
- mixins: true,
17063
- propTypes: true,
17064
- type: true
17065
- };
17066
- var KNOWN_STATICS = {
17067
- name: true,
17068
- length: true,
17069
- prototype: true,
17070
- caller: true,
17071
- callee: true,
17072
- arguments: true,
17073
- arity: true
17074
- };
17075
- var FORWARD_REF_STATICS = {
17076
- '$$typeof': true,
17077
- render: true,
17078
- defaultProps: true,
17079
- displayName: true,
17080
- propTypes: true
17081
- };
17082
- var MEMO_STATICS = {
17083
- '$$typeof': true,
17084
- compare: true,
17085
- defaultProps: true,
17086
- displayName: true,
17087
- propTypes: true,
17088
- type: true
17089
- };
17090
- var TYPE_STATICS = {};
17091
- TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
17092
- TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
17093
 
17094
- function getStatics(component) {
17095
- // React v16.11 and below
17096
- if (reactIs.isMemo(component)) {
17097
- return MEMO_STATICS;
17098
- } // React v16.12 and above
17099
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17100
 
17101
- return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;
17102
- }
 
 
 
17103
 
17104
- var defineProperty = Object.defineProperty;
17105
- var getOwnPropertyNames = Object.getOwnPropertyNames;
17106
- var getOwnPropertySymbols = Object.getOwnPropertySymbols;
17107
- var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
17108
- var getPrototypeOf = Object.getPrototypeOf;
17109
- var objectPrototype = Object.prototype;
17110
- function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
17111
- if (typeof sourceComponent !== 'string') {
17112
- // don't hoist over string (html) components
17113
- if (objectPrototype) {
17114
- var inheritedComponent = getPrototypeOf(sourceComponent);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17115
 
17116
- if (inheritedComponent && inheritedComponent !== objectPrototype) {
17117
- hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
17118
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17119
  }
 
17120
 
17121
- var keys = getOwnPropertyNames(sourceComponent);
17122
-
17123
- if (getOwnPropertySymbols) {
17124
- keys = keys.concat(getOwnPropertySymbols(sourceComponent));
 
 
 
 
 
 
 
 
 
 
 
 
17125
  }
17126
 
17127
- var targetStatics = getStatics(targetComponent);
17128
- var sourceStatics = getStatics(sourceComponent);
17129
 
17130
- for (var i = 0; i < keys.length; ++i) {
17131
- var key = keys[i];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17132
 
17133
- if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
17134
- var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
 
 
 
 
 
17135
 
17136
- try {
17137
- // Avoid failures from read-only properties
17138
- defineProperty(targetComponent, key, descriptor);
17139
- } catch (e) {}
17140
- }
17141
  }
17142
- }
17143
 
17144
- return targetComponent;
17145
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17146
 
17147
- module.exports = hoistNonReactStatics;
 
 
 
17148
 
 
17149
 
17150
- /***/ }),
17151
- /* 156 */
17152
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
 
17153
 
17154
- "use strict";
17155
- /* eslint-disable no-var, prefer-template */
17156
- var uppercasePattern = /[A-Z]/g
17157
- var msPattern = /^ms-/
17158
- var cache = {}
17159
 
17160
- function toHyphenLower(match) {
17161
- return '-' + match.toLowerCase()
17162
- }
17163
 
17164
- function hyphenateStyleName(name) {
17165
- if (cache.hasOwnProperty(name)) {
17166
- return cache[name]
17167
- }
17168
 
17169
- var hName = name.replace(uppercasePattern, toHyphenLower)
17170
- return (cache[name] = msPattern.test(hName) ? '-' + hName : hName)
 
 
 
 
 
 
 
 
 
17171
  }
17172
 
17173
- /* harmony default export */ __webpack_exports__["a"] = (hyphenateStyleName);
 
 
 
 
17174
 
 
 
 
17175
 
17176
- /***/ }),
17177
- /* 157 */
17178
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
17179
 
17180
- "use strict";
17181
- /* unused harmony export hasValue */
17182
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return isFilled; });
17183
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isAdornedStart; });
17184
- // Supports determination of isControlled().
17185
- // Controlled input accepts its current value as a prop.
17186
- //
17187
- // @see https://facebook.github.io/react/docs/forms.html#controlled-components
17188
- // @param value
17189
- // @returns {boolean} true if string (including '') or number (including zero)
17190
- function hasValue(value) {
17191
- return value != null && !(Array.isArray(value) && value.length === 0);
17192
- } // Determine if field is empty or filled.
17193
- // Response determines if label is presented above field or as placeholder.
17194
- //
17195
- // @param obj
17196
- // @param SSR
17197
- // @returns {boolean} False when not present or empty string.
17198
- // True when any number or string with length.
17199
 
17200
- function isFilled(obj) {
17201
- var SSR = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
17202
- return obj && (hasValue(obj.value) && obj.value !== '' || SSR && hasValue(obj.defaultValue) && obj.defaultValue !== '');
17203
- } // Determine if an Input is adorned on start.
17204
- // It's corresponding to the left with LTR.
17205
- //
17206
- // @param obj
17207
- // @returns {boolean} False when no adornments.
17208
- // True when adorned at the start.
17209
 
17210
- function isAdornedStart(obj) {
17211
- return obj.startAdornment;
17212
  }
17213
 
17214
- /***/ }),
17215
- /* 158 */
17216
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
17217
 
17218
- "use strict";
17219
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useControlled; });
17220
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
17221
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
17222
- /* eslint-disable react-hooks/rules-of-hooks, react-hooks/exhaustive-deps */
17223
 
17224
- function useControlled(_ref) {
17225
- var controlled = _ref.controlled,
17226
- defaultProp = _ref.default,
17227
- name = _ref.name;
 
 
 
 
17228
 
17229
- var _React$useRef = react__WEBPACK_IMPORTED_MODULE_0__["useRef"](controlled !== undefined),
17230
- isControlled = _React$useRef.current;
 
 
 
 
 
 
 
 
17231
 
17232
- var _React$useState = react__WEBPACK_IMPORTED_MODULE_0__["useState"](defaultProp),
17233
- valueState = _React$useState[0],
17234
- setValue = _React$useState[1];
17235
-
17236
- var value = isControlled ? controlled : valueState;
17237
 
17238
- if (false) { var _React$useRef2, defaultValue; }
 
 
 
 
17239
 
17240
- var setValueIfUncontrolled = react__WEBPACK_IMPORTED_MODULE_0__["useCallback"](function (newValue) {
17241
- if (!isControlled) {
17242
- setValue(newValue);
17243
- }
17244
- }, []);
17245
- return [value, setValueIfUncontrolled];
17246
- }
17247
 
17248
- /***/ }),
17249
- /* 159 */
17250
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
17251
 
17252
- "use strict";
17253
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return truncate; });
17254
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return snipLine; });
17255
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return safeJoin; });
17256
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isMatchingPattern; });
17257
- /* harmony import */ var _is__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(44);
17258
 
17259
- /**
17260
- * Truncates given string to the maximum characters count
17261
- *
17262
- * @param str An object that contains serializable values
17263
- * @param max Maximum number of characters in truncated string
17264
- * @returns string Encoded
17265
- */
17266
- function truncate(str, max) {
17267
- if (max === void 0) { max = 0; }
17268
- // tslint:disable-next-line:strict-type-predicates
17269
- if (typeof str !== 'string' || max === 0) {
17270
- return str;
17271
- }
17272
- return str.length <= max ? str : str.substr(0, max) + "...";
17273
- }
17274
- /**
17275
- * This is basically just `trim_line` from
17276
- * https://github.com/getsentry/sentry/blob/master/src/sentry/lang/javascript/processor.py#L67
17277
- *
17278
- * @param str An object that contains serializable values
17279
- * @param max Maximum number of characters in truncated string
17280
- * @returns string Encoded
17281
- */
17282
- function snipLine(line, colno) {
17283
- var newLine = line;
17284
- var ll = newLine.length;
17285
- if (ll <= 150) {
17286
- return newLine;
17287
- }
17288
- if (colno > ll) {
17289
- colno = ll; // tslint:disable-line:no-parameter-reassignment
17290
- }
17291
- var start = Math.max(colno - 60, 0);
17292
- if (start < 5) {
17293
- start = 0;
17294
- }
17295
- var end = Math.min(start + 140, ll);
17296
- if (end > ll - 5) {
17297
- end = ll;
17298
- }
17299
- if (end === ll) {
17300
- start = Math.max(end - 140, 0);
17301
- }
17302
- newLine = newLine.slice(start, end);
17303
- if (start > 0) {
17304
- newLine = "'{snip} " + newLine;
17305
- }
17306
- if (end < ll) {
17307
- newLine += ' {snip}';
17308
- }
17309
- return newLine;
17310
- }
17311
- /**
17312
- * Join values in array
17313
- * @param input array of values to be joined together
17314
- * @param delimiter string to be placed in-between values
17315
- * @returns Joined values
17316
- */
17317
- function safeJoin(input, delimiter) {
17318
- if (!Array.isArray(input)) {
17319
- return '';
17320
  }
17321
- var output = [];
17322
- // tslint:disable-next-line:prefer-for-of
17323
- for (var i = 0; i < input.length; i++) {
17324
- var value = input[i];
17325
- try {
17326
- output.push(String(value));
17327
- }
17328
- catch (e) {
17329
- output.push('[value cannot be serialized]');
17330
  }
 
17331
  }
17332
- return output.join(delimiter);
17333
- }
17334
- /**
17335
- * Checks if the value matches a regex or includes the string
17336
- * @param value The string value to be checked against
17337
- * @param pattern Either a regex or a string that must be contained in value
17338
- */
17339
- function isMatchingPattern(value, pattern) {
17340
- if (Object(_is__WEBPACK_IMPORTED_MODULE_0__[/* isRegExp */ "j"])(pattern)) {
17341
- return pattern.test(value);
17342
- }
17343
- if (typeof pattern === 'string') {
17344
- return value.indexOf(pattern) !== -1;
17345
- }
17346
- return false;
17347
  }
17348
- //# sourceMappingURL=string.js.map
17349
 
17350
- /***/ }),
17351
- /* 160 */
17352
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
17353
 
17354
- "use strict";
17355
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return logger; });
17356
- /* harmony import */ var _misc__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(39);
17357
 
17358
- // TODO: Implement different loggers for different environments
17359
- var global = Object(_misc__WEBPACK_IMPORTED_MODULE_0__[/* getGlobalObject */ "f"])();
17360
- /** Prefix for logging strings */
17361
- var PREFIX = 'Sentry Logger ';
17362
- /** JSDoc */
17363
- var Logger = /** @class */ (function () {
17364
- /** JSDoc */
17365
- function Logger() {
17366
- this._enabled = false;
17367
- }
17368
- /** JSDoc */
17369
- Logger.prototype.disable = function () {
17370
- this._enabled = false;
17371
- };
17372
- /** JSDoc */
17373
- Logger.prototype.enable = function () {
17374
- this._enabled = true;
17375
- };
17376
- /** JSDoc */
17377
- Logger.prototype.log = function () {
17378
- var args = [];
17379
- for (var _i = 0; _i < arguments.length; _i++) {
17380
- args[_i] = arguments[_i];
17381
- }
17382
- if (!this._enabled) {
17383
- return;
17384
- }
17385
- Object(_misc__WEBPACK_IMPORTED_MODULE_0__[/* consoleSandbox */ "c"])(function () {
17386
- global.console.log(PREFIX + "[Log]: " + args.join(' ')); // tslint:disable-line:no-console
17387
- });
17388
- };
17389
- /** JSDoc */
17390
- Logger.prototype.warn = function () {
17391
- var args = [];
17392
- for (var _i = 0; _i < arguments.length; _i++) {
17393
- args[_i] = arguments[_i];
17394
- }
17395
- if (!this._enabled) {
17396
- return;
17397
- }
17398
- Object(_misc__WEBPACK_IMPORTED_MODULE_0__[/* consoleSandbox */ "c"])(function () {
17399
- global.console.warn(PREFIX + "[Warn]: " + args.join(' ')); // tslint:disable-line:no-console
17400
- });
17401
- };
17402
- /** JSDoc */
17403
- Logger.prototype.error = function () {
17404
- var args = [];
17405
- for (var _i = 0; _i < arguments.length; _i++) {
17406
- args[_i] = arguments[_i];
17407
- }
17408
- if (!this._enabled) {
17409
- return;
17410
- }
17411
- Object(_misc__WEBPACK_IMPORTED_MODULE_0__[/* consoleSandbox */ "c"])(function () {
17412
- global.console.error(PREFIX + "[Error]: " + args.join(' ')); // tslint:disable-line:no-console
17413
- });
17414
- };
17415
- return Logger;
17416
- }());
17417
- // Ensure we only have a single logger instance, even if multiple versions of @sentry/utils are being used
17418
- global.__SENTRY__ = global.__SENTRY__ || {};
17419
- var logger = global.__SENTRY__.logger || (global.__SENTRY__.logger = new Logger());
17420
 
17421
- //# sourceMappingURL=logger.js.map
 
17422
 
17423
- /***/ }),
17424
- /* 161 */
17425
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
17426
 
17427
- "use strict";
17428
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
17429
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 
 
17430
 
17431
- /* harmony default export */ __webpack_exports__["a"] = (react__WEBPACK_IMPORTED_MODULE_0___default.a.createContext(null));
 
 
 
17432
 
17433
- /***/ }),
17434
- /* 162 */
17435
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
17436
 
17437
- "use strict";
17438
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return truncate; });
17439
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return snipLine; });
17440
- /* unused harmony export safeJoin */
17441
- /* unused harmony export isMatchingPattern */
17442
- /* harmony import */ var _is__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(57);
17443
 
17444
- /**
17445
- * Truncates given string to the maximum characters count
17446
- *
17447
- * @param str An object that contains serializable values
17448
- * @param max Maximum number of characters in truncated string
17449
- * @returns string Encoded
17450
- */
17451
- function truncate(str, max) {
17452
- if (max === void 0) { max = 0; }
17453
- if (typeof str !== 'string' || max === 0) {
17454
- return str;
17455
- }
17456
- return str.length <= max ? str : str.substr(0, max) + "...";
17457
- }
17458
- /**
17459
- * This is basically just `trim_line` from
17460
- * https://github.com/getsentry/sentry/blob/master/src/sentry/lang/javascript/processor.py#L67
17461
- *
17462
- * @param str An object that contains serializable values
17463
- * @param max Maximum number of characters in truncated string
17464
- * @returns string Encoded
17465
- */
17466
- function snipLine(line, colno) {
17467
- var newLine = line;
17468
- var ll = newLine.length;
17469
- if (ll <= 150) {
17470
- return newLine;
17471
- }
17472
- if (colno > ll) {
17473
- // eslint-disable-next-line no-param-reassign
17474
- colno = ll;
17475
- }
17476
- var start = Math.max(colno - 60, 0);
17477
- if (start < 5) {
17478
- start = 0;
17479
- }
17480
- var end = Math.min(start + 140, ll);
17481
- if (end > ll - 5) {
17482
- end = ll;
17483
- }
17484
- if (end === ll) {
17485
- start = Math.max(end - 140, 0);
17486
- }
17487
- newLine = newLine.slice(start, end);
17488
- if (start > 0) {
17489
- newLine = "'{snip} " + newLine;
17490
- }
17491
- if (end < ll) {
17492
- newLine += ' {snip}';
17493
- }
17494
- return newLine;
17495
- }
17496
- /**
17497
- * Join values in array
17498
- * @param input array of values to be joined together
17499
- * @param delimiter string to be placed in-between values
17500
- * @returns Joined values
17501
- */
17502
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
17503
- function safeJoin(input, delimiter) {
17504
- if (!Array.isArray(input)) {
17505
- return '';
17506
- }
17507
- var output = [];
17508
- // eslint-disable-next-line @typescript-eslint/prefer-for-of
17509
- for (var i = 0; i < input.length; i++) {
17510
- var value = input[i];
17511
- try {
17512
- output.push(String(value));
17513
- }
17514
- catch (e) {
17515
- output.push('[value cannot be serialized]');
17516
- }
17517
- }
17518
- return output.join(delimiter);
17519
- }
17520
- /**
17521
- * Checks if the value matches a regex or includes the string
17522
- * @param value The string value to be checked against
17523
- * @param pattern Either a regex or a string that must be contained in value
17524
- */
17525
- function isMatchingPattern(value, pattern) {
17526
- if (!Object(_is__WEBPACK_IMPORTED_MODULE_0__[/* isString */ "h"])(value)) {
17527
- return false;
17528
- }
17529
- if (Object(_is__WEBPACK_IMPORTED_MODULE_0__[/* isRegExp */ "g"])(pattern)) {
17530
- return pattern.test(value);
17531
- }
17532
- if (typeof pattern === 'string') {
17533
- return value.indexOf(pattern) !== -1;
17534
  }
17535
- return false;
 
17536
  }
17537
- //# sourceMappingURL=string.js.map
17538
 
17539
- /***/ }),
17540
- /* 163 */
17541
- /***/ (function(module, exports, __webpack_require__) {
 
17542
 
17543
- var baseIsEqual = __webpack_require__(340);
 
 
 
 
 
17544
 
17545
- /**
17546
- * Performs a deep comparison between two values to determine if they are
17547
- * equivalent.
17548
- *
17549
- * **Note:** This method supports comparing arrays, array buffers, booleans,
17550
- * date objects, error objects, maps, numbers, `Object` objects, regexes,
17551
- * sets, strings, symbols, and typed arrays. `Object` objects are compared
17552
- * by their own, not inherited, enumerable properties. Functions and DOM
17553
- * nodes are compared by strict equality, i.e. `===`.
17554
- *
17555
- * @static
17556
- * @memberOf _
17557
- * @since 0.1.0
17558
- * @category Lang
17559
- * @param {*} value The value to compare.
17560
- * @param {*} other The other value to compare.
17561
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
17562
- * @example
17563
- *
17564
- * var object = { 'a': 1 };
17565
- * var other = { 'a': 1 };
17566
- *
17567
- * _.isEqual(object, other);
17568
- * // => true
17569
- *
17570
- * object === other;
17571
- * // => false
17572
- */
17573
- function isEqual(value, other) {
17574
- return baseIsEqual(value, other);
17575
  }
17576
 
17577
- module.exports = isEqual;
 
 
 
 
 
17578
 
 
 
 
 
 
 
 
17579
 
17580
- /***/ }),
17581
- /* 164 */
17582
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
17583
 
17584
- "use strict";
17585
- /* unused harmony export styles */
17586
- /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
17587
- /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
17588
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
17589
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
17590
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5);
17591
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_3__);
17592
- /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3);
17593
- /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(8);
17594
- /* harmony import */ var _utils_capitalize__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(10);
17595
 
 
 
 
 
 
 
 
17596
 
 
 
 
 
 
 
 
17597
 
 
 
 
17598
 
 
 
 
 
 
 
 
17599
 
 
 
 
 
 
 
 
 
17600
 
 
 
 
 
 
 
 
17601
 
17602
- var styles = function styles(theme) {
17603
- return {
17604
- /* Styles applied to the root element. */
17605
- root: {
17606
- margin: 0
17607
- },
 
 
17608
 
17609
- /* Styles applied to the root element if `variant="body2"`. */
17610
- body2: theme.typography.body2,
 
 
17611
 
17612
- /* Styles applied to the root element if `variant="body1"`. */
17613
- body1: theme.typography.body1,
 
 
 
17614
 
17615
- /* Styles applied to the root element if `variant="caption"`. */
17616
- caption: theme.typography.caption,
 
 
 
 
 
 
 
17617
 
17618
- /* Styles applied to the root element if `variant="button"`. */
17619
- button: theme.typography.button,
 
 
 
 
 
 
 
 
17620
 
17621
- /* Styles applied to the root element if `variant="h1"`. */
17622
- h1: theme.typography.h1,
 
 
 
 
 
 
 
17623
 
17624
- /* Styles applied to the root element if `variant="h2"`. */
17625
- h2: theme.typography.h2,
17626
-
17627
- /* Styles applied to the root element if `variant="h3"`. */
17628
- h3: theme.typography.h3,
17629
 
17630
- /* Styles applied to the root element if `variant="h4"`. */
17631
- h4: theme.typography.h4,
 
17632
 
17633
- /* Styles applied to the root element if `variant="h5"`. */
17634
- h5: theme.typography.h5,
 
 
 
 
17635
 
17636
- /* Styles applied to the root element if `variant="h6"`. */
17637
- h6: theme.typography.h6,
 
 
 
 
17638
 
17639
- /* Styles applied to the root element if `variant="subtitle1"`. */
17640
- subtitle1: theme.typography.subtitle1,
 
 
17641
 
17642
- /* Styles applied to the root element if `variant="subtitle2"`. */
17643
- subtitle2: theme.typography.subtitle2,
17644
 
17645
- /* Styles applied to the root element if `variant="overline"`. */
17646
- overline: theme.typography.overline,
17647
 
17648
- /* Styles applied to the root element if `variant="srOnly"`. Only accessible to screen readers. */
17649
- srOnly: {
17650
- position: 'absolute',
17651
- height: 1,
17652
- width: 1,
17653
- overflow: 'hidden'
17654
- },
17655
 
17656
- /* Styles applied to the root element if `align="left"`. */
17657
- alignLeft: {
17658
- textAlign: 'left'
17659
- },
17660
 
17661
- /* Styles applied to the root element if `align="center"`. */
17662
- alignCenter: {
17663
- textAlign: 'center'
17664
- },
17665
 
17666
- /* Styles applied to the root element if `align="right"`. */
17667
- alignRight: {
17668
- textAlign: 'right'
17669
- },
 
 
17670
 
17671
- /* Styles applied to the root element if `align="justify"`. */
17672
- alignJustify: {
17673
- textAlign: 'justify'
17674
- },
17675
 
17676
- /* Styles applied to the root element if `nowrap={true}`. */
17677
- noWrap: {
17678
- overflow: 'hidden',
17679
- textOverflow: 'ellipsis',
17680
- whiteSpace: 'nowrap'
17681
- },
17682
 
17683
- /* Styles applied to the root element if `gutterBottom={true}`. */
17684
- gutterBottom: {
17685
- marginBottom: '0.35em'
17686
- },
17687
 
17688
- /* Styles applied to the root element if `paragraph={true}`. */
17689
- paragraph: {
17690
- marginBottom: 16
17691
- },
 
 
 
17692
 
17693
- /* Styles applied to the root element if `color="inherit"`. */
17694
- colorInherit: {
17695
- color: 'inherit'
17696
- },
 
 
17697
 
17698
- /* Styles applied to the root element if `color="primary"`. */
17699
- colorPrimary: {
17700
- color: theme.palette.primary.main
17701
- },
 
 
17702
 
17703
- /* Styles applied to the root element if `color="secondary"`. */
17704
- colorSecondary: {
17705
- color: theme.palette.secondary.main
17706
- },
17707
 
17708
- /* Styles applied to the root element if `color="textPrimary"`. */
17709
- colorTextPrimary: {
17710
- color: theme.palette.text.primary
17711
- },
 
 
 
 
 
 
 
 
 
 
17712
 
17713
- /* Styles applied to the root element if `color="textSecondary"`. */
17714
- colorTextSecondary: {
17715
- color: theme.palette.text.secondary
17716
- },
17717
 
17718
- /* Styles applied to the root element if `color="error"`. */
17719
- colorError: {
17720
- color: theme.palette.error.main
17721
- },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17722
 
17723
- /* Styles applied to the root element if `display="inline"`. */
17724
- displayInline: {
17725
- display: 'inline'
17726
- },
 
 
 
17727
 
17728
- /* Styles applied to the root element if `display="block"`. */
17729
- displayBlock: {
17730
- display: 'block'
 
 
 
17731
  }
17732
- };
17733
  };
17734
- var defaultVariantMapping = {
17735
- h1: 'h1',
17736
- h2: 'h2',
17737
- h3: 'h3',
17738
- h4: 'h4',
17739
- h5: 'h5',
17740
- h6: 'h6',
17741
- subtitle1: 'h6',
17742
- subtitle2: 'h6',
17743
- body1: 'p',
17744
- body2: 'p'
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17745
  };
17746
- var Typography = react__WEBPACK_IMPORTED_MODULE_2__["forwardRef"](function Typography(props, ref) {
17747
- var _props$align = props.align,
17748
- align = _props$align === void 0 ? 'inherit' : _props$align,
17749
- classes = props.classes,
17750
- className = props.className,
17751
- _props$color = props.color,
17752
- color = _props$color === void 0 ? 'initial' : _props$color,
17753
- component = props.component,
17754
- _props$display = props.display,
17755
- display = _props$display === void 0 ? 'initial' : _props$display,
17756
- _props$gutterBottom = props.gutterBottom,
17757
- gutterBottom = _props$gutterBottom === void 0 ? false : _props$gutterBottom,
17758
- _props$noWrap = props.noWrap,
17759
- noWrap = _props$noWrap === void 0 ? false : _props$noWrap,
17760
- _props$paragraph = props.paragraph,
17761
- paragraph = _props$paragraph === void 0 ? false : _props$paragraph,
17762
- _props$variant = props.variant,
17763
- variant = _props$variant === void 0 ? 'body1' : _props$variant,
17764
- _props$variantMapping = props.variantMapping,
17765
- variantMapping = _props$variantMapping === void 0 ? defaultVariantMapping : _props$variantMapping,
17766
- other = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(props, ["align", "classes", "className", "color", "component", "display", "gutterBottom", "noWrap", "paragraph", "variant", "variantMapping"]);
17767
 
17768
- var Component = component || (paragraph ? 'p' : variantMapping[variant] || defaultVariantMapping[variant]) || 'span';
17769
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"](Component, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
17770
- className: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.root, className, variant !== 'inherit' && classes[variant], color !== 'initial' && classes["color".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(color))], noWrap && classes.noWrap, gutterBottom && classes.gutterBottom, paragraph && classes.paragraph, align !== 'inherit' && classes["align".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(align))], display !== 'initial' && classes["display".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(display))]),
17771
- ref: ref
17772
- }, other));
17773
- });
17774
- false ? undefined : void 0;
17775
- /* harmony default export */ __webpack_exports__["a"] = (Object(_styles_withStyles__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(styles, {
17776
- name: 'MuiTypography'
17777
- })(Typography));
17778
 
17779
- /***/ }),
17780
- /* 165 */
17781
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
17782
 
17783
- "use strict";
17784
- /* unused harmony export styles */
17785
- /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
17786
- /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
17787
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
17788
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
17789
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5);
17790
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_3__);
17791
- /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3);
17792
- /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(8);
17793
 
 
 
 
 
 
 
 
 
 
 
17794
 
 
 
 
17795
 
 
 
 
17796
 
 
 
17797
 
 
 
 
17798
 
17799
- var styles = function styles(theme) {
17800
- return {
17801
- /* Styles applied to the root element. */
17802
- root: {
17803
- flex: '1 1 auto',
17804
- WebkitOverflowScrolling: 'touch',
17805
- // Add iOS momentum scrolling.
17806
- overflowY: 'auto',
17807
- padding: '8px 24px',
17808
- '&:first-child': {
17809
- // dialog without title
17810
- paddingTop: 20
17811
- }
17812
- },
17813
 
17814
- /* Styles applied to the root element if `dividers={true}`. */
17815
- dividers: {
17816
- padding: '16px 24px',
17817
- borderTop: "1px solid ".concat(theme.palette.divider),
17818
- borderBottom: "1px solid ".concat(theme.palette.divider)
17819
  }
17820
- };
17821
- };
17822
- var DialogContent = react__WEBPACK_IMPORTED_MODULE_2__["forwardRef"](function DialogContent(props, ref) {
17823
- var classes = props.classes,
17824
- className = props.className,
17825
- _props$dividers = props.dividers,
17826
- dividers = _props$dividers === void 0 ? false : _props$dividers,
17827
- other = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(props, ["classes", "className", "dividers"]);
17828
 
17829
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("div", Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
17830
- className: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.root, className, dividers && classes.dividers),
17831
- ref: ref
17832
- }, other));
17833
- });
17834
- false ? undefined : void 0;
17835
- /* harmony default export */ __webpack_exports__["a"] = (Object(_styles_withStyles__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(styles, {
17836
- name: 'MuiDialogContent'
17837
- })(DialogContent));
17838
 
17839
- /***/ }),
17840
- /* 166 */
17841
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
17842
 
17843
- "use strict";
17844
- /* unused harmony export styles */
17845
- /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
17846
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
17847
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
17848
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5);
17849
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);
17850
- /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(8);
17851
- /* harmony import */ var _Typography__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(164);
17852
 
 
 
 
 
17853
 
 
 
 
 
 
17854
 
 
 
 
 
17855
 
 
 
 
 
17856
 
17857
- var styles = {
17858
- /* Styles applied to the root element. */
17859
- root: {
17860
- marginBottom: 12
17861
- }
17862
- };
17863
- var DialogContentText = react__WEBPACK_IMPORTED_MODULE_1__["forwardRef"](function DialogContentText(props, ref) {
17864
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_Typography__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
17865
- component: "p",
17866
- variant: "body1",
17867
- color: "textSecondary",
17868
- ref: ref
17869
- }, props));
17870
- });
17871
- false ? undefined : void 0;
17872
- /* harmony default export */ __webpack_exports__["a"] = (Object(_styles_withStyles__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(styles, {
17873
- name: 'MuiDialogContentText'
17874
- })(DialogContentText));
17875
 
17876
- /***/ }),
17877
- /* 167 */,
17878
- /* 168 */
17879
- /***/ (function(module, exports) {
17880
 
17881
- // shim for using process in browser
17882
- var process = module.exports = {};
 
 
 
 
 
 
17883
 
17884
- // cached from whatever global is present so that test runners that stub it
17885
- // don't break things. But we need to wrap it in a try catch in case it is
17886
- // wrapped in strict mode code which doesn't define any globals. It's inside a
17887
- // function because try/catches deoptimize in certain engines.
17888
 
17889
- var cachedSetTimeout;
17890
- var cachedClearTimeout;
17891
 
17892
- function defaultSetTimout() {
17893
- throw new Error('setTimeout has not been defined');
17894
- }
17895
- function defaultClearTimeout () {
17896
- throw new Error('clearTimeout has not been defined');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17897
  }
17898
- (function () {
17899
- try {
17900
- if (typeof setTimeout === 'function') {
17901
- cachedSetTimeout = setTimeout;
17902
- } else {
17903
- cachedSetTimeout = defaultSetTimout;
17904
- }
17905
- } catch (e) {
17906
- cachedSetTimeout = defaultSetTimout;
 
 
17907
  }
17908
- try {
17909
- if (typeof clearTimeout === 'function') {
17910
- cachedClearTimeout = clearTimeout;
17911
- } else {
17912
- cachedClearTimeout = defaultClearTimeout;
17913
- }
17914
- } catch (e) {
17915
- cachedClearTimeout = defaultClearTimeout;
17916
  }
17917
- } ())
17918
- function runTimeout(fun) {
17919
- if (cachedSetTimeout === setTimeout) {
17920
- //normal enviroments in sane situations
17921
- return setTimeout(fun, 0);
 
 
 
17922
  }
17923
- // if setTimeout wasn't available but was latter defined
17924
- if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
17925
- cachedSetTimeout = setTimeout;
17926
- return setTimeout(fun, 0);
17927
  }
17928
- try {
17929
- // when when somebody has screwed with setTimeout but no I.E. maddness
17930
- return cachedSetTimeout(fun, 0);
17931
- } catch(e){
17932
- try {
17933
- // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
17934
- return cachedSetTimeout.call(null, fun, 0);
17935
- } catch(e){
17936
- // 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
17937
- return cachedSetTimeout.call(this, fun, 0);
17938
- }
17939
  }
17940
-
17941
-
17942
- }
17943
- function runClearTimeout(marker) {
17944
- if (cachedClearTimeout === clearTimeout) {
17945
- //normal enviroments in sane situations
17946
- return clearTimeout(marker);
17947
  }
17948
- // if clearTimeout wasn't available but was latter defined
17949
- if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
17950
- cachedClearTimeout = clearTimeout;
17951
- return clearTimeout(marker);
17952
  }
17953
- try {
17954
- // when when somebody has screwed with setTimeout but no I.E. maddness
17955
- return cachedClearTimeout(marker);
17956
- } catch (e){
17957
- try {
17958
- // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
17959
- return cachedClearTimeout.call(null, marker);
17960
- } catch (e){
17961
- // 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.
17962
- // Some versions of I.E. have different rules for clearTimeout vs setTimeout
17963
- return cachedClearTimeout.call(this, marker);
17964
- }
17965
  }
17966
-
17967
-
17968
-
17969
- }
17970
- var queue = [];
17971
- var draining = false;
17972
- var currentQueue;
17973
- var queueIndex = -1;
17974
-
17975
- function cleanUpNextTick() {
17976
- if (!draining || !currentQueue) {
17977
- return;
17978
  }
17979
- draining = false;
17980
- if (currentQueue.length) {
17981
- queue = currentQueue.concat(queue);
17982
- } else {
17983
- queueIndex = -1;
 
 
17984
  }
17985
- if (queue.length) {
17986
- drainQueue();
 
 
 
 
 
 
17987
  }
17988
- }
17989
-
17990
- function drainQueue() {
17991
- if (draining) {
17992
- return;
 
 
17993
  }
17994
- var timeout = runTimeout(cleanUpNextTick);
17995
- draining = true;
17996
 
17997
- var len = queue.length;
17998
- while(len) {
17999
- currentQueue = queue;
18000
- queue = [];
18001
- while (++queueIndex < len) {
18002
- if (currentQueue) {
18003
- currentQueue[queueIndex].run();
18004
- }
18005
- }
18006
- queueIndex = -1;
18007
- len = queue.length;
18008
- }
18009
- currentQueue = null;
18010
- draining = false;
18011
- runClearTimeout(timeout);
18012
  }
18013
 
18014
- process.nextTick = function (fun) {
18015
- var args = new Array(arguments.length - 1);
18016
- if (arguments.length > 1) {
18017
- for (var i = 1; i < arguments.length; i++) {
18018
- args[i - 1] = arguments[i];
18019
- }
 
 
 
18020
  }
18021
- queue.push(new Item(fun, args));
18022
- if (queue.length === 1 && !draining) {
18023
- runTimeout(drainQueue);
18024
  }
18025
- };
 
18026
 
18027
- // v8 likes predictible objects
18028
- function Item(fun, array) {
18029
- this.fun = fun;
18030
- this.array = array;
18031
  }
18032
- Item.prototype.run = function () {
18033
- this.fun.apply(null, this.array);
18034
- };
18035
- process.title = 'browser';
18036
- process.browser = true;
18037
- process.env = {};
18038
- process.argv = [];
18039
- process.version = ''; // empty string to avoid regexp issues
18040
- process.versions = {};
18041
 
18042
- function noop() {}
18043
 
18044
- process.on = noop;
18045
- process.addListener = noop;
18046
- process.once = noop;
18047
- process.off = noop;
18048
- process.removeListener = noop;
18049
- process.removeAllListeners = noop;
18050
- process.emit = noop;
18051
- process.prependListener = noop;
18052
- process.prependOnceListener = noop;
18053
 
18054
- process.listeners = function (name) { return [] }
 
 
 
 
 
 
18055
 
18056
- process.binding = function (name) {
18057
- throw new Error('process.binding is not supported');
18058
- };
18059
 
18060
- process.cwd = function () { return '/' };
18061
- process.chdir = function (dir) {
18062
- throw new Error('process.chdir is not supported');
 
 
 
 
 
 
18063
  };
18064
- process.umask = function() { return 0; };
18065
 
18066
 
18067
  /***/ }),
18068
- /* 169 */
18069
  /***/ (function(module, exports, __webpack_require__) {
18070
 
18071
- var ListCache = __webpack_require__(110),
18072
- stackClear = __webpack_require__(299),
18073
- stackDelete = __webpack_require__(300),
18074
- stackGet = __webpack_require__(301),
18075
- stackHas = __webpack_require__(302),
18076
- stackSet = __webpack_require__(303);
 
 
 
 
 
 
 
 
18077
 
18078
  /**
18079
- * Creates a stack cache object to store key-value pairs.
18080
  *
18081
- * @private
18082
- * @constructor
18083
- * @param {Array} [entries] The key-value pairs to cache.
18084
  */
18085
- function Stack(entries) {
18086
- var data = this.__data__ = new ListCache(entries);
18087
- this.size = data.size;
18088
- }
 
18089
 
18090
- // Add methods to `Stack`.
18091
- Stack.prototype.clear = stackClear;
18092
- Stack.prototype['delete'] = stackDelete;
18093
- Stack.prototype.get = stackGet;
18094
- Stack.prototype.has = stackHas;
18095
- Stack.prototype.set = stackSet;
 
18096
 
18097
- module.exports = Stack;
 
 
 
18098
 
 
 
 
 
 
18099
 
18100
- /***/ }),
18101
- /* 170 */
18102
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
18103
 
18104
- var getNative = __webpack_require__(85),
18105
- root = __webpack_require__(54);
18106
 
18107
- /* Built-in method references that are verified to be native. */
18108
- var Map = getNative(root, 'Map');
 
 
 
18109
 
18110
- module.exports = Map;
 
 
 
 
18111
 
18112
 
18113
  /***/ }),
18114
- /* 171 */
18115
  /***/ (function(module, exports, __webpack_require__) {
18116
 
18117
- var overArg = __webpack_require__(235);
18118
 
18119
- /** Built-in value references. */
18120
- var getPrototype = overArg(Object.getPrototypeOf, Object);
18121
 
18122
- module.exports = getPrototype;
 
 
18123
 
18124
 
18125
  /***/ }),
18126
- /* 172 */
18127
- /***/ (function(module, exports) {
18128
 
18129
- /** Used for built-in method references. */
18130
- var objectProto = Object.prototype;
18131
 
18132
- /**
18133
- * Checks if `value` is likely a prototype object.
18134
- *
18135
- * @private
18136
- * @param {*} value The value to check.
18137
- * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
18138
- */
18139
- function isPrototype(value) {
18140
- var Ctor = value && value.constructor,
18141
- proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;
18142
 
18143
- return value === proto;
 
 
 
 
 
 
 
18144
  }
18145
 
18146
- module.exports = isPrototype;
 
 
 
 
 
 
 
 
 
 
18147
 
 
 
18148
 
18149
- /***/ }),
18150
- /* 173 */
18151
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18152
 
18153
- var baseIsArguments = __webpack_require__(325),
18154
- isObjectLike = __webpack_require__(58);
 
 
 
 
 
 
 
18155
 
18156
- /** Used for built-in method references. */
18157
- var objectProto = Object.prototype;
 
 
 
18158
 
18159
- /** Used to check objects for own properties. */
18160
- var hasOwnProperty = objectProto.hasOwnProperty;
18161
 
18162
- /** Built-in value references. */
18163
- var propertyIsEnumerable = objectProto.propertyIsEnumerable;
18164
 
18165
- /**
18166
- * Checks if `value` is likely an `arguments` object.
18167
- *
18168
- * @static
18169
- * @memberOf _
18170
- * @since 0.1.0
18171
- * @category Lang
18172
- * @param {*} value The value to check.
18173
- * @returns {boolean} Returns `true` if `value` is an `arguments` object,
18174
- * else `false`.
18175
- * @example
18176
- *
18177
- * _.isArguments(function() { return arguments; }());
18178
- * // => true
18179
- *
18180
- * _.isArguments([1, 2, 3]);
18181
- * // => false
18182
- */
18183
- var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
18184
- return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
18185
- !propertyIsEnumerable.call(value, 'callee');
18186
  };
18187
 
18188
- module.exports = isArguments;
18189
-
18190
-
18191
- /***/ }),
18192
- /* 174 */
18193
- /***/ (function(module, exports) {
18194
 
18195
- /** Used as references for various `Number` constants. */
18196
- var MAX_SAFE_INTEGER = 9007199254740991;
 
18197
 
18198
- /**
18199
- * Checks if `value` is a valid array-like length.
18200
- *
18201
- * **Note:** This method is loosely based on
18202
- * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
18203
- *
18204
- * @static
18205
- * @memberOf _
18206
- * @since 4.0.0
18207
- * @category Lang
18208
- * @param {*} value The value to check.
18209
- * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
18210
- * @example
18211
- *
18212
- * _.isLength(3);
18213
- * // => true
18214
- *
18215
- * _.isLength(Number.MIN_VALUE);
18216
- * // => false
18217
- *
18218
- * _.isLength(Infinity);
18219
- * // => false
18220
- *
18221
- * _.isLength('3');
18222
- * // => false
18223
- */
18224
- function isLength(value) {
18225
- return typeof value == 'number' &&
18226
- value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
18227
- }
18228
 
18229
- module.exports = isLength;
18230
 
 
18231
 
18232
  /***/ }),
18233
- /* 175 */
18234
  /***/ (function(module, exports, __webpack_require__) {
18235
 
18236
- var baseIsTypedArray = __webpack_require__(328),
18237
- baseUnary = __webpack_require__(205),
18238
- nodeUtil = __webpack_require__(206);
18239
 
18240
- /* Node.js helper references. */
18241
- var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
18242
 
18243
- /**
18244
- * Checks if `value` is classified as a typed array.
18245
- *
18246
- * @static
18247
- * @memberOf _
18248
- * @since 3.0.0
18249
- * @category Lang
18250
- * @param {*} value The value to check.
18251
- * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
18252
- * @example
18253
- *
18254
- * _.isTypedArray(new Uint8Array);
18255
- * // => true
18256
- *
18257
- * _.isTypedArray([]);
18258
- * // => false
18259
- */
18260
- var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
18261
 
18262
- module.exports = isTypedArray;
 
 
 
18263
 
 
 
 
18264
 
18265
- /***/ }),
18266
- /* 176 */
18267
- /***/ (function(module, exports) {
18268
 
18269
- /** Used as references for various `Number` constants. */
18270
- var MAX_SAFE_INTEGER = 9007199254740991;
 
 
 
 
18271
 
18272
- /** Used to detect unsigned integer values. */
18273
- var reIsUint = /^(?:0|[1-9]\d*)$/;
18274
 
18275
- /**
18276
- * Checks if `value` is a valid array-like index.
18277
- *
18278
- * @private
18279
- * @param {*} value The value to check.
18280
- * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
18281
- * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
18282
- */
18283
- function isIndex(value, length) {
18284
- var type = typeof value;
18285
- length = length == null ? MAX_SAFE_INTEGER : length;
18286
 
18287
- return !!length &&
18288
- (type == 'number' ||
18289
- (type != 'symbol' && reIsUint.test(value))) &&
18290
- (value > -1 && value % 1 == 0 && value < length);
18291
- }
18292
 
18293
- module.exports = isIndex;
 
 
 
 
 
 
18294
 
 
 
 
 
 
 
 
 
 
 
 
18295
 
18296
- /***/ }),
18297
- /* 177 */
18298
- /***/ (function(module, exports) {
18299
 
18300
- // `RequireObjectCoercible` abstract operation
18301
- // https://tc39.github.io/ecma262/#sec-requireobjectcoercible
18302
- module.exports = function (it) {
18303
- if (it == undefined) throw TypeError("Can't call method on " + it);
18304
- return it;
18305
- };
18306
 
 
 
 
 
 
18307
 
18308
- /***/ }),
18309
- /* 178 */
18310
- /***/ (function(module, exports, __webpack_require__) {
18311
 
18312
- var global = __webpack_require__(61);
18313
- var createNonEnumerableProperty = __webpack_require__(126);
18314
- var has = __webpack_require__(73);
18315
- var setGlobal = __webpack_require__(343);
18316
- var inspectSource = __webpack_require__(414);
18317
- var InternalStateModule = __webpack_require__(210);
18318
 
18319
- var getInternalState = InternalStateModule.get;
18320
- var enforceInternalState = InternalStateModule.enforce;
18321
- var TEMPLATE = String(String).split('String');
 
 
18322
 
18323
- (module.exports = function (O, key, value, options) {
18324
- var unsafe = options ? !!options.unsafe : false;
18325
- var simple = options ? !!options.enumerable : false;
18326
- var noTargetGet = options ? !!options.noTargetGet : false;
18327
- if (typeof value == 'function') {
18328
- if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);
18329
- enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');
18330
- }
18331
- if (O === global) {
18332
- if (simple) O[key] = value;
18333
- else setGlobal(key, value);
18334
- return;
18335
- } else if (!unsafe) {
18336
- delete O[key];
18337
- } else if (!noTargetGet && O[key]) {
18338
- simple = true;
18339
- }
18340
- if (simple) O[key] = value;
18341
- else createNonEnumerableProperty(O, key, value);
18342
- // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
18343
- })(Function.prototype, 'toString', function toString() {
18344
- return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
18345
- });
18346
 
 
 
 
 
 
 
 
 
18347
 
18348
- /***/ }),
18349
- /* 179 */
18350
- /***/ (function(module, exports, __webpack_require__) {
18351
 
18352
- var toInteger = __webpack_require__(246);
 
 
 
 
 
 
 
18353
 
18354
- var min = Math.min;
 
 
 
18355
 
18356
- // `ToLength` abstract operation
18357
- // https://tc39.github.io/ecma262/#sec-tolength
18358
- module.exports = function (argument) {
18359
- return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
18360
- };
 
 
 
 
 
 
 
18361
 
 
 
 
 
18362
 
18363
- /***/ }),
18364
- /* 180 */
18365
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
18366
 
18367
- var def = __webpack_require__(46).f;
18368
- var has = __webpack_require__(74);
18369
- var TAG = __webpack_require__(40)('toStringTag');
 
18370
 
18371
- module.exports = function (it, tag, stat) {
18372
- if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
18373
- };
 
18374
 
 
 
 
 
 
 
18375
 
18376
- /***/ }),
18377
- /* 181 */
18378
- /***/ (function(module, exports, __webpack_require__) {
 
 
 
18379
 
18380
- var $export = __webpack_require__(7);
18381
- var defined = __webpack_require__(102);
18382
- var fails = __webpack_require__(28);
18383
- var spaces = __webpack_require__(364);
18384
- var space = '[' + spaces + ']';
18385
- var non = '\u200b\u0085';
18386
- var ltrim = RegExp('^' + space + space + '*');
18387
- var rtrim = RegExp(space + space + '*$');
18388
 
18389
- var exporter = function (KEY, exec, ALIAS) {
18390
- var exp = {};
18391
- var FORCE = fails(function () {
18392
- return !!spaces[KEY]() || non[KEY]() != non;
18393
  });
18394
- var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
18395
- if (ALIAS) exp[ALIAS] = fn;
18396
- $export($export.P + $export.F * FORCE, 'String', exp);
18397
- };
18398
-
18399
- // 1 -> String#trimLeft
18400
- // 2 -> String#trimRight
18401
- // 3 -> String#trim
18402
- var trim = exporter.trim = function (string, TYPE) {
18403
- string = String(defined(string));
18404
- if (TYPE & 1) string = string.replace(ltrim, '');
18405
- if (TYPE & 2) string = string.replace(rtrim, '');
18406
- return string;
18407
  };
18408
 
18409
- module.exports = exporter;
18410
-
18411
 
18412
  /***/ }),
18413
- /* 182 */
18414
- /***/ (function(module, exports) {
18415
 
18416
- module.exports = {};
18417
 
18418
 
18419
- /***/ }),
18420
- /* 183 */
18421
- /***/ (function(module, exports, __webpack_require__) {
18422
 
18423
- var isObject = __webpack_require__(32);
18424
- module.exports = function (it, TYPE) {
18425
- if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
18426
- return it;
 
 
 
 
 
 
 
 
 
18427
  };
18428
 
18429
 
18430
  /***/ }),
18431
- /* 184 */
18432
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
18433
 
18434
  "use strict";
18435
- /* unused harmony export teardown */
18436
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useIsFocusVisible; });
18437
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
18438
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
18439
- /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29);
18440
- /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_1__);
18441
- // based on https://github.com/WICG/focus-visible/blob/v4.1.5/src/focus-visible.js
18442
 
18443
 
18444
- var hadKeyboardEvent = true;
18445
- var hadFocusVisibleRecently = false;
18446
- var hadFocusVisibleRecentlyTimeout = null;
18447
- var inputTypesWhitelist = {
18448
- text: true,
18449
- search: true,
18450
- url: true,
18451
- tel: true,
18452
- email: true,
18453
- password: true,
18454
- number: true,
18455
- date: true,
18456
- month: true,
18457
- week: true,
18458
- time: true,
18459
- datetime: true,
18460
- 'datetime-local': true
18461
- };
18462
  /**
18463
- * Computes whether the given element should automatically trigger the
18464
- * `focus-visible` class being added, i.e. whether it should always match
18465
- * `:focus-visible` when focused.
18466
- * @param {Element} node
18467
- * @return {boolean}
 
18468
  */
 
 
 
 
18469
 
18470
- function focusTriggersKeyboardModality(node) {
18471
- var type = node.type,
18472
- tagName = node.tagName;
18473
-
18474
- if (tagName === 'INPUT' && inputTypesWhitelist[type] && !node.readOnly) {
18475
- return true;
18476
- }
 
 
 
18477
 
18478
- if (tagName === 'TEXTAREA' && !node.readOnly) {
18479
- return true;
 
 
 
 
 
 
 
18480
  }
18481
 
18482
- if (node.isContentEditable) {
18483
- return true;
 
 
 
 
18484
  }
18485
 
18486
- return false;
18487
- }
18488
- /**
18489
- * Keep track of our keyboard modality state with `hadKeyboardEvent`.
18490
- * If the most recent user interaction was via the keyboard;
18491
- * and the key press did not include a meta, alt/option, or control key;
18492
- * then the modality is keyboard. Otherwise, the modality is not keyboard.
18493
- * @param {KeyboardEvent} event
18494
- */
18495
 
 
18496
 
18497
- function handleKeyDown(event) {
18498
- if (event.metaKey || event.altKey || event.ctrlKey) {
18499
- return;
18500
- }
 
 
 
18501
 
18502
- hadKeyboardEvent = true;
18503
- }
18504
- /**
18505
- * If at any point a user clicks with a pointing device, ensure that we change
18506
- * the modality away from keyboard.
18507
- * This avoids the situation where a user presses a key on an already focused
18508
- * element, and then clicks on a different element, focusing it with a
18509
- * pointing device, while we still think we're in keyboard modality.
18510
- */
18511
 
 
 
 
 
18512
 
18513
- function handlePointerDown() {
18514
- hadKeyboardEvent = false;
18515
- }
 
 
 
18516
 
18517
- function handleVisibilityChange() {
18518
- if (this.visibilityState === 'hidden') {
18519
- // If the tab becomes active again, the browser will handle calling focus
18520
- // on the element (Safari actually calls it twice).
18521
- // If this tab change caused a blur on an element with focus-visible,
18522
- // re-apply the class when the user switches back to the tab.
18523
- if (hadFocusVisibleRecently) {
18524
- hadKeyboardEvent = true;
18525
- }
18526
- }
18527
- }
18528
 
18529
- function prepare(doc) {
18530
- doc.addEventListener('keydown', handleKeyDown, true);
18531
- doc.addEventListener('mousedown', handlePointerDown, true);
18532
- doc.addEventListener('pointerdown', handlePointerDown, true);
18533
- doc.addEventListener('touchstart', handlePointerDown, true);
18534
- doc.addEventListener('visibilitychange', handleVisibilityChange, true);
18535
- }
18536
 
18537
- function teardown(doc) {
18538
- doc.removeEventListener('keydown', handleKeyDown, true);
18539
- doc.removeEventListener('mousedown', handlePointerDown, true);
18540
- doc.removeEventListener('pointerdown', handlePointerDown, true);
18541
- doc.removeEventListener('touchstart', handlePointerDown, true);
18542
- doc.removeEventListener('visibilitychange', handleVisibilityChange, true);
18543
- }
18544
 
18545
- function isFocusVisible(event) {
18546
- var target = event.target;
 
18547
 
18548
- try {
18549
- return target.matches(':focus-visible');
18550
- } catch (error) {} // browsers not implementing :focus-visible will throw a SyntaxError
18551
- // we use our own heuristic for those browsers
18552
- // rethrow might be better if it's not the expected error but do we really
18553
- // want to crash if focus-visible malfunctioned?
18554
- // no need for validFocusTarget check. the user does that by attaching it to
18555
- // focusable events only
18556
 
18557
 
18558
- return hadKeyboardEvent || focusTriggersKeyboardModality(target);
18559
- }
18560
  /**
18561
- * Should be called if a blur event is fired on a focus-visible element
 
 
 
18562
  */
18563
-
18564
-
18565
- function handleBlurVisible() {
18566
- // To detect a tab/window switch, we look for a blur event followed
18567
- // rapidly by a visibility change.
18568
- // If we don't see a visibility change within 100ms, it's probably a
18569
- // regular focus change.
18570
- hadFocusVisibleRecently = true;
18571
- window.clearTimeout(hadFocusVisibleRecentlyTimeout);
18572
- hadFocusVisibleRecentlyTimeout = window.setTimeout(function () {
18573
- hadFocusVisibleRecently = false;
18574
- }, 100);
18575
  }
18576
 
18577
- function useIsFocusVisible() {
18578
- var ref = react__WEBPACK_IMPORTED_MODULE_0__["useCallback"](function (instance) {
18579
- var node = react_dom__WEBPACK_IMPORTED_MODULE_1__["findDOMNode"](instance);
18580
 
18581
- if (node != null) {
18582
- prepare(node.ownerDocument);
18583
- }
18584
- }, []);
18585
 
18586
- if (false) {}
18587
 
18588
- return {
18589
- isFocusVisible: isFocusVisible,
18590
- onBlurVisible: handleBlurVisible,
18591
- ref: ref
18592
- };
18593
- }
18594
 
18595
  /***/ }),
18596
- /* 185 */
18597
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
18598
 
18599
- "use strict";
18600
- /* harmony import */ var _createMuiTheme__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(394);
18601
 
18602
- var defaultTheme = Object(_createMuiTheme__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])();
18603
- /* harmony default export */ __webpack_exports__["a"] = (defaultTheme);
 
18604
 
18605
  /***/ }),
18606
- /* 186 */
18607
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
18608
 
18609
- "use strict";
 
 
 
 
18610
 
18611
- // EXPORTS
18612
- __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ save; });
 
 
 
 
 
 
 
 
18613
 
18614
- // EXTERNAL MODULE: ./src/js/dashboard/store/actions/savingHelpers.js
18615
- var savingHelpers = __webpack_require__(120);
 
 
 
 
18616
 
18617
- // EXTERNAL MODULE: ./src/js/dashboard/store/index.js + 8 modules
18618
- var store = __webpack_require__(38);
 
 
 
 
18619
 
18620
- // EXTERNAL MODULE: ./src/js/dashboard/store/actions/rootActions.js
18621
- var rootActions = __webpack_require__(96);
18622
 
18623
- // EXTERNAL MODULE: ./node_modules/@sentry/minimal/esm/index.js
18624
- var esm = __webpack_require__(56);
18625
 
18626
- // CONCATENATED MODULE: ./utils/reloadPreview.js
 
 
 
 
 
18627
 
18628
  /**
18629
- * Reload preview
 
 
 
 
 
 
18630
  */
18631
-
18632
- function reloadPreview() {
18633
- // Post reload buttonizer
18634
- try {
18635
- document.querySelector(".buttonizer-preview iframe").contentWindow.postMessage({
18636
- eventType: "buttonizer",
18637
- messageType: "preview-reload"
18638
- }, document.location.origin);
18639
- } catch (e) {
18640
- console.log("Buttonizer tried to auto update the Buttonizer Buttons. But the message didn't came through. Well. Doesn't matter, it's just an extra function. It's nice to have.");
18641
- console.error(e);
18642
- esm["a" /* captureException */](e);
18643
- document.querySelector(".buttonizer-preview iframe").contentWindow.location.reload();
18644
  }
18645
  }
18646
- // CONCATENATED MODULE: ./utils/reloadPreviewIframe.js
18647
- /**
18648
- * Force reload page
18649
- */
18650
- function reloadPreviewIframe() {
18651
- // Reload the iframe
18652
- var iframe = document.querySelector(".buttonizer-preview iframe");
18653
 
18654
- if (iframe != null) {
18655
- if (iframe.contentWindow && iframe.contentWindow.location) {
18656
- iframe.contentWindow.location.reload();
18657
- } else {
18658
- iframe.src = iframe.src;
18659
- }
18660
 
18661
- return true;
18662
- }
18663
 
18664
- return null;
18665
- }
18666
- // EXTERNAL MODULE: ./node_modules/lodash/merge.js
18667
- var merge = __webpack_require__(19);
18668
- var merge_default = /*#__PURE__*/__webpack_require__.n(merge);
18669
 
18670
- // EXTERNAL MODULE: ./node_modules/lodash/isEqual.js
18671
- var isEqual = __webpack_require__(163);
18672
- var isEqual_default = /*#__PURE__*/__webpack_require__.n(isEqual);
18673
 
18674
- // CONCATENATED MODULE: ./src/js/dashboard/store/actions/Queue.js
18675
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 
 
 
 
18676
 
18677
- 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); } }
18678
 
18679
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
18680
 
18681
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
 
 
18682
 
18683
- /* global Promise */
18684
 
 
 
 
 
 
 
 
 
 
 
 
 
18685
 
 
18686
 
18687
- var Queue_SavingQueue = /*#__PURE__*/function () {
18688
- function SavingQueue() {
18689
- _classCallCheck(this, SavingQueue);
18690
- }
18691
 
18692
- _createClass(SavingQueue, null, [{
18693
- key: "enqueue",
18694
- value: function enqueue(promise) {
18695
- var _this = this;
18696
 
18697
- return new Promise(function (resolve, reject) {
18698
- _this.queue.push({
18699
- promise: promise,
18700
- resolve: resolve,
18701
- reject: reject
18702
- });
 
 
 
 
 
 
18703
 
18704
- _this.dequeue();
18705
- });
18706
- }
18707
- }, {
18708
- key: "dequeue",
18709
- value: function dequeue() {
18710
- var _this2 = this;
18711
 
18712
- if (this.workingOnPromise) {
18713
- return false;
18714
- }
18715
 
18716
- var item = this.queue.shift();
 
 
18717
 
18718
- if (!item) {
18719
- return false;
18720
- }
18721
 
18722
- try {
18723
- this.workingOnPromise = true;
18724
- store["a" /* default */].dispatch(Object(rootActions["b" /* changeIsUpdating */])(true));
18725
- item.promise().then(function (value) {
18726
- _this2.workingOnPromise = false;
18727
- item.resolve(value);
18728
 
18729
- _this2.dequeue();
18730
- })["catch"](function (err) {
18731
- _this2.workingOnPromise = false;
18732
- item.reject(err);
8
  *
9
  * Buttonizer is Freemium software. The free version (build) does not contain premium functionality.
10
  *
11
+ * (C) 2017-2021 Buttonizer dev-version
12
  *
13
  */
14
  /*!
21
  *
22
  * Buttonizer is Freemium software. The free version (build) does not contain premium functionality.
23
  *
24
+ * (C) 2017-2021 Buttonizer dev-version
25
  *
26
  */
27
  /******/ (function(modules) { // webpackBootstrap
107
  /******/
108
  /******/
109
  /******/ // Load entry module and return exports
110
+ /******/ return __webpack_require__(__webpack_require__.s = 548);
111
  /******/ })
112
  /************************************************************************/
113
  /******/ ([
118
 
119
 
120
  if (true) {
121
+ module.exports = __webpack_require__(285);
122
  } else {}
123
 
124
 
128
 
129
  "use strict";
130
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return translate; });
131
+ /* harmony import */ var dlv__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(14);
132
  /* harmony import */ var dlv__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(dlv__WEBPACK_IMPORTED_MODULE_0__);
133
 
134
  function translate(key) {
182
 
183
  /***/ }),
184
  /* 3 */
185
+ /***/ (function(module, exports, __webpack_require__) {
186
+
187
+ /**
188
+ * Copyright (c) 2013-present, Facebook, Inc.
189
+ *
190
+ * This source code is licensed under the MIT license found in the
191
+ * LICENSE file in the root directory of this source tree.
192
+ */
193
+
194
+ if (false) { var throwOnDirectAccess, ReactIs; } else {
195
+ // By explicitly using `prop-types` you are opting into new production behavior.
196
+ // http://fb.me/prop-types-in-prod
197
+ module.exports = __webpack_require__(570)();
198
+ }
199
+
200
+
201
+ /***/ }),
202
+ /* 4 */
203
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
204
 
205
  "use strict";
206
  function toVal(mix) {
207
  var k, y, str='';
208
+
209
+ if (typeof mix === 'string' || typeof mix === 'number') {
210
+ str += mix;
211
+ } else if (typeof mix === 'object') {
212
+ if (Array.isArray(mix)) {
213
+ for (k=0; k < mix.length; k++) {
214
+ if (mix[k]) {
215
+ if (y = toVal(mix[k])) {
216
  str && (str += ' ');
217
  str += y;
218
  }
219
  }
220
+ }
221
+ } else {
222
+ for (k in mix) {
223
+ if (mix[k]) {
224
+ str && (str += ' ');
225
+ str += k;
226
  }
227
  }
 
 
 
228
  }
229
  }
230
+
231
  return str;
232
  }
233
 
234
  /* harmony default export */ __webpack_exports__["a"] = (function () {
235
+ var i=0, tmp, x, str='';
236
  while (i < arguments.length) {
237
+ if (tmp = arguments[i++]) {
238
+ if (x = toVal(tmp)) {
239
+ str && (str += ' ');
240
+ str += x
241
+ }
242
  }
243
  }
244
  return str;
246
 
247
 
248
  /***/ }),
249
+ /* 5 */
250
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
251
 
252
  "use strict";
369
  format: function format(normal, hover) {
370
  return [normal, hover].map(function (val) {
371
  return val === "unset" ? "" : val == null ? "" : val;
372
+ }).filter(function (val, key, arr) {
373
+ return key === 0 || val !== "" && val !== arr[0];
374
+ }) // remove duplicates
375
+ .join(";") || "unset";
376
  },
377
  parse: function parse(val) {
378
  var value = val;
393
  if (val === "false") return false;
394
  if (!isNaN(Number(val))) return Number(val);
395
  return val;
396
+ }).map(function (val, key, arr) {
397
+ return key === 0 ? val : val === arr[0] ? undefined : val;
398
+ }); // remove duplicates!
399
  }
400
  },
401
 
423
  }
424
  };
425
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
426
  /***/ }),
427
  /* 6 */
428
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
429
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
430
  "use strict";
431
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __extends; });
432
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __assign; });
646
  }
647
 
648
 
649
+ /***/ }),
650
+ /* 7 */
651
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
652
+
653
+ "use strict";
654
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutProperties; });
655
+ /* harmony import */ var _objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(46);
656
+
657
+ function _objectWithoutProperties(source, excluded) {
658
+ if (source == null) return {};
659
+ var target = Object(_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(source, excluded);
660
+ var key, i;
661
+
662
+ if (Object.getOwnPropertySymbols) {
663
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
664
+
665
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
666
+ key = sourceSymbolKeys[i];
667
+ if (excluded.indexOf(key) >= 0) continue;
668
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
669
+ target[key] = source[key];
670
+ }
671
+ }
672
+
673
+ return target;
674
+ }
675
+
676
+ /***/ }),
677
+ /* 8 */
678
+ /***/ (function(module, exports, __webpack_require__) {
679
+
680
+ var global = __webpack_require__(24);
681
+ var core = __webpack_require__(94);
682
+ var hide = __webpack_require__(72);
683
+ var redefine = __webpack_require__(73);
684
+ var ctx = __webpack_require__(95);
685
+ var PROTOTYPE = 'prototype';
686
+
687
+ var $export = function (type, name, source) {
688
+ var IS_FORCED = type & $export.F;
689
+ var IS_GLOBAL = type & $export.G;
690
+ var IS_STATIC = type & $export.S;
691
+ var IS_PROTO = type & $export.P;
692
+ var IS_BIND = type & $export.B;
693
+ var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
694
+ var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
695
+ var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
696
+ var key, own, out, exp;
697
+ if (IS_GLOBAL) source = name;
698
+ for (key in source) {
699
+ // contains in native
700
+ own = !IS_FORCED && target && target[key] !== undefined;
701
+ // export native or passed
702
+ out = (own ? target : source)[key];
703
+ // bind timers to global for call from export context
704
+ exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
705
+ // extend global
706
+ if (target) redefine(target, key, out, type & $export.U);
707
+ // export
708
+ if (exports[key] != out) hide(exports, key, exp);
709
+ if (IS_PROTO && expProto[key] != out) expProto[key] = out;
710
+ }
711
+ };
712
+ global.core = core;
713
+ // type bitmap
714
+ $export.F = 1; // forced
715
+ $export.G = 2; // global
716
+ $export.S = 4; // static
717
+ $export.P = 8; // proto
718
+ $export.B = 16; // bind
719
+ $export.W = 32; // wrap
720
+ $export.U = 64; // safe
721
+ $export.R = 128; // real proto method for `library`
722
+ module.exports = $export;
723
+
724
+
725
+ /***/ }),
726
+ /* 9 */
727
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
728
+
729
+ "use strict";
730
+
731
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
732
+ var esm_extends = __webpack_require__(2);
733
+
734
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
735
+ var objectWithoutProperties = __webpack_require__(7);
736
+
737
+ // EXTERNAL MODULE: ./node_modules/react/index.js
738
+ var react = __webpack_require__(0);
739
+ var react_default = /*#__PURE__*/__webpack_require__.n(react);
740
+
741
+ // EXTERNAL MODULE: ./node_modules/prop-types/index.js
742
+ var prop_types = __webpack_require__(3);
743
+
744
+ // EXTERNAL MODULE: ./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
745
+ var hoist_non_react_statics_cjs = __webpack_require__(158);
746
+ var hoist_non_react_statics_cjs_default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics_cjs);
747
+
748
+ // EXTERNAL MODULE: ./node_modules/@material-ui/styles/esm/makeStyles/makeStyles.js + 4 modules
749
+ var makeStyles = __webpack_require__(904);
750
+
751
+ // EXTERNAL MODULE: ./node_modules/@material-ui/styles/esm/getThemeProps/getThemeProps.js
752
+ var getThemeProps = __webpack_require__(953);
753
+
754
+ // EXTERNAL MODULE: ./node_modules/@material-ui/styles/esm/useTheme/useTheme.js
755
+ var useTheme = __webpack_require__(536);
756
+
757
+ // CONCATENATED MODULE: ./node_modules/@material-ui/styles/esm/withStyles/withStyles.js
758
+
759
+
760
+
761
+
762
+
763
+
764
+
765
+
766
+ // Link a style sheet with a component.
767
+ // It does not modify the component passed to it;
768
+ // instead, it returns a new component, with a `classes` property.
769
+
770
+ var withStyles_withStyles = function withStyles(stylesOrCreator) {
771
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
772
+ return function (Component) {
773
+ var defaultTheme = options.defaultTheme,
774
+ _options$withTheme = options.withTheme,
775
+ withTheme = _options$withTheme === void 0 ? false : _options$withTheme,
776
+ name = options.name,
777
+ stylesOptions = Object(objectWithoutProperties["a" /* default */])(options, ["defaultTheme", "withTheme", "name"]);
778
+
779
+ if (false) {}
780
+
781
+ var classNamePrefix = name;
782
+
783
+ if (false) { var displayName; }
784
+
785
+ var useStyles = Object(makeStyles["a" /* default */])(stylesOrCreator, Object(esm_extends["a" /* default */])({
786
+ defaultTheme: defaultTheme,
787
+ Component: Component,
788
+ name: name || Component.displayName,
789
+ classNamePrefix: classNamePrefix
790
+ }, stylesOptions));
791
+ var WithStyles = /*#__PURE__*/react_default.a.forwardRef(function WithStyles(props, ref) {
792
+ var classesProp = props.classes,
793
+ innerRef = props.innerRef,
794
+ other = Object(objectWithoutProperties["a" /* default */])(props, ["classes", "innerRef"]); // The wrapper receives only user supplied props, which could be a subset of
795
+ // the actual props Component might receive due to merging with defaultProps.
796
+ // So copying it here would give us the same result in the wrapper as well.
797
+
798
+
799
+ var classes = useStyles(Object(esm_extends["a" /* default */])({}, Component.defaultProps, props));
800
+ var theme;
801
+ var more = other;
802
+
803
+ if (typeof name === 'string' || withTheme) {
804
+ // name and withTheme are invariant in the outer scope
805
+ // eslint-disable-next-line react-hooks/rules-of-hooks
806
+ theme = Object(useTheme["a" /* default */])() || defaultTheme;
807
+
808
+ if (name) {
809
+ more = Object(getThemeProps["a" /* default */])({
810
+ theme: theme,
811
+ name: name,
812
+ props: other
813
+ });
814
+ } // Provide the theme to the wrapped component.
815
+ // So we don't have to use the `withTheme()` Higher-order Component.
816
+
817
+
818
+ if (withTheme && !more.theme) {
819
+ more.theme = theme;
820
+ }
821
+ }
822
+
823
+ return /*#__PURE__*/react_default.a.createElement(Component, Object(esm_extends["a" /* default */])({
824
+ ref: innerRef || ref,
825
+ classes: classes
826
+ }, more));
827
+ });
828
+ false ? undefined : void 0;
829
+
830
+ if (false) {}
831
+
832
+ hoist_non_react_statics_cjs_default()(WithStyles, Component);
833
+
834
+ if (false) {}
835
+
836
+ return WithStyles;
837
+ };
838
+ };
839
+
840
+ /* harmony default export */ var esm_withStyles_withStyles = (withStyles_withStyles);
841
+ // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/styles/defaultTheme.js
842
+ var styles_defaultTheme = __webpack_require__(182);
843
+
844
+ // CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/withStyles.js
845
+
846
+
847
+
848
+
849
+ function styles_withStyles_withStyles(stylesOrCreator, options) {
850
+ return esm_withStyles_withStyles(stylesOrCreator, Object(esm_extends["a" /* default */])({
851
+ defaultTheme: styles_defaultTheme["a" /* default */]
852
+ }, options));
853
+ }
854
+
855
+ /* harmony default export */ var styles_withStyles = __webpack_exports__["a"] = (styles_withStyles_withStyles);
856
+
857
  /***/ }),
858
  /* 10 */
859
+ /***/ (function(module, exports, __webpack_require__) {
860
+
861
+ "use strict";
862
+
863
+
864
+ Object.defineProperty(exports, "__esModule", {
865
+ value: true
866
+ });
867
+ exports.ReactCSS = exports.loop = exports.handleActive = exports.handleHover = exports.hover = undefined;
868
+
869
+ var _flattenNames = __webpack_require__(628);
870
+
871
+ var _flattenNames2 = _interopRequireDefault(_flattenNames);
872
+
873
+ var _mergeClasses = __webpack_require__(650);
874
+
875
+ var _mergeClasses2 = _interopRequireDefault(_mergeClasses);
876
+
877
+ var _autoprefix = __webpack_require__(667);
878
+
879
+ var _autoprefix2 = _interopRequireDefault(_autoprefix);
880
+
881
+ var _hover2 = __webpack_require__(668);
882
+
883
+ var _hover3 = _interopRequireDefault(_hover2);
884
+
885
+ var _active = __webpack_require__(669);
886
+
887
+ var _active2 = _interopRequireDefault(_active);
888
+
889
+ var _loop2 = __webpack_require__(670);
890
+
891
+ var _loop3 = _interopRequireDefault(_loop2);
892
+
893
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
894
+
895
+ exports.hover = _hover3.default;
896
+ exports.handleHover = _hover3.default;
897
+ exports.handleActive = _active2.default;
898
+ exports.loop = _loop3.default;
899
+ var ReactCSS = exports.ReactCSS = function ReactCSS(classes) {
900
+ for (var _len = arguments.length, activations = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
901
+ activations[_key - 1] = arguments[_key];
902
+ }
903
+
904
+ var activeNames = (0, _flattenNames2.default)(activations);
905
+ var merged = (0, _mergeClasses2.default)(classes, activeNames);
906
+ return (0, _autoprefix2.default)(merged);
907
+ };
908
+
909
+ exports.default = ReactCSS;
910
+
911
+ /***/ }),
912
+ /* 11 */,
913
+ /* 12 */
914
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
915
 
916
  "use strict";
917
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return capitalize; });
918
+ /* harmony import */ var _material_ui_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(535);
919
+
920
  // It should to be noted that this function isn't equivalent to `text-transform: capitalize`.
921
  //
922
  // A strict capitalization should uppercase the first letter of each word a the sentence.
923
  // We only handle the first word.
924
  function capitalize(string) {
925
+ if (typeof string !== 'string') {
926
+ throw new Error( false ? undefined : Object(_material_ui_utils__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(7));
927
+ }
928
 
929
  return string.charAt(0).toUpperCase() + string.slice(1);
930
  }
931
 
932
  /***/ }),
933
+ /* 13 */
 
934
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
935
 
936
  "use strict";
938
  // EXPORTS
939
  __webpack_require__.d(__webpack_exports__, "a", function() { return /* reexport */ components_Provider; });
940
  __webpack_require__.d(__webpack_exports__, "b", function() { return /* reexport */ connect_connect; });
941
+ __webpack_require__.d(__webpack_exports__, "c", function() { return /* reexport */ useDispatch; });
942
 
943
+ // UNUSED EXPORTS: connectAdvanced, ReactReduxContext, batch, createDispatchHook, useSelector, createSelectorHook, useStore, createStoreHook, shallowEqual
944
 
945
  // EXTERNAL MODULE: ./node_modules/react/index.js
946
  var react = __webpack_require__(0);
947
  var react_default = /*#__PURE__*/__webpack_require__.n(react);
948
 
949
  // EXTERNAL MODULE: ./node_modules/prop-types/index.js
950
+ var prop_types = __webpack_require__(3);
951
 
952
  // CONCATENATED MODULE: ./node_modules/react-redux/es/components/Context.js
953
 
954
+ var ReactReduxContext = /*#__PURE__*/react_default.a.createContext(null);
 
 
955
 
956
  if (false) {}
957
 
1044
  };
1045
  }
1046
 
1047
+ var Subscription = /*#__PURE__*/function () {
 
 
1048
  function Subscription(store, parentSub) {
1049
  this.store = store;
1050
  this.parentSub = parentSub;
1129
  };
1130
  }, [contextValue, previousState]);
1131
  var Context = context || ReactReduxContext;
1132
+ return /*#__PURE__*/react_default.a.createElement(Context.Provider, {
1133
  value: contextValue
1134
  }, children);
1135
  }
1137
  if (false) {}
1138
 
1139
  /* harmony default export */ var components_Provider = (Provider);
1140
+ // CONCATENATED MODULE: ./node_modules/react-redux/node_modules/@babel/runtime/helpers/esm/extends.js
1141
+ function _extends() {
1142
+ _extends = Object.assign || function (target) {
1143
+ for (var i = 1; i < arguments.length; i++) {
1144
+ var source = arguments[i];
1145
 
1146
+ for (var key in source) {
1147
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
1148
+ target[key] = source[key];
1149
+ }
1150
+ }
1151
+ }
1152
 
1153
+ return target;
1154
+ };
 
1155
 
1156
+ return _extends.apply(this, arguments);
1157
+ }
1158
+ // CONCATENATED MODULE: ./node_modules/react-redux/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
1159
+ function _objectWithoutPropertiesLoose(source, excluded) {
1160
+ if (source == null) return {};
1161
+ var target = {};
1162
+ var sourceKeys = Object.keys(source);
1163
+ var key, i;
1164
+
1165
+ for (i = 0; i < sourceKeys.length; i++) {
1166
+ key = sourceKeys[i];
1167
+ if (excluded.indexOf(key) >= 0) continue;
1168
+ target[key] = source[key];
1169
+ }
1170
+
1171
+ return target;
1172
+ }
1173
+ // EXTERNAL MODULE: ./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
1174
+ var hoist_non_react_statics_cjs = __webpack_require__(158);
1175
+ var hoist_non_react_statics_cjs_default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics_cjs);
1176
+
1177
+ // EXTERNAL MODULE: ./node_modules/react-redux/node_modules/react-is/index.js
1178
+ var react_is = __webpack_require__(508);
1179
 
1180
  // CONCATENATED MODULE: ./node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js
1181
  // React currently throws a warning when using useLayoutEffect on the server.
1315
  };
1316
 
1317
  function connectAdvanced(
1318
+ /*
1319
+ selectorFactory is a func that is responsible for returning the selector function used to
1320
+ compute new props from state, props, and dispatch. For example:
1321
+ export default connectAdvanced((dispatch, options) => (state, props) => ({
1322
+ thing: state.things[props.thingId],
1323
+ saveThing: fields => dispatch(actionCreators.saveThing(props.thingId, fields)),
1324
+ }))(YourComponent)
1325
+ Access to dispatch is provided to the factory so selectorFactories can bind actionCreators
1326
+ outside of their selector as an optimization. Options passed to connectAdvanced are passed to
1327
+ the selectorFactory, along with displayName and WrappedComponent, as the second argument.
1328
+ Note that selectorFactory is responsible for all caching/memoization of inbound and outbound
1329
+ props. Do not use connectAdvanced directly without memoizing results between calls to your
1330
+ selector, otherwise the Connect component will re-render on every state or props change.
1331
  */
1332
  selectorFactory, // options object:
1333
  _ref) {
1354
  forwardRef = _ref2$forwardRef === void 0 ? false : _ref2$forwardRef,
1355
  _ref2$context = _ref2.context,
1356
  context = _ref2$context === void 0 ? ReactReduxContext : _ref2$context,
1357
+ connectOptions = _objectWithoutPropertiesLoose(_ref2, ["getDisplayName", "methodName", "renderCountProp", "shouldHandleStateChanges", "storeKey", "withRef", "forwardRef", "context"]);
1358
 
1359
  if (false) { var customStoreWarningMessage; }
1360
 
1365
  var wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component';
1366
  var displayName = getDisplayName(wrappedComponentName);
1367
 
1368
+ var selectorFactoryOptions = _extends({}, connectOptions, {
1369
  getDisplayName: getDisplayName,
1370
  methodName: methodName,
1371
  renderCountProp: renderCountProp,
1394
  // Distinguish between actual "data" props that were passed to the wrapper component,
1395
  // and values needed to control behavior (forwarded refs, alternate context instances).
1396
  // To maintain the wrapperProps object reference, memoize this destructuring.
1397
+ var reactReduxForwardedRef = props.reactReduxForwardedRef,
1398
+ wrapperProps = _objectWithoutPropertiesLoose(props, ["reactReduxForwardedRef"]);
1399
 
1400
+ return [props.context, reactReduxForwardedRef, wrapperProps];
1401
  }, [props]),
1402
  propsContext = _useMemo[0],
1403
+ reactReduxForwardedRef = _useMemo[1],
1404
  wrapperProps = _useMemo[2];
1405
 
1406
  var ContextToUse = Object(react["useMemo"])(function () {
1407
  // Users may optionally pass in a custom context instance to use instead of our ReactReduxContext.
1408
  // Memoize the check that determines which context instance we should use.
1409
+ return propsContext && propsContext.Consumer && Object(react_is["isContextConsumer"])( /*#__PURE__*/react_default.a.createElement(propsContext.Consumer, null)) ? propsContext : Context;
1410
  }, [propsContext, Context]); // Retrieve the store and ancestor subscription via context, if available
1411
 
1412
  var contextValue = Object(react["useContext"])(ContextToUse); // The store _must_ exist as either a prop or in context.
1453
  // connected descendants won't update until after this component is done
1454
 
1455
 
1456
+ return _extends({}, contextValue, {
1457
  subscription: subscription
1458
  });
1459
  }, [didStoreComeFromProps, contextValue, subscription]); // We need to force this wrapper component to re-render whenever a Redux store update
1500
  // We memoize the elements for the rendered child component as an optimization.
1501
 
1502
  var renderedWrappedComponent = Object(react["useMemo"])(function () {
1503
+ return /*#__PURE__*/react_default.a.createElement(WrappedComponent, _extends({}, actualChildProps, {
1504
+ ref: reactReduxForwardedRef
1505
  }));
1506
+ }, [reactReduxForwardedRef, WrappedComponent, actualChildProps]); // If React sees the exact same element reference as last time, it bails out of re-rendering
1507
  // that child, same as if it was wrapped in React.memo() or returned false from shouldComponentUpdate.
1508
 
1509
  var renderedChild = Object(react["useMemo"])(function () {
1511
  // If this component is subscribed to store updates, we need to pass its own
1512
  // subscription instance down to our descendants. That means rendering the same
1513
  // Context instance, and putting a different value into the context.
1514
+ return /*#__PURE__*/react_default.a.createElement(ContextToUse.Provider, {
1515
  value: overriddenContextValue
1516
  }, renderedWrappedComponent);
1517
  }
1528
 
1529
  if (forwardRef) {
1530
  var forwarded = react_default.a.forwardRef(function forwardConnectRef(props, ref) {
1531
+ return /*#__PURE__*/react_default.a.createElement(Connect, _extends({}, props, {
1532
+ reactReduxForwardedRef: ref
1533
  }));
1534
  });
1535
  forwarded.displayName = displayName;
1569
  return true;
1570
  }
1571
  // EXTERNAL MODULE: ./node_modules/redux/es/redux.js
1572
+ var redux = __webpack_require__(102);
1573
 
1574
  // CONCATENATED MODULE: ./node_modules/react-redux/es/utils/isPlainObject.js
1575
+ /**
1576
+ * @param {any} obj The object to inspect.
1577
+ * @returns {boolean} True if the argument appears to be a plain object.
1578
  */
1579
  function isPlainObject(obj) {
1580
  if (typeof obj !== 'object' || obj === null) return false;
1589
  return proto === baseProto;
1590
  }
1591
  // CONCATENATED MODULE: ./node_modules/react-redux/es/utils/warning.js
1592
+ /**
1593
+ * Prints a warning in the console if it exists.
1594
+ *
1595
+ * @param {String} message The warning message.
1596
+ * @returns {void}
1597
  */
1598
  function warning(message) {
1599
  /* eslint-disable no-console */
1720
 
1721
 
1722
  function defaultMergeProps(stateProps, dispatchProps, ownProps) {
1723
+ return _extends({}, ownProps, stateProps, dispatchProps);
1724
  }
1725
  function wrapMergePropsFunc(mergeProps) {
1726
  return function initMergePropsProxy(dispatch, _ref) {
1846
  var initMapStateToProps = _ref2.initMapStateToProps,
1847
  initMapDispatchToProps = _ref2.initMapDispatchToProps,
1848
  initMergeProps = _ref2.initMergeProps,
1849
+ options = _objectWithoutPropertiesLoose(_ref2, ["initMapStateToProps", "initMapDispatchToProps", "initMergeProps"]);
1850
 
1851
  var mapStateToProps = initMapStateToProps(dispatch, options);
1852
  var mapDispatchToProps = initMapDispatchToProps(dispatch, options);
1866
 
1867
 
1868
 
1869
+ /*
1870
+ connect is a facade over connectAdvanced. It turns its args into a compatible
1871
+ selectorFactory, which has the signature:
1872
+
1873
+ (dispatch, options) => (nextState, nextOwnProps) => nextFinalProps
1874
+
1875
+ connect passes its args to connectAdvanced as options, which will in turn pass them to
1876
+ selectorFactory each time a Connect component instance is instantiated or hot reloaded.
1877
+
1878
+ selectorFactory returns a final props selector from its mapStateToProps,
1879
+ mapStateToPropsFactories, mapDispatchToProps, mapDispatchToPropsFactories, mergeProps,
1880
+ mergePropsFactories, and pure args.
1881
+
1882
+ The resulting final props selector is called by the Connect component instance whenever
1883
+ it receives new props or store state.
1884
  */
1885
 
1886
  function match(arg, factories, name) {
1929
  areStatePropsEqual = _ref3$areStatePropsEq === void 0 ? shallowEqual : _ref3$areStatePropsEq,
1930
  _ref3$areMergedPropsE = _ref3.areMergedPropsEqual,
1931
  areMergedPropsEqual = _ref3$areMergedPropsE === void 0 ? shallowEqual : _ref3$areMergedPropsE,
1932
+ extraOptions = _objectWithoutPropertiesLoose(_ref3, ["pure", "areStatesEqual", "areOwnPropsEqual", "areStatePropsEqual", "areMergedPropsEqual"]);
1933
 
1934
  var initMapStateToProps = match(mapStateToProps, mapStateToPropsFactories, 'mapStateToProps');
1935
  var initMapDispatchToProps = match(mapDispatchToProps, mapDispatchToPropsFactories, 'mapDispatchToProps');
1936
  var initMergeProps = match(mergeProps, mergePropsFactories, 'mergeProps');
1937
+ return connectHOC(selectorFactory, _extends({
1938
  // used in error messages
1939
  methodName: 'connect',
1940
  // used to compute Connect's displayName from the wrapped component's displayName.
1959
  // CONCATENATED MODULE: ./node_modules/react-redux/es/hooks/useReduxContext.js
1960
 
1961
 
1962
+ /**
1963
+ * A hook to access the value of the `ReactReduxContext`. This is a low-level
1964
+ * hook that you should usually not need to call directly.
1965
+ *
1966
+ * @returns {any} the value of the `ReactReduxContext`
1967
+ *
1968
+ * @example
1969
+ *
1970
+ * import React from 'react'
1971
+ * import { useReduxContext } from 'react-redux'
1972
+ *
1973
+ * export const CounterComponent = ({ value }) => {
1974
+ * const { store } = useReduxContext()
1975
+ * return <div>{store.getState()}</div>
1976
+ * }
1977
  */
1978
 
1979
  function useReduxContext_useReduxContext() {
1987
 
1988
 
1989
 
1990
+ /**
1991
+ * Hook factory, which creates a `useStore` hook bound to a given context.
1992
+ *
1993
+ * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.
1994
+ * @returns {Function} A `useStore` hook bound to the specified context.
1995
  */
1996
 
1997
  function createStoreHook(context) {
2009
  return store;
2010
  };
2011
  }
2012
+ /**
2013
+ * A hook to access the redux store.
2014
+ *
2015
+ * @returns {any} the redux store
2016
+ *
2017
+ * @example
2018
+ *
2019
+ * import React from 'react'
2020
+ * import { useStore } from 'react-redux'
2021
+ *
2022
+ * export const ExampleComponent = () => {
2023
+ * const store = useStore()
2024
+ * return <div>{store.getState()}</div>
2025
+ * }
2026
  */
2027
 
2028
+ var useStore_useStore = /*#__PURE__*/createStoreHook();
 
 
2029
  // CONCATENATED MODULE: ./node_modules/react-redux/es/hooks/useDispatch.js
2030
 
2031
 
2032
+ /**
2033
+ * Hook factory, which creates a `useDispatch` hook bound to a given context.
2034
+ *
2035
+ * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.
2036
+ * @returns {Function} A `useDispatch` hook bound to the specified context.
2037
  */
2038
 
2039
  function createDispatchHook(context) {
2047
  return store.dispatch;
2048
  };
2049
  }
2050
+ /**
2051
+ * A hook to access the redux `dispatch` function.
2052
+ *
2053
+ * @returns {any|function} redux store's `dispatch` function
2054
+ *
2055
+ * @example
2056
+ *
2057
+ * import React, { useCallback } from 'react'
2058
+ * import { useDispatch } from 'react-redux'
2059
+ *
2060
+ * export const CounterComponent = ({ value }) => {
2061
+ * const dispatch = useDispatch()
2062
+ * const increaseCounter = useCallback(() => dispatch({ type: 'increase-counter' }), [])
2063
+ * return (
2064
+ * <div>
2065
+ * <span>{value}</span>
2066
+ * <button onClick={increaseCounter}>Increase counter</button>
2067
+ * </div>
2068
+ * )
2069
+ * }
2070
+ */
2071
+
2072
+ var useDispatch = /*#__PURE__*/createDispatchHook();
 
 
2073
  // CONCATENATED MODULE: ./node_modules/react-redux/es/hooks/useSelector.js
2074
 
2075
 
2092
  }, [store, contextSub]);
2093
  var latestSubscriptionCallbackError = Object(react["useRef"])();
2094
  var latestSelector = Object(react["useRef"])();
2095
+ var latestStoreState = Object(react["useRef"])();
2096
  var latestSelectedState = Object(react["useRef"])();
2097
+ var storeState = store.getState();
2098
  var selectedState;
2099
 
2100
  try {
2101
+ if (selector !== latestSelector.current || storeState !== latestStoreState.current || latestSubscriptionCallbackError.current) {
2102
+ selectedState = selector(storeState);
2103
  } else {
2104
  selectedState = latestSelectedState.current;
2105
  }
2113
 
2114
  useIsomorphicLayoutEffect(function () {
2115
  latestSelector.current = selector;
2116
+ latestStoreState.current = storeState;
2117
  latestSelectedState.current = selectedState;
2118
  latestSubscriptionCallbackError.current = undefined;
2119
  });
2135
  latestSubscriptionCallbackError.current = err;
2136
  }
2137
 
2138
+ forceRender();
2139
  }
2140
 
2141
  subscription.onStateChange = checkForUpdates;
2147
  }, [store, subscription]);
2148
  return selectedState;
2149
  }
2150
+ /**
2151
+ * Hook factory, which creates a `useSelector` hook bound to a given context.
2152
+ *
2153
+ * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.
2154
+ * @returns {Function} A `useSelector` hook bound to the specified context.
2155
  */
2156
 
2157
 
2174
  store = _useReduxContext.store,
2175
  contextSub = _useReduxContext.subscription;
2176
 
2177
+ var selectedState = useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub);
2178
+ Object(react["useDebugValue"])(selectedState);
2179
+ return selectedState;
2180
  };
2181
  }
2182
+ /**
2183
+ * A hook to access the redux store's state. This hook takes a selector function
2184
+ * as an argument. The selector is called with the store state.
2185
+ *
2186
+ * This hook takes an optional equality comparison function as the second parameter
2187
+ * that allows you to customize the way the selected state is compared to determine
2188
+ * whether the component needs to be re-rendered.
2189
+ *
2190
+ * @param {Function} selector the selector function
2191
+ * @param {Function=} equalityFn the function that will be used to determine equality
2192
+ *
2193
+ * @returns {any} the selected state
2194
+ *
2195
+ * @example
2196
+ *
2197
+ * import React from 'react'
2198
+ * import { useSelector } from 'react-redux'
2199
+ *
2200
+ * export const CounterComponent = () => {
2201
+ * const counter = useSelector(state => state.counter)
2202
+ * return <div>{counter}</div>
2203
+ * }
2204
  */
2205
 
2206
+ var useSelector_useSelector = /*#__PURE__*/createSelectorHook();
 
 
2207
  // EXTERNAL MODULE: ./node_modules/react-dom/index.js
2208
+ var react_dom = __webpack_require__(25);
2209
 
2210
  // CONCATENATED MODULE: ./node_modules/react-redux/es/utils/reactBatchedUpdates.js
2211
  /* eslint-disable import/no-unresolved */
2225
 
2226
 
2227
  /***/ }),
2228
+ /* 14 */
2229
  /***/ (function(module, exports, __webpack_require__) {
2230
 
2231
  !function(t,n){ true?module.exports=function(t,n,e,i,o){for(n=n.split?n.split("."):n,i=0;i<n.length;i++)t=t?t[n[i]]:o;return t===o?e:t}:undefined}(this);
2233
 
2234
 
2235
  /***/ }),
2236
+ /* 15 */
2237
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2238
 
2239
  "use strict";
2249
  /* unused harmony export removeExcludedDate */
2250
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return addRecord; });
2251
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return removeRecord; });
2252
+ /* harmony import */ var buttonizer_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);
2253
+ /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(121);
2254
 
2255
 
2256
  /**
2432
  }
2433
 
2434
  /***/ }),
2435
+ /* 16 */
2436
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2437
 
2438
  "use strict";
2447
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return fade; });
2448
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return darken; });
2449
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return lighten; });
2450
+ /* harmony import */ var _material_ui_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(535);
2451
+
2452
+
2453
  /* eslint-disable no-use-before-define */
2454
 
2455
  /**
2478
 
2479
  function hexToRgb(color) {
2480
  color = color.substr(1);
2481
+ var re = new RegExp(".{1,".concat(color.length >= 6 ? 2 : 1, "}"), 'g');
2482
  var colors = color.match(re);
2483
 
2484
  if (colors && colors[0].length === 1) {
2487
  });
2488
  }
2489
 
2490
+ return colors ? "rgb".concat(colors.length === 4 ? 'a' : '', "(").concat(colors.map(function (n, index) {
2491
+ return index < 3 ? parseInt(n, 16) : Math.round(parseInt(n, 16) / 255 * 1000) / 1000;
2492
  }).join(', '), ")") : '';
2493
  }
2494
 
2574
  var type = color.substring(0, marker);
2575
 
2576
  if (['rgb', 'rgba', 'hsl', 'hsla'].indexOf(type) === -1) {
2577
+ throw new Error( false ? undefined : Object(_material_ui_utils__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(3, color));
2578
  }
2579
 
2580
  var values = color.substring(marker + 1, color.length - 1).split(',');
2725
  return recomposeColor(color);
2726
  }
2727
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2728
  /***/ }),
2729
  /* 17 */
2730
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2733
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useForkRef; });
2734
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
2735
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2736
+ /* harmony import */ var _setRef__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(77);
2737
 
2738
 
2739
  function useForkRef(refA, refB) {
2755
  }
2756
 
2757
  /***/ }),
2758
+ /* 18 */,
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2759
  /* 19 */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2760
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2761
 
2762
  "use strict";
2763
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return SettingsContainer; });
2764
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
2765
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2766
+ /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4);
2767
+ /* harmony import */ var _settingsContainer_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(1237);
2768
  /* harmony import */ var _settingsContainer_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_settingsContainer_scss__WEBPACK_IMPORTED_MODULE_2__);
2769
  function _extends() { _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; }; return _extends.apply(this, arguments); }
2770
 
2796
  }
2797
 
2798
  /***/ }),
2799
+ /* 20 */
2800
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2801
 
2802
+ "use strict";
2803
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return CollapsibleGroup; });
2804
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
2805
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2806
+ /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(111);
2807
+ /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4);
2808
+ /* harmony import */ var _collapsibleGroup_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(1235);
2809
+ /* harmony import */ var _collapsibleGroup_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_collapsibleGroup_scss__WEBPACK_IMPORTED_MODULE_3__);
2810
+ function _extends() { _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; }; return _extends.apply(this, arguments); }
2811
 
2812
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2813
 
2814
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
 
 
2815
 
2816
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
 
 
 
 
 
 
2817
 
2818
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
 
 
 
 
2819
 
2820
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
2821
+
2822
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
2823
+
2824
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
2825
+
2826
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
2827
+
2828
+
2829
+
2830
+
2831
+
2832
+ function CollapsibleGroup(_ref) {
2833
+ var _ref$opened = _ref.opened,
2834
+ opened = _ref$opened === void 0 ? false : _ref$opened,
2835
+ _ref$title = _ref.title,
2836
+ title = _ref$title === void 0 ? "" : _ref$title,
2837
+ _ref$bodySpacing = _ref.bodySpacing,
2838
+ bodySpacing = _ref$bodySpacing === void 0 ? true : _ref$bodySpacing,
2839
+ _ref$className = _ref.className,
2840
+ className = _ref$className === void 0 ? null : _ref$className,
2841
+ children = _ref.children,
2842
+ onSetIsOpened = _ref.onSetIsOpened,
2843
+ groupProps = _objectWithoutProperties(_ref, ["opened", "title", "bodySpacing", "className", "children", "onSetIsOpened"]);
2844
+
2845
+ if (children == null) return null;
2846
+
2847
+ var _useState = Object(react__WEBPACK_IMPORTED_MODULE_0__["useState"])(opened),
2848
+ _useState2 = _slicedToArray(_useState, 2),
2849
+ isOpened = _useState2[0],
2850
+ setIsOpened = _useState2[1];
2851
+
2852
+ Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
2853
+ setIsOpened(opened);
2854
+ }, [opened]);
2855
+
2856
+ var handleClick = function handleClick() {
2857
+ var newIsOpened = !isOpened;
2858
+ onSetIsOpened && onSetIsOpened(newIsOpened);
2859
+ setIsOpened(newIsOpened);
2860
+ };
2861
+
2862
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
2863
+ className: Object(clsx__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])("collapsible-group mdc-card", isOpened && "collapsible-opened", className)
2864
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], _extends({
2865
+ onClick: handleClick,
2866
+ color: "primary"
2867
+ }, groupProps), title, " ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("i", {
2868
+ className: "fas fa-chevron-down"
2869
+ })), isOpened && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
2870
+ className: Object(clsx__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(bodySpacing && "collapsible-body")
2871
+ }, children));
2872
  }
2873
 
2874
  /***/ }),
2875
+ /* 21 */
2876
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2877
 
2878
  "use strict";
2883
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return _get; });
2884
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _def; });
2885
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return _defs; });
2886
+ /* harmony import */ var _index__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(34);
2887
+ /* harmony import */ var buttonizer_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);
2888
+ /* harmony import */ var buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(47);
2889
  /* harmony import */ var buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2__);
2890
+ /* harmony import */ var lodash_defaults__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(403);
2891
  /* harmony import */ var lodash_defaults__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_defaults__WEBPACK_IMPORTED_MODULE_3__);
2892
+ /* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(32);
2893
  /* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_merge__WEBPACK_IMPORTED_MODULE_4__);
2894
  /* global process */
2895
 
2937
  * @param {string} key to be getted key
2938
  * @param {obj} record object to get key out of
2939
  * @param {string} model (optional) when filled with (button|group), returns default if value not present. when defaults is left blank, returns "" when there is no value.
2940
+ * @param {object} options options to apply
2941
  */
2942
 
2943
  function _get(key, record) {
2944
  var model = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
2945
  var parent = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
2946
+ var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {
2947
+ excludeSelf: false
2948
+ };
2949
 
2950
  if (typeof record === "undefined" || typeof key === "undefined") {
2951
  console.log("record: " + record);
2969
 
2970
  if (value == null) return !model ? ["", ""] : _defs(model, key, [], parentValue);
2971
  var result = buttonizer_constants__WEBPACK_IMPORTED_MODULE_1__[/* formats */ "c"]["normal_hover"].parse(value);
2972
+ return model ? _defs(model, key, result, parentValue, options) : lodash_merge__WEBPACK_IMPORTED_MODULE_4___default()(["", ""], result);
2973
  }
2974
  function _def(model, key) {
2975
  var fallback = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "";
2989
  function _defs(model, key) {
2990
  var self = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
2991
  var parent = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
2992
+ var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
2993
 
2994
  if (!Object.keys(buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2__["dashboard"]).includes(model)) {
2995
  console.error("model ".concat(model, " not familiar"));
3002
  }
3003
 
3004
  var def = buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2__["dashboard"][model][key];
3005
+ if (key === "background_is_image") console.log(buttonizer_defaults__WEBPACK_IMPORTED_MODULE_2__["dashboard"]);
3006
+ if (model === "group") return mergeGroupDefaults(self, def, options);
3007
+ if (model === "button") return mergeButtonDefaults(self, parent, def, options);
3008
  }
3009
 
3010
  function mergeGroupDefaults() {
3011
  var self = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
3012
  var def = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
3013
+
3014
+ var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
3015
+ _ref$excludeSelf = _ref.excludeSelf,
3016
+ excludeSelf = _ref$excludeSelf === void 0 ? false : _ref$excludeSelf;
3017
+
3018
+ var arr = [self, def, [self[0], self[0]], [def[0], def[0]]];
3019
+ if (excludeSelf) arr.shift(); // exclude 'self'
3020
+
3021
+ return lodash_defaults__WEBPACK_IMPORTED_MODULE_3___default.a.apply(void 0, arr);
3022
  }
3023
 
3024
  function mergeButtonDefaults() {
3025
  var self = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
3026
  var parent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
3027
  var def = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
 
 
3028
 
3029
+ var _ref2 = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {},
3030
+ _ref2$excludeSelf = _ref2.excludeSelf,
3031
+ excludeSelf = _ref2$excludeSelf === void 0 ? false : _ref2$excludeSelf;
3032
 
3033
+ var arr = [self, parent, [undefined, self[0]], def, [undefined, parent[0]], [undefined, def[0]]];
3034
+ if (excludeSelf) arr.shift(); // remove 'self'
3035
+
3036
+ return lodash_defaults__WEBPACK_IMPORTED_MODULE_3___default.a.apply(void 0, arr);
 
 
3037
  }
3038
 
3039
  /***/ }),
3040
+ /* 22 */
3041
+ /***/ (function(module, exports, __webpack_require__) {
3042
 
3043
+ var isObject = __webpack_require__(30);
3044
+ module.exports = function (it) {
3045
+ if (!isObject(it)) throw TypeError(it + ' is not an object!');
3046
+ return it;
3047
+ };
 
3048
 
3049
 
3050
  /***/ }),
3051
+ /* 23 */
3052
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3053
 
3054
  "use strict";
3055
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return RuleList; });
3056
+ /* unused harmony export SheetsManager */
3057
+ /* unused harmony export SheetsRegistry */
3058
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return create; });
3059
+ /* unused harmony export createGenerateId */
3060
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return createRule; });
3061
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return getDynamicStyles; });
3062
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return hasCSSTOMSupport; });
3063
+ /* unused harmony export sheets */
3064
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return toCssValue; });
3065
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
3066
+ /* harmony import */ var is_in_browser__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(63);
3067
+ /* harmony import */ var tiny_warning__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52);
3068
+ /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(100);
3069
+ /* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(37);
3070
+ /* harmony import */ var _babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(53);
3071
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(46);
3072
 
 
 
 
 
 
 
 
3073
 
 
3074
 
 
 
 
 
 
 
 
 
 
 
3075
 
 
 
 
3076
 
 
3077
 
 
 
 
 
 
 
 
3078
 
 
 
 
 
3079
 
3080
+ var plainObjectConstrurctor = {}.constructor;
3081
+ function cloneStyle(style) {
3082
+ if (style == null || typeof style !== 'object') return style;
3083
+ if (Array.isArray(style)) return style.map(cloneStyle);
3084
+ if (style.constructor !== plainObjectConstrurctor) return style;
3085
+ var newStyle = {};
3086
+
3087
+ for (var name in style) {
3088
+ newStyle[name] = cloneStyle(style[name]);
3089
  }
3090
 
3091
+ return newStyle;
 
 
 
 
 
 
 
3092
  }
 
 
3093
 
3094
+ /**
3095
+ * Create a rule instance.
3096
+ */
3097
 
3098
+ function createRule(name, decl, options) {
3099
+ if (name === void 0) {
3100
+ name = 'unnamed';
3101
+ }
3102
 
3103
+ var jss = options.jss;
3104
+ var declCopy = cloneStyle(decl);
3105
+ var rule = jss.plugins.onCreateRule(name, declCopy, options);
3106
+ if (rule) return rule; // It is an at-rule and it has no instance.
3107
 
3108
+ if (name[0] === '@') {
3109
+ false ? undefined : void 0;
 
 
 
3110
  }
 
3111
 
3112
+ return null;
3113
+ }
3114
 
3115
+ var join = function join(value, by) {
3116
+ var result = '';
 
3117
 
3118
+ for (var i = 0; i < value.length; i++) {
3119
+ // Remove !important from the value, it will be readded later.
3120
+ if (value[i] === '!important') break;
3121
+ if (result) result += by;
3122
+ result += value[i];
3123
+ }
3124
 
3125
+ return result;
3126
+ };
3127
 
3128
+ /**
3129
+ * Converts array values to string.
3130
+ *
3131
+ * `margin: [['5px', '10px']]` > `margin: 5px 10px;`
3132
+ * `border: ['1px', '2px']` > `border: 1px, 2px;`
3133
+ * `margin: [['5px', '10px'], '!important']` > `margin: 5px 10px !important;`
3134
+ * `color: ['red', !important]` > `color: red !important;`
3135
+ */
3136
+ var toCssValue = function toCssValue(value, ignoreImportant) {
3137
+ if (ignoreImportant === void 0) {
3138
+ ignoreImportant = false;
 
 
 
 
 
3139
  }
 
3140
 
3141
+ if (!Array.isArray(value)) return value;
3142
+ var cssValue = ''; // Support space separated values via `[['5px', '10px']]`.
 
 
 
 
3143
 
3144
+ if (Array.isArray(value[0])) {
3145
+ for (var i = 0; i < value.length; i++) {
3146
+ if (value[i] === '!important') break;
3147
+ if (cssValue) cssValue += ', ';
3148
+ cssValue += join(value[i], ' ');
3149
+ }
3150
+ } else cssValue = join(value, ', '); // Add !important, because it was ignored.
3151
 
 
 
 
3152
 
3153
+ if (!ignoreImportant && value[value.length - 1] === '!important') {
3154
+ cssValue += ' !important';
 
 
 
3155
  }
3156
 
3157
+ return cssValue;
3158
+ };
3159
 
3160
+ /**
3161
+ * Indent a string.
3162
+ * http://jsperf.com/array-join-vs-for
3163
+ */
3164
+ function indentStr(str, indent) {
3165
+ var result = '';
3166
 
3167
+ for (var index = 0; index < indent; index++) {
3168
+ result += ' ';
 
 
 
 
 
 
 
 
 
 
3169
  }
3170
 
3171
+ return result + str;
3172
  }
3173
+ /**
3174
+ * Converts a Rule to CSS string.
3175
+ */
3176
 
 
 
 
3177
 
3178
+ function toCss(selector, style, options) {
3179
+ if (options === void 0) {
3180
+ options = {};
3181
+ }
3182
+
3183
+ var result = '';
3184
+ if (!style) return result;
3185
+ var _options = options,
3186
+ _options$indent = _options.indent,
3187
+ indent = _options$indent === void 0 ? 0 : _options$indent;
3188
+ var fallbacks = style.fallbacks;
3189
+ if (selector) indent++; // Apply fallbacks first.
3190
 
3191
+ if (fallbacks) {
3192
+ // Array syntax {fallbacks: [{prop: value}]}
3193
+ if (Array.isArray(fallbacks)) {
3194
+ for (var index = 0; index < fallbacks.length; index++) {
3195
+ var fallback = fallbacks[index];
3196
 
3197
+ for (var prop in fallback) {
3198
+ var value = fallback[prop];
 
3199
 
3200
+ if (value != null) {
3201
+ if (result) result += '\n';
3202
+ result += "" + indentStr(prop + ": " + toCssValue(value) + ";", indent);
3203
+ }
3204
+ }
3205
+ }
3206
+ } else {
3207
+ // Object syntax {fallbacks: {prop: value}}
3208
+ for (var _prop in fallbacks) {
3209
+ var _value = fallbacks[_prop];
3210
+
3211
+ if (_value != null) {
3212
+ if (result) result += '\n';
3213
+ result += "" + indentStr(_prop + ": " + toCssValue(_value) + ";", indent);
3214
+ }
3215
+ }
3216
  }
3217
+ }
3218
 
3219
+ for (var _prop2 in style) {
3220
+ var _value2 = style[_prop2];
3221
 
3222
+ if (_value2 != null && _prop2 !== 'fallbacks') {
3223
+ if (result) result += '\n';
3224
+ result += "" + indentStr(_prop2 + ": " + toCssValue(_value2) + ";", indent);
3225
  }
3226
+ } // Allow empty style in this case, because properties will be added dynamically.
3227
 
 
 
 
 
 
3228
 
3229
+ if (!result && !options.allowEmpty) return result; // When rule is being stringified before selector was defined.
3230
 
3231
+ if (!selector) return result;
3232
+ indent--;
3233
+ if (result) result = "\n" + result + "\n";
3234
+ return indentStr(selector + " {" + result, indent) + indentStr('}', indent);
3235
+ }
3236
 
3237
+ var escapeRegex = /([[\].#*$><+~=|^:(),"'`\s])/g;
3238
+ var nativeEscape = typeof CSS !== 'undefined' && CSS.escape;
3239
+ var escape = (function (str) {
3240
+ return nativeEscape ? nativeEscape(str) : str.replace(escapeRegex, '\\$1');
3241
+ });
3242
 
3243
+ var BaseStyleRule =
3244
+ /*#__PURE__*/
3245
+ function () {
3246
+ function BaseStyleRule(key, style, options) {
3247
+ this.type = 'style';
3248
+ this.key = void 0;
3249
+ this.isProcessed = false;
3250
+ this.style = void 0;
3251
+ this.renderer = void 0;
3252
+ this.renderable = void 0;
3253
+ this.options = void 0;
3254
+ var sheet = options.sheet,
3255
+ Renderer = options.Renderer;
3256
+ this.key = key;
3257
+ this.options = options;
3258
+ this.style = style;
3259
+ if (sheet) this.renderer = sheet.renderer;else if (Renderer) this.renderer = new Renderer();
3260
+ }
3261
+ /**
3262
+ * Get or set a style property.
3263
+ */
3264
 
 
 
 
 
 
 
3265
 
3266
+ var _proto = BaseStyleRule.prototype;
 
 
 
 
 
 
 
 
3267
 
3268
+ _proto.prop = function prop(name, value, options) {
3269
+ // It's a getter.
3270
+ if (value === undefined) return this.style[name]; // Don't do anything if the value has not changed.
3271
 
3272
+ var force = options ? options.force : false;
3273
+ if (!force && this.style[name] === value) return this;
3274
+ var newValue = value;
3275
 
3276
+ if (!options || options.process !== false) {
3277
+ newValue = this.options.jss.plugins.onChangeValue(value, name, this);
3278
+ }
3279
 
3280
+ var isEmpty = newValue == null || newValue === false;
3281
+ var isDefined = name in this.style; // Value is empty and wasn't defined before.
3282
 
3283
+ if (isEmpty && !isDefined && !force) return this; // We are going to remove this value.
3284
 
3285
+ var remove = isEmpty && isDefined;
3286
+ if (remove) delete this.style[name];else this.style[name] = newValue; // Renderable is defined if StyleSheet option `link` is true.
3287
 
3288
+ if (this.renderable && this.renderer) {
3289
+ if (remove) this.renderer.removeProperty(this.renderable, name);else this.renderer.setProperty(this.renderable, name, newValue);
3290
+ return this;
3291
+ }
3292
 
3293
+ var sheet = this.options.sheet;
 
 
 
 
 
 
 
 
3294
 
3295
+ if (sheet && sheet.attached) {
3296
+ false ? undefined : void 0;
3297
+ }
 
 
 
 
 
 
3298
 
3299
+ return this;
3300
+ };
 
 
 
 
 
 
 
 
3301
 
3302
+ return BaseStyleRule;
3303
+ }();
3304
+ var StyleRule =
3305
+ /*#__PURE__*/
3306
+ function (_BaseStyleRule) {
3307
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(StyleRule, _BaseStyleRule);
 
 
 
3308
 
3309
+ function StyleRule(key, style, options) {
3310
+ var _this;
 
 
 
 
 
 
 
3311
 
3312
+ _this = _BaseStyleRule.call(this, key, style, options) || this;
3313
+ _this.selectorText = void 0;
3314
+ _this.id = void 0;
3315
+ _this.renderable = void 0;
3316
+ var selector = options.selector,
3317
+ scoped = options.scoped,
3318
+ sheet = options.sheet,
3319
+ generateId = options.generateId;
 
 
 
 
 
 
 
3320
 
3321
+ if (selector) {
3322
+ _this.selectorText = selector;
3323
+ } else if (scoped !== false) {
3324
+ _this.id = generateId(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(_this)), sheet);
3325
+ _this.selectorText = "." + escape(_this.id);
3326
+ }
 
 
 
3327
 
3328
+ return _this;
3329
+ }
3330
+ /**
3331
+ * Set selector string.
3332
+ * Attention: use this with caution. Most browsers didn't implement
3333
+ * selectorText setter, so this may result in rerendering of entire Style Sheet.
3334
+ */
 
 
3335
 
 
 
 
 
 
 
 
 
 
3336
 
3337
+ var _proto2 = StyleRule.prototype;
 
 
 
 
 
 
 
 
3338
 
3339
+ /**
3340
+ * Apply rule to an element inline.
3341
+ */
3342
+ _proto2.applyTo = function applyTo(renderable) {
3343
+ var renderer = this.renderer;
 
 
 
 
3344
 
3345
+ if (renderer) {
3346
+ var json = this.toJSON();
 
 
 
 
 
 
 
3347
 
3348
+ for (var prop in json) {
3349
+ renderer.setProperty(renderable, prop, json[prop]);
3350
+ }
3351
+ }
 
 
 
 
 
3352
 
3353
+ return this;
3354
+ }
3355
+ /**
3356
+ * Returns JSON representation of the rule.
3357
+ * Fallbacks are not supported.
3358
+ * Useful for inline styles.
3359
+ */
3360
+ ;
 
3361
 
3362
+ _proto2.toJSON = function toJSON() {
3363
+ var json = {};
 
 
 
 
 
 
 
3364
 
3365
+ for (var prop in this.style) {
3366
+ var value = this.style[prop];
3367
+ if (typeof value !== 'object') json[prop] = value;else if (Array.isArray(value)) json[prop] = toCssValue(value);
3368
+ }
 
 
 
 
 
3369
 
3370
+ return json;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3371
  }
3372
+ /**
3373
+ * Generates a CSS string.
3374
+ */
3375
+ ;
 
3376
 
3377
+ _proto2.toString = function toString(options) {
3378
+ var sheet = this.options.sheet;
3379
+ var link = sheet ? sheet.options.link : false;
3380
+ var opts = link ? Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
3381
+ allowEmpty: true
3382
+ }) : options;
3383
+ return toCss(this.selectorText, this.style, opts);
3384
+ };
 
 
 
 
 
 
 
 
 
3385
 
3386
+ Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(StyleRule, [{
3387
+ key: "selector",
3388
+ set: function set(selector) {
3389
+ if (selector === this.selectorText) return;
3390
+ this.selectorText = selector;
3391
+ var renderer = this.renderer,
3392
+ renderable = this.renderable;
3393
+ if (!renderable || !renderer) return;
3394
+ var hasChanged = renderer.setSelector(renderable, selector); // If selector setter is not implemented, rerender the rule.
3395
 
3396
+ if (!hasChanged) {
3397
+ renderer.replaceRule(renderable, this);
 
 
 
 
 
 
 
 
3398
  }
3399
  }
3400
+ /**
3401
+ * Get selector string.
3402
+ */
3403
+ ,
3404
+ get: function get() {
3405
+ return this.selectorText;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3406
  }
3407
+ }]);
 
 
 
 
 
 
3408
 
3409
+ return StyleRule;
3410
+ }(BaseStyleRule);
3411
+ var pluginStyleRule = {
3412
+ onCreateRule: function onCreateRule(name, style, options) {
3413
+ if (name[0] === '@' || options.parent && options.parent.type === 'keyframes') {
3414
+ return null;
 
 
 
 
 
 
 
 
 
 
 
3415
  }
 
3416
 
3417
+ return new StyleRule(name, style, options);
 
3418
  }
3419
+ };
 
3420
 
3421
+ var defaultToStringOptions = {
3422
+ indent: 1,
3423
+ children: true
3424
+ };
3425
+ var atRegExp = /@([\w-]+)/;
3426
  /**
3427
+ * Conditional rule for @media, @supports
 
 
 
 
 
3428
  */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3429
 
3430
+ var ConditionalRule =
3431
+ /*#__PURE__*/
3432
+ function () {
3433
+ function ConditionalRule(key, styles, options) {
3434
+ this.type = 'conditional';
3435
+ this.at = void 0;
3436
+ this.key = void 0;
3437
+ this.query = void 0;
3438
+ this.rules = void 0;
3439
+ this.options = void 0;
3440
+ this.isProcessed = false;
3441
+ this.renderable = void 0;
3442
+ this.key = key;
3443
+ var atMatch = key.match(atRegExp);
3444
+ this.at = atMatch ? atMatch[1] : 'unknown'; // Key might contain a unique suffix in case the `name` passed by user was duplicate.
3445
 
3446
+ this.query = options.name || "@" + this.at;
3447
+ this.options = options;
3448
+ this.rules = new RuleList(Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
3449
+ parent: this
3450
+ }));
3451
 
3452
+ for (var name in styles) {
3453
+ this.rules.add(name, styles[name]);
3454
+ }
3455
 
3456
+ this.rules.process();
3457
+ }
3458
+ /**
3459
+ * Get a rule.
3460
+ */
3461
 
 
 
 
3462
 
3463
+ var _proto = ConditionalRule.prototype;
3464
 
3465
+ _proto.getRule = function getRule(name) {
3466
+ return this.rules.get(name);
 
 
3467
  }
3468
+ /**
3469
+ * Get index of a rule.
3470
+ */
3471
+ ;
3472
 
3473
+ _proto.indexOf = function indexOf(rule) {
3474
+ return this.rules.indexOf(rule);
 
 
3475
  }
3476
+ /**
3477
+ * Create and register rule, run plugins.
3478
+ */
3479
+ ;
3480
 
3481
+ _proto.addRule = function addRule(name, style, options) {
3482
+ var rule = this.rules.add(name, style, options);
3483
+ if (!rule) return null;
3484
+ this.options.jss.plugins.onProcessRule(rule);
3485
+ return rule;
3486
  }
3487
+ /**
3488
+ * Generates a CSS string.
3489
+ */
3490
+ ;
3491
 
3492
+ _proto.toString = function toString(options) {
3493
+ if (options === void 0) {
3494
+ options = defaultToStringOptions;
3495
+ }
3496
 
3497
+ if (options.indent == null) options.indent = defaultToStringOptions.indent;
3498
+ if (options.children == null) options.children = defaultToStringOptions.children;
3499
+
3500
+ if (options.children === false) {
3501
+ return this.query + " {}";
3502
+ }
3503
 
3504
+ var children = this.rules.toString(options);
3505
+ return children ? this.query + " {\n" + children + "\n}" : '';
3506
+ };
3507
 
3508
+ return ConditionalRule;
3509
+ }();
3510
+ var keyRegExp = /@media|@supports\s+/;
3511
+ var pluginConditionalRule = {
3512
+ onCreateRule: function onCreateRule(key, styles, options) {
3513
+ return keyRegExp.test(key) ? new ConditionalRule(key, styles, options) : null;
3514
  }
3515
+ };
3516
 
3517
+ var defaultToStringOptions$1 = {
3518
+ indent: 1,
3519
+ children: true
3520
+ };
3521
+ var nameRegExp = /@keyframes\s+([\w-]+)/;
3522
+ /**
3523
+ * Rule for @keyframes
3524
+ */
3525
 
3526
+ var KeyframesRule =
3527
+ /*#__PURE__*/
3528
+ function () {
3529
+ function KeyframesRule(key, frames, options) {
3530
+ this.type = 'keyframes';
3531
+ this.at = '@keyframes';
3532
+ this.key = void 0;
3533
+ this.name = void 0;
3534
+ this.id = void 0;
3535
+ this.rules = void 0;
3536
+ this.options = void 0;
3537
+ this.isProcessed = false;
3538
+ this.renderable = void 0;
3539
+ var nameMatch = key.match(nameRegExp);
3540
 
3541
+ if (nameMatch && nameMatch[1]) {
3542
+ this.name = nameMatch[1];
3543
+ } else {
3544
+ this.name = 'noname';
3545
+ false ? undefined : void 0;
3546
+ }
3547
 
3548
+ this.key = this.type + "-" + this.name;
3549
+ this.options = options;
3550
+ var scoped = options.scoped,
3551
+ sheet = options.sheet,
3552
+ generateId = options.generateId;
3553
+ this.id = scoped === false ? this.name : escape(generateId(this, sheet));
3554
+ this.rules = new RuleList(Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
3555
+ parent: this
3556
+ }));
3557
 
3558
+ for (var name in frames) {
3559
+ this.rules.add(name, frames[name], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
3560
+ parent: this
3561
+ }));
3562
+ }
3563
 
3564
+ this.rules.process();
 
 
 
3565
  }
3566
+ /**
3567
+ * Generates a CSS string.
3568
+ */
3569
 
 
3570
 
3571
+ var _proto = KeyframesRule.prototype;
 
 
3572
 
3573
+ _proto.toString = function toString(options) {
3574
+ if (options === void 0) {
3575
+ options = defaultToStringOptions$1;
3576
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
3577
 
3578
+ if (options.indent == null) options.indent = defaultToStringOptions$1.indent;
3579
+ if (options.children == null) options.children = defaultToStringOptions$1.children;
 
3580
 
3581
+ if (options.children === false) {
3582
+ return this.at + " " + this.id + " {}";
3583
+ }
3584
 
3585
+ var children = this.rules.toString(options);
3586
+ if (children) children = "\n" + children + "\n";
3587
+ return this.at + " " + this.id + " {" + children + "}";
3588
+ };
3589
 
3590
+ return KeyframesRule;
3591
+ }();
3592
+ var keyRegExp$1 = /@keyframes\s+/;
3593
+ var refRegExp = /\$([\w-]+)/g;
3594
 
3595
+ var findReferencedKeyframe = function findReferencedKeyframe(val, keyframes) {
3596
+ if (typeof val === 'string') {
3597
+ return val.replace(refRegExp, function (match, name) {
3598
+ if (name in keyframes) {
3599
+ return keyframes[name];
3600
+ }
3601
 
3602
+ false ? undefined : void 0;
3603
+ return match;
3604
+ });
3605
+ }
3606
 
3607
+ return val;
3608
+ };
3609
+ /**
3610
+ * Replace the reference for a animation name.
3611
+ */
3612
 
 
3613
 
3614
+ var replaceRef = function replaceRef(style, prop, keyframes) {
3615
+ var value = style[prop];
3616
+ var refKeyframe = findReferencedKeyframe(value, keyframes);
3617
 
3618
+ if (refKeyframe !== value) {
3619
+ style[prop] = refKeyframe;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3620
  }
3621
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3622
 
3623
+ var plugin = {
3624
+ onCreateRule: function onCreateRule(key, frames, options) {
3625
+ return typeof key === 'string' && keyRegExp$1.test(key) ? new KeyframesRule(key, frames, options) : null;
3626
+ },
3627
+ // Animation name ref replacer.
3628
+ onProcessStyle: function onProcessStyle(style, rule, sheet) {
3629
+ if (rule.type !== 'style' || !sheet) return style;
3630
+ if ('animation-name' in style) replaceRef(style, 'animation-name', sheet.keyframes);
3631
+ if ('animation' in style) replaceRef(style, 'animation', sheet.keyframes);
3632
+ return style;
3633
+ },
3634
+ onChangeValue: function onChangeValue(val, prop, rule) {
3635
+ var sheet = rule.options.sheet;
3636
 
3637
+ if (!sheet) {
3638
+ return val;
 
 
 
 
3639
  }
 
 
 
 
 
 
 
3640
 
3641
+ switch (prop) {
3642
+ case 'animation':
3643
+ return findReferencedKeyframe(val, sheet.keyframes);
3644
 
3645
+ case 'animation-name':
3646
+ return findReferencedKeyframe(val, sheet.keyframes);
 
 
 
 
 
 
 
 
 
 
3647
 
3648
+ default:
3649
+ return val;
3650
+ }
3651
+ }
3652
+ };
3653
 
3654
+ var KeyframeRule =
3655
+ /*#__PURE__*/
3656
+ function (_BaseStyleRule) {
3657
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(KeyframeRule, _BaseStyleRule);
3658
 
3659
+ function KeyframeRule() {
3660
+ var _this;
 
 
 
3661
 
3662
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
3663
+ args[_key] = arguments[_key];
3664
+ }
3665
 
3666
+ _this = _BaseStyleRule.call.apply(_BaseStyleRule, [this].concat(args)) || this;
3667
+ _this.renderable = void 0;
3668
+ return _this;
3669
+ }
 
3670
 
3671
+ var _proto = KeyframeRule.prototype;
 
 
 
 
 
 
 
 
 
3672
 
3673
+ /**
3674
+ * Generates a CSS string.
3675
+ */
3676
+ _proto.toString = function toString(options) {
3677
+ var sheet = this.options.sheet;
3678
+ var link = sheet ? sheet.options.link : false;
3679
+ var opts = link ? Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
3680
+ allowEmpty: true
3681
+ }) : options;
3682
+ return toCss(this.key, this.style, opts);
3683
+ };
3684
 
3685
+ return KeyframeRule;
3686
+ }(BaseStyleRule);
3687
+ var pluginKeyframeRule = {
3688
+ onCreateRule: function onCreateRule(key, style, options) {
3689
+ if (options.parent && options.parent.type === 'keyframes') {
3690
+ return new KeyframeRule(key, style, options);
3691
  }
 
 
 
3692
 
3693
+ return null;
3694
+ }
 
 
3695
  };
 
 
 
 
 
 
 
 
 
 
3696
 
3697
+ var FontFaceRule =
3698
+ /*#__PURE__*/
3699
+ function () {
3700
+ function FontFaceRule(key, style, options) {
3701
+ this.type = 'font-face';
3702
+ this.at = '@font-face';
3703
+ this.key = void 0;
3704
+ this.style = void 0;
3705
+ this.options = void 0;
3706
+ this.isProcessed = false;
3707
+ this.renderable = void 0;
3708
+ this.key = key;
3709
+ this.style = style;
3710
+ this.options = options;
3711
+ }
3712
+ /**
3713
+ * Generates a CSS string.
3714
+ */
3715
 
 
 
 
 
 
 
3716
 
3717
+ var _proto = FontFaceRule.prototype;
 
 
 
 
 
 
3718
 
3719
+ _proto.toString = function toString(options) {
3720
+ if (Array.isArray(this.style)) {
3721
+ var str = '';
 
 
 
 
3722
 
3723
+ for (var index = 0; index < this.style.length; index++) {
3724
+ str += toCss(this.at, this.style[index]);
3725
+ if (this.style[index + 1]) str += '\n';
3726
+ }
 
3727
 
3728
+ return str;
 
 
 
 
 
 
3729
  }
 
 
 
3730
 
3731
+ return toCss(this.at, this.style, options);
3732
+ };
3733
 
3734
+ return FontFaceRule;
3735
+ }();
3736
+ var keyRegExp$2 = /@font-face/;
3737
+ var pluginFontFaceRule = {
3738
+ onCreateRule: function onCreateRule(key, style, options) {
3739
+ return keyRegExp$2.test(key) ? new FontFaceRule(key, style, options) : null;
3740
+ }
3741
+ };
3742
 
3743
+ var ViewportRule =
3744
+ /*#__PURE__*/
3745
+ function () {
3746
+ function ViewportRule(key, style, options) {
3747
+ this.type = 'viewport';
3748
+ this.at = '@viewport';
3749
+ this.key = void 0;
3750
+ this.style = void 0;
3751
+ this.options = void 0;
3752
+ this.isProcessed = false;
3753
+ this.renderable = void 0;
3754
+ this.key = key;
3755
+ this.style = style;
3756
+ this.options = options;
3757
+ }
3758
+ /**
3759
+ * Generates a CSS string.
3760
+ */
3761
 
 
 
 
 
 
 
3762
 
3763
+ var _proto = ViewportRule.prototype;
 
 
 
 
 
3764
 
3765
+ _proto.toString = function toString(options) {
3766
+ return toCss(this.key, this.style, options);
3767
+ };
 
 
 
 
 
 
3768
 
3769
+ return ViewportRule;
3770
+ }();
3771
+ var pluginViewportRule = {
3772
+ onCreateRule: function onCreateRule(key, style, options) {
3773
+ return key === '@viewport' || key === '@-ms-viewport' ? new ViewportRule(key, style, options) : null;
3774
+ }
3775
+ };
3776
 
3777
+ var SimpleRule =
3778
+ /*#__PURE__*/
3779
+ function () {
3780
+ function SimpleRule(key, value, options) {
3781
+ this.type = 'simple';
3782
+ this.key = void 0;
3783
+ this.value = void 0;
3784
+ this.options = void 0;
3785
+ this.isProcessed = false;
3786
+ this.renderable = void 0;
3787
+ this.key = key;
3788
+ this.value = value;
3789
+ this.options = options;
3790
+ }
3791
+ /**
3792
+ * Generates a CSS string.
3793
+ */
3794
+ // eslint-disable-next-line no-unused-vars
3795
 
3796
 
3797
+ var _proto = SimpleRule.prototype;
 
 
 
 
 
 
 
 
 
 
3798
 
3799
+ _proto.toString = function toString(options) {
3800
+ if (Array.isArray(this.value)) {
3801
+ var str = '';
 
 
 
 
3802
 
3803
+ for (var index = 0; index < this.value.length; index++) {
3804
+ str += this.key + " " + this.value[index] + ";";
3805
+ if (this.value[index + 1]) str += '\n';
3806
+ }
3807
 
3808
+ return str;
 
 
 
 
 
 
 
 
 
3809
  }
 
 
 
 
3810
 
3811
+ return this.key + " " + this.value + ";";
3812
+ };
3813
 
3814
+ return SimpleRule;
3815
+ }();
3816
+ var keysMap = {
3817
+ '@charset': true,
3818
+ '@import': true,
3819
+ '@namespace': true
3820
+ };
3821
+ var pluginSimpleRule = {
3822
+ onCreateRule: function onCreateRule(key, value, options) {
3823
+ return key in keysMap ? new SimpleRule(key, value, options) : null;
3824
+ }
3825
+ };
3826
 
3827
+ var plugins = [pluginStyleRule, pluginConditionalRule, plugin, pluginKeyframeRule, pluginFontFaceRule, pluginViewportRule, pluginSimpleRule];
3828
 
3829
+ var defaultUpdateOptions = {
3830
+ process: true
3831
+ };
3832
+ var forceUpdateOptions = {
3833
+ force: true,
3834
+ process: true
3835
+ /**
3836
+ * Contains rules objects and allows adding/removing etc.
3837
+ * Is used for e.g. by `StyleSheet` or `ConditionalRule`.
3838
+ */
3839
 
3840
+ };
3841
 
3842
+ var RuleList =
3843
+ /*#__PURE__*/
3844
+ function () {
3845
+ // Rules registry for access by .get() method.
3846
+ // It contains the same rule registered by name and by selector.
3847
+ // Original styles object.
3848
+ // Used to ensure correct rules order.
3849
+ function RuleList(options) {
3850
+ this.map = {};
3851
+ this.raw = {};
3852
+ this.index = [];
3853
+ this.counter = 0;
3854
+ this.options = void 0;
3855
+ this.classes = void 0;
3856
+ this.keyframes = void 0;
3857
+ this.options = options;
3858
+ this.classes = options.classes;
3859
+ this.keyframes = options.keyframes;
3860
+ }
3861
+ /**
3862
+ * Create and register rule.
3863
+ *
3864
+ * Will not render after Style Sheet was rendered the first time.
3865
+ */
3866
 
 
3867
 
3868
+ var _proto = RuleList.prototype;
3869
 
3870
+ _proto.add = function add(name, decl, ruleOptions) {
3871
+ var _this$options = this.options,
3872
+ parent = _this$options.parent,
3873
+ sheet = _this$options.sheet,
3874
+ jss = _this$options.jss,
3875
+ Renderer = _this$options.Renderer,
3876
+ generateId = _this$options.generateId,
3877
+ scoped = _this$options.scoped;
3878
 
3879
+ var options = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
3880
+ classes: this.classes,
3881
+ parent: parent,
3882
+ sheet: sheet,
3883
+ jss: jss,
3884
+ Renderer: Renderer,
3885
+ generateId: generateId,
3886
+ scoped: scoped,
3887
+ name: name,
3888
+ keyframes: this.keyframes,
3889
+ selector: undefined
3890
+ }, ruleOptions); // When user uses .createStyleSheet(), duplicate names are not possible, but
3891
+ // `sheet.addRule()` opens the door for any duplicate rule name. When this happens
3892
+ // we need to make the key unique within this RuleList instance scope.
3893
 
 
 
 
 
3894
 
3895
+ var key = name;
 
 
3896
 
3897
+ if (name in this.raw) {
3898
+ key = name + "-d" + this.counter++;
3899
+ } // We need to save the original decl before creating the rule
3900
+ // because cache plugin needs to use it as a key to return a cached rule.
 
 
 
3901
 
 
 
 
 
 
3902
 
3903
+ this.raw[key] = decl;
 
3904
 
3905
+ if (key in this.classes) {
3906
+ // E.g. rules inside of @media container
3907
+ options.selector = "." + escape(this.classes[key]);
3908
+ }
 
3909
 
3910
+ var rule = createRule(key, decl, options);
3911
+ if (!rule) return null;
3912
+ this.register(rule);
3913
+ var index = options.index === undefined ? this.index.length : options.index;
3914
+ this.index.splice(index, 0, rule);
3915
+ return rule;
3916
+ }
3917
+ /**
3918
+ * Get a rule.
3919
+ */
3920
+ ;
3921
 
3922
+ _proto.get = function get(name) {
3923
+ return this.map[name];
3924
+ }
3925
+ /**
3926
+ * Delete a rule.
3927
+ */
3928
+ ;
3929
 
3930
+ _proto.remove = function remove(rule) {
3931
+ this.unregister(rule);
3932
+ delete this.raw[rule.key];
3933
+ this.index.splice(this.index.indexOf(rule), 1);
3934
+ }
3935
+ /**
3936
+ * Get index of a rule.
3937
+ */
3938
+ ;
3939
 
3940
+ _proto.indexOf = function indexOf(rule) {
3941
+ return this.index.indexOf(rule);
3942
+ }
3943
+ /**
3944
+ * Run `onProcessRule()` plugins on every rule.
3945
+ */
3946
+ ;
3947
 
3948
+ _proto.process = function process() {
3949
+ var plugins = this.options.jss.plugins; // We need to clone array because if we modify the index somewhere else during a loop
3950
+ // we end up with very hard-to-track-down side effects.
3951
 
3952
+ this.index.slice(0).forEach(plugins.onProcessRule, plugins);
3953
+ }
3954
+ /**
3955
+ * Register a rule in `.map`, `.classes` and `.keyframes` maps.
3956
+ */
3957
+ ;
3958
 
3959
+ _proto.register = function register(rule) {
3960
+ this.map[rule.key] = rule;
 
 
3961
 
3962
+ if (rule instanceof StyleRule) {
3963
+ this.map[rule.selector] = rule;
3964
+ if (rule.id) this.classes[rule.key] = rule.id;
3965
+ } else if (rule instanceof KeyframesRule && this.keyframes) {
3966
+ this.keyframes[rule.name] = rule.id;
3967
+ }
3968
+ }
3969
+ /**
3970
+ * Unregister a rule.
3971
+ */
3972
+ ;
3973
 
3974
+ _proto.unregister = function unregister(rule) {
3975
+ delete this.map[rule.key];
 
 
 
3976
 
3977
+ if (rule instanceof StyleRule) {
3978
+ delete this.map[rule.selector];
3979
+ delete this.classes[rule.key];
3980
+ } else if (rule instanceof KeyframesRule) {
3981
+ delete this.keyframes[rule.name];
3982
+ }
3983
+ }
3984
+ /**
3985
+ * Update the function values with a new data.
3986
+ */
3987
+ ;
3988
 
3989
+ _proto.update = function update() {
3990
+ var name;
3991
+ var data;
3992
+ var options;
3993
 
3994
+ if (typeof (arguments.length <= 0 ? undefined : arguments[0]) === 'string') {
3995
+ name = arguments.length <= 0 ? undefined : arguments[0]; // $FlowFixMe[invalid-tuple-index]
 
3996
 
3997
+ data = arguments.length <= 1 ? undefined : arguments[1]; // $FlowFixMe[invalid-tuple-index]
3998
+
3999
+ options = arguments.length <= 2 ? undefined : arguments[2];
4000
+ } else {
4001
+ data = arguments.length <= 0 ? undefined : arguments[0]; // $FlowFixMe[invalid-tuple-index]
4002
+
4003
+ options = arguments.length <= 1 ? undefined : arguments[1];
4004
+ name = null;
4005
  }
 
 
 
 
4006
 
4007
+ if (name) {
4008
+ this.updateOne(this.map[name], data, options);
4009
+ } else {
4010
+ for (var index = 0; index < this.index.length; index++) {
4011
+ this.updateOne(this.index[index], data, options);
4012
+ }
4013
+ }
4014
+ }
4015
+ /**
4016
+ * Execute plugins, update rule props.
4017
+ */
4018
+ ;
4019
 
4020
+ _proto.updateOne = function updateOne(rule, data, options) {
4021
+ if (options === void 0) {
4022
+ options = defaultUpdateOptions;
4023
+ }
4024
 
4025
+ var _this$options2 = this.options,
4026
+ plugins = _this$options2.jss.plugins,
4027
+ sheet = _this$options2.sheet; // It is a rules container like for e.g. ConditionalRule.
4028
 
4029
+ if (rule.rules instanceof RuleList) {
4030
+ rule.rules.update(data, options);
4031
+ return;
4032
+ }
4033
 
4034
+ var styleRule = rule;
4035
+ var style = styleRule.style;
4036
+ plugins.onUpdate(data, rule, sheet, options); // We rely on a new `style` ref in case it was mutated during onUpdate hook.
4037
 
4038
+ if (options.process && style && style !== styleRule.style) {
4039
+ // We need to run the plugins in case new `style` relies on syntax plugins.
4040
+ plugins.onProcessStyle(styleRule.style, styleRule, sheet); // Update and add props.
4041
 
4042
+ for (var prop in styleRule.style) {
4043
+ var nextValue = styleRule.style[prop];
4044
+ var prevValue = style[prop]; // We need to use `force: true` because `rule.style` has been updated during onUpdate hook, so `rule.prop()` will not update the CSSOM rule.
4045
+ // We do this comparison to avoid unneeded `rule.prop()` calls, since we have the old `style` object here.
4046
 
4047
+ if (nextValue !== prevValue) {
4048
+ styleRule.prop(prop, nextValue, forceUpdateOptions);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4049
  }
4050
+ } // Remove props.
4051
 
 
 
 
 
 
4052
 
4053
+ for (var _prop in style) {
4054
+ var _nextValue = styleRule.style[_prop];
4055
+ var _prevValue = style[_prop]; // We need to use `force: true` because `rule.style` has been updated during onUpdate hook, so `rule.prop()` will not update the CSSOM rule.
4056
+ // We do this comparison to avoid unneeded `rule.prop()` calls, since we have the old `style` object here.
 
 
4057
 
4058
+ if (_nextValue == null && _nextValue !== _prevValue) {
4059
+ styleRule.prop(_prop, null, forceUpdateOptions);
4060
  }
4061
+ }
4062
+ }
4063
+ }
4064
+ /**
4065
+ * Convert rules to a CSS string.
4066
+ */
4067
+ ;
4068
 
4069
+ _proto.toString = function toString(options) {
4070
+ var str = '';
4071
+ var sheet = this.options.sheet;
4072
+ var link = sheet ? sheet.options.link : false;
 
4073
 
4074
+ for (var index = 0; index < this.index.length; index++) {
4075
+ var rule = this.index[index];
4076
+ var css = rule.toString(options); // No need to render an empty rule.
 
4077
 
4078
+ if (!css && !link) continue;
4079
+ if (str) str += '\n';
4080
+ str += css;
4081
+ }
4082
 
4083
+ return str;
4084
+ };
 
 
 
4085
 
4086
+ return RuleList;
4087
+ }();
 
 
 
4088
 
4089
+ var StyleSheet =
4090
+ /*#__PURE__*/
4091
+ function () {
4092
+ function StyleSheet(styles, options) {
4093
+ this.options = void 0;
4094
+ this.deployed = void 0;
4095
+ this.attached = void 0;
4096
+ this.rules = void 0;
4097
+ this.renderer = void 0;
4098
+ this.classes = void 0;
4099
+ this.keyframes = void 0;
4100
+ this.queue = void 0;
4101
+ this.attached = false;
4102
+ this.deployed = false;
4103
+ this.classes = {};
4104
+ this.keyframes = {};
4105
+ this.options = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
4106
+ sheet: this,
4107
+ parent: this,
4108
+ classes: this.classes,
4109
+ keyframes: this.keyframes
4110
+ });
4111
 
4112
+ if (options.Renderer) {
4113
+ this.renderer = new options.Renderer(this);
 
 
4114
  }
 
 
 
4115
 
4116
+ this.rules = new RuleList(this.options);
4117
 
4118
+ for (var name in styles) {
4119
+ this.rules.add(name, styles[name]);
4120
+ }
4121
 
4122
+ this.rules.process();
4123
+ }
4124
+ /**
4125
+ * Attach renderable to the render tree.
4126
+ */
4127
 
4128
 
4129
+ var _proto = StyleSheet.prototype;
4130
 
4131
+ _proto.attach = function attach() {
4132
+ if (this.attached) return this;
4133
+ if (this.renderer) this.renderer.attach();
4134
+ this.attached = true; // Order is important, because we can't use insertRule API if style element is not attached.
4135
 
4136
+ if (!this.deployed) this.deploy();
4137
+ return this;
4138
+ }
4139
+ /**
4140
+ * Remove renderable from render tree.
4141
+ */
4142
+ ;
4143
 
4144
+ _proto.detach = function detach() {
4145
+ if (!this.attached) return this;
4146
+ if (this.renderer) this.renderer.detach();
4147
+ this.attached = false;
4148
+ return this;
4149
+ }
4150
+ /**
4151
+ * Add a rule to the current stylesheet.
4152
+ * Will insert a rule also after the stylesheet has been rendered first time.
4153
+ */
4154
+ ;
4155
 
4156
+ _proto.addRule = function addRule(name, decl, options) {
4157
+ var queue = this.queue; // Plugins can create rules.
4158
+ // In order to preserve the right order, we need to queue all `.addRule` calls,
4159
+ // which happen after the first `rules.add()` call.
4160
 
4161
+ if (this.attached && !queue) this.queue = [];
4162
+ var rule = this.rules.add(name, decl, options);
4163
+ if (!rule) return null;
4164
+ this.options.jss.plugins.onProcessRule(rule);
4165
 
4166
+ if (this.attached) {
4167
+ if (!this.deployed) return rule; // Don't insert rule directly if there is no stringified version yet.
4168
+ // It will be inserted all together when .attach is called.
4169
 
4170
+ if (queue) queue.push(rule);else {
4171
+ this.insertRule(rule);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4172
 
4173
+ if (this.queue) {
4174
+ this.queue.forEach(this.insertRule, this);
4175
+ this.queue = undefined;
4176
+ }
4177
+ }
4178
+ return rule;
4179
+ } // We can't add rules to a detached style node.
4180
+ // We will redeploy the sheet once user will attach it.
4181
 
 
 
 
4182
 
4183
+ this.deployed = false;
4184
+ return rule;
4185
+ }
4186
+ /**
4187
+ * Insert rule into the StyleSheet
4188
+ */
4189
+ ;
4190
 
4191
+ _proto.insertRule = function insertRule(rule) {
4192
+ if (this.renderer) {
4193
+ this.renderer.insertRule(rule);
4194
+ }
4195
+ }
4196
+ /**
4197
+ * Create and add rules.
4198
+ * Will render also after Style Sheet was rendered the first time.
4199
+ */
4200
+ ;
4201
 
4202
+ _proto.addRules = function addRules(styles, options) {
4203
+ var added = [];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4204
 
4205
+ for (var name in styles) {
4206
+ var rule = this.addRule(name, styles[name], options);
4207
+ if (rule) added.push(rule);
4208
+ }
4209
 
4210
+ return added;
4211
+ }
4212
+ /**
4213
+ * Get a rule by name.
4214
+ */
4215
+ ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4216
 
4217
+ _proto.getRule = function getRule(name) {
4218
+ return this.rules.get(name);
4219
+ }
4220
+ /**
4221
+ * Delete a rule by name.
4222
+ * Returns `true`: if rule has been deleted from the DOM.
4223
+ */
4224
+ ;
4225
 
4226
+ _proto.deleteRule = function deleteRule(name) {
4227
+ var rule = typeof name === 'object' ? name : this.rules.get(name);
 
 
4228
 
4229
+ if (!rule || // Style sheet was created without link: true and attached, in this case we
4230
+ // won't be able to remove the CSS rule from the DOM.
4231
+ this.attached && !rule.renderable) {
4232
+ return false;
4233
+ }
4234
 
4235
+ this.rules.remove(rule);
4236
 
4237
+ if (this.attached && rule.renderable && this.renderer) {
4238
+ return this.renderer.deleteRule(rule.renderable);
4239
+ }
4240
 
4241
+ return true;
4242
+ }
4243
+ /**
4244
+ * Get index of a rule.
4245
+ */
4246
+ ;
 
 
 
 
 
 
 
 
 
 
 
 
4247
 
4248
+ _proto.indexOf = function indexOf(rule) {
4249
+ return this.rules.indexOf(rule);
4250
+ }
4251
+ /**
4252
+ * Deploy pure CSS string to a renderable.
4253
+ */
4254
+ ;
4255
 
4256
+ _proto.deploy = function deploy() {
4257
+ if (this.renderer) this.renderer.deploy();
4258
+ this.deployed = true;
4259
+ return this;
4260
+ }
4261
+ /**
4262
+ * Update the function values with a new data.
4263
+ */
4264
+ ;
4265
 
4266
+ _proto.update = function update() {
4267
+ var _this$rules;
4268
 
4269
+ (_this$rules = this.rules).update.apply(_this$rules, arguments);
4270
 
4271
+ return this;
4272
+ }
4273
+ /**
4274
+ * Updates a single rule.
4275
+ */
4276
+ ;
4277
 
4278
+ _proto.updateOne = function updateOne(rule, data, options) {
4279
+ this.rules.updateOne(rule, data, options);
4280
+ return this;
4281
+ }
4282
+ /**
4283
+ * Convert rules to a CSS string.
4284
+ */
4285
+ ;
4286
 
4287
+ _proto.toString = function toString(options) {
4288
+ return this.rules.toString(options);
4289
+ };
4290
 
4291
+ return StyleSheet;
4292
+ }();
 
 
 
 
4293
 
4294
+ var PluginsRegistry =
4295
+ /*#__PURE__*/
4296
+ function () {
4297
+ function PluginsRegistry() {
4298
+ this.plugins = {
4299
+ internal: [],
4300
+ external: []
4301
+ };
4302
+ this.registry = void 0;
4303
  }
4304
 
4305
+ var _proto = PluginsRegistry.prototype;
 
4306
 
4307
+ /**
4308
+ * Call `onCreateRule` hooks and return an object if returned by a hook.
4309
+ */
4310
+ _proto.onCreateRule = function onCreateRule(name, decl, options) {
4311
+ for (var i = 0; i < this.registry.onCreateRule.length; i++) {
4312
+ var rule = this.registry.onCreateRule[i](name, decl, options);
4313
+ if (rule) return rule;
4314
+ }
4315
 
4316
+ return null;
 
 
4317
  }
4318
+ /**
4319
+ * Call `onProcessRule` hooks.
4320
+ */
4321
+ ;
4322
 
4323
+ _proto.onProcessRule = function onProcessRule(rule) {
4324
+ if (rule.isProcessed) return;
4325
+ var sheet = rule.options.sheet;
 
4326
 
4327
+ for (var i = 0; i < this.registry.onProcessRule.length; i++) {
4328
+ this.registry.onProcessRule[i](rule, sheet);
4329
+ }
4330
+
4331
+ if (rule.style) this.onProcessStyle(rule.style, rule, sheet);
4332
+ rule.isProcessed = true;
4333
  }
4334
+ /**
4335
+ * Call `onProcessStyle` hooks.
4336
+ */
4337
+ ;
4338
 
4339
+ _proto.onProcessStyle = function onProcessStyle(style, rule, sheet) {
4340
+ for (var i = 0; i < this.registry.onProcessStyle.length; i++) {
4341
+ // $FlowFixMe[prop-missing]
4342
+ rule.style = this.registry.onProcessStyle[i](rule.style, rule, sheet);
4343
+ }
4344
+ }
4345
+ /**
4346
+ * Call `onProcessSheet` hooks.
4347
+ */
4348
+ ;
4349
 
4350
+ _proto.onProcessSheet = function onProcessSheet(sheet) {
4351
+ for (var i = 0; i < this.registry.onProcessSheet.length; i++) {
4352
+ this.registry.onProcessSheet[i](sheet);
4353
+ }
4354
+ }
4355
+ /**
4356
+ * Call `onUpdate` hooks.
4357
+ */
4358
+ ;
4359
 
4360
+ _proto.onUpdate = function onUpdate(data, rule, sheet, options) {
4361
+ for (var i = 0; i < this.registry.onUpdate.length; i++) {
4362
+ this.registry.onUpdate[i](data, rule, sheet, options);
4363
+ }
 
4364
  }
4365
+ /**
4366
+ * Call `onChangeValue` hooks.
4367
+ */
4368
+ ;
4369
 
4370
+ _proto.onChangeValue = function onChangeValue(value, prop, rule) {
4371
+ var processedValue = value;
 
 
 
 
 
 
 
 
4372
 
4373
+ for (var i = 0; i < this.registry.onChangeValue.length; i++) {
4374
+ processedValue = this.registry.onChangeValue[i](processedValue, prop, rule);
4375
+ }
4376
 
4377
+ return processedValue;
 
 
4378
  }
4379
+ /**
4380
+ * Register a plugin.
4381
+ */
4382
+ ;
4383
 
4384
+ _proto.use = function use(newPlugin, options) {
4385
+ if (options === void 0) {
4386
+ options = {
4387
+ queue: 'external'
4388
+ };
 
 
 
4389
  }
 
4390
 
4391
+ var plugins = this.plugins[options.queue]; // Avoids applying same plugin twice, at least based on ref.
4392
 
4393
+ if (plugins.indexOf(newPlugin) !== -1) {
4394
+ return;
4395
+ }
4396
 
4397
+ plugins.push(newPlugin);
4398
+ this.registry = [].concat(this.plugins.external, this.plugins.internal).reduce(function (registry, plugin) {
4399
+ for (var name in plugin) {
4400
+ if (name in registry) {
4401
+ registry[name].push(plugin[name]);
4402
+ } else {
4403
+ false ? undefined : void 0;
4404
+ }
4405
+ }
4406
 
4407
+ return registry;
4408
+ }, {
4409
+ onCreateRule: [],
4410
+ onProcessRule: [],
4411
+ onProcessStyle: [],
4412
+ onProcessSheet: [],
4413
+ onChangeValue: [],
4414
+ onUpdate: []
4415
+ });
4416
+ };
4417
 
4418
+ return PluginsRegistry;
4419
+ }();
 
4420
 
 
 
4421
  /**
4422
+ * Sheets registry to access them all at one place.
4423
  */
4424
+ var SheetsRegistry =
4425
+ /*#__PURE__*/
4426
+ function () {
4427
+ function SheetsRegistry() {
4428
+ this.registry = [];
4429
  }
4430
 
4431
+ var _proto = SheetsRegistry.prototype;
 
 
 
 
 
 
4432
 
4433
+ /**
4434
+ * Register a Style Sheet.
4435
+ */
4436
+ _proto.add = function add(sheet) {
4437
+ var registry = this.registry;
4438
+ var index = sheet.options.index;
4439
+ if (registry.indexOf(sheet) !== -1) return;
4440
 
4441
+ if (registry.length === 0 || index >= this.index) {
4442
+ registry.push(sheet);
4443
+ return;
4444
+ } // Find a position.
4445
 
 
 
 
 
 
 
 
 
 
 
4446
 
4447
+ for (var i = 0; i < registry.length; i++) {
4448
+ if (registry[i].options.index > index) {
4449
+ registry.splice(i, 0, sheet);
4450
+ return;
4451
  }
4452
  }
4453
  }
4454
+ /**
4455
+ * Reset the registry.
4456
+ */
4457
+ ;
4458
 
4459
+ _proto.reset = function reset() {
4460
+ this.registry = [];
4461
+ }
4462
+ /**
4463
+ * Remove a Style Sheet.
4464
+ */
4465
+ ;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4466
 
4467
+ _proto.remove = function remove(sheet) {
4468
+ var index = this.registry.indexOf(sheet);
4469
+ this.registry.splice(index, 1);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4470
  }
4471
  /**
4472
+ * Convert all attached sheets to a CSS string.
4473
  */
4474
+ ;
4475
 
4476
+ _proto.toString = function toString(_temp) {
4477
+ var _ref = _temp === void 0 ? {} : _temp,
4478
+ attached = _ref.attached,
4479
+ options = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(_ref, ["attached"]);
4480
 
4481
+ var css = '';
4482
 
4483
+ for (var i = 0; i < this.registry.length; i++) {
4484
+ var sheet = this.registry[i];
 
4485
 
4486
+ if (attached != null && sheet.attached !== attached) {
4487
+ continue;
4488
+ }
4489
 
4490
+ if (css) css += '\n';
4491
+ css += sheet.toString(options);
4492
  }
4493
 
4494
+ return css;
4495
+ };
 
 
4496
 
4497
+ Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(SheetsRegistry, [{
4498
+ key: "index",
4499
 
4500
+ /**
4501
+ * Current highest index number.
4502
+ */
4503
+ get: function get() {
4504
+ return this.registry.length === 0 ? 0 : this.registry[this.registry.length - 1].options.index;
4505
  }
4506
+ }]);
4507
 
4508
+ return SheetsRegistry;
4509
+ }();
4510
 
4511
+ /**
4512
+ * This is a global sheets registry. Only DomRenderer will add sheets to it.
4513
+ * On the server one should use an own SheetsRegistry instance and add the
4514
+ * sheets to it, because you need to make sure to create a new registry for
4515
+ * each request in order to not leak sheets across requests.
4516
+ */
4517
 
4518
+ var registry = new SheetsRegistry();
 
4519
 
4520
+ /* eslint-disable */
4521
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
4522
+ var globalThis = typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
 
 
 
4523
 
4524
+ var ns = '2f1acc6c3a606b082e5eef5e54414ffb';
4525
+ if (globalThis[ns] == null) globalThis[ns] = 0; // Bundle may contain multiple JSS versions at the same time. In order to identify
4526
+ // the current version with just one short number and use it for classes generation
4527
+ // we use a counter. Also it is more accurate, because user can manually reevaluate
4528
+ // the module.
4529
 
4530
+ var moduleId = globalThis[ns]++;
 
 
 
 
 
 
 
4531
 
4532
+ var maxRules = 1e10;
 
 
 
 
 
4533
 
4534
+ /**
4535
+ * Returns a function which generates unique class names based on counters.
4536
+ * When new generator function is created, rule counter is reseted.
4537
+ * We need to reset the rule counter for SSR for each request.
4538
+ */
4539
+ var createGenerateId = function createGenerateId(options) {
4540
+ if (options === void 0) {
4541
+ options = {};
4542
  }
 
 
 
 
 
4543
 
4544
+ var ruleCounter = 0;
4545
+ return function (rule, sheet) {
4546
+ ruleCounter += 1;
4547
 
4548
+ if (ruleCounter > maxRules) {
4549
+ false ? undefined : void 0;
4550
+ }
4551
 
4552
+ var jssId = '';
4553
+ var prefix = '';
 
 
 
4554
 
4555
+ if (sheet) {
4556
+ if (sheet.options.classNamePrefix) {
4557
+ prefix = sheet.options.classNamePrefix;
4558
+ }
4559
 
4560
+ if (sheet.options.jss.id != null) {
4561
+ jssId = String(sheet.options.jss.id);
4562
  }
4563
  }
4564
 
4565
+ if (options.minify) {
4566
+ // Using "c" because a number can't be the first char in a class name.
4567
+ return "" + (prefix || 'c') + moduleId + jssId + ruleCounter;
4568
+ }
 
 
 
 
4569
 
4570
+ return prefix + rule.key + "-" + moduleId + (jssId ? "-" + jssId : '') + "-" + ruleCounter;
4571
+ };
4572
+ };
4573
 
4574
+ /**
4575
+ * Cache the value from the first time a function is called.
4576
+ */
4577
+ var memoize = function memoize(fn) {
4578
+ var value;
4579
+ return function () {
4580
+ if (!value) value = fn();
4581
+ return value;
4582
+ };
4583
+ };
4584
+
4585
+ /**
4586
+ * Get a style property value.
4587
+ */
4588
+ var getPropertyValue = function getPropertyValue(cssRule, prop) {
4589
+ try {
4590
+ // Support CSSTOM.
4591
+ if (cssRule.attributeStyleMap) {
4592
+ return cssRule.attributeStyleMap.get(prop);
4593
  }
4594
 
4595
+ return cssRule.style.getPropertyValue(prop);
4596
+ } catch (err) {
4597
+ // IE may throw if property is unknown.
4598
+ return '';
4599
  }
4600
+ };
 
 
 
4601
 
4602
+ /**
4603
+ * Set a style property.
4604
+ */
4605
+ var setProperty = function setProperty(cssRule, prop, value) {
4606
+ try {
4607
+ var cssValue = value;
 
 
4608
 
4609
+ if (Array.isArray(value)) {
4610
+ cssValue = toCssValue(value, true);
 
 
 
 
 
 
 
4611
 
4612
+ if (value[value.length - 1] === '!important') {
4613
+ cssRule.style.setProperty(prop, cssValue, 'important');
4614
+ return true;
4615
  }
4616
+ } // Support CSSTOM.
 
 
 
 
 
 
 
 
4617
 
4618
+
4619
+ if (cssRule.attributeStyleMap) {
4620
+ cssRule.attributeStyleMap.set(prop, cssValue);
4621
+ } else {
4622
+ cssRule.style.setProperty(prop, cssValue);
 
4623
  }
4624
+ } catch (err) {
4625
+ // IE may throw if property is unknown.
4626
+ return false;
4627
+ }
4628
 
4629
+ return true;
4630
+ };
4631
+
4632
+ /**
4633
+ * Remove a style property.
4634
+ */
4635
+ var removeProperty = function removeProperty(cssRule, prop) {
4636
+ try {
4637
+ // Support CSSTOM.
4638
+ if (cssRule.attributeStyleMap) {
4639
+ cssRule.attributeStyleMap.delete(prop);
4640
+ } else {
4641
+ cssRule.style.removeProperty(prop);
4642
+ }
4643
+ } catch (err) {
4644
+ false ? undefined : void 0;
4645
  }
4646
  };
4647
 
4648
+ /**
4649
+ * Set the selector.
4650
+ */
4651
+ var setSelector = function setSelector(cssRule, selectorText) {
4652
+ cssRule.selectorText = selectorText; // Return false if setter was not successful.
4653
+ // Currently works in chrome only.
4654
+
4655
+ return cssRule.selectorText === selectorText;
4656
  };
 
4657
  /**
4658
+ * Gets the `head` element upon the first call and caches it.
4659
+ * We assume it can't be null.
4660
  */
4661
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4662
 
4663
+ var getHead = memoize(function () {
4664
+ return document.querySelector('head');
4665
+ });
4666
+ /**
4667
+ * Find attached sheet with an index higher than the passed one.
4668
+ */
 
4669
 
4670
+ function findHigherSheet(registry, options) {
4671
+ for (var i = 0; i < registry.length; i++) {
4672
+ var sheet = registry[i];
4673
 
4674
+ if (sheet.attached && sheet.options.index > options.index && sheet.options.insertionPoint === options.insertionPoint) {
4675
+ return sheet;
4676
+ }
4677
  }
 
 
 
 
4678
 
4679
+ return null;
4680
+ }
4681
+ /**
4682
+ * Find attached sheet with the highest index.
4683
+ */
4684
 
 
 
 
 
 
 
 
4685
 
4686
+ function findHighestSheet(registry, options) {
4687
+ for (var i = registry.length - 1; i >= 0; i--) {
4688
+ var sheet = registry[i];
 
 
 
 
4689
 
4690
+ if (sheet.attached && sheet.options.insertionPoint === options.insertionPoint) {
4691
+ return sheet;
4692
+ }
 
 
4693
  }
 
 
 
 
4694
 
4695
+ return null;
4696
+ }
4697
+ /**
4698
+ * Find a comment with "jss" inside.
4699
+ */
4700
 
 
 
4701
 
4702
+ function findCommentNode(text) {
4703
+ var head = getHead();
 
4704
 
4705
+ for (var i = 0; i < head.childNodes.length; i++) {
4706
+ var node = head.childNodes[i];
 
4707
 
4708
+ if (node.nodeType === 8 && node.nodeValue.trim() === text) {
4709
+ return node;
4710
+ }
 
 
 
4711
  }
 
4712
 
4713
+ return null;
4714
+ }
4715
+
 
 
4716
  /**
4717
+ * Find a node before which we can insert the sheet.
4718
  */
4719
+ function findPrevNode(options) {
4720
+ var registry$1 = registry.registry;
4721
 
4722
+ if (registry$1.length > 0) {
4723
+ // Try to insert before the next higher sheet.
4724
+ var sheet = findHigherSheet(registry$1, options);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4725
 
4726
+ if (sheet && sheet.renderer) {
4727
+ return {
4728
+ parent: sheet.renderer.element.parentNode,
4729
+ node: sheet.renderer.element
4730
+ };
4731
+ } // Otherwise insert after the last attached.
4732
 
4733
 
4734
+ sheet = findHighestSheet(registry$1, options);
4735
 
4736
+ if (sheet && sheet.renderer) {
4737
+ return {
4738
+ parent: sheet.renderer.element.parentNode,
4739
+ node: sheet.renderer.element.nextSibling
4740
+ };
4741
  }
4742
+ } // Try to find a comment placeholder if registry is empty.
4743
 
 
 
4744
 
4745
+ var insertionPoint = options.insertionPoint;
 
 
4746
 
4747
+ if (insertionPoint && typeof insertionPoint === 'string') {
4748
+ var comment = findCommentNode(insertionPoint);
 
 
4749
 
4750
+ if (comment) {
4751
+ return {
4752
+ parent: comment.parentNode,
4753
+ node: comment.nextSibling
4754
+ };
4755
+ } // If user specifies an insertion point and it can't be found in the document -
4756
+ // bad specificity issues may appear.
4757
 
 
 
 
 
 
 
4758
 
4759
+ false ? undefined : void 0;
 
 
4760
  }
4761
 
4762
+ return false;
4763
+ }
4764
  /**
4765
+ * Insert style element into the DOM.
4766
  */
4767
 
4768
 
4769
+ function insertStyle(style, options) {
4770
+ var insertionPoint = options.insertionPoint;
4771
+ var nextNode = findPrevNode(options);
4772
 
4773
+ if (nextNode !== false && nextNode.parent) {
4774
+ nextNode.parent.insertBefore(style, nextNode.node);
4775
+ return;
4776
+ } // Works with iframes and any node types.
4777
+
4778
+
4779
+ if (insertionPoint && typeof insertionPoint.nodeType === 'number') {
4780
+ // https://stackoverflow.com/questions/41328728/force-casting-in-flow
4781
+ var insertionPointElement = insertionPoint;
4782
+ var parentNode = insertionPointElement.parentNode;
4783
+ if (parentNode) parentNode.insertBefore(style, insertionPointElement.nextSibling);else false ? undefined : void 0;
4784
+ return;
4785
  }
 
4786
 
4787
+ getHead().appendChild(style);
4788
+ }
4789
+ /**
4790
+ * Read jss nonce setting from the page if the user has set it.
4791
+ */
 
 
 
 
 
 
 
 
4792
 
 
 
 
4793
 
4794
+ var getNonce = memoize(function () {
4795
+ var node = document.querySelector('meta[property="csp-nonce"]');
4796
+ return node ? node.getAttribute('content') : null;
4797
+ });
4798
 
4799
+ var _insertRule = function insertRule(container, rule, index) {
4800
+ try {
4801
+ if ('insertRule' in container) {
4802
+ var c = container;
4803
+ c.insertRule(rule, index);
4804
+ } // Keyframes rule.
4805
+ else if ('appendRule' in container) {
4806
+ var _c = container;
4807
 
4808
+ _c.appendRule(rule);
4809
+ }
4810
+ } catch (err) {
4811
+ false ? undefined : void 0;
4812
+ return false;
4813
  }
 
 
 
 
 
 
4814
 
4815
+ return container.cssRules[index];
4816
+ };
4817
 
4818
+ var getValidRuleInsertionIndex = function getValidRuleInsertionIndex(container, index) {
4819
+ var maxIndex = container.cssRules.length; // In case previous insertion fails, passed index might be wrong
 
4820
 
4821
+ if (index === undefined || index > maxIndex) {
4822
+ // eslint-disable-next-line no-param-reassign
4823
+ return maxIndex;
4824
  }
4825
 
4826
+ return index;
4827
+ };
 
 
 
 
 
 
 
 
 
 
 
4828
 
4829
+ var createStyle = function createStyle() {
4830
+ var el = document.createElement('style'); // Without it, IE will have a broken source order specificity if we
4831
+ // insert rules after we insert the style tag.
4832
+ // It seems to kick-off the source order specificity algorithm.
 
 
 
4833
 
4834
+ el.textContent = '\n';
4835
+ return el;
4836
  };
4837
 
4838
+ var DomRenderer =
4839
  /*#__PURE__*/
4840
  function () {
4841
+ // HTMLStyleElement needs fixing https://github.com/facebook/flow/issues/2696
4842
+ // Will be empty if link: true option is not set, because
4843
+ // it is only for use together with insertRule API.
4844
+ function DomRenderer(sheet) {
4845
+ this.getPropertyValue = getPropertyValue;
4846
+ this.setProperty = setProperty;
4847
+ this.removeProperty = removeProperty;
4848
+ this.setSelector = setSelector;
4849
+ this.element = void 0;
4850
+ this.sheet = void 0;
4851
+ this.hasInsertedRules = false;
4852
+ this.cssRules = [];
4853
+ // There is no sheet when the renderer is used from a standalone StyleRule.
4854
+ if (sheet) registry.add(sheet);
4855
+ this.sheet = sheet;
4856
+
4857
+ var _ref = this.sheet ? this.sheet.options : {},
4858
+ media = _ref.media,
4859
+ meta = _ref.meta,
4860
+ element = _ref.element;
4861
+
4862
+ this.element = element || createStyle();
4863
+ this.element.setAttribute('data-jss', '');
4864
+ if (media) this.element.setAttribute('media', media);
4865
+ if (meta) this.element.setAttribute('data-meta', meta);
4866
+ var nonce = getNonce();
4867
+ if (nonce) this.element.setAttribute('nonce', nonce);
4868
  }
4869
  /**
4870
+ * Insert style element into render tree.
4871
  */
4872
 
4873
 
4874
+ var _proto = DomRenderer.prototype;
4875
 
4876
+ _proto.attach = function attach() {
4877
+ // In the case the element node is external and it is already in the DOM.
4878
+ if (this.element.parentNode || !this.sheet) return;
4879
+ insertStyle(this.element, this.sheet.options); // When rules are inserted using `insertRule` API, after `sheet.detach().attach()`
4880
+ // most browsers create a new CSSStyleSheet, except of all IEs.
4881
 
4882
+ var deployed = Boolean(this.sheet && this.sheet.deployed);
 
 
 
4883
 
4884
+ if (this.hasInsertedRules && deployed) {
4885
+ this.hasInsertedRules = false;
4886
+ this.deploy();
4887
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4888
  }
4889
  /**
4890
+ * Remove style element from render tree.
4891
  */
4892
+ ;
4893
 
4894
+ _proto.detach = function detach() {
4895
+ if (!this.sheet) return;
4896
+ var parentNode = this.element.parentNode;
4897
+ if (parentNode) parentNode.removeChild(this.element); // In the most browsers, rules inserted using insertRule() API will be lost when style element is removed.
4898
+ // Though IE will keep them and we need a consistent behavior.
4899
 
4900
+ if (this.sheet.options.link) {
4901
+ this.cssRules = [];
4902
+ this.element.textContent = '\n';
4903
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4904
  }
4905
  /**
4906
+ * Inject CSS string into element.
4907
  */
4908
+ ;
 
 
 
 
 
 
 
4909
 
4910
+ _proto.deploy = function deploy() {
4911
+ var sheet = this.sheet;
4912
+ if (!sheet) return;
 
4913
 
4914
+ if (sheet.options.link) {
4915
+ this.insertRules(sheet.rules);
4916
+ return;
4917
  }
4918
 
4919
+ this.element.textContent = "\n" + sheet.toString() + "\n";
 
 
 
 
 
 
 
 
 
 
 
 
4920
  }
 
 
 
 
 
 
 
 
 
 
4921
  /**
4922
+ * Insert RuleList into an element.
 
4923
  */
4924
+ ;
4925
 
4926
+ _proto.insertRules = function insertRules(rules, nativeParent) {
4927
+ for (var i = 0; i < rules.index.length; i++) {
4928
+ this.insertRule(rules.index[i], i, nativeParent);
4929
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4930
  }
4931
  /**
4932
+ * Insert a rule into element.
 
 
4933
  */
4934
+ ;
4935
 
4936
+ _proto.insertRule = function insertRule(rule, index, nativeParent) {
4937
+ if (nativeParent === void 0) {
4938
+ nativeParent = this.element.sheet;
4939
+ }
4940
 
4941
+ if (rule.rules) {
4942
+ var parent = rule;
4943
+ var latestNativeParent = nativeParent;
4944
 
4945
+ if (rule.type === 'conditional' || rule.type === 'keyframes') {
4946
+ var _insertionIndex = getValidRuleInsertionIndex(nativeParent, index); // We need to render the container without children first.
 
 
 
 
 
 
4947
 
 
 
 
 
 
 
 
 
 
 
 
 
4948
 
4949
+ latestNativeParent = _insertRule(nativeParent, parent.toString({
4950
+ children: false
4951
+ }), _insertionIndex);
4952
 
4953
+ if (latestNativeParent === false) {
4954
+ return false;
4955
+ }
4956
 
4957
+ this.refCssRule(rule, _insertionIndex, latestNativeParent);
4958
+ }
 
 
4959
 
4960
+ this.insertRules(parent.rules, latestNativeParent);
4961
+ return latestNativeParent;
4962
+ }
4963
 
4964
+ var ruleStr = rule.toString();
4965
+ if (!ruleStr) return false;
4966
+ var insertionIndex = getValidRuleInsertionIndex(nativeParent, index);
4967
 
4968
+ var nativeRule = _insertRule(nativeParent, ruleStr, insertionIndex);
4969
+
4970
+ if (nativeRule === false) {
4971
+ return false;
4972
  }
4973
 
4974
+ this.hasInsertedRules = true;
4975
+ this.refCssRule(rule, insertionIndex, nativeRule);
4976
+ return nativeRule;
4977
+ };
4978
+
4979
+ _proto.refCssRule = function refCssRule(rule, index, cssRule) {
4980
+ rule.renderable = cssRule; // We only want to reference the top level rules, deleteRule API doesn't support removing nested rules
4981
+ // like rules inside media queries or keyframes
4982
+
4983
+ if (rule.options.parent instanceof StyleSheet) {
4984
+ this.cssRules[index] = cssRule;
4985
+ }
4986
  }
4987
  /**
4988
+ * Delete a rule.
4989
  */
4990
  ;
4991
 
4992
+ _proto.deleteRule = function deleteRule(cssRule) {
4993
+ var sheet = this.element.sheet;
4994
+ var index = this.indexOf(cssRule);
4995
+ if (index === -1) return false;
4996
+ sheet.deleteRule(index);
4997
+ this.cssRules.splice(index, 1);
4998
+ return true;
4999
  }
5000
  /**
5001
+ * Get index of a CSS Rule.
5002
  */
5003
  ;
5004
 
5005
+ _proto.indexOf = function indexOf(cssRule) {
5006
+ return this.cssRules.indexOf(cssRule);
 
 
5007
  }
5008
  /**
5009
+ * Generate a new CSS rule and replace the existing one.
5010
+ *
5011
+ * Only used for some old browsers because they can't set a selector.
5012
  */
5013
  ;
5014
 
5015
+ _proto.replaceRule = function replaceRule(cssRule, rule) {
5016
+ var index = this.indexOf(cssRule);
5017
+ if (index === -1) return false;
5018
+ this.element.sheet.deleteRule(index);
5019
+ this.cssRules.splice(index, 1);
5020
+ return this.insertRule(rule, index);
5021
  }
5022
  /**
5023
+ * Get all rules elements.
5024
  */
5025
  ;
5026
 
5027
+ _proto.getRules = function getRules() {
5028
+ return this.element.sheet.cssRules;
5029
+ };
5030
 
5031
+ return DomRenderer;
5032
+ }();
 
 
 
 
 
 
 
5033
 
5034
+ var instanceCounter = 0;
 
 
 
 
 
 
 
 
 
 
5035
 
5036
+ var Jss =
5037
+ /*#__PURE__*/
5038
+ function () {
5039
+ function Jss(options) {
5040
+ this.id = instanceCounter++;
5041
+ this.version = "10.5.0";
5042
+ this.plugins = new PluginsRegistry();
5043
+ this.options = {
5044
+ id: {
5045
+ minify: false
5046
+ },
5047
+ createGenerateId: createGenerateId,
5048
+ Renderer: is_in_browser__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"] ? DomRenderer : null,
5049
+ plugins: []
5050
+ };
5051
+ this.generateId = createGenerateId({
5052
+ minify: false
5053
+ });
5054
 
5055
+ for (var i = 0; i < plugins.length; i++) {
5056
+ this.plugins.use(plugins[i], {
5057
+ queue: 'internal'
5058
+ });
 
5059
  }
5060
+
5061
+ this.setup(options);
5062
  }
5063
  /**
5064
+ * Prepares various options, applies plugins.
5065
+ * Should not be used twice on the same instance, because there is no plugins
5066
+ * deduplication logic.
5067
  */
 
 
 
 
 
 
 
 
 
5068
 
 
5069
 
5070
+ var _proto = Jss.prototype;
 
 
5071
 
5072
+ _proto.setup = function setup(options) {
5073
+ if (options === void 0) {
5074
+ options = {};
5075
  }
5076
 
5077
+ if (options.createGenerateId) {
5078
+ this.options.createGenerateId = options.createGenerateId;
 
 
 
 
5079
  }
 
 
 
 
 
5080
 
5081
+ if (options.id) {
5082
+ this.options.id = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, this.options.id, options.id);
 
5083
  }
5084
 
5085
+ if (options.createGenerateId || options.id) {
5086
+ this.generateId = this.options.createGenerateId(this.options.id);
 
 
 
 
 
5087
  }
5088
 
5089
+ if (options.insertionPoint != null) this.options.insertionPoint = options.insertionPoint;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5090
 
5091
+ if ('Renderer' in options) {
5092
+ this.options.Renderer = options.Renderer;
5093
+ } // eslint-disable-next-line prefer-spread
5094
 
 
 
 
 
5095
 
5096
+ if (options.plugins) this.use.apply(this, options.plugins);
5097
+ return this;
 
 
 
5098
  }
5099
  /**
5100
+ * Create a Style Sheet.
5101
  */
5102
  ;
5103
 
5104
+ _proto.createStyleSheet = function createStyleSheet(styles, options) {
5105
+ if (options === void 0) {
5106
+ options = {};
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5107
  }
5108
 
5109
+ var _options = options,
5110
+ index = _options.index;
5111
 
5112
+ if (typeof index !== 'number') {
5113
+ index = registry.index === 0 ? 0 : registry.index + 1;
5114
  }
5115
 
5116
+ var sheet = new StyleSheet(styles, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
5117
+ jss: this,
5118
+ generateId: options.generateId || this.generateId,
5119
+ insertionPoint: this.options.insertionPoint,
5120
+ Renderer: this.options.Renderer,
5121
+ index: index
5122
+ }));
5123
+ this.plugins.onProcessSheet(sheet);
5124
+ return sheet;
 
 
 
 
 
 
 
5125
  }
5126
  /**
5127
+ * Detach the Style Sheet and remove it from the registry.
5128
  */
5129
  ;
5130
 
5131
+ _proto.removeStyleSheet = function removeStyleSheet(sheet) {
5132
+ sheet.detach();
5133
+ registry.remove(sheet);
 
5134
  return this;
5135
  }
5136
  /**
5137
+ * Create a rule without a Style Sheet.
5138
+ * [Deprecated] will be removed in the next major version.
5139
  */
5140
  ;
5141
 
5142
+ _proto.createRule = function createRule$1(name, style, options) {
5143
+ if (style === void 0) {
5144
+ style = {};
5145
+ }
5146
 
5147
+ if (options === void 0) {
5148
+ options = {};
5149
+ }
 
5150
 
5151
+ // Enable rule without name for inline styles.
5152
+ if (typeof name === 'object') {
5153
+ // $FlowFixMe[incompatible-call]
5154
+ return this.createRule(undefined, name, style);
5155
+ } // $FlowFixMe[incompatible-type]
5156
 
 
 
5157
 
5158
+ var ruleOptions = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, options, {
5159
+ name: name,
5160
+ jss: this,
5161
+ Renderer: this.options.Renderer
5162
+ });
 
 
 
5163
 
5164
+ if (!ruleOptions.generateId) ruleOptions.generateId = this.generateId;
5165
+ if (!ruleOptions.classes) ruleOptions.classes = {};
5166
+ if (!ruleOptions.keyframes) ruleOptions.keyframes = {};
5167
 
5168
+ var rule = createRule(name, style, ruleOptions);
 
 
 
 
 
 
5169
 
5170
+ if (rule) this.plugins.onProcessRule(rule);
5171
+ return rule;
 
 
5172
  }
5173
  /**
5174
+ * Register plugin. Passed function will be invoked with a rule instance.
 
5175
  */
5176
  ;
5177
 
5178
+ _proto.use = function use() {
5179
+ var _this = this;
5180
 
5181
+ for (var _len = arguments.length, plugins = new Array(_len), _key = 0; _key < _len; _key++) {
5182
+ plugins[_key] = arguments[_key];
 
5183
  }
5184
 
5185
+ plugins.forEach(function (plugin) {
5186
+ _this.plugins.use(plugin);
5187
+ });
5188
+ return this;
5189
+ };
 
 
 
 
 
 
 
 
 
 
5190
 
5191
+ return Jss;
5192
+ }();
 
 
5193
 
5194
+ /**
5195
+ * Extracts a styles object with only props that contain function values.
5196
+ */
5197
+ function getDynamicStyles(styles) {
5198
+ var to = null;
5199
 
5200
+ for (var key in styles) {
5201
+ var value = styles[key];
5202
+ var type = typeof value;
 
 
 
5203
 
5204
+ if (type === 'function') {
5205
+ if (!to) to = {};
5206
+ to[key] = value;
5207
+ } else if (type === 'object' && value !== null && !Array.isArray(value)) {
5208
+ var extracted = getDynamicStyles(value);
 
 
5209
 
5210
+ if (extracted) {
5211
+ if (!to) to = {};
5212
+ to[key] = extracted;
5213
+ }
5214
+ }
5215
  }
 
 
 
 
 
 
 
5216
 
5217
+ return to;
5218
+ }
5219
 
5220
+ /**
5221
+ * SheetsManager is like a WeakMap which is designed to count StyleSheet
5222
+ * instances and attach/detach automatically.
5223
+ */
5224
+ var SheetsManager =
5225
+ /*#__PURE__*/
5226
+ function () {
5227
+ function SheetsManager() {
5228
+ this.length = 0;
5229
+ this.sheets = new WeakMap();
5230
  }
 
 
 
 
5231
 
5232
+ var _proto = SheetsManager.prototype;
 
 
 
 
 
 
 
5233
 
5234
+ _proto.get = function get(key) {
5235
+ var entry = this.sheets.get(key);
5236
+ return entry && entry.sheet;
5237
  };
5238
 
5239
+ _proto.add = function add(key, sheet) {
5240
+ if (this.sheets.has(key)) return;
5241
+ this.length++;
5242
+ this.sheets.set(key, {
5243
+ sheet: sheet,
5244
+ refs: 0
5245
+ });
5246
+ };
5247
 
5248
+ _proto.manage = function manage(key) {
5249
+ var entry = this.sheets.get(key);
 
 
 
 
 
 
 
 
5250
 
5251
+ if (entry) {
5252
+ if (entry.refs === 0) {
5253
+ entry.sheet.attach();
5254
+ }
5255
 
5256
+ entry.refs++;
5257
+ return entry.sheet;
 
 
 
 
 
5258
  }
5259
 
5260
+ Object(tiny_warning__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(false, "[JSS] SheetsManager: can't find sheet to manage");
5261
+ return undefined;
5262
+ };
 
 
 
5263
 
5264
+ _proto.unmanage = function unmanage(key) {
5265
+ var entry = this.sheets.get(key);
 
5266
 
5267
+ if (entry) {
5268
+ if (entry.refs > 0) {
5269
+ entry.refs--;
5270
+ if (entry.refs === 0) entry.sheet.detach();
5271
+ }
5272
+ } else {
5273
+ Object(tiny_warning__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(false, "SheetsManager: can't find sheet to unmanage");
5274
  }
5275
+ };
5276
 
5277
+ Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(SheetsManager, [{
5278
+ key: "size",
5279
+ get: function get() {
5280
+ return this.length;
 
 
 
 
 
 
 
 
5281
  }
5282
+ }]);
 
 
 
 
5283
 
5284
+ return SheetsManager;
5285
+ }();
 
 
 
 
 
 
 
5286
 
5287
+ /**
5288
+ * A better abstraction over CSS.
5289
+ *
5290
+ * @copyright Oleg Isonen (Slobodskoi) / Isonen 2014-present
5291
+ * @website https://github.com/cssinjs/jss
5292
+ * @license MIT
5293
+ */
 
 
5294
 
5295
+ /**
5296
+ * Export a constant indicating if this browser has CSSTOM support.
5297
+ * https://developers.google.com/web/updates/2018/03/cssom
5298
+ */
5299
+ var hasCSSTOMSupport = typeof CSS === 'object' && CSS != null && 'number' in CSS;
5300
+ /**
5301
+ * Creates a new instance of Jss.
5302
+ */
5303
 
5304
+ var create = function create(options) {
5305
+ return new Jss(options);
5306
+ };
5307
+ /**
5308
+ * A global Jss instance.
5309
+ */
 
 
 
 
 
 
 
 
 
 
 
5310
 
5311
+ var jss = create();
5312
 
5313
+ /* harmony default export */ __webpack_exports__["d"] = (jss);
 
 
5314
 
 
 
 
 
 
 
 
 
 
5315
 
 
 
 
 
 
 
 
 
 
 
5316
 
5317
+ /***/ }),
5318
+ /* 24 */
5319
+ /***/ (function(module, exports) {
5320
 
5321
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
5322
+ var global = module.exports = typeof window != 'undefined' && window.Math == Math
5323
+ ? window : typeof self != 'undefined' && self.Math == Math ? self
5324
+ // eslint-disable-next-line no-new-func
5325
+ : Function('return this')();
5326
+ if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
 
 
 
5327
 
 
5328
 
5329
+ /***/ }),
5330
+ /* 25 */
5331
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
5332
 
5333
+ "use strict";
 
 
 
5334
 
5335
 
5336
+ function checkDCE() {
5337
+ /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
5338
+ if (
5339
+ typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||
5340
+ typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'
5341
+ ) {
5342
+ return;
5343
  }
5344
+ if (false) {}
5345
+ try {
5346
+ // Verify that the code above has been dead code eliminated (DCE'd).
5347
+ __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);
5348
+ } catch (err) {
5349
+ // DevTools shouldn't crash React, no matter what.
5350
+ // We should still report in case we break this code.
5351
+ console.error(err);
5352
  }
5353
+ }
 
 
 
5354
 
5355
+ if (true) {
5356
+ // DCE check should happen before ReactDOM bundle executes so that
5357
+ // DevTools can report bad minification during injection.
5358
+ checkDCE();
5359
+ module.exports = __webpack_require__(549);
5360
+ } else {}
 
 
5361
 
 
 
 
 
5362
 
5363
+ /***/ }),
5364
+ /* 26 */
5365
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
5366
 
5367
+ "use strict";
 
5368
 
5369
+ // EXPORTS
5370
+ __webpack_require__.d(__webpack_exports__, "d", function() { return /* reexport */ openDrawer; });
5371
+ __webpack_require__.d(__webpack_exports__, "b", function() { return /* reexport */ closeDrawer; });
5372
+ __webpack_require__.d(__webpack_exports__, "c", function() { return /* reexport */ data_utils["a" /* dateToFormat */]; });
5373
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* reexport */ GenerateUniqueId; });
5374
+ __webpack_require__.d(__webpack_exports__, "e", function() { return /* reexport */ shuffleTips; });
5375
+ __webpack_require__.d(__webpack_exports__, "f", function() { return /* reexport */ uniqueCharset; });
5376
 
5377
+ // UNUSED EXPORTS: formatToDate, importIcons
 
 
5378
 
5379
+ // CONCATENATED MODULE: ./utils/utils/drawer-utils.js
5380
+ function openDrawer(drawer, page) {
5381
+ closeDrawer();
5382
+ document.location.hash += "".concat(document.location.hash.match(/\/$/) ? "" : "/").concat(drawer).concat(page ? "/" + page : "");
5383
+ }
5384
+ function closeDrawer() {
5385
+ document.location.hash = document.location.hash.replace(/\/?(settings|menu|timeschedules|pagerules).*$/i, "");
5386
+ }
5387
+ // EXTERNAL MODULE: ./utils/utils/data-utils.js
5388
+ var data_utils = __webpack_require__(156);
5389
 
5390
+ // EXTERNAL MODULE: ./node_modules/uuid/v4.js
5391
+ var v4 = __webpack_require__(215);
5392
+ var v4_default = /*#__PURE__*/__webpack_require__.n(v4);
5393
 
5394
+ // CONCATENATED MODULE: ./utils/utils/random.js
 
 
 
 
 
 
5395
 
5396
+ function GenerateUniqueId() {
5397
+ return v4_default()();
5398
+ }
5399
+ function shuffleTips(array) {
5400
+ var currentIndex = array.length,
5401
+ temporaryValue,
5402
+ randomIndex; // While there remain elements to shuffle...
5403
 
5404
+ while (0 !== currentIndex) {
5405
+ // Pick a remaining element...
5406
+ randomIndex = Math.floor(Math.random() * currentIndex);
5407
+ currentIndex -= 1; // And swap it with the current element.
 
 
5408
 
5409
+ temporaryValue = array[currentIndex];
5410
+ array[currentIndex] = array[randomIndex];
5411
+ array[randomIndex] = temporaryValue;
5412
+ }
5413
 
5414
+ return array;
5415
+ }
5416
+ function uniqueCharset() {
5417
+ return Array.apply(0, Array(15)).map(function () {
5418
+ return function (charset) {
5419
+ return charset.charAt(Math.floor(Math.random() * charset.length));
5420
+ }("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789");
5421
+ }).join("");
5422
+ }
5423
+ // CONCATENATED MODULE: ./utils/utils/index.js
5424
 
 
 
 
 
 
5425
 
 
5426
 
 
5427
 
5428
+ /***/ }),
5429
+ /* 27 */
5430
+ /***/ (function(module, exports) {
 
 
 
 
 
 
5431
 
5432
+ module.exports = function (exec) {
5433
+ try {
5434
+ return !!exec();
5435
+ } catch (e) {
5436
+ return true;
5437
+ }
5438
+ };
5439
 
 
 
 
5440
 
5441
+ /***/ }),
5442
+ /* 28 */
5443
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
5444
 
5445
+ "use strict";
5446
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; });
5447
+ function _defineProperty(obj, key, value) {
5448
+ if (key in obj) {
5449
+ Object.defineProperty(obj, key, {
5450
+ value: value,
5451
+ enumerable: true,
5452
+ configurable: true,
5453
+ writable: true
5454
+ });
5455
+ } else {
5456
+ obj[key] = value;
5457
+ }
5458
 
5459
+ return obj;
5460
+ }
 
 
5461
 
5462
+ /***/ }),
5463
+ /* 29 */
5464
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
5465
 
5466
+ "use strict";
5467
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useEventCallback; });
5468
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
5469
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
5470
 
5471
+ var useEnhancedEffect = typeof window !== 'undefined' ? react__WEBPACK_IMPORTED_MODULE_0__["useLayoutEffect"] : react__WEBPACK_IMPORTED_MODULE_0__["useEffect"];
5472
  /**
5473
+ * https://github.com/facebook/react/issues/14099#issuecomment-440013892
5474
+ *
5475
+ * @param {function} fn
 
 
 
 
 
 
 
 
5476
  */
5477
 
5478
+ function useEventCallback(fn) {
5479
+ var ref = react__WEBPACK_IMPORTED_MODULE_0__["useRef"](fn);
5480
+ useEnhancedEffect(function () {
5481
+ ref.current = fn;
5482
+ });
5483
+ return react__WEBPACK_IMPORTED_MODULE_0__["useCallback"](function () {
5484
+ return (0, ref.current).apply(void 0, arguments);
5485
+ }, []);
 
 
 
 
 
5486
  }
 
 
 
 
5487
 
5488
+ /***/ }),
5489
+ /* 30 */
5490
+ /***/ (function(module, exports) {
5491
 
5492
+ module.exports = function (it) {
5493
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
5494
+ };
5495
 
 
 
 
 
 
5496
 
5497
+ /***/ }),
5498
+ /* 31 */
5499
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
5500
 
5501
+ "use strict";
5502
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return isError; });
5503
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return isErrorEvent; });
5504
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isDOMError; });
5505
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return isDOMException; });
5506
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return isString; });
5507
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return isPrimitive; });
5508
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return isPlainObject; });
5509
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return isEvent; });
5510
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return isElement; });
5511
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return isRegExp; });
5512
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "m", function() { return isThenable; });
5513
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "l", function() { return isSyntheticEvent; });
5514
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return isInstanceOf; });
5515
+ /* eslint-disable @typescript-eslint/no-explicit-any */
5516
+ /* eslint-disable @typescript-eslint/explicit-module-boundary-types */
5517
+ /**
5518
+ * Checks whether given value's type is one of a few Error or Error-like
5519
+ * {@link isError}.
5520
+ *
5521
+ * @param wat A value to be checked.
5522
+ * @returns A boolean representing the result.
5523
+ */
5524
+ function isError(wat) {
5525
+ switch (Object.prototype.toString.call(wat)) {
5526
+ case '[object Error]':
5527
+ return true;
5528
+ case '[object Exception]':
5529
+ return true;
5530
+ case '[object DOMException]':
5531
+ return true;
5532
+ default:
5533
+ return isInstanceOf(wat, Error);
5534
  }
 
 
 
 
 
 
5535
  }
5536
  /**
5537
+ * Checks whether given value's type is ErrorEvent
5538
+ * {@link isErrorEvent}.
5539
+ *
5540
+ * @param wat A value to be checked.
5541
+ * @returns A boolean representing the result.
5542
  */
5543
+ function isErrorEvent(wat) {
5544
+ return Object.prototype.toString.call(wat) === '[object ErrorEvent]';
 
 
 
 
 
 
 
 
 
 
 
5545
  }
5546
  /**
5547
+ * Checks whether given value's type is DOMError
5548
+ * {@link isDOMError}.
5549
+ *
5550
+ * @param wat A value to be checked.
5551
+ * @returns A boolean representing the result.
5552
  */
5553
+ function isDOMError(wat) {
5554
+ return Object.prototype.toString.call(wat) === '[object DOMError]';
 
 
 
 
 
5555
  }
5556
  /**
5557
+ * Checks whether given value's type is DOMException
5558
+ * {@link isDOMException}.
5559
+ *
5560
+ * @param wat A value to be checked.
5561
+ * @returns A boolean representing the result.
5562
  */
5563
+ function isDOMException(wat) {
5564
+ return Object.prototype.toString.call(wat) === '[object DOMException]';
5565
+ }
 
 
5566
  /**
5567
+ * Checks whether given value's type is a string
5568
+ * {@link isString}.
5569
+ *
5570
+ * @param wat A value to be checked.
5571
+ * @returns A boolean representing the result.
5572
  */
5573
+ function isString(wat) {
5574
+ return Object.prototype.toString.call(wat) === '[object String]';
 
 
 
 
 
 
 
 
 
5575
  }
5576
  /**
5577
+ * Checks whether given value's is a primitive (undefined, null, number, boolean, string)
5578
+ * {@link isPrimitive}.
5579
+ *
5580
+ * @param wat A value to be checked.
5581
+ * @returns A boolean representing the result.
5582
  */
5583
+ function isPrimitive(wat) {
5584
+ return wat === null || (typeof wat !== 'object' && typeof wat !== 'function');
 
 
 
 
 
 
 
 
 
 
5585
  }
5586
  /**
5587
+ * Checks whether given value's type is an object literal
5588
+ * {@link isPlainObject}.
5589
+ *
5590
+ * @param wat A value to be checked.
5591
+ * @returns A boolean representing the result.
5592
  */
5593
+ function isPlainObject(wat) {
5594
+ return Object.prototype.toString.call(wat) === '[object Object]';
 
 
 
 
 
 
 
 
 
 
 
 
5595
  }
 
5596
  /**
5597
+ * Checks whether given value's type is an Event instance
5598
+ * {@link isEvent}.
5599
+ *
5600
+ * @param wat A value to be checked.
5601
+ * @returns A boolean representing the result.
5602
  */
5603
+ function isEvent(wat) {
5604
+ return typeof Event !== 'undefined' && isInstanceOf(wat, Event);
5605
+ }
5606
+ /**
5607
+ * Checks whether given value's type is an Element instance
5608
+ * {@link isElement}.
5609
+ *
5610
+ * @param wat A value to be checked.
5611
+ * @returns A boolean representing the result.
5612
+ */
5613
+ function isElement(wat) {
5614
+ return typeof Element !== 'undefined' && isInstanceOf(wat, Element);
5615
+ }
5616
+ /**
5617
+ * Checks whether given value's type is an regexp
5618
+ * {@link isRegExp}.
5619
+ *
5620
+ * @param wat A value to be checked.
5621
+ * @returns A boolean representing the result.
5622
+ */
5623
+ function isRegExp(wat) {
5624
+ return Object.prototype.toString.call(wat) === '[object RegExp]';
5625
+ }
5626
+ /**
5627
+ * Checks whether given value has a then function.
5628
+ * @param wat A value to be checked.
5629
+ */
5630
+ function isThenable(wat) {
5631
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
5632
+ return Boolean(wat && wat.then && typeof wat.then === 'function');
5633
+ }
5634
+ /**
5635
+ * Checks whether given value's type is a SyntheticEvent
5636
+ * {@link isSyntheticEvent}.
5637
+ *
5638
+ * @param wat A value to be checked.
5639
+ * @returns A boolean representing the result.
5640
+ */
5641
+ function isSyntheticEvent(wat) {
5642
+ return isPlainObject(wat) && 'nativeEvent' in wat && 'preventDefault' in wat && 'stopPropagation' in wat;
5643
+ }
5644
+ /**
5645
+ * Checks whether given value's type is an instance of provided constructor.
5646
+ * {@link isInstanceOf}.
5647
+ *
5648
+ * @param wat A value to be checked.
5649
+ * @param base A constructor to be used in a check.
5650
+ * @returns A boolean representing the result.
5651
+ */
5652
+ function isInstanceOf(wat, base) {
5653
+ try {
5654
+ return wat instanceof base;
5655
  }
5656
+ catch (_e) {
5657
+ return false;
5658
+ }
5659
+ }
5660
+ //# sourceMappingURL=is.js.map
5661
 
5662
+ /***/ }),
5663
+ /* 32 */
5664
+ /***/ (function(module, exports, __webpack_require__) {
5665
 
5666
+ var baseMerge = __webpack_require__(306),
5667
+ createAssigner = __webpack_require__(346);
5668
 
5669
+ /**
5670
+ * This method is like `_.assign` except that it recursively merges own and
5671
+ * inherited enumerable string keyed properties of source objects into the
5672
+ * destination object. Source properties that resolve to `undefined` are
5673
+ * skipped if a destination value exists. Array and plain object properties
5674
+ * are merged recursively. Other objects and value types are overridden by
5675
+ * assignment. Source objects are applied from left to right. Subsequent
5676
+ * sources overwrite property assignments of previous sources.
5677
+ *
5678
+ * **Note:** This method mutates `object`.
5679
+ *
5680
+ * @static
5681
+ * @memberOf _
5682
+ * @since 0.5.0
5683
+ * @category Object
5684
+ * @param {Object} object The destination object.
5685
+ * @param {...Object} [sources] The source objects.
5686
+ * @returns {Object} Returns `object`.
5687
+ * @example
5688
+ *
5689
+ * var object = {
5690
+ * 'a': [{ 'b': 2 }, { 'd': 4 }]
5691
+ * };
5692
+ *
5693
+ * var other = {
5694
+ * 'a': [{ 'c': 3 }, { 'e': 5 }]
5695
+ * };
5696
+ *
5697
+ * _.merge(object, other);
5698
+ * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }
5699
+ */
5700
+ var merge = createAssigner(function(object, source, srcIndex) {
5701
+ baseMerge(object, source, srcIndex);
5702
+ });
5703
 
5704
+ module.exports = merge;
 
 
 
 
 
 
5705
 
5706
 
5707
+ /***/ }),
5708
+ /* 33 */
5709
+ /***/ (function(module, exports, __webpack_require__) {
5710
 
5711
+ "use strict";
 
 
 
 
5712
 
5713
 
5714
+ var bind = __webpack_require__(191);
 
 
5715
 
5716
+ /*global toString:true*/
 
 
 
5717
 
5718
+ // utils is a library of generic helper functions non-specific to axios
5719
 
5720
+ var toString = Object.prototype.toString;
 
 
 
 
 
 
5721
 
5722
+ /**
5723
+ * Determine if a value is an Array
5724
+ *
5725
+ * @param {Object} val The value to test
5726
+ * @returns {boolean} True if value is an Array, otherwise false
5727
+ */
5728
+ function isArray(val) {
5729
+ return toString.call(val) === '[object Array]';
5730
  }
5731
+
5732
  /**
5733
+ * Determine if a value is undefined
5734
+ *
5735
+ * @param {Object} val The value to test
5736
+ * @returns {boolean} True if the value is undefined, otherwise false
5737
  */
5738
+ function isUndefined(val) {
5739
+ return typeof val === 'undefined';
5740
+ }
5741
 
5742
+ /**
5743
+ * Determine if a value is a Buffer
5744
+ *
5745
+ * @param {Object} val The value to test
5746
+ * @returns {boolean} True if value is a Buffer, otherwise false
5747
+ */
5748
+ function isBuffer(val) {
5749
+ return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)
5750
+ && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);
5751
+ }
5752
 
5753
+ /**
5754
+ * Determine if a value is an ArrayBuffer
5755
+ *
5756
+ * @param {Object} val The value to test
5757
+ * @returns {boolean} True if value is an ArrayBuffer, otherwise false
5758
+ */
5759
+ function isArrayBuffer(val) {
5760
+ return toString.call(val) === '[object ArrayBuffer]';
5761
+ }
5762
 
5763
+ /**
5764
+ * Determine if a value is a FormData
5765
+ *
5766
+ * @param {Object} val The value to test
5767
+ * @returns {boolean} True if value is an FormData, otherwise false
5768
+ */
5769
+ function isFormData(val) {
5770
+ return (typeof FormData !== 'undefined') && (val instanceof FormData);
5771
+ }
5772
 
5773
+ /**
5774
+ * Determine if a value is a view on an ArrayBuffer
5775
+ *
5776
+ * @param {Object} val The value to test
5777
+ * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false
5778
+ */
5779
+ function isArrayBufferView(val) {
5780
+ var result;
5781
+ if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {
5782
+ result = ArrayBuffer.isView(val);
5783
+ } else {
5784
+ result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);
5785
  }
5786
+ return result;
5787
+ }
5788
 
5789
+ /**
5790
+ * Determine if a value is a String
5791
+ *
5792
+ * @param {Object} val The value to test
5793
+ * @returns {boolean} True if value is a String, otherwise false
5794
+ */
5795
+ function isString(val) {
5796
+ return typeof val === 'string';
5797
+ }
5798
 
5799
+ /**
5800
+ * Determine if a value is a Number
5801
+ *
5802
+ * @param {Object} val The value to test
5803
+ * @returns {boolean} True if value is a Number, otherwise false
5804
+ */
5805
+ function isNumber(val) {
5806
+ return typeof val === 'number';
5807
+ }
5808
 
5809
+ /**
5810
+ * Determine if a value is an Object
5811
+ *
5812
+ * @param {Object} val The value to test
5813
+ * @returns {boolean} True if value is an Object, otherwise false
5814
+ */
5815
+ function isObject(val) {
5816
+ return val !== null && typeof val === 'object';
5817
+ }
5818
 
5819
+ /**
5820
+ * Determine if a value is a plain Object
5821
+ *
5822
+ * @param {Object} val The value to test
5823
+ * @return {boolean} True if value is a plain Object, otherwise false
5824
+ */
5825
+ function isPlainObject(val) {
5826
+ if (toString.call(val) !== '[object Object]') {
5827
+ return false;
5828
+ }
5829
 
5830
+ var prototype = Object.getPrototypeOf(val);
5831
+ return prototype === null || prototype === Object.prototype;
5832
+ }
5833
 
5834
+ /**
5835
+ * Determine if a value is a Date
5836
+ *
5837
+ * @param {Object} val The value to test
5838
+ * @returns {boolean} True if value is a Date, otherwise false
5839
+ */
5840
+ function isDate(val) {
5841
+ return toString.call(val) === '[object Date]';
5842
+ }
 
 
 
 
 
 
5843
 
5844
+ /**
5845
+ * Determine if a value is a File
5846
+ *
5847
+ * @param {Object} val The value to test
5848
+ * @returns {boolean} True if value is a File, otherwise false
5849
+ */
5850
+ function isFile(val) {
5851
+ return toString.call(val) === '[object File]';
5852
+ }
5853
 
5854
+ /**
5855
+ * Determine if a value is a Blob
5856
+ *
5857
+ * @param {Object} val The value to test
5858
+ * @returns {boolean} True if value is a Blob, otherwise false
5859
+ */
5860
+ function isBlob(val) {
5861
+ return toString.call(val) === '[object Blob]';
5862
+ }
 
5863
 
5864
+ /**
5865
+ * Determine if a value is a Function
5866
+ *
5867
+ * @param {Object} val The value to test
5868
+ * @returns {boolean} True if value is a Function, otherwise false
5869
+ */
5870
+ function isFunction(val) {
5871
+ return toString.call(val) === '[object Function]';
5872
+ }
5873
 
5874
+ /**
5875
+ * Determine if a value is a Stream
5876
+ *
5877
+ * @param {Object} val The value to test
5878
+ * @returns {boolean} True if value is a Stream, otherwise false
5879
+ */
5880
+ function isStream(val) {
5881
+ return isObject(val) && isFunction(val.pipe);
5882
+ }
5883
 
5884
+ /**
5885
+ * Determine if a value is a URLSearchParams object
5886
+ *
5887
+ * @param {Object} val The value to test
5888
+ * @returns {boolean} True if value is a URLSearchParams object, otherwise false
5889
+ */
5890
+ function isURLSearchParams(val) {
5891
+ return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;
5892
+ }
5893
 
5894
+ /**
5895
+ * Trim excess whitespace off the beginning and end of a string
5896
+ *
5897
+ * @param {String} str The String to trim
5898
+ * @returns {String} The String freed of excess whitespace
5899
+ */
5900
+ function trim(str) {
5901
+ return str.replace(/^\s*/, '').replace(/\s*$/, '');
5902
+ }
5903
 
5904
+ /**
5905
+ * Determine if we're running in a standard browser environment
5906
+ *
5907
+ * This allows axios to run in a web worker, and react-native.
5908
+ * Both environments support XMLHttpRequest, but not fully standard globals.
5909
+ *
5910
+ * web workers:
5911
+ * typeof window -> undefined
5912
+ * typeof document -> undefined
5913
+ *
5914
+ * react-native:
5915
+ * navigator.product -> 'ReactNative'
5916
+ * nativescript
5917
+ * navigator.product -> 'NativeScript' or 'NS'
5918
+ */
5919
+ function isStandardBrowserEnv() {
5920
+ if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||
5921
+ navigator.product === 'NativeScript' ||
5922
+ navigator.product === 'NS')) {
5923
+ return false;
5924
  }
5925
+ return (
5926
+ typeof window !== 'undefined' &&
5927
+ typeof document !== 'undefined'
5928
+ );
5929
+ }
5930
 
5931
+ /**
5932
+ * Iterate over an Array or an Object invoking a function for each item.
5933
+ *
5934
+ * If `obj` is an Array callback will be called passing
5935
+ * the value, index, and complete array for each item.
5936
+ *
5937
+ * If 'obj' is an Object callback will be called passing
5938
+ * the value, key, and complete object for each property.
5939
+ *
5940
+ * @param {Object|Array} obj The object to iterate
5941
+ * @param {Function} fn The callback to invoke for each item
5942
+ */
5943
+ function forEach(obj, fn) {
5944
+ // Don't bother if no value provided
5945
+ if (obj === null || typeof obj === 'undefined') {
5946
+ return;
5947
  }
 
 
 
 
5948
 
5949
+ // Force an array if not already something iterable
5950
+ if (typeof obj !== 'object') {
5951
+ /*eslint no-param-reassign:0*/
5952
+ obj = [obj];
5953
+ }
5954
 
5955
+ if (isArray(obj)) {
5956
+ // Iterate over array values
5957
+ for (var i = 0, l = obj.length; i < l; i++) {
5958
+ fn.call(null, obj[i], i, obj);
5959
+ }
5960
+ } else {
5961
+ // Iterate over object keys
5962
+ for (var key in obj) {
5963
+ if (Object.prototype.hasOwnProperty.call(obj, key)) {
5964
+ fn.call(null, obj[key], key, obj);
5965
+ }
5966
  }
 
 
5967
  }
5968
+ }
 
 
 
5969
 
5970
+ /**
5971
+ * Accepts varargs expecting each argument to be an object, then
5972
+ * immutably merges the properties of each object and returns result.
5973
+ *
5974
+ * When multiple objects contain the same key the later object in
5975
+ * the arguments list will take precedence.
5976
+ *
5977
+ * Example:
5978
+ *
5979
+ * ```js
5980
+ * var result = merge({foo: 123}, {foo: 456});
5981
+ * console.log(result.foo); // outputs 456
5982
+ * ```
5983
+ *
5984
+ * @param {Object} obj1 Object to merge
5985
+ * @returns {Object} Result of all merge properties
5986
+ */
5987
+ function merge(/* obj1, obj2, obj3, ... */) {
5988
+ var result = {};
5989
+ function assignValue(val, key) {
5990
+ if (isPlainObject(result[key]) && isPlainObject(val)) {
5991
+ result[key] = merge(result[key], val);
5992
+ } else if (isPlainObject(val)) {
5993
+ result[key] = merge({}, val);
5994
+ } else if (isArray(val)) {
5995
+ result[key] = val.slice();
5996
+ } else {
5997
+ result[key] = val;
5998
  }
5999
  }
 
 
 
 
6000
 
6001
+ for (var i = 0, l = arguments.length; i < l; i++) {
6002
+ forEach(arguments[i], assignValue);
6003
+ }
6004
+ return result;
6005
+ }
6006
+
6007
+ /**
6008
+ * Extends object a by mutably adding to it the properties of object b.
6009
+ *
6010
+ * @param {Object} a The object to be extended
6011
+ * @param {Object} b The object to copy properties from
6012
+ * @param {Object} thisArg The object to bind function to
6013
+ * @return {Object} The resulting value of object a
6014
+ */
6015
+ function extend(a, b, thisArg) {
6016
+ forEach(b, function assignValue(val, key) {
6017
+ if (thisArg && typeof val === 'function') {
6018
+ a[key] = bind(val, thisArg);
6019
+ } else {
6020
+ a[key] = val;
6021
  }
6022
+ });
6023
+ return a;
6024
+ }
6025
 
6026
+ /**
6027
+ * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)
6028
+ *
6029
+ * @param {string} content with BOM
6030
+ * @return {string} content value without BOM
6031
+ */
6032
+ function stripBOM(content) {
6033
+ if (content.charCodeAt(0) === 0xFEFF) {
6034
+ content = content.slice(1);
6035
+ }
6036
+ return content;
6037
+ }
6038
 
6039
+ module.exports = {
6040
+ isArray: isArray,
6041
+ isArrayBuffer: isArrayBuffer,
6042
+ isBuffer: isBuffer,
6043
+ isFormData: isFormData,
6044
+ isArrayBufferView: isArrayBufferView,
6045
+ isString: isString,
6046
+ isNumber: isNumber,
6047
+ isObject: isObject,
6048
+ isPlainObject: isPlainObject,
6049
+ isUndefined: isUndefined,
6050
+ isDate: isDate,
6051
+ isFile: isFile,
6052
+ isBlob: isBlob,
6053
+ isFunction: isFunction,
6054
+ isStream: isStream,
6055
+ isURLSearchParams: isURLSearchParams,
6056
+ isStandardBrowserEnv: isStandardBrowserEnv,
6057
+ forEach: forEach,
6058
+ merge: merge,
6059
+ extend: extend,
6060
+ trim: trim,
6061
+ stripBOM: stripBOM
6062
+ };
6063
 
 
 
 
 
6064
 
6065
+ /***/ }),
6066
+ /* 34 */
6067
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
6068
+
6069
+ "use strict";
6070
 
6071
+ // EXTERNAL MODULE: ./node_modules/redux/es/redux.js
6072
+ var redux = __webpack_require__(102);
6073
 
6074
+ // EXTERNAL MODULE: ./src/js/dashboard/store/actions/dataActions/index.js
6075
+ var dataActions = __webpack_require__(15);
 
6076
 
6077
+ // EXTERNAL MODULE: ./src/js/dashboard/store/actions/savingMiddleware.js + 3 modules
6078
+ var savingMiddleware = __webpack_require__(183);
6079
 
6080
+ // EXTERNAL MODULE: ./utils/buttonizer-constants.js
6081
+ var buttonizer_constants = __webpack_require__(5);
6082
 
6083
+ // EXTERNAL MODULE: ./node_modules/immer/dist/immer.esm.js
6084
+ var immer_esm = __webpack_require__(41);
 
6085
 
6086
+ // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/wpReducer.js
 
 
 
 
 
 
 
6087
 
6088
+
6089
+ var initialStore = {
6090
+ loading: {
6091
+ posts: false,
6092
+ pages: false,
6093
+ categories: false,
6094
+ roles: false
6095
+ },
6096
+ loaded: {
6097
+ posts: false,
6098
+ pages: false,
6099
+ categories: false,
6100
+ roles: false
6101
+ },
6102
+ data: {
6103
+ posts: [],
6104
+ pages: [],
6105
+ categories: [],
6106
+ roles: []
6107
  }
6108
+ };
6109
+ /* harmony default export */ var wpReducer = (function () {
6110
+ var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialStore;
6111
+ var action = arguments.length > 1 ? arguments[1] : undefined;
6112
+ if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return initialStore;
6113
+ return Object(immer_esm["b" /* produce */])(store, function (draftStore) {
6114
+ switch (action.type) {
6115
+ case buttonizer_constants["a" /* actionTypes */].wp.GET_DATA_BEGIN:
6116
+ {
6117
+ draftStore.loading[action.payload.type] = true;
6118
+ break;
6119
+ }
6120
 
6121
+ case buttonizer_constants["a" /* actionTypes */].wp.GET_DATA_END:
6122
+ {
6123
+ draftStore.loading[action.payload.type] = false;
6124
+ break;
6125
+ }
6126
+
6127
+ case buttonizer_constants["a" /* actionTypes */].wp.GET_DATA_FAILURE:
6128
+ {
6129
+ console.error(action.payload.error);
6130
+ break;
6131
+ }
6132
 
6133
+ case buttonizer_constants["a" /* actionTypes */].wp.GET_DATA_SUCCESS:
6134
+ {
6135
+ draftStore.data[action.payload.type] = action.payload.data;
6136
+ draftStore.loaded[action.payload.type] = true;
6137
+ break;
6138
+ }
6139
  }
6140
+ });
6141
+ });
6142
+ // EXTERNAL MODULE: ./utils/utils/index.js + 2 modules
6143
+ var utils = __webpack_require__(26);
6144
 
6145
+ // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/timeScheduleReducer.js
 
 
 
 
 
 
 
6146
 
 
 
 
 
 
 
 
 
 
 
6147
 
 
 
 
6148
 
6149
+ /* harmony default export */ var timeScheduleReducer = (function () {
6150
+ var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
6151
+ var action = arguments.length > 1 ? arguments[1] : undefined;
6152
+ if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return action.payload.timeSchedules;
6153
+ return Object(immer_esm["a" /* default */])(store, function (draftStore) {
6154
+ switch (action.type) {
6155
+ case buttonizer_constants["a" /* actionTypes */].timeSchedules.ADD_RECORD:
6156
+ {
6157
+ // Add data to store/model
6158
+ draftStore[action.payload.record.id] = action.payload.record;
6159
+ break;
6160
+ }
6161
 
6162
+ case buttonizer_constants["a" /* actionTypes */].timeSchedules.REMOVE_RECORD:
6163
+ {
6164
+ delete draftStore[action.payload.id];
6165
+ break;
6166
+ }
6167
 
6168
+ /**
6169
+ * Button actions
6170
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6171
 
6172
+ case buttonizer_constants["a" /* actionTypes */].timeSchedules.SET_KEY_VALUE:
6173
+ {
6174
+ draftStore[action.payload.id][action.payload.key] = action.payload.value;
6175
+ break;
6176
+ }
6177
 
6178
+ /**
6179
+ * Time Schedule reducers
6180
+ */
 
 
 
 
6181
 
6182
+ case buttonizer_constants["a" /* actionTypes */].timeSchedules.SET_WEEKDAY:
6183
+ {
6184
+ draftStore[action.payload.id].weekdays[action.payload.weekdayKey][action.payload.key] = action.payload.value;
6185
+ break;
6186
+ }
6187
 
6188
+ case buttonizer_constants["a" /* actionTypes */].timeSchedules.ADD_EXCLUDED_DATE:
6189
+ {
6190
+ draftStore[action.payload.id].dates.push({
6191
+ opened: true,
6192
+ open: "8:00",
6193
+ close: "17:00",
6194
+ date: Object(utils["c" /* dateToFormat */])(new Date())
6195
+ });
6196
+ break;
6197
+ }
6198
 
6199
+ case buttonizer_constants["a" /* actionTypes */].timeSchedules.SET_EXCLUDED_DATE:
6200
+ {
6201
+ draftStore[action.payload.id].dates[action.payload.dateKey][action.payload.key] = action.payload.value;
6202
+ break;
6203
+ }
6204
 
6205
+ case buttonizer_constants["a" /* actionTypes */].timeSchedules.REMOVE_EXCLUDED_DATE:
6206
+ {
6207
+ draftStore[action.payload.id].dates.splice(action.payload.dateKey, 1);
6208
+ break;
6209
+ }
6210
  }
6211
+ });
6212
+ });
6213
+ // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/rootReducer.js
6214
 
 
 
 
6215
 
6216
+ var defaultStore = {
6217
+ loading: {},
6218
+ drawer: ""
6219
+ };
6220
+ /* harmony default export */ var rootReducer = (function () {
6221
+ var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultStore;
6222
+ var action = arguments.length > 1 ? arguments[1] : undefined;
6223
+ return Object(immer_esm["a" /* default */])(store, function (draftStore) {
6224
+ switch (action.type) {
6225
+ case buttonizer_constants["a" /* actionTypes */].INIT:
6226
+ {
6227
+ draftStore.frameUrl = action.payload.wordpress.base + "?buttonizer-preview=1"; // Start loading iframe
6228
 
6229
+ draftStore.loading.loadingIframe = true; // Show loading
6230
 
6231
+ draftStore.loading.showLoading = true;
6232
+ draftStore.loading.loadingString = "loading.website";
6233
+ draftStore.hasChanges = action.payload.hasChanges === "1";
6234
+ draftStore.loading.loaded = true;
6235
+ draftStore.wordpress = action.payload.wordpress;
6236
+ draftStore._premium = action.payload.premium;
6237
+ draftStore.is_opt_in = action.payload.is_opt_in;
6238
+ draftStore.additional_permissions = action.payload.additional_permissions;
6239
+ draftStore._premiumCode = action.payload.premium_code;
6240
+ break;
6241
+ }
6242
 
6243
+ case buttonizer_constants["a" /* actionTypes */].GET_DATA_BEGIN:
6244
+ {
6245
+ draftStore.loading.showLoading = true;
6246
+ draftStore.loading.loadingString = "loading.loading";
6247
+ break;
6248
+ }
6249
 
6250
+ case buttonizer_constants["a" /* actionTypes */].GET_DATA_SUCCESS:
6251
+ {
6252
+ draftStore.loading.showLoading = false;
6253
+ draftStore.loading.fetchError = null;
6254
+ draftStore.loading.loaded = true;
6255
+ break;
6256
+ }
6257
 
6258
+ case buttonizer_constants["a" /* actionTypes */].GET_DATA_FAILURE:
6259
+ {
6260
+ draftStore.loading.showLoading = false;
6261
+ draftStore.loading.fetchError = action.payload.error;
6262
+ console.error(action.payload.error);
6263
+ break;
6264
+ }
6265
 
6266
+ case buttonizer_constants["a" /* actionTypes */].HAS_CHANGES:
6267
+ {
6268
+ draftStore.hasChanges = action.payload.hasChanges;
6269
+ break;
6270
+ }
6271
 
6272
+ case buttonizer_constants["a" /* actionTypes */].STOP_LOADING:
6273
+ {
6274
+ draftStore.loading.showLoading = false;
6275
+ draftStore.loading.loadingSlowWebsite = false;
6276
+ draftStore.loading.loadingIframe = false;
6277
+ break;
6278
+ }
6279
  }
6280
+ });
6281
+ });
6282
+ // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/pageRuleReducer.js
6283
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6284
 
6285
+ /**
6286
+ * Page rule reducers
6287
+ */
 
 
 
 
 
 
 
6288
 
6289
+ /* harmony default export */ var pageRuleReducer = (function () {
6290
+ var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
6291
+ var action = arguments.length > 1 ? arguments[1] : undefined;
6292
+ if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return action.payload.pageRules;
6293
+ return Object(immer_esm["a" /* default */])(store, function (draftStore) {
6294
+ switch (action.type) {
6295
+ // Add record
6296
+ case buttonizer_constants["a" /* actionTypes */].pageRules.ADD_RECORD:
6297
+ {
6298
+ draftStore[action.payload.record.id] = action.payload.record;
6299
+ break;
6300
+ }
6301
+ // Remove record
6302
 
6303
+ case buttonizer_constants["a" /* actionTypes */].pageRules.REMOVE_RECORD:
6304
+ {
6305
+ delete draftStore[action.payload.id];
6306
+ break;
6307
+ }
6308
+ // Set key
6309
 
6310
+ case buttonizer_constants["a" /* actionTypes */].pageRules.SET_KEY_VALUE:
6311
+ {
6312
+ draftStore[action.payload.id][action.payload.key] = action.payload.value;
6313
+ break;
6314
+ }
6315
+ // Add page rule row
6316
 
6317
+ case buttonizer_constants["a" /* actionTypes */].pageRules.ADD_PAGE_RULE_ROW:
6318
+ {
6319
+ draftStore[action.payload.id].rules.push({
6320
+ type: "page_title",
6321
+ value: ""
6322
+ });
6323
+ break;
6324
+ }
6325
+ // Update page rule row
6326
 
6327
+ case buttonizer_constants["a" /* actionTypes */].pageRules.SET_PAGE_RULE_ROW:
6328
+ {
6329
+ draftStore[action.payload.id].rules[action.payload.ruleRowKey][action.payload.key] = action.payload.value;
6330
+ break;
6331
+ }
6332
+ // Remove page rule row
6333
 
6334
+ case buttonizer_constants["a" /* actionTypes */].pageRules.REMOVE_PAGE_RULE_ROW:
6335
+ {
6336
+ draftStore[action.payload.id].rules.splice(action.payload.ruleRowKey, 1);
6337
+ break;
6338
+ }
6339
+ }
6340
+ });
6341
+ });
6342
+ // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/settingReducer.js
6343
 
 
 
 
 
 
 
 
6344
 
6345
+ /* harmony default export */ var settingReducer = (function () {
6346
+ var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
6347
+ var action = arguments.length > 1 ? arguments[1] : undefined;
6348
+ if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return action.payload.settings;
6349
+ return Object(immer_esm["a" /* default */])(store, function (draftStore) {
6350
+ switch (action.type) {
6351
+ case buttonizer_constants["a" /* actionTypes */].SET_SETTING_VALUE:
6352
+ {
6353
+ if (action.payload.setting === "can_send_errors" && typeof buttonizer_admin !== "undefined") {
6354
+ buttonizer_admin.can_send_errors = action.payload.value;
6355
+ }
6356
 
6357
+ draftStore[action.payload.setting] = action.payload.value;
6358
+ break;
6359
+ }
6360
  }
6361
+ });
6362
+ });
6363
+ // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/savingReducer.js
6364
 
 
 
 
 
 
 
 
 
6365
 
6366
+ var savingReducer_initialStore = {
6367
+ isUpdating: false
6368
+ };
6369
+ function savingReducer() {
6370
+ var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : savingReducer_initialStore;
6371
+ var action = arguments.length > 1 ? arguments[1] : undefined;
6372
+ return Object(immer_esm["b" /* produce */])(store, function (draftStore) {
6373
+ if (Object.values(buttonizer_constants["a" /* actionTypes */].buttons).includes(action.type) || Object.values(buttonizer_constants["a" /* actionTypes */].groups).includes(action.type) || Object.values(buttonizer_constants["a" /* actionTypes */].pageRules).includes(action.type) || Object.values(buttonizer_constants["a" /* actionTypes */].timeSchedules).includes(action.type) || buttonizer_constants["a" /* actionTypes */].SET_SETTING_VALUE === action.type) {// draftStore.isUpdating = true;
6374
+ } else if (action.type === buttonizer_constants["a" /* actionTypes */].IS_UPDATING) {
6375
+ draftStore.isUpdating = action.payload.isUpdating;
6376
+ }
6377
+ });
6378
+ }
6379
+ // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/groupReducer.js
6380
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
6381
 
6382
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
 
 
6383
 
6384
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
 
 
 
 
6385
 
6386
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
 
 
 
 
 
6387
 
6388
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
 
6389
 
6390
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
 
 
 
 
 
 
 
 
 
 
6391
 
6392
+ 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; }
6393
 
6394
+ 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(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; }
 
 
 
6395
 
6396
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
 
 
 
 
 
 
 
6397
 
 
 
6398
 
 
 
 
 
6399
 
6400
+ /* harmony default export */ var groupReducer = (function () {
6401
+ var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
6402
+ var action = arguments.length > 1 ? arguments[1] : undefined;
6403
+ if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return action.payload.groups;
6404
 
6405
+ if (action.type === buttonizer_constants["a" /* actionTypes */].groups.ADD_RECORD && typeof action.payload.index !== "string") {
6406
+ // Add data to store/model
6407
+ var unorderedStore = _objectSpread(_objectSpread({}, store), {}, _defineProperty({}, action.payload.record.id, action.payload.record));
6408
 
6409
+ var newKeys = Object.keys(store);
6410
+ newKeys.splice(action.payload.index, 0, action.payload.record.id);
6411
+ return newKeys.reduce(function (result, key) {
6412
+ result[key] = unorderedStore[key];
6413
+ return result;
6414
+ }, {});
6415
+ }
6416
 
6417
+ return Object(immer_esm["b" /* produce */])(store, function (draftStore) {
6418
+ switch (action.type) {
6419
+ case buttonizer_constants["a" /* actionTypes */].groups.ADD_RECORD:
6420
+ {
6421
+ draftStore[action.payload.record.id] = action.payload.record; // Last place
 
 
 
 
6422
 
6423
+ break;
6424
+ }
6425
+
6426
+ case buttonizer_constants["a" /* actionTypes */].groups.REMOVE_RECORD:
6427
+ {
6428
+ delete draftStore[action.payload.model_id];
6429
+ break;
6430
+ }
6431
+
6432
+ case buttonizer_constants["a" /* actionTypes */].groups.SET_KEY_VALUE:
6433
+ {
6434
+ if (action.payload.value === "unset") {
6435
+ if (typeof draftStore[action.payload.id][action.payload.key] !== "undefined") delete draftStore[action.payload.id][action.payload.key];
6436
+ break;
6437
+ }
6438
+
6439
+ draftStore[action.payload.id][action.payload.key] = action.payload.value;
6440
+ break;
6441
+ }
6442
+
6443
+ case buttonizer_constants["a" /* actionTypes */].groups.SET_KEY_FORMAT:
6444
+ {
6445
+ var format = buttonizer_constants["c" /* formats */][action.payload.format];
6446
+ if (!format) break;
6447
+ var parsedValue = format.format.apply(format, _toConsumableArray(action.payload.values));
6448
+
6449
+ if (parsedValue === "unset") {
6450
+ if (typeof draftStore[action.payload.id][action.payload.key] !== "undefined") delete draftStore[action.payload.id][action.payload.key];
6451
+ break;
6452
+ }
6453
+
6454
+ draftStore[action.payload.id][action.payload.key] = parsedValue;
6455
+ break;
6456
+ }
6457
+
6458
+ case buttonizer_constants["a" /* actionTypes */].ADD_RELATION:
6459
+ {
6460
+ draftStore[action.payload.group_id].children = draftStore[action.payload.group_id].children || [];
6461
+
6462
+ if (typeof action.payload.index !== "string") {
6463
+ draftStore[action.payload.group_id].children.splice(action.payload.index, 0, action.payload.button_id);
6464
+ break;
6465
+ }
6466
+
6467
+ draftStore[action.payload.group_id].children.push(action.payload.button_id);
6468
+ break;
6469
+ }
6470
+
6471
+ case buttonizer_constants["a" /* actionTypes */].CHANGE_RELATION:
6472
+ {
6473
+ // Remove button from group
6474
+ var buttonIndex = draftStore[action.payload.old_group_id].children.indexOf(action.payload.button_id);
6475
+ draftStore[action.payload.old_group_id].children.splice(buttonIndex, 1); // If old group has no children, delete it
6476
+
6477
+ if (draftStore[action.payload.old_group_id].children.length === 0) {
6478
+ delete draftStore[action.payload.old_group_id];
6479
+ } // Add button to new group
6480
+
6481
+
6482
+ draftStore[action.payload.new_group_id].children.splice(action.payload.button_index, 0, action.payload.button_id);
6483
+ break;
6484
+ }
6485
+
6486
+ case buttonizer_constants["a" /* actionTypes */].REMOVE_RELATION:
6487
+ {
6488
+ var index = draftStore[action.payload.group_id].children.indexOf(action.payload.button_id);
6489
+ draftStore[action.payload.group_id].children.splice(index, 1);
6490
+ break;
6491
+ }
6492
  }
6493
+ });
6494
+ });
6495
+ // CONCATENATED MODULE: ./src/js/dashboard/store/reducers/buttonReducer.js
6496
+ function buttonReducer_toConsumableArray(arr) { return buttonReducer_arrayWithoutHoles(arr) || buttonReducer_iterableToArray(arr) || buttonReducer_unsupportedIterableToArray(arr) || buttonReducer_nonIterableSpread(); }
6497
 
6498
+ function buttonReducer_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
 
6499
 
6500
+ function buttonReducer_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return buttonReducer_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return buttonReducer_arrayLikeToArray(o, minLen); }
 
 
 
 
 
 
6501
 
6502
+ function buttonReducer_iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
 
 
 
 
 
 
 
6503
 
6504
+ function buttonReducer_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return buttonReducer_arrayLikeToArray(arr); }
 
 
 
 
 
6505
 
6506
+ function buttonReducer_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
6507
 
 
6508
 
6509
 
6510
+ var buttonReducer_initialStore = {
6511
+ buttons: {},
6512
+ groups: {},
6513
+ timeSchedules: {},
6514
+ settings: {},
6515
+ pageRules: {},
6516
+ _premium: false
6517
+ };
6518
+ function dataReducer() {
6519
+ var store = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : buttonReducer_initialStore;
6520
+ var action = arguments.length > 1 ? arguments[1] : undefined;
6521
+ if (action.type === buttonizer_constants["a" /* actionTypes */].INIT) return action.payload.buttons;
6522
+ return Object(immer_esm["b" /* produce */])(store, function (draftStore) {
6523
+ switch (action.type) {
6524
+ case buttonizer_constants["a" /* actionTypes */].buttons.ADD_RECORD:
6525
+ {
6526
+ draftStore[action.payload.record.id] = action.payload.record;
6527
+ break;
6528
+ }
6529
 
6530
+ case buttonizer_constants["a" /* actionTypes */].buttons.REMOVE_RECORD:
6531
+ {
6532
+ delete draftStore[action.payload.model_id];
6533
+ break;
6534
+ }
6535
 
6536
+ case buttonizer_constants["a" /* actionTypes */].buttons.SET_KEY_VALUE:
6537
+ {
6538
+ if (action.payload.value === "unset") {
6539
+ if (typeof draftStore[action.payload.id][action.payload.key] !== "undefined") delete draftStore[action.payload.id][action.payload.key];
6540
+ break;
6541
+ }
6542
 
6543
+ draftStore[action.payload.id][action.payload.key] = action.payload.value;
6544
+ break;
6545
+ }
6546
 
6547
+ case buttonizer_constants["a" /* actionTypes */].buttons.SET_KEY_FORMAT:
6548
+ {
6549
+ var format = buttonizer_constants["c" /* formats */][action.payload.format];
6550
+ if (!format) break;
6551
+ var parsedValue = format.format.apply(format, buttonReducer_toConsumableArray(action.payload.values));
6552
 
6553
+ if (parsedValue === "unset") {
6554
+ if (typeof draftStore[action.payload.id][action.payload.key] !== "undefined") delete draftStore[action.payload.id][action.payload.key];
6555
+ break;
6556
+ }
6557
 
6558
+ draftStore[action.payload.id][action.payload.key] = parsedValue;
6559
+ break;
6560
+ }
 
6561
 
6562
+ case buttonizer_constants["a" /* actionTypes */].ADD_RELATION:
6563
+ {
6564
+ draftStore[action.payload.button_id].parent = action.payload.group_id;
6565
+ break;
6566
+ }
6567
+
6568
+ case buttonizer_constants["a" /* actionTypes */].CHANGE_RELATION:
6569
+ {
6570
+ draftStore[action.payload.button_id].parent = action.payload.new_group_id;
6571
+ break;
6572
+ }
6573
+
6574
+ case buttonizer_constants["a" /* actionTypes */].REMOVE_RELATION:
6575
+ {
6576
+ draftStore[action.payload.button_id].parent = null;
6577
+ break;
6578
+ }
6579
+
6580
+ default:
6581
+ {
6582
+ return draftStore;
6583
+ }
 
 
 
 
 
 
 
 
 
6584
  }
6585
+ });
6586
  }
6587
+ // CONCATENATED MODULE: ./src/js/dashboard/store/index.js
6588
+
6589
+
6590
+
6591
+
6592
+
6593
+
6594
+
6595
+
6596
+
6597
+
6598
+
6599
  /**
6600
+ * Welcome to the Castore, proceed with caution
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6601
  */
6602
+
6603
+ var combinedReducers = Object(redux["c" /* combineReducers */])({
6604
+ saving: savingReducer,
6605
+ wp: wpReducer,
6606
+ timeSchedules: timeScheduleReducer,
6607
+ pageRules: pageRuleReducer,
6608
+ groups: groupReducer,
6609
+ buttons: dataReducer,
6610
+ misc: rootReducer,
6611
+ settings: settingReducer
6612
+ });
6613
  /**
6614
+ * Logs all actions and states after they are dispatched.
 
 
 
 
 
6615
  */
6616
+ // const logger = store => next => action => {
6617
+ // console.group(action.type);
6618
+ // console.info("dispatching", action);
6619
+ // let result = next(action);
6620
+ // console.log("next state", store.getState());
6621
+ // console.groupEnd();
6622
+ // return result;
6623
+ // };
 
 
6624
 
6625
+ var store_store = Object(redux["e" /* createStore */])(combinedReducers);
 
 
6626
 
6627
+ store_store.add = function (data, model) {
6628
+ return store_store.dispatch(Object(dataActions["a" /* addRecord */])(data, model));
6629
+ };
 
6630
 
6631
+ store_store.subscribe(savingMiddleware["a" /* save */]);
6632
+ /* harmony default export */ var dashboard_store = __webpack_exports__["a"] = (store_store);
6633
 
6634
  /***/ }),
6635
+ /* 35 */
6636
  /***/ (function(module, exports, __webpack_require__) {
6637
 
6638
+ var store = __webpack_require__(256)('wks');
6639
+ var uid = __webpack_require__(147);
6640
+ var Symbol = __webpack_require__(24).Symbol;
6641
+ var USE_SYMBOL = typeof Symbol == 'function';
6642
 
6643
+ var $exports = module.exports = function (name) {
6644
+ return store[name] || (store[name] =
6645
+ USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
 
 
 
 
 
 
 
6646
  };
6647
 
6648
+ $exports.store = store;
 
 
 
 
 
 
 
 
 
 
6649
 
6650
 
6651
  /***/ }),
6652
+ /* 36 */,
6653
+ /* 37 */
6654
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6655
 
6656
  "use strict";
6657
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _inheritsLoose; });
6658
+ function _inheritsLoose(subClass, superClass) {
6659
+ subClass.prototype = Object.create(superClass.prototype);
6660
+ subClass.prototype.constructor = subClass;
6661
+ subClass.__proto__ = superClass;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6662
  }
 
 
6663
 
6664
+ /***/ }),
6665
+ /* 38 */
6666
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
6667
 
6668
+ "use strict";
6669
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ownerDocument; });
6670
+ function ownerDocument(node) {
6671
+ return node && node.ownerDocument || document;
6672
  }
6673
 
6674
  /***/ }),
6675
+ /* 39 */
6676
  /***/ (function(module, exports) {
6677
 
6678
  var g;
6698
 
6699
 
6700
  /***/ }),
6701
+ /* 40 */
6702
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
6703
 
6704
+ "use strict";
6705
+ /* harmony import */ var _freeGlobal_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(280);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6706
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6707
 
6708
+ /** Detect free variable `self`. */
6709
+ var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
6710
 
6711
+ /** Used as a reference to the global object. */
6712
+ var root = _freeGlobal_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"] || freeSelf || Function('return this')();
6713
 
6714
+ /* harmony default export */ __webpack_exports__["a"] = (root);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6715
 
 
 
 
 
6716
 
6717
  /***/ }),
6718
+ /* 41 */
6719
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6720
 
6721
  "use strict";
6722
+ /* unused harmony export Immer */
6723
  /* unused harmony export applyPatches */
6724
  /* unused harmony export castDraft */
6725
  /* unused harmony export castImmutable */
6726
  /* unused harmony export createDraft */
6727
+ /* unused harmony export current */
6728
+ /* unused harmony export enableAllPlugins */
6729
+ /* unused harmony export enableES5 */
6730
+ /* unused harmony export enableMapSet */
6731
+ /* unused harmony export enablePatches */
6732
  /* unused harmony export finishDraft */
6733
+ /* unused harmony export freeze */
6734
  /* unused harmony export immerable */
6735
  /* unused harmony export isDraft */
6736
  /* unused harmony export isDraftable */
6737
  /* unused harmony export nothing */
6738
  /* unused harmony export original */
6739
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return ut; });
6740
  /* unused harmony export produceWithPatches */
6741
  /* unused harmony export setAutoFreeze */
6742
  /* unused harmony export setUseProxies */
6743
+ function t(t){for(var n=arguments.length,r=Array(n>1?n-1:0),e=1;e<n;e++)r[e-1]=arguments[e];if(false){ var i, o; }throw Error("[Immer] minified error nr: "+t+(r.length?" "+r.map((function(t){return"'"+t+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function n(t){return!!t&&!!t[Q]}function r(t){return!!t&&(function(t){if(!t||"object"!=typeof t)return!1;var n=Object.getPrototypeOf(t);return!n||n===Object.prototype}(t)||Array.isArray(t)||!!t[L]||!!t.constructor[L]||s(t)||v(t))}function e(r){return n(r)||t(23,r),r[Q].t}function i(t,n,r){void 0===r&&(r=!1),0===o(t)?(r?Object.keys:Z)(t).forEach((function(e){r&&"symbol"==typeof e||n(e,t[e],t)})):t.forEach((function(r,e){return n(e,r,t)}))}function o(t){var n=t[Q];return n?n.i>3?n.i-4:n.i:Array.isArray(t)?1:s(t)?2:v(t)?3:0}function u(t,n){return 2===o(t)?t.has(n):Object.prototype.hasOwnProperty.call(t,n)}function a(t,n){return 2===o(t)?t.get(n):t[n]}function f(t,n,r){var e=o(t);2===e?t.set(n,r):3===e?(t.delete(n),t.add(r)):t[n]=r}function c(t,n){return t===n?0!==t||1/t==1/n:t!=t&&n!=n}function s(t){return X&&t instanceof Map}function v(t){return q&&t instanceof Set}function p(t){return t.o||t.t}function l(t){if(Array.isArray(t))return Array.prototype.slice.call(t);var n=tt(t);delete n[Q];for(var r=Z(n),e=0;e<r.length;e++){var i=r[e],o=n[i];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(n[i]={configurable:!0,writable:!0,enumerable:o.enumerable,value:t[i]})}return Object.create(Object.getPrototypeOf(t),n)}function d(t,e){return void 0===e&&(e=!1),y(t)||n(t)||!r(t)?t:(o(t)>1&&(t.set=t.add=t.clear=t.delete=h),Object.freeze(t),e&&i(t,(function(t,n){return d(n,!0)}),!0),t)}function h(){t(2)}function y(t){return null==t||"object"!=typeof t||Object.isFrozen(t)}function b(n){var r=nt[n];return r||t(18,n),r}function m(t,n){nt[t]||(nt[t]=n)}function _(){return true||false,U}function j(t,n){n&&(b("Patches"),t.u=[],t.s=[],t.v=n)}function g(t){w(t),t.p.forEach(S),t.p=null}function w(t){t===U&&(U=t.l)}function O(t){return U={p:[],l:U,h:t,m:!0,_:0}}function S(t){var n=t[Q];0===n.i||1===n.i?n.j():n.g=!0}function P(n,e){e._=e.p.length;var i=e.p[0],o=void 0!==n&&n!==i;return e.h.O||b("ES5").S(e,n,o),o?(i[Q].P&&(g(e),t(4)),r(n)&&(n=M(e,n),e.l||x(e,n)),e.u&&b("Patches").M(i[Q],n,e.u,e.s)):n=M(e,i,[]),g(e),e.u&&e.v(e.u,e.s),n!==H?n:void 0}function M(t,n,r){if(y(n))return n;var e=n[Q];if(!e)return i(n,(function(i,o){return A(t,e,n,i,o,r)}),!0),n;if(e.A!==t)return n;if(!e.P)return x(t,e.t,!0),e.t;if(!e.I){e.I=!0,e.A._--;var o=4===e.i||5===e.i?e.o=l(e.k):e.o;i(3===e.i?new Set(o):o,(function(n,i){return A(t,e,o,n,i,r)})),x(t,o,!1),r&&t.u&&b("Patches").R(e,r,t.u,t.s)}return e.o}function A(e,i,o,a,c,s){if( false&&false,n(c)){var v=M(e,c,s&&i&&3!==i.i&&!u(i.D,a)?s.concat(a):void 0);if(f(o,a,v),!n(v))return;e.m=!1}if(r(c)&&!y(c)){if(!e.h.N&&e._<1)return;M(e,c),i&&i.A.l||x(e,c)}}function x(t,n,r){void 0===r&&(r=!1),t.h.N&&t.m&&d(n,r)}function z(t,n){var r=t[Q];return(r?p(r):t)[n]}function I(t,n){if(n in t)for(var r=Object.getPrototypeOf(t);r;){var e=Object.getOwnPropertyDescriptor(r,n);if(e)return e;r=Object.getPrototypeOf(r)}}function k(t){t.P||(t.P=!0,t.l&&k(t.l))}function E(t){t.o||(t.o=l(t.t))}function R(t,n,r){var e=s(n)?b("MapSet").T(n,r):v(n)?b("MapSet").F(n,r):t.O?function(t,n){var r=Array.isArray(t),e={i:r?1:0,A:n?n.A:_(),P:!1,I:!1,D:{},l:n,t:t,k:null,o:null,j:null,C:!1},i=e,o=rt;r&&(i=[e],o=et);var u=Proxy.revocable(i,o),a=u.revoke,f=u.proxy;return e.k=f,e.j=a,f}(n,r):b("ES5").J(n,r);return(r?r.A:_()).p.push(e),e}function D(e){return n(e)||t(22,e),function t(n){if(!r(n))return n;var e,u=n[Q],c=o(n);if(u){if(!u.P&&(u.i<4||!b("ES5").K(u)))return u.t;u.I=!0,e=N(n,c),u.I=!1}else e=N(n,c);return i(e,(function(n,r){u&&a(u.t,n)===r||f(e,n,t(r))})),3===c?new Set(e):e}(e)}function N(t,n){switch(n){case 2:return new Map(t);case 3:return Array.from(t)}return l(t)}function T(){function r(t,n){var r=s[t];return r?r.enumerable=n:s[t]=r={configurable:!0,enumerable:n,get:function(){var n=this[Q];return false&&false,rt.get(n,t)},set:function(n){var r=this[Q]; false&&false,rt.set(r,t,n)}},r}function e(t){for(var n=t.length-1;n>=0;n--){var r=t[n][Q];if(!r.P)switch(r.i){case 5:a(r)&&k(r);break;case 4:o(r)&&k(r)}}}function o(t){for(var n=t.t,r=t.k,e=Z(r),i=e.length-1;i>=0;i--){var o=e[i];if(o!==Q){var a=n[o];if(void 0===a&&!u(n,o))return!0;var f=r[o],s=f&&f[Q];if(s?s.t!==a:!c(f,a))return!0}}var v=!!n[Q];return e.length!==Z(n).length+(v?0:1)}function a(t){var n=t.k;if(n.length!==t.t.length)return!0;var r=Object.getOwnPropertyDescriptor(n,n.length-1);return!(!r||r.get)}function f(n){n.g&&t(3,JSON.stringify(p(n)))}var s={};m("ES5",{J:function(t,n){var e=Array.isArray(t),i=function(t,n){if(t){for(var e=Array(n.length),i=0;i<n.length;i++)Object.defineProperty(e,""+i,r(i,!0));return e}var o=tt(n);delete o[Q];for(var u=Z(o),a=0;a<u.length;a++){var f=u[a];o[f]=r(f,t||!!o[f].enumerable)}return Object.create(Object.getPrototypeOf(n),o)}(e,t),o={i:e?5:4,A:n?n.A:_(),P:!1,I:!1,D:{},l:n,t:t,k:i,o:null,g:!1,C:!1};return Object.defineProperty(i,Q,{value:o,writable:!0}),i},S:function(t,r,o){o?n(r)&&r[Q].A===t&&e(t.p):(t.u&&function t(n){if(n&&"object"==typeof n){var r=n[Q];if(r){var e=r.t,o=r.k,f=r.D,c=r.i;if(4===c)i(o,(function(n){n!==Q&&(void 0!==e[n]||u(e,n)?f[n]||t(o[n]):(f[n]=!0,k(r)))})),i(e,(function(t){void 0!==o[t]||u(o,t)||(f[t]=!1,k(r))}));else if(5===c){if(a(r)&&(k(r),f.length=!0),o.length<e.length)for(var s=o.length;s<e.length;s++)f[s]=!1;else for(var v=e.length;v<o.length;v++)f[v]=!0;for(var p=Math.min(o.length,e.length),l=0;l<p;l++)void 0===f[l]&&t(o[l])}}}}(t.p[0]),e(t.p))},K:function(t){return 4===t.i?o(t):a(t)}})}function F(){function e(t){if(!r(t))return t;if(Array.isArray(t))return t.map(e);if(s(t))return new Map(Array.from(t.entries()).map((function(t){return[t[0],e(t[1])]})));if(v(t))return new Set(Array.from(t).map(e));var n=Object.create(Object.getPrototypeOf(t));for(var i in t)n[i]=e(t[i]);return n}function f(t){return n(t)?e(t):t}var c="add";m("Patches",{$:function(n,r){return r.forEach((function(r){for(var i=r.path,u=r.op,f=n,s=0;s<i.length-1;s++){var v=o(f),p=i[s];0!==v&&1!==v||"__proto__"!==p&&"constructor"!==p||t(24),"function"==typeof f&&"prototype"===p&&t(24),"object"!=typeof(f=a(f,p))&&t(15,i.join("/"))}var l=o(f),d=e(r.value),h=i[i.length-1];switch(u){case"replace":switch(l){case 2:return f.set(h,d);case 3:t(16);default:return f[h]=d}case c:switch(l){case 1:return f.splice(h,0,d);case 2:return f.set(h,d);case 3:return f.add(d);default:return f[h]=d}case"remove":switch(l){case 1:return f.splice(h,1);case 2:return f.delete(h);case 3:return f.delete(r.value);default:return delete f[h]}default:t(17,u)}})),n},R:function(t,n,r,e){switch(t.i){case 0:case 4:case 2:return function(t,n,r,e){var o=t.t,s=t.o;i(t.D,(function(t,i){var v=a(o,t),p=a(s,t),l=i?u(o,t)?"replace":c:"remove";if(v!==p||"replace"!==l){var d=n.concat(t);r.push("remove"===l?{op:l,path:d}:{op:l,path:d,value:p}),e.push(l===c?{op:"remove",path:d}:"remove"===l?{op:c,path:d,value:f(v)}:{op:"replace",path:d,value:f(v)})}}))}(t,n,r,e);case 5:case 1:return function(t,n,r,e){var i=t.t,o=t.D,u=t.o;if(u.length<i.length){var a=[u,i];i=a[0],u=a[1];var s=[e,r];r=s[0],e=s[1]}for(var v=0;v<i.length;v++)if(o[v]&&u[v]!==i[v]){var p=n.concat([v]);r.push({op:"replace",path:p,value:f(u[v])}),e.push({op:"replace",path:p,value:f(i[v])})}for(var l=i.length;l<u.length;l++){var d=n.concat([l]);r.push({op:c,path:d,value:f(u[l])})}i.length<u.length&&e.push({op:"replace",path:n.concat(["length"]),value:i.length})}(t,n,r,e);case 3:return function(t,n,r,e){var i=t.t,o=t.o,u=0;i.forEach((function(t){if(!o.has(t)){var i=n.concat([u]);r.push({op:"remove",path:i,value:t}),e.unshift({op:c,path:i,value:t})}u++})),u=0,o.forEach((function(t){if(!i.has(t)){var o=n.concat([u]);r.push({op:c,path:o,value:t}),e.unshift({op:"remove",path:o,value:t})}u++}))}(t,n,r,e)}},M:function(t,n,r,e){r.push({op:"replace",path:[],value:n}),e.push({op:"replace",path:[],value:t.t})}})}function C(){function n(t,n){function r(){this.constructor=t}a(t,n),t.prototype=(r.prototype=n.prototype,new r)}function e(t){t.o||(t.D=new Map,t.o=new Map(t.t))}function o(t){t.o||(t.o=new Set,t.t.forEach((function(n){if(r(n)){var e=R(t.A.h,n,t);t.p.set(n,e),t.o.add(e)}else t.o.add(n)})))}function u(n){n.g&&t(3,JSON.stringify(p(n)))}var a=function(t,n){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var r in n)n.hasOwnProperty(r)&&(t[r]=n[r])})(t,n)},f=function(){function t(t,n){return this[Q]={i:2,l:n,A:n?n.A:_(),P:!1,I:!1,o:void 0,D:void 0,t:t,k:this,C:!1,g:!1},this}n(t,Map);var o=t.prototype;return Object.defineProperty(o,"size",{get:function(){return p(this[Q]).size}}),o.has=function(t){return p(this[Q]).has(t)},o.set=function(t,n){var r=this[Q];return u(r),p(r).has(t)&&p(r).get(t)===n||(e(r),k(r),r.D.set(t,!0),r.o.set(t,n),r.D.set(t,!0)),this},o.delete=function(t){if(!this.has(t))return!1;var n=this[Q];return u(n),e(n),k(n),n.D.set(t,!1),n.o.delete(t),!0},o.clear=function(){var t=this[Q];u(t),p(t).size&&(e(t),k(t),t.D=new Map,i(t.t,(function(n){t.D.set(n,!1)})),t.o.clear())},o.forEach=function(t,n){var r=this;p(this[Q]).forEach((function(e,i){t.call(n,r.get(i),i,r)}))},o.get=function(t){var n=this[Q];u(n);var i=p(n).get(t);if(n.I||!r(i))return i;if(i!==n.t.get(t))return i;var o=R(n.A.h,i,n);return e(n),n.o.set(t,o),o},o.keys=function(){return p(this[Q]).keys()},o.values=function(){var t,n=this,r=this.keys();return(t={})[V]=function(){return n.values()},t.next=function(){var t=r.next();return t.done?t:{done:!1,value:n.get(t.value)}},t},o.entries=function(){var t,n=this,r=this.keys();return(t={})[V]=function(){return n.entries()},t.next=function(){var t=r.next();if(t.done)return t;var e=n.get(t.value);return{done:!1,value:[t.value,e]}},t},o[V]=function(){return this.entries()},t}(),c=function(){function t(t,n){return this[Q]={i:3,l:n,A:n?n.A:_(),P:!1,I:!1,o:void 0,t:t,k:this,p:new Map,g:!1,C:!1},this}n(t,Set);var r=t.prototype;return Object.defineProperty(r,"size",{get:function(){return p(this[Q]).size}}),r.has=function(t){var n=this[Q];return u(n),n.o?!!n.o.has(t)||!(!n.p.has(t)||!n.o.has(n.p.get(t))):n.t.has(t)},r.add=function(t){var n=this[Q];return u(n),this.has(t)||(o(n),k(n),n.o.add(t)),this},r.delete=function(t){if(!this.has(t))return!1;var n=this[Q];return u(n),o(n),k(n),n.o.delete(t)||!!n.p.has(t)&&n.o.delete(n.p.get(t))},r.clear=function(){var t=this[Q];u(t),p(t).size&&(o(t),k(t),t.o.clear())},r.values=function(){var t=this[Q];return u(t),o(t),t.o.values()},r.entries=function(){var t=this[Q];return u(t),o(t),t.o.entries()},r.keys=function(){return this.values()},r[V]=function(){return this.values()},r.forEach=function(t,n){for(var r=this.values(),e=r.next();!e.done;)t.call(n,e.value,e.value,this),e=r.next()},t}();m("MapSet",{T:function(t,n){return new f(t,n)},F:function(t,n){return new c(t,n)}})}function J(){T(),C(),F()}function K(t){return t}function $(t){return t}var G,U,W="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),X="undefined"!=typeof Map,q="undefined"!=typeof Set,B="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,H=W?Symbol.for("immer-nothing"):((G={})["immer-nothing"]=!0,G),L=W?Symbol.for("immer-draftable"):"__$immer_draftable",Q=W?Symbol.for("immer-state"):"__$immer_state",V="undefined"!=typeof Symbol&&Symbol.iterator||"@@iterator",Y={0:"Illegal state",1:"Immer drafts cannot have computed properties",2:"This object has been frozen and should not be mutated",3:function(t){return"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+t},4:"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.",5:"Immer forbids circular references",6:"The first or second argument to `produce` must be a function",7:"The third argument to `produce` must be a function or undefined",8:"First argument to `createDraft` must be a plain object, an array, or an immerable object",9:"First argument to `finishDraft` must be a draft returned by `createDraft`",10:"The given draft is already finalized",11:"Object.defineProperty() cannot be used on an Immer draft",12:"Object.setPrototypeOf() cannot be used on an Immer draft",13:"Immer only supports deleting array indices",14:"Immer only supports setting array indices and the 'length' property",15:function(t){return"Cannot apply patch, path doesn't resolve: "+t},16:'Sets cannot have "replace" patches.',17:function(t){return"Unsupported patch operation: "+t},18:function(t){return"The plugin for '"+t+"' has not been loaded into Immer. To enable the plugin, import and call `enable"+t+"()` when initializing your application."},20:"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available",21:function(t){return"produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '"+t+"'"},22:function(t){return"'current' expects a draft, got: "+t},23:function(t){return"'original' expects a draft, got: "+t},24:"Patching reserved attributes like __proto__, prototype and constructor is not allowed"},Z="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:Object.getOwnPropertyNames,tt=Object.getOwnPropertyDescriptors||function(t){var n={};return Z(t).forEach((function(r){n[r]=Object.getOwnPropertyDescriptor(t,r)})),n},nt={},rt={get:function(t,n){if(n===Q)return t;var e=p(t);if(!u(e,n))return function(t,n,r){var e,i=I(n,r);return i?"value"in i?i.value:null===(e=i.get)||void 0===e?void 0:e.call(t.k):void 0}(t,e,n);var i=e[n];return t.I||!r(i)?i:i===z(t.t,n)?(E(t),t.o[n]=R(t.A.h,i,t)):i},has:function(t,n){return n in p(t)},ownKeys:function(t){return Reflect.ownKeys(p(t))},set:function(t,n,r){var e=I(p(t),n);if(null==e?void 0:e.set)return e.set.call(t.k,r),!0;if(!t.P){var i=z(p(t),n),o=null==i?void 0:i[Q];if(o&&o.t===r)return t.o[n]=r,t.D[n]=!1,!0;if(c(r,i)&&(void 0!==r||u(t.t,n)))return!0;E(t),k(t)}return t.o[n]=r,t.D[n]=!0,!0},deleteProperty:function(t,n){return void 0!==z(t.t,n)||n in t.t?(t.D[n]=!1,E(t),k(t)):delete t.D[n],t.o&&delete t.o[n],!0},getOwnPropertyDescriptor:function(t,n){var r=p(t),e=Reflect.getOwnPropertyDescriptor(r,n);return e?{writable:!0,configurable:1!==t.i||"length"!==n,enumerable:e.enumerable,value:r[n]}:e},defineProperty:function(){t(11)},getPrototypeOf:function(t){return Object.getPrototypeOf(t.t)},setPrototypeOf:function(){t(12)}},et={};i(rt,(function(t,n){et[t]=function(){return arguments[0]=arguments[0][0],n.apply(this,arguments)}})),et.deleteProperty=function(n,r){return false&&false,rt.deleteProperty.call(this,n[0],r)},et.set=function(n,r,e){return false&&false,rt.set.call(this,n[0],r,e,n[0])};var it=function(){function e(t){this.O=B,this.N=!0,"boolean"==typeof(null==t?void 0:t.useProxies)&&this.setUseProxies(t.useProxies),"boolean"==typeof(null==t?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),this.produce=this.produce.bind(this),this.produceWithPatches=this.produceWithPatches.bind(this)}var i=e.prototype;return i.produce=function(n,e,i){if("function"==typeof n&&"function"!=typeof e){var o=e;e=n;var u=this;return function(t){var n=this;void 0===t&&(t=o);for(var r=arguments.length,i=Array(r>1?r-1:0),a=1;a<r;a++)i[a-1]=arguments[a];return u.produce(t,(function(t){var r;return(r=e).call.apply(r,[n,t].concat(i))}))}}var a;if("function"!=typeof e&&t(6),void 0!==i&&"function"!=typeof i&&t(7),r(n)){var f=O(this),c=R(this,n,void 0),s=!0;try{a=e(c),s=!1}finally{s?g(f):w(f)}return"undefined"!=typeof Promise&&a instanceof Promise?a.then((function(t){return j(f,i),P(t,f)}),(function(t){throw g(f),t})):(j(f,i),P(a,f))}if(!n||"object"!=typeof n){if((a=e(n))===H)return;return void 0===a&&(a=n),this.N&&d(a,!0),a}t(21,n)},i.produceWithPatches=function(t,n){var r,e,i=this;return"function"==typeof t?function(n){for(var r=arguments.length,e=Array(r>1?r-1:0),o=1;o<r;o++)e[o-1]=arguments[o];return i.produceWithPatches(n,(function(n){return t.apply(void 0,[n].concat(e))}))}:[this.produce(t,n,(function(t,n){r=t,e=n})),r,e]},i.createDraft=function(e){r(e)||t(8),n(e)&&(e=D(e));var i=O(this),o=R(this,e,void 0);return o[Q].C=!0,w(i),o},i.finishDraft=function(n,r){var e=n&&n[Q]; false&&(false);var i=e.A;return j(i,r),P(void 0,i)},i.setAutoFreeze=function(t){this.N=t},i.setUseProxies=function(n){n&&!B&&t(20),this.O=n},i.applyPatches=function(t,r){var e;for(e=r.length-1;e>=0;e--){var i=r[e];if(0===i.path.length&&"replace"===i.op){t=i.value;break}}var o=b("Patches").$;return n(t)?o(t,r):this.produce(t,(function(t){return o(t,r.slice(e+1))}))},e}(),ot=new it,ut=ot.produce,at=ot.produceWithPatches.bind(ot),ft=ot.setAutoFreeze.bind(ot),ct=ot.setUseProxies.bind(ot),st=ot.applyPatches.bind(ot),vt=ot.createDraft.bind(ot),pt=ot.finishDraft.bind(ot);/* harmony default export */ __webpack_exports__["a"] = (ut);
6744
+ //# sourceMappingURL=immer.esm.js.map
6745
 
6746
 
6747
+ /***/ }),
6748
+ /* 42 */
6749
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
6750
 
6751
+ // Thank's IE8 for his funny defineProperty
6752
+ module.exports = !__webpack_require__(27)(function () {
6753
+ return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
6754
+ });
 
 
 
 
 
6755
 
 
 
 
6756
 
6757
+ /***/ }),
6758
+ /* 43 */
6759
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
6760
 
6761
+ var anObject = __webpack_require__(22);
6762
+ var IE8_DOM_DEFINE = __webpack_require__(470);
6763
+ var toPrimitive = __webpack_require__(104);
6764
+ var dP = Object.defineProperty;
6765
 
6766
+ exports.f = __webpack_require__(42) ? Object.defineProperty : function defineProperty(O, P, Attributes) {
6767
+ anObject(O);
6768
+ P = toPrimitive(P, true);
6769
+ anObject(Attributes);
6770
+ if (IE8_DOM_DEFINE) try {
6771
+ return dP(O, P, Attributes);
6772
+ } catch (e) { /* empty */ }
6773
+ if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
6774
+ if ('value' in Attributes) O[P] = Attributes.value;
6775
+ return O;
6776
+ };
6777
 
 
 
6778
 
6779
+ /***/ }),
6780
+ /* 44 */
6781
+ /***/ (function(module, exports, __webpack_require__) {
6782
 
6783
+ // 7.1.15 ToLength
6784
+ var toInteger = __webpack_require__(106);
6785
+ var min = Math.min;
6786
+ module.exports = function (it) {
6787
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
6788
+ };
6789
 
 
6790
 
6791
+ /***/ }),
6792
+ /* 45 */
6793
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
6794
 
6795
+ "use strict";
6796
+ /* unused harmony export MemoryRouter */
6797
+ /* unused harmony export Prompt */
6798
+ /* unused harmony export Redirect */
6799
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Route; });
6800
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return Router; });
6801
+ /* unused harmony export StaticRouter */
6802
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return Switch; });
6803
+ /* unused harmony export __HistoryContext */
6804
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return context; });
6805
+ /* unused harmony export generatePath */
6806
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return matchPath; });
6807
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return useHistory; });
6808
+ /* unused harmony export useLocation */
6809
+ /* unused harmony export useParams */
6810
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return useRouteMatch; });
6811
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return withRouter; });
6812
+ /* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(37);
6813
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
6814
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
6815
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3);
6816
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);
6817
+ /* harmony import */ var history__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(89);
6818
+ /* harmony import */ var mini_create_react_context__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(408);
6819
+ /* harmony import */ var tiny_invariant__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64);
6820
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(2);
6821
+ /* harmony import */ var path_to_regexp__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(410);
6822
+ /* harmony import */ var path_to_regexp__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(path_to_regexp__WEBPACK_IMPORTED_MODULE_7__);
6823
+ /* harmony import */ var react_is__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(144);
6824
+ /* harmony import */ var react_is__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(react_is__WEBPACK_IMPORTED_MODULE_8__);
6825
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(46);
6826
+ /* harmony import */ var hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(158);
6827
+ /* harmony import */ var hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_10__);
6828
 
 
 
 
 
 
 
 
 
6829
 
 
6830
 
 
 
 
 
6831
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6832
 
 
 
 
 
 
6833
 
 
 
 
6834
 
 
 
6835
 
 
 
 
 
6836
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6837
 
 
 
 
 
6838
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6839
 
 
 
 
 
 
 
6840
 
6841
+ // TODO: Replace with React.createContext once we can assume React 16+
 
6842
 
6843
+ var createNamedContext = function createNamedContext(name) {
6844
+ var context = Object(mini_create_react_context__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])();
6845
+ context.displayName = name;
6846
+ return context;
6847
+ };
6848
 
6849
+ var historyContext =
6850
+ /*#__PURE__*/
6851
+ createNamedContext("Router-History");
6852
 
6853
+ // TODO: Replace with React.createContext once we can assume React 16+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6854
 
6855
+ var createNamedContext$1 = function createNamedContext(name) {
6856
+ var context = Object(mini_create_react_context__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])();
6857
+ context.displayName = name;
6858
+ return context;
6859
+ };
6860
 
6861
+ var context =
6862
+ /*#__PURE__*/
6863
+ createNamedContext$1("Router");
 
 
6864
 
6865
+ /**
6866
+ * The public API for putting history on context.
6867
+ */
6868
 
6869
+ var Router =
6870
+ /*#__PURE__*/
6871
+ function (_React$Component) {
6872
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(Router, _React$Component);
 
 
 
 
6873
 
6874
+ Router.computeRootMatch = function computeRootMatch(pathname) {
6875
+ return {
6876
+ path: "/",
6877
+ url: "/",
6878
+ params: {},
6879
+ isExact: pathname === "/"
6880
+ };
6881
+ };
6882
 
6883
+ function Router(props) {
6884
+ var _this;
6885
 
6886
+ _this = _React$Component.call(this, props) || this;
6887
+ _this.state = {
6888
+ location: props.history.location
6889
+ }; // This is a bit of a hack. We have to start listening for location
6890
+ // changes here in the constructor in case there are any <Redirect>s
6891
+ // on the initial render. If there are, they will replace/push when
6892
+ // they mount and since cDM fires in children before parents, we may
6893
+ // get a new location before the <Router> is mounted.
6894
 
6895
+ _this._isMounted = false;
6896
+ _this._pendingLocation = null;
6897
 
6898
+ if (!props.staticContext) {
6899
+ _this.unlisten = props.history.listen(function (location) {
6900
+ if (_this._isMounted) {
6901
+ _this.setState({
6902
+ location: location
6903
+ });
6904
+ } else {
6905
+ _this._pendingLocation = location;
6906
+ }
6907
+ });
6908
  }
 
6909
 
6910
+ return _this;
6911
+ }
 
6912
 
6913
+ var _proto = Router.prototype;
 
6914
 
6915
+ _proto.componentDidMount = function componentDidMount() {
6916
+ this._isMounted = true;
6917
+
6918
+ if (this._pendingLocation) {
6919
+ this.setState({
6920
+ location: this._pendingLocation
6921
+ });
6922
  }
6923
  };
6924
 
6925
+ _proto.componentWillUnmount = function componentWillUnmount() {
6926
+ if (this.unlisten) this.unlisten();
 
 
6927
  };
6928
 
6929
+ _proto.render = function render() {
6930
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(context.Provider, {
6931
+ value: {
6932
+ history: this.props.history,
6933
+ location: this.state.location,
6934
+ match: Router.computeRootMatch(this.state.location.pathname),
6935
+ staticContext: this.props.staticContext
6936
+ }
6937
+ }, react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(historyContext.Provider, {
6938
+ children: this.props.children || null,
6939
+ value: this.props.history
6940
+ }));
6941
+ };
6942
 
6943
+ return Router;
6944
+ }(react__WEBPACK_IMPORTED_MODULE_1___default.a.Component);
 
 
6945
 
6946
+ if (false) {}
 
 
 
6947
 
6948
+ /**
6949
+ * The public API for a <Router> that stores location in memory.
6950
+ */
 
 
6951
 
6952
+ var MemoryRouter =
6953
+ /*#__PURE__*/
6954
+ function (_React$Component) {
6955
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(MemoryRouter, _React$Component);
 
6956
 
6957
+ function MemoryRouter() {
6958
+ var _this;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6959
 
6960
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
6961
+ args[_key] = arguments[_key];
6962
+ }
6963
 
6964
+ _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
6965
+ _this.history = Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createMemoryHistory */ "d"])(_this.props);
6966
+ return _this;
6967
  }
6968
 
6969
+ var _proto = MemoryRouter.prototype;
 
6970
 
6971
+ _proto.render = function render() {
6972
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(Router, {
6973
+ history: this.history,
6974
+ children: this.props.children
6975
+ });
6976
+ };
6977
 
6978
+ return MemoryRouter;
6979
+ }(react__WEBPACK_IMPORTED_MODULE_1___default.a.Component);
 
 
6980
 
6981
+ if (false) {}
6982
 
6983
+ var Lifecycle =
6984
+ /*#__PURE__*/
6985
+ function (_React$Component) {
6986
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(Lifecycle, _React$Component);
6987
 
6988
+ function Lifecycle() {
6989
+ return _React$Component.apply(this, arguments) || this;
 
6990
  }
6991
 
6992
+ var _proto = Lifecycle.prototype;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6993
 
6994
+ _proto.componentDidMount = function componentDidMount() {
6995
+ if (this.props.onMount) this.props.onMount.call(this, this);
6996
+ };
6997
 
6998
+ _proto.componentDidUpdate = function componentDidUpdate(prevProps) {
6999
+ if (this.props.onUpdate) this.props.onUpdate.call(this, this, prevProps);
7000
+ };
 
7001
 
7002
+ _proto.componentWillUnmount = function componentWillUnmount() {
7003
+ if (this.props.onUnmount) this.props.onUnmount.call(this, this);
7004
+ };
7005
 
7006
+ _proto.render = function render() {
7007
+ return null;
7008
+ };
7009
 
7010
+ return Lifecycle;
7011
+ }(react__WEBPACK_IMPORTED_MODULE_1___default.a.Component);
 
 
 
7012
 
7013
+ /**
7014
+ * The public API for prompting the user before navigating away from a screen.
7015
+ */
7016
 
7017
+ function Prompt(_ref) {
7018
+ var message = _ref.message,
7019
+ _ref$when = _ref.when,
7020
+ when = _ref$when === void 0 ? true : _ref$when;
7021
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(context.Consumer, null, function (context) {
7022
+ !context ? false ? undefined : Object(tiny_invariant__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(false) : void 0;
7023
+ if (!when || context.staticContext) return null;
7024
+ var method = context.history.block;
7025
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(Lifecycle, {
7026
+ onMount: function onMount(self) {
7027
+ self.release = method(message);
7028
+ },
7029
+ onUpdate: function onUpdate(self, prevProps) {
7030
+ if (prevProps.message !== message) {
7031
+ self.release();
7032
+ self.release = method(message);
7033
+ }
7034
+ },
7035
+ onUnmount: function onUnmount(self) {
7036
+ self.release();
7037
+ },
7038
+ message: message
7039
+ });
7040
  });
 
7041
  }
7042
 
7043
+ if (false) { var messageType; }
 
 
 
7044
 
7045
+ var cache = {};
7046
+ var cacheLimit = 10000;
7047
+ var cacheCount = 0;
7048
 
7049
+ function compilePath(path) {
7050
+ if (cache[path]) return cache[path];
7051
+ var generator = path_to_regexp__WEBPACK_IMPORTED_MODULE_7___default.a.compile(path);
7052
 
7053
+ if (cacheCount < cacheLimit) {
7054
+ cache[path] = generator;
7055
+ cacheCount++;
7056
+ }
7057
 
7058
+ return generator;
7059
+ }
7060
+ /**
7061
+ * Public API for generating a URL pathname from a path and parameters.
7062
+ */
7063
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7064
 
7065
+ function generatePath(path, params) {
7066
+ if (path === void 0) {
7067
+ path = "/";
7068
  }
 
7069
 
7070
+ if (params === void 0) {
7071
+ params = {};
 
7072
  }
7073
 
7074
+ return path === "/" ? path : compilePath(path)(params, {
7075
+ pretty: true
7076
+ });
7077
  }
7078
 
7079
+ /**
7080
+ * The public API for navigating programmatically with a component.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7081
  */
7082
 
7083
+ function Redirect(_ref) {
7084
+ var computedMatch = _ref.computedMatch,
7085
+ to = _ref.to,
7086
+ _ref$push = _ref.push,
7087
+ push = _ref$push === void 0 ? false : _ref$push;
7088
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(context.Consumer, null, function (context) {
7089
+ !context ? false ? undefined : Object(tiny_invariant__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(false) : void 0;
7090
+ var history = context.history,
7091
+ staticContext = context.staticContext;
7092
+ var method = push ? history.push : history.replace;
7093
+ var location = Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createLocation */ "c"])(computedMatch ? typeof to === "string" ? generatePath(to, computedMatch.params) : Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])({}, to, {
7094
+ pathname: generatePath(to.pathname, computedMatch.params)
7095
+ }) : to); // When rendering in a static context,
7096
+ // set the new location immediately.
 
 
 
 
 
 
7097
 
7098
+ if (staticContext) {
7099
+ method(location);
7100
+ return null;
7101
  }
7102
 
7103
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(Lifecycle, {
7104
+ onMount: function onMount() {
7105
+ method(location);
7106
+ },
7107
+ onUpdate: function onUpdate(self, prevProps) {
7108
+ var prevLocation = Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createLocation */ "c"])(prevProps.to);
 
 
 
 
 
 
 
 
 
7109
 
7110
+ if (!Object(history__WEBPACK_IMPORTED_MODULE_3__[/* locationsAreEqual */ "f"])(prevLocation, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])({}, location, {
7111
+ key: prevLocation.key
7112
+ }))) {
7113
+ method(location);
7114
+ }
7115
+ },
7116
+ to: to
7117
+ });
7118
+ });
7119
+ }
7120
 
7121
+ if (false) {}
7122
 
7123
+ var cache$1 = {};
7124
+ var cacheLimit$1 = 10000;
7125
+ var cacheCount$1 = 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7126
 
7127
+ function compilePath$1(path, options) {
7128
+ var cacheKey = "" + options.end + options.strict + options.sensitive;
7129
+ var pathCache = cache$1[cacheKey] || (cache$1[cacheKey] = {});
7130
+ if (pathCache[path]) return pathCache[path];
7131
+ var keys = [];
7132
+ var regexp = path_to_regexp__WEBPACK_IMPORTED_MODULE_7___default()(path, keys, options);
7133
+ var result = {
7134
+ regexp: regexp,
7135
+ keys: keys
7136
+ };
7137
 
7138
+ if (cacheCount$1 < cacheLimit$1) {
7139
+ pathCache[path] = result;
7140
+ cacheCount$1++;
 
 
 
 
 
 
 
7141
  }
7142
+
7143
+ return result;
7144
+ }
7145
+ /**
7146
+ * Public API for matching a URL pathname to a path.
7147
  */
7148
 
 
 
 
 
 
 
 
 
7149
 
7150
+ function matchPath(pathname, options) {
7151
+ if (options === void 0) {
7152
+ options = {};
7153
  }
7154
 
7155
+ if (typeof options === "string" || Array.isArray(options)) {
7156
+ options = {
7157
+ path: options
7158
+ };
 
 
7159
  }
7160
 
7161
+ var _options = options,
7162
+ path = _options.path,
7163
+ _options$exact = _options.exact,
7164
+ exact = _options$exact === void 0 ? false : _options$exact,
7165
+ _options$strict = _options.strict,
7166
+ strict = _options$strict === void 0 ? false : _options$strict,
7167
+ _options$sensitive = _options.sensitive,
7168
+ sensitive = _options$sensitive === void 0 ? false : _options$sensitive;
7169
+ var paths = [].concat(path);
7170
+ return paths.reduce(function (matched, path) {
7171
+ if (!path && path !== "") return null;
7172
+ if (matched) return matched;
7173
 
7174
+ var _compilePath = compilePath$1(path, {
7175
+ end: exact,
7176
+ strict: strict,
7177
+ sensitive: sensitive
7178
+ }),
7179
+ regexp = _compilePath.regexp,
7180
+ keys = _compilePath.keys;
7181
 
7182
+ var match = regexp.exec(pathname);
7183
+ if (!match) return null;
7184
+ var url = match[0],
7185
+ values = match.slice(1);
7186
+ var isExact = pathname === url;
7187
+ if (exact && !isExact) return null;
7188
+ return {
7189
+ path: path,
7190
+ // the path used to match
7191
+ url: path === "/" && url === "" ? "/" : url,
7192
+ // the matched portion of the URL
7193
+ isExact: isExact,
7194
+ // whether or not we matched exactly
7195
+ params: keys.reduce(function (memo, key, index) {
7196
+ memo[key.name] = values[index];
7197
+ return memo;
7198
+ }, {})
7199
+ };
7200
+ }, null);
7201
  }
7202
 
7203
+ function isEmptyChildren(children) {
7204
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.Children.count(children) === 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7205
  }
7206
 
7207
+ function evalChildrenDev(children, props, path) {
7208
+ var value = children(props);
7209
+ false ? undefined : void 0;
7210
+ return value || null;
7211
  }
7212
+ /**
7213
+ * The public API for matching a single path and rendering.
7214
+ */
7215
 
 
 
 
 
 
 
 
 
 
7216
 
7217
+ var Route =
7218
+ /*#__PURE__*/
7219
+ function (_React$Component) {
7220
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(Route, _React$Component);
7221
 
7222
+ function Route() {
7223
+ return _React$Component.apply(this, arguments) || this;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7224
  }
7225
 
7226
+ var _proto = Route.prototype;
 
7227
 
7228
+ _proto.render = function render() {
7229
+ var _this = this;
 
 
7230
 
7231
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(context.Consumer, null, function (context$1) {
7232
+ !context$1 ? false ? undefined : Object(tiny_invariant__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(false) : void 0;
7233
+ var location = _this.props.location || context$1.location;
7234
+ var match = _this.props.computedMatch ? _this.props.computedMatch // <Switch> already computed the match for us
7235
+ : _this.props.path ? matchPath(location.pathname, _this.props) : context$1.match;
7236
 
7237
+ var props = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])({}, context$1, {
7238
+ location: location,
7239
+ match: match
7240
+ });
7241
 
7242
+ var _this$props = _this.props,
7243
+ children = _this$props.children,
7244
+ component = _this$props.component,
7245
+ render = _this$props.render; // Preact uses an empty array as children by
7246
+ // default, so use null if that's the case.
7247
 
7248
+ if (Array.isArray(children) && children.length === 0) {
7249
+ children = null;
7250
+ }
7251
 
7252
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(context.Provider, {
7253
+ value: props
7254
+ }, props.match ? children ? typeof children === "function" ? false ? undefined : children(props) : children : component ? react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(component, props) : render ? render(props) : null : typeof children === "function" ? false ? undefined : children(props) : null);
7255
+ });
7256
+ };
7257
 
7258
+ return Route;
7259
+ }(react__WEBPACK_IMPORTED_MODULE_1___default.a.Component);
7260
 
7261
+ if (false) {}
 
7262
 
7263
+ function addLeadingSlash(path) {
7264
+ return path.charAt(0) === "/" ? path : "/" + path;
 
 
 
7265
  }
7266
 
7267
+ function addBasename(basename, location) {
7268
+ if (!basename) return location;
7269
+ return Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])({}, location, {
7270
+ pathname: addLeadingSlash(basename) + location.pathname
7271
+ });
7272
  }
7273
 
7274
+ function stripBasename(basename, location) {
7275
+ if (!basename) return location;
7276
+ var base = addLeadingSlash(basename);
7277
+ if (location.pathname.indexOf(base) !== 0) return location;
7278
+ return Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])({}, location, {
7279
+ pathname: location.pathname.substr(base.length)
7280
+ });
7281
+ }
 
 
 
 
 
7282
 
7283
+ function createURL(location) {
7284
+ return typeof location === "string" ? location : Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createPath */ "e"])(location);
7285
+ }
7286
 
7287
+ function staticHandler(methodName) {
7288
+ return function () {
7289
+ false ? undefined : Object(tiny_invariant__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(false) ;
7290
+ };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7291
  }
7292
 
7293
+ function noop() {}
7294
+ /**
7295
+ * The public top-level API for a "static" <Router>, so-called because it
7296
+ * can't actually change the current location. Instead, it just records
7297
+ * location changes in a context object. Useful mainly in testing and
7298
+ * server-rendering scenarios.
7299
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7300
 
 
 
 
 
 
7301
 
7302
+ var StaticRouter =
7303
+ /*#__PURE__*/
7304
+ function (_React$Component) {
7305
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(StaticRouter, _React$Component);
7306
 
7307
+ function StaticRouter() {
7308
+ var _this;
7309
 
7310
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
7311
+ args[_key] = arguments[_key];
 
7312
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7313
 
7314
+ _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
7315
 
7316
+ _this.handlePush = function (location) {
7317
+ return _this.navigateTo(location, "PUSH");
 
 
 
 
 
 
 
 
 
 
 
7318
  };
 
 
 
 
 
 
 
 
 
 
 
 
7319
 
7320
+ _this.handleReplace = function (location) {
7321
+ return _this.navigateTo(location, "REPLACE");
7322
+ };
 
 
 
 
7323
 
7324
+ _this.handleListen = function () {
7325
+ return noop;
7326
+ };
 
 
 
 
7327
 
7328
+ _this.handleBlock = function () {
7329
+ return noop;
7330
+ };
7331
 
7332
+ return _this;
7333
+ }
 
 
7334
 
7335
+ var _proto = StaticRouter.prototype;
 
 
 
 
 
 
 
7336
 
7337
+ _proto.navigateTo = function navigateTo(location, action) {
7338
+ var _this$props = this.props,
7339
+ _this$props$basename = _this$props.basename,
7340
+ basename = _this$props$basename === void 0 ? "" : _this$props$basename,
7341
+ _this$props$context = _this$props.context,
7342
+ context = _this$props$context === void 0 ? {} : _this$props$context;
7343
+ context.action = action;
7344
+ context.location = addBasename(basename, Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createLocation */ "c"])(location));
7345
+ context.url = createURL(context.location);
7346
  };
7347
 
7348
+ _proto.render = function render() {
7349
+ var _this$props2 = this.props,
7350
+ _this$props2$basename = _this$props2.basename,
7351
+ basename = _this$props2$basename === void 0 ? "" : _this$props2$basename,
7352
+ _this$props2$context = _this$props2.context,
7353
+ context = _this$props2$context === void 0 ? {} : _this$props2$context,
7354
+ _this$props2$location = _this$props2.location,
7355
+ location = _this$props2$location === void 0 ? "/" : _this$props2$location,
7356
+ rest = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_9__[/* default */ "a"])(_this$props2, ["basename", "context", "location"]);
7357
 
7358
+ var history = {
7359
+ createHref: function createHref(path) {
7360
+ return addLeadingSlash(basename + createURL(path));
7361
+ },
7362
+ action: "POP",
7363
+ location: stripBasename(basename, Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createLocation */ "c"])(location)),
7364
+ push: this.handlePush,
7365
+ replace: this.handleReplace,
7366
+ go: staticHandler("go"),
7367
+ goBack: staticHandler("goBack"),
7368
+ goForward: staticHandler("goForward"),
7369
+ listen: this.handleListen,
7370
+ block: this.handleBlock
7371
+ };
7372
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(Router, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])({}, rest, {
7373
+ history: history,
7374
+ staticContext: context
7375
+ }));
7376
  };
7377
 
7378
+ return StaticRouter;
7379
+ }(react__WEBPACK_IMPORTED_MODULE_1___default.a.Component);
 
 
 
 
 
 
7380
 
7381
+ if (false) {}
 
 
7382
 
7383
+ /**
7384
+ * The public API for rendering the first <Route> that matches.
7385
+ */
7386
 
7387
+ var Switch =
7388
+ /*#__PURE__*/
7389
+ function (_React$Component) {
7390
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(Switch, _React$Component);
 
7391
 
7392
+ function Switch() {
7393
+ return _React$Component.apply(this, arguments) || this;
7394
+ }
7395
 
7396
+ var _proto = Switch.prototype;
 
7397
 
7398
+ _proto.render = function render() {
7399
  var _this = this;
7400
 
7401
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(context.Consumer, null, function (context) {
7402
+ !context ? false ? undefined : Object(tiny_invariant__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(false) : void 0;
7403
+ var location = _this.props.location || context.location;
7404
+ var element, match; // We use React.Children.forEach instead of React.Children.toArray().find()
7405
+ // here because toArray adds keys to all child elements and we do not want
7406
+ // to trigger an unmount/remount for two <Route>s that render the same
7407
+ // component at different URLs.
 
 
 
7408
 
7409
+ react__WEBPACK_IMPORTED_MODULE_1___default.a.Children.forEach(_this.props.children, function (child) {
7410
+ if (match == null && react__WEBPACK_IMPORTED_MODULE_1___default.a.isValidElement(child)) {
7411
+ element = child;
7412
+ var path = child.props.path || child.props.from;
7413
+ match = path ? matchPath(location.pathname, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])({}, child.props, {
7414
+ path: path
7415
+ })) : context.match;
7416
+ }
7417
+ });
7418
+ return match ? react__WEBPACK_IMPORTED_MODULE_1___default.a.cloneElement(element, {
7419
+ location: location,
7420
+ computedMatch: match
7421
+ }) : null;
7422
+ });
7423
  };
7424
 
7425
+ return Switch;
7426
+ }(react__WEBPACK_IMPORTED_MODULE_1___default.a.Component);
 
 
7427
 
7428
+ if (false) {}
 
 
 
 
 
7429
 
7430
+ /**
7431
+ * A public higher-order component to access the imperative API
7432
+ */
7433
 
7434
+ function withRouter(Component) {
7435
+ var displayName = "withRouter(" + (Component.displayName || Component.name) + ")";
7436
 
7437
+ var C = function C(props) {
7438
+ var wrappedComponentRef = props.wrappedComponentRef,
7439
+ remainingProps = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_9__[/* default */ "a"])(props, ["wrappedComponentRef"]);
 
 
 
7440
 
7441
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(context.Consumer, null, function (context) {
7442
+ !context ? false ? undefined : Object(tiny_invariant__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(false) : void 0;
7443
+ return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(Component, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])({}, remainingProps, context, {
7444
+ ref: wrappedComponentRef
7445
+ }));
7446
+ });
7447
  };
7448
 
7449
+ C.displayName = displayName;
7450
+ C.WrappedComponent = Component;
7451
 
7452
+ if (false) {}
 
 
 
7453
 
7454
+ return hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_10___default()(C, Component);
 
 
 
 
7455
  }
7456
 
7457
+ var useContext = react__WEBPACK_IMPORTED_MODULE_1___default.a.useContext;
7458
+ function useHistory() {
7459
+ if (false) {}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7460
 
7461
+ return useContext(historyContext);
 
 
7462
  }
7463
+ function useLocation() {
7464
+ if (false) {}
7465
 
7466
+ return useContext(context).location;
 
 
 
 
 
 
 
 
 
 
 
 
 
7467
  }
7468
+ function useParams() {
7469
+ if (false) {}
7470
 
7471
+ var match = useContext(context).match;
7472
+ return match ? match.params : {};
 
 
 
 
 
 
 
 
 
 
 
 
7473
  }
7474
+ function useRouteMatch(path) {
7475
+ if (false) {}
7476
 
7477
+ var location = useLocation();
7478
+ var match = useContext(context).match;
7479
+ return path ? matchPath(location.pathname, path) : match;
7480
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7481
 
7482
+ if (false) { var secondaryBuildName, initialBuildName, buildNames, key, global; }
7483
 
 
7484
 
7485
+ //# sourceMappingURL=react-router.js.map
 
 
7486
 
7487
 
7488
+ /***/ }),
7489
+ /* 46 */
7490
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
7491
 
7492
+ "use strict";
7493
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutPropertiesLoose; });
7494
+ function _objectWithoutPropertiesLoose(source, excluded) {
7495
+ if (source == null) return {};
7496
+ var target = {};
7497
+ var sourceKeys = Object.keys(source);
7498
+ var key, i;
7499
 
7500
+ for (i = 0; i < sourceKeys.length; i++) {
7501
+ key = sourceKeys[i];
7502
+ if (excluded.indexOf(key) >= 0) continue;
7503
+ target[key] = source[key];
 
 
 
 
 
 
 
7504
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7505
 
7506
+ return target;
 
7507
  }
7508
 
7509
+ /***/ }),
7510
+ /* 47 */
7511
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
7512
 
7513
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
 
 
 
7514
 
7515
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
 
7516
 
7517
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
7518
 
7519
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
 
 
 
 
7520
 
7521
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
7522
 
7523
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
 
7524
 
7525
+ /* global module, require */
7526
+ var defaults = __webpack_require__(305);
 
 
 
 
 
7527
 
7528
+ var merge = __webpack_require__(32);
 
 
 
7529
 
7530
+ module.exports = {
7531
+ frontend: {
7532
+ styling: {
7533
+ get button() {
7534
+ return merge({}, defaults.styling.button);
7535
+ },
7536
 
7537
+ get group() {
7538
+ return merge({}, defaults.styling.button, defaults.styling.group);
7539
+ }
7540
 
7541
+ },
7542
+ data: {
7543
+ get button() {
7544
+ return merge({}, defaults.data.button);
7545
+ },
7546
 
7547
+ get icon() {
7548
+ return merge({}, defaults.data.icon);
7549
+ },
 
7550
 
7551
+ get group() {
7552
+ return merge({}, defaults.data.button, defaults.data.group);
7553
+ },
7554
 
7555
+ get menu_button() {
7556
+ return merge({}, defaults.data.group);
7557
+ },
7558
 
7559
+ get edit_button() {
7560
+ return merge({}, defaults.data.edit_button);
7561
+ }
7562
 
 
 
7563
  }
7564
+ },
7565
+ dashboard: {
7566
+ get button() {
7567
+ return merge({}, defaults.data.button, defaults.styling.button);
7568
+ },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7569
 
7570
+ get group() {
7571
+ return merge({}, defaults.data.group, defaults.styling.button, defaults.styling.group);
7572
+ },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7573
 
7574
+ get formatted() {
7575
+ return Object.entries(merge({}, defaults.data.group, defaults.data.button, defaults.styling.button, defaults.styling.group)).filter(function (entry) {
7576
+ return Array.isArray(entry[1]);
7577
+ }).map(function (_ref) {
7578
+ var _ref2 = _slicedToArray(_ref, 1),
7579
+ key = _ref2[0];
7580
 
7581
+ return key;
7582
+ });
7583
+ }
7584
 
7585
+ }
 
 
 
 
 
 
 
7586
  };
7587
 
7588
+ /***/ }),
7589
+ /* 48 */
7590
+ /***/ (function(module, exports) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7591
 
7592
+ /**
7593
+ * Checks if `value` is the
7594
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
7595
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
7596
+ *
7597
+ * @static
7598
+ * @memberOf _
7599
+ * @since 0.1.0
7600
+ * @category Lang
7601
+ * @param {*} value The value to check.
7602
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
7603
+ * @example
7604
+ *
7605
+ * _.isObject({});
7606
+ * // => true
7607
+ *
7608
+ * _.isObject([1, 2, 3]);
7609
+ * // => true
7610
+ *
7611
+ * _.isObject(_.noop);
7612
+ * // => true
7613
+ *
7614
+ * _.isObject(null);
7615
+ * // => false
7616
+ */
7617
+ function isObject(value) {
7618
+ var type = typeof value;
7619
+ return value != null && (type == 'object' || type == 'function');
7620
+ }
7621
 
7622
+ module.exports = isObject;
 
7623
 
7624
 
7625
+ /***/ }),
7626
+ /* 49 */
7627
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
7628
 
7629
+ var freeGlobal = __webpack_require__(199);
7630
 
7631
+ /** Detect free variable `self`. */
7632
+ var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
 
7633
 
7634
+ /** Used as a reference to the global object. */
7635
+ var root = freeGlobal || freeSelf || Function('return this')();
7636
 
7637
+ module.exports = root;
 
 
7638
 
 
 
 
 
 
7639
 
7640
+ /***/ }),
7641
+ /* 50 */
7642
+ /***/ (function(module, exports, __webpack_require__) {
7643
 
7644
+ // 7.1.13 ToObject(argument)
7645
+ var defined = __webpack_require__(105);
7646
+ module.exports = function (it) {
7647
+ return Object(defined(it));
7648
+ };
7649
 
 
 
 
 
 
7650
 
7651
+ /***/ }),
7652
+ /* 51 */
7653
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
7654
 
7655
+ "use strict";
7656
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return captureException; });
7657
+ /* unused harmony export captureMessage */
7658
+ /* unused harmony export captureEvent */
7659
+ /* unused harmony export configureScope */
7660
+ /* unused harmony export addBreadcrumb */
7661
+ /* unused harmony export setContext */
7662
+ /* unused harmony export setExtras */
7663
+ /* unused harmony export setTags */
7664
+ /* unused harmony export setExtra */
7665
+ /* unused harmony export setTag */
7666
+ /* unused harmony export setUser */
7667
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return withScope; });
7668
+ /* unused harmony export _callOnClient */
7669
+ /* unused harmony export startTransaction */
7670
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);
7671
+ /* harmony import */ var _sentry_hub__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(905);
7672
 
 
 
 
 
 
 
 
 
 
7673
 
7674
+ /**
7675
+ * This calls a function on the current hub.
7676
+ * @param method function to call on hub.
7677
+ * @param args to pass to function.
7678
+ */
7679
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
7680
+ function callOnHub(method) {
7681
+ var args = [];
7682
+ for (var _i = 1; _i < arguments.length; _i++) {
7683
+ args[_i - 1] = arguments[_i];
7684
  }
7685
+ var hub = Object(_sentry_hub__WEBPACK_IMPORTED_MODULE_1__[/* getCurrentHub */ "a"])();
7686
+ if (hub && hub[method]) {
7687
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
7688
+ return hub[method].apply(hub, Object(tslib__WEBPACK_IMPORTED_MODULE_0__[/* __spread */ "d"])(args));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7689
  }
7690
+ throw new Error("No hub defined or " + method + " was not found on the hub, please open a bug report.");
7691
+ }
7692
+ /**
7693
+ * Captures an exception event and sends it to Sentry.
7694
+ *
7695
+ * @param exception An exception-like object.
7696
+ * @returns The generated eventId.
7697
+ */
7698
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types
7699
+ function captureException(exception, captureContext) {
7700
+ var syntheticException;
7701
+ try {
7702
+ throw new Error('Sentry syntheticException');
7703
  }
7704
+ catch (exception) {
7705
+ syntheticException = exception;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7706
  }
7707
  return callOnHub('captureException', exception, {
7708
+ captureContext: captureContext,
7709
  originalException: exception,
7710
  syntheticException: syntheticException,
7711
  });
7717
  * @param level Define the level of the message.
7718
  * @returns The generated eventId.
7719
  */
7720
+ function captureMessage(message, captureContext) {
7721
  var syntheticException;
7722
  try {
7723
  throw new Error(message);
7725
  catch (exception) {
7726
  syntheticException = exception;
7727
  }
7728
+ // This is necessary to provide explicit scopes upgrade, without changing the original
7729
+ // arity of the `captureMessage(message, level)` method.
7730
+ var level = typeof captureContext === 'string' ? captureContext : undefined;
7731
+ var context = typeof captureContext !== 'string' ? { captureContext: captureContext } : undefined;
7732
+ return callOnHub('captureMessage', message, level, Object(tslib__WEBPACK_IMPORTED_MODULE_0__[/* __assign */ "a"])({ originalException: message, syntheticException: syntheticException }, context));
7733
  }
7734
  /**
7735
  * Captures a manually created event and sends it to Sentry.
7761
  /**
7762
  * Sets context data with the given name.
7763
  * @param name of the context
7764
+ * @param context Any kind of data. This data will be normalized.
7765
  */
7766
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
7767
  function setContext(name, context) {
7768
  callOnHub('setContext', name, context);
7769
  }
7784
  /**
7785
  * Set key:value that will be sent as extra data with the event.
7786
  * @param key String of extra
7787
+ * @param extra Any kind of data. This data will be normalized.
7788
  */
7789
  function setExtra(key, extra) {
7790
  callOnHub('setExtra', key, extra);
7831
  * @param args Arguments to pass to the client/fontend.
7832
  * @hidden
7833
  */
7834
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
7835
  function _callOnClient(method) {
7836
  var args = [];
7837
  for (var _i = 1; _i < arguments.length; _i++) {
7838
  args[_i - 1] = arguments[_i];
7839
  }
7840
+ callOnHub.apply(void 0, Object(tslib__WEBPACK_IMPORTED_MODULE_0__[/* __spread */ "d"])(['_invokeClient', method], args));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7841
  }
7842
  /**
7843
+ * Starts a new `Transaction` and returns it. This is the entry point to manual tracing instrumentation.
 
7844
  *
7845
+ * A tree structure can be built by adding child spans to the transaction, and child spans to other spans. To start a
7846
+ * new child span within the transaction or any span, call the respective `.startChild()` method.
 
 
 
 
 
 
 
7847
  *
7848
+ * Every child span must be finished before the transaction is finished, otherwise the unfinished spans are discarded.
 
 
 
 
 
 
 
 
7849
  *
7850
+ * The transaction must be finished with a call to its `.finish()` method, at which point the transaction with all its
7851
+ * finished child spans will be sent to Sentry.
 
 
 
 
 
 
 
7852
  *
7853
+ * @param context Properties of the new `Transaction`.
7854
+ * @param customSamplingContext Information given to the transaction sampling function (along with context-dependent
7855
+ * default values). See {@link Options.tracesSampler}.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7856
  *
7857
+ * @returns The transaction which was just started
 
7858
  */
7859
+ function startTransaction(context, customSamplingContext) {
7860
+ return callOnHub('startTransaction', Object(tslib__WEBPACK_IMPORTED_MODULE_0__[/* __assign */ "a"])({}, context), customSamplingContext);
7861
  }
7862
+ //# sourceMappingURL=index.js.map
7863
+
7864
+ /***/ }),
7865
+ /* 52 */
7866
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
7867
+
7868
+ "use strict";
7869
+ var isProduction = "production" === 'production';
7870
+ function warning(condition, message) {
7871
+ if (!isProduction) {
7872
+ if (condition) {
7873
+ return;
7874
  }
7875
+
7876
+ var text = "Warning: " + message;
7877
+
7878
+ if (typeof console !== 'undefined') {
7879
+ console.warn(text);
7880
  }
7881
+
7882
+ try {
7883
+ throw Error(text);
7884
+ } catch (x) {}
7885
+ }
7886
  }
7887
+
7888
+ /* harmony default export */ __webpack_exports__["a"] = (warning);
7889
+
7890
 
7891
  /***/ }),
7892
+ /* 53 */
7893
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
7894
+
7895
+ "use strict";
7896
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _assertThisInitialized; });
7897
+ function _assertThisInitialized(self) {
7898
+ if (self === void 0) {
7899
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
7900
+ }
7901
+
7902
+ return self;
7903
+ }
7904
+
7905
+ /***/ }),
7906
+ /* 54 */
7907
  /***/ (function(module, exports) {
7908
 
7909
  /**
7938
 
7939
 
7940
  /***/ }),
7941
+ /* 55 */
7942
  /***/ (function(module, exports) {
7943
 
7944
  /**
7970
 
7971
 
7972
  /***/ }),
7973
+ /* 56 */
7974
+ /***/ (function(module, exports, __webpack_require__) {
7975
+
7976
+ /* WEBPACK VAR INJECTION */(function(global) {var check = function (it) {
7977
+ return it && it.Math == Math && it;
7978
+ };
7979
+
7980
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
7981
+ module.exports =
7982
+ // eslint-disable-next-line no-undef
7983
+ check(typeof globalThis == 'object' && globalThis) ||
7984
+ check(typeof window == 'object' && window) ||
7985
+ check(typeof self == 'object' && self) ||
7986
+ check(typeof global == 'object' && global) ||
7987
+ // eslint-disable-next-line no-new-func
7988
+ (function () { return this; })() || Function('return this')();
7989
+
7990
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(39)))
7991
+
7992
+ /***/ }),
7993
+ /* 57 */
7994
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7995
 
7996
  "use strict";
7997
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useTheme; });
7998
+ /* harmony import */ var _material_ui_styles__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(536);
7999
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
8000
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
8001
+ /* harmony import */ var _defaultTheme__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(182);
8002
 
8003
 
8004
 
8011
  }
8012
 
8013
  /***/ }),
8014
+ /* 58 */
8015
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
8016
 
8017
+ "use strict";
8018
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return KnowledgeBaseLink; });
8019
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
8020
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
8021
+ /* harmony import */ var translate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1);
8022
+ /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4);
8023
+ /* harmony import */ var _knowledgeBaseLink_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(1225);
8024
+ /* harmony import */ var _knowledgeBaseLink_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_knowledgeBaseLink_scss__WEBPACK_IMPORTED_MODULE_3__);
 
8025
 
 
8026
 
 
 
 
8027
 
 
 
 
 
8028
 
8029
+ function KnowledgeBaseLink(_ref) {
8030
+ var articleId = _ref.articleId,
8031
+ setting = _ref.setting,
8032
+ _ref$size = _ref.size,
8033
+ size = _ref$size === void 0 ? "medium" : _ref$size,
8034
+ _ref$tiny = _ref.tiny,
8035
+ tiny = _ref$tiny === void 0 ? false : _ref$tiny,
8036
+ style = _ref.style;
8037
+ if (tiny) return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("a", {
8038
+ href: "https://community.buttonizer.pro/knowledgebase/".concat(articleId),
8039
+ target: "_blank",
8040
+ style: style
8041
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("i", {
8042
+ className: Object(clsx__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])("knowledgebase-icon", size, "fas fa-question-circle")
8043
+ }));
8044
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("a", {
8045
+ href: "https://community.buttonizer.pro/knowledgebase/".concat(articleId),
8046
+ target: "_blank",
8047
+ className: Object(clsx__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])("knowledgebase-link", size),
8048
+ dangerouslySetInnerHTML: {
8049
+ __html: Object(translate__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])("utils.knowledge_link", setting)
8050
+ }
8051
+ });
8052
+ }
8053
 
8054
  /***/ }),
8055
+ /* 59 */
8056
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8057
 
8058
  "use strict";
 
 
 
 
 
 
 
 
 
 
 
8059
 
8060
+ // EXPORTS
8061
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _slicedToArray; });
8062
 
8063
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
8064
+ var arrayWithHoles = __webpack_require__(509);
8065
 
8066
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
8067
+ function _iterableToArrayLimit(arr, i) {
8068
+ if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) {
8069
+ return;
8070
+ }
8071
+
8072
+ var _arr = [];
8073
+ var _n = true;
8074
+ var _d = false;
8075
+ var _e = undefined;
8076
 
 
8077
  try {
8078
+ for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
8079
+ _arr.push(_s.value);
8080
+
8081
+ if (i && _arr.length === i) break;
8082
+ }
8083
+ } catch (err) {
8084
+ _d = true;
8085
+ _e = err;
8086
+ } finally {
8087
+ try {
8088
+ if (!_n && _i["return"] != null) _i["return"]();
8089
+ } finally {
8090
+ if (_d) throw _e;
8091
+ }
8092
  }
 
8093
 
8094
+ return _arr;
8095
+ }
8096
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
8097
+ var nonIterableRest = __webpack_require__(510);
8098
+
8099
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
8100
+
8101
+
8102
+
8103
+ function _slicedToArray(arr, i) {
8104
+ return Object(arrayWithHoles["a" /* default */])(arr) || _iterableToArrayLimit(arr, i) || Object(nonIterableRest["a" /* default */])();
8105
+ }
8106
 
8107
  /***/ }),
8108
+ /* 60 */
8109
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8110
 
8111
  "use strict";
8112
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getCookie; });
8113
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return setCookie; });
8114
+ /**
8115
+ * Get cookie util
8116
+ *
8117
+ * @param {string} cname
8118
+ */
8119
+ // Get cookie
8120
+ function getCookie(name) {
8121
+ var value = "; ".concat(document.cookie);
8122
+ var parts = value.split("; ".concat(name, "="));
8123
+ if (parts.length === 2) return parts.pop().split(";").shift();
8124
+ return false;
8125
+ } // Set cookie
8126
 
8127
+ function setCookie(cname, value) {
8128
+ document.cookie = cname + "=" + value;
8129
+ }
8130
 
8131
+ /***/ }),
8132
+ /* 61 */
8133
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8134
 
8135
+ "use strict";
8136
+ /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return getGlobalObject; });
8137
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return uuid4; });
8138
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return parseUrl; });
8139
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return getEventDescription; });
8140
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return consoleSandbox; });
8141
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return addExceptionTypeValue; });
8142
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return addExceptionMechanism; });
8143
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return getLocationHref; });
8144
+ /* unused harmony export parseSemver */
8145
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return parseRetryAfterHeader; });
8146
+ /* unused harmony export addContextToFrame */
8147
+ /* unused harmony export stripUrlQueryAndFragment */
8148
+ /* harmony import */ var _node__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(226);
8149
+ /* harmony import */ var _string__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(161);
8150
 
8151
 
8152
+ var fallbackGlobalObject = {};
8153
+ /**
8154
+ * Safely get global scope object
8155
+ *
8156
+ * @returns Global scope object
8157
+ */
8158
+ function getGlobalObject() {
8159
+ return (Object(_node__WEBPACK_IMPORTED_MODULE_0__[/* isNodeEnv */ "b"])()
8160
+ ? global
8161
+ : typeof window !== 'undefined'
8162
+ ? window
8163
+ : typeof self !== 'undefined'
8164
+ ? self
8165
+ : fallbackGlobalObject);
8166
+ }
8167
+ /**
8168
+ * UUID4 generator
8169
+ *
8170
+ * @returns string Generated UUID4.
8171
+ */
8172
+ function uuid4() {
8173
+ var global = getGlobalObject();
8174
+ var crypto = global.crypto || global.msCrypto;
8175
+ if (!(crypto === void 0) && crypto.getRandomValues) {
8176
+ // Use window.crypto API if available
8177
+ var arr = new Uint16Array(8);
8178
+ crypto.getRandomValues(arr);
8179
+ // set 4 in byte 7
8180
+ // eslint-disable-next-line no-bitwise
8181
+ arr[3] = (arr[3] & 0xfff) | 0x4000;
8182
+ // set 2 most significant bits of byte 9 to '10'
8183
+ // eslint-disable-next-line no-bitwise
8184
+ arr[4] = (arr[4] & 0x3fff) | 0x8000;
8185
+ var pad = function (num) {
8186
+ var v = num.toString(16);
8187
+ while (v.length < 4) {
8188
+ v = "0" + v;
8189
+ }
8190
+ return v;
8191
+ };
8192
+ return (pad(arr[0]) + pad(arr[1]) + pad(arr[2]) + pad(arr[3]) + pad(arr[4]) + pad(arr[5]) + pad(arr[6]) + pad(arr[7]));
8193
+ }
8194
+ // http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/2117523#2117523
8195
+ return 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
8196
+ // eslint-disable-next-line no-bitwise
8197
+ var r = (Math.random() * 16) | 0;
8198
+ // eslint-disable-next-line no-bitwise
8199
+ var v = c === 'x' ? r : (r & 0x3) | 0x8;
8200
+ return v.toString(16);
8201
+ });
8202
+ }
8203
+ /**
8204
+ * Parses string form of URL into an object
8205
+ * // borrowed from https://tools.ietf.org/html/rfc3986#appendix-B
8206
+ * // intentionally using regex and not <a/> href parsing trick because React Native and other
8207
+ * // environments where DOM might not be available
8208
+ * @returns parsed URL object
8209
+ */
8210
+ function parseUrl(url) {
8211
+ if (!url) {
8212
+ return {};
8213
+ }
8214
+ var match = url.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);
8215
+ if (!match) {
8216
+ return {};
8217
+ }
8218
+ // coerce to undefined values to empty string so we don't get 'undefined'
8219
+ var query = match[6] || '';
8220
+ var fragment = match[8] || '';
8221
+ return {
8222
+ host: match[4],
8223
+ path: match[5],
8224
+ protocol: match[2],
8225
+ relative: match[5] + query + fragment,
8226
+ };
8227
+ }
8228
+ /**
8229
+ * Extracts either message or type+value from an event that can be used for user-facing logs
8230
+ * @returns event's description
8231
+ */
8232
+ function getEventDescription(event) {
8233
+ if (event.message) {
8234
+ return event.message;
8235
+ }
8236
+ if (event.exception && event.exception.values && event.exception.values[0]) {
8237
+ var exception = event.exception.values[0];
8238
+ if (exception.type && exception.value) {
8239
+ return exception.type + ": " + exception.value;
8240
+ }
8241
+ return exception.type || exception.value || event.event_id || '<unknown>';
8242
+ }
8243
+ return event.event_id || '<unknown>';
8244
+ }
8245
+ /** JSDoc */
8246
+ function consoleSandbox(callback) {
8247
+ var global = getGlobalObject();
8248
+ var levels = ['debug', 'info', 'warn', 'error', 'log', 'assert'];
8249
+ if (!('console' in global)) {
8250
+ return callback();
8251
+ }
8252
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
8253
+ var originalConsole = global.console;
8254
+ var wrappedLevels = {};
8255
+ // Restore all wrapped console methods
8256
+ levels.forEach(function (level) {
8257
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
8258
+ if (level in global.console && originalConsole[level].__sentry_original__) {
8259
+ wrappedLevels[level] = originalConsole[level];
8260
+ originalConsole[level] = originalConsole[level].__sentry_original__;
8261
+ }
8262
+ });
8263
+ // Perform callback manipulations
8264
+ var result = callback();
8265
+ // Revert restoration to wrapped state
8266
+ Object.keys(wrappedLevels).forEach(function (level) {
8267
+ originalConsole[level] = wrappedLevels[level];
8268
+ });
8269
+ return result;
8270
+ }
8271
+ /**
8272
+ * Adds exception values, type and value to an synthetic Exception.
8273
+ * @param event The event to modify.
8274
+ * @param value Value of the exception.
8275
+ * @param type Type of the exception.
8276
+ * @hidden
8277
+ */
8278
+ function addExceptionTypeValue(event, value, type) {
8279
+ event.exception = event.exception || {};
8280
+ event.exception.values = event.exception.values || [];
8281
+ event.exception.values[0] = event.exception.values[0] || {};
8282
+ event.exception.values[0].value = event.exception.values[0].value || value || '';
8283
+ event.exception.values[0].type = event.exception.values[0].type || type || 'Error';
8284
+ }
8285
+ /**
8286
+ * Adds exception mechanism to a given event.
8287
+ * @param event The event to modify.
8288
+ * @param mechanism Mechanism of the mechanism.
8289
+ * @hidden
8290
+ */
8291
+ function addExceptionMechanism(event, mechanism) {
8292
+ if (mechanism === void 0) { mechanism = {}; }
8293
+ // TODO: Use real type with `keyof Mechanism` thingy and maybe make it better?
8294
+ try {
8295
+ // @ts-ignore Type 'Mechanism | {}' is not assignable to type 'Mechanism | undefined'
8296
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
8297
+ event.exception.values[0].mechanism = event.exception.values[0].mechanism || {};
8298
+ Object.keys(mechanism).forEach(function (key) {
8299
+ // @ts-ignore Mechanism has no index signature
8300
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
8301
+ event.exception.values[0].mechanism[key] = mechanism[key];
8302
+ });
8303
+ }
8304
+ catch (_oO) {
8305
+ // no-empty
8306
+ }
8307
+ }
8308
+ /**
8309
+ * A safe form of location.href
8310
+ */
8311
+ function getLocationHref() {
8312
+ try {
8313
+ return document.location.href;
8314
+ }
8315
+ catch (oO) {
8316
+ return '';
8317
+ }
8318
+ }
8319
+ // https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string
8320
+ var SEMVER_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;
8321
+ /**
8322
+ * Parses input into a SemVer interface
8323
+ * @param input string representation of a semver version
8324
+ */
8325
+ function parseSemver(input) {
8326
+ var match = input.match(SEMVER_REGEXP) || [];
8327
+ var major = parseInt(match[1], 10);
8328
+ var minor = parseInt(match[2], 10);
8329
+ var patch = parseInt(match[3], 10);
8330
+ return {
8331
+ buildmetadata: match[5],
8332
+ major: isNaN(major) ? undefined : major,
8333
+ minor: isNaN(minor) ? undefined : minor,
8334
+ patch: isNaN(patch) ? undefined : patch,
8335
+ prerelease: match[4],
8336
+ };
8337
+ }
8338
+ var defaultRetryAfter = 60 * 1000; // 60 seconds
8339
+ /**
8340
+ * Extracts Retry-After value from the request header or returns default value
8341
+ * @param now current unix timestamp
8342
+ * @param header string representation of 'Retry-After' header
8343
+ */
8344
+ function parseRetryAfterHeader(now, header) {
8345
+ if (!header) {
8346
+ return defaultRetryAfter;
8347
+ }
8348
+ var headerDelay = parseInt("" + header, 10);
8349
+ if (!isNaN(headerDelay)) {
8350
+ return headerDelay * 1000;
8351
+ }
8352
+ var headerDate = Date.parse("" + header);
8353
+ if (!isNaN(headerDate)) {
8354
+ return headerDate - now;
8355
+ }
8356
+ return defaultRetryAfter;
8357
+ }
8358
+ /**
8359
+ * This function adds context (pre/post/line) lines to the provided frame
8360
+ *
8361
+ * @param lines string[] containing all lines
8362
+ * @param frame StackFrame that will be mutated
8363
+ * @param linesOfContext number of context lines we want to add pre/post
8364
+ */
8365
+ function addContextToFrame(lines, frame, linesOfContext) {
8366
+ if (linesOfContext === void 0) { linesOfContext = 5; }
8367
+ var lineno = frame.lineno || 0;
8368
+ var maxLines = lines.length;
8369
+ var sourceLine = Math.max(Math.min(maxLines, lineno - 1), 0);
8370
+ frame.pre_context = lines
8371
+ .slice(Math.max(0, sourceLine - linesOfContext), sourceLine)
8372
+ .map(function (line) { return Object(_string__WEBPACK_IMPORTED_MODULE_1__[/* snipLine */ "c"])(line, 0); });
8373
+ frame.context_line = Object(_string__WEBPACK_IMPORTED_MODULE_1__[/* snipLine */ "c"])(lines[Math.min(maxLines - 1, sourceLine)], frame.colno || 0);
8374
+ frame.post_context = lines
8375
+ .slice(Math.min(sourceLine + 1, maxLines), sourceLine + 1 + linesOfContext)
8376
+ .map(function (line) { return Object(_string__WEBPACK_IMPORTED_MODULE_1__[/* snipLine */ "c"])(line, 0); });
8377
+ }
8378
+ /**
8379
+ * Strip the query string and fragment off of a given URL or path (if present)
8380
+ *
8381
+ * @param urlPath Full URL or path, including possible query string and/or fragment
8382
+ * @returns URL or path without query string or fragment
8383
+ */
8384
+ function stripUrlQueryAndFragment(urlPath) {
8385
+ // eslint-disable-next-line no-useless-escape
8386
+ return urlPath.split(/[\?#]/, 1)[0];
8387
+ }
8388
+ //# sourceMappingURL=misc.js.map
8389
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(39)))
8390
 
8391
+ /***/ }),
8392
+ /* 62 */
8393
+ /***/ (function(module, exports) {
8394
+
8395
+ module.exports = function (it) {
8396
+ if (typeof it != 'function') throw TypeError(it + ' is not a function!');
8397
+ return it;
8398
+ };
8399
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8400
 
8401
  /***/ }),
8402
+ /* 63 */
8403
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8404
 
8405
  "use strict";
8406
+ /* unused harmony export isBrowser */
8407
+ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
 
8408
 
8409
+ var isBrowser = (typeof window === "undefined" ? "undefined" : _typeof(window)) === "object" && (typeof document === "undefined" ? "undefined" : _typeof(document)) === 'object' && document.nodeType === 9;
 
 
 
 
 
 
 
 
 
 
 
 
 
8410
 
8411
+ /* harmony default export */ __webpack_exports__["a"] = (isBrowser);
 
 
 
 
 
 
 
 
 
 
 
 
8412
 
8413
+
8414
+ /***/ }),
8415
+ /* 64 */
8416
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8417
+
8418
+ "use strict";
8419
+ var isProduction = "production" === 'production';
8420
+ var prefix = 'Invariant failed';
8421
+ function invariant(condition, message) {
8422
+ if (condition) {
8423
+ return;
8424
+ }
8425
+ if (isProduction) {
8426
+ throw new Error(prefix);
8427
+ }
8428
+ throw new Error(prefix + ": " + (message || ''));
8429
  }
 
 
 
 
 
 
 
 
8430
 
8431
+ /* harmony default export */ __webpack_exports__["a"] = (invariant);
8432
 
 
 
 
 
 
 
8433
 
8434
+ /***/ }),
8435
+ /* 65 */
8436
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
8437
 
8438
+ "use strict";
8439
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return getPreview; });
8440
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return rgbToRgba; });
8441
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getColorType; });
8442
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return getPaletteAngle; });
8443
+ /* unused harmony export colorValues */
8444
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return getFirstColor; });
8445
+ /* harmony import */ var react_linear_gradient_picker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(223);
8446
+ /* harmony import */ var react_linear_gradient_picker__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_linear_gradient_picker__WEBPACK_IMPORTED_MODULE_0__);
8447
+ /* global require */
8448
 
 
 
 
 
 
 
 
 
8449
 
8450
+ var gradientParser = __webpack_require__(373);
8451
 
8452
+ var rgbToRgba = function rgbToRgba(rgb) {
8453
+ var a = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
8454
+ return /rgba/.test(rgb) ? rgb : rgb.replace("rgb(", "rgba(").replace(")", ", ".concat(a, ")"));
8455
+ };
8456
 
8457
+ var getRadialGradientPreview = function getRadialGradientPreview(palette) {
8458
+ var background = "radial-gradient(".concat(palette.map(function (_ref) {
8459
+ var color = _ref.color,
8460
+ offset = _ref.offset,
8461
+ opacity = _ref.opacity;
8462
+ return "".concat(rgbToRgba(color, opacity), " ").concat(offset * 100, "%");
8463
+ }).join(", "), ")");
8464
+ return {
8465
+ background: background
8466
+ };
8467
+ };
8468
 
8469
+ var getPreview = function getPreview(palette, angle, type) {
8470
+ switch (type) {
8471
+ case "solid":
8472
+ return getSolidPreview(palette);
 
 
8473
 
8474
+ case "radial":
8475
+ return getRadialGradientPreview(palette);
 
8476
 
8477
+ case "linear":
8478
+ return Object(react_linear_gradient_picker__WEBPACK_IMPORTED_MODULE_0__["getGradientPreview"])(palette, angle);
8479
+ }
 
 
8480
  };
8481
 
8482
+ var getSolidPreview = function getSolidPreview(palette) {
8483
+ if (typeof palette !== "string") return {
8484
+ background: rgbToRgba(palette[0].color, palette[0].opacity)
8485
+ };
8486
+ return {
8487
+ background: palette
8488
+ };
8489
+ };
8490
 
8491
+ var getColorType = function getColorType(value) {
8492
+ if (value == null) return "solid";
8493
+ if (/radial/.test(value)) return "radial";
8494
+ if (/linear/.test(value)) return "linear";
8495
+ return "solid";
 
 
 
 
 
 
8496
  };
8497
 
8498
+ var getPaletteAngle = function getPaletteAngle(value) {
8499
+ if (value == null) return {
8500
+ palette: null,
8501
+ angle: 90
8502
+ };
8503
+ var type = getColorType(value);
8504
+ if (type === "solid") return {
8505
+ palette: value,
8506
+ angle: 90
8507
+ };
8508
 
8509
+ if (type === "linear" || type === "radial") {
8510
+ var stop = gradientParser.parse(value)[0].colorStops[0];
8511
+ return {
8512
+ palette: "".concat(stop.type, "(").concat(stop.value.join(", "), ")"),
8513
+ angle: 90
8514
+ };
8515
+ }
8516
+ };
8517
 
8518
+ var getFirstColor = function getFirstColor(color) {
8519
+ var type = getColorType(color);
8520
+ if (type === "solid") return color;
8521
+ var result = gradientParser.parse(color)[0];
8522
+ var stop = result.colorStops[0];
8523
+ if (stop.type === "hex") return "#".concat(stop.value); // hex
 
8524
 
8525
+ return "".concat(stop.type, "(").concat(stop.value.join(", "), ")"); // rgb(a) or hsl
 
8526
  };
8527
 
8528
+ function colorValues(color) {
8529
+ if (!color) return;
8530
+ if (color.toLowerCase() === "transparent") return {
8531
+ r: 0,
8532
+ g: 0,
8533
+ b: 0,
8534
+ a: 0
8535
+ };
8536
+
8537
+ if (color[0] === "#") {
8538
+ if (color.length < 7) {
8539
+ // convert #RGB and #RGBA to #RRGGBB and #RRGGBBAA
8540
+ color = "#" + color[1] + color[1] + color[2] + color[2] + color[3] + color[3] + (color.length > 4 ? color[4] + color[4] : "");
8541
+ }
8542
+
8543
+ return {
8544
+ r: parseInt(color.substr(1, 2), 16),
8545
+ g: parseInt(color.substr(3, 2), 16),
8546
+ b: parseInt(color.substr(5, 2), 16),
8547
+ a: color.length > 7 ? parseInt(color.substr(7, 2), 16) / 255 : 1
8548
+ };
8549
  }
 
 
 
 
8550
 
8551
+ if (color.indexOf("rgb") === -1) {
8552
+ // convert named colors
8553
+ var temp_elem = document.body.appendChild(document.createElement("fictum")); // intentionally use unknown tag to lower chances of css rule override with !important
8554
 
8555
+ var flag = "rgb(1, 2, 3)"; // this flag tested on chrome 59, ff 53, ie9, ie10, ie11, edge 14
 
 
8556
 
8557
+ temp_elem.style.color = flag;
8558
+ if (temp_elem.style.color !== flag) return; // color set failed - some monstrous css rule is probably taking over the color of our object
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8559
 
8560
+ temp_elem.style.color = color;
8561
+ if (temp_elem.style.color === flag || temp_elem.style.color === "") return; // color parse failed
8562
 
8563
+ color = getComputedStyle(temp_elem).color;
8564
+ document.body.removeChild(temp_elem);
8565
+ }
8566
 
8567
+ if (color.indexOf("rgb") === 0) {
8568
+ if (color.indexOf("rgba") === -1) color += ",1"; // convert 'rgb(R,G,B)' to 'rgb(R,G,B)A' which looks awful but will pass the regxep below
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8569
 
8570
+ var newColor = color.match(/[\.\d]+/g).map(function (a) {
8571
+ return +a;
8572
+ });
8573
+ return {
8574
+ r: newColor[0],
8575
+ g: newColor[1],
8576
+ b: newColor[2],
8577
+ a: newColor[3]
8578
+ };
 
8579
  }
 
 
 
8580
  }
8581
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8582
 
8583
 
8584
  /***/ }),
8585
+ /* 66 */
8586
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8587
 
8588
+ "use strict";
8589
+ /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return fill; });
8590
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return urlEncode; });
8591
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return normalizeToSize; });
8592
+ /* unused harmony export walk */
8593
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return normalize; });
8594
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return extractExceptionKeysForMessage; });
8595
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return dropUndefinedKeys; });
8596
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);
8597
+ /* harmony import */ var _browser__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(404);
8598
+ /* harmony import */ var _is__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(31);
8599
+ /* harmony import */ var _memo__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(505);
8600
+ /* harmony import */ var _stacktrace__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(273);
8601
+ /* harmony import */ var _string__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(161);
8602
 
 
 
 
 
 
8603
 
 
 
 
 
 
 
 
8604
 
8605
 
 
 
 
8606
 
 
 
 
 
 
 
 
 
8607
 
8608
+ /**
8609
+ * Wrap a given object method with a higher-order function
8610
+ *
8611
+ * @param source An object that contains a method to be wrapped.
8612
+ * @param name A name of method to be wrapped.
8613
+ * @param replacement A function that should be used to wrap a given method.
8614
+ * @returns void
8615
+ */
8616
+ function fill(source, name, replacement) {
8617
+ if (!(name in source)) {
8618
+ return;
8619
  }
8620
+ var original = source[name];
8621
+ var wrapped = replacement(original);
8622
+ // Make sure it's a function first, as we need to attach an empty prototype for `defineProperties` to work
8623
+ // otherwise it'll throw "TypeError: Object.defineProperties called on non-object"
8624
+ if (typeof wrapped === 'function') {
8625
+ try {
8626
+ wrapped.prototype = wrapped.prototype || {};
8627
+ Object.defineProperties(wrapped, {
8628
+ __sentry_original__: {
8629
+ enumerable: false,
8630
+ value: original,
8631
+ },
8632
+ });
8633
+ }
8634
+ catch (_Oo) {
8635
+ // This can throw if multiple fill happens on a global object like XMLHttpRequest
8636
+ // Fixes https://github.com/getsentry/sentry-javascript/issues/2043
8637
+ }
8638
+ }
8639
+ source[name] = wrapped;
8640
+ }
8641
+ /**
8642
+ * Encodes given object into url-friendly format
8643
+ *
8644
+ * @param object An object that contains serializable values
8645
+ * @returns string Encoded
8646
+ */
8647
+ function urlEncode(object) {
8648
+ return Object.keys(object)
8649
+ .map(function (key) { return encodeURIComponent(key) + "=" + encodeURIComponent(object[key]); })
8650
+ .join('&');
8651
+ }
8652
+ /**
8653
+ * Transforms any object into an object literal with all it's attributes
8654
+ * attached to it.
8655
+ *
8656
+ * @param value Initial source that we have to transform in order to be usable by the serializer
8657
+ */
8658
+ function getWalkSource(value) {
8659
+ if (Object(_is__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "d"])(value)) {
8660
+ var error = value;
8661
+ var err = {
8662
+ message: error.message,
8663
+ name: error.name,
8664
+ stack: error.stack,
8665
+ };
8666
+ for (var i in error) {
8667
+ if (Object.prototype.hasOwnProperty.call(error, i)) {
8668
+ err[i] = error[i];
8669
+ }
8670
+ }
8671
+ return err;
8672
+ }
8673
+ if (Object(_is__WEBPACK_IMPORTED_MODULE_2__[/* isEvent */ "f"])(value)) {
8674
+ var event_1 = value;
8675
+ var source = {};
8676
+ source.type = event_1.type;
8677
+ // Accessing event.target can throw (see getsentry/raven-js#838, #768)
8678
+ try {
8679
+ source.target = Object(_is__WEBPACK_IMPORTED_MODULE_2__[/* isElement */ "c"])(event_1.target)
8680
+ ? Object(_browser__WEBPACK_IMPORTED_MODULE_1__[/* htmlTreeAsString */ "a"])(event_1.target)
8681
+ : Object.prototype.toString.call(event_1.target);
8682
+ }
8683
+ catch (_oO) {
8684
+ source.target = '<unknown>';
8685
+ }
8686
+ try {
8687
+ source.currentTarget = Object(_is__WEBPACK_IMPORTED_MODULE_2__[/* isElement */ "c"])(event_1.currentTarget)
8688
+ ? Object(_browser__WEBPACK_IMPORTED_MODULE_1__[/* htmlTreeAsString */ "a"])(event_1.currentTarget)
8689
+ : Object.prototype.toString.call(event_1.currentTarget);
8690
+ }
8691
+ catch (_oO) {
8692
+ source.currentTarget = '<unknown>';
8693
+ }
8694
+ if (typeof CustomEvent !== 'undefined' && Object(_is__WEBPACK_IMPORTED_MODULE_2__[/* isInstanceOf */ "g"])(value, CustomEvent)) {
8695
+ source.detail = event_1.detail;
8696
+ }
8697
+ for (var i in event_1) {
8698
+ if (Object.prototype.hasOwnProperty.call(event_1, i)) {
8699
+ source[i] = event_1;
8700
+ }
8701
+ }
8702
+ return source;
8703
+ }
8704
+ return value;
8705
+ }
8706
+ /** Calculates bytes size of input string */
8707
+ function utf8Length(value) {
8708
+ // eslint-disable-next-line no-bitwise
8709
+ return ~-encodeURI(value).split(/%..|./).length;
8710
+ }
8711
+ /** Calculates bytes size of input object */
8712
+ function jsonSize(value) {
8713
+ return utf8Length(JSON.stringify(value));
8714
+ }
8715
+ /** JSDoc */
8716
+ function normalizeToSize(object,
8717
+ // Default Node.js REPL depth
8718
+ depth,
8719
+ // 100kB, as 200kB is max payload size, so half sounds reasonable
8720
+ maxSize) {
8721
+ if (depth === void 0) { depth = 3; }
8722
+ if (maxSize === void 0) { maxSize = 100 * 1024; }
8723
+ var serialized = normalize(object, depth);
8724
+ if (jsonSize(serialized) > maxSize) {
8725
+ return normalizeToSize(object, depth - 1, maxSize);
8726
+ }
8727
+ return serialized;
8728
+ }
8729
+ /** Transforms any input value into a string form, either primitive value or a type of the input */
8730
+ function serializeValue(value) {
8731
+ var type = Object.prototype.toString.call(value);
8732
+ // Node.js REPL notation
8733
+ if (typeof value === 'string') {
8734
+ return value;
8735
+ }
8736
+ if (type === '[object Object]') {
8737
+ return '[Object]';
8738
+ }
8739
+ if (type === '[object Array]') {
8740
+ return '[Array]';
8741
+ }
8742
+ var normalized = normalizeValue(value);
8743
+ return Object(_is__WEBPACK_IMPORTED_MODULE_2__[/* isPrimitive */ "i"])(normalized) ? normalized : type;
8744
+ }
8745
+ /**
8746
+ * normalizeValue()
8747
+ *
8748
+ * Takes unserializable input and make it serializable friendly
8749
+ *
8750
+ * - translates undefined/NaN values to "[undefined]"/"[NaN]" respectively,
8751
+ * - serializes Error objects
8752
+ * - filter global objects
8753
+ */
8754
+ function normalizeValue(value, key) {
8755
+ if (key === 'domain' && value && typeof value === 'object' && value._events) {
8756
+ return '[Domain]';
8757
+ }
8758
+ if (key === 'domainEmitter') {
8759
+ return '[DomainEmitter]';
8760
+ }
8761
+ if (typeof global !== 'undefined' && value === global) {
8762
+ return '[Global]';
8763
+ }
8764
+ if (typeof window !== 'undefined' && value === window) {
8765
+ return '[Window]';
8766
+ }
8767
+ if (typeof document !== 'undefined' && value === document) {
8768
+ return '[Document]';
8769
+ }
8770
+ // React's SyntheticEvent thingy
8771
+ if (Object(_is__WEBPACK_IMPORTED_MODULE_2__[/* isSyntheticEvent */ "l"])(value)) {
8772
+ return '[SyntheticEvent]';
8773
+ }
8774
+ if (typeof value === 'number' && value !== value) {
8775
+ return '[NaN]';
8776
+ }
8777
+ if (value === void 0) {
8778
+ return '[undefined]';
8779
+ }
8780
+ if (typeof value === 'function') {
8781
+ return "[Function: " + Object(_stacktrace__WEBPACK_IMPORTED_MODULE_4__[/* getFunctionName */ "a"])(value) + "]";
8782
+ }
8783
+ return value;
8784
+ }
8785
+ /**
8786
+ * Walks an object to perform a normalization on it
8787
+ *
8788
+ * @param key of object that's walked in current iteration
8789
+ * @param value object to be walked
8790
+ * @param depth Optional number indicating how deep should walking be performed
8791
+ * @param memo Optional Memo class handling decycling
8792
+ */
8793
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
8794
+ function walk(key, value, depth, memo) {
8795
+ if (depth === void 0) { depth = +Infinity; }
8796
+ if (memo === void 0) { memo = new _memo__WEBPACK_IMPORTED_MODULE_3__[/* Memo */ "a"](); }
8797
+ // If we reach the maximum depth, serialize whatever has left
8798
+ if (depth === 0) {
8799
+ return serializeValue(value);
8800
+ }
8801
+ /* eslint-disable @typescript-eslint/no-unsafe-member-access */
8802
+ // If value implements `toJSON` method, call it and return early
8803
+ if (value !== null && value !== undefined && typeof value.toJSON === 'function') {
8804
+ return value.toJSON();
8805
+ }
8806
+ /* eslint-enable @typescript-eslint/no-unsafe-member-access */
8807
+ // If normalized value is a primitive, there are no branches left to walk, so we can just bail out, as theres no point in going down that branch any further
8808
+ var normalized = normalizeValue(value, key);
8809
+ if (Object(_is__WEBPACK_IMPORTED_MODULE_2__[/* isPrimitive */ "i"])(normalized)) {
8810
+ return normalized;
8811
+ }
8812
+ // Create source that we will use for next itterations, either objectified error object (Error type with extracted keys:value pairs) or the input itself
8813
+ var source = getWalkSource(value);
8814
+ // Create an accumulator that will act as a parent for all future itterations of that branch
8815
+ var acc = Array.isArray(value) ? [] : {};
8816
+ // If we already walked that branch, bail out, as it's circular reference
8817
+ if (memo.memoize(value)) {
8818
+ return '[Circular ~]';
8819
+ }
8820
+ // Walk all keys of the source
8821
+ for (var innerKey in source) {
8822
+ // Avoid iterating over fields in the prototype if they've somehow been exposed to enumeration.
8823
+ if (!Object.prototype.hasOwnProperty.call(source, innerKey)) {
8824
+ continue;
8825
+ }
8826
+ // Recursively walk through all the child nodes
8827
+ acc[innerKey] = walk(innerKey, source[innerKey], depth - 1, memo);
8828
+ }
8829
+ // Once walked through all the branches, remove the parent from memo storage
8830
+ memo.unmemoize(value);
8831
+ // Return accumulated values
8832
  return acc;
 
8833
  }
8834
+ /**
8835
+ * normalize()
8836
+ *
8837
+ * - Creates a copy to prevent original input mutation
8838
+ * - Skip non-enumerablers
8839
+ * - Calls `toJSON` if implemented
8840
+ * - Removes circular references
8841
+ * - Translates non-serializeable values (undefined/NaN/Functions) to serializable format
8842
+ * - Translates known global objects/Classes to a string representations
8843
+ * - Takes care of Error objects serialization
8844
+ * - Optionally limit depth of final output
8845
+ */
8846
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
8847
+ function normalize(input, depth) {
8848
+ try {
8849
+ return JSON.parse(JSON.stringify(input, function (key, value) { return walk(key, value, depth); }));
8850
+ }
8851
+ catch (_oO) {
8852
+ return '**non-serializable**';
8853
+ }
8854
+ }
8855
+ /**
8856
+ * Given any captured exception, extract its keys and create a sorted
8857
+ * and truncated list that will be used inside the event message.
8858
+ * eg. `Non-error exception captured with keys: foo, bar, baz`
8859
+ */
8860
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
8861
+ function extractExceptionKeysForMessage(exception, maxLength) {
8862
+ if (maxLength === void 0) { maxLength = 40; }
8863
+ var keys = Object.keys(getWalkSource(exception));
8864
+ keys.sort();
8865
+ if (!keys.length) {
8866
+ return '[object has no keys]';
8867
+ }
8868
+ if (keys[0].length >= maxLength) {
8869
+ return Object(_string__WEBPACK_IMPORTED_MODULE_5__[/* truncate */ "d"])(keys[0], maxLength);
8870
+ }
8871
+ for (var includedKeys = keys.length; includedKeys > 0; includedKeys--) {
8872
+ var serialized = keys.slice(0, includedKeys).join(', ');
8873
+ if (serialized.length > maxLength) {
8874
+ continue;
8875
+ }
8876
+ if (includedKeys === keys.length) {
8877
+ return serialized;
8878
+ }
8879
+ return Object(_string__WEBPACK_IMPORTED_MODULE_5__[/* truncate */ "d"])(serialized, maxLength);
8880
+ }
8881
+ return '';
8882
+ }
8883
+ /**
8884
+ * Given any object, return the new object with removed keys that value was `undefined`.
8885
+ * Works recursively on objects and arrays.
8886
+ */
8887
+ function dropUndefinedKeys(val) {
8888
+ var e_1, _a;
8889
+ if (Object(_is__WEBPACK_IMPORTED_MODULE_2__[/* isPlainObject */ "h"])(val)) {
8890
+ var obj = val;
8891
+ var rv = {};
8892
+ try {
8893
+ for (var _b = Object(tslib__WEBPACK_IMPORTED_MODULE_0__[/* __values */ "e"])(Object.keys(obj)), _c = _b.next(); !_c.done; _c = _b.next()) {
8894
+ var key = _c.value;
8895
+ if (typeof obj[key] !== 'undefined') {
8896
+ rv[key] = dropUndefinedKeys(obj[key]);
8897
+ }
8898
+ }
8899
+ }
8900
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
8901
+ finally {
8902
+ try {
8903
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
8904
+ }
8905
+ finally { if (e_1) throw e_1.error; }
8906
+ }
8907
+ return rv;
8908
+ }
8909
+ if (Array.isArray(val)) {
8910
+ return val.map(dropUndefinedKeys);
8911
+ }
8912
+ return val;
8913
  }
8914
+ //# sourceMappingURL=object.js.map
8915
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(39)))
8916
 
8917
  /***/ }),
8918
+ /* 67 */
8919
+ /***/ (function(module, exports) {
 
 
 
 
 
 
 
 
 
 
 
8920
 
8921
+ module.exports = function (exec) {
8922
+ try {
8923
+ return !!exec();
8924
+ } catch (error) {
8925
+ return true;
8926
+ }
8927
+ };
8928
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8929
 
8930
  /***/ }),
8931
+ /* 68 */
8932
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8933
 
8934
  "use strict";
8944
  var react_default = /*#__PURE__*/__webpack_require__.n(react);
8945
 
8946
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
8947
+ var objectWithoutProperties = __webpack_require__(7);
8948
 
8949
  // EXTERNAL MODULE: ./node_modules/prop-types/index.js
8950
+ var prop_types = __webpack_require__(3);
8951
 
8952
  // EXTERNAL MODULE: ./node_modules/clsx/dist/clsx.m.js
8953
+ var clsx_m = __webpack_require__(4);
8954
 
8955
  // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/styles/withStyles.js + 1 modules
8956
+ var withStyles = __webpack_require__(9);
8957
 
8958
  // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/utils/capitalize.js
8959
+ var capitalize = __webpack_require__(12);
8960
 
8961
  // CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/SvgIcon/SvgIcon.js
8962
 
9023
  }
9024
  };
9025
  };
9026
+ var SvgIcon_SvgIcon = /*#__PURE__*/react["forwardRef"](function SvgIcon(props, ref) {
9027
  var children = props.children,
9028
  classes = props.classes,
9029
  className = props.className,
9044
  focusable: "false",
9045
  viewBox: viewBox,
9046
  color: htmlColor,
9047
+ "aria-hidden": titleAccess ? undefined : true,
9048
  role: titleAccess ? 'img' : undefined,
9049
  ref: ref
9050
  }, other), children, titleAccess ? /*#__PURE__*/react["createElement"]("title", null, titleAccess) : null);
9063
  */
9064
 
9065
  function createSvgIcon(path, displayName) {
9066
+ var Component = function Component(props, ref) {
9067
  return /*#__PURE__*/react_default.a.createElement(esm_SvgIcon_SvgIcon, Object(esm_extends["a" /* default */])({
9068
  ref: ref
9069
  }, props), path);
9070
+ };
9071
 
9072
  if (false) {}
9073
 
9074
  Component.muiName = esm_SvgIcon_SvgIcon.muiName;
9075
+ return /*#__PURE__*/react_default.a.memo( /*#__PURE__*/react_default.a.forwardRef(Component));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9076
  }
9077
 
9078
  /***/ }),
9079
+ /* 69 */
9080
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9081
 
9082
  "use strict";
9083
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ConfirmDialog; });
9084
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
9085
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
9086
+ /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(228);
9087
+ /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(229);
9088
+ /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(164);
9089
+ /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(165);
9090
+ /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(230);
9091
+ /* harmony import */ var _material_ui_core__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(111);
9092
+ /* harmony import */ var translate__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(1);
9093
+ /* harmony import */ var _confirmDialog_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(1215);
9094
+ /* harmony import */ var _confirmDialog_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_confirmDialog_scss__WEBPACK_IMPORTED_MODULE_8__);
9095
+ function _extends() { _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; }; return _extends.apply(this, arguments); }
9096
 
 
 
 
 
 
 
 
9097
 
 
9098
 
 
 
9099
 
 
 
 
 
9100
 
9101
+ var defaultButtons = [{
9102
+ value: "cancel",
9103
+ text: Object(translate__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])("modal.cancel")
9104
+ }, {
9105
+ value: "confirm",
9106
+ text: Object(translate__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])("common.confirm")
9107
+ }];
9108
+ function ConfirmDialog(_ref) {
9109
+ var onClose = _ref.onClose,
9110
+ _ref$icon = _ref.icon,
9111
+ icon = _ref$icon === void 0 ? null : _ref$icon,
9112
+ _ref$open = _ref.open,
9113
+ open = _ref$open === void 0 ? false : _ref$open,
9114
+ _ref$title = _ref.title,
9115
+ title = _ref$title === void 0 ? "Confirm" : _ref$title,
9116
+ _ref$children = _ref.children,
9117
+ children = _ref$children === void 0 ? null : _ref$children,
9118
+ _ref$buttons = _ref.buttons,
9119
+ buttons = _ref$buttons === void 0 ? null : _ref$buttons,
9120
+ _ref$maxWidth = _ref.maxWidth,
9121
+ maxWidth = _ref$maxWidth === void 0 ? "xs" : _ref$maxWidth,
9122
+ _ref$fullWidth = _ref.fullWidth,
9123
+ fullWidth = _ref$fullWidth === void 0 ? true : _ref$fullWidth,
9124
+ className = _ref.className,
9125
+ _ref$testId = _ref.testId,
9126
+ testId = _ref$testId === void 0 ? null : _ref$testId;
9127
 
9128
+ var handleClose = function handleClose(status) {
9129
+ onClose(status);
9130
+ };
9131
+
9132
+ if (!buttons) buttons = defaultButtons;
9133
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], {
9134
+ open: open,
9135
+ onClose: handleClose,
9136
+ maxWidth: maxWidth,
9137
+ fullWidth: fullWidth,
9138
+ "aria-labelledby": "alert-dialog-title",
9139
+ "aria-describedby": "alert-dialog-description",
9140
+ className: className,
9141
+ "data-testid": testId ? "dialog:".concat(testId) : null
9142
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"], {
9143
+ id: "alert-dialog-title"
9144
+ }, icon, title), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"], {
9145
+ id: "alert-dialog-description",
9146
+ component: "div"
9147
+ }, children)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"], null, buttons.map(function (button, key) {
9148
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"], _extends({
9149
+ onClick: function onClick() {
9150
+ return handleClose(button.value);
9151
+ },
9152
+ color: "primary",
9153
+ key: key,
9154
+ variant: button.variant,
9155
+ "data-testid": testId ? "dialog:".concat(testId, ":button:").concat(button.value) : null
9156
+ }, button.props), button.text);
9157
+ })));
9158
  }
9159
 
9160
+ /***/ }),
9161
+ /* 70 */
9162
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
9163
 
9164
+ "use strict";
9165
+ /* unused harmony export easing */
9166
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return duration; });
9167
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);
9168
 
9169
+ // Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves
9170
+ // to learn the context in which each easing should be used.
9171
+ var easing = {
9172
+ // This is the most common easing curve.
9173
+ easeInOut: 'cubic-bezier(0.4, 0, 0.2, 1)',
9174
+ // Objects enter the screen at full velocity from off-screen and
9175
+ // slowly decelerate to a resting point.
9176
+ easeOut: 'cubic-bezier(0.0, 0, 0.2, 1)',
9177
+ // Objects leave the screen at full velocity. They do not decelerate when off-screen.
9178
+ easeIn: 'cubic-bezier(0.4, 0, 1, 1)',
9179
+ // The sharp curve is used by objects that may return to the screen at any time.
9180
+ sharp: 'cubic-bezier(0.4, 0, 0.6, 1)'
9181
+ }; // Follow https://material.io/guidelines/motion/duration-easing.html#duration-easing-common-durations
9182
+ // to learn when use what timing
9183
 
9184
+ var duration = {
9185
+ shortest: 150,
9186
+ shorter: 200,
9187
+ short: 250,
9188
+ // most basic recommended timing
9189
+ standard: 300,
9190
+ // this is to be used in complex animations
9191
+ complex: 375,
9192
+ // recommended when something is entering screen
9193
+ enteringScreen: 225,
9194
+ // recommended when something is leaving screen
9195
+ leavingScreen: 195
9196
+ };
9197
 
9198
+ function formatMs(milliseconds) {
9199
+ return "".concat(Math.round(milliseconds), "ms");
9200
+ }
9201
+ /**
9202
+ * @param {string|Array} props
9203
+ * @param {object} param
9204
+ * @param {string} param.prop
9205
+ * @param {number} param.duration
9206
+ * @param {string} param.easing
9207
+ * @param {number} param.delay
9208
+ */
9209
 
 
 
 
 
 
 
 
9210
 
9211
+ /* harmony default export */ __webpack_exports__["a"] = ({
9212
+ easing: easing,
9213
+ duration: duration,
9214
+ create: function create() {
9215
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['all'];
9216
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
9217
 
9218
+ var _options$duration = options.duration,
9219
+ durationOption = _options$duration === void 0 ? duration.standard : _options$duration,
9220
+ _options$easing = options.easing,
9221
+ easingOption = _options$easing === void 0 ? easing.easeInOut : _options$easing,
9222
+ _options$delay = options.delay,
9223
+ delay = _options$delay === void 0 ? 0 : _options$delay,
9224
+ other = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(options, ["duration", "easing", "delay"]);
 
 
 
9225
 
9226
+ if (false) { var isNumber, isString; }
9227
 
9228
+ return (Array.isArray(props) ? props : [props]).map(function (animatedProp) {
9229
+ return "".concat(animatedProp, " ").concat(typeof durationOption === 'string' ? durationOption : formatMs(durationOption), " ").concat(easingOption, " ").concat(typeof delay === 'string' ? delay : formatMs(delay));
9230
+ }).join(',');
9231
+ },
9232
+ getAutoHeightDuration: function getAutoHeightDuration(height) {
9233
+ if (!height) {
9234
+ return 0;
9235
+ }
9236
 
9237
+ var constant = height / 36; // https://www.wolframalpha.com/input/?i=(4+%2B+15+*+(x+%2F+36+)+**+0.25+%2B+(x+%2F+36)+%2F+5)+*+10
9238
 
9239
+ return Math.round((4 + 15 * Math.pow(constant, 0.25) + constant / 5) * 10);
9240
+ }
9241
+ });
9242
 
9243
+ /***/ }),
9244
+ /* 71 */
9245
+ /***/ (function(module, exports, __webpack_require__) {
9246
 
9247
+ var global = __webpack_require__(56);
9248
+ var shared = __webpack_require__(433);
9249
+ var has = __webpack_require__(80);
9250
+ var uid = __webpack_require__(360);
9251
+ var NATIVE_SYMBOL = __webpack_require__(439);
9252
+ var USE_SYMBOL_AS_UID = __webpack_require__(583);
9253
 
9254
+ var WellKnownSymbolsStore = shared('wks');
9255
+ var Symbol = global.Symbol;
9256
+ var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;
 
9257
 
9258
+ module.exports = function (name) {
9259
+ if (!has(WellKnownSymbolsStore, name)) {
9260
+ if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];
9261
+ else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
9262
+ } return WellKnownSymbolsStore[name];
9263
+ };
9264
 
 
 
9265
 
9266
+ /***/ }),
9267
+ /* 72 */
9268
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
9269
 
9270
+ var dP = __webpack_require__(43);
9271
+ var createDesc = __webpack_require__(146);
9272
+ module.exports = __webpack_require__(42) ? function (object, key, value) {
9273
+ return dP.f(object, key, createDesc(1, value));
9274
+ } : function (object, key, value) {
9275
+ object[key] = value;
9276
+ return object;
9277
+ };
9278
 
 
9279
 
9280
+ /***/ }),
9281
+ /* 73 */
9282
+ /***/ (function(module, exports, __webpack_require__) {
 
9283
 
9284
+ var global = __webpack_require__(24);
9285
+ var hide = __webpack_require__(72);
9286
+ var has = __webpack_require__(81);
9287
+ var SRC = __webpack_require__(147)('src');
9288
+ var TO_STRING = 'toString';
9289
+ var $toString = Function[TO_STRING];
9290
+ var TPL = ('' + $toString).split(TO_STRING);
9291
 
9292
+ __webpack_require__(94).inspectSource = function (it) {
9293
+ return $toString.call(it);
9294
+ };
9295
 
9296
+ (module.exports = function (O, key, val, safe) {
9297
+ var isFunction = typeof val == 'function';
9298
+ if (isFunction) has(val, 'name') || hide(val, 'name', key);
9299
+ if (O[key] === val) return;
9300
+ if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
9301
+ if (O === global) {
9302
+ O[key] = val;
9303
+ } else if (!safe) {
9304
+ delete O[key];
9305
+ hide(O, key, val);
9306
+ } else if (O[key]) {
9307
+ O[key] = val;
9308
+ } else {
9309
+ hide(O, key, val);
9310
+ }
9311
+ // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
9312
+ })(Function.prototype, TO_STRING, function toString() {
9313
+ return typeof this == 'function' && this[SRC] || $toString.call(this);
9314
+ });
9315
 
 
9316
 
9317
+ /***/ }),
9318
+ /* 74 */
9319
+ /***/ (function(module, exports, __webpack_require__) {
9320
 
9321
+ var $export = __webpack_require__(8);
9322
+ var fails = __webpack_require__(27);
9323
+ var defined = __webpack_require__(105);
9324
+ var quot = /"/g;
9325
+ // B.2.3.2.1 CreateHTML(string, tag, attribute, value)
9326
+ var createHTML = function (string, tag, attribute, value) {
9327
+ var S = String(defined(string));
9328
+ var p1 = '<' + tag;
9329
+ if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '&quot;') + '"';
9330
+ return p1 + '>' + S + '</' + tag + '>';
9331
+ };
9332
+ module.exports = function (NAME, exec) {
9333
+ var O = {};
9334
+ O[NAME] = exec(createHTML);
9335
+ $export($export.P + $export.F * fails(function () {
9336
+ var test = ''[NAME]('"');
9337
+ return test !== test.toLowerCase() || test.split('"').length > 3;
9338
+ }), 'String', O);
9339
+ };
9340
 
9341
 
9342
+ /***/ }),
9343
+ /* 75 */
9344
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
9345
 
9346
+ "use strict";
9347
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return debounce; });
9348
+ // Corresponds to 10 frames at 60 Hz.
9349
+ // A few bytes payload overhead when lodash/debounce is ~3 kB and debounce ~300 B.
9350
+ function debounce(func) {
9351
+ var wait = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 166;
9352
+ var timeout;
9353
 
9354
+ function debounced() {
9355
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
9356
+ args[_key] = arguments[_key];
9357
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9358
 
9359
+ // eslint-disable-next-line consistent-this
9360
+ var that = this;
 
 
9361
 
9362
+ var later = function later() {
9363
+ func.apply(that, args);
9364
+ };
9365
 
9366
+ clearTimeout(timeout);
9367
+ timeout = setTimeout(later, wait);
 
9368
  }
9369
 
9370
+ debounced.clear = function () {
9371
+ clearTimeout(timeout);
 
 
9372
  };
9373
+
9374
+ return debounced;
 
 
 
 
 
 
 
9375
  }
9376
 
9377
+ /***/ }),
9378
+ /* 76 */
9379
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
9380
 
9381
+ "use strict";
 
 
 
 
 
 
 
9382
 
9383
+ // EXPORTS
9384
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _toConsumableArray; });
 
 
 
9385
 
9386
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
9387
+ function _arrayWithoutHoles(arr) {
9388
+ if (Array.isArray(arr)) {
9389
+ for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
9390
+ arr2[i] = arr[i];
9391
  }
9392
 
9393
+ return arr2;
9394
  }
9395
+ }
9396
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js
9397
+ var iterableToArray = __webpack_require__(217);
9398
 
9399
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
9400
+ function _nonIterableSpread() {
9401
+ throw new TypeError("Invalid attempt to spread non-iterable instance");
9402
+ }
9403
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
 
 
 
 
9404
 
 
9405
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9406
 
9407
+ function _toConsumableArray(arr) {
9408
+ return _arrayWithoutHoles(arr) || Object(iterableToArray["a" /* default */])(arr) || _nonIterableSpread();
 
 
9409
  }
9410
 
9411
+ /***/ }),
9412
+ /* 77 */
9413
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
9414
 
9415
+ "use strict";
9416
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return setRef; });
9417
+ // TODO v5: consider to make it private
9418
+ function setRef(ref, value) {
9419
+ if (typeof ref === 'function') {
9420
+ ref(value);
9421
+ } else if (ref) {
9422
+ ref.current = value;
9423
  }
9424
+ }
9425
 
9426
+ /***/ }),
9427
+ /* 78 */
9428
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
9429
 
9430
+ "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9431
 
 
9432
 
9433
+ Object.defineProperty(exports, "__esModule", {
9434
+ value: true
9435
+ });
9436
 
9437
+ var _Alpha = __webpack_require__(671);
 
 
9438
 
9439
+ Object.defineProperty(exports, 'Alpha', {
9440
+ enumerable: true,
9441
+ get: function get() {
9442
+ return _interopRequireDefault(_Alpha).default;
 
 
 
9443
  }
9444
+ });
9445
 
9446
+ var _Checkboard = __webpack_require__(372);
 
 
 
9447
 
9448
+ Object.defineProperty(exports, 'Checkboard', {
9449
+ enumerable: true,
9450
+ get: function get() {
9451
+ return _interopRequireDefault(_Checkboard).default;
9452
  }
9453
+ });
9454
 
9455
+ var _EditableInput = __webpack_require__(674);
 
 
 
 
 
 
9456
 
9457
+ Object.defineProperty(exports, 'EditableInput', {
9458
+ enumerable: true,
9459
+ get: function get() {
9460
+ return _interopRequireDefault(_EditableInput).default;
9461
+ }
9462
+ });
 
 
 
 
 
9463
 
9464
+ var _Hue = __webpack_require__(675);
 
 
 
 
 
 
 
 
9465
 
9466
+ Object.defineProperty(exports, 'Hue', {
9467
+ enumerable: true,
9468
+ get: function get() {
9469
+ return _interopRequireDefault(_Hue).default;
9470
+ }
9471
+ });
9472
 
9473
+ var _Raised = __webpack_require__(677);
 
 
 
 
 
 
 
9474
 
9475
+ Object.defineProperty(exports, 'Raised', {
9476
+ enumerable: true,
9477
+ get: function get() {
9478
+ return _interopRequireDefault(_Raised).default;
9479
+ }
9480
+ });
9481
 
9482
+ var _Saturation = __webpack_require__(678);
 
9483
 
9484
+ Object.defineProperty(exports, 'Saturation', {
9485
+ enumerable: true,
9486
+ get: function get() {
9487
+ return _interopRequireDefault(_Saturation).default;
 
 
 
9488
  }
9489
+ });
 
 
 
 
9490
 
9491
+ var _ColorWrap = __webpack_require__(683);
9492
 
9493
+ Object.defineProperty(exports, 'ColorWrap', {
9494
+ enumerable: true,
9495
+ get: function get() {
9496
+ return _interopRequireDefault(_ColorWrap).default;
9497
  }
9498
+ });
9499
 
9500
+ var _Swatch = __webpack_require__(686);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9501
 
9502
+ Object.defineProperty(exports, 'Swatch', {
9503
+ enumerable: true,
9504
+ get: function get() {
9505
+ return _interopRequireDefault(_Swatch).default;
 
 
 
 
9506
  }
9507
+ });
9508
 
9509
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
 
9510
 
9511
+ /***/ }),
9512
+ /* 79 */
9513
+ /***/ (function(module, exports, __webpack_require__) {
9514
 
9515
+ var Symbol = __webpack_require__(124),
9516
+ getRawTag = __webpack_require__(318),
9517
+ objectToString = __webpack_require__(319);
9518
 
9519
+ /** `Object#toString` result references. */
9520
+ var nullTag = '[object Null]',
9521
+ undefinedTag = '[object Undefined]';
9522
 
9523
+ /** Built-in value references. */
9524
+ var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
 
 
 
9525
 
9526
+ /**
9527
+ * The base implementation of `getTag` without fallbacks for buggy environments.
9528
+ *
9529
+ * @private
9530
+ * @param {*} value The value to query.
9531
+ * @returns {string} Returns the `toStringTag`.
9532
+ */
9533
+ function baseGetTag(value) {
9534
+ if (value == null) {
9535
+ return value === undefined ? undefinedTag : nullTag;
9536
  }
9537
+ return (symToStringTag && symToStringTag in Object(value))
9538
+ ? getRawTag(value)
9539
+ : objectToString(value);
9540
+ }
9541
 
9542
+ module.exports = baseGetTag;
9543
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9544
 
9545
+ /***/ }),
9546
+ /* 80 */
9547
+ /***/ (function(module, exports) {
 
9548
 
9549
+ var hasOwnProperty = {}.hasOwnProperty;
 
 
 
 
9550
 
9551
+ module.exports = function (it, key) {
9552
+ return hasOwnProperty.call(it, key);
9553
+ };
 
 
9554
 
 
 
9555
 
9556
+ /***/ }),
9557
+ /* 81 */
9558
+ /***/ (function(module, exports) {
9559
 
9560
+ var hasOwnProperty = {}.hasOwnProperty;
9561
+ module.exports = function (it, key) {
9562
+ return hasOwnProperty.call(it, key);
9563
+ };
 
 
 
 
 
9564
 
 
 
 
 
 
9565
 
9566
+ /***/ }),
9567
+ /* 82 */
9568
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9569
 
9570
+ // to indexed object, toObject with fallback for non-array-like ES3 strings
9571
+ var IObject = __webpack_require__(212);
9572
+ var defined = __webpack_require__(105);
9573
+ module.exports = function (it) {
9574
+ return IObject(defined(it));
9575
+ };
 
 
 
9576
 
 
 
 
 
 
9577
 
9578
+ /***/ }),
9579
+ /* 83 */
9580
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
9581
 
9582
+ var pIE = __webpack_require__(213);
9583
+ var createDesc = __webpack_require__(146);
9584
+ var toIObject = __webpack_require__(82);
9585
+ var toPrimitive = __webpack_require__(104);
9586
+ var has = __webpack_require__(81);
9587
+ var IE8_DOM_DEFINE = __webpack_require__(470);
9588
+ var gOPD = Object.getOwnPropertyDescriptor;
9589
 
9590
+ exports.f = __webpack_require__(42) ? gOPD : function getOwnPropertyDescriptor(O, P) {
9591
+ O = toIObject(O);
9592
+ P = toPrimitive(P, true);
9593
+ if (IE8_DOM_DEFINE) try {
9594
+ return gOPD(O, P);
9595
+ } catch (e) { /* empty */ }
9596
+ if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
9597
+ };
9598
 
 
 
 
9599
 
9600
+ /***/ }),
9601
+ /* 84 */
9602
+ /***/ (function(module, exports, __webpack_require__) {
9603
 
9604
+ // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
9605
+ var has = __webpack_require__(81);
9606
+ var toObject = __webpack_require__(50);
9607
+ var IE_PROTO = __webpack_require__(376)('IE_PROTO');
9608
+ var ObjectProto = Object.prototype;
9609
 
9610
+ module.exports = Object.getPrototypeOf || function (O) {
9611
+ O = toObject(O);
9612
+ if (has(O, IE_PROTO)) return O[IE_PROTO];
9613
+ if (typeof O.constructor == 'function' && O instanceof O.constructor) {
9614
+ return O.constructor.prototype;
9615
+ } return O instanceof Object ? ObjectProto : null;
9616
+ };
 
9617
 
 
9618
 
9619
+ /***/ }),
9620
+ /* 85 */
9621
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
9622
 
9623
+ "use strict";
9624
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return createChainedFunction; });
9625
+ /**
9626
+ * Safe chained function
9627
+ *
9628
+ * Will only create a new function if needed,
9629
+ * otherwise will pass back existing functions or null.
9630
+ *
9631
+ * @param {function} functions to chain
9632
+ * @returns {function|null}
9633
+ */
9634
+ function createChainedFunction() {
9635
+ for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {
9636
+ funcs[_key] = arguments[_key];
9637
+ }
9638
 
9639
+ return funcs.reduce(function (acc, func) {
9640
+ if (func == null) {
9641
+ return acc;
9642
  }
9643
 
9644
+ if (false) {}
9645
+
9646
+ return function chainedFunction() {
9647
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
9648
+ args[_key2] = arguments[_key2];
9649
  }
9650
 
9651
+ acc.apply(this, args);
9652
+ func.apply(this, args);
9653
  };
9654
+ }, function () {});
9655
+ }
9656
 
9657
+ /***/ }),
9658
+ /* 86 */
9659
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
 
9660
 
9661
+ "use strict";
9662
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return formControlState; });
9663
+ function formControlState(_ref) {
9664
+ var props = _ref.props,
9665
+ states = _ref.states,
9666
+ muiFormControl = _ref.muiFormControl;
9667
+ return states.reduce(function (acc, state) {
9668
+ acc[state] = props[state];
 
 
 
 
 
 
 
9669
 
9670
+ if (muiFormControl) {
9671
+ if (typeof props[state] === 'undefined') {
9672
+ acc[state] = muiFormControl[state];
9673
+ }
 
 
 
 
9674
  }
 
 
 
 
 
 
 
 
 
 
9675
 
9676
+ return acc;
9677
+ }, {});
 
9678
  }
9679
 
9680
+ /***/ }),
9681
+ /* 87 */
9682
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
 
 
9683
 
9684
+ "use strict";
9685
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useFormControl; });
9686
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
9687
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
9688
+ /* harmony import */ var _FormControlContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(110);
9689
+
9690
+
9691
+ function useFormControl() {
9692
+ return react__WEBPACK_IMPORTED_MODULE_0__["useContext"](_FormControlContext__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"]);
9693
  }
9694
 
9695
+ /***/ }),
9696
+ /* 88 */
9697
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
9698
+
9699
+ "use strict";
9700
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return reflow; });
9701
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getTransitionProps; });
9702
+ var reflow = function reflow(node) {
9703
+ return node.scrollTop;
9704
+ };
9705
+ function getTransitionProps(props, options) {
9706
+ var timeout = props.timeout,
9707
+ _props$style = props.style,
9708
+ style = _props$style === void 0 ? {} : _props$style;
9709
+ return {
9710
+ duration: style.transitionDuration || typeof timeout === 'number' ? timeout : timeout[options.mode] || 0,
9711
+ delay: style.transitionDelay
9712
+ };
9713
  }
9714
 
9715
+ /***/ }),
9716
+ /* 89 */
9717
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
9718
 
9719
+ "use strict";
 
 
 
 
 
 
 
 
 
 
 
9720
 
9721
+ // EXPORTS
9722
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ createBrowserHistory; });
9723
+ __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ createHashHistory; });
9724
+ __webpack_require__.d(__webpack_exports__, "d", function() { return /* binding */ createMemoryHistory; });
9725
+ __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ createLocation; });
9726
+ __webpack_require__.d(__webpack_exports__, "f", function() { return /* binding */ locationsAreEqual; });
9727
+ __webpack_require__.d(__webpack_exports__, "e", function() { return /* binding */ createPath; });
9728
 
9729
+ // UNUSED EXPORTS: parsePath
9730
 
9731
+ // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
9732
+ var esm_extends = __webpack_require__(2);
9733
 
9734
+ // CONCATENATED MODULE: ./node_modules/resolve-pathname/esm/resolve-pathname.js
9735
+ function isAbsolute(pathname) {
9736
+ return pathname.charAt(0) === '/';
9737
+ }
9738
+
9739
+ // About 1.5x faster than the two-arg version of Array#splice()
9740
+ function spliceOne(list, index) {
9741
+ for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1) {
9742
+ list[i] = list[k];
9743
  }
9744
 
9745
+ list.pop();
9746
+ }
9747
 
9748
+ // This implementation is based heavily on node's url.parse
9749
+ function resolvePathname(to, from) {
9750
+ if (from === undefined) from = '';
9751
 
9752
+ var toParts = (to && to.split('/')) || [];
9753
+ var fromParts = (from && from.split('/')) || [];
 
9754
 
9755
+ var isToAbs = to && isAbsolute(to);
9756
+ var isFromAbs = from && isAbsolute(from);
9757
+ var mustEndAbs = isToAbs || isFromAbs;
9758
+
9759
+ if (to && isAbsolute(to)) {
9760
+ // to is absolute
9761
+ fromParts = toParts;
9762
+ } else if (toParts.length) {
9763
+ // to is relative, drop the filename
9764
+ fromParts.pop();
9765
+ fromParts = fromParts.concat(toParts);
9766
+ }
9767
+
9768
+ if (!fromParts.length) return '/';
9769
+
9770
+ var hasTrailingSlash;
9771
+ if (fromParts.length) {
9772
+ var last = fromParts[fromParts.length - 1];
9773
+ hasTrailingSlash = last === '.' || last === '..' || last === '';
9774
+ } else {
9775
+ hasTrailingSlash = false;
9776
+ }
9777
+
9778
+ var up = 0;
9779
+ for (var i = fromParts.length; i >= 0; i--) {
9780
+ var part = fromParts[i];
9781
+
9782
+ if (part === '.') {
9783
+ spliceOne(fromParts, i);
9784
+ } else if (part === '..') {
9785
+ spliceOne(fromParts, i);
9786
+ up++;
9787
+ } else if (up) {
9788
+ spliceOne(fromParts, i);
9789
+ up--;
9790
+ }
9791
+ }
9792
+
9793
+ if (!mustEndAbs) for (; up--; up) fromParts.unshift('..');
9794
+
9795
+ if (
9796
+ mustEndAbs &&
9797
+ fromParts[0] !== '' &&
9798
+ (!fromParts[0] || !isAbsolute(fromParts[0]))
9799
+ )
9800
+ fromParts.unshift('');
9801
+
9802
+ var result = fromParts.join('/');
9803
+
9804
+ if (hasTrailingSlash && result.substr(-1) !== '/') result += '/';
9805
+
9806
+ return result;
9807
+ }
9808
+
9809
+ /* harmony default export */ var resolve_pathname = (resolvePathname);
9810
+
9811
+ // CONCATENATED MODULE: ./node_modules/value-equal/esm/value-equal.js
9812
+ function value_equal_valueOf(obj) {
9813
+ return obj.valueOf ? obj.valueOf() : Object.prototype.valueOf.call(obj);
9814
+ }
9815
+
9816
+ function valueEqual(a, b) {
9817
+ // Test for strict equality first.
9818
+ if (a === b) return true;
9819
+
9820
+ // Otherwise, if either of them == null they are not equal.
9821
+ if (a == null || b == null) return false;
9822
+
9823
+ if (Array.isArray(a)) {
9824
+ return (
9825
+ Array.isArray(b) &&
9826
+ a.length === b.length &&
9827
+ a.every(function(item, index) {
9828
+ return valueEqual(item, b[index]);
9829
+ })
9830
+ );
9831
+ }
9832
+
9833
+ if (typeof a === 'object' || typeof b === 'object') {
9834
+ var aValue = value_equal_valueOf(a);
9835
+ var bValue = value_equal_valueOf(b);
9836
+
9837
+ if (aValue !== a || bValue !== b) return valueEqual(aValue, bValue);
9838
+
9839
+ return Object.keys(Object.assign({}, a, b)).every(function(key) {
9840
+ return valueEqual(a[key], b[key]);
9841
+ });
9842
+ }
9843
+
9844
+ return false;
9845
+ }
9846
+
9847
+ /* harmony default export */ var value_equal = (valueEqual);
9848
+
9849
+ // EXTERNAL MODULE: ./node_modules/tiny-invariant/dist/tiny-invariant.esm.js
9850
+ var tiny_invariant_esm = __webpack_require__(64);
9851
+
9852
+ // CONCATENATED MODULE: ./node_modules/history/esm/history.js
9853
+
9854
+
9855
+
9856
+
9857
+
9858
+
9859
+ function addLeadingSlash(path) {
9860
+ return path.charAt(0) === '/' ? path : '/' + path;
9861
+ }
9862
+ function stripLeadingSlash(path) {
9863
+ return path.charAt(0) === '/' ? path.substr(1) : path;
9864
+ }
9865
+ function hasBasename(path, prefix) {
9866
+ return path.toLowerCase().indexOf(prefix.toLowerCase()) === 0 && '/?#'.indexOf(path.charAt(prefix.length)) !== -1;
9867
+ }
9868
+ function stripBasename(path, prefix) {
9869
+ return hasBasename(path, prefix) ? path.substr(prefix.length) : path;
9870
+ }
9871
+ function stripTrailingSlash(path) {
9872
+ return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;
9873
+ }
9874
+ function parsePath(path) {
9875
+ var pathname = path || '/';
9876
+ var search = '';
9877
+ var hash = '';
9878
+ var hashIndex = pathname.indexOf('#');
9879
+
9880
+ if (hashIndex !== -1) {
9881
+ hash = pathname.substr(hashIndex);
9882
+ pathname = pathname.substr(0, hashIndex);
9883
+ }
9884
+
9885
+ var searchIndex = pathname.indexOf('?');
9886
+
9887
+ if (searchIndex !== -1) {
9888
+ search = pathname.substr(searchIndex);
9889
+ pathname = pathname.substr(0, searchIndex);
9890
+ }
9891
+
9892
+ return {
9893
+ pathname: pathname,
9894
+ search: search === '?' ? '' : search,
9895
+ hash: hash === '#' ? '' : hash
9896
+ };
9897
+ }
9898
+ function createPath(location) {
9899
+ var pathname = location.pathname,
9900
+ search = location.search,
9901
+ hash = location.hash;
9902
+ var path = pathname || '/';
9903
+ if (search && search !== '?') path += search.charAt(0) === '?' ? search : "?" + search;
9904
+ if (hash && hash !== '#') path += hash.charAt(0) === '#' ? hash : "#" + hash;
9905
+ return path;
9906
+ }
9907
+
9908
+ function createLocation(path, state, key, currentLocation) {
9909
+ var location;
9910
+
9911
+ if (typeof path === 'string') {
9912
+ // Two-arg form: push(path, state)
9913
+ location = parsePath(path);
9914
+ location.state = state;
9915
+ } else {
9916
+ // One-arg form: push(location)
9917
+ location = Object(esm_extends["a" /* default */])({}, path);
9918
+ if (location.pathname === undefined) location.pathname = '';
9919
+
9920
+ if (location.search) {
9921
+ if (location.search.charAt(0) !== '?') location.search = '?' + location.search;
9922
  } else {
9923
+ location.search = '';
9924
+ }
 
9925
 
9926
+ if (location.hash) {
9927
+ if (location.hash.charAt(0) !== '#') location.hash = '#' + location.hash;
9928
+ } else {
9929
+ location.hash = '';
9930
+ }
9931
 
9932
+ if (state !== undefined && location.state === undefined) location.state = state;
9933
+ }
9934
+
9935
+ try {
9936
+ location.pathname = decodeURI(location.pathname);
9937
+ } catch (e) {
9938
+ if (e instanceof URIError) {
9939
+ throw new URIError('Pathname "' + location.pathname + '" could not be decoded. ' + 'This is likely caused by an invalid percent-encoding.');
9940
+ } else {
9941
+ throw e;
9942
+ }
9943
+ }
9944
+
9945
+ if (key) location.key = key;
9946
+
9947
+ if (currentLocation) {
9948
+ // Resolve incomplete/relative pathname relative to current location.
9949
+ if (!location.pathname) {
9950
+ location.pathname = currentLocation.pathname;
9951
+ } else if (location.pathname.charAt(0) !== '/') {
9952
+ location.pathname = resolve_pathname(location.pathname, currentLocation.pathname);
9953
+ }
9954
+ } else {
9955
+ // When there is no prior location and pathname is empty, set it to /
9956
+ if (!location.pathname) {
9957
+ location.pathname = '/';
9958
+ }
9959
+ }
9960
+
9961
+ return location;
9962
+ }
9963
+ function locationsAreEqual(a, b) {
9964
+ return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash && a.key === b.key && value_equal(a.state, b.state);
9965
+ }
9966
+
9967
+ function createTransitionManager() {
9968
+ var prompt = null;
9969
+
9970
+ function setPrompt(nextPrompt) {
9971
+ false ? undefined : void 0;
9972
+ prompt = nextPrompt;
9973
+ return function () {
9974
+ if (prompt === nextPrompt) prompt = null;
9975
+ };
9976
+ }
9977
+
9978
+ function confirmTransitionTo(location, action, getUserConfirmation, callback) {
9979
+ // TODO: If another transition starts while we're still confirming
9980
+ // the previous one, we may end up in a weird state. Figure out the
9981
+ // best way to handle this.
9982
+ if (prompt != null) {
9983
+ var result = typeof prompt === 'function' ? prompt(location, action) : prompt;
9984
+
9985
+ if (typeof result === 'string') {
9986
+ if (typeof getUserConfirmation === 'function') {
9987
+ getUserConfirmation(result, callback);
9988
+ } else {
9989
+ false ? undefined : void 0;
9990
+ callback(true);
9991
+ }
9992
+ } else {
9993
+ // Return false from a transition hook to cancel the transition.
9994
+ callback(result !== false);
9995
+ }
9996
+ } else {
9997
+ callback(true);
9998
+ }
9999
+ }
10000
+
10001
+ var listeners = [];
10002
+
10003
+ function appendListener(fn) {
10004
+ var isActive = true;
10005
+
10006
+ function listener() {
10007
+ if (isActive) fn.apply(void 0, arguments);
10008
  }
10009
+
10010
+ listeners.push(listener);
10011
+ return function () {
10012
+ isActive = false;
10013
+ listeners = listeners.filter(function (item) {
10014
+ return item !== listener;
10015
+ });
10016
+ };
10017
+ }
10018
+
10019
+ function notifyListeners() {
10020
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
10021
+ args[_key] = arguments[_key];
10022
+ }
10023
+
10024
+ listeners.forEach(function (listener) {
10025
+ return listener.apply(void 0, args);
10026
+ });
10027
+ }
10028
+
10029
+ return {
10030
+ setPrompt: setPrompt,
10031
+ confirmTransitionTo: confirmTransitionTo,
10032
+ appendListener: appendListener,
10033
+ notifyListeners: notifyListeners
10034
+ };
10035
+ }
10036
+
10037
+ var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
10038
+ function getConfirmation(message, callback) {
10039
+ callback(window.confirm(message)); // eslint-disable-line no-alert
10040
+ }
10041
+ /**
10042
+ * Returns true if the HTML5 history API is supported. Taken from Modernizr.
10043
+ *
10044
+ * https://github.com/Modernizr/Modernizr/blob/master/LICENSE
10045
+ * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js
10046
+ * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586
10047
+ */
10048
+
10049
+ function supportsHistory() {
10050
+ var ua = window.navigator.userAgent;
10051
+ 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;
10052
+ return window.history && 'pushState' in window.history;
10053
+ }
10054
+ /**
10055
+ * Returns true if browser fires popstate on hash change.
10056
+ * IE10 and IE11 do not.
10057
+ */
10058
+
10059
+ function supportsPopStateOnHashChange() {
10060
+ return window.navigator.userAgent.indexOf('Trident') === -1;
10061
+ }
10062
+ /**
10063
+ * Returns false if using go(n) with hash history causes a full page reload.
10064
+ */
10065
+
10066
+ function supportsGoWithoutReloadUsingHash() {
10067
+ return window.navigator.userAgent.indexOf('Firefox') === -1;
10068
+ }
10069
+ /**
10070
+ * Returns true if a given popstate event is an extraneous WebKit event.
10071
+ * Accounts for the fact that Chrome on iOS fires real popstate events
10072
+ * containing undefined state when pressing the back button.
10073
+ */
10074
+
10075
+ function isExtraneousPopstateEvent(event) {
10076
+ return event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1;
10077
+ }
10078
+
10079
+ var PopStateEvent = 'popstate';
10080
+ var HashChangeEvent = 'hashchange';
10081
+
10082
+ function getHistoryState() {
10083
+ try {
10084
+ return window.history.state || {};
10085
+ } catch (e) {
10086
+ // IE 11 sometimes throws when accessing window.history.state
10087
+ // See https://github.com/ReactTraining/history/pull/289
10088
+ return {};
10089
+ }
10090
+ }
10091
+ /**
10092
+ * Creates a history object that uses the HTML5 history API including
10093
+ * pushState, replaceState, and the popstate event.
10094
+ */
10095
+
10096
+
10097
+ function createBrowserHistory(props) {
10098
+ if (props === void 0) {
10099
+ props = {};
10100
+ }
10101
+
10102
+ !canUseDOM ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
10103
+ var globalHistory = window.history;
10104
+ var canUseHistory = supportsHistory();
10105
+ var needsHashChangeListener = !supportsPopStateOnHashChange();
10106
+ var _props = props,
10107
+ _props$forceRefresh = _props.forceRefresh,
10108
+ forceRefresh = _props$forceRefresh === void 0 ? false : _props$forceRefresh,
10109
+ _props$getUserConfirm = _props.getUserConfirmation,
10110
+ getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,
10111
+ _props$keyLength = _props.keyLength,
10112
+ keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength;
10113
+ var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';
10114
+
10115
+ function getDOMLocation(historyState) {
10116
+ var _ref = historyState || {},
10117
+ key = _ref.key,
10118
+ state = _ref.state;
10119
+
10120
+ var _window$location = window.location,
10121
+ pathname = _window$location.pathname,
10122
+ search = _window$location.search,
10123
+ hash = _window$location.hash;
10124
+ var path = pathname + search + hash;
10125
+ false ? undefined : void 0;
10126
+ if (basename) path = stripBasename(path, basename);
10127
+ return createLocation(path, state, key);
10128
+ }
10129
+
10130
+ function createKey() {
10131
+ return Math.random().toString(36).substr(2, keyLength);
10132
+ }
10133
+
10134
+ var transitionManager = createTransitionManager();
10135
+
10136
+ function setState(nextState) {
10137
+ Object(esm_extends["a" /* default */])(history, nextState);
10138
+
10139
+ history.length = globalHistory.length;
10140
+ transitionManager.notifyListeners(history.location, history.action);
10141
+ }
10142
+
10143
+ function handlePopState(event) {
10144
+ // Ignore extraneous popstate events in WebKit.
10145
+ if (isExtraneousPopstateEvent(event)) return;
10146
+ handlePop(getDOMLocation(event.state));
10147
+ }
10148
+
10149
+ function handleHashChange() {
10150
+ handlePop(getDOMLocation(getHistoryState()));
10151
  }
10152
 
10153
+ var forceNextPop = false;
10154
+
10155
  function handlePop(location) {
10156
  if (forceNextPop) {
10157
  forceNextPop = false;
10173
 
10174
  function revertPop(fromLocation) {
10175
  var toLocation = history.location; // TODO: We could probably make this more reliable by
10176
+ // keeping a list of keys we've seen in sessionStorage.
10177
+ // Instead, we just default to 0 for keys we don't know.
10178
 
10179
+ var toIndex = allKeys.indexOf(toLocation.key);
10180
  if (toIndex === -1) toIndex = 0;
10181
+ var fromIndex = allKeys.indexOf(fromLocation.key);
10182
  if (fromIndex === -1) fromIndex = 0;
10183
  var delta = toIndex - fromIndex;
10184
 
10186
  forceNextPop = true;
10187
  go(delta);
10188
  }
10189
+ }
 
10190
 
10191
+ var initialLocation = getDOMLocation(getHistoryState());
10192
+ var allKeys = [initialLocation.key]; // Public interface
 
 
 
10193
 
10194
  function createHref(location) {
10195
+ return basename + createPath(location);
 
 
 
 
 
 
 
10196
  }
10197
 
10198
  function push(path, state) {
10199
  false ? undefined : void 0;
10200
  var action = 'PUSH';
10201
+ var location = createLocation(path, state, createKey(), history.location);
10202
  transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
10203
  if (!ok) return;
10204
+ var href = createHref(location);
10205
+ var key = location.key,
10206
+ state = location.state;
10207
 
10208
+ if (canUseHistory) {
10209
+ globalHistory.pushState({
10210
+ key: key,
10211
+ state: state
10212
+ }, null, href);
10213
+
10214
+ if (forceRefresh) {
10215
+ window.location.href = href;
10216
+ } else {
10217
+ var prevIndex = allKeys.indexOf(history.location.key);
10218
+ var nextKeys = allKeys.slice(0, prevIndex + 1);
10219
+ nextKeys.push(location.key);
10220
+ allKeys = nextKeys;
10221
+ setState({
10222
+ action: action,
10223
+ location: location
10224
+ });
10225
+ }
10226
  } else {
10227
  false ? undefined : void 0;
10228
+ window.location.href = href;
10229
  }
10230
  });
10231
  }
10233
  function replace(path, state) {
10234
  false ? undefined : void 0;
10235
  var action = 'REPLACE';
10236
+ var location = createLocation(path, state, createKey(), history.location);
10237
  transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
10238
  if (!ok) return;
10239
+ var href = createHref(location);
10240
+ var key = location.key,
10241
+ state = location.state;
10242
 
10243
+ if (canUseHistory) {
10244
+ globalHistory.replaceState({
10245
+ key: key,
10246
+ state: state
10247
+ }, null, href);
 
 
10248
 
10249
+ if (forceRefresh) {
10250
+ window.location.replace(href);
10251
+ } else {
10252
+ var prevIndex = allKeys.indexOf(history.location.key);
10253
+ if (prevIndex !== -1) allKeys[prevIndex] = location.key;
10254
+ setState({
10255
+ action: action,
10256
+ location: location
10257
+ });
10258
+ }
10259
+ } else {
10260
+ false ? undefined : void 0;
10261
+ window.location.replace(href);
10262
+ }
10263
  });
10264
  }
10265
 
10266
  function go(n) {
 
10267
  globalHistory.go(n);
10268
  }
10269
 
10281
  listenerCount += delta;
10282
 
10283
  if (listenerCount === 1 && delta === 1) {
10284
+ window.addEventListener(PopStateEvent, handlePopState);
10285
+ if (needsHashChangeListener) window.addEventListener(HashChangeEvent, handleHashChange);
10286
+ } else if (listenerCount === 0) {
10287
+ window.removeEventListener(PopStateEvent, handlePopState);
10288
+ if (needsHashChangeListener) window.removeEventListener(HashChangeEvent, handleHashChange);
10289
+ }
10290
+ }
10291
+
10292
+ var isBlocked = false;
10293
+
10294
+ function block(prompt) {
10295
+ if (prompt === void 0) {
10296
+ prompt = false;
10297
+ }
10298
+
10299
+ var unblock = transitionManager.setPrompt(prompt);
10300
+
10301
+ if (!isBlocked) {
10302
+ checkDOMListeners(1);
10303
+ isBlocked = true;
10304
+ }
10305
+
10306
+ return function () {
10307
+ if (isBlocked) {
10308
+ isBlocked = false;
10309
+ checkDOMListeners(-1);
10310
+ }
10311
+
10312
+ return unblock();
10313
+ };
10314
+ }
10315
+
10316
+ function listen(listener) {
10317
+ var unlisten = transitionManager.appendListener(listener);
10318
+ checkDOMListeners(1);
10319
+ return function () {
10320
+ checkDOMListeners(-1);
10321
+ unlisten();
10322
+ };
10323
+ }
10324
+
10325
+ var history = {
10326
+ length: globalHistory.length,
10327
+ action: 'POP',
10328
+ location: initialLocation,
10329
+ createHref: createHref,
10330
+ push: push,
10331
+ replace: replace,
10332
+ go: go,
10333
+ goBack: goBack,
10334
+ goForward: goForward,
10335
+ block: block,
10336
+ listen: listen
10337
+ };
10338
+ return history;
10339
+ }
10340
+
10341
+ var HashChangeEvent$1 = 'hashchange';
10342
+ var HashPathCoders = {
10343
+ hashbang: {
10344
+ encodePath: function encodePath(path) {
10345
+ return path.charAt(0) === '!' ? path : '!/' + stripLeadingSlash(path);
10346
+ },
10347
+ decodePath: function decodePath(path) {
10348
+ return path.charAt(0) === '!' ? path.substr(1) : path;
10349
+ }
10350
+ },
10351
+ noslash: {
10352
+ encodePath: stripLeadingSlash,
10353
+ decodePath: addLeadingSlash
10354
+ },
10355
+ slash: {
10356
+ encodePath: addLeadingSlash,
10357
+ decodePath: addLeadingSlash
10358
+ }
10359
+ };
10360
+
10361
+ function stripHash(url) {
10362
+ var hashIndex = url.indexOf('#');
10363
+ return hashIndex === -1 ? url : url.slice(0, hashIndex);
10364
+ }
10365
+
10366
+ function getHashPath() {
10367
+ // We can't use window.location.hash here because it's not
10368
+ // consistent across browsers - Firefox will pre-decode it!
10369
+ var href = window.location.href;
10370
+ var hashIndex = href.indexOf('#');
10371
+ return hashIndex === -1 ? '' : href.substring(hashIndex + 1);
10372
+ }
10373
+
10374
+ function pushHashPath(path) {
10375
+ window.location.hash = path;
10376
+ }
10377
+
10378
+ function replaceHashPath(path) {
10379
+ window.location.replace(stripHash(window.location.href) + '#' + path);
10380
+ }
10381
+
10382
+ function createHashHistory(props) {
10383
+ if (props === void 0) {
10384
+ props = {};
10385
+ }
10386
+
10387
+ !canUseDOM ? false ? undefined : Object(tiny_invariant_esm["a" /* default */])(false) : void 0;
10388
+ var globalHistory = window.history;
10389
+ var canGoWithoutReload = supportsGoWithoutReloadUsingHash();
10390
+ var _props = props,
10391
+ _props$getUserConfirm = _props.getUserConfirmation,
10392
+ getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,
10393
+ _props$hashType = _props.hashType,
10394
+ hashType = _props$hashType === void 0 ? 'slash' : _props$hashType;
10395
+ var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';
10396
+ var _HashPathCoders$hashT = HashPathCoders[hashType],
10397
+ encodePath = _HashPathCoders$hashT.encodePath,
10398
+ decodePath = _HashPathCoders$hashT.decodePath;
10399
+
10400
+ function getDOMLocation() {
10401
+ var path = decodePath(getHashPath());
10402
+ false ? undefined : void 0;
10403
+ if (basename) path = stripBasename(path, basename);
10404
+ return createLocation(path);
10405
+ }
10406
+
10407
+ var transitionManager = createTransitionManager();
10408
+
10409
+ function setState(nextState) {
10410
+ Object(esm_extends["a" /* default */])(history, nextState);
10411
+
10412
+ history.length = globalHistory.length;
10413
+ transitionManager.notifyListeners(history.location, history.action);
10414
+ }
10415
+
10416
+ var forceNextPop = false;
10417
+ var ignorePath = null;
10418
+
10419
+ function locationsAreEqual$$1(a, b) {
10420
+ return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash;
10421
+ }
10422
+
10423
+ function handleHashChange() {
10424
+ var path = getHashPath();
10425
+ var encodedPath = encodePath(path);
10426
+
10427
+ if (path !== encodedPath) {
10428
+ // Ensure we always have a properly-encoded hash.
10429
+ replaceHashPath(encodedPath);
10430
+ } else {
10431
+ var location = getDOMLocation();
10432
+ var prevLocation = history.location;
10433
+ if (!forceNextPop && locationsAreEqual$$1(prevLocation, location)) return; // A hashchange doesn't always == location change.
10434
+
10435
+ if (ignorePath === createPath(location)) return; // Ignore this change; we already setState in push/replace.
10436
+
10437
+ ignorePath = null;
10438
+ handlePop(location);
10439
+ }
10440
+ }
10441
+
10442
+ function handlePop(location) {
10443
+ if (forceNextPop) {
10444
+ forceNextPop = false;
10445
+ setState();
10446
+ } else {
10447
+ var action = 'POP';
10448
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
10449
+ if (ok) {
10450
+ setState({
10451
+ action: action,
10452
+ location: location
10453
+ });
10454
+ } else {
10455
+ revertPop(location);
10456
+ }
10457
+ });
10458
+ }
10459
+ }
10460
+
10461
+ function revertPop(fromLocation) {
10462
+ var toLocation = history.location; // TODO: We could probably make this more reliable by
10463
+ // keeping a list of paths we've seen in sessionStorage.
10464
+ // Instead, we just default to 0 for paths we don't know.
10465
+
10466
+ var toIndex = allPaths.lastIndexOf(createPath(toLocation));
10467
+ if (toIndex === -1) toIndex = 0;
10468
+ var fromIndex = allPaths.lastIndexOf(createPath(fromLocation));
10469
+ if (fromIndex === -1) fromIndex = 0;
10470
+ var delta = toIndex - fromIndex;
10471
+
10472
+ if (delta) {
10473
+ forceNextPop = true;
10474
+ go(delta);
10475
+ }
10476
+ } // Ensure the hash is encoded properly before doing anything else.
10477
+
10478
+
10479
+ var path = getHashPath();
10480
+ var encodedPath = encodePath(path);
10481
+ if (path !== encodedPath) replaceHashPath(encodedPath);
10482
+ var initialLocation = getDOMLocation();
10483
+ var allPaths = [createPath(initialLocation)]; // Public interface
10484
+
10485
+ function createHref(location) {
10486
+ var baseTag = document.querySelector('base');
10487
+ var href = '';
10488
+
10489
+ if (baseTag && baseTag.getAttribute('href')) {
10490
+ href = stripHash(window.location.href);
10491
+ }
10492
+
10493
+ return href + '#' + encodePath(basename + createPath(location));
10494
+ }
10495
+
10496
+ function push(path, state) {
10497
+ false ? undefined : void 0;
10498
+ var action = 'PUSH';
10499
+ var location = createLocation(path, undefined, undefined, history.location);
10500
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
10501
+ if (!ok) return;
10502
+ var path = createPath(location);
10503
+ var encodedPath = encodePath(basename + path);
10504
+ var hashChanged = getHashPath() !== encodedPath;
10505
+
10506
+ if (hashChanged) {
10507
+ // We cannot tell if a hashchange was caused by a PUSH, so we'd
10508
+ // rather setState here and ignore the hashchange. The caveat here
10509
+ // is that other hash histories in the page will consider it a POP.
10510
+ ignorePath = path;
10511
+ pushHashPath(encodedPath);
10512
+ var prevIndex = allPaths.lastIndexOf(createPath(history.location));
10513
+ var nextPaths = allPaths.slice(0, prevIndex + 1);
10514
+ nextPaths.push(path);
10515
+ allPaths = nextPaths;
10516
+ setState({
10517
+ action: action,
10518
+ location: location
10519
+ });
10520
+ } else {
10521
+ false ? undefined : void 0;
10522
+ setState();
10523
+ }
10524
+ });
10525
+ }
10526
+
10527
+ function replace(path, state) {
10528
+ false ? undefined : void 0;
10529
+ var action = 'REPLACE';
10530
+ var location = createLocation(path, undefined, undefined, history.location);
10531
+ transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {
10532
+ if (!ok) return;
10533
+ var path = createPath(location);
10534
+ var encodedPath = encodePath(basename + path);
10535
+ var hashChanged = getHashPath() !== encodedPath;
10536
+
10537
+ if (hashChanged) {
10538
+ // We cannot tell if a hashchange was caused by a REPLACE, so we'd
10539
+ // rather setState here and ignore the hashchange. The caveat here
10540
+ // is that other hash histories in the page will consider it a POP.
10541
+ ignorePath = path;
10542
+ replaceHashPath(encodedPath);
10543
+ }
10544
+
10545
+ var prevIndex = allPaths.indexOf(createPath(history.location));
10546
+ if (prevIndex !== -1) allPaths[prevIndex] = path;
10547
+ setState({
10548
+ action: action,
10549
+ location: location
10550
+ });
10551
+ });
10552
+ }
10553
+
10554
+ function go(n) {
10555
+ false ? undefined : void 0;
10556
+ globalHistory.go(n);
10557
+ }
10558
+
10559
+ function goBack() {
10560
+ go(-1);
10561
+ }
10562
+
10563
+ function goForward() {
10564
+ go(1);
10565
+ }
10566
+
10567
+ var listenerCount = 0;
10568
+
10569
+ function checkDOMListeners(delta) {
10570
+ listenerCount += delta;
10571
+
10572
+ if (listenerCount === 1 && delta === 1) {
10573
+ window.addEventListener(HashChangeEvent$1, handleHashChange);
10574
+ } else if (listenerCount === 0) {
10575
  window.removeEventListener(HashChangeEvent$1, handleHashChange);
10576
  }
10577
  }
10772
 
10773
 
10774
  /***/ }),
10775
+ /* 90 */
10776
  /***/ (function(module, exports) {
10777
 
10778
  /**
10815
 
10816
 
10817
  /***/ }),
10818
+ /* 91 */
10819
  /***/ (function(module, exports, __webpack_require__) {
10820
 
10821
+ var baseIsNative = __webpack_require__(317),
10822
+ getValue = __webpack_require__(322);
10823
 
10824
  /**
10825
  * Gets the native function at `key` of `object`.
10838
 
10839
 
10840
  /***/ }),
10841
+ /* 92 */
10842
  /***/ (function(module, exports) {
10843
 
10844
  module.exports = function (it) {
10847
 
10848
 
10849
  /***/ }),
10850
+ /* 93 */
10851
  /***/ (function(module, exports, __webpack_require__) {
10852
 
10853
+ var isObject = __webpack_require__(92);
10854
 
10855
  module.exports = function (it) {
10856
  if (!isObject(it)) {
10860
 
10861
 
10862
  /***/ }),
10863
+ /* 94 */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10864
  /***/ (function(module, exports) {
10865
 
10866
  var core = module.exports = { version: '2.5.7' };
10868
 
10869
 
10870
  /***/ }),
10871
+ /* 95 */
10872
  /***/ (function(module, exports, __webpack_require__) {
10873
 
10874
  // optional / simple context binding
10894
 
10895
 
10896
  /***/ }),
10897
+ /* 96 */
10898
  /***/ (function(module, exports) {
10899
 
10900
  var toString = {}.toString;
10905
 
10906
 
10907
  /***/ }),
10908
+ /* 97 */
10909
  /***/ (function(module, exports, __webpack_require__) {
10910
 
10911
  "use strict";
10912
 
10913
+ var fails = __webpack_require__(27);
10914
 
10915
  module.exports = function (method, arg) {
10916
  return !!method && fails(function () {
10921
 
10922
 
10923
  /***/ }),
10924
+ /* 98 */
10925
  /***/ (function(module, exports, __webpack_require__) {
10926
 
10927
+ module.exports = __webpack_require__(286);
10928
 
10929
  /***/ }),
10930
+ /* 99 */
10931
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
10932
 
10933
  "use strict";
10934
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useControlled; });
10935
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
10936
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
10937
+ /* eslint-disable react-hooks/rules-of-hooks, react-hooks/exhaustive-deps */
 
 
10938
 
10939
+ function useControlled(_ref) {
10940
+ var controlled = _ref.controlled,
10941
+ defaultProp = _ref.default,
10942
+ name = _ref.name,
10943
+ _ref$state = _ref.state,
10944
+ state = _ref$state === void 0 ? 'value' : _ref$state;
10945
 
10946
+ var _React$useRef = react__WEBPACK_IMPORTED_MODULE_0__["useRef"](controlled !== undefined),
10947
+ isControlled = _React$useRef.current;
10948
 
10949
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_0__["useState"](defaultProp),
10950
+ valueState = _React$useState[0],
10951
+ setValue = _React$useState[1];
10952
 
10953
+ var value = isControlled ? controlled : valueState;
 
 
10954
 
10955
+ if (false) { var _React$useRef2, defaultValue; }
 
 
10956
 
10957
+ var setValueIfUncontrolled = react__WEBPACK_IMPORTED_MODULE_0__["useCallback"](function (newValue) {
10958
+ if (!isControlled) {
10959
+ setValue(newValue);
10960
+ }
10961
+ }, []);
10962
+ return [value, setValueIfUncontrolled];
10963
  }
10964
 
10965
  /***/ }),
10966
+ /* 100 */
10967
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
10968
 
10969
  "use strict";
10970
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _createClass; });
10971
+ function _defineProperties(target, props) {
10972
+ for (var i = 0; i < props.length; i++) {
10973
+ var descriptor = props[i];
10974
+ descriptor.enumerable = descriptor.enumerable || false;
10975
+ descriptor.configurable = true;
10976
+ if ("value" in descriptor) descriptor.writable = true;
10977
+ Object.defineProperty(target, descriptor.key, descriptor);
10978
  }
10979
  }
10980
 
10981
+ function _createClass(Constructor, protoProps, staticProps) {
10982
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
10983
+ if (staticProps) _defineProperties(Constructor, staticProps);
10984
+ return Constructor;
10985
+ }
10986
+
10987
  /***/ }),
10988
+ /* 101 */
10989
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
10990
 
10991
  "use strict";
10992
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return changeHasChanges; });
10993
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return changeIsUpdating; });
10994
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return stopLoading; });
10995
+ /* harmony import */ var buttonizer_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);
10996
 
10997
  function changeHasChanges(status) {
10998
  return {
11017
  }
11018
 
11019
  /***/ }),
11020
+ /* 102 */
11021
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
11022
 
11023
  "use strict";
11027
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return combineReducers; });
11028
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return compose; });
11029
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return createStore; });
11030
+ /* harmony import */ var symbol_observable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(157);
11031
 
11032
 
11033
  /**
11680
 
11681
 
11682
  /***/ }),
11683
+ /* 103 */
11684
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11685
 
11686
+ var isFunction = __webpack_require__(138),
11687
+ isLength = __webpack_require__(172);
11688
 
 
 
 
 
11689
  /**
11690
+ * Checks if `value` is array-like. A value is considered array-like if it's
11691
+ * not a function and has a `value.length` that's an integer greater than or
11692
+ * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
11693
  *
11694
+ * @static
11695
+ * @memberOf _
11696
+ * @since 4.0.0
11697
+ * @category Lang
11698
+ * @param {*} value The value to check.
11699
+ * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
11700
+ * @example
 
 
 
 
 
 
 
 
11701
  *
11702
+ * _.isArrayLike([1, 2, 3]);
11703
+ * // => true
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11704
  *
11705
+ * _.isArrayLike(document.body.children);
11706
+ * // => true
 
 
 
 
 
 
 
 
 
11707
  *
11708
+ * _.isArrayLike('abc');
11709
+ * // => true
 
 
 
 
 
 
 
 
 
 
11710
  *
11711
+ * _.isArrayLike(_.noop);
11712
+ * // => false
 
11713
  */
11714
+ function isArrayLike(value) {
11715
+ return value != null && isLength(value.length) && !isFunction(value);
 
11716
  }
11717
 
11718
+ module.exports = isArrayLike;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11719
 
 
 
 
 
11720
 
11721
+ /***/ }),
11722
+ /* 104 */
11723
+ /***/ (function(module, exports, __webpack_require__) {
11724
 
11725
+ // 7.1.1 ToPrimitive(input [, PreferredType])
11726
+ var isObject = __webpack_require__(30);
11727
+ // instead of the ES6 spec version, we didn't implement @@toPrimitive case
11728
+ // and the second argument - flag - preferred type is a string
11729
+ module.exports = function (it, S) {
11730
+ if (!isObject(it)) return it;
11731
+ var fn, val;
11732
+ if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
11733
+ if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
11734
+ if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
11735
+ throw TypeError("Can't convert object to primitive value");
11736
  };
11737
 
 
 
 
 
 
 
11738
 
11739
+ /***/ }),
11740
+ /* 105 */
11741
+ /***/ (function(module, exports) {
11742
 
11743
+ // 7.2.1 RequireObjectCoercible(argument)
11744
+ module.exports = function (it) {
11745
+ if (it == undefined) throw TypeError("Can't call method on " + it);
11746
+ return it;
11747
  };
11748
 
 
 
 
 
 
 
11749
 
11750
+ /***/ }),
11751
+ /* 106 */
11752
+ /***/ (function(module, exports) {
11753
 
11754
+ // 7.1.4 ToInteger
11755
+ var ceil = Math.ceil;
11756
+ var floor = Math.floor;
11757
+ module.exports = function (it) {
11758
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
11759
  };
11760
 
 
 
 
 
 
 
11761
 
11762
+ /***/ }),
11763
+ /* 107 */
11764
+ /***/ (function(module, exports, __webpack_require__) {
11765
 
11766
+ // most Object methods by ES6 should accept primitives
11767
+ var $export = __webpack_require__(8);
11768
+ var core = __webpack_require__(94);
11769
+ var fails = __webpack_require__(27);
11770
+ module.exports = function (KEY, exec) {
11771
+ var fn = (core.Object || {})[KEY] || Object[KEY];
11772
+ var exp = {};
11773
+ exp[KEY] = exec(fn);
11774
+ $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
11775
  };
11776
 
 
11777
 
11778
+ /***/ }),
11779
+ /* 108 */
11780
+ /***/ (function(module, exports, __webpack_require__) {
 
11781
 
11782
+ // 0 -> Array#forEach
11783
+ // 1 -> Array#map
11784
+ // 2 -> Array#filter
11785
+ // 3 -> Array#some
11786
+ // 4 -> Array#every
11787
+ // 5 -> Array#find
11788
+ // 6 -> Array#findIndex
11789
+ var ctx = __webpack_require__(95);
11790
+ var IObject = __webpack_require__(212);
11791
+ var toObject = __webpack_require__(50);
11792
+ var toLength = __webpack_require__(44);
11793
+ var asc = __webpack_require__(393);
11794
+ module.exports = function (TYPE, $create) {
11795
+ var IS_MAP = TYPE == 1;
11796
+ var IS_FILTER = TYPE == 2;
11797
+ var IS_SOME = TYPE == 3;
11798
+ var IS_EVERY = TYPE == 4;
11799
+ var IS_FIND_INDEX = TYPE == 6;
11800
+ var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
11801
+ var create = $create || asc;
11802
+ return function ($this, callbackfn, that) {
11803
+ var O = toObject($this);
11804
+ var self = IObject(O);
11805
+ var f = ctx(callbackfn, that, 3);
11806
+ var length = toLength(self.length);
11807
+ var index = 0;
11808
+ var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
11809
+ var val, res;
11810
+ for (;length > index; index++) if (NO_HOLES || index in self) {
11811
+ val = self[index];
11812
+ res = f(val, index, O);
11813
+ if (TYPE) {
11814
+ if (IS_MAP) result[index] = res; // map
11815
+ else if (res) switch (TYPE) {
11816
+ case 3: return true; // some
11817
+ case 5: return val; // find
11818
+ case 6: return index; // findIndex
11819
+ case 2: result.push(val); // filter
11820
+ } else if (IS_EVERY) return false; // every
11821
+ }
11822
  }
11823
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
11824
+ };
 
11825
  };
11826
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11827
 
11828
+ /***/ }),
11829
+ /* 109 */
11830
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
11831
 
11832
+ "use strict";
11833
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
11834
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
11835
 
11836
+ /**
11837
+ * @ignore - internal component.
11838
+ */
 
 
 
 
 
11839
 
11840
+ var ListContext = react__WEBPACK_IMPORTED_MODULE_0__["createContext"]({});
 
11841
 
11842
+ if (false) {}
 
 
 
 
11843
 
11844
+ /* harmony default export */ __webpack_exports__["a"] = (ListContext);
 
 
11845
 
11846
+ /***/ }),
11847
+ /* 110 */
11848
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
11849
 
11850
+ "use strict";
11851
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return useFormControl; });
11852
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
11853
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
11854
 
11855
+ /**
11856
+ * @ignore - internal component.
11857
+ */
 
11858
 
11859
+ var FormControlContext = react__WEBPACK_IMPORTED_MODULE_0__["createContext"]();
11860
 
11861
+ if (false) {}
 
 
11862
 
11863
+ function useFormControl() {
11864
+ return react__WEBPACK_IMPORTED_MODULE_0__["useContext"](FormControlContext);
11865
+ }
11866
+ /* harmony default export */ __webpack_exports__["a"] = (FormControlContext);
11867
 
11868
+ /***/ }),
11869
+ /* 111 */
11870
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
11871
 
11872
+ "use strict";
11873
+ /* unused harmony export styles */
11874
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);
11875
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
11876
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
11877
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
11878
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3);
11879
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_3__);
11880
+ /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(4);
11881
+ /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(9);
11882
+ /* harmony import */ var _styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(16);
11883
+ /* harmony import */ var _ButtonBase__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(414);
11884
+ /* harmony import */ var _utils_capitalize__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(12);
11885
 
 
 
 
11886
 
 
 
 
11887
 
 
 
 
11888
 
 
 
 
 
 
 
 
 
11889
 
 
11890
 
 
 
 
 
 
 
 
11891
 
 
 
 
 
 
 
 
 
 
 
11892
 
 
 
 
11893
 
11894
+ var styles = function styles(theme) {
11895
+ return {
11896
+ /* Styles applied to the root element. */
11897
+ root: Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])({}, theme.typography.button, {
11898
+ boxSizing: 'border-box',
11899
+ minWidth: 64,
11900
+ padding: '6px 16px',
11901
+ borderRadius: theme.shape.borderRadius,
11902
+ color: theme.palette.text.primary,
11903
+ transition: theme.transitions.create(['background-color', 'box-shadow', 'border'], {
11904
+ duration: theme.transitions.duration.short
11905
+ }),
11906
+ '&:hover': {
11907
+ textDecoration: 'none',
11908
+ backgroundColor: Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.text.primary, theme.palette.action.hoverOpacity),
11909
+ // Reset on touch devices, it doesn't add specificity
11910
+ '@media (hover: none)': {
11911
+ backgroundColor: 'transparent'
11912
+ },
11913
+ '&$disabled': {
11914
+ backgroundColor: 'transparent'
11915
+ }
11916
+ },
11917
+ '&$disabled': {
11918
+ color: theme.palette.action.disabled
11919
+ }
11920
+ }),
11921
 
11922
+ /* Styles applied to the span element that wraps the children. */
11923
+ label: {
11924
+ width: '100%',
11925
+ // Ensure the correct width for iOS Safari
11926
+ display: 'inherit',
11927
+ alignItems: 'inherit',
11928
+ justifyContent: 'inherit'
11929
+ },
11930
 
11931
+ /* Styles applied to the root element if `variant="text"`. */
11932
+ text: {
11933
+ padding: '6px 8px'
11934
+ },
11935
 
11936
+ /* Styles applied to the root element if `variant="text"` and `color="primary"`. */
11937
+ textPrimary: {
11938
+ color: theme.palette.primary.main,
11939
+ '&:hover': {
11940
+ backgroundColor: Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.primary.main, theme.palette.action.hoverOpacity),
11941
+ // Reset on touch devices, it doesn't add specificity
11942
+ '@media (hover: none)': {
11943
+ backgroundColor: 'transparent'
11944
+ }
11945
  }
11946
+ },
11947
 
11948
+ /* Styles applied to the root element if `variant="text"` and `color="secondary"`. */
11949
+ textSecondary: {
11950
+ color: theme.palette.secondary.main,
11951
+ '&:hover': {
11952
+ backgroundColor: Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.secondary.main, theme.palette.action.hoverOpacity),
11953
+ // Reset on touch devices, it doesn't add specificity
11954
+ '@media (hover: none)': {
11955
+ backgroundColor: 'transparent'
11956
  }
11957
  }
11958
+ },
11959
 
11960
+ /* Styles applied to the root element if `variant="outlined"`. */
11961
+ outlined: {
11962
+ padding: '5px 15px',
11963
+ border: "1px solid ".concat(theme.palette.type === 'light' ? 'rgba(0, 0, 0, 0.23)' : 'rgba(255, 255, 255, 0.23)'),
11964
+ '&$disabled': {
11965
+ border: "1px solid ".concat(theme.palette.action.disabledBackground)
11966
+ }
11967
+ },
 
 
 
 
 
 
 
 
 
 
 
 
 
11968
 
11969
+ /* Styles applied to the root element if `variant="outlined"` and `color="primary"`. */
11970
+ outlinedPrimary: {
11971
+ color: theme.palette.primary.main,
11972
+ border: "1px solid ".concat(Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.primary.main, 0.5)),
11973
+ '&:hover': {
11974
+ border: "1px solid ".concat(theme.palette.primary.main),
11975
+ backgroundColor: Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.primary.main, theme.palette.action.hoverOpacity),
11976
+ // Reset on touch devices, it doesn't add specificity
11977
+ '@media (hover: none)': {
11978
+ backgroundColor: 'transparent'
11979
+ }
11980
+ }
11981
+ },
11982
 
11983
+ /* Styles applied to the root element if `variant="outlined"` and `color="secondary"`. */
11984
+ outlinedSecondary: {
11985
+ color: theme.palette.secondary.main,
11986
+ border: "1px solid ".concat(Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.secondary.main, 0.5)),
11987
+ '&:hover': {
11988
+ border: "1px solid ".concat(theme.palette.secondary.main),
11989
+ backgroundColor: Object(_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_6__[/* fade */ "c"])(theme.palette.secondary.main, theme.palette.action.hoverOpacity),
11990
+ // Reset on touch devices, it doesn't add specificity
11991
+ '@media (hover: none)': {
11992
+ backgroundColor: 'transparent'
11993
+ }
11994
+ },
11995
+ '&$disabled': {
11996
+ border: "1px solid ".concat(theme.palette.action.disabled)
11997
+ }
11998
+ },
11999
 
12000
+ /* Styles applied to the root element if `variant="contained"`. */
12001
+ contained: {
12002
+ color: theme.palette.getContrastText(theme.palette.grey[300]),
12003
+ backgroundColor: theme.palette.grey[300],
12004
+ boxShadow: theme.shadows[2],
12005
+ '&:hover': {
12006
+ backgroundColor: theme.palette.grey.A100,
12007
+ boxShadow: theme.shadows[4],
12008
+ // Reset on touch devices, it doesn't add specificity
12009
+ '@media (hover: none)': {
12010
+ boxShadow: theme.shadows[2],
12011
+ backgroundColor: theme.palette.grey[300]
12012
+ },
12013
+ '&$disabled': {
12014
+ backgroundColor: theme.palette.action.disabledBackground
12015
+ }
12016
+ },
12017
+ '&$focusVisible': {
12018
+ boxShadow: theme.shadows[6]
12019
+ },
12020
+ '&:active': {
12021
+ boxShadow: theme.shadows[8]
12022
+ },
12023
+ '&$disabled': {
12024
+ color: theme.palette.action.disabled,
12025
+ boxShadow: theme.shadows[0],
12026
+ backgroundColor: theme.palette.action.disabledBackground
12027
+ }
12028
+ },
12029
 
12030
+ /* Styles applied to the root element if `variant="contained"` and `color="primary"`. */
12031
+ containedPrimary: {
12032
+ color: theme.palette.primary.contrastText,
12033
+ backgroundColor: theme.palette.primary.main,
12034
+ '&:hover': {
12035
+ backgroundColor: theme.palette.primary.dark,
12036
+ // Reset on touch devices, it doesn't add specificity
12037
+ '@media (hover: none)': {
12038
+ backgroundColor: theme.palette.primary.main
12039
+ }
12040
+ }
12041
+ },
12042
 
12043
+ /* Styles applied to the root element if `variant="contained"` and `color="secondary"`. */
12044
+ containedSecondary: {
12045
+ color: theme.palette.secondary.contrastText,
12046
+ backgroundColor: theme.palette.secondary.main,
12047
+ '&:hover': {
12048
+ backgroundColor: theme.palette.secondary.dark,
12049
+ // Reset on touch devices, it doesn't add specificity
12050
+ '@media (hover: none)': {
12051
+ backgroundColor: theme.palette.secondary.main
12052
+ }
12053
+ }
12054
+ },
12055
 
12056
+ /* Styles applied to the root element if `disableElevation={true}`. */
12057
+ disableElevation: {
12058
+ boxShadow: 'none',
12059
+ '&:hover': {
12060
+ boxShadow: 'none'
12061
+ },
12062
+ '&$focusVisible': {
12063
+ boxShadow: 'none'
12064
+ },
12065
+ '&:active': {
12066
+ boxShadow: 'none'
12067
+ },
12068
+ '&$disabled': {
12069
+ boxShadow: 'none'
12070
+ }
12071
+ },
12072
 
12073
+ /* Pseudo-class applied to the ButtonBase root element if the button is keyboard focused. */
12074
+ focusVisible: {},
 
 
 
 
 
 
 
 
 
 
 
12075
 
12076
+ /* Pseudo-class applied to the root element if `disabled={true}`. */
12077
+ disabled: {},
12078
 
12079
+ /* Styles applied to the root element if `color="inherit"`. */
12080
+ colorInherit: {
12081
+ color: 'inherit',
12082
+ borderColor: 'currentColor'
12083
+ },
12084
 
12085
+ /* Styles applied to the root element if `size="small"` and `variant="text"`. */
12086
+ textSizeSmall: {
12087
+ padding: '4px 5px',
12088
+ fontSize: theme.typography.pxToRem(13)
12089
+ },
12090
 
12091
+ /* Styles applied to the root element if `size="large"` and `variant="text"`. */
12092
+ textSizeLarge: {
12093
+ padding: '8px 11px',
12094
+ fontSize: theme.typography.pxToRem(15)
12095
+ },
12096
 
12097
+ /* Styles applied to the root element if `size="small"` and `variant="outlined"`. */
12098
+ outlinedSizeSmall: {
12099
+ padding: '3px 9px',
12100
+ fontSize: theme.typography.pxToRem(13)
12101
+ },
12102
 
12103
+ /* Styles applied to the root element if `size="large"` and `variant="outlined"`. */
12104
+ outlinedSizeLarge: {
12105
+ padding: '7px 21px',
12106
+ fontSize: theme.typography.pxToRem(15)
12107
+ },
12108
 
12109
+ /* Styles applied to the root element if `size="small"` and `variant="contained"`. */
12110
+ containedSizeSmall: {
12111
+ padding: '4px 10px',
12112
+ fontSize: theme.typography.pxToRem(13)
12113
+ },
12114
 
12115
+ /* Styles applied to the root element if `size="large"` and `variant="contained"`. */
12116
+ containedSizeLarge: {
12117
+ padding: '8px 22px',
12118
+ fontSize: theme.typography.pxToRem(15)
12119
+ },
12120
 
12121
+ /* Styles applied to the root element if `size="small"`. */
12122
+ sizeSmall: {},
 
12123
 
12124
+ /* Styles applied to the root element if `size="large"`. */
12125
+ sizeLarge: {},
12126
 
12127
+ /* Styles applied to the root element if `fullWidth={true}`. */
12128
+ fullWidth: {
12129
+ width: '100%'
12130
+ },
 
12131
 
12132
+ /* Styles applied to the startIcon element if supplied. */
12133
+ startIcon: {
12134
+ display: 'inherit',
12135
+ marginRight: 8,
12136
+ marginLeft: -4,
12137
+ '&$iconSizeSmall': {
12138
+ marginLeft: -2
12139
+ }
12140
+ },
12141
 
12142
+ /* Styles applied to the endIcon element if supplied. */
12143
+ endIcon: {
12144
+ display: 'inherit',
12145
+ marginRight: -4,
12146
+ marginLeft: 8,
12147
+ '&$iconSizeSmall': {
12148
+ marginRight: -2
12149
+ }
12150
+ },
 
 
 
 
 
 
 
 
 
12151
 
12152
+ /* Styles applied to the icon element if supplied and `size="small"`. */
12153
+ iconSizeSmall: {
12154
+ '& > *:first-child': {
12155
+ fontSize: 18
12156
+ }
12157
+ },
 
 
12158
 
12159
+ /* Styles applied to the icon element if supplied and `size="medium"`. */
12160
+ iconSizeMedium: {
12161
+ '& > *:first-child': {
12162
+ fontSize: 20
12163
+ }
12164
+ },
 
 
 
12165
 
12166
+ /* Styles applied to the icon element if supplied and `size="large"`. */
12167
+ iconSizeLarge: {
12168
+ '& > *:first-child': {
12169
+ fontSize: 22
12170
+ }
12171
+ }
12172
+ };
12173
+ };
12174
+ var Button = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["forwardRef"](function Button(props, ref) {
12175
+ var children = props.children,
12176
+ classes = props.classes,
12177
+ className = props.className,
12178
+ _props$color = props.color,
12179
+ color = _props$color === void 0 ? 'default' : _props$color,
12180
+ _props$component = props.component,
12181
+ component = _props$component === void 0 ? 'button' : _props$component,
12182
+ _props$disabled = props.disabled,
12183
+ disabled = _props$disabled === void 0 ? false : _props$disabled,
12184
+ _props$disableElevati = props.disableElevation,
12185
+ disableElevation = _props$disableElevati === void 0 ? false : _props$disableElevati,
12186
+ _props$disableFocusRi = props.disableFocusRipple,
12187
+ disableFocusRipple = _props$disableFocusRi === void 0 ? false : _props$disableFocusRi,
12188
+ endIconProp = props.endIcon,
12189
+ focusVisibleClassName = props.focusVisibleClassName,
12190
+ _props$fullWidth = props.fullWidth,
12191
+ fullWidth = _props$fullWidth === void 0 ? false : _props$fullWidth,
12192
+ _props$size = props.size,
12193
+ size = _props$size === void 0 ? 'medium' : _props$size,
12194
+ startIconProp = props.startIcon,
12195
+ _props$type = props.type,
12196
+ type = _props$type === void 0 ? 'button' : _props$type,
12197
+ _props$variant = props.variant,
12198
+ variant = _props$variant === void 0 ? 'text' : _props$variant,
12199
+ other = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(props, ["children", "classes", "className", "color", "component", "disabled", "disableElevation", "disableFocusRipple", "endIcon", "focusVisibleClassName", "fullWidth", "size", "startIcon", "type", "variant"]);
12200
 
12201
+ var startIcon = startIconProp && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("span", {
12202
+ className: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.startIcon, classes["iconSize".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])(size))])
12203
+ }, startIconProp);
12204
+ var endIcon = endIconProp && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("span", {
12205
+ className: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.endIcon, classes["iconSize".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])(size))])
12206
+ }, endIconProp);
12207
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"](_ButtonBase__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])({
12208
+ className: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.root, classes[variant], className, color === 'inherit' ? classes.colorInherit : color !== 'default' && classes["".concat(variant).concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])(color))], size !== 'medium' && [classes["".concat(variant, "Size").concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])(size))], classes["size".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])(size))]], disableElevation && classes.disableElevation, disabled && classes.disabled, fullWidth && classes.fullWidth),
12209
+ component: component,
12210
+ disabled: disabled,
12211
+ focusRipple: !disableFocusRipple,
12212
+ focusVisibleClassName: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.focusVisible, focusVisibleClassName),
12213
+ ref: ref,
12214
+ type: type
12215
+ }, other), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("span", {
12216
+ className: classes.label
12217
+ }, startIcon, children, endIcon));
12218
+ });
12219
+ false ? undefined : void 0;
12220
+ /* harmony default export */ __webpack_exports__["a"] = (Object(_styles_withStyles__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(styles, {
12221
+ name: 'MuiButton'
12222
+ })(Button));
12223
 
12224
+ /***/ }),
12225
+ /* 112 */
12226
+ /***/ (function(module, exports, __webpack_require__) {
12227
 
12228
+ var listCacheClear = __webpack_require__(307),
12229
+ listCacheDelete = __webpack_require__(308),
12230
+ listCacheGet = __webpack_require__(309),
12231
+ listCacheHas = __webpack_require__(310),
12232
+ listCacheSet = __webpack_require__(311);
12233
 
12234
+ /**
12235
+ * Creates an list cache object.
12236
+ *
12237
+ * @private
12238
+ * @constructor
12239
+ * @param {Array} [entries] The key-value pairs to cache.
12240
+ */
12241
+ function ListCache(entries) {
12242
+ var index = -1,
12243
+ length = entries == null ? 0 : entries.length;
12244
 
12245
+ this.clear();
12246
+ while (++index < length) {
12247
+ var entry = entries[index];
12248
+ this.set(entry[0], entry[1]);
12249
+ }
12250
+ }
12251
 
12252
+ // Add methods to `ListCache`.
12253
+ ListCache.prototype.clear = listCacheClear;
12254
+ ListCache.prototype['delete'] = listCacheDelete;
12255
+ ListCache.prototype.get = listCacheGet;
12256
+ ListCache.prototype.has = listCacheHas;
12257
+ ListCache.prototype.set = listCacheSet;
 
 
12258
 
12259
+ module.exports = ListCache;
12260
 
 
 
 
 
 
12261
 
12262
+ /***/ }),
12263
+ /* 113 */
12264
+ /***/ (function(module, exports, __webpack_require__) {
12265
 
12266
+ var eq = __webpack_require__(90);
12267
 
12268
+ /**
12269
+ * Gets the index at which the `key` is found in `array` of key-value pairs.
12270
+ *
12271
+ * @private
12272
+ * @param {Array} array The array to inspect.
12273
+ * @param {*} key The key to search for.
12274
+ * @returns {number} Returns the index of the matched value, else `-1`.
12275
+ */
12276
+ function assocIndexOf(array, key) {
12277
+ var length = array.length;
12278
+ while (length--) {
12279
+ if (eq(array[length][0], key)) {
12280
+ return length;
12281
  }
12282
+ }
12283
+ return -1;
 
 
 
 
 
12284
  }
12285
 
12286
+ module.exports = assocIndexOf;
12287
 
12288
 
12289
  /***/ }),
12290
+ /* 114 */
12291
+ /***/ (function(module, exports, __webpack_require__) {
12292
 
12293
+ var getNative = __webpack_require__(91);
12294
+
12295
+ /* Built-in method references that are verified to be native. */
12296
+ var nativeCreate = getNative(Object, 'create');
 
 
 
 
 
 
 
 
 
12297
 
12298
+ module.exports = nativeCreate;
12299
 
12300
 
12301
+ /***/ }),
12302
+ /* 115 */
12303
+ /***/ (function(module, exports, __webpack_require__) {
12304
 
12305
+ var isKeyable = __webpack_require__(331);
12306
 
12307
  /**
12308
+ * Gets the data for `map`.
12309
  *
12310
+ * @private
12311
+ * @param {Object} map The map to query.
12312
+ * @param {string} key The reference key.
12313
+ * @returns {*} Returns the map data.
12314
  */
12315
+ function getMapData(map, key) {
12316
+ var data = map.__data__;
12317
+ return isKeyable(key)
12318
+ ? data[typeof key == 'string' ? 'string' : 'hash']
12319
+ : data.map;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12320
  }
12321
+
12322
+ module.exports = getMapData;
12323
+
12324
+
12325
+ /***/ }),
12326
+ /* 116 */
12327
+ /***/ (function(module, exports, __webpack_require__) {
12328
+
12329
+ var arrayLikeKeys = __webpack_require__(245),
12330
+ baseKeysIn = __webpack_require__(344),
12331
+ isArrayLike = __webpack_require__(103);
12332
+
12333
  /**
12334
+ * Creates an array of the own and inherited enumerable property names of `object`.
12335
  *
12336
+ * **Note:** Non-object values are coerced to objects.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12337
  *
12338
  * @static
12339
  * @memberOf _
12340
+ * @since 3.0.0
12341
+ * @category Object
12342
+ * @param {Object} object The object to query.
12343
+ * @returns {Array} Returns the array of property names.
12344
  * @example
12345
  *
12346
+ * function Foo() {
12347
+ * this.a = 1;
12348
+ * this.b = 2;
12349
+ * }
 
12350
  *
12351
+ * Foo.prototype.c = 3;
 
12352
  *
12353
+ * _.keysIn(new Foo);
12354
+ * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
12355
  */
12356
+ function keysIn(object) {
12357
+ return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
12358
  }
12359
 
12360
+ module.exports = keysIn;
12361
 
12362
 
12363
  /***/ }),
12364
+ /* 117 */
12365
  /***/ (function(module, exports, __webpack_require__) {
12366
 
12367
+ "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12368
 
12369
+ if (__webpack_require__(42)) {
12370
+ var LIBRARY = __webpack_require__(130);
12371
+ var global = __webpack_require__(24);
12372
+ var fails = __webpack_require__(27);
12373
+ var $export = __webpack_require__(8);
12374
+ var $typed = __webpack_require__(267);
12375
+ var $buffer = __webpack_require__(399);
12376
+ var ctx = __webpack_require__(95);
12377
+ var anInstance = __webpack_require__(153);
12378
+ var propertyDesc = __webpack_require__(146);
12379
+ var hide = __webpack_require__(72);
12380
+ var redefineAll = __webpack_require__(155);
12381
+ var toInteger = __webpack_require__(106);
12382
+ var toLength = __webpack_require__(44);
12383
+ var toIndex = __webpack_require__(496);
12384
+ var toAbsoluteIndex = __webpack_require__(149);
12385
+ var toPrimitive = __webpack_require__(104);
12386
+ var has = __webpack_require__(81);
12387
+ var classof = __webpack_require__(214);
12388
+ var isObject = __webpack_require__(30);
12389
+ var toObject = __webpack_require__(50);
12390
+ var isArrayIter = __webpack_require__(390);
12391
+ var create = __webpack_require__(150);
12392
+ var getPrototypeOf = __webpack_require__(84);
12393
+ var gOPN = __webpack_require__(151).f;
12394
+ var getIterFn = __webpack_require__(392);
12395
+ var uid = __webpack_require__(147);
12396
+ var wks = __webpack_require__(35);
12397
+ var createArrayMethod = __webpack_require__(108);
12398
+ var createArrayIncludes = __webpack_require__(257);
12399
+ var speciesConstructor = __webpack_require__(264);
12400
+ var ArrayIterators = __webpack_require__(395);
12401
+ var Iterators = __webpack_require__(180);
12402
+ var $iterDetect = __webpack_require__(261);
12403
+ var setSpecies = __webpack_require__(152);
12404
+ var arrayFill = __webpack_require__(394);
12405
+ var arrayCopyWithin = __webpack_require__(486);
12406
+ var $DP = __webpack_require__(43);
12407
+ var $GOPD = __webpack_require__(83);
12408
+ var dP = $DP.f;
12409
+ var gOPD = $GOPD.f;
12410
+ var RangeError = global.RangeError;
12411
+ var TypeError = global.TypeError;
12412
+ var Uint8Array = global.Uint8Array;
12413
+ var ARRAY_BUFFER = 'ArrayBuffer';
12414
+ var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER;
12415
+ var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
12416
+ var PROTOTYPE = 'prototype';
12417
+ var ArrayProto = Array[PROTOTYPE];
12418
+ var $ArrayBuffer = $buffer.ArrayBuffer;
12419
+ var $DataView = $buffer.DataView;
12420
+ var arrayForEach = createArrayMethod(0);
12421
+ var arrayFilter = createArrayMethod(2);
12422
+ var arraySome = createArrayMethod(3);
12423
+ var arrayEvery = createArrayMethod(4);
12424
+ var arrayFind = createArrayMethod(5);
12425
+ var arrayFindIndex = createArrayMethod(6);
12426
+ var arrayIncludes = createArrayIncludes(true);
12427
+ var arrayIndexOf = createArrayIncludes(false);
12428
+ var arrayValues = ArrayIterators.values;
12429
+ var arrayKeys = ArrayIterators.keys;
12430
+ var arrayEntries = ArrayIterators.entries;
12431
+ var arrayLastIndexOf = ArrayProto.lastIndexOf;
12432
+ var arrayReduce = ArrayProto.reduce;
12433
+ var arrayReduceRight = ArrayProto.reduceRight;
12434
+ var arrayJoin = ArrayProto.join;
12435
+ var arraySort = ArrayProto.sort;
12436
+ var arraySlice = ArrayProto.slice;
12437
+ var arrayToString = ArrayProto.toString;
12438
+ var arrayToLocaleString = ArrayProto.toLocaleString;
12439
+ var ITERATOR = wks('iterator');
12440
+ var TAG = wks('toStringTag');
12441
+ var TYPED_CONSTRUCTOR = uid('typed_constructor');
12442
+ var DEF_CONSTRUCTOR = uid('def_constructor');
12443
+ var ALL_CONSTRUCTORS = $typed.CONSTR;
12444
+ var TYPED_ARRAY = $typed.TYPED;
12445
+ var VIEW = $typed.VIEW;
12446
+ var WRONG_LENGTH = 'Wrong length!';
12447
 
12448
+ var $map = createArrayMethod(1, function (O, length) {
12449
+ return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);
12450
+ });
12451
 
12452
+ var LITTLE_ENDIAN = fails(function () {
12453
+ // eslint-disable-next-line no-undef
12454
+ return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;
12455
+ });
 
 
12456
 
12457
+ var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () {
12458
+ new Uint8Array(1).set({});
12459
+ });
12460
 
12461
+ var toOffset = function (it, BYTES) {
12462
+ var offset = toInteger(it);
12463
+ if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!');
12464
+ return offset;
12465
+ };
12466
 
12467
+ var validate = function (it) {
12468
+ if (isObject(it) && TYPED_ARRAY in it) return it;
12469
+ throw TypeError(it + ' is not a typed array!');
12470
+ };
 
 
 
 
 
 
12471
 
12472
+ var allocate = function (C, length) {
12473
+ if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) {
12474
+ throw TypeError('It is not a typed array constructor!');
12475
+ } return new C(length);
12476
+ };
12477
 
12478
+ var speciesFromList = function (O, list) {
12479
+ return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);
12480
+ };
12481
 
12482
+ var fromList = function (C, list) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12483
  var index = 0;
12484
+ var length = list.length;
12485
+ var result = allocate(C, length);
12486
+ while (length > index) result[index] = list[index++];
12487
+ return result;
 
 
 
 
 
 
 
 
 
 
 
 
12488
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12489
 
12490
+ var addGetter = function (it, key, internal) {
12491
+ dP(it, key, { get: function () { return this._d[internal]; } });
12492
+ };
12493
 
12494
+ var $from = function from(source /* , mapfn, thisArg */) {
12495
+ var O = toObject(source);
12496
+ var aLen = arguments.length;
12497
+ var mapfn = aLen > 1 ? arguments[1] : undefined;
12498
+ var mapping = mapfn !== undefined;
12499
+ var iterFn = getIterFn(O);
12500
+ var i, length, values, result, step, iterator;
12501
+ if (iterFn != undefined && !isArrayIter(iterFn)) {
12502
+ for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) {
12503
+ values.push(step.value);
12504
+ } O = values;
12505
  }
12506
+ if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2);
12507
+ for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) {
12508
+ result[i] = mapping ? mapfn(O[i], i) : O[i];
 
 
 
 
 
12509
  }
12510
+ return result;
12511
+ };
 
 
 
 
 
 
 
12512
 
12513
+ var $of = function of(/* ...items */) {
12514
+ var index = 0;
12515
+ var length = arguments.length;
12516
+ var result = allocate(this, length);
12517
+ while (length > index) result[index] = arguments[index++];
12518
+ return result;
12519
+ };
12520
 
12521
+ // iOS Safari 6.x fails here
12522
+ var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); });
 
12523
 
12524
+ var $toLocaleString = function toLocaleString() {
12525
+ return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);
12526
+ };
12527
 
12528
+ var proto = {
12529
+ copyWithin: function copyWithin(target, start /* , end */) {
12530
+ return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
12531
+ },
12532
+ every: function every(callbackfn /* , thisArg */) {
12533
+ return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
12534
+ },
12535
+ fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars
12536
+ return arrayFill.apply(validate(this), arguments);
12537
+ },
12538
+ filter: function filter(callbackfn /* , thisArg */) {
12539
+ return speciesFromList(this, arrayFilter(validate(this), callbackfn,
12540
+ arguments.length > 1 ? arguments[1] : undefined));
12541
+ },
12542
+ find: function find(predicate /* , thisArg */) {
12543
+ return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
12544
+ },
12545
+ findIndex: function findIndex(predicate /* , thisArg */) {
12546
+ return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
12547
+ },
12548
+ forEach: function forEach(callbackfn /* , thisArg */) {
12549
+ arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
12550
+ },
12551
+ indexOf: function indexOf(searchElement /* , fromIndex */) {
12552
+ return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
12553
+ },
12554
+ includes: function includes(searchElement /* , fromIndex */) {
12555
+ return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
12556
+ },
12557
+ join: function join(separator) { // eslint-disable-line no-unused-vars
12558
+ return arrayJoin.apply(validate(this), arguments);
12559
+ },
12560
+ lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars
12561
+ return arrayLastIndexOf.apply(validate(this), arguments);
12562
+ },
12563
+ map: function map(mapfn /* , thisArg */) {
12564
+ return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);
12565
+ },
12566
+ reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars
12567
+ return arrayReduce.apply(validate(this), arguments);
12568
+ },
12569
+ reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars
12570
+ return arrayReduceRight.apply(validate(this), arguments);
12571
+ },
12572
+ reverse: function reverse() {
12573
+ var that = this;
12574
+ var length = validate(that).length;
12575
+ var middle = Math.floor(length / 2);
12576
+ var index = 0;
12577
+ var value;
12578
+ while (index < middle) {
12579
+ value = that[index];
12580
+ that[index++] = that[--length];
12581
+ that[length] = value;
12582
+ } return that;
12583
+ },
12584
+ some: function some(callbackfn /* , thisArg */) {
12585
+ return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
12586
+ },
12587
+ sort: function sort(comparefn) {
12588
+ return arraySort.call(validate(this), comparefn);
12589
+ },
12590
+ subarray: function subarray(begin, end) {
12591
+ var O = validate(this);
12592
+ var length = O.length;
12593
+ var $begin = toAbsoluteIndex(begin, length);
12594
+ return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(
12595
+ O.buffer,
12596
+ O.byteOffset + $begin * O.BYTES_PER_ELEMENT,
12597
+ toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin)
12598
+ );
12599
+ }
12600
+ };
12601
 
12602
+ var $slice = function slice(start, end) {
12603
+ return speciesFromList(this, arraySlice.call(validate(this), start, end));
12604
+ };
12605
+
12606
+ var $set = function set(arrayLike /* , offset */) {
12607
+ validate(this);
12608
+ var offset = toOffset(arguments[1], 1);
12609
+ var length = this.length;
12610
+ var src = toObject(arrayLike);
12611
+ var len = toLength(src.length);
12612
+ var index = 0;
12613
+ if (len + offset > length) throw RangeError(WRONG_LENGTH);
12614
+ while (index < len) this[offset + index] = src[index++];
12615
+ };
12616
+
12617
+ var $iterators = {
12618
+ entries: function entries() {
12619
+ return arrayEntries.call(validate(this));
12620
+ },
12621
+ keys: function keys() {
12622
+ return arrayKeys.call(validate(this));
12623
+ },
12624
+ values: function values() {
12625
+ return arrayValues.call(validate(this));
12626
  }
12627
+ };
12628
 
12629
+ var isTAIndex = function (target, key) {
12630
+ return isObject(target)
12631
+ && target[TYPED_ARRAY]
12632
+ && typeof key != 'symbol'
12633
+ && key in target
12634
+ && String(+key) == String(key);
12635
+ };
12636
+ var $getDesc = function getOwnPropertyDescriptor(target, key) {
12637
+ return isTAIndex(target, key = toPrimitive(key, true))
12638
+ ? propertyDesc(2, target[key])
12639
+ : gOPD(target, key);
12640
+ };
12641
+ var $setDesc = function defineProperty(target, key, desc) {
12642
+ if (isTAIndex(target, key = toPrimitive(key, true))
12643
+ && isObject(desc)
12644
+ && has(desc, 'value')
12645
+ && !has(desc, 'get')
12646
+ && !has(desc, 'set')
12647
+ // TODO: add validation descriptor w/o calling accessors
12648
+ && !desc.configurable
12649
+ && (!has(desc, 'writable') || desc.writable)
12650
+ && (!has(desc, 'enumerable') || desc.enumerable)
12651
+ ) {
12652
+ target[key] = desc.value;
12653
+ return target;
12654
+ } return dP(target, key, desc);
12655
+ };
12656
 
12657
+ if (!ALL_CONSTRUCTORS) {
12658
+ $GOPD.f = $getDesc;
12659
+ $DP.f = $setDesc;
12660
+ }
12661
 
12662
+ $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {
12663
+ getOwnPropertyDescriptor: $getDesc,
12664
+ defineProperty: $setDesc
12665
+ });
12666
+
12667
+ if (fails(function () { arrayToString.call({}); })) {
12668
+ arrayToString = arrayToLocaleString = function toString() {
12669
+ return arrayJoin.call(this);
12670
  };
12671
+ }
 
12672
 
12673
+ var $TypedArrayPrototype$ = redefineAll({}, proto);
12674
+ redefineAll($TypedArrayPrototype$, $iterators);
12675
+ hide($TypedArrayPrototype$, ITERATOR, $iterators.values);
12676
+ redefineAll($TypedArrayPrototype$, {
12677
+ slice: $slice,
12678
+ set: $set,
12679
+ constructor: function () { /* noop */ },
12680
+ toString: arrayToString,
12681
+ toLocaleString: $toLocaleString
12682
+ });
12683
+ addGetter($TypedArrayPrototype$, 'buffer', 'b');
12684
+ addGetter($TypedArrayPrototype$, 'byteOffset', 'o');
12685
+ addGetter($TypedArrayPrototype$, 'byteLength', 'l');
12686
+ addGetter($TypedArrayPrototype$, 'length', 'e');
12687
+ dP($TypedArrayPrototype$, TAG, {
12688
+ get: function () { return this[TYPED_ARRAY]; }
12689
+ });
12690
 
12691
+ // eslint-disable-next-line max-statements
12692
+ module.exports = function (KEY, BYTES, wrapper, CLAMPED) {
12693
+ CLAMPED = !!CLAMPED;
12694
+ var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array';
12695
+ var GETTER = 'get' + KEY;
12696
+ var SETTER = 'set' + KEY;
12697
+ var TypedArray = global[NAME];
12698
+ var Base = TypedArray || {};
12699
+ var TAC = TypedArray && getPrototypeOf(TypedArray);
12700
+ var FORCED = !TypedArray || !$typed.ABV;
12701
+ var O = {};
12702
+ var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];
12703
+ var getter = function (that, index) {
12704
+ var data = that._d;
12705
+ return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
12706
+ };
12707
+ var setter = function (that, index, value) {
12708
+ var data = that._d;
12709
+ if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;
12710
+ data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);
12711
+ };
12712
+ var addElement = function (that, index) {
12713
+ dP(that, index, {
12714
+ get: function () {
12715
+ return getter(this, index);
12716
+ },
12717
+ set: function (value) {
12718
+ return setter(this, index, value);
12719
+ },
12720
+ enumerable: true
12721
+ });
12722
+ };
12723
+ if (FORCED) {
12724
+ TypedArray = wrapper(function (that, data, $offset, $length) {
12725
+ anInstance(that, TypedArray, NAME, '_d');
12726
+ var index = 0;
12727
+ var offset = 0;
12728
+ var buffer, byteLength, length, klass;
12729
+ if (!isObject(data)) {
12730
+ length = toIndex(data);
12731
+ byteLength = length * BYTES;
12732
+ buffer = new $ArrayBuffer(byteLength);
12733
+ } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {
12734
+ buffer = data;
12735
+ offset = toOffset($offset, BYTES);
12736
+ var $len = data.byteLength;
12737
+ if ($length === undefined) {
12738
+ if ($len % BYTES) throw RangeError(WRONG_LENGTH);
12739
+ byteLength = $len - offset;
12740
+ if (byteLength < 0) throw RangeError(WRONG_LENGTH);
12741
+ } else {
12742
+ byteLength = toLength($length) * BYTES;
12743
+ if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH);
12744
+ }
12745
+ length = byteLength / BYTES;
12746
+ } else if (TYPED_ARRAY in data) {
12747
+ return fromList(TypedArray, data);
12748
+ } else {
12749
+ return $from.call(TypedArray, data);
12750
+ }
12751
+ hide(that, '_d', {
12752
+ b: buffer,
12753
+ o: offset,
12754
+ l: byteLength,
12755
+ e: length,
12756
+ v: new $DataView(buffer)
12757
+ });
12758
+ while (index < length) addElement(that, index++);
12759
+ });
12760
+ TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);
12761
+ hide(TypedArrayPrototype, 'constructor', TypedArray);
12762
+ } else if (!fails(function () {
12763
+ TypedArray(1);
12764
+ }) || !fails(function () {
12765
+ new TypedArray(-1); // eslint-disable-line no-new
12766
+ }) || !$iterDetect(function (iter) {
12767
+ new TypedArray(); // eslint-disable-line no-new
12768
+ new TypedArray(null); // eslint-disable-line no-new
12769
+ new TypedArray(1.5); // eslint-disable-line no-new
12770
+ new TypedArray(iter); // eslint-disable-line no-new
12771
+ }, true)) {
12772
+ TypedArray = wrapper(function (that, data, $offset, $length) {
12773
+ anInstance(that, TypedArray, NAME);
12774
+ var klass;
12775
+ // `ws` module bug, temporarily remove validation length for Uint8Array
12776
+ // https://github.com/websockets/ws/pull/645
12777
+ if (!isObject(data)) return new Base(toIndex(data));
12778
+ if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {
12779
+ return $length !== undefined
12780
+ ? new Base(data, toOffset($offset, BYTES), $length)
12781
+ : $offset !== undefined
12782
+ ? new Base(data, toOffset($offset, BYTES))
12783
+ : new Base(data);
12784
+ }
12785
+ if (TYPED_ARRAY in data) return fromList(TypedArray, data);
12786
+ return $from.call(TypedArray, data);
12787
+ });
12788
+ arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) {
12789
+ if (!(key in TypedArray)) hide(TypedArray, key, Base[key]);
12790
+ });
12791
+ TypedArray[PROTOTYPE] = TypedArrayPrototype;
12792
+ if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray;
12793
+ }
12794
+ var $nativeIterator = TypedArrayPrototype[ITERATOR];
12795
+ var CORRECT_ITER_NAME = !!$nativeIterator
12796
+ && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined);
12797
+ var $iterator = $iterators.values;
12798
+ hide(TypedArray, TYPED_CONSTRUCTOR, true);
12799
+ hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
12800
+ hide(TypedArrayPrototype, VIEW, true);
12801
+ hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
12802
 
12803
+ if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) {
12804
+ dP(TypedArrayPrototype, TAG, {
12805
+ get: function () { return NAME; }
12806
+ });
12807
+ }
12808
 
12809
+ O[NAME] = TypedArray;
12810
 
12811
+ $export($export.G + $export.W + $export.F * (TypedArray != Base), O);
12812
+
12813
+ $export($export.S, NAME, {
12814
+ BYTES_PER_ELEMENT: BYTES
12815
+ });
12816
+
12817
+ $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, {
12818
+ from: $from,
12819
+ of: $of
12820
+ });
12821
+
12822
+ if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);
12823
+
12824
+ $export($export.P, NAME, proto);
12825
+
12826
+ setSpecies(NAME);
12827
+
12828
+ $export($export.P + $export.F * FORCED_SET, NAME, { set: $set });
12829
+
12830
+ $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);
12831
+
12832
+ if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString;
12833
+
12834
+ $export($export.P + $export.F * fails(function () {
12835
+ new TypedArray(1).slice();
12836
+ }), NAME, { slice: $slice });
12837
+
12838
+ $export($export.P + $export.F * (fails(function () {
12839
+ return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString();
12840
+ }) || !fails(function () {
12841
+ TypedArrayPrototype.toLocaleString.call([1, 2]);
12842
+ })), NAME, { toLocaleString: $toLocaleString });
12843
+
12844
+ Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;
12845
+ if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator);
12846
+ };
12847
+ } else module.exports = function () { /* empty */ };
12848
 
 
 
 
 
12849
 
12850
  /***/ }),
12851
+ /* 118 */
12852
+ /***/ (function(module, exports, __webpack_require__) {
12853
+
12854
+ var Map = __webpack_require__(491);
12855
+ var $export = __webpack_require__(8);
12856
+ var shared = __webpack_require__(256)('metadata');
12857
+ var store = shared.store || (shared.store = new (__webpack_require__(494))());
12858
+
12859
+ var getOrCreateMetadataMap = function (target, targetKey, create) {
12860
+ var targetMetadata = store.get(target);
12861
+ if (!targetMetadata) {
12862
+ if (!create) return undefined;
12863
+ store.set(target, targetMetadata = new Map());
12864
+ }
12865
+ var keyMetadata = targetMetadata.get(targetKey);
12866
+ if (!keyMetadata) {
12867
+ if (!create) return undefined;
12868
+ targetMetadata.set(targetKey, keyMetadata = new Map());
12869
+ } return keyMetadata;
12870
+ };
12871
+ var ordinaryHasOwnMetadata = function (MetadataKey, O, P) {
12872
+ var metadataMap = getOrCreateMetadataMap(O, P, false);
12873
+ return metadataMap === undefined ? false : metadataMap.has(MetadataKey);
12874
+ };
12875
+ var ordinaryGetOwnMetadata = function (MetadataKey, O, P) {
12876
+ var metadataMap = getOrCreateMetadataMap(O, P, false);
12877
+ return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey);
12878
+ };
12879
+ var ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) {
12880
+ getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue);
12881
+ };
12882
+ var ordinaryOwnMetadataKeys = function (target, targetKey) {
12883
+ var metadataMap = getOrCreateMetadataMap(target, targetKey, false);
12884
+ var keys = [];
12885
+ if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); });
12886
+ return keys;
12887
+ };
12888
+ var toMetaKey = function (it) {
12889
+ return it === undefined || typeof it == 'symbol' ? it : String(it);
12890
+ };
12891
+ var exp = function (O) {
12892
+ $export($export.S, 'Reflect', O);
12893
+ };
12894
+
12895
+ module.exports = {
12896
+ store: store,
12897
+ map: getOrCreateMetadataMap,
12898
+ has: ordinaryHasOwnMetadata,
12899
+ get: ordinaryGetOwnMetadata,
12900
+ set: ordinaryDefineOwnMetadata,
12901
+ keys: ordinaryOwnMetadataKeys,
12902
+ key: toMetaKey,
12903
+ exp: exp
12904
+ };
12905
+
12906
+
12907
+ /***/ }),
12908
+ /* 119 */
12909
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
12910
 
12911
  "use strict";
12912
+ /* unused harmony export BrowserRouter */
12913
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return HashRouter; });
12914
+ /* unused harmony export Link */
12915
+ /* unused harmony export NavLink */
12916
+ /* harmony import */ var react_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(45);
12917
+ /* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(37);
12918
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
12919
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
12920
+ /* harmony import */ var history__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(89);
12921
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3);
12922
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_4__);
12923
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(2);
12924
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(46);
12925
+ /* harmony import */ var tiny_invariant__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(64);
 
12926
 
12927
 
12928
 
12932
 
12933
 
12934
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12935
 
 
 
 
 
 
 
 
 
12936
 
12937
+ /**
12938
+ * The public API for a <Router> that uses HTML5 history.
12939
+ */
 
12940
 
12941
+ var BrowserRouter =
12942
+ /*#__PURE__*/
12943
+ function (_React$Component) {
12944
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(BrowserRouter, _React$Component);
 
 
 
 
 
 
 
12945
 
12946
+ function BrowserRouter() {
12947
+ var _this;
 
 
 
 
 
 
 
 
 
12948
 
12949
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
12950
+ args[_key] = arguments[_key];
12951
+ }
 
 
 
 
 
12952
 
12953
+ _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
12954
+ _this.history = Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createBrowserHistory */ "a"])(_this.props);
12955
+ return _this;
12956
+ }
 
 
 
 
 
 
 
 
 
12957
 
12958
+ var _proto = BrowserRouter.prototype;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12959
 
12960
+ _proto.render = function render() {
12961
+ return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(react_router__WEBPACK_IMPORTED_MODULE_0__[/* Router */ "b"], {
12962
+ history: this.history,
12963
+ children: this.props.children
12964
+ });
12965
+ };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12966
 
12967
+ return BrowserRouter;
12968
+ }(react__WEBPACK_IMPORTED_MODULE_2___default.a.Component);
 
 
 
 
 
 
 
 
 
 
12969
 
12970
+ if (false) {}
 
 
 
 
 
 
 
 
 
 
 
12971
 
12972
+ /**
12973
+ * The public API for a <Router> that uses window.location.hash.
12974
+ */
 
 
 
 
 
 
 
 
 
 
 
 
 
12975
 
12976
+ var HashRouter =
12977
+ /*#__PURE__*/
12978
+ function (_React$Component) {
12979
+ Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(HashRouter, _React$Component);
12980
 
12981
+ function HashRouter() {
12982
+ var _this;
12983
 
12984
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
12985
+ args[_key] = arguments[_key];
12986
+ }
 
 
12987
 
12988
+ _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
12989
+ _this.history = Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createHashHistory */ "b"])(_this.props);
12990
+ return _this;
12991
+ }
 
12992
 
12993
+ var _proto = HashRouter.prototype;
 
 
 
 
12994
 
12995
+ _proto.render = function render() {
12996
+ return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(react_router__WEBPACK_IMPORTED_MODULE_0__[/* Router */ "b"], {
12997
+ history: this.history,
12998
+ children: this.props.children
12999
+ });
13000
+ };
13001
 
13002
+ return HashRouter;
13003
+ }(react__WEBPACK_IMPORTED_MODULE_2___default.a.Component);
 
 
 
13004
 
13005
+ if (false) {}
 
 
 
 
13006
 
13007
+ var resolveToLocation = function resolveToLocation(to, currentLocation) {
13008
+ return typeof to === "function" ? to(currentLocation) : to;
13009
+ };
13010
+ var normalizeToLocation = function normalizeToLocation(to, currentLocation) {
13011
+ return typeof to === "string" ? Object(history__WEBPACK_IMPORTED_MODULE_3__[/* createLocation */ "c"])(to, null, null, currentLocation) : to;
13012
+ };
13013
 
13014
+ var forwardRefShim = function forwardRefShim(C) {
13015
+ return C;
13016
+ };
13017
 
13018
+ var forwardRef = react__WEBPACK_IMPORTED_MODULE_2___default.a.forwardRef;
 
13019
 
13020
+ if (typeof forwardRef === "undefined") {
13021
+ forwardRef = forwardRefShim;
13022
+ }
 
13023
 
13024
+ function isModifiedEvent(event) {
13025
+ return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);
13026
+ }
 
 
 
 
 
 
13027
 
13028
+ var LinkAnchor = forwardRef(function (_ref, forwardedRef) {
13029
+ var innerRef = _ref.innerRef,
13030
+ navigate = _ref.navigate,
13031
+ _onClick = _ref.onClick,
13032
+ rest = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(_ref, ["innerRef", "navigate", "onClick"]);
 
 
 
 
13033
 
13034
+ var target = rest.target;
 
 
 
 
 
13035
 
13036
+ var props = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])({}, rest, {
13037
+ onClick: function onClick(event) {
13038
+ try {
13039
+ if (_onClick) _onClick(event);
13040
+ } catch (ex) {
13041
+ event.preventDefault();
13042
+ throw ex;
13043
  }
 
13044
 
13045
+ if (!event.defaultPrevented && // onClick prevented default
13046
+ event.button === 0 && ( // ignore everything but left clicks
13047
+ !target || target === "_self") && // let browser handle "target=_blank" etc.
13048
+ !isModifiedEvent(event) // ignore clicks with modifier keys
13049
+ ) {
13050
+ event.preventDefault();
13051
+ navigate();
13052
+ }
13053
  }
13054
+ }); // React 15 compat
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13055
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13056
 
13057
+ if (forwardRefShim !== forwardRef) {
13058
+ props.ref = forwardedRef || innerRef;
13059
+ } else {
13060
+ props.ref = innerRef;
13061
+ }
13062
+ /* eslint-disable-next-line jsx-a11y/anchor-has-content */
13063
+
13064
 
13065
+ return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("a", props);
13066
+ });
 
 
 
13067
 
13068
+ if (false) {}
13069
  /**
13070
+ * The public API for rendering a history-aware <a>.
 
 
 
 
13071
  */
 
 
 
 
 
 
 
 
 
 
13072
 
 
 
 
 
 
 
13073
 
13074
+ var Link = forwardRef(function (_ref2, forwardedRef) {
13075
+ var _ref2$component = _ref2.component,
13076
+ component = _ref2$component === void 0 ? LinkAnchor : _ref2$component,
13077
+ replace = _ref2.replace,
13078
+ to = _ref2.to,
13079
+ innerRef = _ref2.innerRef,
13080
+ rest = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(_ref2, ["component", "replace", "to", "innerRef"]);
13081
 
13082
+ return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(react_router__WEBPACK_IMPORTED_MODULE_0__[/* __RouterContext */ "d"].Consumer, null, function (context) {
13083
+ !context ? false ? undefined : Object(tiny_invariant__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])(false) : void 0;
13084
+ var history = context.history;
13085
+ var location = normalizeToLocation(resolveToLocation(to, context.location), context.location);
13086
+ var href = location ? history.createHref(location) : "";
13087
 
13088
+ var props = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])({}, rest, {
13089
+ href: href,
13090
+ navigate: function navigate() {
13091
+ var location = resolveToLocation(to, context.location);
13092
+ var method = replace ? history.replace : history.push;
13093
+ method(location);
13094
+ }
13095
+ }); // React 15 compat
13096
 
 
13097
 
13098
+ if (forwardRefShim !== forwardRef) {
13099
+ props.ref = forwardedRef || innerRef;
13100
+ } else {
13101
+ props.innerRef = innerRef;
 
 
 
 
 
 
 
 
 
13102
  }
13103
+
13104
+ return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(component, props);
13105
+ });
13106
+ });
13107
+
13108
+ if (false) { var refType, toType; }
13109
+
13110
+ var forwardRefShim$1 = function forwardRefShim(C) {
13111
+ return C;
13112
+ };
13113
+
13114
+ var forwardRef$1 = react__WEBPACK_IMPORTED_MODULE_2___default.a.forwardRef;
13115
+
13116
+ if (typeof forwardRef$1 === "undefined") {
13117
+ forwardRef$1 = forwardRefShim$1;
13118
+ }
13119
+
13120
+ function joinClassnames() {
13121
+ for (var _len = arguments.length, classnames = new Array(_len), _key = 0; _key < _len; _key++) {
13122
+ classnames[_key] = arguments[_key];
13123
  }
13124
+
13125
+ return classnames.filter(function (i) {
13126
+ return i;
13127
+ }).join(" ");
13128
  }
13129
+ /**
13130
+ * A <Link> wrapper that knows if it's "active" or not.
13131
+ */
13132
 
 
13133
 
13134
+ var NavLink = forwardRef$1(function (_ref, forwardedRef) {
13135
+ var _ref$ariaCurrent = _ref["aria-current"],
13136
+ ariaCurrent = _ref$ariaCurrent === void 0 ? "page" : _ref$ariaCurrent,
13137
+ _ref$activeClassName = _ref.activeClassName,
13138
+ activeClassName = _ref$activeClassName === void 0 ? "active" : _ref$activeClassName,
13139
+ activeStyle = _ref.activeStyle,
13140
+ classNameProp = _ref.className,
13141
+ exact = _ref.exact,
13142
+ isActiveProp = _ref.isActive,
13143
+ locationProp = _ref.location,
13144
+ sensitive = _ref.sensitive,
13145
+ strict = _ref.strict,
13146
+ styleProp = _ref.style,
13147
+ to = _ref.to,
13148
+ innerRef = _ref.innerRef,
13149
+ rest = Object(_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(_ref, ["aria-current", "activeClassName", "activeStyle", "className", "exact", "isActive", "location", "sensitive", "strict", "style", "to", "innerRef"]);
13150
 
13151
+ return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(react_router__WEBPACK_IMPORTED_MODULE_0__[/* __RouterContext */ "d"].Consumer, null, function (context) {
13152
+ !context ? false ? undefined : Object(tiny_invariant__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])(false) : void 0;
13153
+ var currentLocation = locationProp || context.location;
13154
+ var toLocation = normalizeToLocation(resolveToLocation(to, currentLocation), currentLocation);
13155
+ var path = toLocation.pathname; // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202
13156
 
13157
+ var escapedPath = path && path.replace(/([.+*?=^!:${}()[\]|/\\])/g, "\\$1");
13158
+ var match = escapedPath ? Object(react_router__WEBPACK_IMPORTED_MODULE_0__[/* matchPath */ "e"])(currentLocation.pathname, {
13159
+ path: escapedPath,
13160
+ exact: exact,
13161
+ sensitive: sensitive,
13162
+ strict: strict
13163
+ }) : null;
13164
+ var isActive = !!(isActiveProp ? isActiveProp(match, currentLocation) : match);
13165
+ var className = isActive ? joinClassnames(classNameProp, activeClassName) : classNameProp;
13166
+ var style = isActive ? Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])({}, styleProp, {}, activeStyle) : styleProp;
13167
 
13168
+ var props = Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])({
13169
+ "aria-current": isActive && ariaCurrent || null,
13170
+ className: className,
13171
+ style: style,
13172
+ to: toLocation
13173
+ }, rest); // React 15 compat
13174
 
 
13175
 
13176
+ if (forwardRefShim$1 !== forwardRef$1) {
13177
+ props.ref = forwardedRef || innerRef;
13178
+ } else {
13179
+ props.innerRef = innerRef;
13180
+ }
13181
 
13182
+ return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(Link, props);
13183
+ });
13184
+ });
13185
 
13186
+ if (false) { var ariaCurrentType; }
13187
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13188
 
13189
+ //# sourceMappingURL=react-router-dom.js.map
13190
 
13191
 
13192
  /***/ }),
13193
+ /* 120 */
13194
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
13195
 
13196
  "use strict";
13197
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return FormDialog; });
13198
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
13199
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
13200
+ /* harmony import */ var _material_ui_core_Button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(111);
13201
+ /* harmony import */ var _material_ui_core_TextField__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(906);
13202
+ /* harmony import */ var _material_ui_core_Dialog__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(228);
13203
+ /* harmony import */ var _material_ui_core_DialogActions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(230);
13204
+ /* harmony import */ var _material_ui_core_DialogContent__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(164);
13205
+ /* harmony import */ var _material_ui_core_DialogContentText__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(165);
13206
+ /* harmony import */ var _material_ui_core_DialogTitle__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(229);
13207
+ /* harmony import */ var translate__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(1);
13208
+ function _extends() { _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; }; return _extends.apply(this, arguments); }
13209
 
13210
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13211
 
13212
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
 
 
13213
 
13214
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
 
 
 
13215
 
13216
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
 
 
13217
 
13218
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
 
 
 
 
13219
 
13220
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
 
 
 
13221
 
13222
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
 
 
 
 
13223
 
13224
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
 
 
13225
 
 
 
 
 
 
 
 
13226
 
 
 
 
13227
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13228
 
 
 
 
 
 
 
 
13229
 
 
 
13230
 
 
 
 
13231
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13232
 
 
 
 
13233
 
 
 
 
 
 
 
 
 
 
 
13234
 
13235
+ var defaultButtons = [{
13236
+ value: "cancel",
13237
+ text: Object(translate__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])("modal.cancel")
13238
+ }, {
13239
+ value: "confirm",
13240
+ text: Object(translate__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])("common.confirm"),
13241
+ focus: true
13242
+ }];
13243
+ function FormDialog(_ref) {
13244
+ var open = _ref.open,
13245
+ buttons = _ref.buttons,
13246
+ onClose = _ref.onClose,
13247
+ text = _ref.text,
13248
+ title = _ref.title,
13249
+ defaultValue = _ref.defaultValue,
13250
+ _ref$canBeEmpty = _ref.canBeEmpty,
13251
+ canBeEmpty = _ref$canBeEmpty === void 0 ? false : _ref$canBeEmpty,
13252
+ _ref$maxWidth = _ref.maxWidth,
13253
+ maxWidth = _ref$maxWidth === void 0 ? "xs" : _ref$maxWidth,
13254
+ _ref$fullWidth = _ref.fullWidth,
13255
+ fullWidth = _ref$fullWidth === void 0 ? true : _ref$fullWidth,
13256
+ _ref$cancelIfSameAsFi = _ref.cancelIfSameAsFirstValue,
13257
+ cancelIfSameAsFirstValue = _ref$cancelIfSameAsFi === void 0 ? false : _ref$cancelIfSameAsFi,
13258
+ _ref$clearOnConfirm = _ref.clearOnConfirm,
13259
+ clearOnConfirm = _ref$clearOnConfirm === void 0 ? false : _ref$clearOnConfirm,
13260
+ props = _objectWithoutProperties(_ref, ["open", "buttons", "onClose", "text", "title", "defaultValue", "canBeEmpty", "maxWidth", "fullWidth", "cancelIfSameAsFirstValue", "clearOnConfirm"]);
13261
 
13262
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default.a.useState(defaultValue === "" ? "" : defaultValue || " "),
13263
+ _React$useState2 = _slicedToArray(_React$useState, 2),
13264
+ value = _React$useState2[0],
13265
+ setValue = _React$useState2[1];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13266
 
13267
+ if (!buttons) buttons = defaultButtons;
 
 
 
13268
 
13269
+ var beforeClose = function beforeClose(action) {
13270
+ if (action !== "cancel" && !canBeEmpty && value == "") {
13271
+ return;
13272
+ }
13273
 
13274
+ if (clearOnConfirm && action === "confirm") {
13275
+ setValue("");
13276
+ }
 
 
13277
 
13278
+ onClose(action, value);
13279
+ };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13280
 
13281
+ var generateButtons = function generateButtons() {
13282
+ return buttons.map(function (button, key) {
13283
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_Button__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], {
13284
+ onClick: function onClick() {
13285
+ return beforeClose(button.value, value);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13286
  },
13287
+ color: "primary",
13288
+ key: key
13289
+ }, button.text);
13290
+ });
13291
+ };
13292
+
13293
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_Dialog__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"], _extends({
13294
+ open: open,
13295
+ maxWidth: maxWidth,
13296
+ fullWidth: fullWidth,
13297
+ onClose: function onClose() {
13298
+ return beforeClose("cancel");
13299
+ },
13300
+ "aria-labelledby": "form-dialog-title"
13301
+ }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_DialogTitle__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"], {
13302
+ id: "form-dialog-title"
13303
+ }, title), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_DialogContent__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_DialogContentText__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"], null, text), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_TextField__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"], {
13304
+ autoFocus: true,
13305
+ value: value,
13306
+ onChange: function onChange(e) {
13307
+ return setValue(e.target.value);
13308
+ },
13309
+ margin: "dense",
13310
+ id: "name",
13311
+ fullWidth: true,
13312
+ helperText: !canBeEmpty && value == "" ? Object(translate__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"])("modal.incorrect") : null,
13313
+ error: !canBeEmpty && value == "",
13314
+ onKeyPress: function onKeyPress(e) {
13315
+ if (e.charCode === 13) {
13316
+ if (cancelIfSameAsFirstValue && defaultValue === value) {
13317
+ beforeClose("cancel");
13318
  } else {
13319
+ beforeClose("confirm");
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13320
  }
13321
+ }
 
 
 
 
 
 
 
13322
  }
13323
+ })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_material_ui_core_DialogActions__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"], null, generateButtons()));
13324
+ }
 
 
 
 
 
 
13325
 
13326
+ /***/ }),
13327
+ /* 121 */
13328
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
13329
 
13330
+ "use strict";
13331
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return apiRequest; });
13332
+ /* unused harmony export init */
13333
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return convertData; });
13334
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return createRecord; });
13335
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(98);
13336
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);
13337
+ /* harmony import */ var buttonizer_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);
13338
+ /* harmony import */ var utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(26);
13339
+ /* harmony import */ var translate__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(1);
13340
+ 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; }
13341
 
13342
+ 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(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; }
13343
 
13344
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
 
 
13345
 
13346
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
 
 
 
13347
 
13348
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
13349
 
13350
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
13351
 
 
13352
 
 
13353
 
 
13354
 
 
13355
 
 
 
 
13356
 
13357
+ /**
13358
+ * Create api request
13359
+ *maar j
13360
+ * @param {*} endpoint
13361
+ * @param {*} data
13362
+ */
13363
 
13364
+ function apiRequest(endpoint, data) {
13365
+ data.url = buttonizer_admin.api + endpoint;
13366
+ data.headers = {
13367
+ "X-WP-Nonce": buttonizer_admin.nonce
13368
  };
13369
+ return axios__WEBPACK_IMPORTED_MODULE_0___default()(data);
13370
+ }
13371
+ /**
13372
+ * init store
13373
+ */
13374
 
13375
+ function init() {
13376
+ return {
13377
+ type: buttonizer_constants__WEBPACK_IMPORTED_MODULE_1__[/* actionTypes */ "a"].INIT,
13378
+ payload: {
13379
+ buttons: {},
13380
+ groups: {},
13381
+ timeSchedules: {},
13382
+ pageRules: {},
13383
+ settings: {}
13384
+ }
13385
+ };
13386
+ }
13387
+ /**
13388
+ * Convert data to models
13389
+ *
13390
+ * @param result
13391
+ * @return {obj} converted data
13392
+ */
13393
 
13394
+ function convertData(result) {
13395
+ var data = result;
13396
+ var buttons = {};
13397
+ var groups = {}; // Initializing groups
13398
 
13399
+ var _iterator = _createForOfIteratorHelper(data.groups),
13400
+ _step;
 
 
13401
 
13402
+ try {
13403
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
13404
+ var group = _step.value;
13405
+ var groupObject = createRecord(group.data);
13406
+ groupObject.children = []; // Initializing buttons inside the group
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13407
 
13408
+ var _iterator2 = _createForOfIteratorHelper(group.buttons),
13409
+ _step2;
13410
+
13411
+ try {
13412
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
13413
+ var button = _step2.value;
13414
+ var buttonObject = createRecord(button);
13415
+ buttonObject.parent = groupObject.id;
13416
+ buttons[buttonObject.id] = buttonObject;
13417
+ groupObject.children.push(buttonObject.id);
13418
+ }
13419
+ } catch (err) {
13420
+ _iterator2.e(err);
13421
+ } finally {
13422
+ _iterator2.f();
13423
+ }
13424
 
13425
+ groups[groupObject.id] = groupObject;
13426
+ }
13427
+ } catch (err) {
13428
+ _iterator.e(err);
13429
+ } finally {
13430
+ _iterator.f();
13431
+ }
13432
 
13433
+ var timeSchedules = {};
13434
+ var pageRules = {};
 
13435
 
13436
+ if (data.time_schedules) {
13437
+ data.time_schedules.map(function (timeSchedule) {
13438
+ timeSchedules[timeSchedule.id] = {
13439
+ id: timeSchedule.id,
13440
+ name: timeSchedule.name || Object(translate__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])("time_schedules.single_name"),
13441
+ weekdays: timeSchedule.weekdays || buttonizer_constants__WEBPACK_IMPORTED_MODULE_1__[/* weekdays */ "e"].map(function (weekday) {
13442
+ return {
13443
+ opened: true,
13444
+ open: "8:00",
13445
+ close: "17:00",
13446
+ weekday: weekday
13447
+ };
13448
+ }),
13449
+ start_date: timeSchedule.start_date || Object(utils__WEBPACK_IMPORTED_MODULE_2__[/* dateToFormat */ "c"])(new Date()),
13450
+ end_date: timeSchedule.end_date || null,
13451
+ dates: timeSchedule.dates || []
13452
+ };
13453
+ });
13454
+ } // Add page rules data with placeholders
13455
 
13456
 
13457
+ if (data.page_rules) {
13458
+ data.page_rules.map(function (pageRule) {
13459
+ pageRules[pageRule.id] = {
13460
+ id: pageRule.id,
13461
+ name: pageRule.name || "Unnamed pagerule",
13462
+ type: pageRule.type || "and",
13463
+ rules: pageRule.rules || [{
13464
+ type: "page_title",
13465
+ value: ""
13466
+ }]
13467
+ };
13468
+ });
13469
+ }
13470
 
13471
+ return {
13472
+ hasChanges: data.changes,
13473
+ buttons: buttons,
13474
+ groups: groups,
13475
+ timeSchedules: timeSchedules,
13476
+ pageRules: pageRules,
13477
+ settings: data.settings,
13478
+ premium: data.premium,
13479
+ premium_code: data.premium_code,
13480
+ version: data.version,
13481
+ wordpress: data.wordpress,
13482
+ is_opt_in: data.is_opt_in,
13483
+ additional_permissions: data.additional_permissions
13484
+ };
13485
+ }
13486
+ function createRecord(data) {
13487
+ if (data && typeof data.id !== "undefined") return data;
13488
+ return _objectSpread(_objectSpread({}, data), {}, {
13489
+ id: Object(utils__WEBPACK_IMPORTED_MODULE_2__[/* GenerateUniqueId */ "a"])()
13490
+ });
13491
+ }
13492
 
13493
  /***/ }),
13494
+ /* 122 */
13495
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
13496
 
13497
  "use strict";
13498
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return generateJSONObject; });
13499
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return apiRequest; });
13500
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return resetSettings; });
13501
+ /* harmony import */ var _selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21);
13502
+ /* harmony import */ var immer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(41);
13503
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(98);
13504
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_2__);
 
 
 
 
 
 
 
13505
 
13506
 
13507
 
13508
+ /**
13509
+ * Generate JSON object
13510
+ * @returns {Array}
13511
+ */
13512
 
13513
+ function generateJSONObject(storeDataObject) {
13514
+ // Buttons
13515
+ var buttonGroups = Object.values(storeDataObject);
13516
+ var data = [];
13517
+ buttonGroups.forEach(function (groupObject) {
13518
+ var outputGroup = Object(immer__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(groupObject, function (draftObject) {
13519
+ delete draftObject.children;
13520
+ });
13521
+ var groupButtons = Object.values(Object(_selectors__WEBPACK_IMPORTED_MODULE_0__[/* getChildrenIndex */ "f"])(groupObject.children));
13522
+ var tempButtons = [];
13523
+ groupButtons.forEach(function (buttonObject) {
13524
+ var outputButton = Object(immer__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(buttonObject, function (draftObject) {
13525
+ delete draftObject.parent;
13526
+ });
13527
+ tempButtons.push(outputButton);
13528
+ });
13529
 
13530
+ if (tempButtons.length === 0) {
13531
+ tempButtons = [{
13532
+ name: "Button",
13533
+ show_mobile: "true",
13534
+ show_desktop: "true"
13535
+ }];
13536
+ }
13537
 
13538
+ data.push({
13539
+ data: outputGroup,
13540
+ buttons: tempButtons
13541
+ });
13542
+ });
13543
+ return data;
13544
+ }
13545
+ /**
13546
+ * Create api request
13547
+ *
13548
+ * @param {*} endpoint
13549
+ * @param {*} data
13550
+ */
13551
 
13552
+ function apiRequest(endpoint, data) {
13553
+ data.url = buttonizer_admin.api + endpoint;
13554
+ data.headers = {
13555
+ "X-WP-Nonce": buttonizer_admin.nonce
13556
+ };
13557
+ return axios__WEBPACK_IMPORTED_MODULE_2___default()(data);
13558
+ }
13559
+ /**
13560
+ * Reset Buttonizer
13561
+ */
13562
 
13563
+ function resetSettings() {
13564
+ return apiRequest("/reset", {
13565
+ method: "POST",
13566
+ data: {
13567
+ nonce: buttonizer_admin.nonce
13568
+ }
13569
+ }).then(function () {
13570
+ location.reload();
13571
+ })["catch"](function (e) {
13572
+ console.error(e);
13573
+ throw new Error("Something went wrong trying to update this model.");
13574
+ });
13575
+ }
13576
 
13577
+ /***/ }),
13578
+ /* 123 */,
13579
+ /* 124 */
13580
+ /***/ (function(module, exports, __webpack_require__) {
13581
 
13582
+ var root = __webpack_require__(49);
13583
 
13584
+ /** Built-in value references. */
13585
+ var Symbol = root.Symbol;
 
13586
 
13587
+ module.exports = Symbol;
 
 
 
13588
 
 
 
13589
 
13590
+ /***/ }),
13591
+ /* 125 */
13592
+ /***/ (function(module, exports) {
13593
 
13594
+ module.exports = function(originalModule) {
13595
+ if (!originalModule.webpackPolyfill) {
13596
+ var module = Object.create(originalModule);
13597
+ // module.parent = undefined by default
13598
+ if (!module.children) module.children = [];
13599
+ Object.defineProperty(module, "loaded", {
13600
+ enumerable: true,
13601
+ get: function() {
13602
+ return module.l;
13603
+ }
13604
+ });
13605
+ Object.defineProperty(module, "id", {
13606
+ enumerable: true,
13607
+ get: function() {
13608
+ return module.i;
13609
+ }
13610
+ });
13611
+ Object.defineProperty(module, "exports", {
13612
+ enumerable: true
13613
+ });
13614
+ module.webpackPolyfill = 1;
13615
+ }
13616
+ return module;
13617
+ };
13618
 
 
13619
 
13620
+ /***/ }),
13621
+ /* 126 */
13622
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
13623
 
13624
+ var global = __webpack_require__(56);
13625
+ var getOwnPropertyDescriptor = __webpack_require__(426).f;
13626
+ var createNonEnumerableProperty = __webpack_require__(128);
13627
+ var redefine = __webpack_require__(176);
13628
+ var setGlobal = __webpack_require__(356);
13629
+ var copyConstructorProperties = __webpack_require__(575);
13630
+ var isForced = __webpack_require__(436);
13631
 
13632
+ /*
13633
+ options.target - name of the target object
13634
+ options.global - target is the global object
13635
+ options.stat - export as static methods of target
13636
+ options.proto - export as prototype methods of target
13637
+ options.real - real prototype method for the `pure` version
13638
+ options.forced - export even if the native feature is available
13639
+ options.bind - bind methods to the target, required for the `pure` version
13640
+ options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
13641
+ options.unsafe - use the simple assignment of property instead of delete + defineProperty
13642
+ options.sham - add a flag to not completely full polyfills
13643
+ options.enumerable - export as enumerable property
13644
+ options.noTargetGet - prevent calling a getter on target
13645
+ */
13646
+ module.exports = function (options, source) {
13647
+ var TARGET = options.target;
13648
+ var GLOBAL = options.global;
13649
+ var STATIC = options.stat;
13650
+ var FORCED, target, key, targetProperty, sourceProperty, descriptor;
13651
+ if (GLOBAL) {
13652
+ target = global;
13653
+ } else if (STATIC) {
13654
+ target = global[TARGET] || setGlobal(TARGET, {});
13655
+ } else {
13656
+ target = (global[TARGET] || {}).prototype;
13657
+ }
13658
+ if (target) for (key in source) {
13659
+ sourceProperty = source[key];
13660
+ if (options.noTargetGet) {
13661
+ descriptor = getOwnPropertyDescriptor(target, key);
13662
+ targetProperty = descriptor && descriptor.value;
13663
+ } else targetProperty = target[key];
13664
+ FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
13665
+ // contained in target
13666
+ if (!FORCED && targetProperty !== undefined) {
13667
+ if (typeof sourceProperty === typeof targetProperty) continue;
13668
+ copyConstructorProperties(sourceProperty, targetProperty);
13669
+ }
13670
+ // add a flag to not completely full polyfills
13671
+ if (options.sham || (targetProperty && targetProperty.sham)) {
13672
+ createNonEnumerableProperty(sourceProperty, 'sham', true);
13673
+ }
13674
+ // extend global
13675
+ redefine(target, key, sourceProperty, options);
13676
+ }
13677
+ };
13678
 
 
 
 
13679
 
13680
+ /***/ }),
13681
+ /* 127 */
13682
+ /***/ (function(module, exports, __webpack_require__) {
 
13683
 
13684
+ var fails = __webpack_require__(67);
 
13685
 
13686
+ // Thank's IE8 for his funny defineProperty
13687
+ module.exports = !fails(function () {
13688
+ return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
13689
+ });
13690
 
 
 
 
 
13691
 
13692
+ /***/ }),
13693
+ /* 128 */
13694
+ /***/ (function(module, exports, __webpack_require__) {
13695
 
13696
+ var DESCRIPTORS = __webpack_require__(127);
13697
+ var definePropertyModule = __webpack_require__(145);
13698
+ var createPropertyDescriptor = __webpack_require__(355);
 
 
 
13699
 
13700
+ module.exports = DESCRIPTORS ? function (object, key, value) {
13701
+ return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
13702
+ } : function (object, key, value) {
13703
+ object[key] = value;
13704
+ return object;
13705
+ };
13706
 
 
13707
 
13708
+ /***/ }),
13709
+ /* 129 */
13710
+ /***/ (function(module, exports, __webpack_require__) {
13711
+
13712
+ var META = __webpack_require__(147)('meta');
13713
+ var isObject = __webpack_require__(30);
13714
+ var has = __webpack_require__(81);
13715
+ var setDesc = __webpack_require__(43).f;
13716
+ var id = 0;
13717
+ var isExtensible = Object.isExtensible || function () {
13718
+ return true;
13719
  };
13720
+ var FREEZE = !__webpack_require__(27)(function () {
13721
+ return isExtensible(Object.preventExtensions({}));
13722
+ });
13723
+ var setMeta = function (it) {
13724
+ setDesc(it, META, { value: {
13725
+ i: 'O' + ++id, // object ID
13726
+ w: {} // weak collections IDs
13727
+ } });
13728
  };
13729
+ var fastKey = function (it, create) {
13730
+ // return primitive with prefix
13731
+ if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
13732
+ if (!has(it, META)) {
13733
+ // can't set metadata to uncaught frozen object
13734
+ if (!isExtensible(it)) return 'F';
13735
+ // not necessary to add metadata
13736
+ if (!create) return 'E';
13737
+ // add missing metadata
13738
+ setMeta(it);
13739
+ // return object ID
13740
+ } return it[META].i;
13741
+ };
13742
+ var getWeak = function (it, create) {
13743
+ if (!has(it, META)) {
13744
+ // can't set metadata to uncaught frozen object
13745
+ if (!isExtensible(it)) return true;
13746
+ // not necessary to add metadata
13747
+ if (!create) return false;
13748
+ // add missing metadata
13749
+ setMeta(it);
13750
+ // return hash weak collections IDs
13751
+ } return it[META].w;
13752
+ };
13753
+ // add metadata on freeze-family methods calling
13754
+ var onFreeze = function (it) {
13755
+ if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
13756
+ return it;
13757
+ };
13758
+ var meta = module.exports = {
13759
+ KEY: META,
13760
+ NEED: false,
13761
+ fastKey: fastKey,
13762
+ getWeak: getWeak,
13763
+ onFreeze: onFreeze
13764
  };
13765
 
 
13766
 
13767
+ /***/ }),
13768
+ /* 130 */
13769
+ /***/ (function(module, exports) {
13770
 
13771
+ module.exports = false;
 
 
13772
 
 
 
 
 
 
13773
 
13774
+ /***/ }),
13775
+ /* 131 */
13776
+ /***/ (function(module, exports, __webpack_require__) {
13777
 
13778
+ // 22.1.3.31 Array.prototype[@@unscopables]
13779
+ var UNSCOPABLES = __webpack_require__(35)('unscopables');
13780
+ var ArrayProto = Array.prototype;
13781
+ if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(72)(ArrayProto, UNSCOPABLES, {});
13782
+ module.exports = function (key) {
13783
+ ArrayProto[UNSCOPABLES][key] = true;
13784
+ };
 
13785
 
 
 
 
 
 
 
 
 
 
 
13786
 
13787
+ /***/ }),
13788
+ /* 132 */
13789
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
13790
 
13791
+ "use strict";
13792
+ /* unused harmony export teardown */
13793
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useIsFocusVisible; });
13794
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
13795
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
13796
+ /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(25);
13797
+ /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_1__);
13798
+ // based on https://github.com/WICG/focus-visible/blob/v4.1.5/src/focus-visible.js
13799
 
 
 
13800
 
13801
+ var hadKeyboardEvent = true;
13802
+ var hadFocusVisibleRecently = false;
13803
+ var hadFocusVisibleRecentlyTimeout = null;
13804
+ var inputTypesWhitelist = {
13805
+ text: true,
13806
+ search: true,
13807
+ url: true,
13808
+ tel: true,
13809
+ email: true,
13810
+ password: true,
13811
+ number: true,
13812
+ date: true,
13813
+ month: true,
13814
+ week: true,
13815
+ time: true,
13816
+ datetime: true,
13817
+ 'datetime-local': true
13818
+ };
13819
  /**
13820
+ * Computes whether the given element should automatically trigger the
13821
+ * `focus-visible` class being added, i.e. whether it should always match
13822
+ * `:focus-visible` when focused.
13823
+ * @param {Element} node
13824
+ * @return {boolean}
13825
  */
13826
 
13827
+ function focusTriggersKeyboardModality(node) {
13828
+ var type = node.type,
13829
+ tagName = node.tagName;
13830
 
13831
+ if (tagName === 'INPUT' && inputTypesWhitelist[type] && !node.readOnly) {
13832
+ return true;
13833
+ }
 
 
 
 
13834
 
13835
+ if (tagName === 'TEXTAREA' && !node.readOnly) {
13836
+ return true;
13837
+ }
 
 
 
 
 
 
 
 
 
 
 
13838
 
13839
+ if (node.isContentEditable) {
13840
+ return true;
13841
+ }
13842
 
13843
+ return false;
13844
+ }
13845
+ /**
13846
+ * Keep track of our keyboard modality state with `hadKeyboardEvent`.
13847
+ * If the most recent user interaction was via the keyboard;
13848
+ * and the key press did not include a meta, alt/option, or control key;
13849
+ * then the modality is keyboard. Otherwise, the modality is not keyboard.
13850
+ * @param {KeyboardEvent} event
13851
+ */
13852
 
 
 
 
13853
 
13854
+ function handleKeyDown(event) {
13855
+ if (event.metaKey || event.altKey || event.ctrlKey) {
13856
+ return;
13857
+ }
13858
 
13859
+ hadKeyboardEvent = true;
13860
+ }
13861
+ /**
13862
+ * If at any point a user clicks with a pointing device, ensure that we change
13863
+ * the modality away from keyboard.
13864
+ * This avoids the situation where a user presses a key on an already focused
13865
+ * element, and then clicks on a different element, focusing it with a
13866
+ * pointing device, while we still think we're in keyboard modality.
13867
+ */
13868
 
 
13869
 
13870
+ function handlePointerDown() {
13871
+ hadKeyboardEvent = false;
13872
  }
13873
 
13874
+ function handleVisibilityChange() {
13875
+ if (this.visibilityState === 'hidden') {
13876
+ // If the tab becomes active again, the browser will handle calling focus
13877
+ // on the element (Safari actually calls it twice).
13878
+ // If this tab change caused a blur on an element with focus-visible,
13879
+ // re-apply the class when the user switches back to the tab.
13880
+ if (hadFocusVisibleRecently) {
13881
+ hadKeyboardEvent = true;
13882
+ }
13883
  }
13884
+ }
13885
 
13886
+ function prepare(doc) {
13887
+ doc.addEventListener('keydown', handleKeyDown, true);
13888
+ doc.addEventListener('mousedown', handlePointerDown, true);
13889
+ doc.addEventListener('pointerdown', handlePointerDown, true);
13890
+ doc.addEventListener('touchstart', handlePointerDown, true);
13891
+ doc.addEventListener('visibilitychange', handleVisibilityChange, true);
13892
+ }
13893
+
13894
+ function teardown(doc) {
13895
+ doc.removeEventListener('keydown', handleKeyDown, true);
13896
+ doc.removeEventListener('mousedown', handlePointerDown, true);
13897
+ doc.removeEventListener('pointerdown', handlePointerDown, true);
13898
+ doc.removeEventListener('touchstart', handlePointerDown, true);
13899
+ doc.removeEventListener('visibilitychange', handleVisibilityChange, true);
13900
+ }
13901
+
13902
+ function isFocusVisible(event) {
13903
+ var target = event.target;
13904
+
13905
+ try {
13906
+ return target.matches(':focus-visible');
13907
+ } catch (error) {} // browsers not implementing :focus-visible will throw a SyntaxError
13908
+ // we use our own heuristic for those browsers
13909
+ // rethrow might be better if it's not the expected error but do we really
13910
+ // want to crash if focus-visible malfunctioned?
13911
+ // no need for validFocusTarget check. the user does that by attaching it to
13912
+ // focusable events only
13913
+
13914
+
13915
+ return hadKeyboardEvent || focusTriggersKeyboardModality(target);
13916
  }
13917
  /**
13918
+ * Should be called if a blur event is fired on a focus-visible element
13919
  */
13920
 
13921
 
13922
+ function handleBlurVisible() {
13923
+ // To detect a tab/window switch, we look for a blur event followed
13924
+ // rapidly by a visibility change.
13925
+ // If we don't see a visibility change within 100ms, it's probably a
13926
+ // regular focus change.
13927
+ hadFocusVisibleRecently = true;
13928
+ window.clearTimeout(hadFocusVisibleRecentlyTimeout);
13929
+ hadFocusVisibleRecentlyTimeout = window.setTimeout(function () {
13930
+ hadFocusVisibleRecently = false;
13931
+ }, 100);
13932
+ }
 
 
 
 
13933
 
13934
+ function useIsFocusVisible() {
13935
+ var ref = react__WEBPACK_IMPORTED_MODULE_0__["useCallback"](function (instance) {
13936
+ var node = react_dom__WEBPACK_IMPORTED_MODULE_1__["findDOMNode"](instance);
 
 
13937
 
13938
+ if (node != null) {
13939
+ prepare(node.ownerDocument);
13940
+ }
13941
+ }, []);
 
 
 
 
 
13942
 
13943
+ if (false) {}
 
 
 
 
 
13944
 
13945
+ return {
13946
+ isFocusVisible: isFocusVisible,
13947
+ onBlurVisible: handleBlurVisible,
13948
+ ref: ref
13949
+ };
13950
+ }
13951
 
13952
+ /***/ }),
13953
+ /* 133 */
13954
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 
13955
 
13956
+ "use strict";
13957
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _typeof; });
13958
+ function _typeof(obj) {
13959
+ if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
13960
+ _typeof = function _typeof(obj) {
13961
+ return typeof obj;
13962
+ };
13963
+ } else {
13964
+ _typeof = function _typeof(obj) {
13965
+ return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
13966
+ };
13967
+ }
13968
 
13969
+ return _typeof(obj);
13970
+ }
13971
 
13972
+ /***/ }),
13973
+ /* 134 */
13974
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
13975
 
13976
+ "use strict";
13977
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ownerWindow; });
13978
+ /* harmony import */ var _ownerDocument__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(38);
13979
 
13980
+ function ownerWindow(node) {
13981
+ var doc = Object(_ownerDocument__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(node);
13982
+ return doc.defaultView || window;
13983
+ }
13984
 
13985
  /***/ }),
13986
+ /* 135 */
13987
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
13988
 
13989
  "use strict";
13990
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isMuiElement; });
13991
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
13992
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 
 
 
 
 
 
 
 
 
13993
 
13994
+ function isMuiElement(element, muiNames) {
13995
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__["isValidElement"](element) && muiNames.indexOf(element.type.muiName) !== -1;
13996
+ }
13997
 
13998
+ /***/ }),
13999
+ /* 136 */,
14000
+ /* 137 */,
14001
+ /* 138 */
14002
+ /***/ (function(module, exports, __webpack_require__) {
14003
 
14004
+ var baseGetTag = __webpack_require__(79),
14005
+ isObject = __webpack_require__(48);
14006
 
14007
+ /** `Object#toString` result references. */
14008
+ var asyncTag = '[object AsyncFunction]',
14009
+ funcTag = '[object Function]',
14010
+ genTag = '[object GeneratorFunction]',
14011
+ proxyTag = '[object Proxy]';
14012
 
14013
+ /**
14014
+ * Checks if `value` is classified as a `Function` object.
14015
+ *
14016
+ * @static
14017
+ * @memberOf _
14018
+ * @since 0.1.0
14019
+ * @category Lang
14020
+ * @param {*} value The value to check.
14021
+ * @returns {boolean} Returns `true` if `value` is a function, else `false`.
14022
+ * @example
14023
+ *
14024
+ * _.isFunction(_);
14025
+ * // => true
14026
+ *
14027
+ * _.isFunction(/abc/);
14028
+ * // => false
14029
+ */
14030
+ function isFunction(value) {
14031
+ if (!isObject(value)) {
14032
+ return false;
14033
+ }
14034
+ // The use of `Object#toString` avoids issues with the `typeof` operator
14035
+ // in Safari 9 which returns 'object' for typed arrays and other constructors.
14036
+ var tag = baseGetTag(value);
14037
+ return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
14038
+ }
14039
 
14040
+ module.exports = isFunction;
14041
 
 
14042
 
14043
+ /***/ }),
14044
+ /* 139 */
14045
+ /***/ (function(module, exports, __webpack_require__) {
14046
 
14047
+ var defineProperty = __webpack_require__(202);
14048
 
14049
+ /**
14050
+ * The base implementation of `assignValue` and `assignMergeValue` without
14051
+ * value checks.
14052
+ *
14053
+ * @private
14054
+ * @param {Object} object The object to modify.
14055
+ * @param {string} key The key of the property to assign.
14056
+ * @param {*} value The value to assign.
14057
+ */
14058
+ function baseAssignValue(object, key, value) {
14059
+ if (key == '__proto__' && defineProperty) {
14060
+ defineProperty(object, key, {
14061
+ 'configurable': true,
14062
+ 'enumerable': true,
14063
+ 'value': value,
14064
+ 'writable': true
14065
+ });
14066
+ } else {
14067
+ object[key] = value;
14068
+ }
14069
+ }
14070
 
14071
+ module.exports = baseAssignValue;
14072
 
14073
 
14074
+ /***/ }),
14075
+ /* 140 */
14076
+ /***/ (function(module, exports) {
14077
 
14078
+ module.exports = function(module) {
14079
+ if (!module.webpackPolyfill) {
14080
+ module.deprecate = function() {};
14081
+ module.paths = [];
14082
+ // module.parent = undefined by default
14083
+ if (!module.children) module.children = [];
14084
+ Object.defineProperty(module, "loaded", {
14085
+ enumerable: true,
14086
+ get: function() {
14087
+ return module.l;
14088
+ }
14089
+ });
14090
+ Object.defineProperty(module, "id", {
14091
+ enumerable: true,
14092
+ get: function() {
14093
+ return module.i;
14094
+ }
14095
+ });
14096
+ module.webpackPolyfill = 1;
14097
+ }
14098
+ return module;
14099
+ };
14100
 
14101
 
14102
+ /***/ }),
14103
+ /* 141 */
14104
+ /***/ (function(module, exports, __webpack_require__) {
14105
 
14106
+ /* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__(49),
14107
+ stubFalse = __webpack_require__(340);
14108
 
14109
+ /** Detect free variable `exports`. */
14110
+ var freeExports = true && exports && !exports.nodeType && exports;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14111
 
14112
+ /** Detect free variable `module`. */
14113
+ var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
 
 
14114
 
14115
+ /** Detect the popular CommonJS extension `module.exports`. */
14116
+ var moduleExports = freeModule && freeModule.exports === freeExports;
14117
 
14118
+ /** Built-in value references. */
14119
+ var Buffer = moduleExports ? root.Buffer : undefined;
 
 
14120
 
14121
+ /* Built-in method references for those with the same name as other `lodash` methods. */
14122
+ var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;
 
14123
 
14124
+ /**
14125
+ * Checks if `value` is a buffer.
14126
+ *
14127
+ * @static
14128
+ * @memberOf _
14129
+ * @since 4.3.0
14130
+ * @category Lang
14131
+ * @param {*} value The value to check.
14132
+ * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
14133
+ * @example
14134
+ *
14135
+ * _.isBuffer(new Buffer(2));
14136
+ * // => true
14137
+ *
14138
+ * _.isBuffer(new Uint8Array(2));
14139
+ * // => false
14140
+ */
14141
+ var isBuffer = nativeIsBuffer || stubFalse;
14142
 
14143
+ module.exports = isBuffer;
 
 
 
 
 
 
 
 
 
 
14144
 
14145
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(140)(module)))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14146
 
14147
  /***/ }),
14148
+ /* 142 */
14149
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14150
 
14151
+ var assignValue = __webpack_require__(244),
14152
+ baseAssignValue = __webpack_require__(139);
14153
 
14154
+ /**
14155
+ * Copies properties of `source` to `object`.
14156
+ *
14157
+ * @private
14158
+ * @param {Object} source The object to copy properties from.
14159
+ * @param {Array} props The property identifiers to copy.
14160
+ * @param {Object} [object={}] The object to copy properties to.
14161
+ * @param {Function} [customizer] The function to customize copied values.
14162
+ * @returns {Object} Returns `object`.
14163
+ */
14164
+ function copyObject(source, props, object, customizer) {
14165
+ var isNew = !object;
14166
+ object || (object = {});
14167
 
14168
+ var index = -1,
14169
+ length = props.length;
14170
 
14171
+ while (++index < length) {
14172
+ var key = props[index];
14173
 
14174
+ var newValue = customizer
14175
+ ? customizer(object[key], source[key], key, object, source)
14176
+ : undefined;
14177
 
14178
+ if (newValue === undefined) {
14179
+ newValue = source[key];
14180
+ }
14181
+ if (isNew) {
14182
+ baseAssignValue(object, key, newValue);
14183
+ } else {
14184
+ assignValue(object, key, newValue);
14185
+ }
14186
+ }
14187
+ return object;
14188
+ }
14189
 
14190
+ module.exports = copyObject;
14191
 
 
 
 
 
 
 
14192
 
14193
+ /***/ }),
14194
+ /* 143 */
14195
+ /***/ (function(module, exports) {
 
 
 
 
 
 
 
14196
 
 
 
 
 
 
 
 
 
 
 
 
 
14197
  /**
14198
+ * This method returns the first argument it receives.
14199
  *
14200
+ * @static
14201
+ * @since 0.1.0
14202
+ * @memberOf _
14203
+ * @category Util
14204
+ * @param {*} value Any value.
14205
+ * @returns {*} Returns `value`.
14206
+ * @example
14207
+ *
14208
+ * var object = { 'a': 1 };
14209
+ *
14210
+ * console.log(_.identity(object) === object);
14211
+ * // => true
14212
  */
14213
+ function identity(value) {
14214
+ return value;
14215
+ }
14216
 
14217
+ module.exports = identity;
 
 
 
14218
 
 
 
14219
 
14220
+ /***/ }),
14221
+ /* 144 */
14222
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14223
 
14224
+ "use strict";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14225
 
14226
 
14227
+ if (true) {
14228
+ module.exports = __webpack_require__(572);
14229
+ } else {}
 
 
 
 
 
 
 
 
 
 
14230
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14231
 
14232
  /***/ }),
14233
+ /* 145 */
14234
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
 
 
 
14235
 
14236
+ var DESCRIPTORS = __webpack_require__(127);
14237
+ var IE8_DOM_DEFINE = __webpack_require__(429);
14238
+ var anObject = __webpack_require__(93);
14239
+ var toPrimitive = __webpack_require__(428);
14240
 
14241
+ var nativeDefineProperty = Object.defineProperty;
 
 
 
14242
 
14243
+ // `Object.defineProperty` method
14244
+ // https://tc39.github.io/ecma262/#sec-object.defineproperty
14245
+ exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
14246
+ anObject(O);
14247
+ P = toPrimitive(P, true);
14248
+ anObject(Attributes);
14249
+ if (IE8_DOM_DEFINE) try {
14250
+ return nativeDefineProperty(O, P, Attributes);
14251
+ } catch (error) { /* empty */ }
14252
+ if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
14253
+ if ('value' in Attributes) O[P] = Attributes.value;
14254
+ return O;
14255
+ };
 
 
 
14256
 
 
 
 
 
 
 
 
14257
 
14258
+ /***/ }),
14259
+ /* 146 */
14260
+ /***/ (function(module, exports) {
 
 
 
 
 
 
 
 
 
 
14261
 
14262
+ module.exports = function (bitmap, value) {
14263
+ return {
14264
+ enumerable: !(bitmap & 1),
14265
+ configurable: !(bitmap & 2),
14266
+ writable: !(bitmap & 4),
14267
+ value: value
14268
  };
14269
+ };
 
 
 
 
14270
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14271
 
14272
  /***/ }),
14273
+ /* 147 */
14274
+ /***/ (function(module, exports) {
 
 
 
 
 
 
14275
 
14276
+ var id = 0;
14277
+ var px = Math.random();
14278
+ module.exports = function (key) {
14279
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
14280
+ };
14281
 
14282
 
14283
  /***/ }),
14284
+ /* 148 */
14285
  /***/ (function(module, exports, __webpack_require__) {
14286
 
14287
+ // 19.1.2.14 / 15.2.3.14 Object.keys(O)
14288
+ var $keys = __webpack_require__(472);
14289
+ var enumBugKeys = __webpack_require__(377);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14290
 
14291
+ module.exports = Object.keys || function keys(O) {
14292
+ return $keys(O, enumBugKeys);
14293
+ };
14294
 
14295
 
14296
  /***/ }),
14297
+ /* 149 */
14298
  /***/ (function(module, exports, __webpack_require__) {
14299
 
14300
+ var toInteger = __webpack_require__(106);
14301
+ var max = Math.max;
14302
+ var min = Math.min;
14303
+ module.exports = function (index, length) {
14304
+ index = toInteger(index);
14305
+ return index < 0 ? max(index + length, 0) : min(index, length);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14306
  };
14307
 
14308
 
14309
  /***/ }),
14310
+ /* 150 */
14311
  /***/ (function(module, exports, __webpack_require__) {
14312
 
14313
+ // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
14314
+ var anObject = __webpack_require__(22);
14315
+ var dPs = __webpack_require__(473);
14316
+ var enumBugKeys = __webpack_require__(377);
14317
+ var IE_PROTO = __webpack_require__(376)('IE_PROTO');
14318
+ var Empty = function () { /* empty */ };
14319
+ var PROTOTYPE = 'prototype';
14320
 
14321
+ // Create object with fake `null` prototype: use iframe Object with cleared prototype
14322
+ var createDict = function () {
14323
+ // Thrash, waste and sodomy: IE GC bug
14324
+ var iframe = __webpack_require__(374)('iframe');
14325
+ var i = enumBugKeys.length;
14326
+ var lt = '<';
14327
+ var gt = '>';
14328
+ var iframeDocument;
14329
+ iframe.style.display = 'none';
14330
+ __webpack_require__(378).appendChild(iframe);
14331
+ iframe.src = 'javascript:'; // eslint-disable-line no-script-url
14332
+ // createDict = iframe.contentWindow.Object;
14333
+ // html.removeChild(iframe);
14334
+ iframeDocument = iframe.contentWindow.document;
14335
+ iframeDocument.open();
14336
+ iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
14337
+ iframeDocument.close();
14338
+ createDict = iframeDocument.F;
14339
+ while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
14340
+ return createDict();
14341
+ };
14342
+
14343
+ module.exports = Object.create || function create(O, Properties) {
14344
+ var result;
14345
+ if (O !== null) {
14346
+ Empty[PROTOTYPE] = anObject(O);
14347
+ result = new Empty();
14348
+ Empty[PROTOTYPE] = null;
14349
+ // add "__proto__" for Object.getPrototypeOf polyfill
14350
+ result[IE_PROTO] = O;
14351
+ } else result = createDict();
14352
+ return Properties === undefined ? result : dPs(result, Properties);
14353
+ };
14354
 
14355
 
14356
  /***/ }),
14357
+ /* 151 */
14358
  /***/ (function(module, exports, __webpack_require__) {
14359
 
14360
+ // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
14361
+ var $keys = __webpack_require__(472);
14362
+ var hiddenKeys = __webpack_require__(377).concat('length', 'prototype');
14363
 
14364
+ exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
14365
+ return $keys(O, hiddenKeys);
 
 
 
14366
  };
14367
 
14368
 
14369
  /***/ }),
14370
+ /* 152 */
14371
  /***/ (function(module, exports, __webpack_require__) {
14372
 
14373
+ "use strict";
 
 
 
14374
 
14375
+ var global = __webpack_require__(24);
14376
+ var dP = __webpack_require__(43);
14377
+ var DESCRIPTORS = __webpack_require__(42);
14378
+ var SPECIES = __webpack_require__(35)('species');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14379
 
14380
+ module.exports = function (KEY) {
14381
+ var C = global[KEY];
14382
+ if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
14383
+ configurable: true,
14384
+ get: function () { return this; }
14385
+ });
14386
+ };
14387
 
14388
 
14389
  /***/ }),
14390
+ /* 153 */
14391
+ /***/ (function(module, exports) {
14392
 
14393
+ module.exports = function (it, Constructor, name, forbiddenField) {
14394
+ if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
14395
+ throw TypeError(name + ': incorrect invocation!');
14396
+ } return it;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14397
  };
14398
 
14399
 
14400
  /***/ }),
14401
+ /* 154 */
14402
+ /***/ (function(module, exports, __webpack_require__) {
14403
 
14404
+ var ctx = __webpack_require__(95);
14405
+ var call = __webpack_require__(484);
14406
+ var isArrayIter = __webpack_require__(390);
14407
+ var anObject = __webpack_require__(22);
14408
+ var toLength = __webpack_require__(44);
14409
+ var getIterFn = __webpack_require__(392);
14410
+ var BREAK = {};
14411
+ var RETURN = {};
14412
+ var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
14413
+ var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
14414
+ var f = ctx(fn, that, entries ? 2 : 1);
14415
+ var index = 0;
14416
+ var length, step, iterator, result;
14417
+ if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
14418
+ // fast case for arrays with default iterator
14419
+ if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
14420
+ result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
14421
+ if (result === BREAK || result === RETURN) return result;
14422
+ } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
14423
+ result = call(iterator, f, step.value, entries);
14424
+ if (result === BREAK || result === RETURN) return result;
14425
+ }
14426
+ };
14427
+ exports.BREAK = BREAK;
14428
+ exports.RETURN = RETURN;
14429
 
14430
 
14431
  /***/ }),
14432
+ /* 155 */
14433
  /***/ (function(module, exports, __webpack_require__) {
14434
 
14435
+ var redefine = __webpack_require__(73);
14436
+ module.exports = function (target, src, safe) {
14437
+ for (var key in src) redefine(target, key, src[key], safe);
14438
+ return target;
 
 
14439
  };
14440
 
14441
 
14442
  /***/ }),
14443
+ /* 156 */
14444
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
14445
 
14446
  "use strict";
14447
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return dateToFormat; });
14448
+ /* unused harmony export formatToDate */
14449
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return importIcons; });
14450
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(98);
14451
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);
14452
+ /* global Map */
 
 
 
 
 
14453
 
14454
+ function dateToFormat(date) {
14455
+ if (!date) return null;
14456
 
14457
+ var pad = function pad(num, size) {
14458
+ var s = String(num);
 
14459
 
14460
+ while (s.length < (size || 2)) {
14461
+ s = "0" + s;
14462
+ }
14463
 
14464
+ return s;
14465
+ };
14466
+
14467
+ return "".concat(date.getDate(), "-").concat(pad(date.getMonth() + 1, 2), "-").concat(date.getFullYear());
14468
+ }
14469
+ function formatToDate(format) {
14470
+ if (!format) return null;
14471
+ var dateParts = format.split("-");
14472
+ return new Date(dateParts[2], dateParts[1] - 1, dateParts[0]);
14473
  }
14474
+ var importIcons = function () {
14475
+ var cache = new Map();
14476
+ return function () {
14477
+ var icon_library = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "fontawesome";
14478
+ var icon_library_version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "5.free";
14479
+ var url = buttonizer_admin.assets + "/icon_definitions/" + icon_library + "." + icon_library_version + ".json?buttonizer-icon-cache=" + buttonizer_admin.version;
14480
+ if (cache.has(url)) return cache.get(url);
14481
+ var value = axios__WEBPACK_IMPORTED_MODULE_0___default()({
14482
+ url: url,
14483
+ dataType: "json",
14484
+ method: "get"
14485
+ });
14486
+ cache.set(url, value);
14487
+ return value;
14488
+ };
14489
+ }();
14490
 
14491
  /***/ }),
14492
+ /* 157 */
14493
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
14494
 
14495
  "use strict";
14496
+ /* WEBPACK VAR INJECTION */(function(global, module) {/* harmony import */ var _ponyfill_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(216);
14497
+ /* global window */
14498
 
 
 
 
14499
 
14500
+ var root;
14501
 
14502
+ if (typeof self !== 'undefined') {
14503
+ root = self;
14504
+ } else if (typeof window !== 'undefined') {
14505
+ root = window;
14506
+ } else if (typeof global !== 'undefined') {
14507
+ root = global;
14508
+ } else if (true) {
14509
+ root = module;
14510
+ } else {}
14511
 
14512
+ var result = Object(_ponyfill_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(root);
14513
+ /* harmony default export */ __webpack_exports__["a"] = (result);
14514
+
14515
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(39), __webpack_require__(125)(module)))
14516
 
14517
  /***/ }),
14518
+ /* 158 */
14519
+ /***/ (function(module, exports, __webpack_require__) {
14520
 
14521
  "use strict";
14522
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14523
 
14524
+ var reactIs = __webpack_require__(144);
 
 
14525
 
14526
+ /**
14527
+ * Copyright 2015, Yahoo! Inc.
14528
+ * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
14529
+ */
14530
+ var REACT_STATICS = {
14531
+ childContextTypes: true,
14532
+ contextType: true,
14533
+ contextTypes: true,
14534
+ defaultProps: true,
14535
+ displayName: true,
14536
+ getDefaultProps: true,
14537
+ getDerivedStateFromError: true,
14538
+ getDerivedStateFromProps: true,
14539
+ mixins: true,
14540
+ propTypes: true,
14541
+ type: true
14542
+ };
14543
+ var KNOWN_STATICS = {
14544
+ name: true,
14545
+ length: true,
14546
+ prototype: true,
14547
+ caller: true,
14548
+ callee: true,
14549
+ arguments: true,
14550
+ arity: true
14551
+ };
14552
+ var FORWARD_REF_STATICS = {
14553
+ '$$typeof': true,
14554
+ render: true,
14555
+ defaultProps: true,
14556
+ displayName: true,
14557
+ propTypes: true
14558
+ };
14559
+ var MEMO_STATICS = {
14560
+ '$$typeof': true,
14561
+ compare: true,
14562
+ defaultProps: true,
14563
+ displayName: true,
14564
+ propTypes: true,
14565
+ type: true
14566
+ };
14567
+ var TYPE_STATICS = {};
14568
+ TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
14569
+ TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
14570
 
14571
+ function getStatics(component) {
14572
+ // React v16.11 and below
14573
+ if (reactIs.isMemo(component)) {
14574
+ return MEMO_STATICS;
14575
+ } // React v16.12 and above
14576
 
 
 
 
14577
 
14578
+ return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;
14579
+ }
14580
 
14581
+ var defineProperty = Object.defineProperty;
14582
+ var getOwnPropertyNames = Object.getOwnPropertyNames;
14583
+ var getOwnPropertySymbols = Object.getOwnPropertySymbols;
14584
+ var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
14585
+ var getPrototypeOf = Object.getPrototypeOf;
14586
+ var objectPrototype = Object.prototype;
14587
+ function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
14588
+ if (typeof sourceComponent !== 'string') {
14589
+ // don't hoist over string (html) components
14590
+ if (objectPrototype) {
14591
+ var inheritedComponent = getPrototypeOf(sourceComponent);
14592
 
14593
+ if (inheritedComponent && inheritedComponent !== objectPrototype) {
14594
+ hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
14595
+ }
14596
+ }
14597
 
14598
+ var keys = getOwnPropertyNames(sourceComponent);
14599
 
14600
+ if (getOwnPropertySymbols) {
14601
+ keys = keys.concat(getOwnPropertySymbols(sourceComponent));
14602
+ }
14603
 
14604
+ var targetStatics = getStatics(targetComponent);
14605
+ var sourceStatics = getStatics(sourceComponent);
14606
 
14607
+ for (var i = 0; i < keys.length; ++i) {
14608
+ var key = keys[i];
14609
 
14610
+ if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
14611
+ var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
 
 
 
 
 
14612
 
14613
+ try {
14614
+ // Avoid failures from read-only properties
14615
+ defineProperty(targetComponent, key, descriptor);
14616
+ } catch (e) {}
14617
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14618
  }
14619
+ }
 
14620
 
14621
+ return targetComponent;
 
14622
  }
14623
 
14624
+ module.exports = hoistNonReactStatics;
 
14625
 
 
14626
 
14627
+ /***/ }),
14628
+ /* 159 */
14629
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
14630
 
14631
+ "use strict";
14632
+ /* unused harmony export hasValue */
14633
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return isFilled; });
14634
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isAdornedStart; });
14635
+ // Supports determination of isControlled().
14636
+ // Controlled input accepts its current value as a prop.
14637
+ //
14638
+ // @see https://facebook.github.io/react/docs/forms.html#controlled-components
14639
+ // @param value
14640
+ // @returns {boolean} true if string (including '') or number (including zero)
14641
+ function hasValue(value) {
14642
+ return value != null && !(Array.isArray(value) && value.length === 0);
14643
+ } // Determine if field is empty or filled.
14644
+ // Response determines if label is presented above field or as placeholder.
14645
+ //
14646
+ // @param obj
14647
+ // @param SSR
14648
+ // @returns {boolean} False when not present or empty string.
14649
+ // True when any number or string with length.
14650
 
14651
+ function isFilled(obj) {
14652
+ var SSR = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
14653
+ return obj && (hasValue(obj.value) && obj.value !== '' || SSR && hasValue(obj.defaultValue) && obj.defaultValue !== '');
14654
+ } // Determine if an Input is adorned on start.
14655
+ // It's corresponding to the left with LTR.
14656
+ //
14657
+ // @param obj
14658
+ // @returns {boolean} False when no adornments.
14659
+ // True when adorned at the start.
14660
 
14661
+ function isAdornedStart(obj) {
14662
+ return obj.startAdornment;
14663
+ }
14664
 
14665
+ /***/ }),
14666
+ /* 160 */
14667
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
14668
 
14669
+ "use strict";
14670
+ /* WEBPACK VAR INJECTION */(function(module) {/* harmony import */ var _root_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(40);
14671
+ /* harmony import */ var _stubFalse_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(517);
14672
 
 
 
 
 
 
14673
 
 
 
 
 
14674
 
14675
+ /** Detect free variable `exports`. */
14676
+ var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;
14677
 
14678
+ /** Detect free variable `module`. */
14679
+ var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
14680
 
14681
+ /** Detect the popular CommonJS extension `module.exports`. */
14682
+ var moduleExports = freeModule && freeModule.exports === freeExports;
 
 
 
 
14683
 
14684
+ /** Built-in value references. */
14685
+ var Buffer = moduleExports ? _root_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].Buffer : undefined;
 
14686
 
14687
+ /* Built-in method references for those with the same name as other `lodash` methods. */
14688
+ var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;
14689
 
14690
+ /**
14691
+ * Checks if `value` is a buffer.
14692
+ *
14693
+ * @static
14694
+ * @memberOf _
14695
+ * @since 4.3.0
14696
+ * @category Lang
14697
+ * @param {*} value The value to check.
14698
+ * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
14699
+ * @example
14700
+ *
14701
+ * _.isBuffer(new Buffer(2));
14702
+ * // => true
14703
+ *
14704
+ * _.isBuffer(new Uint8Array(2));
14705
+ * // => false
14706
+ */
14707
+ var isBuffer = nativeIsBuffer || _stubFalse_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"];
14708
 
14709
+ /* harmony default export */ __webpack_exports__["a"] = (isBuffer);
 
 
 
14710
 
14711
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(125)(module)))
 
14712
 
14713
+ /***/ }),
14714
+ /* 161 */
14715
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
14716
 
14717
+ "use strict";
14718
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return truncate; });
14719
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return snipLine; });
14720
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return safeJoin; });
14721
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isMatchingPattern; });
14722
+ /* harmony import */ var _is__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(31);
14723
 
14724
+ /**
14725
+ * Truncates given string to the maximum characters count
14726
+ *
14727
+ * @param str An object that contains serializable values
14728
+ * @param max Maximum number of characters in truncated string
14729
+ * @returns string Encoded
14730
+ */
14731
+ function truncate(str, max) {
14732
+ if (max === void 0) { max = 0; }
14733
+ if (typeof str !== 'string' || max === 0) {
14734
+ return str;
14735
+ }
14736
+ return str.length <= max ? str : str.substr(0, max) + "...";
14737
+ }
14738
+ /**
14739
+ * This is basically just `trim_line` from
14740
+ * https://github.com/getsentry/sentry/blob/master/src/sentry/lang/javascript/processor.py#L67
14741
+ *
14742
+ * @param str An object that contains serializable values
14743
+ * @param max Maximum number of characters in truncated string
14744
+ * @returns string Encoded
14745
+ */
14746
+ function snipLine(line, colno) {
14747
+ var newLine = line;
14748
+ var ll = newLine.length;
14749
+ if (ll <= 150) {
14750
+ return newLine;
14751
+ }
14752
+ if (colno > ll) {
14753
+ // eslint-disable-next-line no-param-reassign
14754
+ colno = ll;
14755
+ }
14756
+ var start = Math.max(colno - 60, 0);
14757
+ if (start < 5) {
14758
+ start = 0;
14759
+ }
14760
+ var end = Math.min(start + 140, ll);
14761
+ if (end > ll - 5) {
14762
+ end = ll;
14763
+ }
14764
+ if (end === ll) {
14765
+ start = Math.max(end - 140, 0);
14766
+ }
14767
+ newLine = newLine.slice(start, end);
14768
+ if (start > 0) {
14769
+ newLine = "'{snip} " + newLine;
14770
+ }
14771
+ if (end < ll) {
14772
+ newLine += ' {snip}';
14773
+ }
14774
+ return newLine;
14775
+ }
14776
+ /**
14777
+ * Join values in array
14778
+ * @param input array of values to be joined together
14779
+ * @param delimiter string to be placed in-between values
14780
+ * @returns Joined values
14781
+ */
14782
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
14783
+ function safeJoin(input, delimiter) {
14784
+ if (!Array.isArray(input)) {
14785
+ return '';
14786
+ }
14787
+ var output = [];
14788
+ // eslint-disable-next-line @typescript-eslint/prefer-for-of
14789
+ for (var i = 0; i < input.length; i++) {
14790
+ var value = input[i];
14791
+ try {
14792
+ output.push(String(value));
14793
+ }
14794
+ catch (e) {
14795
+ output.push('[value cannot be serialized]');
14796
  }
 
 
 
14797
  }
14798
+ return output.join(delimiter);
14799
+ }
14800
+ /**
14801
+ * Checks if the value matches a regex or includes the string
14802
+ * @param value The string value to be checked against
14803
+ * @param pattern Either a regex or a string that must be contained in value
14804
+ */
14805
+ function isMatchingPattern(value, pattern) {
14806
+ if (!Object(_is__WEBPACK_IMPORTED_MODULE_0__[/* isString */ "k"])(value)) {
14807
+ return false;
14808
+ }
14809
+ if (Object(_is__WEBPACK_IMPORTED_MODULE_0__[/* isRegExp */ "j"])(pattern)) {
14810
+ return pattern.test(value);
14811
+ }
14812
+ if (typeof pattern === 'string') {
14813
+ return value.indexOf(pattern) !== -1;
14814
+ }
14815
+ return false;
14816
+ }
14817
+ //# sourceMappingURL=string.js.map
14818
 
14819
+ /***/ }),
14820
+ /* 162 */
14821
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
14822
 
14823
+ var baseIsEqual = __webpack_require__(353);
 
 
 
14824
 
14825
+ /**
14826
+ * Performs a deep comparison between two values to determine if they are
14827
+ * equivalent.
14828
+ *
14829
+ * **Note:** This method supports comparing arrays, array buffers, booleans,
14830
+ * date objects, error objects, maps, numbers, `Object` objects, regexes,
14831
+ * sets, strings, symbols, and typed arrays. `Object` objects are compared
14832
+ * by their own, not inherited, enumerable properties. Functions and DOM
14833
+ * nodes are compared by strict equality, i.e. `===`.
14834
+ *
14835
+ * @static
14836
+ * @memberOf _
14837
+ * @since 0.1.0
14838
+ * @category Lang
14839
+ * @param {*} value The value to compare.
14840
+ * @param {*} other The other value to compare.
14841
+ * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
14842
+ * @example
14843
+ *
14844
+ * var object = { 'a': 1 };
14845
+ * var other = { 'a': 1 };
14846
+ *
14847
+ * _.isEqual(object, other);
14848
+ * // => true
14849
+ *
14850
+ * object === other;
14851
+ * // => false
14852
+ */
14853
+ function isEqual(value, other) {
14854
+ return baseIsEqual(value, other);
14855
+ }
14856
 
14857
+ module.exports = isEqual;
 
 
 
 
14858
 
 
 
 
 
 
 
 
14859
 
14860
+ /***/ }),
14861
+ /* 163 */
14862
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
14863
 
14864
+ "use strict";
14865
+ /* unused harmony export styles */
14866
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
14867
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7);
14868
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
14869
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
14870
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3);
14871
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_3__);
14872
+ /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(4);
14873
+ /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(9);
14874
+ /* harmony import */ var _utils_capitalize__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(12);
14875
 
 
 
 
 
 
 
14876
 
 
14877
 
 
14878
 
 
 
14879
 
 
 
14880
 
 
 
 
14881
 
14882
+ var styles = function styles(theme) {
14883
+ return {
14884
+ /* Styles applied to the root element. */
14885
+ root: {
14886
+ margin: 0
14887
+ },
14888
 
14889
+ /* Styles applied to the root element if `variant="body2"`. */
14890
+ body2: theme.typography.body2,
14891
 
14892
+ /* Styles applied to the root element if `variant="body1"`. */
14893
+ body1: theme.typography.body1,
 
14894
 
14895
+ /* Styles applied to the root element if `variant="caption"`. */
14896
+ caption: theme.typography.caption,
14897
 
14898
+ /* Styles applied to the root element if `variant="button"`. */
14899
+ button: theme.typography.button,
14900
 
14901
+ /* Styles applied to the root element if `variant="h1"`. */
14902
+ h1: theme.typography.h1,
14903
 
14904
+ /* Styles applied to the root element if `variant="h2"`. */
14905
+ h2: theme.typography.h2,
14906
 
14907
+ /* Styles applied to the root element if `variant="h3"`. */
14908
+ h3: theme.typography.h3,
14909
 
14910
+ /* Styles applied to the root element if `variant="h4"`. */
14911
+ h4: theme.typography.h4,
14912
 
14913
+ /* Styles applied to the root element if `variant="h5"`. */
14914
+ h5: theme.typography.h5,
14915
 
14916
+ /* Styles applied to the root element if `variant="h6"`. */
14917
+ h6: theme.typography.h6,
14918
 
14919
+ /* Styles applied to the root element if `variant="subtitle1"`. */
14920
+ subtitle1: theme.typography.subtitle1,
14921
 
14922
+ /* Styles applied to the root element if `variant="subtitle2"`. */
14923
+ subtitle2: theme.typography.subtitle2,
14924
 
14925
+ /* Styles applied to the root element if `variant="overline"`. */
14926
+ overline: theme.typography.overline,
14927
 
14928
+ /* Styles applied to the root element if `variant="srOnly"`. Only accessible to screen readers. */
14929
+ srOnly: {
14930
+ position: 'absolute',
14931
+ height: 1,
14932
+ width: 1,
14933
+ overflow: 'hidden'
14934
+ },
14935
 
14936
+ /* Styles applied to the root element if `align="left"`. */
14937
+ alignLeft: {
14938
+ textAlign: 'left'
14939
+ },
14940
 
14941
+ /* Styles applied to the root element if `align="center"`. */
14942
+ alignCenter: {
14943
+ textAlign: 'center'
14944
+ },
14945
 
14946
+ /* Styles applied to the root element if `align="right"`. */
14947
+ alignRight: {
14948
+ textAlign: 'right'
14949
+ },
 
14950
 
14951
+ /* Styles applied to the root element if `align="justify"`. */
14952
+ alignJustify: {
14953
+ textAlign: 'justify'
14954
+ },
14955
 
14956
+ /* Styles applied to the root element if `nowrap={true}`. */
14957
+ noWrap: {
14958
+ overflow: 'hidden',
14959
+ textOverflow: 'ellipsis',
14960
+ whiteSpace: 'nowrap'
14961
+ },
14962
 
14963
+ /* Styles applied to the root element if `gutterBottom={true}`. */
14964
+ gutterBottom: {
14965
+ marginBottom: '0.35em'
14966
+ },
14967
 
14968
+ /* Styles applied to the root element if `paragraph={true}`. */
14969
+ paragraph: {
14970
+ marginBottom: 16
14971
+ },
 
 
 
 
14972
 
14973
+ /* Styles applied to the root element if `color="inherit"`. */
14974
+ colorInherit: {
14975
+ color: 'inherit'
14976
+ },
14977
 
14978
+ /* Styles applied to the root element if `color="primary"`. */
14979
+ colorPrimary: {
14980
+ color: theme.palette.primary.main
14981
+ },
 
 
 
 
14982
 
14983
+ /* Styles applied to the root element if `color="secondary"`. */
14984
+ colorSecondary: {
14985
+ color: theme.palette.secondary.main
14986
+ },
14987
 
14988
+ /* Styles applied to the root element if `color="textPrimary"`. */
14989
+ colorTextPrimary: {
14990
+ color: theme.palette.text.primary
14991
+ },
 
 
 
 
 
 
 
14992
 
14993
+ /* Styles applied to the root element if `color="textSecondary"`. */
14994
+ colorTextSecondary: {
14995
+ color: theme.palette.text.secondary
14996
+ },
14997
 
14998
+ /* Styles applied to the root element if `color="error"`. */
14999
+ colorError: {
15000
+ color: theme.palette.error.main
15001
+ },
15002
 
15003
+ /* Styles applied to the root element if `display="inline"`. */
15004
+ displayInline: {
15005
+ display: 'inline'
15006
+ },
15007
 
15008
+ /* Styles applied to the root element if `display="block"`. */
15009
+ displayBlock: {
15010
+ display: 'block'
 
15011
  }
15012
  };
15013
+ };
15014
+ var defaultVariantMapping = {
15015
+ h1: 'h1',
15016
+ h2: 'h2',
15017
+ h3: 'h3',
15018
+ h4: 'h4',
15019
+ h5: 'h5',
15020
+ h6: 'h6',
15021
+ subtitle1: 'h6',
15022
+ subtitle2: 'h6',
15023
+ body1: 'p',
15024
+ body2: 'p'
15025
+ };
15026
+ var Typography = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["forwardRef"](function Typography(props, ref) {
15027
+ var _props$align = props.align,
15028
+ align = _props$align === void 0 ? 'inherit' : _props$align,
15029
+ classes = props.classes,
15030
+ className = props.className,
15031
+ _props$color = props.color,
15032
+ color = _props$color === void 0 ? 'initial' : _props$color,
15033
+ component = props.component,
15034
+ _props$display = props.display,
15035
+ display = _props$display === void 0 ? 'initial' : _props$display,
15036
+ _props$gutterBottom = props.gutterBottom,
15037
+ gutterBottom = _props$gutterBottom === void 0 ? false : _props$gutterBottom,
15038
+ _props$noWrap = props.noWrap,
15039
+ noWrap = _props$noWrap === void 0 ? false : _props$noWrap,
15040
+ _props$paragraph = props.paragraph,
15041
+ paragraph = _props$paragraph === void 0 ? false : _props$paragraph,
15042
+ _props$variant = props.variant,
15043
+ variant = _props$variant === void 0 ? 'body1' : _props$variant,
15044
+ _props$variantMapping = props.variantMapping,
15045
+ variantMapping = _props$variantMapping === void 0 ? defaultVariantMapping : _props$variantMapping,
15046
+ other = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(props, ["align", "classes", "className", "color", "component", "display", "gutterBottom", "noWrap", "paragraph", "variant", "variantMapping"]);
15047
 
15048
+ var Component = component || (paragraph ? 'p' : variantMapping[variant] || defaultVariantMapping[variant]) || 'span';
15049
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"](Component, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
15050
+ className: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.root, className, variant !== 'inherit' && classes[variant], color !== 'initial' && classes["color".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(color))], noWrap && classes.noWrap, gutterBottom && classes.gutterBottom, paragraph && classes.paragraph, align !== 'inherit' && classes["align".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(align))], display !== 'initial' && classes["display".concat(Object(_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(display))]),
15051
+ ref: ref
15052
+ }, other));
15053
+ });
15054
+ false ? undefined : void 0;
15055
+ /* harmony default export */ __webpack_exports__["a"] = (Object(_styles_withStyles__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(styles, {
15056
+ name: 'MuiTypography'
15057
+ })(Typography));
 
 
 
 
 
15058
 
15059
+ /***/ }),
15060
+ /* 164 */
15061
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
15062
 
15063
+ "use strict";
15064
+ /* unused harmony export styles */
15065
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
15066
+ /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7);
15067
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
15068
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
15069
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3);
15070
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_3__);
15071
+ /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(4);
15072
+ /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(9);
15073
 
 
 
 
15074
 
 
 
 
 
15075
 
 
 
15076
 
 
 
 
15077
 
 
 
 
 
15078
 
15079
+ var styles = function styles(theme) {
15080
+ return {
15081
+ /* Styles applied to the root element. */
15082
+ root: {
15083
+ flex: '1 1 auto',
15084
+ WebkitOverflowScrolling: 'touch',
15085
+ // Add iOS momentum scrolling.
15086
+ overflowY: 'auto',
15087
+ padding: '8px 24px',
15088
+ '&:first-child': {
15089
+ // dialog without title
15090
+ paddingTop: 20
15091
+ }
15092
+ },
15093
 
15094
+ /* Styles applied to the root element if `dividers={true}`. */
15095
+ dividers: {
15096
+ padding: '16px 24px',
15097
+ borderTop: "1px solid ".concat(theme.palette.divider),
15098
+ borderBottom: "1px solid ".concat(theme.palette.divider)
15099
+ }
15100
  };
15101
+ };
15102
+ var DialogContent = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["forwardRef"](function DialogContent(props, ref) {
15103
+ var classes = props.classes,
15104
+ className = props.className,
15105
+ _props$dividers = props.dividers,
15106
+ dividers = _props$dividers === void 0 ? false : _props$dividers,
15107
+ other = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(props, ["classes", "className", "dividers"]);
15108
 
15109
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("div", Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
15110
+ className: Object(clsx__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(classes.root, className, dividers && classes.dividers),
15111
+ ref: ref
15112
+ }, other));
15113
+ });
15114
+ false ? undefined : void 0;
15115
+ /* harmony default export */ __webpack_exports__["a"] = (Object(_styles_withStyles__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(styles, {
15116
+ name: 'MuiDialogContent'
15117
+ })(DialogContent));
15118
 
15119
+ /***/ }),
15120
+ /* 165 */
15121
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
15122
 
15123
+ "use strict";
15124
+ /* unused harmony export styles */
15125
+ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
15126
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
15127
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
15128
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3);
15129
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);
15130
+ /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);
15131
+ /* harmony import */ var _Typography__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(163);
15132
 
 
 
 
15133
 
 
15134
 
 
 
 
15135
 
 
 
 
15136
 
15137
+ var styles = {
15138
+ /* Styles applied to the root element. */
15139
+ root: {
15140
+ marginBottom: 12
15141
+ }
15142
+ };
15143
+ var DialogContentText = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__["forwardRef"](function DialogContentText(props, ref) {
15144
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_Typography__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
15145
+ component: "p",
15146
+ variant: "body1",
15147
+ color: "textSecondary",
15148
+ ref: ref
15149
+ }, props));
15150
+ });
15151
+ false ? undefined : void 0;
15152
+ /* harmony default export */ __webpack_exports__["a"] = (Object(_styles_withStyles__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(styles, {
15153
+ name: 'MuiDialogContentText'
15154
+ })(DialogContentText));
15155
 
15156
+ /***/ }),
15157
+ /* 166 */,
15158
+ /* 167 */
15159
+ /***/ (function(module, exports, __webpack_require__) {
15160
 
15161
+ var ListCache = __webpack_require__(112),
15162
+ stackClear = __webpack_require__(312),
15163
+ stackDelete = __webpack_require__(313),
15164
+ stackGet = __webpack_require__(314),
15165
+ stackHas = __webpack_require__(315),
15166
+ stackSet = __webpack_require__(316);
15167
 
15168
  /**
15169
+ * Creates a stack cache object to store key-value pairs.
15170
+ *
15171
+ * @private
15172
+ * @constructor
15173
+ * @param {Array} [entries] The key-value pairs to cache.
15174
  */
15175
+ function Stack(entries) {
15176
+ var data = this.__data__ = new ListCache(entries);
15177
+ this.size = data.size;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15178
  }
15179
 
15180
+ // Add methods to `Stack`.
15181
+ Stack.prototype.clear = stackClear;
15182
+ Stack.prototype['delete'] = stackDelete;
15183
+ Stack.prototype.get = stackGet;
15184
+ Stack.prototype.has = stackHas;
15185
+ Stack.prototype.set = stackSet;
15186
 
15187
+ module.exports = Stack;
 
 
15188
 
 
 
 
15189
 
15190
+ /***/ }),
15191
+ /* 168 */
15192
+ /***/ (function(module, exports, __webpack_require__) {
 
15193
 
15194
+ var getNative = __webpack_require__(91),
15195
+ root = __webpack_require__(49);
 
 
 
15196
 
15197
+ /* Built-in method references that are verified to be native. */
15198
+ var Map = getNative(root, 'Map');
15199
 
15200
+ module.exports = Map;
 
 
 
15201
 
 
 
 
15202
 
15203
+ /***/ }),
15204
+ /* 169 */
15205
+ /***/ (function(module, exports, __webpack_require__) {
15206
+
15207
+ var overArg = __webpack_require__(242);
15208
+
15209
+ /** Built-in value references. */
15210
+ var getPrototype = overArg(Object.getPrototypeOf, Object);
15211
+
15212
+ module.exports = getPrototype;
15213
+
15214
+
15215
+ /***/ }),
15216
+ /* 170 */
15217
+ /***/ (function(module, exports) {
15218
+
15219
+ /** Used for built-in method references. */
15220
+ var objectProto = Object.prototype;
15221
 
15222
  /**
15223
+ * Checks if `value` is likely a prototype object.
15224
+ *
15225
+ * @private
15226
+ * @param {*} value The value to check.
15227
+ * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
15228
  */
15229
+ function isPrototype(value) {
15230
+ var Ctor = value && value.constructor,
15231
+ proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;
15232
 
15233
+ return value === proto;
15234
+ }
 
 
 
 
 
 
 
 
 
 
 
 
15235
 
15236
+ module.exports = isPrototype;
 
 
 
15237
 
 
 
 
 
 
 
15238
 
15239
+ /***/ }),
15240
+ /* 171 */
15241
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
 
15242
 
15243
+ var baseIsArguments = __webpack_require__(338),
15244
+ isObjectLike = __webpack_require__(54);
15245
 
15246
+ /** Used for built-in method references. */
15247
+ var objectProto = Object.prototype;
 
15248
 
15249
+ /** Used to check objects for own properties. */
15250
+ var hasOwnProperty = objectProto.hasOwnProperty;
 
 
 
 
 
 
 
 
15251
 
15252
+ /** Built-in value references. */
15253
+ var propertyIsEnumerable = objectProto.propertyIsEnumerable;
 
 
15254
 
 
 
15255
  /**
15256
+ * Checks if `value` is likely an `arguments` object.
15257
+ *
15258
+ * @static
15259
+ * @memberOf _
15260
+ * @since 0.1.0
15261
+ * @category Lang
15262
+ * @param {*} value The value to check.
15263
+ * @returns {boolean} Returns `true` if `value` is an `arguments` object,
15264
+ * else `false`.
15265
+ * @example
15266
+ *
15267
+ * _.isArguments(function() { return arguments; }());
15268
+ * // => true
15269
+ *
15270
+ * _.isArguments([1, 2, 3]);
15271
+ * // => false
15272
  */
15273
+ var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
15274
+ return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
15275
+ !propertyIsEnumerable.call(value, 'callee');
15276
+ };
15277
 
15278
+ module.exports = isArguments;
15279
 
 
 
 
 
 
 
 
 
 
 
15280
 
15281
+ /***/ }),
15282
+ /* 172 */
15283
+ /***/ (function(module, exports) {
 
 
 
 
 
 
 
 
 
15284
 
15285
+ /** Used as references for various `Number` constants. */
15286
+ var MAX_SAFE_INTEGER = 9007199254740991;
 
 
 
 
 
15287
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15288
  /**
15289
+ * Checks if `value` is a valid array-like length.
15290
+ *
15291
+ * **Note:** This method is loosely based on
15292
+ * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
15293
+ *
15294
+ * @static
15295
+ * @memberOf _
15296
+ * @since 4.0.0
15297
+ * @category Lang
15298
+ * @param {*} value The value to check.
15299
+ * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
15300
+ * @example
15301
+ *
15302
+ * _.isLength(3);
15303
+ * // => true
15304
+ *
15305
+ * _.isLength(Number.MIN_VALUE);
15306
+ * // => false
15307
+ *
15308
+ * _.isLength(Infinity);
15309
+ * // => false
15310
+ *
15311
+ * _.isLength('3');
15312
+ * // => false
15313
  */
15314
+ function isLength(value) {
15315
+ return typeof value == 'number' &&
15316
+ value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
15317
+ }
15318
 
15319
+ module.exports = isLength;
15320
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15321
 
15322
+ /***/ }),
15323
+ /* 173 */
15324
+ /***/ (function(module, exports, __webpack_require__) {
15325
 
15326
+ var baseIsTypedArray = __webpack_require__(341),
15327
+ baseUnary = __webpack_require__(204),
15328
+ nodeUtil = __webpack_require__(205);
 
 
15329
 
15330
+ /* Node.js helper references. */
15331
+ var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
15332
 
15333
+ /**
15334
+ * Checks if `value` is classified as a typed array.
15335
+ *
15336
+ * @static
15337
+ * @memberOf _
15338
+ * @since 3.0.0
15339
+ * @category Lang
15340
+ * @param {*} value The value to check.
15341
+ * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
15342
+ * @example
15343
+ *
15344
+ * _.isTypedArray(new Uint8Array);
15345
+ * // => true
15346
+ *
15347
+ * _.isTypedArray([]);
15348
+ * // => false
15349
+ */
15350
+ var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
15351
 
15352
+ module.exports = isTypedArray;
 
 
15353
 
 
 
 
 
 
 
15354
 
15355
+ /***/ }),
15356
+ /* 174 */
15357
+ /***/ (function(module, exports) {
 
 
 
 
 
15358
 
15359
+ /** Used as references for various `Number` constants. */
15360
+ var MAX_SAFE_INTEGER = 9007199254740991;
 
15361
 
15362
+ /** Used to detect unsigned integer values. */
15363
+ var reIsUint = /^(?:0|[1-9]\d*)$/;
 
 
 
15364
 
 
15365
  /**
15366
+ * Checks if `value` is a valid array-like index.
15367
+ *
15368
+ * @private
15369
+ * @param {*} value The value to check.
15370
+ * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
15371
+ * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
15372
  */
15373
+ function isIndex(value, length) {
15374
+ var type = typeof value;
15375
+ length = length == null ? MAX_SAFE_INTEGER : length;
15376
 
15377
+ return !!length &&
15378
+ (type == 'number' ||
15379
+ (type != 'symbol' && reIsUint.test(value))) &&
15380
+ (value > -1 && value % 1 == 0 && value < length);
15381
+ }
15382
 
15383
+ module.exports = isIndex;
 
 
 
15384
 
 
 
15385
 
15386
+ /***/ }),
15387
+ /* 175 */
15388
+ /***/ (function(module, exports) {
15389
 
15390
+ // `RequireObjectCoercible` abstract operation
15391
+ // https://tc39.github.io/ecma262/#sec-requireobjectcoercible
15392
+ module.exports = function (it) {
15393
+ if (it == undefined) throw TypeError("Can't call method on " + it);
15394
+ return it;
15395
+ };
15396
 
 
 
 
15397
 
15398
+ /***/ }),
15399
+ /* 176 */
15400
+ /***/ (function(module, exports, __webpack_require__) {
15401
 
15402
+ var global = __webpack_require__(56);
15403
+ var createNonEnumerableProperty = __webpack_require__(128);
15404
+ var has = __webpack_require__(80);
15405
+ var setGlobal = __webpack_require__(356);
15406
+ var inspectSource = __webpack_require__(431);
15407
+ var InternalStateModule = __webpack_require__(209);
15408
 
15409
+ var getInternalState = InternalStateModule.get;
15410
+ var enforceInternalState = InternalStateModule.enforce;
15411
+ var TEMPLATE = String(String).split('String');
15412
 
15413
+ (module.exports = function (O, key, value, options) {
15414
+ var unsafe = options ? !!options.unsafe : false;
15415
+ var simple = options ? !!options.enumerable : false;
15416
+ var noTargetGet = options ? !!options.noTargetGet : false;
15417
+ var state;
15418
+ if (typeof value == 'function') {
15419
+ if (typeof key == 'string' && !has(value, 'name')) {
15420
+ createNonEnumerableProperty(value, 'name', key);
15421
+ }
15422
+ state = enforceInternalState(value);
15423
+ if (!state.source) {
15424
+ state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
15425
+ }
15426
  }
15427
+ if (O === global) {
15428
+ if (simple) O[key] = value;
15429
+ else setGlobal(key, value);
15430
+ return;
15431
+ } else if (!unsafe) {
15432
+ delete O[key];
15433
+ } else if (!noTargetGet && O[key]) {
15434
+ simple = true;
15435
+ }
15436
+ if (simple) O[key] = value;
15437
+ else createNonEnumerableProperty(O, key, value);
15438
+ // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
15439
+ })(Function.prototype, 'toString', function toString() {
15440
+ return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
15441
+ });
15442
 
 
 
 
 
 
 
 
 
 
 
 
 
15443
 
15444
+ /***/ }),
15445
+ /* 177 */
15446
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
 
 
15447
 
15448
+ var toInteger = __webpack_require__(252);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15449
 
15450
+ var min = Math.min;
 
15451
 
15452
+ // `ToLength` abstract operation
15453
+ // https://tc39.github.io/ecma262/#sec-tolength
15454
+ module.exports = function (argument) {
15455
+ return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
15456
+ };
15457
 
 
 
 
15458
 
15459
+ /***/ }),
15460
+ /* 178 */
15461
+ /***/ (function(module, exports, __webpack_require__) {
 
15462
 
15463
+ var def = __webpack_require__(43).f;
15464
+ var has = __webpack_require__(81);
15465
+ var TAG = __webpack_require__(35)('toStringTag');
15466
 
15467
+ module.exports = function (it, tag, stat) {
15468
+ if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
15469
+ };
15470
 
 
 
15471
 
15472
+ /***/ }),
15473
+ /* 179 */
15474
+ /***/ (function(module, exports, __webpack_require__) {
 
 
 
 
15475
 
15476
+ var $export = __webpack_require__(8);
15477
+ var defined = __webpack_require__(105);
15478
+ var fails = __webpack_require__(27);
15479
+ var spaces = __webpack_require__(380);
15480
+ var space = '[' + spaces + ']';
15481
+ var non = '\u200b\u0085';
15482
+ var ltrim = RegExp('^' + space + space + '*');
15483
+ var rtrim = RegExp(space + space + '*$');
 
 
 
 
 
 
 
15484
 
15485
+ var exporter = function (KEY, exec, ALIAS) {
15486
+ var exp = {};
15487
+ var FORCE = fails(function () {
15488
+ return !!spaces[KEY]() || non[KEY]() != non;
15489
+ });
15490
+ var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
15491
+ if (ALIAS) exp[ALIAS] = fn;
15492
+ $export($export.P + $export.F * FORCE, 'String', exp);
15493
+ };
15494
 
15495
+ // 1 -> String#trimLeft
15496
+ // 2 -> String#trimRight
15497
+ // 3 -> String#trim
15498
+ var trim = exporter.trim = function (string, TYPE) {
15499
+ string = String(defined(string));
15500
+ if (TYPE & 1) string = string.replace(ltrim, '');
15501
+ if (TYPE & 2) string = string.replace(rtrim, '');
15502
+ return string;
15503
+ };
15504
 
15505
+ module.exports = exporter;
 
 
15506
 
 
 
15507
 
15508
+ /***/ }),
15509
+ /* 180 */
15510
+ /***/ (function(module, exports) {
15511
 
15512
+ module.exports = {};
 
 
 
 
 
 
15513
 
 
 
15514
 
15515
+ /***/ }),
15516
+ /* 181 */
15517
+ /***/ (function(module, exports, __webpack_require__) {
15518
 
15519
+ var isObject = __webpack_require__(30);
15520
+ module.exports = function (it, TYPE) {
15521
+ if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
15522
+ return it;
15523
+ };
15524
 
 
 
 
15525
 
15526
+ /***/ }),
15527
+ /* 182 */
15528
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
15529
 
15530
+ "use strict";
15531
+ /* harmony import */ var _createMuiTheme__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(413);
 
 
15532
 
15533
+ var defaultTheme = Object(_createMuiTheme__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])();
15534
+ /* harmony default export */ __webpack_exports__["a"] = (defaultTheme);
 
 
 
15535
 
15536
+ /***/ }),
15537
+ /* 183 */
15538
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
15539
 
15540
+ "use strict";
15541
 
15542
+ // EXPORTS
15543
+ __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ save; });
15544
 
15545
+ // EXTERNAL MODULE: ./src/js/dashboard/store/actions/savingHelpers.js
15546
+ var savingHelpers = __webpack_require__(122);
15547
 
15548
+ // EXTERNAL MODULE: ./src/js/dashboard/store/index.js + 8 modules
15549
+ var store = __webpack_require__(34);
15550
 
15551
+ // EXTERNAL MODULE: ./src/js/dashboard/store/actions/rootActions.js
15552
+ var rootActions = __webpack_require__(101);
 
 
15553
 
15554
+ // EXTERNAL MODULE: ./node_modules/@sentry/minimal/esm/index.js
15555
+ var esm = __webpack_require__(51);
15556
 
15557
+ // CONCATENATED MODULE: ./utils/reloadPreview.js
 
 
 
 
15558
 
15559
  /**
15560
+ * Reload preview
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15561
  */
15562
+
15563
+ function reloadPreview() {
15564
+ // Post reload buttonizer
15565
+ try {
15566
+ document.querySelector(".buttonizer-preview iframe").contentWindow.postMessage({
15567
+ eventType: "buttonizer",
15568
+ messageType: "preview-reload"
15569
+ }, document.location.origin);
15570
+ } catch (e) {
15571
+ console.log("Buttonizer tried to auto update the Buttonizer Buttons. But the message didn't came through. Well. Doesn't matter, it's just an extra function. It's nice to have.");
15572
+ console.error(e);
15573
+ esm["a" /* captureException */](e);
15574
+ document.querySelector(".buttonizer-preview iframe").contentWindow.location.reload();
15575
  }
 
 
 
 
15576
  }
15577
+ // CONCATENATED MODULE: ./utils/reloadPreviewIframe.js
 
 
 
 
 
 
 
 
 
15578
  /**
15579
+ * Force reload page
 
 
 
 
 
 
15580
  */
15581
+ function reloadPreviewIframe() {
15582
+ // Reload the iframe
15583
+ var iframe = document.querySelector(".buttonizer-preview iframe");
15584
+
15585
+ if (iframe != null) {
15586
+ if (iframe.contentWindow && iframe.contentWindow.location) {
15587
+ iframe.contentWindow.location.reload();
15588
+ } else {
15589
+ iframe.src = iframe.src;
15590
+ }
15591
+
15592
+ return true;
15593
  }
 
15594
 
15595
+ return null;
15596
+ }
15597
+ // EXTERNAL MODULE: ./node_modules/lodash/merge.js
15598
+ var merge = __webpack_require__(32);
15599
+ var merge_default = /*#__PURE__*/__webpack_require__.n(merge);
15600
 
15601
+ // EXTERNAL MODULE: ./node_modules/lodash/isEqual.js
15602
+ var isEqual = __webpack_require__(162);
15603
+ var isEqual_default = /*#__PURE__*/__webpack_require__.n(isEqual);
15604
 
15605
+ // CONCATENATED MODULE: ./src/js/dashboard/store/actions/Queue.js
15606
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
15607
 
15608
+ 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); } }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15609
 
15610
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
15611
 
15612
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
 
 
15613
 
15614
+ /* global Promise */
 
15615
 
 
 
15616
 
 
 
15617
 
15618
+ var Queue_SavingQueue = /*#__PURE__*/function () {
15619
+ function SavingQueue() {
15620
+ _classCallCheck(this, SavingQueue);
15621
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15622
 
15623
+ _createClass(SavingQueue, null, [{
15624
+ key: "enqueue",
15625
+ value: function enqueue(promise) {
15626
+ var _this = this;
15627
 
15628
+ return new Promise(function (resolve, reject) {
15629
+ _this.queue.push({
15630
+ promise: promise,
15631
+ resolve: resolve,
15632
+ reject: reject
15633
+ });
15634
 
15635
+ _this.dequeue();
15636
+ });
 
 
 
 
 
15637
  }
15638
+ }, {
15639
+ key: "dequeue",
15640
+ value: function dequeue() {
15641
+ var _this2 = this;
 
 
15642
 
15643
+ if (this.workingOnPromise) {
15644
+ return false;
15645
+ }
15646
 
15647
+ var item = this.queue.shift();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15648
 
15649
+ if (!item) {
15650
+ return false;
15651
+ }
15652
 
15653
+ try {
15654
+ this.workingOnPromise = true;
15655
+ store["a" /* default */].dispatch(Object(rootActions["b" /* changeIsUpdating */])(true));
15656
+ item.promise().then(function (value) {
15657
+ _this2.workingOnPromise = false;
15658
+ item.resolve(value);
15659
 
15660
+ _this2.dequeue();
15661
+ })["catch"](function (err) {
15662
+ _this2.workingOnPromise = false;
15663
+ item.reject(err);
15664
 
15665
+ _this2.dequeue();
15666
+ });
15667
+ } catch (err) {
15668
+ this.workingOnPromise = false;
15669
+ item.reject(err);
15670
+ this.dequeue();
15671
+ }
15672
 
15673
+ return true;
15674
+ }
15675
+ }]);
15676
 
15677
+ return SavingQueue;
15678
+ }();
 
 
 
 
 
 
 
 
 
 
 
15679
 
15680
+ _defineProperty(Queue_SavingQueue, "queue", []);
15681
 
15682
+ _defineProperty(Queue_SavingQueue, "workingOnPromise", false);
 
 
15683
 
 
 
 
 
 
 
 
 
15684
 
15685
+ // CONCATENATED MODULE: ./src/js/dashboard/store/actions/savingMiddleware.js
15686
 
 
 
 
15687
 
 
 
 
 
 
15688
 
15689
 
 
 
 
15690
 
 
 
 
15691
 
 
 
 
15692
 
15693
 
 
 
 
15694
 
15695
+ var timer = setTimeout(function () {});
15696
+ var currentState = {};
15697
+ /**
15698
+ * Save groups & buttons
15699
+ */
 
 
15700
 
15701
+ function save() {
15702
+ clearTimeout(timer);
15703
+ timer = setTimeout(function () {
15704
+ var oldStore = merge_default()({}, currentState);
15705
+ currentState = store["a" /* default */].getState();
15706
 
15707
+ if (isEqual_default()(oldStore, {}) || isEqual_default()(currentState, {}) || isEqual_default()(oldStore, currentState) || !oldStore.misc.loading.loaded || !currentState.misc.loading.loaded) {
15708
+ return;
15709
+ }
15710
 
15711
+ if (!isEqual_default()(oldStore.buttons, currentState.buttons) || !isEqual_default()(oldStore.groups, currentState.groups)) {
15712
+ Queue_SavingQueue.enqueue(savingMiddleware_saveData(Object(savingHelpers["b" /* generateJSONObject */])(store["a" /* default */].getState().groups), "/buttons"));
15713
+ }
 
 
 
 
15714
 
15715
+ if (!isEqual_default()(oldStore.settings, currentState.settings)) {
15716
+ Queue_SavingQueue.enqueue(savingMiddleware_saveData(store["a" /* default */].getState().settings, "/settings"));
15717
+ if (oldStore.settings.icon_library !== currentState.settings.icon_library || oldStore.settings.icon_library_version !== currentState.settings.icon_library_version || oldStore.settings.icon_library_code !== currentState.settings.icon_library_code || oldStore.settings.import_icon_library !== currentState.settings.import_icon_library) Queue_SavingQueue.enqueue(function () {
15718
+ return new Promise(function (resolve) {
15719
+ reloadPreviewIframe();
15720
+ resolve();
15721
+ });
15722
+ });
15723
+ }
15724
+ }, 1500);
15725
+ }
 
 
 
 
 
 
 
 
 
 
15726
 
15727
+ var savingMiddleware_saveData = function saveData(data, endpoint) {
15728
+ var fail = function fail(e) {
15729
+ if (e && e.request) {
15730
+ store["a" /* default */].dispatch(Object(rootActions["b" /* changeIsUpdating */])({
15731
+ status: e.request.status,
15732
+ statusText: e.request.statusText ? e.request.statusText : "Unknown",
15733
+ message: e.request.response ? JSON.parse(e.request.response).message ? JSON.parse(e.request.response).message : e.request.response : e.message
15734
+ }));
15735
+ } else {
15736
+ store["a" /* default */].dispatch(Object(rootActions["b" /* changeIsUpdating */])("failed"));
15737
+ }
15738
 
15739
+ console.error("Something went wrong trying to update this model: \n", e);
15740
+ esm["a" /* captureException */](e);
15741
+ };
15742
 
15743
+ return function () {
15744
+ return Object(savingHelpers["a" /* apiRequest */])(endpoint, {
15745
+ method: "POST",
15746
+ data: {
15747
+ nonce: buttonizer_admin.nonce,
15748
+ data: data
15749
+ }
15750
+ }).then(function (_ref) {
15751
+ var data = _ref.data;
15752
+ app.setHasChanges(true);
15753
 
15754
+ if (data === null || data.status !== "success") {
15755
+ fail();
15756
+ return;
15757
+ }
15758
 
15759
+ store["a" /* default */].dispatch(Object(rootActions["b" /* changeIsUpdating */])(false));
15760
+ reloadPreview();
15761
+ })["catch"](fail);
15762
+ };
15763
  };
15764
 
 
15765
  /***/ }),
15766
+ /* 184 */
15767
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
15768
 
15769
  "use strict";
15770
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return logger; });
15771
+ /* harmony import */ var _misc__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(61);
15772
+ /* eslint-disable @typescript-eslint/no-explicit-any */
15773
 
15774
+ // TODO: Implement different loggers for different environments
15775
+ var global = Object(_misc__WEBPACK_IMPORTED_MODULE_0__[/* getGlobalObject */ "e"])();
15776
+ /** Prefix for logging strings */
15777
+ var PREFIX = 'Sentry Logger ';
15778
+ /** JSDoc */
15779
+ var Logger = /** @class */ (function () {
15780
+ /** JSDoc */
15781
+ function Logger() {
15782
+ this._enabled = false;
15783
+ }
15784
+ /** JSDoc */
15785
+ Logger.prototype.disable = function () {
15786
+ this._enabled = false;
15787
+ };
15788
+ /** JSDoc */
15789
+ Logger.prototype.enable = function () {
15790
+ this._enabled = true;
15791
+ };
15792
+ /** JSDoc */
15793
+ Logger.prototype.log = function () {
15794
+ var args = [];
15795
+ for (var _i = 0; _i < arguments.length; _i++) {
15796
+ args[_i] = arguments[_i];
15797
+ }
15798
+ if (!this._enabled) {
15799
+ return;
15800
+ }
15801
+ Object(_misc__WEBPACK_IMPORTED_MODULE_0__[/* consoleSandbox */ "c"])(function () {
15802
+ global.console.log(PREFIX + "[Log]: " + args.join(' '));
15803
+ });
15804
+ };
15805
+ /** JSDoc */
15806
+ Logger.prototype.warn = function () {
15807
+ var args = [];
15808
+ for (var _i = 0; _i < arguments.length; _i++) {
15809
+ args[_i] = arguments[_i];
15810
+ }
15811
+ if (!this._enabled) {
15812
+ return;
15813
+ }
15814
+ Object(_misc__WEBPACK_IMPORTED_MODULE_0__[/* consoleSandbox */ "c"])(function () {
15815
+ global.console.warn(PREFIX + "[Warn]: " + args.join(' '));
15816
+ });
15817
+ };
15818
+ /** JSDoc */
15819
+ Logger.prototype.error = function () {
15820
+ var args = [];
15821
+ for (var _i = 0; _i < arguments.length; _i++) {
15822
+ args[_i] = arguments[_i];
15823
+ }
15824
+ if (!this._enabled) {
15825
+ return;
15826
+ }
15827
+ Object(_misc__WEBPACK_IMPORTED_MODULE_0__[/* consoleSandbox */ "c"])(function () {
15828
+ global.console.error(PREFIX + "[Error]: " + args.join(' '));
15829
+ });
15830
+ };
15831
+ return Logger;
15832
+ }());
15833
+ // Ensure we only have a single logger instance, even if multiple versions of @sentry/utils are being used
15834
+ global.__SENTRY__ = global.__SENTRY__ || {};
15835
+ var logger = global.__SENTRY__.logger || (global.__SENTRY__.logger = new Logger());
15836
 
15837
+ //# sourceMappingURL=logger.js.map
15838
 
15839
  /***/ }),
15840
+ /* 185 */
15841
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
15842
 
15843
+ "use strict";
15844
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
15845
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15846
 
15847
+ /* harmony default export */ __webpack_exports__["a"] = (react__WEBPACK_IMPORTED_MODULE_0___default.a.createContext(null));
15848
 
15849
  /***/ }),
15850
+ /* 186 */
15851
  /***/ (function(module, exports, __webpack_require__) {
15852
 
15853
+ var __WEBPACK_AMD_DEFINE_RESULT__;// TinyColor v1.4.2
15854
+ // https://github.com/bgrins/TinyColor
15855
+ // Brian Grinstead, MIT License
 
 
 
15856
 
15857
+ (function(Math) {
 
 
15858
 
15859
+ var trimLeft = /^\s+/,
15860
+ trimRight = /\s+$/,
15861
+ tinyCounter = 0,
15862
+ mathRound = Math.round,
15863
+ mathMin = Math.min,
15864
+ mathMax = Math.max,
15865
+ mathRandom = Math.random;
15866
 
15867
+ function tinycolor (color, opts) {
 
15868
 
15869
+ color = (color) ? color : '';
15870
+ opts = opts || { };
15871
 
15872
+ // If input is already a tinycolor, return itself
15873
+ if (color instanceof tinycolor) {
15874
+ return color;
15875
+ }
15876
+ // If we are called as a function, call using new instead
15877
+ if (!(this instanceof tinycolor)) {
15878
+ return new tinycolor(color, opts);
15879
  }
15880
 
15881
+ var rgb = inputToRGB(color);
15882
+ this._originalInput = color,
15883
+ this._r = rgb.r,
15884
+ this._g = rgb.g,
15885
+ this._b = rgb.b,
15886
+ this._a = rgb.a,
15887
+ this._roundA = mathRound(100*this._a) / 100,
15888
+ this._format = opts.format || rgb.format;
15889
+ this._gradientType = opts.gradientType;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15890
 
15891
+ // Don't let the range of [0,255] come back in [0,1].
15892
+ // Potentially lose a little bit of precision here, but will fix issues where
15893
+ // .5 gets interpreted as half of the total, instead of half of 1
15894
+ // If it was supposed to be 128, this was already taken care of by `inputToRgb`
15895
+ if (this._r < 1) { this._r = mathRound(this._r); }
15896
+ if (this._g < 1) { this._g = mathRound(this._g); }
15897
+ if (this._b < 1) { this._b = mathRound(this._b); }
15898
 
15899
+ this._ok = rgb.ok;
15900
+ this._tc_id = tinyCounter++;
15901
+ }
15902
 
15903
+ tinycolor.prototype = {
15904
+ isDark: function() {
15905
+ return this.getBrightness() < 128;
15906
+ },
15907
+ isLight: function() {
15908
+ return !this.isDark();
15909
+ },
15910
+ isValid: function() {
15911
+ return this._ok;
15912
+ },
15913
+ getOriginalInput: function() {
15914
+ return this._originalInput;
15915
+ },
15916
+ getFormat: function() {
15917
+ return this._format;
15918
+ },
15919
+ getAlpha: function() {
15920
+ return this._a;
15921
+ },
15922
+ getBrightness: function() {
15923
+ //http://www.w3.org/TR/AERT#color-contrast
15924
+ var rgb = this.toRgb();
15925
+ return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;
15926
+ },
15927
+ getLuminance: function() {
15928
+ //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef
15929
+ var rgb = this.toRgb();
15930
+ var RsRGB, GsRGB, BsRGB, R, G, B;
15931
+ RsRGB = rgb.r/255;
15932
+ GsRGB = rgb.g/255;
15933
+ BsRGB = rgb.b/255;
15934
 
15935
+ if (RsRGB <= 0.03928) {R = RsRGB / 12.92;} else {R = Math.pow(((RsRGB + 0.055) / 1.055), 2.4);}
15936
+ if (GsRGB <= 0.03928) {G = GsRGB / 12.92;} else {G = Math.pow(((GsRGB + 0.055) / 1.055), 2.4);}
15937
+ if (BsRGB <= 0.03928) {B = BsRGB / 12.92;} else {B = Math.pow(((BsRGB + 0.055) / 1.055), 2.4);}
15938
+ return (0.2126 * R) + (0.7152 * G) + (0.0722 * B);
15939
+ },
15940
+ setAlpha: function(value) {
15941
+ this._a = boundAlpha(value);
15942
+ this._roundA = mathRound(100*this._a) / 100;
15943
+ return this;
15944
+ },
15945
+ toHsv: function() {
15946
+ var hsv = rgbToHsv(this._r, this._g, this._b);
15947
+ return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a };
15948
+ },
15949
+ toHsvString: function() {
15950
+ var hsv = rgbToHsv(this._r, this._g, this._b);
15951
+ var h = mathRound(hsv.h * 360), s = mathRound(hsv.s * 100), v = mathRound(hsv.v * 100);
15952
+ return (this._a == 1) ?
15953
+ "hsv(" + h + ", " + s + "%, " + v + "%)" :
15954
+ "hsva(" + h + ", " + s + "%, " + v + "%, "+ this._roundA + ")";
15955
+ },
15956
+ toHsl: function() {
15957
+ var hsl = rgbToHsl(this._r, this._g, this._b);
15958
+ return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a };
15959
+ },
15960
+ toHslString: function() {
15961
+ var hsl = rgbToHsl(this._r, this._g, this._b);
15962
+ var h = mathRound(hsl.h * 360), s = mathRound(hsl.s * 100), l = mathRound(hsl.l * 100);
15963
+ return (this._a == 1) ?
15964
+ "hsl(" + h + ", " + s + "%, " + l + "%)" :
15965
+ "hsla(" + h + ", " + s + "%, " + l + "%, "+ this._roundA + ")";
15966
+ },
15967
+ toHex: function(allow3Char) {
15968
+ return rgbToHex(this._r, this._g, this._b, allow3Char);
15969
+ },
15970
+ toHexString: function(allow3Char) {
15971
+ return '#' + this.toHex(allow3Char);
15972
+ },
15973
+ toHex8: function(allow4Char) {
15974
+ return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);
15975
+ },
15976
+ toHex8String: function(allow4Char) {
15977
+ return '#' + this.toHex8(allow4Char);
15978
+ },
15979
+ toRgb: function() {
15980
+ return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a };
15981
+ },
15982
+ toRgbString: function() {
15983
+ return (this._a == 1) ?
15984
+ "rgb(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ")" :
15985
+ "rgba(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ", " + this._roundA + ")";
15986
+ },
15987
+ toPercentageRgb: function() {
15988
+ 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 };
15989
+ },
15990
+ toPercentageRgbString: function() {
15991
+ return (this._a == 1) ?
15992
+ "rgb(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%)" :
15993
+ "rgba(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%, " + this._roundA + ")";
15994
+ },
15995
+ toName: function() {
15996
+ if (this._a === 0) {
15997
+ return "transparent";
15998
+ }
15999
 
16000
+ if (this._a < 1) {
16001
+ return false;
16002
+ }
16003
 
16004
+ return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;
16005
+ },
16006
+ toFilter: function(secondColor) {
16007
+ var hex8String = '#' + rgbaToArgbHex(this._r, this._g, this._b, this._a);
16008
+ var secondHex8String = hex8String;
16009
+ var gradientType = this._gradientType ? "GradientType = 1, " : "";
16010
 
16011
+ if (secondColor) {
16012
+ var s = tinycolor(secondColor);
16013
+ secondHex8String = '#' + rgbaToArgbHex(s._r, s._g, s._b, s._a);
16014
+ }
16015
 
16016
+ return "progid:DXImageTransform.Microsoft.gradient("+gradientType+"startColorstr="+hex8String+",endColorstr="+secondHex8String+")";
16017
+ },
16018
+ toString: function(format) {
16019
+ var formatSet = !!format;
16020
+ format = format || this._format;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16021
 
16022
+ var formattedString = false;
16023
+ var hasAlpha = this._a < 1 && this._a >= 0;
16024
+ var needsAlphaFormat = !formatSet && hasAlpha && (format === "hex" || format === "hex6" || format === "hex3" || format === "hex4" || format === "hex8" || format === "name");
 
 
16025
 
16026
+ if (needsAlphaFormat) {
16027
+ // Special case for "transparent", all other non-alpha formats
16028
+ // will return rgba when there is transparency.
16029
+ if (format === "name" && this._a === 0) {
16030
+ return this.toName();
16031
+ }
16032
+ return this.toRgbString();
16033
+ }
16034
+ if (format === "rgb") {
16035
+ formattedString = this.toRgbString();
16036
+ }
16037
+ if (format === "prgb") {
16038
+ formattedString = this.toPercentageRgbString();
16039
+ }
16040
+ if (format === "hex" || format === "hex6") {
16041
+ formattedString = this.toHexString();
16042
+ }
16043
+ if (format === "hex3") {
16044
+ formattedString = this.toHexString(true);
16045
+ }
16046
+ if (format === "hex4") {
16047
+ formattedString = this.toHex8String(true);
16048
+ }
16049
+ if (format === "hex8") {
16050
+ formattedString = this.toHex8String();
16051
+ }
16052
+ if (format === "name") {
16053
+ formattedString = this.toName();
16054
+ }
16055
+ if (format === "hsl") {
16056
+ formattedString = this.toHslString();
16057
+ }
16058
+ if (format === "hsv") {
16059
+ formattedString = this.toHsvString();
16060
+ }
16061
 
16062
+ return formattedString || this.toHexString();
16063
+ },
16064
+ clone: function() {
16065
+ return tinycolor(this.toString());
16066
+ },
16067
 
16068
+ _applyModification: function(fn, args) {
16069
+ var color = fn.apply(null, [this].concat([].slice.call(args)));
16070
+ this._r = color._r;
16071
+ this._g = color._g;
16072
+ this._b = color._b;
16073
+ this.setAlpha(color._a);
16074
+ return this;
16075
+ },
16076
+ lighten: function() {
16077
+ return this._applyModification(lighten, arguments);
16078
+ },
16079
+ brighten: function() {
16080
+ return this._applyModification(brighten, arguments);
16081
+ },
16082
+ darken: function() {
16083
+ return this._applyModification(darken, arguments);
16084
+ },
16085
+ desaturate: function() {
16086
+ return this._applyModification(desaturate, arguments);
16087
+ },
16088
+ saturate: function() {
16089
+ return this._applyModification(saturate, arguments);
16090
+ },
16091
+ greyscale: function() {
16092
+ return this._applyModification(greyscale, arguments);
16093
+ },
16094
+ spin: function() {
16095
+ return this._applyModification(spin, arguments);
16096
+ },
16097
 
16098
+ _applyCombination: function(fn, args) {
16099
+ return fn.apply(null, [this].concat([].slice.call(args)));
16100
+ },
16101
+ analogous: function() {
16102
+ return this._applyCombination(analogous, arguments);
16103
+ },
16104
+ complement: function() {
16105
+ return this._applyCombination(complement, arguments);
16106
+ },
16107
+ monochromatic: function() {
16108
+ return this._applyCombination(monochromatic, arguments);
16109
+ },
16110
+ splitcomplement: function() {
16111
+ return this._applyCombination(splitcomplement, arguments);
16112
+ },
16113
+ triad: function() {
16114
+ return this._applyCombination(triad, arguments);
16115
+ },
16116
+ tetrad: function() {
16117
+ return this._applyCombination(tetrad, arguments);
16118
  }
16119
+ };
16120
 
16121
+ // If input is an object, force 1 into "1.0" to handle ratios properly
16122
+ // String input requires "1.0" as input, so 1 will be treated as 1
16123
+ tinycolor.fromRatio = function(color, opts) {
16124
+ if (typeof color == "object") {
16125
+ var newColor = {};
16126
+ for (var i in color) {
16127
+ if (color.hasOwnProperty(i)) {
16128
+ if (i === "a") {
16129
+ newColor[i] = color[i];
16130
+ }
16131
+ else {
16132
+ newColor[i] = convertToPercentage(color[i]);
16133
+ }
16134
+ }
16135
+ }
16136
+ color = newColor;
16137
  }
16138
 
16139
+ return tinycolor(color, opts);
16140
+ };
16141
 
16142
+ // Given a string or object, convert that input to RGB
16143
+ // Possible string inputs:
16144
+ //
16145
+ // "red"
16146
+ // "#f00" or "f00"
16147
+ // "#ff0000" or "ff0000"
16148
+ // "#ff000000" or "ff000000"
16149
+ // "rgb 255 0 0" or "rgb (255, 0, 0)"
16150
+ // "rgb 1.0 0 0" or "rgb (1, 0, 0)"
16151
+ // "rgba (255, 0, 0, 1)" or "rgba 255, 0, 0, 1"
16152
+ // "rgba (1.0, 0, 0, 1)" or "rgba 1.0, 0, 0, 1"
16153
+ // "hsl(0, 100%, 50%)" or "hsl 0 100% 50%"
16154
+ // "hsla(0, 100%, 50%, 1)" or "hsla 0 100% 50%, 1"
16155
+ // "hsv(0, 100%, 100%)" or "hsv 0 100% 100%"
16156
+ //
16157
+ function inputToRGB(color) {
16158
 
16159
+ var rgb = { r: 0, g: 0, b: 0 };
16160
+ var a = 1;
16161
+ var s = null;
16162
+ var v = null;
16163
+ var l = null;
16164
+ var ok = false;
16165
+ var format = false;
16166
 
16167
+ if (typeof color == "string") {
16168
+ color = stringInputToObject(color);
 
 
 
16169
  }
 
16170
 
16171
+ if (typeof color == "object") {
16172
+ if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {
16173
+ rgb = rgbToRgb(color.r, color.g, color.b);
16174
+ ok = true;
16175
+ format = String(color.r).substr(-1) === "%" ? "prgb" : "rgb";
16176
+ }
16177
+ else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {
16178
+ s = convertToPercentage(color.s);
16179
+ v = convertToPercentage(color.v);
16180
+ rgb = hsvToRgb(color.h, s, v);
16181
+ ok = true;
16182
+ format = "hsv";
16183
+ }
16184
+ else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {
16185
+ s = convertToPercentage(color.s);
16186
+ l = convertToPercentage(color.l);
16187
+ rgb = hslToRgb(color.h, s, l);
16188
+ ok = true;
16189
+ format = "hsl";
16190
+ }
16191
 
16192
+ if (color.hasOwnProperty("a")) {
16193
+ a = color.a;
16194
+ }
16195
+ }
16196
 
16197
+ a = boundAlpha(a);
16198
 
16199
+ return {
16200
+ ok: ok,
16201
+ format: color.format || format,
16202
+ r: mathMin(255, mathMax(rgb.r, 0)),
16203
+ g: mathMin(255, mathMax(rgb.g, 0)),
16204
+ b: mathMin(255, mathMax(rgb.b, 0)),
16205
+ a: a
16206
+ };
16207
+ }
16208
 
 
 
 
 
 
16209
 
16210
+ // Conversion Functions
16211
+ // --------------------
 
16212
 
16213
+ // `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:
16214
+ // <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>
 
 
16215
 
16216
+ // `rgbToRgb`
16217
+ // Handle bounds / percentage checking to conform to CSS color spec
16218
+ // <http://www.w3.org/TR/css3-color/>
16219
+ // *Assumes:* r, g, b in [0, 255] or [0, 1]
16220
+ // *Returns:* { r, g, b } in [0, 255]
16221
+ function rgbToRgb(r, g, b){
16222
+ return {
16223
+ r: bound01(r, 255) * 255,
16224
+ g: bound01(g, 255) * 255,
16225
+ b: bound01(b, 255) * 255
16226
+ };
16227
  }
16228
 
16229
+ // `rgbToHsl`
16230
+ // Converts an RGB color value to HSL.
16231
+ // *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]
16232
+ // *Returns:* { h, s, l } in [0,1]
16233
+ function rgbToHsl(r, g, b) {
16234
 
16235
+ r = bound01(r, 255);
16236
+ g = bound01(g, 255);
16237
+ b = bound01(b, 255);
16238
 
16239
+ var max = mathMax(r, g, b), min = mathMin(r, g, b);
16240
+ var h, s, l = (max + min) / 2;
 
16241
 
16242
+ if(max == min) {
16243
+ h = s = 0; // achromatic
16244
+ }
16245
+ else {
16246
+ var d = max - min;
16247
+ s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
16248
+ switch(max) {
16249
+ case r: h = (g - b) / d + (g < b ? 6 : 0); break;
16250
+ case g: h = (b - r) / d + 2; break;
16251
+ case b: h = (r - g) / d + 4; break;
16252
+ }
 
 
 
 
 
 
 
 
16253
 
16254
+ h /= 6;
16255
+ }
 
 
 
 
 
 
 
16256
 
16257
+ return { h: h, s: s, l: l };
 
16258
  }
16259
 
16260
+ // `hslToRgb`
16261
+ // Converts an HSL color value to RGB.
16262
+ // *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]
16263
+ // *Returns:* { r, g, b } in the set [0, 255]
16264
+ function hslToRgb(h, s, l) {
16265
+ var r, g, b;
16266
 
16267
+ h = bound01(h, 360);
16268
+ s = bound01(s, 100);
16269
+ l = bound01(l, 100);
 
 
16270
 
16271
+ function hue2rgb(p, q, t) {
16272
+ if(t < 0) t += 1;
16273
+ if(t > 1) t -= 1;
16274
+ if(t < 1/6) return p + (q - p) * 6 * t;
16275
+ if(t < 1/2) return q;
16276
+ if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;
16277
+ return p;
16278
+ }
16279
 
16280
+ if(s === 0) {
16281
+ r = g = b = l; // achromatic
16282
+ }
16283
+ else {
16284
+ var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
16285
+ var p = 2 * l - q;
16286
+ r = hue2rgb(p, q, h + 1/3);
16287
+ g = hue2rgb(p, q, h);
16288
+ b = hue2rgb(p, q, h - 1/3);
16289
+ }
16290
 
16291
+ return { r: r * 255, g: g * 255, b: b * 255 };
16292
+ }
 
 
 
16293
 
16294
+ // `rgbToHsv`
16295
+ // Converts an RGB color value to HSV
16296
+ // *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]
16297
+ // *Returns:* { h, s, v } in [0,1]
16298
+ function rgbToHsv(r, g, b) {
16299
 
16300
+ r = bound01(r, 255);
16301
+ g = bound01(g, 255);
16302
+ b = bound01(b, 255);
 
 
 
 
16303
 
16304
+ var max = mathMax(r, g, b), min = mathMin(r, g, b);
16305
+ var h, s, v = max;
 
16306
 
16307
+ var d = max - min;
16308
+ s = max === 0 ? 0 : d / max;
 
 
 
 
16309
 
16310
+ if(max == min) {
16311
+ h = 0; // achromatic
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16312
  }
16313
+ else {
16314
+ switch(max) {
16315
+ case r: h = (g - b) / d + (g < b ? 6 : 0); break;
16316
+ case g: h = (b - r) / d + 2; break;
16317
+ case b: h = (r - g) / d + 4; break;
 
 
 
 
16318
  }
16319
+ h /= 6;
16320
  }
16321
+ return { h: h, s: s, v: v };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16322
  }
 
16323
 
16324
+ // `hsvToRgb`
16325
+ // Converts an HSV color value to RGB.
16326
+ // *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]
16327
+ // *Returns:* { r, g, b } in the set [0, 255]
16328
+ function hsvToRgb(h, s, v) {
16329
 
16330
+ h = bound01(h, 360) * 6;
16331
+ s = bound01(s, 100);
16332
+ v = bound01(v, 100);
16333
 
16334
+ var i = Math.floor(h),
16335
+ f = h - i,
16336
+ p = v * (1 - s),
16337
+ q = v * (1 - f * s),
16338
+ t = v * (1 - (1 - f) * s),
16339
+ mod = i % 6,
16340
+ r = [v, q, p, p, t, v][mod],
16341
+ g = [t, v, v, q, p, p][mod],
16342
+ b = [p, p, t, v, v, q][mod];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16343
 
16344
+ return { r: r * 255, g: g * 255, b: b * 255 };
16345
+ }
16346
 
16347
+ // `rgbToHex`
16348
+ // Converts an RGB color to hex
16349
+ // Assumes r, g, and b are contained in the set [0, 255]
16350
+ // Returns a 3 or 6 character hex
16351
+ function rgbToHex(r, g, b, allow3Char) {
16352
 
16353
+ var hex = [
16354
+ pad2(mathRound(r).toString(16)),
16355
+ pad2(mathRound(g).toString(16)),
16356
+ pad2(mathRound(b).toString(16))
16357
+ ];
16358
 
16359
+ // Return a 3 character hex if possible
16360
+ 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)) {
16361
+ return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);
16362
+ }
16363
 
16364
+ return hex.join("");
16365
+ }
 
16366
 
16367
+ // `rgbaToHex`
16368
+ // Converts an RGBA color plus alpha transparency to hex
16369
+ // Assumes r, g, b are contained in the set [0, 255] and
16370
+ // a in [0, 1]. Returns a 4 or 8 character rgba hex
16371
+ function rgbaToHex(r, g, b, a, allow4Char) {
 
16372
 
16373
+ var hex = [
16374
+ pad2(mathRound(r).toString(16)),
16375
+ pad2(mathRound(g).toString(16)),
16376
+ pad2(mathRound(b).toString(16)),
16377
+ pad2(convertDecimalToHex(a))
16378
+ ];
16379
+
16380
+ // Return a 4 character hex if possible
16381
+ 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)) {
16382
+ return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16383
  }
16384
+
16385
+ return hex.join("");
16386
  }
 
16387
 
16388
+ // `rgbaToArgbHex`
16389
+ // Converts an RGBA color to an ARGB Hex8 string
16390
+ // Rarely used, but required for "toFilter()"
16391
+ function rgbaToArgbHex(r, g, b, a) {
16392
 
16393
+ var hex = [
16394
+ pad2(convertDecimalToHex(a)),
16395
+ pad2(mathRound(r).toString(16)),
16396
+ pad2(mathRound(g).toString(16)),
16397
+ pad2(mathRound(b).toString(16))
16398
+ ];
16399
 
16400
+ return hex.join("");
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16401
  }
16402
 
16403
+ // `equals`
16404
+ // Can be called with any tinycolor input
16405
+ tinycolor.equals = function (color1, color2) {
16406
+ if (!color1 || !color2) { return false; }
16407
+ return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString();
16408
+ };
16409
 
16410
+ tinycolor.random = function() {
16411
+ return tinycolor.fromRatio({
16412
+ r: mathRandom(),
16413
+ g: mathRandom(),
16414
+ b: mathRandom()
16415
+ });
16416
+ };
16417
 
 
 
 
16418
 
16419
+ // Modification Functions
16420
+ // ----------------------
16421
+ // Thanks to less.js for some of the basics here
16422
+ // <https://github.com/cloudhead/less.js/blob/master/lib/less/functions.js>
 
 
 
 
 
 
 
16423
 
16424
+ function desaturate(color, amount) {
16425
+ amount = (amount === 0) ? 0 : (amount || 10);
16426
+ var hsl = tinycolor(color).toHsl();
16427
+ hsl.s -= amount / 100;
16428
+ hsl.s = clamp01(hsl.s);
16429
+ return tinycolor(hsl);
16430
+ }
16431
 
16432
+ function saturate(color, amount) {
16433
+ amount = (amount === 0) ? 0 : (amount || 10);
16434
+ var hsl = tinycolor(color).toHsl();
16435
+ hsl.s += amount / 100;
16436
+ hsl.s = clamp01(hsl.s);
16437
+ return tinycolor(hsl);
16438
+ }
16439
 
16440
+ function greyscale(color) {
16441
+ return tinycolor(color).desaturate(100);
16442
+ }
16443
 
16444
+ function lighten (color, amount) {
16445
+ amount = (amount === 0) ? 0 : (amount || 10);
16446
+ var hsl = tinycolor(color).toHsl();
16447
+ hsl.l += amount / 100;
16448
+ hsl.l = clamp01(hsl.l);
16449
+ return tinycolor(hsl);
16450
+ }
16451
 
16452
+ function brighten(color, amount) {
16453
+ amount = (amount === 0) ? 0 : (amount || 10);
16454
+ var rgb = tinycolor(color).toRgb();
16455
+ rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * - (amount / 100))));
16456
+ rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * - (amount / 100))));
16457
+ rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * - (amount / 100))));
16458
+ return tinycolor(rgb);
16459
+ }
16460
 
16461
+ function darken (color, amount) {
16462
+ amount = (amount === 0) ? 0 : (amount || 10);
16463
+ var hsl = tinycolor(color).toHsl();
16464
+ hsl.l -= amount / 100;
16465
+ hsl.l = clamp01(hsl.l);
16466
+ return tinycolor(hsl);
16467
+ }
16468
 
16469
+ // Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.
16470
+ // Values outside of this range will be wrapped into this range.
16471
+ function spin(color, amount) {
16472
+ var hsl = tinycolor(color).toHsl();
16473
+ var hue = (hsl.h + amount) % 360;
16474
+ hsl.h = hue < 0 ? 360 + hue : hue;
16475
+ return tinycolor(hsl);
16476
+ }
16477
 
16478
+ // Combination Functions
16479
+ // ---------------------
16480
+ // Thanks to jQuery xColor for some of the ideas behind these
16481
+ // <https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js>
16482
 
16483
+ function complement(color) {
16484
+ var hsl = tinycolor(color).toHsl();
16485
+ hsl.h = (hsl.h + 180) % 360;
16486
+ return tinycolor(hsl);
16487
+ }
16488
 
16489
+ function triad(color) {
16490
+ var hsl = tinycolor(color).toHsl();
16491
+ var h = hsl.h;
16492
+ return [
16493
+ tinycolor(color),
16494
+ tinycolor({ h: (h + 120) % 360, s: hsl.s, l: hsl.l }),
16495
+ tinycolor({ h: (h + 240) % 360, s: hsl.s, l: hsl.l })
16496
+ ];
16497
+ }
16498
 
16499
+ function tetrad(color) {
16500
+ var hsl = tinycolor(color).toHsl();
16501
+ var h = hsl.h;
16502
+ return [
16503
+ tinycolor(color),
16504
+ tinycolor({ h: (h + 90) % 360, s: hsl.s, l: hsl.l }),
16505
+ tinycolor({ h: (h + 180) % 360, s: hsl.s, l: hsl.l }),
16506
+ tinycolor({ h: (h + 270) % 360, s: hsl.s, l: hsl.l })
16507
+ ];
16508
+ }
16509
 
16510
+ function splitcomplement(color) {
16511
+ var hsl = tinycolor(color).toHsl();
16512
+ var h = hsl.h;
16513
+ return [
16514
+ tinycolor(color),
16515
+ tinycolor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l}),
16516
+ tinycolor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l})
16517
+ ];
16518
+ }
16519
 
16520
+ function analogous(color, results, slices) {
16521
+ results = results || 6;
16522
+ slices = slices || 30;
 
 
16523
 
16524
+ var hsl = tinycolor(color).toHsl();
16525
+ var part = 360 / slices;
16526
+ var ret = [tinycolor(color)];
16527
 
16528
+ for (hsl.h = ((hsl.h - (part * results >> 1)) + 720) % 360; --results; ) {
16529
+ hsl.h = (hsl.h + part) % 360;
16530
+ ret.push(tinycolor(hsl));
16531
+ }
16532
+ return ret;
16533
+ }
16534
 
16535
+ function monochromatic(color, results) {
16536
+ results = results || 6;
16537
+ var hsv = tinycolor(color).toHsv();
16538
+ var h = hsv.h, s = hsv.s, v = hsv.v;
16539
+ var ret = [];
16540
+ var modification = 1 / results;
16541
 
16542
+ while (results--) {
16543
+ ret.push(tinycolor({ h: h, s: s, v: v}));
16544
+ v = (v + modification) % 1;
16545
+ }
16546
 
16547
+ return ret;
16548
+ }
16549
 
16550
+ // Utility Functions
16551
+ // ---------------------
16552
 
16553
+ tinycolor.mix = function(color1, color2, amount) {
16554
+ amount = (amount === 0) ? 0 : (amount || 50);
 
 
 
 
 
16555
 
16556
+ var rgb1 = tinycolor(color1).toRgb();
16557
+ var rgb2 = tinycolor(color2).toRgb();
 
 
16558
 
16559
+ var p = amount / 100;
 
 
 
16560
 
16561
+ var rgba = {
16562
+ r: ((rgb2.r - rgb1.r) * p) + rgb1.r,
16563
+ g: ((rgb2.g - rgb1.g) * p) + rgb1.g,
16564
+ b: ((rgb2.b - rgb1.b) * p) + rgb1.b,
16565
+ a: ((rgb2.a - rgb1.a) * p) + rgb1.a
16566
+ };
16567
 
16568
+ return tinycolor(rgba);
16569
+ };
 
 
16570
 
 
 
 
 
 
 
16571
 
16572
+ // Readability Functions
16573
+ // ---------------------
16574
+ // <http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef (WCAG Version 2)
 
16575
 
16576
+ // `contrast`
16577
+ // Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)
16578
+ tinycolor.readability = function(color1, color2) {
16579
+ var c1 = tinycolor(color1);
16580
+ var c2 = tinycolor(color2);
16581
+ return (Math.max(c1.getLuminance(),c2.getLuminance())+0.05) / (Math.min(c1.getLuminance(),c2.getLuminance())+0.05);
16582
+ };
16583
 
16584
+ // `isReadable`
16585
+ // Ensure that foreground and background color combinations meet WCAG2 guidelines.
16586
+ // The third argument is an optional Object.
16587
+ // the 'level' property states 'AA' or 'AAA' - if missing or invalid, it defaults to 'AA';
16588
+ // the 'size' property states 'large' or 'small' - if missing or invalid, it defaults to 'small'.
16589
+ // If the entire object is absent, isReadable defaults to {level:"AA",size:"small"}.
16590
 
16591
+ // *Example*
16592
+ // tinycolor.isReadable("#000", "#111") => false
16593
+ // tinycolor.isReadable("#000", "#111",{level:"AA",size:"large"}) => false
16594
+ tinycolor.isReadable = function(color1, color2, wcag2) {
16595
+ var readability = tinycolor.readability(color1, color2);
16596
+ var wcag2Parms, out;
16597
 
16598
+ out = false;
 
 
 
16599
 
16600
+ wcag2Parms = validateWCAG2Parms(wcag2);
16601
+ switch (wcag2Parms.level + wcag2Parms.size) {
16602
+ case "AAsmall":
16603
+ case "AAAlarge":
16604
+ out = readability >= 4.5;
16605
+ break;
16606
+ case "AAlarge":
16607
+ out = readability >= 3;
16608
+ break;
16609
+ case "AAAsmall":
16610
+ out = readability >= 7;
16611
+ break;
16612
+ }
16613
+ return out;
16614
 
16615
+ };
 
 
 
16616
 
16617
+ // `mostReadable`
16618
+ // Given a base color and a list of possible foreground or background
16619
+ // colors for that base, returns the most readable color.
16620
+ // Optionally returns Black or White if the most readable color is unreadable.
16621
+ // *Example*
16622
+ // tinycolor.mostReadable(tinycolor.mostReadable("#123", ["#124", "#125"],{includeFallbackColors:false}).toHexString(); // "#112255"
16623
+ // tinycolor.mostReadable(tinycolor.mostReadable("#123", ["#124", "#125"],{includeFallbackColors:true}).toHexString(); // "#ffffff"
16624
+ // tinycolor.mostReadable("#a8015a", ["#faf3f3"],{includeFallbackColors:true,level:"AAA",size:"large"}).toHexString(); // "#faf3f3"
16625
+ // tinycolor.mostReadable("#a8015a", ["#faf3f3"],{includeFallbackColors:true,level:"AAA",size:"small"}).toHexString(); // "#ffffff"
16626
+ tinycolor.mostReadable = function(baseColor, colorList, args) {
16627
+ var bestColor = null;
16628
+ var bestScore = 0;
16629
+ var readability;
16630
+ var includeFallbackColors, level, size ;
16631
+ args = args || {};
16632
+ includeFallbackColors = args.includeFallbackColors ;
16633
+ level = args.level;
16634
+ size = args.size;
16635
 
16636
+ for (var i= 0; i < colorList.length ; i++) {
16637
+ readability = tinycolor.readability(baseColor, colorList[i]);
16638
+ if (readability > bestScore) {
16639
+ bestScore = readability;
16640
+ bestColor = tinycolor(colorList[i]);
16641
+ }
16642
+ }
16643
 
16644
+ if (tinycolor.isReadable(baseColor, bestColor, {"level":level,"size":size}) || !includeFallbackColors) {
16645
+ return bestColor;
16646
+ }
16647
+ else {
16648
+ args.includeFallbackColors=false;
16649
+ return tinycolor.mostReadable(baseColor,["#fff", "#000"],args);
16650
  }
 
16651
  };
16652
+
16653
+
16654
+ // Big List of Colors
16655
+ // ------------------
16656
+ // <http://www.w3.org/TR/css3-color/#svg-color>
16657
+ var names = tinycolor.names = {
16658
+ aliceblue: "f0f8ff",
16659
+ antiquewhite: "faebd7",
16660
+ aqua: "0ff",
16661
+ aquamarine: "7fffd4",
16662
+ azure: "f0ffff",
16663
+ beige: "f5f5dc",
16664
+ bisque: "ffe4c4",
16665
+ black: "000",
16666
+ blanchedalmond: "ffebcd",
16667
+ blue: "00f",
16668
+ blueviolet: "8a2be2",
16669
+ brown: "a52a2a",
16670
+ burlywood: "deb887",
16671
+ burntsienna: "ea7e5d",
16672
+ cadetblue: "5f9ea0",
16673
+ chartreuse: "7fff00",
16674
+ chocolate: "d2691e",
16675
+ coral: "ff7f50",
16676
+ cornflowerblue: "6495ed",
16677
+ cornsilk: "fff8dc",
16678
+ crimson: "dc143c",
16679
+ cyan: "0ff",
16680
+ darkblue: "00008b",
16681
+ darkcyan: "008b8b",
16682
+ darkgoldenrod: "b8860b",
16683
+ darkgray: "a9a9a9",
16684
+ darkgreen: "006400",
16685
+ darkgrey: "a9a9a9",
16686
+ darkkhaki: "bdb76b",
16687
+ darkmagenta: "8b008b",
16688
+ darkolivegreen: "556b2f",
16689
+ darkorange: "ff8c00",
16690
+ darkorchid: "9932cc",
16691
+ darkred: "8b0000",
16692
+ darksalmon: "e9967a",
16693
+ darkseagreen: "8fbc8f",
16694
+ darkslateblue: "483d8b",
16695
+ darkslategray: "2f4f4f",
16696
+ darkslategrey: "2f4f4f",
16697
+ darkturquoise: "00ced1",
16698
+ darkviolet: "9400d3",
16699
+ deeppink: "ff1493",
16700
+ deepskyblue: "00bfff",
16701
+ dimgray: "696969",
16702
+ dimgrey: "696969",
16703
+ dodgerblue: "1e90ff",
16704
+ firebrick: "b22222",
16705
+ floralwhite: "fffaf0",
16706
+ forestgreen: "228b22",
16707
+ fuchsia: "f0f",
16708
+ gainsboro: "dcdcdc",
16709
+ ghostwhite: "f8f8ff",
16710
+ gold: "ffd700",
16711
+ goldenrod: "daa520",
16712
+ gray: "808080",
16713
+ green: "008000",
16714
+ greenyellow: "adff2f",
16715
+ grey: "808080",
16716
+ honeydew: "f0fff0",
16717
+ hotpink: "ff69b4",
16718
+ indianred: "cd5c5c",
16719
+ indigo: "4b0082",
16720
+ ivory: "fffff0",
16721
+ khaki: "f0e68c",
16722
+ lavender: "e6e6fa",
16723
+ lavenderblush: "fff0f5",
16724
+ lawngreen: "7cfc00",
16725
+ lemonchiffon: "fffacd",
16726
+ lightblue: "add8e6",
16727
+ lightcoral: "f08080",
16728
+ lightcyan: "e0ffff",
16729
+ lightgoldenrodyellow: "fafad2",
16730
+ lightgray: "d3d3d3",
16731
+ lightgreen: "90ee90",
16732
+ lightgrey: "d3d3d3",
16733
+ lightpink: "ffb6c1",
16734
+ lightsalmon: "ffa07a",
16735
+ lightseagreen: "20b2aa",
16736
+ lightskyblue: "87cefa",
16737
+ lightslategray: "789",
16738
+ lightslategrey: "789",
16739
+ lightsteelblue: "b0c4de",
16740
+ lightyellow: "ffffe0",
16741
+ lime: "0f0",
16742
+ limegreen: "32cd32",
16743
+ linen: "faf0e6",
16744
+ magenta: "f0f",
16745
+ maroon: "800000",
16746
+ mediumaquamarine: "66cdaa",
16747
+ mediumblue: "0000cd",
16748
+ mediumorchid: "ba55d3",
16749
+ mediumpurple: "9370db",
16750
+ mediumseagreen: "3cb371",
16751
+ mediumslateblue: "7b68ee",
16752
+ mediumspringgreen: "00fa9a",
16753
+ mediumturquoise: "48d1cc",
16754
+ mediumvioletred: "c71585",
16755
+ midnightblue: "191970",
16756
+ mintcream: "f5fffa",
16757
+ mistyrose: "ffe4e1",
16758
+ moccasin: "ffe4b5",
16759
+ navajowhite: "ffdead",
16760
+ navy: "000080",
16761
+ oldlace: "fdf5e6",
16762
+ olive: "808000",
16763
+ olivedrab: "6b8e23",
16764
+ orange: "ffa500",
16765
+ orangered: "ff4500",
16766
+ orchid: "da70d6",
16767
+ palegoldenrod: "eee8aa",
16768
+ palegreen: "98fb98",
16769
+ paleturquoise: "afeeee",
16770
+ palevioletred: "db7093",
16771
+ papayawhip: "ffefd5",
16772
+ peachpuff: "ffdab9",
16773
+ peru: "cd853f",
16774
+ pink: "ffc0cb",
16775
+ plum: "dda0dd",
16776
+ powderblue: "b0e0e6",
16777
+ purple: "800080",
16778
+ rebeccapurple: "663399",
16779
+ red: "f00",
16780
+ rosybrown: "bc8f8f",
16781
+ royalblue: "4169e1",
16782
+ saddlebrown: "8b4513",
16783
+ salmon: "fa8072",
16784
+ sandybrown: "f4a460",
16785
+ seagreen: "2e8b57",
16786
+ seashell: "fff5ee",
16787
+ sienna: "a0522d",
16788
+ silver: "c0c0c0",
16789
+ skyblue: "87ceeb",
16790
+ slateblue: "6a5acd",
16791
+ slategray: "708090",
16792
+ slategrey: "708090",
16793
+ snow: "fffafa",
16794
+ springgreen: "00ff7f",
16795
+ steelblue: "4682b4",
16796
+ tan: "d2b48c",
16797
+ teal: "008080",
16798
+ thistle: "d8bfd8",
16799
+ tomato: "ff6347",
16800
+ turquoise: "40e0d0",
16801
+ violet: "ee82ee",
16802
+ wheat: "f5deb3",
16803
+ white: "fff",
16804
+ whitesmoke: "f5f5f5",
16805
+ yellow: "ff0",
16806
+ yellowgreen: "9acd32"
16807
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16808
 
16809
+ // Make it easy to access colors via `hexNames[hex]`
16810
+ var hexNames = tinycolor.hexNames = flip(names);
 
 
 
 
 
 
 
 
16811
 
 
 
 
16812
 
16813
+ // Utilities
16814
+ // ---------
 
 
 
 
 
 
 
 
16815
 
16816
+ // `{ 'name1': 'val1' }` becomes `{ 'val1': 'name1' }`
16817
+ function flip(o) {
16818
+ var flipped = { };
16819
+ for (var i in o) {
16820
+ if (o.hasOwnProperty(i)) {
16821
+ flipped[o[i]] = i;
16822
+ }
16823
+ }
16824
+ return flipped;
16825
+ }
16826
 
16827
+ // Return a valid alpha value [0,1] with all invalid values being set to 1
16828
+ function boundAlpha(a) {
16829
+ a = parseFloat(a);
16830
 
16831
+ if (isNaN(a) || a < 0 || a > 1) {
16832
+ a = 1;
16833
+ }
16834
 
16835
+ return a;
16836
+ }
16837
 
16838
+ // Take input from [0, n] and return it as [0, 1]
16839
+ function bound01(n, max) {
16840
+ if (isOnePointZero(n)) { n = "100%"; }
16841
 
16842
+ var processPercent = isPercentage(n);
16843
+ n = mathMin(max, mathMax(0, parseFloat(n)));
 
 
 
 
 
 
 
 
 
 
 
 
16844
 
16845
+ // Automatically convert percentage into number
16846
+ if (processPercent) {
16847
+ n = parseInt(n * max, 10) / 100;
 
 
16848
  }
 
 
 
 
 
 
 
 
16849
 
16850
+ // Handle floating point rounding errors
16851
+ if ((Math.abs(n - max) < 0.000001)) {
16852
+ return 1;
16853
+ }
 
 
 
 
 
16854
 
16855
+ // Convert into [0, 1] range if it isn't already
16856
+ return (n % max) / parseFloat(max);
16857
+ }
16858
 
16859
+ // Force a number between 0 and 1
16860
+ function clamp01(val) {
16861
+ return mathMin(1, mathMax(0, val));
16862
+ }
 
 
 
 
 
16863
 
16864
+ // Parse a base-16 hex value into a base-10 integer
16865
+ function parseIntFromHex(val) {
16866
+ return parseInt(val, 16);
16867
+ }
16868
 
16869
+ // Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1
16870
+ // <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>
16871
+ function isOnePointZero(n) {
16872
+ return typeof n == "string" && n.indexOf('.') != -1 && parseFloat(n) === 1;
16873
+ }
16874
 
16875
+ // Check to see if string passed in is a percentage
16876
+ function isPercentage(n) {
16877
+ return typeof n === "string" && n.indexOf('%') != -1;
16878
+ }
16879
 
16880
+ // Force a hex value to have 2 characters
16881
+ function pad2(c) {
16882
+ return c.length == 1 ? '0' + c : '' + c;
16883
+ }
16884
 
16885
+ // Replace a decimal with it's percentage value
16886
+ function convertToPercentage(n) {
16887
+ if (n <= 1) {
16888
+ n = (n * 100) + "%";
16889
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
16890
 
16891
+ return n;
16892
+ }
 
 
16893
 
16894
+ // Converts a decimal to a hex value
16895
+ function convertDecimalToHex(d) {
16896
+ return Math.round(parseFloat(d) * 255).toString(16);
16897
+ }
16898
+ // Converts a hex value to a decimal
16899
+ function convertHexToDecimal(h) {
16900
+ return (parseIntFromHex(h) / 255);
16901
+ }
16902
 
16903
+ var matchers = (function() {
 
 
 
16904
 
16905
+ // <http://www.w3.org/TR/css3-values/#integers>
16906
+ var CSS_INTEGER = "[-\\+]?\\d+%?";
16907
 
16908
+ // <http://www.w3.org/TR/css3-values/#number-value>
16909
+ var CSS_NUMBER = "[-\\+]?\\d*\\.\\d+%?";
16910
+
16911
+ // Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.
16912
+ var CSS_UNIT = "(?:" + CSS_NUMBER + ")|(?:" + CSS_INTEGER + ")";
16913
+
16914
+ // Actual matching.
16915
+ // Parentheses and commas are optional, but not required.
16916
+ // Whitespace can take the place of commas or opening paren
16917
+ var PERMISSIVE_MATCH3 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?";
16918
+ var PERMISSIVE_MATCH4 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?";
16919
+
16920
+ return {
16921
+ CSS_UNIT: new RegExp(CSS_UNIT),
16922
+ rgb: new RegExp("rgb" + PERMISSIVE_MATCH3),
16923
+ rgba: new RegExp("rgba" + PERMISSIVE_MATCH4),
16924
+ hsl: new RegExp("hsl" + PERMISSIVE_MATCH3),
16925
+ hsla: new RegExp("hsla" + PERMISSIVE_MATCH4),
16926
+ hsv: new RegExp("hsv" + PERMISSIVE_MATCH3),
16927
+ hsva: new RegExp("hsva" + PERMISSIVE_MATCH4),
16928
+ hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
16929
+ hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,
16930
+ hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
16931
+ hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/
16932
+ };
16933
+ })();
16934
+
16935
+ // `isValidCSSUnit`
16936
+ // Take in a single string / number and check to see if it looks like a CSS unit
16937
+ // (see `matchers` above for definition).
16938
+ function isValidCSSUnit(color) {
16939
+ return !!matchers.CSS_UNIT.exec(color);
16940
  }
16941
+
16942
+ // `stringInputToObject`
16943
+ // Permissive string parsing. Take in a number of formats, and output an object
16944
+ // based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`
16945
+ function stringInputToObject(color) {
16946
+
16947
+ color = color.replace(trimLeft,'').replace(trimRight, '').toLowerCase();
16948
+ var named = false;
16949
+ if (names[color]) {
16950
+ color = names[color];
16951
+ named = true;
16952
  }
16953
+ else if (color == 'transparent') {
16954
+ return { r: 0, g: 0, b: 0, a: 0, format: "name" };
 
 
 
 
 
 
16955
  }
16956
+
16957
+ // Try to match string input using regular expressions.
16958
+ // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]
16959
+ // Just return an object and let the conversion functions handle that.
16960
+ // This way the result will be the same whether the tinycolor is initialized with string or object.
16961
+ var match;
16962
+ if ((match = matchers.rgb.exec(color))) {
16963
+ return { r: match[1], g: match[2], b: match[3] };
16964
  }
16965
+ if ((match = matchers.rgba.exec(color))) {
16966
+ return { r: match[1], g: match[2], b: match[3], a: match[4] };
 
 
16967
  }
16968
+ if ((match = matchers.hsl.exec(color))) {
16969
+ return { h: match[1], s: match[2], l: match[3] };
 
 
 
 
 
 
 
 
 
16970
  }
16971
+ if ((match = matchers.hsla.exec(color))) {
16972
+ return { h: match[1], s: match[2], l: match[3], a: match[4] };
 
 
 
 
 
16973
  }
16974
+ if ((match = matchers.hsv.exec(color))) {
16975
+ return { h: match[1], s: match[2], v: match[3] };
 
 
16976
  }
16977
+ if ((match = matchers.hsva.exec(color))) {
16978
+ return { h: match[1], s: match[2], v: match[3], a: match[4] };
 
 
 
 
 
 
 
 
 
 
16979
  }
16980
+ if ((match = matchers.hex8.exec(color))) {
16981
+ return {
16982
+ r: parseIntFromHex(match[1]),
16983
+ g: parseIntFromHex(match[2]),
16984
+ b: parseIntFromHex(match[3]),
16985
+ a: convertHexToDecimal(match[4]),
16986
+ format: named ? "name" : "hex8"
16987
+ };
 
 
 
 
16988
  }
16989
+ if ((match = matchers.hex6.exec(color))) {
16990
+ return {
16991
+ r: parseIntFromHex(match[1]),
16992
+ g: parseIntFromHex(match[2]),
16993
+ b: parseIntFromHex(match[3]),
16994
+ format: named ? "name" : "hex"
16995
+ };
16996
  }
16997
+ if ((match = matchers.hex4.exec(color))) {
16998
+ return {
16999
+ r: parseIntFromHex(match[1] + '' + match[1]),
17000
+ g: parseIntFromHex(match[2] + '' + match[2]),
17001
+ b: parseIntFromHex(match[3] + '' + match[3]),
17002
+ a: convertHexToDecimal(match[4] + '' + match[4]),
17003
+ format: named ? "name" : "hex8"
17004
+ };
17005
  }
17006
+ if ((match = matchers.hex3.exec(color))) {
17007
+ return {
17008
+ r: parseIntFromHex(match[1] + '' + match[1]),
17009
+ g: parseIntFromHex(match[2] + '' + match[2]),
17010
+ b: parseIntFromHex(match[3] + '' + match[3]),
17011
+ format: named ? "name" : "hex"
17012
+ };
17013
  }
 
 
17014
 
17015
+ return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17016
  }
17017
 
17018
+ function validateWCAG2Parms(parms) {
17019
+ // return valid WCAG2 parms for isReadable.
17020
+ // If input parms are invalid, return {"level":"AA", "size":"small"}
17021
+ var level, size;
17022
+ parms = parms || {"level":"AA", "size":"small"};
17023
+ level = (parms.level || "AA").toUpperCase();
17024
+ size = (parms.size || "small").toLowerCase();
17025
+ if (level !== "AA" && level !== "AAA") {
17026
+ level = "AA";
17027
  }
17028
+ if (size !== "small" && size !== "large") {
17029
+ size = "small";
 
17030
  }
17031
+ return {"level":level, "size":size};
17032
+ }
17033
 
17034
+ // Node: Export function
17035
+ if ( true && module.exports) {
17036
+ module.exports = tinycolor;
 
17037
  }
17038
+ // AMD/requirejs: Define the module
17039
+ else if (true) {
17040
+ !(__WEBPACK_AMD_DEFINE_RESULT__ = (function () {return tinycolor;}).call(exports, __webpack_require__, exports, module),
17041
+ __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
17042
+ }
17043
+ // Browser: Expose to window
17044
+ else {}
 
 
17045
 
17046
+ })(Math);
17047
 
 
 
 
 
 
 
 
 
 
17048
 
17049
+ /***/ }),
17050
+ /* 187 */,
17051
+ /* 188 */,
17052
+ /* 189 */,
17053
+ /* 190 */,
17054
+ /* 191 */
17055
+ /***/ (function(module, exports, __webpack_require__) {
17056
 
17057
+ "use strict";
 
 
17058
 
17059
+
17060
+ module.exports = function bind(fn, thisArg) {
17061
+ return function wrap() {
17062
+ var args = new Array(arguments.length);
17063
+ for (var i = 0; i < args.length; i++) {
17064
+ args[i] = arguments[i];
17065
+ }
17066
+ return fn.apply(thisArg, args);
17067
+ };
17068
  };
 
17069
 
17070
 
17071
  /***/ }),
17072
+ /* 192 */
17073
  /***/ (function(module, exports, __webpack_require__) {
17074
 
17075
+ "use strict";
17076
+
17077
+
17078
+ var utils = __webpack_require__(33);
17079
+
17080
+ function encode(val) {
17081
+ return encodeURIComponent(val).
17082
+ replace(/%3A/gi, ':').
17083
+ replace(/%24/g, '$').
17084
+ replace(/%2C/gi, ',').
17085
+ replace(/%20/g, '+').
17086
+ replace(/%5B/gi, '[').
17087
+ replace(/%5D/gi, ']');
17088
+ }
17089
 
17090
  /**
17091
+ * Build a URL by appending params to the end
17092
  *
17093
+ * @param {string} url The base of the url (e.g., http://www.google.com)
17094
+ * @param {object} [params] The params to be appended
17095
+ * @returns {string} The formatted url
17096
  */
17097
+ module.exports = function buildURL(url, params, paramsSerializer) {
17098
+ /*eslint no-param-reassign:0*/
17099
+ if (!params) {
17100
+ return url;
17101
+ }
17102
 
17103
+ var serializedParams;
17104
+ if (paramsSerializer) {
17105
+ serializedParams = paramsSerializer(params);
17106
+ } else if (utils.isURLSearchParams(params)) {
17107
+ serializedParams = params.toString();
17108
+ } else {
17109
+ var parts = [];
17110
 
17111
+ utils.forEach(params, function serialize(val, key) {
17112
+ if (val === null || typeof val === 'undefined') {
17113
+ return;
17114
+ }
17115
 
17116
+ if (utils.isArray(val)) {
17117
+ key = key + '[]';
17118
+ } else {
17119
+ val = [val];
17120
+ }
17121
 
17122
+ utils.forEach(val, function parseValue(v) {
17123
+ if (utils.isDate(v)) {
17124
+ v = v.toISOString();
17125
+ } else if (utils.isObject(v)) {
17126
+ v = JSON.stringify(v);
17127
+ }
17128
+ parts.push(encode(key) + '=' + encode(v));
17129
+ });
17130
+ });
17131
 
17132
+ serializedParams = parts.join('&');
17133
+ }
17134
 
17135
+ if (serializedParams) {
17136
+ var hashmarkIndex = url.indexOf('#');
17137
+ if (hashmarkIndex !== -1) {
17138
+ url = url.slice(0, hashmarkIndex);
17139
+ }
17140
 
17141
+ url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;
17142
+ }
17143
+
17144
+ return url;
17145
+ };
17146
 
17147
 
17148
  /***/ }),
17149
+ /* 193 */
17150
  /***/ (function(module, exports, __webpack_require__) {
17151
 
17152
+ "use strict";
17153
 
 
 
17154
 
17155
+ module.exports = function isCancel(value) {
17156
+ return !!(value && value.__CANCEL__);
17157
+ };
17158
 
17159
 
17160
  /***/ }),
17161
+ /* 194 */
17162
+ /***/ (function(module, exports, __webpack_require__) {
17163
 
17164
+ "use strict";
17165
+ /* WEBPACK VAR INJECTION */(function(process) {
17166
 
17167
+ var utils = __webpack_require__(33);
17168
+ var normalizeHeaderName = __webpack_require__(291);
 
 
 
 
 
 
 
 
17169
 
17170
+ var DEFAULT_CONTENT_TYPE = {
17171
+ 'Content-Type': 'application/x-www-form-urlencoded'
17172
+ };
17173
+
17174
+ function setContentTypeIfUnset(headers, value) {
17175
+ if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {
17176
+ headers['Content-Type'] = value;
17177
+ }
17178
  }
17179
 
17180
+ function getDefaultAdapter() {
17181
+ var adapter;
17182
+ if (typeof XMLHttpRequest !== 'undefined') {
17183
+ // For browsers use XHR adapter
17184
+ adapter = __webpack_require__(195);
17185
+ } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {
17186
+ // For node use HTTP adapter
17187
+ adapter = __webpack_require__(195);
17188
+ }
17189
+ return adapter;
17190
+ }
17191
 
17192
+ var defaults = {
17193
+ adapter: getDefaultAdapter(),
17194
 
17195
+ transformRequest: [function transformRequest(data, headers) {
17196
+ normalizeHeaderName(headers, 'Accept');
17197
+ normalizeHeaderName(headers, 'Content-Type');
17198
+ if (utils.isFormData(data) ||
17199
+ utils.isArrayBuffer(data) ||
17200
+ utils.isBuffer(data) ||
17201
+ utils.isStream(data) ||
17202
+ utils.isFile(data) ||
17203
+ utils.isBlob(data)
17204
+ ) {
17205
+ return data;
17206
+ }
17207
+ if (utils.isArrayBufferView(data)) {
17208
+ return data.buffer;
17209
+ }
17210
+ if (utils.isURLSearchParams(data)) {
17211
+ setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');
17212
+ return data.toString();
17213
+ }
17214
+ if (utils.isObject(data)) {
17215
+ setContentTypeIfUnset(headers, 'application/json;charset=utf-8');
17216
+ return JSON.stringify(data);
17217
+ }
17218
+ return data;
17219
+ }],
17220
 
17221
+ transformResponse: [function transformResponse(data) {
17222
+ /*eslint no-param-reassign:0*/
17223
+ if (typeof data === 'string') {
17224
+ try {
17225
+ data = JSON.parse(data);
17226
+ } catch (e) { /* Ignore */ }
17227
+ }
17228
+ return data;
17229
+ }],
17230
 
17231
+ /**
17232
+ * A timeout in milliseconds to abort a request. If set to 0 (default) a
17233
+ * timeout is not created.
17234
+ */
17235
+ timeout: 0,
17236
 
17237
+ xsrfCookieName: 'XSRF-TOKEN',
17238
+ xsrfHeaderName: 'X-XSRF-TOKEN',
17239
 
17240
+ maxContentLength: -1,
17241
+ maxBodyLength: -1,
17242
 
17243
+ validateStatus: function validateStatus(status) {
17244
+ return status >= 200 && status < 300;
17245
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17246
  };
17247
 
17248
+ defaults.headers = {
17249
+ common: {
17250
+ 'Accept': 'application/json, text/plain, */*'
17251
+ }
17252
+ };
 
17253
 
17254
+ utils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {
17255
+ defaults.headers[method] = {};
17256
+ });
17257
 
17258
+ utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
17259
+ defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);
17260
+ });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17261
 
17262
+ module.exports = defaults;
17263
 
17264
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(234)))
17265
 
17266
  /***/ }),
17267
+ /* 195 */
17268
  /***/ (function(module, exports, __webpack_require__) {
17269
 
17270
+ "use strict";
 
 
17271
 
 
 
17272
 
17273
+ var utils = __webpack_require__(33);
17274
+ var settle = __webpack_require__(292);
17275
+ var cookies = __webpack_require__(294);
17276
+ var buildURL = __webpack_require__(192);
17277
+ var buildFullPath = __webpack_require__(295);
17278
+ var parseHeaders = __webpack_require__(298);
17279
+ var isURLSameOrigin = __webpack_require__(299);
17280
+ var createError = __webpack_require__(196);
 
 
 
 
 
 
 
 
 
 
17281
 
17282
+ module.exports = function xhrAdapter(config) {
17283
+ return new Promise(function dispatchXhrRequest(resolve, reject) {
17284
+ var requestData = config.data;
17285
+ var requestHeaders = config.headers;
17286
 
17287
+ if (utils.isFormData(requestData)) {
17288
+ delete requestHeaders['Content-Type']; // Let the browser set it
17289
+ }
17290
 
17291
+ var request = new XMLHttpRequest();
 
 
17292
 
17293
+ // HTTP basic authentication
17294
+ if (config.auth) {
17295
+ var username = config.auth.username || '';
17296
+ var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';
17297
+ requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);
17298
+ }
17299
 
17300
+ var fullPath = buildFullPath(config.baseURL, config.url);
17301
+ request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);
17302
 
17303
+ // Set the request timeout in MS
17304
+ request.timeout = config.timeout;
 
 
 
 
 
 
 
 
 
17305
 
17306
+ // Listen for ready state
17307
+ request.onreadystatechange = function handleLoad() {
17308
+ if (!request || request.readyState !== 4) {
17309
+ return;
17310
+ }
17311
 
17312
+ // The request errored out and we didn't get a response, this will be
17313
+ // handled by onerror instead
17314
+ // With one exception: request that using file: protocol, most browsers
17315
+ // will return status as 0 even though it's a successful request
17316
+ if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {
17317
+ return;
17318
+ }
17319
 
17320
+ // Prepare the response
17321
+ var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;
17322
+ var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;
17323
+ var response = {
17324
+ data: responseData,
17325
+ status: request.status,
17326
+ statusText: request.statusText,
17327
+ headers: responseHeaders,
17328
+ config: config,
17329
+ request: request
17330
+ };
17331
 
17332
+ settle(resolve, reject, response);
 
 
17333
 
17334
+ // Clean up request
17335
+ request = null;
17336
+ };
 
 
 
17337
 
17338
+ // Handle browser request cancellation (as opposed to a manual cancellation)
17339
+ request.onabort = function handleAbort() {
17340
+ if (!request) {
17341
+ return;
17342
+ }
17343
 
17344
+ reject(createError('Request aborted', config, 'ECONNABORTED', request));
 
 
17345
 
17346
+ // Clean up request
17347
+ request = null;
17348
+ };
 
 
 
17349
 
17350
+ // Handle low level network errors
17351
+ request.onerror = function handleError() {
17352
+ // Real errors are hidden from us by the browser
17353
+ // onerror should only fire if it's a network error
17354
+ reject(createError('Network Error', config, null, request));
17355
 
17356
+ // Clean up request
17357
+ request = null;
17358
+ };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17359
 
17360
+ // Handle timeout
17361
+ request.ontimeout = function handleTimeout() {
17362
+ var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';
17363
+ if (config.timeoutErrorMessage) {
17364
+ timeoutErrorMessage = config.timeoutErrorMessage;
17365
+ }
17366
+ reject(createError(timeoutErrorMessage, config, 'ECONNABORTED',
17367
+ request));
17368
 
17369
+ // Clean up request
17370
+ request = null;
17371
+ };
17372
 
17373
+ // Add xsrf header
17374
+ // This is only done if running in a standard browser environment.
17375
+ // Specifically not if we're in a web worker, or react-native.
17376
+ if (utils.isStandardBrowserEnv()) {
17377
+ // Add xsrf header
17378
+ var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?
17379
+ cookies.read(config.xsrfCookieName) :
17380
+ undefined;
17381
 
17382
+ if (xsrfValue) {
17383
+ requestHeaders[config.xsrfHeaderName] = xsrfValue;
17384
+ }
17385
+ }
17386
 
17387
+ // Add headers to the request
17388
+ if ('setRequestHeader' in request) {
17389
+ utils.forEach(requestHeaders, function setRequestHeader(val, key) {
17390
+ if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {
17391
+ // Remove Content-Type if data is undefined
17392
+ delete requestHeaders[key];
17393
+ } else {
17394
+ // Otherwise add header to the request
17395
+ request.setRequestHeader(key, val);
17396
+ }
17397
+ });
17398
+ }
17399
 
17400
+ // Add withCredentials to request if needed
17401
+ if (!utils.isUndefined(config.withCredentials)) {
17402
+ request.withCredentials = !!config.withCredentials;
17403
+ }
17404
 
17405
+ // Add responseType to request if needed
17406
+ if (config.responseType) {
17407
+ try {
17408
+ request.responseType = config.responseType;
17409
+ } catch (e) {
17410
+ // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.
17411
+ // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.
17412
+ if (config.responseType !== 'json') {
17413
+ throw e;
17414
+ }
17415
+ }
17416
+ }
17417
 
17418
+ // Handle progress if needed
17419
+ if (typeof config.onDownloadProgress === 'function') {
17420
+ request.addEventListener('progress', config.onDownloadProgress);
17421
+ }
17422
 
17423
+ // Not all browsers support upload events
17424
+ if (typeof config.onUploadProgress === 'function' && request.upload) {
17425
+ request.upload.addEventListener('progress', config.onUploadProgress);
17426
+ }
17427
 
17428
+ if (config.cancelToken) {
17429
+ // Handle cancellation
17430
+ config.cancelToken.promise.then(function onCanceled(cancel) {
17431
+ if (!request) {
17432
+ return;
17433
+ }
17434
 
17435
+ request.abort();
17436
+ reject(cancel);
17437
+ // Clean up request
17438
+ request = null;
17439
+ });
17440
+ }
17441
 
17442
+ if (!requestData) {
17443
+ requestData = null;
17444
+ }
 
 
 
 
 
17445
 
17446
+ // Send the request
17447
+ request.send(requestData);
 
 
17448
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
17449
  };
17450
 
 
 
17451
 
17452
  /***/ }),
17453
+ /* 196 */
17454
+ /***/ (function(module, exports, __webpack_require__) {
17455
 
17456
+ "use strict";
17457
 
17458
 
17459
+ var enhanceError = __webpack_require__(293);
 
 
17460
 
17461
+ /**
17462
+ * Create an Error with the specified message, config, error code, request and response.
17463
+ *
17464
+ * @param {string} message The error message.
17465
+ * @param {Object} config The config.
17466
+ * @param {string} [code] The error code (for example, 'ECONNABORTED').
17467
+ * @param {Object} [request] The request.
17468
+ * @param {Object} [response] The response.
17469
+ * @returns {Error} The created error.
17470
+ */
17471
+ module.exports = function createError(message, config, code, request, response) {
17472
+ var error = new Error(message);
17473
+ return enhanceError(error, config, code, request, response);
17474
  };
17475
 
17476
 
17477
  /***/ }),
17478
+ /* 197 */
17479
+ /***/ (function(module, exports, __webpack_require__) {
17480
 
17481
  "use strict";
 
 
 
 
 
 
 
17482
 
17483
 
17484
+ var utils = __webpack_require__(33);
17485
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17486
  /**
17487
+ * Config-specific merge-function which creates a new config-object
17488
+ * by merging two configuration objects together.
17489
+ *
17490
+ * @param {Object} config1
17491
+ * @param {Object} config2
17492
+ * @returns {Object} New object resulting from merging config2 to config1
17493
  */
17494
+ module.exports = function mergeConfig(config1, config2) {
17495
+ // eslint-disable-next-line no-param-reassign
17496
+ config2 = config2 || {};
17497
+ var config = {};
17498
 
17499
+ var valueFromConfig2Keys = ['url', 'method', 'data'];
17500
+ var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params'];
17501
+ var defaultToConfig2Keys = [
17502
+ 'baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer',
17503
+ 'timeout', 'timeoutMessage', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',
17504
+ 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'decompress',
17505
+ 'maxContentLength', 'maxBodyLength', 'maxRedirects', 'transport', 'httpAgent',
17506
+ 'httpsAgent', 'cancelToken', 'socketPath', 'responseEncoding'
17507
+ ];
17508
+ var directMergeKeys = ['validateStatus'];
17509
 
17510
+ function getMergedValue(target, source) {
17511
+ if (utils.isPlainObject(target) && utils.isPlainObject(source)) {
17512
+ return utils.merge(target, source);
17513
+ } else if (utils.isPlainObject(source)) {
17514
+ return utils.merge({}, source);
17515
+ } else if (utils.isArray(source)) {
17516
+ return source.slice();
17517
+ }
17518
+ return source;
17519
  }
17520
 
17521
+ function mergeDeepProperties(prop) {
17522
+ if (!utils.isUndefined(config2[prop])) {
17523
+ config[prop] = getMergedValue(config1[prop], config2[prop]);
17524
+ } else if (!utils.isUndefined(config1[prop])) {
17525
+ config[prop] = getMergedValue(undefined, config1[prop]);
17526
+ }
17527
  }
17528
 
17529
+ utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {
17530
+ if (!utils.isUndefined(config2[prop])) {
17531
+ config[prop] = getMergedValue(undefined, config2[prop]);
17532
+ }
17533
+ });
 
 
 
 
17534
 
17535
+ utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);
17536
 
17537
+ utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {
17538
+ if (!utils.isUndefined(config2[prop])) {
17539
+ config[prop] = getMergedValue(undefined, config2[prop]);
17540
+ } else if (!utils.isUndefined(config1[prop])) {
17541
+ config[prop] = getMergedValue(undefined, config1[prop]);
17542
+ }
17543
+ });
17544
 
17545
+ utils.forEach(directMergeKeys, function merge(prop) {
17546
+ if (prop in config2) {
17547
+ config[prop] = getMergedValue(config1[prop], config2[prop]);
17548
+ } else if (prop in config1) {
17549
+ config[prop] = getMergedValue(undefined, config1[prop]);
17550
+ }
17551
+ });
 
 
17552
 
17553
+ var axiosKeys = valueFromConfig2Keys
17554
+ .concat(mergeDeepPropertiesKeys)
17555
+ .concat(defaultToConfig2Keys)
17556
+ .concat(directMergeKeys);
17557
 
17558
+ var otherKeys = Object
17559
+ .keys(config1)
17560
+ .concat(Object.keys(config2))
17561
+ .filter(function filterAxiosKeys(key) {
17562
+ return axiosKeys.indexOf(key) === -1;
17563
+ });
17564
 
17565
+ utils.forEach(otherKeys, mergeDeepProperties);
 
 
 
 
 
 
 
 
 
 
17566
 
17567
+ return config;
17568
+ };
 
 
 
 
 
17569
 
 
 
 
 
 
 
 
17570
 
17571
+ /***/ }),
17572
+ /* 198 */
17573
+ /***/ (function(module, exports, __webpack_require__) {
17574
 
17575
+ "use strict";
 
 
 
 
 
 
 
17576
 
17577
 
 
 
17578
  /**
17579
+ * A `Cancel` is an object that is thrown when an operation is canceled.
17580
+ *
17581
+ * @class
17582
+ * @param {string=} message The message.
17583
  */
17584
+ function Cancel(message) {
17585
+ this.message = message;
 
 
 
 
 
 
 
 
 
 
17586
  }
17587
 
17588
+ Cancel.prototype.toString = function toString() {
17589
+ return 'Cancel' + (this.message ? ': ' + this.message : '');
17590
+ };
17591
 
17592
+ Cancel.prototype.__CANCEL__ = true;
 
 
 
17593
 
17594
+ module.exports = Cancel;
17595
 
 
 
 
 
 
 
17596
 
17597
  /***/ }),
17598
+ /* 199 */
17599
+ /***/ (function(module, exports, __webpack_require__) {
17600
 
17601
+ /* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
17602
+ var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
17603
 
17604
+ module.exports = freeGlobal;
17605
+
17606
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(39)))
17607
 
17608
  /***/ }),
17609
+ /* 200 */
17610
+ /***/ (function(module, exports, __webpack_require__) {
17611
 
17612
+ var mapCacheClear = __webpack_require__(323),
17613
+ mapCacheDelete = __webpack_require__(330),
17614
+ mapCacheGet = __webpack_require__(332),
17615
+ mapCacheHas = __webpack_require__(333),
17616
+ mapCacheSet = __webpack_require__(334);
17617
 
17618
+ /**
17619
+ * Creates a map cache object to store key-value pairs.
17620
+ *
17621
+ * @private
17622
+ * @constructor
17623
+ * @param {Array} [entries] The key-value pairs to cache.
17624
+ */
17625
+ function MapCache(entries) {
17626
+ var index = -1,
17627
+ length = entries == null ? 0 : entries.length;
17628
 
17629
+ this.clear();
17630
+ while (++index < length) {
17631
+ var entry = entries[index];
17632
+ this.set(entry[0], entry[1]);
17633
+ }
17634
+ }
17635
 
17636
+ // Add methods to `MapCache`.
17637
+ MapCache.prototype.clear = mapCacheClear;
17638
+ MapCache.prototype['delete'] = mapCacheDelete;
17639
+ MapCache.prototype.get = mapCacheGet;
17640
+ MapCache.prototype.has = mapCacheHas;
17641
+ MapCache.prototype.set = mapCacheSet;
17642
 
17643
+ module.exports = MapCache;
 
17644
 
 
 
17645
 
17646
+ /***/ }),
17647
+ /* 201 */
17648
+ /***/ (function(module, exports, __webpack_require__) {
17649
+
17650
+ var baseAssignValue = __webpack_require__(139),
17651
+ eq = __webpack_require__(90);
17652
 
17653
  /**
17654
+ * This function is like `assignValue` except that it doesn't assign
17655
+ * `undefined` values.
17656
+ *
17657
+ * @private
17658
+ * @param {Object} object The object to modify.
17659
+ * @param {string} key The key of the property to assign.
17660
+ * @param {*} value The value to assign.
17661
  */
17662
+ function assignMergeValue(object, key, value) {
17663
+ if ((value !== undefined && !eq(object[key], value)) ||
17664
+ (value === undefined && !(key in object))) {
17665
+ baseAssignValue(object, key, value);
 
 
 
 
 
 
 
 
 
17666
  }
17667
  }
 
 
 
 
 
 
 
17668
 
17669
+ module.exports = assignMergeValue;
 
 
 
 
 
17670
 
 
 
17671
 
17672
+ /***/ }),
17673
+ /* 202 */
17674
+ /***/ (function(module, exports, __webpack_require__) {
 
 
17675
 
17676
+ var getNative = __webpack_require__(91);
 
 
17677
 
17678
+ var defineProperty = (function() {
17679
+ try {
17680
+ var func = getNative(Object, 'defineProperty');
17681
+ func({}, '', {});
17682
+ return func;
17683
+ } catch (e) {}
17684
+ }());
17685
 
17686
+ module.exports = defineProperty;
17687
 
 
17688
 
17689
+ /***/ }),
17690
+ /* 203 */
17691
+ /***/ (function(module, exports, __webpack_require__) {
17692
 
17693
+ var Uint8Array = __webpack_require__(239);
17694
 
17695
+ /**
17696
+ * Creates a clone of `arrayBuffer`.
17697
+ *
17698
+ * @private
17699
+ * @param {ArrayBuffer} arrayBuffer The array buffer to clone.
17700
+ * @returns {ArrayBuffer} Returns the cloned array buffer.
17701
+ */
17702
+ function cloneArrayBuffer(arrayBuffer) {
17703
+ var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
17704
+ new Uint8Array(result).set(new Uint8Array(arrayBuffer));
17705
+ return result;
17706
+ }
17707
 
17708
+ module.exports = cloneArrayBuffer;
17709
 
 
 
 
 
17710
 
17711
+ /***/ }),
17712
+ /* 204 */
17713
+ /***/ (function(module, exports) {
 
17714
 
17715
+ /**
17716
+ * The base implementation of `_.unary` without support for storing metadata.
17717
+ *
17718
+ * @private
17719
+ * @param {Function} func The function to cap arguments for.
17720
+ * @returns {Function} Returns the new capped function.
17721
+ */
17722
+ function baseUnary(func) {
17723
+ return function(value) {
17724
+ return func(value);
17725
+ };
17726
+ }
17727
 
17728
+ module.exports = baseUnary;
 
 
 
 
 
 
17729
 
 
 
 
17730
 
17731
+ /***/ }),
17732
+ /* 205 */
17733
+ /***/ (function(module, exports, __webpack_require__) {
17734
 
17735
+ /* WEBPACK VAR INJECTION */(function(module) {var freeGlobal = __webpack_require__(199);
 
 
17736
 
17737
+ /** Detect free variable `exports`. */
17738
+ var freeExports = true && exports && !exports.nodeType && exports;
 
 
 
 
17739
 
17740
+ /** Detect free variable `module`. */
17741
+ var freeModule = freeExports && typeof module == 'obj