Gutenberg Blocks – ACF Blocks Suite - Version 2.6.0

Version Description

  • New: Access to the Extendify template and pattern library
Download this release

Release Info

Developer munirkamal
Plugin Icon 128x128 Gutenberg Blocks – ACF Blocks Suite
Version 2.6.0
Comparing to
See all releases

Code changes from version 2.5.1 to 2.6.0

Files changed (131) hide show
  1. acf-blocks.php +52 -4
  2. {block-templates → acfblocks-templates}/free/acfb-accordion.php +0 -2
  3. {block-templates → acfblocks-templates}/free/acfb-business-hours.php +0 -2
  4. {block-templates → acfblocks-templates}/free/acfb-clicktotweet.php +0 -2
  5. {block-templates → acfblocks-templates}/free/acfb-counternumber.php +0 -2
  6. {block-templates → acfblocks-templates}/free/acfb-divider.php +0 -2
  7. {block-templates → acfblocks-templates}/free/acfb-facebook-page.php +0 -0
  8. {block-templates → acfblocks-templates}/free/acfb-fb-like-button.php +0 -0
  9. {block-templates → acfblocks-templates}/free/acfb-image-slider.php +0 -2
  10. {block-templates → acfblocks-templates}/free/acfb-meta-display.php +0 -2
  11. {block-templates → acfblocks-templates}/free/acfb-multibuttons.php +0 -2
  12. {block-templates → acfblocks-templates}/free/acfb-photocollage.php +0 -0
  13. {block-templates → acfblocks-templates}/free/acfb-posts.php +0 -2
  14. {block-templates → acfblocks-templates}/free/acfb-pricelist.php +0 -2
  15. {block-templates → acfblocks-templates}/free/acfb-pricingbox.php +0 -2
  16. {block-templates → acfblocks-templates}/free/acfb-progressbar.php +0 -2
  17. {block-templates → acfblocks-templates}/free/acfb-random-image.php +0 -0
  18. {block-templates → acfblocks-templates}/free/acfb-scrollable-image.php +0 -0
  19. {block-templates → acfblocks-templates}/free/acfb-socialsharing.php +0 -2
  20. {block-templates → acfblocks-templates}/free/acfb-starrating.php +0 -3
  21. {block-templates → acfblocks-templates}/free/acfb-tabs.php +0 -3
  22. {block-templates → acfblocks-templates}/free/acfb-team.php +0 -2
  23. {block-templates → acfblocks-templates}/free/acfb-testimonial.php +0 -2
  24. {block-templates → acfblocks-templates}/free/acfb-toggle.php +0 -2
  25. block-templates/functions/function.php +0 -56
  26. extendify-sdk/.editorconfig +16 -0
  27. extendify-sdk/.eslintignore +3 -0
  28. extendify-sdk/.eslintrc.js +82 -0
  29. extendify-sdk/.github/ISSUE_TEMPLATE/bug_report.md +39 -0
  30. extendify-sdk/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  31. extendify-sdk/.github/workflows/build-and-test.yml +62 -0
  32. extendify-sdk/.github/workflows/build-development-zip.yml +70 -0
  33. extendify-sdk/.github/workflows/force-production-on-main.yml +66 -0
  34. extendify-sdk/.gitignore +10 -0
  35. extendify-sdk/.phpcs.xml.dist +179 -0
  36. extendify-sdk/.svgrrc +20 -0
  37. extendify-sdk/app/Admin.php +111 -0
  38. extendify-sdk/app/ApiRouter.php +150 -0
  39. extendify-sdk/app/App.php +93 -0
  40. extendify-sdk/app/Controllers/CategoryController.php +42 -0
  41. extendify-sdk/app/Controllers/PluginController.php +61 -0
  42. extendify-sdk/app/Controllers/TemplateController.php +53 -0
  43. extendify-sdk/app/Http.php +145 -0
  44. extendify-sdk/app/Plugin.php +335 -0
  45. extendify-sdk/app/User.php +108 -0
  46. extendify-sdk/bootstrap.php +30 -0
  47. extendify-sdk/composer.json +16 -0
  48. extendify-sdk/composer.lock +2456 -0
  49. extendify-sdk/config.json +6 -0
  50. extendify-sdk/extendify-sdk.php +55 -0
  51. extendify-sdk/loader.php +61 -0
  52. extendify-sdk/package-lock.json +16573 -0
  53. extendify-sdk/package.json +57 -0
  54. extendify-sdk/public/.gitkeep +0 -0
  55. extendify-sdk/public/build/extendify-sdk.css +2 -0
  56. extendify-sdk/public/build/extendify-sdk.js +2 -0
  57. extendify-sdk/public/build/extendify-sdk.js.LICENSE.txt +5 -0
  58. extendify-sdk/readme.md +15 -0
  59. extendify-sdk/readme.txt +5 -0
  60. extendify-sdk/routes/api.php +26 -0
  61. extendify-sdk/src/gutenberg/api/Categories.js +9 -0
  62. extendify-sdk/src/gutenberg/api/Plugins.js +23 -0
  63. extendify-sdk/src/gutenberg/api/Templates.js +25 -0
  64. extendify-sdk/src/gutenberg/api/index.js +65 -0
  65. extendify-sdk/src/gutenberg/assets/icons/index.js +51 -0
  66. extendify-sdk/src/gutenberg/base/templates-library/index.js +47 -0
  67. extendify-sdk/src/gutenberg/components/library-auth/api-form.js +89 -0
  68. extendify-sdk/src/gutenberg/components/library-auth/index.js +67 -0
  69. extendify-sdk/src/gutenberg/components/library-auth/style.scss +24 -0
  70. extendify-sdk/src/gutenberg/components/library-content/index.js +83 -0
  71. extendify-sdk/src/gutenberg/components/library-content/style.scss +49 -0
  72. extendify-sdk/src/gutenberg/components/library-imports-counter/index.js +38 -0
  73. extendify-sdk/src/gutenberg/components/library-imports-counter/style.scss +0 -0
  74. extendify-sdk/src/gutenberg/components/library-load-more/index.js +113 -0
  75. extendify-sdk/src/gutenberg/components/library-load-more/style.scss +4 -0
  76. extendify-sdk/src/gutenberg/components/library-modal/index.js +163 -0
  77. extendify-sdk/src/gutenberg/components/library-modal/style.scss +66 -0
  78. extendify-sdk/src/gutenberg/components/library-not-found/index.js +37 -0
  79. extendify-sdk/src/gutenberg/components/library-not-found/style.scss +5 -0
  80. extendify-sdk/src/gutenberg/components/library-search/index.js +45 -0
  81. extendify-sdk/src/gutenberg/components/library-sidebar-section/index.js +18 -0
  82. extendify-sdk/src/gutenberg/components/library-sidebar-section/style.scss +10 -0
  83. extendify-sdk/src/gutenberg/components/library-sidebar/index.js +227 -0
  84. extendify-sdk/src/gutenberg/components/library-sidebar/style.scss +44 -0
  85. extendify-sdk/src/gutenberg/components/library-template-preview/index.js +192 -0
  86. extendify-sdk/src/gutenberg/components/library-template-preview/style.scss +71 -0
  87. extendify-sdk/src/gutenberg/components/library-template/index.js +89 -0
  88. extendify-sdk/src/gutenberg/components/library-template/style.scss +27 -0
  89. extendify-sdk/src/gutenberg/functions/index.js +112 -0
  90. extendify-sdk/src/gutenberg/global/index.js +1 -0
  91. extendify-sdk/src/gutenberg/listeners/index.js +5 -0
  92. extendify-sdk/src/gutenberg/listeners/softerror-encountered.js +28 -0
  93. extendify-sdk/src/gutenberg/listeners/template-inserted.js +9 -0
  94. extendify-sdk/src/gutenberg/middleware/hasPluginsActivated/ActivatePluginsModal.js +64 -0
  95. extendify-sdk/src/gutenberg/middleware/hasPluginsActivated/ActivatingModal.js +70 -0
  96. extendify-sdk/src/gutenberg/middleware/hasPluginsActivated/index.js +22 -0
  97. extendify-sdk/src/gutenberg/middleware/hasRequiredPlugins/InstallingModal.js +69 -0
  98. extendify-sdk/src/gutenberg/middleware/hasRequiredPlugins/RequiredPluginsModal.js +69 -0
  99. extendify-sdk/src/gutenberg/middleware/hasRequiredPlugins/index.js +22 -0
  100. extendify-sdk/src/gutenberg/middleware/helpers.js +63 -0
  101. extendify-sdk/src/gutenberg/middleware/index.js +49 -0
  102. extendify-sdk/src/gutenberg/middleware/needsPageReload/ReloadRequiredModal.js +46 -0
  103. extendify-sdk/src/gutenberg/middleware/needsPageReload/index.js +18 -0
  104. extendify-sdk/src/gutenberg/plugins/header-btn/index.js +65 -0
  105. extendify-sdk/src/gutenberg/plugins/header-btn/style.scss +10 -0
  106. extendify-sdk/src/gutenberg/plugins/index.js +2 -0
  107. extendify-sdk/src/gutenberg/plugins/more-menu-btn/index.js +64 -0
  108. extendify-sdk/src/gutenberg/plugins/more-menu-btn/style.scss +5 -0
  109. extendify-sdk/src/gutenberg/scss/_mixins.scss +62 -0
  110. extendify-sdk/src/gutenberg/scss/_variables.scss +0 -0
  111. extendify-sdk/src/gutenberg/store/actions/index.js +118 -0
  112. extendify-sdk/src/gutenberg/store/controls/index.js +9 -0
  113. extendify-sdk/src/gutenberg/store/index.js +42 -0
  114. extendify-sdk/src/gutenberg/store/reducer/index.js +167 -0
  115. extendify-sdk/src/gutenberg/store/resolvers/index.js +25 -0
  116. extendify-sdk/src/gutenberg/store/selectors/index.js +138 -0
  117. extendify-sdk/src/index.js +25 -0
  118. extendify-sdk/src/style.scss +47 -0
  119. extendify-sdk/vendor/autoload.php +7 -0
  120. extendify-sdk/vendor/composer/ClassLoader.php +445 -0
  121. extendify-sdk/vendor/composer/InstalledVersions.php +654 -0
  122. extendify-sdk/vendor/composer/LICENSE +21 -0
  123. extendify-sdk/vendor/composer/autoload_classmap.php +9 -0
  124. extendify-sdk/vendor/composer/autoload_namespaces.php +9 -0
  125. extendify-sdk/vendor/composer/autoload_psr4.php +10 -0
  126. extendify-sdk/vendor/composer/autoload_real.php +55 -0
  127. extendify-sdk/vendor/composer/autoload_static.php +31 -0
  128. extendify-sdk/vendor/composer/installed.json +1 -0
  129. extendify-sdk/vendor/composer/installed.php +395 -0
  130. extendify-sdk/webpack.config.js +140 -0
  131. readme.txt +25 -4
acf-blocks.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: ACF Blocks Suite
5
  * Plugin URI: https://acfblocks.com/
6
  * Description: Supercharge your Gutenberg editor with high quality beautiful WordPress blocks. Ready-to-use ACF Blocks!
7
- * Version: 2.5.1
8
  * Author: munirkamal
9
  * Author URI: https://munirkamal.wordpress.com
10
  * License: GPL2
@@ -15,6 +15,7 @@
15
  if ( !defined( 'ABSPATH' ) ) {
16
  exit;
17
  }
 
18
 
19
  if ( function_exists( 'acfb_fs' ) ) {
20
  acfb_fs()->set_basename( false, __FILE__ );
@@ -402,12 +403,12 @@ if ( function_exists( 'acfb_fs' ) ) {
402
  $acfb_temp = str_replace( "acf/", "", $block['name'] );
403
  // Look for a file in theme
404
 
405
- if ( $theme_template = locate_template( 'block-templates/' . $acfb_temp . '.php' ) ) {
406
  require $theme_template;
407
  } else {
408
  // Nothing found, let's look in our plugin
409
- $free_template = plugin_dir_path( __FILE__ ) . 'block-templates/free/' . $acfb_temp . '.php';
410
- $pro_template = plugin_dir_path( __FILE__ ) . 'block-templates/pro/' . $acfb_temp . '.php';
411
  if ( file_exists( $free_template ) ) {
412
  require $free_template;
413
  }
@@ -712,6 +713,53 @@ if ( function_exists( 'acfb_fs' ) ) {
712
  // Adding .json extension
713
  return $acfb_mime_types;
714
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
715
 
716
  }
717
 
4
  * Plugin Name: ACF Blocks Suite
5
  * Plugin URI: https://acfblocks.com/
6
  * Description: Supercharge your Gutenberg editor with high quality beautiful WordPress blocks. Ready-to-use ACF Blocks!
7
+ * Version: 2.6.0
8
  * Author: munirkamal
9
  * Author URI: https://munirkamal.wordpress.com
10
  * License: GPL2
15
  if ( !defined( 'ABSPATH' ) ) {
16
  exit;
17
  }
18
+ require_once plugin_dir_path( __FILE__ ) . 'extendify-sdk/loader.php';
19
 
20
  if ( function_exists( 'acfb_fs' ) ) {
21
  acfb_fs()->set_basename( false, __FILE__ );
403
  $acfb_temp = str_replace( "acf/", "", $block['name'] );
404
  // Look for a file in theme
405
 
406
+ if ( $theme_template = locate_template( 'acfblocks-templates/' . $acfb_temp . '.php' ) ) {
407
  require $theme_template;
408
  } else {
409
  // Nothing found, let's look in our plugin
410
+ $free_template = plugin_dir_path( __FILE__ ) . 'acfblocks-templates/free/' . $acfb_temp . '.php';
411
+ $pro_template = plugin_dir_path( __FILE__ ) . 'acfblocks-templates/pro/' . $acfb_temp . '.php';
412
  if ( file_exists( $free_template ) ) {
413
  require $free_template;
414
  }
713
  // Adding .json extension
714
  return $acfb_mime_types;
715
  }
716
+
717
+ // Functions Code
718
+ function parse_link( $fields )
719
+ {
720
+ $acfb_families = array();
721
+ foreach ( $fields as $key => $field ) {
722
+
723
+ if ( is_array( $field ) and array_key_exists( 'font_family', $field ) ) {
724
+ $acfb_font_family = $field['font_family'];
725
+ if ( $acfb_font_family !== "" and $acfb_font_family !== NULL and $acfb_font_family !== 'default' ) {
726
+ $acfb_families[] = $acfb_font_family;
727
+ }
728
+ }
729
+
730
+ }
731
+
732
+ if ( !empty($acfb_families) ) {
733
+ $family_merges = join( '&family=', $acfb_families );
734
+ return "<link href='https://fonts.googleapis.com/css2?family={$family_merges}' rel='stylesheet'>";
735
+ } else {
736
+ return "";
737
+ }
738
+
739
+ }
740
+
741
+ function get_family( $family )
742
+ {
743
+ return str_replace( '+', " ", $family );
744
+ }
745
+
746
+ function getCustomField( $field_name, $post_id )
747
+ {
748
+ $selected_field = get_field( $field_name );
749
+ $selected_field_data = json_decode( $selected_field, true );
750
+ return [
751
+ 'type' => $selected_field_data['type'],
752
+ 'value' => get_field( $selected_field_data['name'], $post_id ),
753
+ ];
754
+ }
755
+
756
+ // retrieves the attachment ID from the file URL for acf meta gallery
757
+ function acfb_meta_gallery_get_image_id( $acfb_meta_gallery_image_url )
758
+ {
759
+ global $wpdb ;
760
+ $attachment = $wpdb->get_col( $wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE guid='%s';", $acfb_meta_gallery_image_url ) );
761
+ return $attachment[0];
762
+ }
763
 
764
  }
765
 
{block-templates → acfblocks-templates}/free/acfb-accordion.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_accordion_title_typo'),
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_accordion_title_typo'),
{block-templates → acfblocks-templates}/free/acfb-business-hours.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_bh_text_typo')
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_bh_text_typo')
{block-templates → acfblocks-templates}/free/acfb-clicktotweet.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_click_to_tweet_text_typo'),
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_click_to_tweet_text_typo'),
{block-templates → acfblocks-templates}/free/acfb-counternumber.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_counter_number_typo'),
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_counter_number_typo'),
{block-templates → acfblocks-templates}/free/acfb-divider.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  $uid = $block['id'];
5
 
6
  $className = 'acfb_divider_block';
1
  <?php
 
 
2
  $uid = $block['id'];
3
 
4
  $className = 'acfb_divider_block';
{block-templates → acfblocks-templates}/free/acfb-facebook-page.php RENAMED
File without changes
{block-templates → acfblocks-templates}/free/acfb-fb-like-button.php RENAMED
File without changes
{block-templates → acfblocks-templates}/free/acfb-image-slider.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_slider_caption_typo')
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_slider_caption_typo')
{block-templates → acfblocks-templates}/free/acfb-meta-display.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  $acfb_meta_display_post_id = (int)get_field('post_id'); # hidden field in order to obtain post id
5
  $acfb_meta_field = getCustomField('acfb_meta_select_field', $acfb_meta_display_post_id);
6
 
1
  <?php
 
 
2
  $acfb_meta_display_post_id = (int)get_field('post_id'); # hidden field in order to obtain post id
3
  $acfb_meta_field = getCustomField('acfb_meta_select_field', $acfb_meta_display_post_id);
4
 
{block-templates → acfblocks-templates}/free/acfb-multibuttons.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_multibutton_text_typo')
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_multibutton_text_typo')
{block-templates → acfblocks-templates}/free/acfb-photocollage.php RENAMED
File without changes
{block-templates → acfblocks-templates}/free/acfb-posts.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_post_title_typo'),
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_post_title_typo'),
{block-templates → acfblocks-templates}/free/acfb-pricelist.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_price_list_title_typo'),
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_price_list_title_typo'),
{block-templates → acfblocks-templates}/free/acfb-pricingbox.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_pricingbox_title_typo'),
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_pricingbox_title_typo'),
{block-templates → acfblocks-templates}/free/acfb-progressbar.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_progressbar_text_typo'),
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_progressbar_text_typo'),
{block-templates → acfblocks-templates}/free/acfb-random-image.php RENAMED
File without changes
{block-templates → acfblocks-templates}/free/acfb-scrollable-image.php RENAMED
File without changes
{block-templates → acfblocks-templates}/free/acfb-socialsharing.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_social_button_text_typo')
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_social_button_text_typo')
{block-templates → acfblocks-templates}/free/acfb-starrating.php RENAMED
@@ -1,7 +1,4 @@
1
  <?php
2
-
3
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
4
-
5
  echo parse_link(
6
  array(
7
  get_field('acfb_rating_before_text_typo')
1
  <?php
 
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_rating_before_text_typo')
{block-templates → acfblocks-templates}/free/acfb-tabs.php RENAMED
@@ -1,7 +1,4 @@
1
  <?php
2
-
3
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
4
-
5
  echo parse_link(
6
  array(
7
  get_field('acfb_tab_title_typo'),
1
  <?php
 
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_tab_title_typo'),
{block-templates → acfblocks-templates}/free/acfb-team.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_team_name_typo'),
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_team_name_typo'),
{block-templates → acfblocks-templates}/free/acfb-testimonial.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_testimonial_text_typo'),
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_testimonial_text_typo'),
{block-templates → acfblocks-templates}/free/acfb-toggle.php RENAMED
@@ -1,6 +1,4 @@
1
  <?php
2
- require_once plugin_dir_path( __DIR__ ) . 'functions/function.php';
3
-
4
  echo parse_link(
5
  array(
6
  get_field('acfb_toggle_title_typo'),
1
  <?php
 
 
2
  echo parse_link(
3
  array(
4
  get_field('acfb_toggle_title_typo'),
block-templates/functions/function.php DELETED
@@ -1,56 +0,0 @@
1
- <?php
2
- function parse_link( $fields ) {
3
-
4
- $acfb_families = array();
5
-
6
-
7
- foreach ( $fields as $key => $field ) {
8
-
9
- if (is_array($field) and array_key_exists('font_family', $field) ) {
10
-
11
- $acfb_font_family = $field['font_family'];
12
-
13
- if ( $acfb_font_family !== "" and $acfb_font_family !== NULL and $acfb_font_family !== 'default' ) {
14
- $acfb_families[] = $acfb_font_family;
15
- }
16
-
17
- }
18
-
19
- }
20
-
21
- if (!empty($acfb_families)) {
22
- $family_merges = join('&family=', $acfb_families);
23
-
24
- return "<link href='https://fonts.googleapis.com/css2?family=$family_merges' rel='stylesheet'>";
25
-
26
- } else return "";
27
-
28
-
29
- }
30
-
31
-
32
- function get_family( $family ) {
33
- return str_replace('+', " ", $family);
34
- }
35
-
36
-
37
-
38
-
39
- function getCustomField($field_name, $post_id){
40
-
41
- $selected_field = get_field($field_name);
42
- $selected_field_data = json_decode($selected_field, true);
43
-
44
- return [
45
- 'type' => $selected_field_data['type'],
46
- 'value' => get_field($selected_field_data['name'], $post_id)
47
- ];
48
- }
49
-
50
-
51
- // retrieves the attachment ID from the file URL for acf meta gallery
52
- function acfb_meta_gallery_get_image_id($acfb_meta_gallery_image_url) {
53
- global $wpdb;
54
- $attachment = $wpdb->get_col($wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE guid='%s';", $acfb_meta_gallery_image_url ));
55
- return $attachment[0];
56
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
extendify-sdk/.editorconfig ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ root = true
2
+
3
+ [*]
4
+ charset = utf-8
5
+ end_of_line = lf
6
+ insert_final_newline = true
7
+ indent_style = space
8
+ indent_size = 4
9
+ trim_trailing_whitespace = true
10
+
11
+ [*.yml]
12
+ indent_style = space
13
+ indent_size = 2
14
+
15
+ [*.md]
16
+ trim_trailing_whitespace = false
extendify-sdk/.eslintignore ADDED
@@ -0,0 +1,3 @@
 
 
 
1
+ node_modules/*
2
+ vendor/*
3
+ public/build/*
extendify-sdk/.eslintrc.js ADDED
@@ -0,0 +1,82 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ module.exports = {
2
+ env: {
3
+ browser: true,
4
+ es2021: true,
5
+ jest: true,
6
+ },
7
+ extends: ['eslint:recommended', 'plugin:react/recommended', 'plugin:react-hooks/recommended'],
8
+ parserOptions: {
9
+ ecmaFeatures: {
10
+ jsx: true,
11
+ },
12
+ sourceType: 'module',
13
+ },
14
+ plugins: ['react'],
15
+ rules: {
16
+ indent: ['error', 4, {
17
+ SwitchCase: 1,
18
+ }],
19
+ quotes: ['error', 'single'],
20
+ 'comma-dangle': ['error', 'always-multiline'],
21
+ 'multiline-ternary': ['error', 'always'],
22
+ 'array-element-newline': ['error', 'consistent'],
23
+ 'no-constant-condition': ['error', {
24
+ checkLoops: false,
25
+ }],
26
+ 'space-before-function-paren': [
27
+ 'error',
28
+ {
29
+ anonymous: 'always',
30
+ named: 'never',
31
+ asyncArrow: 'always',
32
+ },
33
+ ],
34
+ 'react/react-in-jsx-scope': 'off',
35
+ 'function-paren-newline': [
36
+ 'error',
37
+ {
38
+ minItems: 3,
39
+ },
40
+ ],
41
+ 'quote-props': ['error', 'as-needed'],
42
+ 'object-curly-spacing': ['error', 'always'],
43
+ 'no-multiple-empty-lines': [
44
+ 'error',
45
+ {
46
+ max: 1,
47
+ },
48
+ ],
49
+ 'react/prop-types': 0, // TODO: Do we want this required?
50
+ 'lines-around-comment': [
51
+ 'error',
52
+ {
53
+ beforeBlockComment: true,
54
+ allowBlockStart: true,
55
+ },
56
+ ],
57
+ 'object-curly-newline': [
58
+ 'error',
59
+ {
60
+ ObjectExpression: {
61
+ minProperties: 1,
62
+ },
63
+ ObjectPattern: {
64
+ multiline: true,
65
+ },
66
+ ImportDeclaration: {
67
+ multiline: true,
68
+ minProperties: 3,
69
+ },
70
+ ExportDeclaration: {
71
+ multiline: true,
72
+ minProperties: 3,
73
+ },
74
+ },
75
+ ],
76
+ },
77
+ settings: {
78
+ react: {
79
+ version: 'detect',
80
+ },
81
+ },
82
+ }
extendify-sdk/.github/ISSUE_TEMPLATE/bug_report.md ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ name: Bug report
3
+ about: Create a report to help us improve
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Describe the bug**
11
+ A clear and concise description of what the bug is.
12
+
13
+ **To Reproduce**
14
+ Steps to reproduce the behavior:
15
+ 1. Go to '...'
16
+ 2. Click on '....'
17
+ 3. Scroll down to '....'
18
+ 4. See error
19
+
20
+ **Expected behavior**
21
+ A clear and concise description of what you expected to happen.
22
+
23
+ **Screenshots**
24
+ Provide a screenshot of the browser console showing any errors, if applicable ([instructions](https://support.airtable.com/hc/en-us/articles/232313848-How-to-open-the-developer-console)).
25
+ Also include any screenshots that demonstrate the issue more clearly.
26
+
27
+ **Desktop (please complete the following information):**
28
+ - OS: [e.g. iOS]
29
+ - Browser [e.g. chrome, safari]
30
+ - Version [e.g. 22]
31
+
32
+ **Smartphone (please complete the following information):**
33
+ - Device: [e.g. iPhone6]
34
+ - OS: [e.g. iOS8.1]
35
+ - Browser [e.g. stock browser, safari]
36
+ - Version [e.g. 22]
37
+
38
+ **Additional context**
39
+ Add any other context about the problem here.
extendify-sdk/.github/ISSUE_TEMPLATE/feature_request.md ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ name: Feature request
3
+ about: Suggest an idea for this project
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Is your feature request related to a problem? Please describe.**
11
+ A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12
+
13
+ **Describe the solution you'd like**
14
+ A clear and concise description of what you want to happen.
15
+
16
+ **Describe alternatives you've considered**
17
+ A clear and concise description of any alternative solutions or features you've considered.
18
+
19
+ **Additional context**
20
+ Add any other context or screenshots about the feature request here.
extendify-sdk/.github/workflows/build-and-test.yml ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: Build and test
2
+ on: [push, pull_request]
3
+ jobs:
4
+ # TODO: create another job for integration testing that includes Cypress, booting up WPO, etc
5
+ # Reference wp-cli: https://github.com/wp-cli/wp-cli/blob/master/.github/workflows/testing.yml
6
+ unit: #-------------------------------------------
7
+ name: PHP ${{ matrix.php }}
8
+ runs-on: ubuntu-latest
9
+ strategy:
10
+ fail-fast: false
11
+ matrix:
12
+ php: ['7.4']
13
+ steps:
14
+ - name: Check out source code
15
+ uses: actions/checkout@v2
16
+
17
+ - name: Setup PHP
18
+ uses: shivammathur/setup-php@v2
19
+ with:
20
+ php-version: '${{ matrix.php }}'
21
+ extensions: mysql, zip
22
+ coverage: none
23
+ tools: composer:v1, wp-cli, cs2pr, phpcs
24
+
25
+ - name: Get Composer cache directory
26
+ id: composer-cache
27
+ run: |
28
+ echo "::set-output name=dir::$(composer config cache-files-dir)"
29
+
30
+ - name: Use Composer cache
31
+ uses: actions/cache@master
32
+ with:
33
+ path: ${{ steps['composer-cache'].outputs.dir }}
34
+ key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
35
+ restore-keys: |
36
+ ${{ runner.os }}-composer-
37
+
38
+ - name: Install dependencies
39
+ run: composer install --prefer-dist --no-progress --no-suggest
40
+
41
+ - name: Install PHPCS
42
+ run: git clone -b master https://github.com/WordPress/WordPress-Coding-Standards.git ${{ github.workspace }}/wpcs
43
+
44
+ - name: PHPCS check
45
+ run: |
46
+ phpcs --config-set installed_paths ${{ github.workspace }}/vendor/phpcompatibility/phpcompatibility-wp/PHPCompatibilityWP,${{ github.workspace }}/vendor/phpcompatibility/php-compatibility/PHPCompatibility,${{ github.workspace }}/vendor/phpcompatibility/phpcompatibility-paragonie/PHPCompatibilityParagonieSodiumCompat,${{ github.workspace }}/vendor/phpcompatibility/phpcompatibility-paragonie/PHPCompatibilityParagonieRandomCompat,${{ github.workspace }}/wpcs
47
+ phpcs -i
48
+ phpcs -q --report=checkstyle . | cs2pr
49
+
50
+ - name: Install NPM packages
51
+ run: npm ci
52
+ env:
53
+ CYPRESS_INSTALL_BINARY: "0"
54
+
55
+ - name: Build assets
56
+ run: npm run build
57
+
58
+ - name: Test JavaScript
59
+ run: npm run test
60
+
61
+ - name: Lint JavaScript
62
+ run: npm run lint
extendify-sdk/.github/workflows/build-development-zip.yml ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: Build development zip file
2
+ on: push
3
+ jobs:
4
+ build:
5
+ name: Build test, and zip
6
+ runs-on: ubuntu-latest
7
+ strategy:
8
+ fail-fast: false
9
+ matrix:
10
+ php: [8.0]
11
+ node-version: [14.x]
12
+ steps:
13
+ - name: Checkout code
14
+ uses: actions/checkout@v1
15
+
16
+ - name: Setup PHP
17
+ uses: shivammathur/setup-php@v2
18
+ with:
19
+ php-version: '${{ matrix.php }}'
20
+ tools: composer:v1
21
+
22
+ - name: Get Composer cache directory
23
+ id: composer-cache
24
+ run: |
25
+ echo "::set-output name=dir::$(composer config cache-files-dir)"
26
+ - name: Use Composer cache
27
+ uses: actions/cache@master
28
+ with:
29
+ path: ${{ steps['composer-cache'].outputs.dir }}
30
+ key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
31
+ restore-keys: |
32
+ ${{ runner.os }}-composer-
33
+ - name: Build autoloader
34
+ run: composer install --prefer-dist --no-progress --no-suggest --no-dev
35
+
36
+ - name: Using Node version ${{ matrix.node-version }}
37
+ uses: actions/setup-node@v1
38
+ with:
39
+ node-version: ${{ matrix.node-version }}
40
+ - name: npm install, build, and test
41
+ run: |
42
+ npm ci
43
+ npm run dev
44
+ touch .devbuild
45
+ env:
46
+ CI: true
47
+ - name: Package
48
+ uses: actions/upload-artifact@v2
49
+ with:
50
+ name: extendify-sdk
51
+ retention-days: 5
52
+ path: |
53
+ ${{ github.workspace }}/
54
+ !${{ github.workspace }}/node_modules/
55
+ !${{ github.workspace }}/.github/
56
+ !${{ github.workspace }}/.git/
57
+ !${{ github.workspace }}/src/
58
+ !${{ github.workspace }}/.editorconfig
59
+ !${{ github.workspace }}/.eslintrc.js
60
+ !${{ github.workspace }}/.eslintignore
61
+ !${{ github.workspace }}/.gitignore
62
+ !${{ github.workspace }}/.svgrrc
63
+ !${{ github.workspace }}/.prettierrc.js
64
+ !${{ github.workspace }}/.phpcs.xml.dist
65
+ !${{ github.workspace }}/webpack.config.js
66
+ !${{ github.workspace }}/composer.json
67
+ !${{ github.workspace }}/composer.lock
68
+ !${{ github.workspace }}/package.json
69
+ !${{ github.workspace }}/package-lock.json
70
+ !${{ github.workspace }}/readme.md
extendify-sdk/.github/workflows/force-production-on-main.yml ADDED
@@ -0,0 +1,66 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: Build production assets
2
+ on:
3
+ push:
4
+ branches:
5
+ - main
6
+ jobs:
7
+ build:
8
+ name: Build and commit
9
+ runs-on: ubuntu-latest
10
+ strategy:
11
+ fail-fast: false
12
+ matrix:
13
+ php: [8.0]
14
+ node-version: [14.x]
15
+ steps:
16
+ - name: Checkout code
17
+ uses: actions/checkout@v1
18
+
19
+ - name: Set up git user
20
+ run: git config --global user.name extendify
21
+ - name: Set up git email
22
+ run: git config --global user.name extendify@users.noreply.github.com
23
+
24
+ - name: Setup PHP
25
+ uses: shivammathur/setup-php@v2
26
+ with:
27
+ php-version: '${{ matrix.php }}'
28
+ extensions: mysql, zip
29
+ coverage: none
30
+ tools: composer:v1, wp-cli, cs2pr, phpcs
31
+
32
+ - name: Get Composer cache directory
33
+ id: composer-cache
34
+ run: |
35
+ echo "::set-output name=dir::$(composer config cache-files-dir)"
36
+ - name: Use Composer cache
37
+ uses: actions/cache@master
38
+ with:
39
+ path: ${{ steps['composer-cache'].outputs.dir }}
40
+ key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
41
+ restore-keys: |
42
+ ${{ runner.os }}-composer-
43
+ - name: Build autoloader
44
+ run: composer install --prefer-dist --no-progress --no-suggest --no-dev
45
+
46
+ - name: Using Node version ${{ matrix.node-version }}
47
+ uses: actions/setup-node@v1
48
+ with:
49
+ node-version: ${{ matrix.node-version }}
50
+ - name: npm install, build, and test
51
+ run: |
52
+ npm ci
53
+ npm run build
54
+ env:
55
+ CI: true
56
+ - name: Increment version number
57
+ run: |
58
+ perl -i -pe 's/(Stable tag: )([\d.]+)$/$1.($2+.1)/e' readme.txt
59
+ - name: Commit dist folder if needed #it fails if nothing has changed so we allow an error
60
+ run: git commit -am 'Build produciton assets'
61
+ continue-on-error: true
62
+ - name: Push changed files to main
63
+ uses: ad-m/github-push-action@master
64
+ with:
65
+ github_token: ${{ secrets.GITHUB_TOKEN }}
66
+ branch: main
extendify-sdk/.gitignore ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ node_modules
2
+
3
+ .DS_Store
4
+ .vscode
5
+
6
+ vendor/*
7
+ !vendor/composer
8
+ !vendor/autoload.php
9
+
10
+ wpcs
extendify-sdk/.phpcs.xml.dist ADDED
@@ -0,0 +1,179 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <ruleset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="extendify-sdk" xsi:noNamespaceSchemaLocation="https://raw.githubusercontent.com/squizlabs/PHP_CodeSniffer/master/phpcs.xsd">
3
+
4
+ <description>WP Plugin checks</description>
5
+
6
+ <!-- Exclude the Composer Vendor directory. -->
7
+ <exclude-pattern>/vendor/*</exclude-pattern>
8
+
9
+ <exclude-pattern>/cypress/*</exclude-pattern>
10
+ <exclude-pattern>/.github/*</exclude-pattern>
11
+ <exclude-pattern>/tests/*</exclude-pattern>
12
+ <exclude-pattern>/public/*</exclude-pattern>
13
+ <exclude-pattern>/wpcs/*</exclude-pattern>
14
+
15
+ <!-- Exclude the Node Modules directory. -->
16
+ <exclude-pattern>/node_modules/*</exclude-pattern>
17
+
18
+ <!-- Exclude CSS and Javascript files. -->
19
+ <exclude-pattern>*.css</exclude-pattern>
20
+ <exclude-pattern>*.js</exclude-pattern>
21
+
22
+ <!-- Include the WordPress-Extra standard. -->
23
+ <rule ref="WordPress-Extra">
24
+ <!--
25
+ We may want a middle ground though. The best way to do this is add the
26
+ entire ruleset, then rule by rule, remove ones that don't suit a project.
27
+ We can do this by running `phpcs` with the '-s' flag, which allows us to
28
+ see the names of the sniffs reporting errors.
29
+ Once we know the sniff names, we can opt to exclude sniffs which don't
30
+ suit our project like so.
31
+
32
+ The below two examples just show how you can exclude rules.
33
+ They are not intended as advice about which sniffs to exclude.
34
+ -->
35
+
36
+ <!--
37
+ <exclude name="WordPress.WhiteSpace.ControlStructureSpacing"/>
38
+ <exclude name="WordPress.Security.EscapeOutput"/>
39
+ -->
40
+ </rule>
41
+
42
+ <rule ref="WordPress">
43
+ <exclude name="WordPress.Files.FileName.NotHyphenatedLowercase" />
44
+ <exclude name="WordPress.Files.FileName.InvalidClassFileName" />
45
+ <exclude name="WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedNamespaceFound" />
46
+ <exclude name="WordPress.WhiteSpace.ControlStructureSpacing.NoSpaceAfterOpenParenthesis" />
47
+ <exclude name="WordPress.WhiteSpace.ControlStructureSpacing.NoSpaceBeforeCloseParenthesis" />
48
+ <exclude name="WordPress.WhiteSpace.OperatorSpacing.NoSpaceBefore" />
49
+ <exclude name="WordPress.WhiteSpace.OperatorSpacing.NoSpaceAfter" />
50
+ <exclude name="WordPress.WhiteSpace.ControlStructureSpacing.ExtraSpaceAfterCloseParenthesis" />
51
+ <exclude name="WordPress.Arrays.ArrayDeclarationSpacing.NoSpaceAfterArrayOpener" />
52
+ <exclude name="WordPress.Arrays.ArrayDeclarationSpacing.NoSpaceBeforeArrayCloser" />
53
+ <exclude name="WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned" />
54
+ <exclude name="WordPress.NamingConventions.ValidVariableName.PropertyNotSnakeCase" />
55
+ <exclude name="WordPress.NamingConventions.ValidFunctionName.MethodNameInvalid" />
56
+ <exclude name="WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase" />
57
+ <exclude name="WordPress.NamingConventions.ValidVariableName.VariableNotSnakeCase" />
58
+ <exclude name="WordPress.Arrays.ArrayKeySpacingRestrictions.NoSpacesAroundArrayKeys" />
59
+ <exclude name="WordPress.PHP.YodaConditions.NotYoda" />
60
+ <exclude name="WordPress.NamingConventions.ValidFunctionName.FunctionNameInvalid" />
61
+ <exclude name="WordPress.NamingConventions.ValidVariableName.InterpolatedVariableNotSnakeCase" />
62
+ </rule>
63
+
64
+ <rule ref="Generic">
65
+ <exclude name="Generic.WhiteSpace.DisallowSpaceIndent.SpacesUsed" />
66
+ <exclude name="Generic.WhiteSpace.DisallowSpaceIndent.SpacesUsed" />
67
+ <exclude name="Generic.PHP.ClosingPHPTag.NotFound" />
68
+ <exclude name="Generic.Files.LowercasedFilename.NotFound" />
69
+ <exclude name="Generic.Formatting.SpaceAfterNot.Incorrect" />
70
+ <exclude name="Generic.Classes.OpeningBraceSameLine.BraceOnNewLine" />
71
+ <exclude name="Generic.Files.EndFileNoNewline.Found" />
72
+ <exclude name="Generic.Functions.OpeningFunctionBraceKernighanRitchie.BraceOnNewLine" />
73
+ <exclude name="Generic.Files.LineLength.TooLong" />
74
+ <exclude name="Generic.Arrays.DisallowShortArraySyntax.Found" />
75
+ <exclude name="Generic.Commenting.Todo.TaskFound" />
76
+ <exclude name="Generic.Formatting.NoSpaceAfterCast.SpaceFound" />
77
+ <exclude name="Generic.Formatting.MultipleStatementAlignment.NotSame" />
78
+ <exclude name="Generic.PHP.RequireStrictTypes.MissingDeclaration" />
79
+ <exclude name="Generic.PHP.UpperCaseConstant.Found" />
80
+ <exclude name="Generic.WhiteSpace.ArbitraryParenthesesSpacing.SpaceBeforeOpen" />
81
+ <exclude name="Generic.WhiteSpace.ArbitraryParenthesesSpacing.SpaceBeforeClose" />
82
+ <exclude name="Generic.WhiteSpace.ArbitraryParenthesesSpacing.SpaceAfterOpen" />
83
+ <exclude name="Generic.WhiteSpace.ArbitraryParenthesesSpacing.SpaceAfterClose" />
84
+ <exclude name="Generic.PHP.ForbiddenFunctions.Found" />
85
+ <exclude name="Generic.Files.InlineHTML.Found" />
86
+ </rule>
87
+ <rule ref="Squiz">
88
+ <exclude name="Squiz.Functions.FunctionDeclarationArgumentSpacing.SpacingAfterOpen" />
89
+ <exclude name="Squiz.ControlStructures.ElseIfDeclaration.NotAllowed" />
90
+ <exclude name="Squiz.WhiteSpace.FunctionClosingBraceSpace.SpacingBeforeClose" />
91
+ <exclude name="Squiz.WhiteSpace.FunctionSpacing.AfterLast" />
92
+ <exclude name="Squiz.Files.FileExtension.ClassFound" />
93
+ <exclude name="Squiz.Commenting.FileComment.MissingPackageTag" />
94
+ <exclude name="Squiz.Operators.ComparisonOperatorUsage.NotAllowed" />
95
+ <exclude name="Squiz.WhiteSpace.FunctionSpacing.BeforeFirst" />
96
+ <exclude name="Squiz.Operators.ComparisonOperatorUsage.ImplicitTrue" />
97
+ <exclude name="Squiz.WhiteSpace.FunctionSpacing.After" />
98
+ <exclude name="Squiz.Arrays.ArrayDeclaration.DoubleArrowNotAligned" />
99
+ <exclude name="Squiz.WhiteSpace.FunctionSpacing.Before" />
100
+ <exclude name="Squiz.PHP.DisallowBooleanStatement.Found" />
101
+ <exclude name="Squiz.ControlStructures.InlineIfDeclaration.NoBrackets" />
102
+ <exclude name="Squiz.PHP.DisallowInlineIf.Found" />
103
+ <exclude name="Squiz.PHP.DisallowComparisonAssignment.AssignedComparison" />
104
+ <exclude name="Squiz.PHP.DiscouragedFunctions.Discouraged" />
105
+ <exclude name="Squiz.Functions.GlobalFunction.Found" />
106
+ <exclude name="Squiz.PHP.EmbeddedPhp.ContentBeforeEnd" />
107
+ </rule>
108
+ <rule ref="PEAR">
109
+ <exclude name="PEAR.Functions.FunctionCallSignature.CloseBracketLine" />
110
+ <exclude name="PEAR.Functions.FunctionCallSignature.SpaceAfterOpenBracket" />
111
+ <exclude name="PEAR.Functions.FunctionCallSignature.SpaceBeforeCloseBracket" />
112
+ <exclude name="PEAR.Commenting.FileComment.MissingPackageTag" />
113
+ <exclude name="PEAR.Commenting.FileComment.MissingAuthorTag" />
114
+ <exclude name="PEAR.Commenting.FileComment.MissingCategoryTag" />
115
+ <exclude name="PEAR.Commenting.FileComment.MissingLinkTag" />
116
+ <exclude name="PEAR.Commenting.FileComment.MissingLicenseTag" />
117
+ <exclude name="PEAR.Commenting.FileComment.MissingVersion" />
118
+ <exclude name="PEAR.Commenting.ClassComment.MissingPackageTag" />
119
+ <exclude name="PEAR.Commenting.ClassComment.MissingAuthorTag" />
120
+ <exclude name="PEAR.Commenting.ClassComment.MissingCategoryTag" />
121
+ <exclude name="PEAR.Commenting.ClassComment.MissingLinkTag" />
122
+ <exclude name="PEAR.Commenting.ClassComment.MissingLicenseTag" />
123
+ <exclude name="PEAR.Commenting.ClassComment.MissingVersion" />
124
+ <exclude name="PEAR.NamingConventions.ValidFunctionName.PrivateNoUnderscore" />
125
+ <exclude name="PEAR.Commenting.FileComment.WrongStyle" />
126
+ <exclude name="PEAR.Commenting.FileComment.Missing" />
127
+ <exclude name="PEAR.WhiteSpace.ScopeIndent.IncorrectExact" />
128
+ </rule>
129
+
130
+ <!-- Let's also check that everything is properly documented. -->
131
+ <rule ref="WordPress-Docs"/>
132
+
133
+ <!-- Add in some extra rules from other standards. -->
134
+ <rule ref="Generic.CodeAnalysis.UnusedFunctionParameter"/>
135
+ <!-- <rule ref="Generic.Commenting.Todo"/> -->
136
+
137
+ <!-- Check for PHP cross-version compatibility. -->
138
+ <!--
139
+ To enable this, the PHPCompatibilityWP standard needs
140
+ to be installed.
141
+ See the readme for installation instructions:
142
+ https://github.com/PHPCompatibility/PHPCompatibilityWP
143
+ For more information, also see:
144
+ https://github.com/PHPCompatibility/PHPCompatibility
145
+ -->
146
+
147
+ <config name="testVersion" value="5.6-"/>
148
+ <rule ref="PHPCompatibilityWP"/>
149
+
150
+
151
+ <!--
152
+ To get the optimal benefits of using WPCS, we should add a couple of
153
+ custom properties.
154
+ Adjust the values of these properties to fit our needs.
155
+
156
+ For information on additional custom properties available, check out
157
+ the wiki:
158
+ https://github.com/WordPress/WordPress-Coding-Standards/wiki/Customizable-sniff-properties
159
+ -->
160
+ <config name="minimum_supported_wp_version" value="5.4"/>
161
+
162
+ <rule ref="WordPress.WP.I18n">
163
+ <properties>
164
+ <property name="text_domain" type="array">
165
+ <element value="extendify-sdk"/>
166
+ </property>
167
+ </properties>
168
+ </rule>
169
+
170
+ <rule ref="WordPress.NamingConventions.PrefixAllGlobals">
171
+ <properties>
172
+ <property name="prefixes" type="array">
173
+ <element value="extendifysdk"/>
174
+ </property>
175
+ </properties>
176
+ </rule>
177
+
178
+
179
+ </ruleset>
extendify-sdk/.svgrrc ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ svgo: true,
3
+ svgoConfig: {
4
+ plugins: [
5
+ {
6
+ removeAttrs: {
7
+ attrs: [
8
+ "height",
9
+ "width",
10
+ "x",
11
+ "y",
12
+ ],
13
+ },
14
+ },
15
+ ],
16
+ },
17
+ svgProps: {
18
+ xmlns: "http://www.w3.org/2000/svg",
19
+ },
20
+ }
extendify-sdk/app/Admin.php ADDED
@@ -0,0 +1,111 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Admin.
4
+ */
5
+
6
+ namespace Extendify\ExtendifySdk;
7
+
8
+ use Extendify\ExtendifySdk\App;
9
+
10
+ /**
11
+ * This class handles any file loading for the admin area.
12
+ */
13
+ class Admin
14
+ {
15
+
16
+ /**
17
+ * The instance
18
+ *
19
+ * @var $instance
20
+ */
21
+ public static $instance = null;
22
+
23
+ /**
24
+ * Adds various actions to set up the page
25
+ *
26
+ * @return self|void
27
+ */
28
+ public function __construct()
29
+ {
30
+ if (self::$instance) {
31
+ return self::$instance;
32
+ }
33
+
34
+ self::$instance = $this;
35
+ $this->loadScripts();
36
+ }
37
+
38
+ /**
39
+ * Adds scripts to the admin
40
+ *
41
+ * @return void
42
+ */
43
+ public function loadScripts()
44
+ {
45
+ \add_action(
46
+ 'admin_enqueue_scripts',
47
+ function ($hook) {
48
+ if (!$this->checkItsGutenbergPost($hook)) {
49
+ return;
50
+ }
51
+
52
+ $this->addScopedScriptsAndStyles();
53
+ }
54
+ );
55
+ }
56
+
57
+ /**
58
+ * Makes sure we are on the correct page
59
+ *
60
+ * @param string $hook - An optional hook provided by WP to identify the page.
61
+ * @return boolean
62
+ */
63
+ public function checkItsGutenbergPost($hook = '')
64
+ {
65
+ // TODO: Maybe there's a better check here so we can show on other pages too.
66
+ return $hook && in_array($hook, ['post.php', 'post-new.php'], true);
67
+ }
68
+
69
+ /**
70
+ * Adds various JS scripts
71
+ *
72
+ * @return void
73
+ */
74
+ public function addScopedScriptsAndStyles()
75
+ {
76
+ $version = App::$environment === 'PRODUCTION' ? App::$version : uniqid();
77
+
78
+ \wp_register_script(
79
+ App::$slug . '-scripts',
80
+ EXTENDIFYSDK_BASE_URL . 'public/build/extendify-sdk.js',
81
+ [
82
+ 'wp-api',
83
+ 'wp-i18n',
84
+ 'wp-components',
85
+ 'wp-element',
86
+ 'wp-editor',
87
+ ],
88
+ $version,
89
+ true
90
+ );
91
+ \wp_localize_script(
92
+ App::$slug . '-scripts',
93
+ 'extendifySdkData',
94
+ [
95
+ 'root' => \esc_url_raw(rest_url(APP::$slug . '/' . APP::$apiVersion)),
96
+ 'nonce' => \wp_create_nonce('wp_rest'),
97
+ ]
98
+ );
99
+ \wp_enqueue_script(App::$slug . '-scripts');
100
+
101
+ \wp_set_script_translations(App::$slug . '-scripts', App::$textDomain);
102
+
103
+ \wp_enqueue_style(
104
+ App::$slug . '-theme',
105
+ EXTENDIFYSDK_BASE_URL . 'public/build/extendify-sdk.css',
106
+ [],
107
+ $version,
108
+ 'all'
109
+ );
110
+ }
111
+ }
extendify-sdk/app/ApiRouter.php ADDED
@@ -0,0 +1,150 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * API router
4
+ */
5
+
6
+ namespace Extendify\ExtendifySdk;
7
+
8
+ use Extendify\ExtendifySdk\App;
9
+ use Extendify\ExtendifySdk\Http;
10
+
11
+ /**
12
+ * Simple router for the REST Endpoints
13
+ */
14
+ class ApiRouter extends \WP_REST_Controller
15
+ {
16
+
17
+ /**
18
+ * The class instance.
19
+ *
20
+ * @var $instance
21
+ */
22
+ protected static $instance = null;
23
+
24
+ /**
25
+ * The capablity required for access.
26
+ *
27
+ * @var $capability
28
+ */
29
+ protected $capability;
30
+
31
+
32
+ /**
33
+ * The constructor
34
+ */
35
+ public function __construct()
36
+ {
37
+ $this->capability = 'install_plugins';
38
+ add_filter(
39
+ 'rest_request_before_callbacks',
40
+ // phpcs:ignore Generic.CodeAnalysis.UnusedFunctionParameter.FoundInExtendedClassBeforeLastUsed
41
+ function ($response, $handler, $request) {
42
+ // Add the request to our helper class.
43
+ if ($request->get_header('x_extendify')) {
44
+ Http::init($request);
45
+ }
46
+
47
+ return $response;
48
+ },
49
+ 10,
50
+ 3
51
+ );
52
+ }
53
+
54
+ /**
55
+ * Check the capability
56
+ *
57
+ * @param string $capability - The capability.
58
+ *
59
+ * @return boolean
60
+ */
61
+ public function permission($capability)
62
+ {
63
+ $this->capability = $capability;
64
+ return $this;
65
+ }
66
+
67
+ /**
68
+ * Check the authorization of the request
69
+ *
70
+ * @return boolean
71
+ */
72
+ public function checkPermission()
73
+ {
74
+ // Check for the nonce on the server (used by WP REST).
75
+ if (isset($_SERVER['HTTP_X_WP_NONCE']) && \wp_verify_nonce(sanitize_text_field(wp_unslash($_SERVER['HTTP_X_WP_NONCE'])), 'wp_rest')) {
76
+ return \current_user_can($this->capability);
77
+ }
78
+
79
+ return false;
80
+ }
81
+
82
+ /**
83
+ * Register dynamic routes
84
+ *
85
+ * @param string $namespace - The api name space.
86
+ * @param string $endpoint - The endpoint.
87
+ * @param function $callback - The callback to run.
88
+ *
89
+ * @return void
90
+ */
91
+ public function getHandler($namespace, $endpoint, $callback)
92
+ {
93
+ \register_rest_route(
94
+ $namespace,
95
+ $endpoint,
96
+ [
97
+ 'methods' => 'GET',
98
+ 'callback' => $callback,
99
+ 'permission_callback' => [
100
+ $this,
101
+ 'checkPermission',
102
+ ],
103
+ ]
104
+ );
105
+ }
106
+
107
+ /**
108
+ * The post handler
109
+ *
110
+ * @param string $namespace - The api name space.
111
+ * @param string $endpoint - The endpoint.
112
+ * @param string $callback - The callback to run.
113
+ *
114
+ * @return void
115
+ */
116
+ public function postHandler($namespace, $endpoint, $callback)
117
+ {
118
+ \register_rest_route(
119
+ $namespace,
120
+ $endpoint,
121
+ [
122
+ 'methods' => 'POST',
123
+ 'callback' => $callback,
124
+ 'permission_callback' => [
125
+ $this,
126
+ 'checkPermission',
127
+ ],
128
+ ]
129
+ );
130
+ }
131
+
132
+ /**
133
+ * The caller
134
+ *
135
+ * @param string $name - The name of the method to call.
136
+ * @param array $arguments - The arguments to pass in.
137
+ *
138
+ * @return mixed
139
+ */
140
+ public static function __callStatic($name, array $arguments)
141
+ {
142
+ $name = "{$name}Handler";
143
+ if (is_null(self::$instance)) {
144
+ self::$instance = new static();
145
+ }
146
+
147
+ $r = self::$instance;
148
+ return $r->$name(APP::$slug . '/' . APP::$apiVersion, ...$arguments);
149
+ }
150
+ }
extendify-sdk/app/App.php ADDED
@@ -0,0 +1,93 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * The App details file
4
+ */
5
+
6
+ namespace Extendify\ExtendifySdk;
7
+
8
+ use Extendify\ExtendifySdk\Plugin;
9
+
10
+ /**
11
+ * Controller for handling various app data
12
+ */
13
+ class App
14
+ {
15
+
16
+ /**
17
+ * Plugin name
18
+ *
19
+ * @var string
20
+ */
21
+ public static $name = '';
22
+
23
+ /**
24
+ * Plugin slug
25
+ *
26
+ * @var string
27
+ */
28
+ public static $slug = '';
29
+
30
+ /**
31
+ * Plugin version
32
+ *
33
+ * @var string
34
+ */
35
+ public static $version = '';
36
+
37
+ /**
38
+ * Plugin API REST version
39
+ *
40
+ * @var string
41
+ */
42
+ public static $apiVersion = 'v1';
43
+
44
+ /**
45
+ * Plugin text domain
46
+ *
47
+ * @var string
48
+ */
49
+ public static $textDomain = '';
50
+
51
+ /**
52
+ * Plugin environment
53
+ *
54
+ * @var string
55
+ */
56
+ public static $environment = '';
57
+
58
+ /**
59
+ * Plugin config
60
+ *
61
+ * @var array
62
+ */
63
+ public static $config = [];
64
+
65
+ /**
66
+ * Process the readme file to get version and name
67
+ *
68
+ * @return void
69
+ */
70
+ public function __construct()
71
+ {
72
+ // phpcs:ignore WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents
73
+ $readme = file_get_contents(dirname(__DIR__) . '/readme.txt');
74
+
75
+ preg_match('/=== (.+) ===/', $readme, $matches);
76
+ self::$name = $matches[1];
77
+ self::$slug = strtolower(trim(preg_replace('/[^A-Za-z0-9-]+/', '-', self::$name), '-'));
78
+
79
+ preg_match('/Stable tag: ([0-9.:]+)/', $readme, $matches);
80
+ self::$version = $matches[1];
81
+
82
+ // An easy way to check if we are in dev mode is to look for a dev specific file.
83
+ $isDev = is_readable(EXTENDIFYSDK_PATH . 'node_modules') || is_readable(EXTENDIFYSDK_PATH . '.devbuild');
84
+ self::$environment = $isDev ? 'DEVELOPMENT' : 'PRODUCTION';
85
+
86
+ self::$textDomain = Plugin::getPluginInfo('TextDomain', self::$slug);
87
+
88
+ // Add the config.
89
+ // phpcs:ignore WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents
90
+ $config = file_get_contents(dirname(__DIR__) . '/config.json');
91
+ self::$config = json_decode($config, true);
92
+ }
93
+ }
extendify-sdk/app/Controllers/CategoryController.php ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Controls Categories
4
+ */
5
+
6
+ namespace Extendify\ExtendifySdk\Controllers;
7
+
8
+ use Extendify\ExtendifySdk\Http;
9
+
10
+ if (!defined('ABSPATH')) {
11
+ die('No direct access.');
12
+ }
13
+
14
+ /**
15
+ * The controller for dealing with categories
16
+ */
17
+ class CategoryController
18
+ {
19
+
20
+ /**
21
+ * Return all categories
22
+ *
23
+ * @return WP_REST_Response|WP_Error
24
+ */
25
+ public static function index()
26
+ {
27
+ $response = Http::get('/airtable-categories', []);
28
+
29
+ if (!isset($response['records']) || empty($response['records'])) {
30
+ return new \WP_Error('nothing_found', \__('Categories not found. Please try again later', 'extendify-sdk'), ['status' => 404]);
31
+ }
32
+
33
+ return new \WP_REST_Response(
34
+ array_map(
35
+ function ($record) {
36
+ return isset($record['fields']['title']) ? $record['fields']['title'] : '';
37
+ },
38
+ $response['records']
39
+ )
40
+ );
41
+ }
42
+ }
extendify-sdk/app/Controllers/PluginController.php ADDED
@@ -0,0 +1,61 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Controls Plugins
4
+ */
5
+
6
+ namespace Extendify\ExtendifySdk\Controllers;
7
+
8
+ use Extendify\ExtendifySdk\Plugin;
9
+
10
+ if (!defined('ABSPATH')) {
11
+ die('No direct access.');
12
+ }
13
+
14
+ /**
15
+ * The controller for plugin dependency checking, etc
16
+ */
17
+ class PluginController
18
+ {
19
+
20
+ /**
21
+ * Return all plugins
22
+ *
23
+ * @return array
24
+ */
25
+ public static function index()
26
+ {
27
+ if (! function_exists('get_plugins')) {
28
+ require_once ABSPATH . 'wp-admin/includes/plugin.php';
29
+ }
30
+
31
+ return \get_plugins();
32
+ }
33
+
34
+ /**
35
+ * List active plugins
36
+ *
37
+ * @return array
38
+ */
39
+ public static function active()
40
+ {
41
+ return \get_option('active_plugins');
42
+ }
43
+
44
+ /**
45
+ * Install plugins
46
+ *
47
+ * @return array
48
+ */
49
+ public static function install()
50
+ {
51
+ if (!\current_user_can('activate_plugins')) {
52
+ return new \WP_Error('not_allowed', \__('You are not allowed to activate plugins on this site.', 'extendify-sdk'));
53
+ }
54
+
55
+ // $required = json_decode($request->get_param('plugins'), true);
56
+ // foreach ($required as $plugin) {
57
+ // }
58
+ // Editorplus needs to be harded here since it's not using the name/name.php convention
59
+ return Plugin::install_and_activate_plugin('editorplus');
60
+ }
61
+ }
extendify-sdk/app/Controllers/TemplateController.php ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Controls Http requests
4
+ */
5
+
6
+ namespace Extendify\ExtendifySdk\Controllers;
7
+
8
+ use Extendify\ExtendifySdk\Http;
9
+
10
+ if (!defined('ABSPATH')) {
11
+ die('No direct access.');
12
+ }
13
+
14
+ /**
15
+ * The controller for dealing with categories
16
+ */
17
+ class TemplateController
18
+ {
19
+
20
+ /**
21
+ * Return info about a template
22
+ *
23
+ * @param \WP_REST_Request $request - The request.
24
+ * @return WP_REST_Response|WP_Error
25
+ */
26
+ public static function index($request)
27
+ {
28
+ $response = Http::post('/airtable-data', $request->get_params());
29
+
30
+ if (!isset($response['records']) || empty($response['records'])) {
31
+ return new \WP_Error('nothing_found', \__('Templates not found. Please try again later', 'extendify-sdk'), ['status' => 404]);
32
+ }
33
+
34
+ return new \WP_REST_Response($response);
35
+ }
36
+
37
+ /**
38
+ * Return info about a template
39
+ *
40
+ * @param \WP_REST_Request $request - The request.
41
+ * @return WP_REST_Response|WP_Error
42
+ */
43
+ public static function single($request)
44
+ {
45
+ $response = Http::post('/airtable-data', $request->get_params());
46
+
47
+ if (!isset($response['records']) || empty($response['records'])) {
48
+ return new \WP_Error('nothing_found', \__('Templates not found. Please try again later', 'extendify-sdk'), ['status' => 404]);
49
+ }
50
+
51
+ return new \WP_REST_Response($response);
52
+ }
53
+ }
extendify-sdk/app/Http.php ADDED
@@ -0,0 +1,145 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Helper class for making http requests
4
+ */
5
+
6
+ namespace Extendify\ExtendifySdk;
7
+
8
+ use Extendify\ExtendifySdk\App;
9
+ use Extendify\ExtendifySdk\User;
10
+
11
+ /**
12
+ * Controller for http communication
13
+ */
14
+ class Http
15
+ {
16
+
17
+ /**
18
+ * The api endpoint
19
+ *
20
+ * @var string
21
+ */
22
+ public $baseUrl = '';
23
+
24
+ /**
25
+ * Request data sent to the server
26
+ *
27
+ * @var array
28
+ */
29
+ public $data = [];
30
+
31
+ /**
32
+ * Any headers required
33
+ *
34
+ * @var array
35
+ */
36
+ public $headers = [];
37
+
38
+ /**
39
+ * The class instance.
40
+ *
41
+ * @var $instance
42
+ */
43
+ protected static $instance = null;
44
+
45
+ /**
46
+ * Set up the base object to send with every request
47
+ *
48
+ * @param \WP_REST_Request $request - The request.
49
+ * @return void
50
+ */
51
+ public function __construct($request)
52
+ {
53
+ // Redundant, but extra prodection!
54
+ if (!\wp_verify_nonce(sanitize_text_field(wp_unslash($request->get_header('x_wp_nonce'))), 'wp_rest')) {
55
+ return;
56
+ }
57
+
58
+ $this->baseUrl = $request->get_header('x_extendify_dev_mode') !== 'false' ? App::$config['api']['dev'] : App::$config['api']['live'];
59
+ $this->data = [
60
+ 'mode' => App::$environment,
61
+ 'uuid' => User::data('uuid'),
62
+ 'sdk_version' => App::$version,
63
+ 'wp_plugins' => $request->get_method() === 'POST' ? array_keys(\get_plugins()) : [],
64
+ ];
65
+
66
+ $this->headers = [
67
+ 'Accept' => 'application/json',
68
+ 'referer' => $request->get_header('referer'),
69
+ 'user_agent' => $request->get_header('user_agent'),
70
+ ];
71
+ }
72
+
73
+ /**
74
+ * Register dynamic routes
75
+ *
76
+ * @param string $endpoint - The endpoint.
77
+ * @param array $data - The data to include.
78
+ * @param array $headers - The headers to include.
79
+ *
80
+ * @return array
81
+ */
82
+ public function getHandler($endpoint, $data = [], $headers = [])
83
+ {
84
+ $url = \esc_url_raw(
85
+ \add_query_arg(
86
+ \urlencode_deep(\urldecode_deep(array_merge($this->data, $data))),
87
+ $this->baseUrl . $endpoint
88
+ )
89
+ );
90
+
91
+ $response = \wp_remote_get(
92
+ $url,
93
+ [
94
+ 'headers' => array_merge($this->headers, $headers),
95
+ ]
96
+ );
97
+
98
+ $responseBody = \wp_remote_retrieve_body($response);
99
+ return json_decode($responseBody, true);
100
+ }
101
+
102
+ /**
103
+ * Register dynamic routes
104
+ *
105
+ * @param string $endpoint - The endpoint.
106
+ * @param array $data - The arguments to include.
107
+ * @param array $headers - The headers to include.
108
+ *
109
+ * @return array
110
+ */
111
+ public function postHandler($endpoint, $data = [], $headers = [])
112
+ {
113
+ $response = \wp_remote_post(
114
+ $this->baseUrl . $endpoint,
115
+ [
116
+ 'headers' => array_merge($this->headers, $headers),
117
+ 'body' => array_merge($this->data, $data),
118
+ ]
119
+ );
120
+
121
+ $responseBody = \wp_remote_retrieve_body($response);
122
+ return json_decode($responseBody, true);
123
+ }
124
+
125
+ /**
126
+ * The caller
127
+ *
128
+ * @param string $name - The name of the method to call.
129
+ * @param array $arguments - The arguments to pass in.
130
+ *
131
+ * @return mixed
132
+ */
133
+ public static function __callStatic($name, array $arguments)
134
+ {
135
+ if ($name === 'init') {
136
+ self::$instance = new static($arguments[0]);
137
+ return;
138
+ }
139
+
140
+ $name = "{$name}Handler";
141
+ $r = self::$instance;
142
+
143
+ return $r->$name(...$arguments);
144
+ }
145
+ }
extendify-sdk/app/Plugin.php ADDED
@@ -0,0 +1,335 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ // phpcs:ignoreFile
3
+ // This class was copied from JetPack (mostly)
4
+ // so will be a bit of work to refactor
5
+ /**
6
+ * Manage plugin dependencies
7
+ */
8
+
9
+ namespace Extendify\ExtendifySdk;
10
+
11
+ class Plugin
12
+ {
13
+ /**
14
+ * Install and activate a plugin.
15
+ *
16
+ * @param string $slug Plugin slug.
17
+ *
18
+ * @return bool|WP_Error True if installation succeeded, error object otherwise.
19
+ */
20
+ public static function install_and_activate_plugin($slug)
21
+ {
22
+ $plugin_id = self::get_plugin_id_by_slug($slug);
23
+ if (! $plugin_id) {
24
+ $installed = self::install_plugin($slug);
25
+ if (is_wp_error($installed)) {
26
+ return $installed;
27
+ }
28
+ $plugin_id = self::get_plugin_id_by_slug($slug);
29
+ } elseif (is_plugin_active($plugin_id)) {
30
+ return true; // Already installed and active.
31
+ }
32
+
33
+ if (! current_user_can('activate_plugins')) {
34
+ return new \WP_Error('not_allowed', __('You are not allowed to activate plugins on this site.', 'templates_sdk'));
35
+ }
36
+
37
+ $activated = \activate_plugin($plugin_id);
38
+ if (\is_wp_error($activated)) {
39
+ return $activated;
40
+ }
41
+
42
+ return true;
43
+ }
44
+
45
+ /**
46
+ * Install a plugin.
47
+ *
48
+ * @param string $slug Plugin slug.
49
+ *
50
+ * @return bool|WP_Error True if installation succeeded, error object otherwise.
51
+ */
52
+ public static function install_plugin($slug)
53
+ {
54
+ if (\is_multisite() && !\current_user_can('manage_network')) {
55
+ return new \WP_Error('not_allowed', __('You are not allowed to install plugins on this site.', 'templates_sdk'));
56
+ }
57
+ require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
58
+ require_once ABSPATH . 'wp-admin/includes/plugin.php';
59
+ require_once ABSPATH . 'wp-admin/includes/plugin-install.php';
60
+ require_once ABSPATH . 'wp-admin/includes/file.php';
61
+ require_once ABSPATH . 'wp-admin/includes/misc.php';
62
+ $installer = new \Plugin_Upgrader(new Skin());
63
+ $zip_url = self::generate_wordpress_org_plugin_download_link($slug);
64
+
65
+ $result = $installer->install($zip_url);
66
+
67
+ if (is_wp_error($result)) {
68
+ return $result;
69
+ }
70
+
71
+ $plugin = self::get_plugin_id_by_slug($slug);
72
+ $error_code = 'install_error';
73
+ if (! $plugin) {
74
+ $error = __('There was an error installing your plugin', 'templates_sdk');
75
+ }
76
+
77
+ if (! $result) {
78
+ $error_code = $installer->skin->get_main_error_code();
79
+ $message = $installer->skin->get_main_error_message();
80
+ $error = $message ? $message : __('An unknown error occurred during installation', 'templates_sdk');
81
+ }
82
+
83
+ if (! empty($error)) {
84
+ return new \WP_Error($error_code, $error, 400);
85
+ }
86
+
87
+ return (array) $installer->skin->get_upgrade_messages();
88
+ }
89
+
90
+ /**
91
+ * Get WordPress.org zip download link from a plugin slug
92
+ *
93
+ * @param string $plugin_slug Plugin slug.
94
+ */
95
+ protected static function generate_wordpress_org_plugin_download_link($plugin_slug)
96
+ {
97
+ return "https://downloads.wordpress.org/plugin/$plugin_slug.latest-stable.zip";
98
+ }
99
+
100
+ /**
101
+ * Get the plugin ID (composed of the plugin slug and the name of the main plugin file) from a plugin slug.
102
+ *
103
+ * @param string $slug Plugin slug.
104
+ */
105
+ public static function get_plugin_id_by_slug($slug)
106
+ {
107
+ // Check if get_plugins() function exists. This is required on the front end of the
108
+ // site, since it is in a file that is normally only loaded in the admin.
109
+ if (! function_exists('get_plugins')) {
110
+ require_once ABSPATH . 'wp-admin/includes/plugin.php';
111
+ }
112
+
113
+ /** This filter is documented in wp-admin/includes/class-wp-plugins-list-table.php */
114
+ $plugins = apply_filters('all_plugins', get_plugins());
115
+ if (! is_array($plugins)) {
116
+ return false;
117
+ }
118
+
119
+ foreach ($plugins as $plugin_file => $plugin_data) {
120
+ if (self::get_slug_from_file_path($plugin_file) === $slug) {
121
+ return $plugin_file;
122
+ }
123
+ }
124
+
125
+ return false;
126
+ }
127
+
128
+ /**
129
+ * Get the plugin slug from the plugin ID (composed of the plugin slug and the name of the main plugin file)
130
+ *
131
+ * @param string $plugin_file Plugin file (ID -- e.g. hello-dolly/hello.php).
132
+ */
133
+ protected static function get_slug_from_file_path($plugin_file)
134
+ {
135
+ // Similar to get_plugin_slug() method.
136
+ $slug = dirname($plugin_file);
137
+ if ('.' === $slug) {
138
+ $slug = preg_replace('/(.+)\.php$/', '$1', $plugin_file);
139
+ }
140
+
141
+ return $slug;
142
+ }
143
+
144
+ /**
145
+ * Get the activation status for a plugin.
146
+ *
147
+ * @since 8.9.0
148
+ *
149
+ * @param string $plugin_file The plugin file to check.
150
+ * @return string Either 'network-active', 'active' or 'inactive'.
151
+ */
152
+ public static function get_plugin_status($plugin_file)
153
+ {
154
+ if (is_plugin_active_for_network($plugin_file)) {
155
+ return 'network-active';
156
+ }
157
+
158
+ if (is_plugin_active($plugin_file)) {
159
+ return 'active';
160
+ }
161
+
162
+ return 'inactive';
163
+ }
164
+
165
+ /**
166
+ * Returns a list of all plugins in the site.
167
+ *
168
+ * @since 8.9.0
169
+ * @uses get_plugins()
170
+ *
171
+ * @return array
172
+ */
173
+ public static function get_plugins()
174
+ {
175
+ if (! function_exists('get_plugins')) {
176
+ require_once ABSPATH . 'wp-admin/includes/plugin.php';
177
+ }
178
+ /** This filter is documented in wp-admin/includes/class-wp-plugins-list-table.php */
179
+ $plugins = apply_filters('all_plugins', get_plugins());
180
+
181
+ if (is_array($plugins) && ! empty($plugins)) {
182
+ foreach ($plugins as $plugin_slug => $plugin_data) {
183
+ $plugins[ $plugin_slug ]['active'] = in_array(
184
+ self::get_plugin_status($plugin_slug),
185
+ array( 'active', 'network-active' ),
186
+ true
187
+ );
188
+ }
189
+ return $plugins;
190
+ }
191
+
192
+ return array();
193
+ }
194
+
195
+ /**
196
+ * Will return info about a plugin
197
+ *
198
+ * @param string $identifier The key of the plugin info.
199
+ * @param string $plugin_id The plugin identifier string 'editorplus-sdk.
200
+ * @return string
201
+ */
202
+ public static function getPluginInfo($identifier, $plugin_id)
203
+ {
204
+ if (!function_exists('get_plugins')) {
205
+ include_once ABSPATH . 'wp-admin/includes/plugin.php';
206
+ }
207
+
208
+ foreach (get_plugins() as $plugin => $data) {
209
+ if ($data[$identifier] === $plugin_id) {
210
+ return $plugin;
211
+ }
212
+ }
213
+
214
+ return false;
215
+ }
216
+ }
217
+
218
+ require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
219
+ require_once ABSPATH . 'wp-admin/includes/file.php';
220
+
221
+ /**
222
+ * Allows us to capture that the site doesn't have proper file system access.
223
+ * In order to update the plugin.
224
+ */
225
+ class Skin extends \Automatic_Upgrader_Skin
226
+ {
227
+ /**
228
+ * Stores the last error key;
229
+ **/
230
+ protected $main_error_code = 'install_error';
231
+
232
+ /**
233
+ * Stores the last error message.
234
+ **/
235
+ protected $main_error_message = 'An unknown error occurred during installation';
236
+
237
+ /**
238
+ * Overwrites the set_upgrader to be able to tell if we e ven have the ability to write to the files.
239
+ *
240
+ * @param WP_Upgrader $upgrader
241
+ *
242
+ */
243
+ public function set_upgrader(&$upgrader)
244
+ {
245
+ parent::set_upgrader($upgrader);
246
+
247
+ // Check if we even have permission to.
248
+ $result = $upgrader->fs_connect(array( WP_CONTENT_DIR, WP_PLUGIN_DIR ));
249
+ if (! $result) {
250
+ // set the string here since they are not available just yet
251
+ $upgrader->generic_strings();
252
+ $this->feedback('fs_unavailable');
253
+ }
254
+ }
255
+
256
+ /**
257
+ * Overwrites the error function
258
+ */
259
+ public function error($error)
260
+ {
261
+ if (is_wp_error($error)) {
262
+ $this->feedback($error);
263
+ }
264
+ }
265
+
266
+ private function set_main_error_code($code)
267
+ {
268
+ // Don't set the process_failed as code since it is not that helpful unless we don't have one already set.
269
+ $this->main_error_code = ($code === 'process_failed' && $this->main_error_code ? $this->main_error_code : $code);
270
+ }
271
+
272
+ private function set_main_error_message($message, $code)
273
+ {
274
+ // Don't set the process_failed as message since it is not that helpful unless we don't have one already set.
275
+ $this->main_error_message = ($code === 'process_failed' && $this->main_error_code ? $this->main_error_code : $message);
276
+ }
277
+
278
+ public function get_main_error_code()
279
+ {
280
+ return $this->main_error_code;
281
+ }
282
+
283
+ public function get_main_error_message()
284
+ {
285
+ return $this->main_error_message;
286
+ }
287
+
288
+ /**
289
+ * Overwrites the feedback function
290
+ *
291
+ * @param string|array|WP_Error $data Data.
292
+ * @param mixed ...$args Optional text replacements.
293
+ */
294
+ public function feedback($data, ...$args)
295
+ {
296
+ $current_error = null;
297
+ if (is_wp_error($data)) {
298
+ $this->set_main_error_code($data->get_error_code());
299
+ $string = $data->get_error_message();
300
+ } elseif (is_array($data)) {
301
+ return;
302
+ } else {
303
+ $string = $data;
304
+ }
305
+
306
+ if (! empty($this->upgrader->strings[$string])) {
307
+ $this->set_main_error_code($string);
308
+
309
+ $current_error = $string;
310
+ $string = $this->upgrader->strings[$string];
311
+ }
312
+
313
+ if (strpos($string, '%') !== false) {
314
+ if (! empty($args)) {
315
+ $string = vsprintf($string, $args);
316
+ }
317
+ }
318
+
319
+ $string = trim($string);
320
+ $string = wp_kses(
321
+ $string,
322
+ array(
323
+ 'a' => array(
324
+ 'href' => true
325
+ ),
326
+ 'br' => true,
327
+ 'em' => true,
328
+ 'strong' => true,
329
+ )
330
+ );
331
+
332
+ $this->set_main_error_message($string, $current_error);
333
+ $this->messages[] = $string;
334
+ }
335
+ }
extendify-sdk/app/User.php ADDED
@@ -0,0 +1,108 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Helper class for interacting with the user
4
+ */
5
+
6
+ namespace Extendify\ExtendifySdk;
7
+
8
+ /**
9
+ * Helper class for interacting with the user
10
+ */
11
+ class User
12
+ {
13
+
14
+ /**
15
+ * User unique, anonymous identifier
16
+ *
17
+ * @var string
18
+ */
19
+ public $uuid = '';
20
+
21
+ /**
22
+ * A WP user
23
+ *
24
+ * @var \WP_User
25
+ */
26
+ protected $user = null;
27
+
28
+ /**
29
+ * The DB key for scoping
30
+ *
31
+ * @var string
32
+ */
33
+ protected $key = 'extendifysdk_';
34
+
35
+ /**
36
+ * The class instance.
37
+ *
38
+ * @var $instance
39
+ */
40
+ protected static $instance = null;
41
+
42
+ /**
43
+ * Set up the user
44
+ *
45
+ * @param WP_User $user - A WP User object.
46
+ * @return void
47
+ */
48
+ public function __construct($user)
49
+ {
50
+ $this->user = $user;
51
+ }
52
+
53
+ /**
54
+ * Return the user ID
55
+ *
56
+ * @return void
57
+ */
58
+ private function setupUuid()
59
+ {
60
+ $uuid = \get_user_meta($this->user->ID, $this->key . 'uuid', true);
61
+ if (!$uuid) {
62
+ $id = \wp_hash(\wp_json_encode($this->user));
63
+ \update_user_meta($this->user->ID, $this->key . 'uuid', $id);
64
+ }
65
+
66
+ $this->uuid = $uuid;
67
+ }
68
+
69
+ /**
70
+ * Returns data about the user
71
+ * Use it like User::data('ID') to get the user id
72
+ *
73
+ * @param string $arguments - Right now a string of arguments, like ID.
74
+ * @return mixed - Data about the user.
75
+ */
76
+ private function dataHandler($arguments)
77
+ {
78
+ // Right now assume a single argument, but could expand to multiple.
79
+ if (isset($this->user->$arguments)) {
80
+ return $this->user->$arguments;
81
+ }
82
+
83
+ return \get_user_meta($this->user->ID, $this->key . $arguments, true);
84
+ }
85
+
86
+ /**
87
+ * Allows to dynamically setup the user with uuid
88
+ * Use it like User::data('ID') to get the user id
89
+ *
90
+ * @param string $name - The name of the method to call.
91
+ * @param array $arguments - The arguments to pass in.
92
+ *
93
+ * @return mixed
94
+ */
95
+ public static function __callStatic($name, array $arguments)
96
+ {
97
+ $name = "{$name}Handler";
98
+ if (is_null(self::$instance)) {
99
+ require_once ABSPATH . 'wp-includes/pluggable.php';
100
+ self::$instance = new static(\wp_get_current_user());
101
+ $r = self::$instance;
102
+ $r->setupUuid();
103
+ }
104
+
105
+ $r = self::$instance;
106
+ return $r->$name(...$arguments);
107
+ }
108
+ }
extendify-sdk/bootstrap.php ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Bootstrap the application
4
+ */
5
+
6
+ use Extendify\ExtendifySdk\Admin;
7
+
8
+ if (!defined('ABSPATH')) {
9
+ die('No direct access.');
10
+ }
11
+
12
+ if (!defined('EXTENDIFYSDK_PATH')) {
13
+ define('EXTENDIFYSDK_PATH', \plugin_dir_path(__FILE__));
14
+ }
15
+
16
+ if (is_readable(EXTENDIFYSDK_PATH . 'vendor/autoload.php')) {
17
+ require EXTENDIFYSDK_PATH . 'vendor/autoload.php';
18
+ }
19
+
20
+ $extendifysdkAdmin = new Admin();
21
+
22
+ require EXTENDIFYSDK_PATH . 'routes/api.php';
23
+
24
+
25
+ \add_action(
26
+ 'init',
27
+ function () {
28
+ \load_plugin_textdomain('extendify-sdk', false, EXTENDIFYSDK_PATH . 'languages');
29
+ }
30
+ );
extendify-sdk/composer.json ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "extendify/extendify-sdk",
3
+ "description": "",
4
+ "type": "wordpress-plugin",
5
+ "require-dev": {
6
+ "johnpbloch/wordpress-core": "*",
7
+ "phpunit/phpunit": "^9.4",
8
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7",
9
+ "phpcompatibility/phpcompatibility-wp": "*"
10
+ },
11
+ "autoload": {
12
+ "psr-4": {
13
+ "Extendify\\ExtendifySdk\\": "app/"
14
+ }
15
+ }
16
+ }
extendify-sdk/composer.lock ADDED
@@ -0,0 +1,2456 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_readme": [
3
+ "This file locks the dependencies of your project to a known state",
4
+ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5
+ "This file is @generated automatically"
6
+ ],
7
+ "content-hash": "baa355db890fc2cda65b09056f92cc5b",
8
+ "packages": [],
9
+ "packages-dev": [
10
+ {
11
+ "name": "dealerdirect/phpcodesniffer-composer-installer",
12
+ "version": "v0.7.1",
13
+ "source": {
14
+ "type": "git",
15
+ "url": "https://github.com/Dealerdirect/phpcodesniffer-composer-installer.git",
16
+ "reference": "fe390591e0241955f22eb9ba327d137e501c771c"
17
+ },
18
+ "dist": {
19
+ "type": "zip",
20
+ "url": "https://api.github.com/repos/Dealerdirect/phpcodesniffer-composer-installer/zipball/fe390591e0241955f22eb9ba327d137e501c771c",
21
+ "reference": "fe390591e0241955f22eb9ba327d137e501c771c",
22
+ "shasum": ""
23
+ },
24
+ "require": {
25
+ "composer-plugin-api": "^1.0 || ^2.0",
26
+ "php": ">=5.3",
27
+ "squizlabs/php_codesniffer": "^2.0 || ^3.0 || ^4.0"
28
+ },
29
+ "require-dev": {
30
+ "composer/composer": "*",
31
+ "phpcompatibility/php-compatibility": "^9.0",
32
+ "sensiolabs/security-checker": "^4.1.0"
33
+ },
34
+ "type": "composer-plugin",
35
+ "extra": {
36
+ "class": "Dealerdirect\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\Plugin"
37
+ },
38
+ "autoload": {
39
+ "psr-4": {
40
+ "Dealerdirect\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\": "src/"
41
+ }
42
+ },
43
+ "notification-url": "https://packagist.org/downloads/",
44
+ "license": [
45
+ "MIT"
46
+ ],
47
+ "authors": [
48
+ {
49
+ "name": "Franck Nijhof",
50
+ "email": "franck.nijhof@dealerdirect.com",
51
+ "homepage": "http://www.frenck.nl",
52
+ "role": "Developer / IT Manager"
53
+ }
54
+ ],
55
+ "description": "PHP_CodeSniffer Standards Composer Installer Plugin",
56
+ "homepage": "http://www.dealerdirect.com",
57
+ "keywords": [
58
+ "PHPCodeSniffer",
59
+ "PHP_CodeSniffer",
60
+ "code quality",
61
+ "codesniffer",
62
+ "composer",
63
+ "installer",
64
+ "phpcs",
65
+ "plugin",
66
+ "qa",
67
+ "quality",
68
+ "standard",
69
+ "standards",
70
+ "style guide",
71
+ "stylecheck",
72
+ "tests"
73
+ ],
74
+ "support": {
75
+ "issues": "https://github.com/dealerdirect/phpcodesniffer-composer-installer/issues",
76
+ "source": "https://github.com/dealerdirect/phpcodesniffer-composer-installer"
77
+ },
78
+ "time": "2020-12-07T18:04:37+00:00"
79
+ },
80
+ {
81
+ "name": "doctrine/instantiator",
82
+ "version": "1.4.0",
83
+ "source": {
84
+ "type": "git",
85
+ "url": "https://github.com/doctrine/instantiator.git",
86
+ "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b"
87
+ },
88
+ "dist": {
89
+ "type": "zip",
90
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b",
91
+ "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b",
92
+ "shasum": ""
93
+ },
94
+ "require": {
95
+ "php": "^7.1 || ^8.0"
96
+ },
97
+ "require-dev": {
98
+ "doctrine/coding-standard": "^8.0",
99
+ "ext-pdo": "*",
100
+ "ext-phar": "*",
101
+ "phpbench/phpbench": "^0.13 || 1.0.0-alpha2",
102
+ "phpstan/phpstan": "^0.12",
103
+ "phpstan/phpstan-phpunit": "^0.12",
104
+ "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0"
105
+ },
106
+ "type": "library",
107
+ "autoload": {
108
+ "psr-4": {
109
+ "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
110
+ }
111
+ },
112
+ "notification-url": "https://packagist.org/downloads/",
113
+ "license": [
114
+ "MIT"
115
+ ],
116
+ "authors": [
117
+ {
118
+ "name": "Marco Pivetta",
119
+ "email": "ocramius@gmail.com",
120
+ "homepage": "https://ocramius.github.io/"
121
+ }
122
+ ],
123
+ "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
124
+ "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
125
+ "keywords": [
126
+ "constructor",
127
+ "instantiate"
128
+ ],
129
+ "support": {
130
+ "issues": "https://github.com/doctrine/instantiator/issues",
131
+ "source": "https://github.com/doctrine/instantiator/tree/1.4.0"
132
+ },
133
+ "funding": [
134
+ {
135
+ "url": "https://www.doctrine-project.org/sponsorship.html",
136
+ "type": "custom"
137
+ },
138
+ {
139
+ "url": "https://www.patreon.com/phpdoctrine",
140
+ "type": "patreon"
141
+ },
142
+ {
143
+ "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator",
144
+ "type": "tidelift"
145
+ }
146
+ ],
147
+ "time": "2020-11-10T18:47:58+00:00"
148
+ },
149
+ {
150
+ "name": "johnpbloch/wordpress-core",
151
+ "version": "5.7.0",
152
+ "source": {
153
+ "type": "git",
154
+ "url": "https://github.com/johnpbloch/wordpress-core.git",
155
+ "reference": "8b057056692ca196aaa7a7ddd915f29426922c6d"
156
+ },
157
+ "dist": {
158
+ "type": "zip",
159
+ "url": "https://api.github.com/repos/johnpbloch/wordpress-core/zipball/8b057056692ca196aaa7a7ddd915f29426922c6d",
160
+ "reference": "8b057056692ca196aaa7a7ddd915f29426922c6d",
161
+ "shasum": ""
162
+ },
163
+ "require": {
164
+ "ext-json": "*",
165
+ "php": ">=5.6.20"
166
+ },
167
+ "provide": {
168
+ "wordpress/core-implementation": "5.7.0"
169
+ },
170
+ "type": "wordpress-core",
171
+ "notification-url": "https://packagist.org/downloads/",
172
+ "license": [
173
+ "GPL-2.0-or-later"
174
+ ],
175
+ "authors": [
176
+ {
177
+ "name": "WordPress Community",
178
+ "homepage": "https://wordpress.org/about/"
179
+ }
180
+ ],
181
+ "description": "WordPress is open source software you can use to create a beautiful website, blog, or app.",
182
+ "homepage": "https://wordpress.org/",
183
+ "keywords": [
184
+ "blog",
185
+ "cms",
186
+ "wordpress"
187
+ ],
188
+ "support": {
189
+ "forum": "https://wordpress.org/support/",
190
+ "irc": "irc://irc.freenode.net/wordpress",
191
+ "issues": "https://core.trac.wordpress.org/",
192
+ "source": "https://core.trac.wordpress.org/browser",
193
+ "wiki": "https://codex.wordpress.org/"
194
+ },
195
+ "time": "2021-03-09T20:32:23+00:00"
196
+ },
197
+ {
198
+ "name": "myclabs/deep-copy",
199
+ "version": "1.10.2",
200
+ "source": {
201
+ "type": "git",
202
+ "url": "https://github.com/myclabs/DeepCopy.git",
203
+ "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220"
204
+ },
205
+ "dist": {
206
+ "type": "zip",
207
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/776f831124e9c62e1a2c601ecc52e776d8bb7220",
208
+ "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220",
209
+ "shasum": ""
210
+ },
211
+ "require": {
212
+ "php": "^7.1 || ^8.0"
213
+ },
214
+ "replace": {
215
+ "myclabs/deep-copy": "self.version"
216
+ },
217
+ "require-dev": {
218
+ "doctrine/collections": "^1.0",
219
+ "doctrine/common": "^2.6",
220
+ "phpunit/phpunit": "^7.1"
221
+ },
222
+ "type": "library",
223
+ "autoload": {
224
+ "psr-4": {
225
+ "DeepCopy\\": "src/DeepCopy/"
226
+ },
227
+ "files": [
228
+ "src/DeepCopy/deep_copy.php"
229
+ ]
230
+ },
231
+ "notification-url": "https://packagist.org/downloads/",
232
+ "license": [
233
+ "MIT"
234
+ ],
235
+ "description": "Create deep copies (clones) of your objects",
236
+ "keywords": [
237
+ "clone",
238
+ "copy",
239
+ "duplicate",
240
+ "object",
241
+ "object graph"
242
+ ],
243
+ "support": {
244
+ "issues": "https://github.com/myclabs/DeepCopy/issues",
245
+ "source": "https://github.com/myclabs/DeepCopy/tree/1.10.2"
246
+ },
247
+ "funding": [
248
+ {
249
+ "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy",
250
+ "type": "tidelift"
251
+ }
252
+ ],
253
+ "time": "2020-11-13T09:40:50+00:00"
254
+ },
255
+ {
256
+ "name": "nikic/php-parser",
257
+ "version": "v4.10.4",
258
+ "source": {
259
+ "type": "git",
260
+ "url": "https://github.com/nikic/PHP-Parser.git",
261
+ "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e"
262
+ },
263
+ "dist": {
264
+ "type": "zip",
265
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/c6d052fc58cb876152f89f532b95a8d7907e7f0e",
266
+ "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e",
267
+ "shasum": ""
268
+ },
269
+ "require": {
270
+ "ext-tokenizer": "*",
271
+ "php": ">=7.0"
272
+ },
273
+ "require-dev": {
274
+ "ircmaxell/php-yacc": "^0.0.7",
275
+ "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0"
276
+ },
277
+ "bin": [
278
+ "bin/php-parse"
279
+ ],
280
+ "type": "library",
281
+ "extra": {
282
+ "branch-alias": {
283
+ "dev-master": "4.9-dev"
284
+ }
285
+ },
286
+ "autoload": {
287
+ "psr-4": {
288
+ "PhpParser\\": "lib/PhpParser"
289
+ }
290
+ },
291
+ "notification-url": "https://packagist.org/downloads/",
292
+ "license": [
293
+ "BSD-3-Clause"
294
+ ],
295
+ "authors": [
296
+ {
297
+ "name": "Nikita Popov"
298
+ }
299
+ ],
300
+ "description": "A PHP parser written in PHP",
301
+ "keywords": [
302
+ "parser",
303
+ "php"
304
+ ],
305
+ "support": {
306
+ "issues": "https://github.com/nikic/PHP-Parser/issues",
307
+ "source": "https://github.com/nikic/PHP-Parser/tree/v4.10.4"
308
+ },
309
+ "time": "2020-12-20T10:01:03+00:00"
310
+ },
311
+ {
312
+ "name": "phar-io/manifest",
313
+ "version": "2.0.1",
314
+ "source": {
315
+ "type": "git",
316
+ "url": "https://github.com/phar-io/manifest.git",
317
+ "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133"
318
+ },
319
+ "dist": {
320
+ "type": "zip",
321
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/85265efd3af7ba3ca4b2a2c34dbfc5788dd29133",
322
+ "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133",
323
+ "shasum": ""
324
+ },
325
+ "require": {
326
+ "ext-dom": "*",
327
+ "ext-phar": "*",
328
+ "ext-xmlwriter": "*",
329
+ "phar-io/version": "^3.0.1",
330
+ "php": "^7.2 || ^8.0"
331
+ },
332
+ "type": "library",
333
+ "extra": {
334
+ "branch-alias": {
335
+ "dev-master": "2.0.x-dev"
336
+ }
337
+ },
338
+ "autoload": {
339
+ "classmap": [
340
+ "src/"
341
+ ]
342
+ },
343
+ "notification-url": "https://packagist.org/downloads/",
344
+ "license": [
345
+ "BSD-3-Clause"
346
+ ],
347
+ "authors": [
348
+ {
349
+ "name": "Arne Blankerts",
350
+ "email": "arne@blankerts.de",
351
+ "role": "Developer"
352
+ },
353
+ {
354
+ "name": "Sebastian Heuer",
355
+ "email": "sebastian@phpeople.de",
356
+ "role": "Developer"
357
+ },
358
+ {
359
+ "name": "Sebastian Bergmann",
360
+ "email": "sebastian@phpunit.de",
361
+ "role": "Developer"
362
+ }
363
+ ],
364
+ "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
365
+ "support": {
366
+ "issues": "https://github.com/phar-io/manifest/issues",
367
+ "source": "https://github.com/phar-io/manifest/tree/master"
368
+ },
369
+ "time": "2020-06-27T14:33:11+00:00"
370
+ },
371
+ {
372
+ "name": "phar-io/version",
373
+ "version": "3.1.0",
374
+ "source": {
375
+ "type": "git",
376
+ "url": "https://github.com/phar-io/version.git",
377
+ "reference": "bae7c545bef187884426f042434e561ab1ddb182"
378
+ },
379
+ "dist": {
380
+ "type": "zip",
381
+ "url": "https://api.github.com/repos/phar-io/version/zipball/bae7c545bef187884426f042434e561ab1ddb182",
382
+ "reference": "bae7c545bef187884426f042434e561ab1ddb182",
383
+ "shasum": ""
384
+ },
385
+ "require": {
386
+ "php": "^7.2 || ^8.0"
387
+ },
388
+ "type": "library",
389
+ "autoload": {
390
+ "classmap": [
391
+ "src/"
392
+ ]
393
+ },
394
+ "notification-url": "https://packagist.org/downloads/",
395
+ "license": [
396
+ "BSD-3-Clause"
397
+ ],
398
+ "authors": [
399
+ {
400
+ "name": "Arne Blankerts",
401
+ "email": "arne@blankerts.de",
402
+ "role": "Developer"
403
+ },
404
+ {
405
+ "name": "Sebastian Heuer",
406
+ "email": "sebastian@phpeople.de",
407
+ "role": "Developer"
408
+ },
409
+ {
410
+ "name": "Sebastian Bergmann",
411
+ "email": "sebastian@phpunit.de",
412
+ "role": "Developer"
413
+ }
414
+ ],
415
+ "description": "Library for handling version information and constraints",
416
+ "support": {
417
+ "issues": "https://github.com/phar-io/version/issues",
418
+ "source": "https://github.com/phar-io/version/tree/3.1.0"
419
+ },
420
+ "time": "2021-02-23T14:00:09+00:00"
421
+ },
422
+ {
423
+ "name": "phpcompatibility/php-compatibility",
424
+ "version": "9.3.5",
425
+ "source": {
426
+ "type": "git",
427
+ "url": "https://github.com/PHPCompatibility/PHPCompatibility.git",
428
+ "reference": "9fb324479acf6f39452e0655d2429cc0d3914243"
429
+ },
430
+ "dist": {
431
+ "type": "zip",
432
+ "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/9fb324479acf6f39452e0655d2429cc0d3914243",
433
+ "reference": "9fb324479acf6f39452e0655d2429cc0d3914243",
434
+ "shasum": ""
435
+ },
436
+ "require": {
437
+ "php": ">=5.3",
438
+ "squizlabs/php_codesniffer": "^2.3 || ^3.0.2"
439
+ },
440
+ "conflict": {
441
+ "squizlabs/php_codesniffer": "2.6.2"
442
+ },
443
+ "require-dev": {
444
+ "phpunit/phpunit": "~4.5 || ^5.0 || ^6.0 || ^7.0"
445
+ },
446
+ "suggest": {
447
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically.",
448
+ "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
449
+ },
450
+ "type": "phpcodesniffer-standard",
451
+ "notification-url": "https://packagist.org/downloads/",
452
+ "license": [
453
+ "LGPL-3.0-or-later"
454
+ ],
455
+ "authors": [
456
+ {
457
+ "name": "Wim Godden",
458
+ "homepage": "https://github.com/wimg",
459
+ "role": "lead"
460
+ },
461
+ {
462
+ "name": "Juliette Reinders Folmer",
463
+ "homepage": "https://github.com/jrfnl",
464
+ "role": "lead"
465
+ },
466
+ {
467
+ "name": "Contributors",
468
+ "homepage": "https://github.com/PHPCompatibility/PHPCompatibility/graphs/contributors"
469
+ }
470
+ ],
471
+ "description": "A set of sniffs for PHP_CodeSniffer that checks for PHP cross-version compatibility.",
472
+ "homepage": "http://techblog.wimgodden.be/tag/codesniffer/",
473
+ "keywords": [
474
+ "compatibility",
475
+ "phpcs",
476
+ "standards"
477
+ ],
478
+ "support": {
479
+ "issues": "https://github.com/PHPCompatibility/PHPCompatibility/issues",
480
+ "source": "https://github.com/PHPCompatibility/PHPCompatibility"
481
+ },
482
+ "time": "2019-12-27T09:44:58+00:00"
483
+ },
484
+ {
485
+ "name": "phpcompatibility/phpcompatibility-paragonie",
486
+ "version": "1.3.1",
487
+ "source": {
488
+ "type": "git",
489
+ "url": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie.git",
490
+ "reference": "ddabec839cc003651f2ce695c938686d1086cf43"
491
+ },
492
+ "dist": {
493
+ "type": "zip",
494
+ "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/ddabec839cc003651f2ce695c938686d1086cf43",
495
+ "reference": "ddabec839cc003651f2ce695c938686d1086cf43",
496
+ "shasum": ""
497
+ },
498
+ "require": {
499
+ "phpcompatibility/php-compatibility": "^9.0"
500
+ },
501
+ "require-dev": {
502
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7",
503
+ "paragonie/random_compat": "dev-master",
504
+ "paragonie/sodium_compat": "dev-master"
505
+ },
506
+ "suggest": {
507
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.",
508
+ "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
509
+ },
510
+ "type": "phpcodesniffer-standard",
511
+ "notification-url": "https://packagist.org/downloads/",
512
+ "license": [
513
+ "LGPL-3.0-or-later"
514
+ ],
515
+ "authors": [
516
+ {
517
+ "name": "Wim Godden",
518
+ "role": "lead"
519
+ },
520
+ {
521
+ "name": "Juliette Reinders Folmer",
522
+ "role": "lead"
523
+ }
524
+ ],
525
+ "description": "A set of rulesets for PHP_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by the Paragonie polyfill libraries.",
526
+ "homepage": "http://phpcompatibility.com/",
527
+ "keywords": [
528
+ "compatibility",
529
+ "paragonie",
530
+ "phpcs",
531
+ "polyfill",
532
+ "standards"
533
+ ],
534
+ "support": {
535
+ "issues": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie/issues",
536
+ "source": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie"
537
+ },
538
+ "time": "2021-02-15T10:24:51+00:00"
539
+ },
540
+ {
541
+ "name": "phpcompatibility/phpcompatibility-wp",
542
+ "version": "2.1.1",
543
+ "source": {
544
+ "type": "git",
545
+ "url": "https://github.com/PHPCompatibility/PHPCompatibilityWP.git",
546
+ "reference": "b7dc0cd7a8f767ccac5e7637550ea1c50a67b09e"
547
+ },
548
+ "dist": {
549
+ "type": "zip",
550
+ "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/b7dc0cd7a8f767ccac5e7637550ea1c50a67b09e",
551
+ "reference": "b7dc0cd7a8f767ccac5e7637550ea1c50a67b09e",
552
+ "shasum": ""
553
+ },
554
+ "require": {
555
+ "phpcompatibility/php-compatibility": "^9.0",
556
+ "phpcompatibility/phpcompatibility-paragonie": "^1.0"
557
+ },
558
+ "require-dev": {
559
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7"
560
+ },
561
+ "suggest": {
562
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.",
563
+ "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
564
+ },
565
+ "type": "phpcodesniffer-standard",
566
+ "notification-url": "https://packagist.org/downloads/",
567
+ "license": [
568
+ "LGPL-3.0-or-later"
569
+ ],
570
+ "authors": [
571
+ {
572
+ "name": "Wim Godden",
573
+ "role": "lead"
574
+ },
575
+ {
576
+ "name": "Juliette Reinders Folmer",
577
+ "role": "lead"
578
+ }
579
+ ],
580
+ "description": "A ruleset for PHP_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by WordPress.",
581
+ "homepage": "http://phpcompatibility.com/",
582
+ "keywords": [
583
+ "compatibility",
584
+ "phpcs",
585
+ "standards",
586
+ "wordpress"
587
+ ],
588
+ "support": {
589
+ "issues": "https://github.com/PHPCompatibility/PHPCompatibilityWP/issues",
590
+ "source": "https://github.com/PHPCompatibility/PHPCompatibilityWP"
591
+ },
592
+ "time": "2021-02-15T12:58:46+00:00"
593
+ },
594
+ {
595
+ "name": "phpdocumentor/reflection-common",
596
+ "version": "2.2.0",
597
+ "source": {
598
+ "type": "git",
599
+ "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
600
+ "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b"
601
+ },
602
+ "dist": {
603
+ "type": "zip",
604
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b",
605
+ "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b",
606
+ "shasum": ""
607
+ },
608
+ "require": {
609
+ "php": "^7.2 || ^8.0"
610
+ },
611
+ "type": "library",
612
+ "extra": {
613
+ "branch-alias": {
614
+ "dev-2.x": "2.x-dev"
615
+ }
616
+ },
617
+ "autoload": {
618
+ "psr-4": {
619
+ "phpDocumentor\\Reflection\\": "src/"
620
+ }
621
+ },
622
+ "notification-url": "https://packagist.org/downloads/",
623
+ "license": [
624
+ "MIT"
625
+ ],
626
+ "authors": [
627
+ {
628
+ "name": "Jaap van Otterdijk",
629
+ "email": "opensource@ijaap.nl"
630
+ }
631
+ ],
632
+ "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
633
+ "homepage": "http://www.phpdoc.org",
634
+ "keywords": [
635
+ "FQSEN",
636
+ "phpDocumentor",
637
+ "phpdoc",
638
+ "reflection",
639
+ "static analysis"
640
+ ],
641
+ "support": {
642
+ "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues",
643
+ "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x"
644
+ },
645
+ "time": "2020-06-27T09:03:43+00:00"
646
+ },
647
+ {
648
+ "name": "phpdocumentor/reflection-docblock",
649
+ "version": "5.2.2",
650
+ "source": {
651
+ "type": "git",
652
+ "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
653
+ "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556"
654
+ },
655
+ "dist": {
656
+ "type": "zip",
657
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556",
658
+ "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556",
659
+ "shasum": ""
660
+ },
661
+ "require": {
662
+ "ext-filter": "*",
663
+ "php": "^7.2 || ^8.0",
664
+ "phpdocumentor/reflection-common": "^2.2",
665
+ "phpdocumentor/type-resolver": "^1.3",
666
+ "webmozart/assert": "^1.9.1"
667
+ },
668
+ "require-dev": {
669
+ "mockery/mockery": "~1.3.2"
670
+ },
671
+ "type": "library",
672
+ "extra": {
673
+ "branch-alias": {
674
+ "dev-master": "5.x-dev"
675
+ }
676
+ },
677
+ "autoload": {
678
+ "psr-4": {
679
+ "phpDocumentor\\Reflection\\": "src"
680
+ }
681
+ },
682
+ "notification-url": "https://packagist.org/downloads/",
683
+ "license": [
684
+ "MIT"
685
+ ],
686
+ "authors": [
687
+ {
688
+ "name": "Mike van Riel",
689
+ "email": "me@mikevanriel.com"
690
+ },
691
+ {
692
+ "name": "Jaap van Otterdijk",
693
+ "email": "account@ijaap.nl"
694
+ }
695
+ ],
696
+ "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
697
+ "support": {
698
+ "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues",
699
+ "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/master"
700
+ },
701
+ "time": "2020-09-03T19:13:55+00:00"
702
+ },
703
+ {
704
+ "name": "phpdocumentor/type-resolver",
705
+ "version": "1.4.0",
706
+ "source": {
707
+ "type": "git",
708
+ "url": "https://github.com/phpDocumentor/TypeResolver.git",
709
+ "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0"
710
+ },
711
+ "dist": {
712
+ "type": "zip",
713
+ "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0",
714
+ "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0",
715
+ "shasum": ""
716
+ },
717
+ "require": {
718
+ "php": "^7.2 || ^8.0",
719
+ "phpdocumentor/reflection-common": "^2.0"
720
+ },
721
+ "require-dev": {
722
+ "ext-tokenizer": "*"
723
+ },
724
+ "type": "library",
725
+ "extra": {
726
+ "branch-alias": {
727
+ "dev-1.x": "1.x-dev"
728
+ }
729
+ },
730
+ "autoload": {
731
+ "psr-4": {
732
+ "phpDocumentor\\Reflection\\": "src"
733
+ }
734
+ },
735
+ "notification-url": "https://packagist.org/downloads/",
736
+ "license": [
737
+ "MIT"
738
+ ],
739
+ "authors": [
740
+ {
741
+ "name": "Mike van Riel",
742
+ "email": "me@mikevanriel.com"
743
+ }
744
+ ],
745
+ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
746
+ "support": {
747
+ "issues": "https://github.com/phpDocumentor/TypeResolver/issues",
748
+ "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.4.0"
749
+ },
750
+ "time": "2020-09-17T18:55:26+00:00"
751
+ },
752
+ {
753
+ "name": "phpspec/prophecy",
754
+ "version": "1.13.0",
755
+ "source": {
756
+ "type": "git",
757
+ "url": "https://github.com/phpspec/prophecy.git",
758
+ "reference": "be1996ed8adc35c3fd795488a653f4b518be70ea"
759
+ },
760
+ "dist": {
761
+ "type": "zip",
762
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/be1996ed8adc35c3fd795488a653f4b518be70ea",
763
+ "reference": "be1996ed8adc35c3fd795488a653f4b518be70ea",
764
+ "shasum": ""
765
+ },
766
+ "require": {
767
+ "doctrine/instantiator": "^1.2",
768
+ "php": "^7.2 || ~8.0, <8.1",
769
+ "phpdocumentor/reflection-docblock": "^5.2",
770
+ "sebastian/comparator": "^3.0 || ^4.0",
771
+ "sebastian/recursion-context": "^3.0 || ^4.0"
772
+ },
773
+ "require-dev": {
774
+ "phpspec/phpspec": "^6.0",
775
+ "phpunit/phpunit": "^8.0 || ^9.0"
776
+ },
777
+ "type": "library",
778
+ "extra": {
779
+ "branch-alias": {
780
+ "dev-master": "1.11.x-dev"
781
+ }
782
+ },
783
+ "autoload": {
784
+ "psr-4": {
785
+ "Prophecy\\": "src/Prophecy"
786
+ }
787
+ },
788
+ "notification-url": "https://packagist.org/downloads/",
789
+ "license": [
790
+ "MIT"
791
+ ],
792
+ "authors": [
793
+ {
794
+ "name": "Konstantin Kudryashov",
795
+ "email": "ever.zet@gmail.com",
796
+ "homepage": "http://everzet.com"
797
+ },
798
+ {
799
+ "name": "Marcello Duarte",
800
+ "email": "marcello.duarte@gmail.com"
801
+ }
802
+ ],
803
+ "description": "Highly opinionated mocking framework for PHP 5.3+",
804
+ "homepage": "https://github.com/phpspec/prophecy",
805
+ "keywords": [
806
+ "Double",
807
+ "Dummy",
808
+ "fake",
809
+ "mock",
810
+ "spy",
811
+ "stub"
812
+ ],
813
+ "support": {
814
+ "issues": "https://github.com/phpspec/prophecy/issues",
815
+ "source": "https://github.com/phpspec/prophecy/tree/1.13.0"
816
+ },
817
+ "time": "2021-03-17T13:42:18+00:00"
818
+ },
819
+ {
820
+ "name": "phpunit/php-code-coverage",
821
+ "version": "9.2.6",
822
+ "source": {
823
+ "type": "git",
824
+ "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
825
+ "reference": "f6293e1b30a2354e8428e004689671b83871edde"
826
+ },
827
+ "dist": {
828
+ "type": "zip",
829
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f6293e1b30a2354e8428e004689671b83871edde",
830
+ "reference": "f6293e1b30a2354e8428e004689671b83871edde",
831
+ "shasum": ""
832
+ },
833
+ "require": {
834
+ "ext-dom": "*",
835
+ "ext-libxml": "*",
836
+ "ext-xmlwriter": "*",
837
+ "nikic/php-parser": "^4.10.2",
838
+ "php": ">=7.3",
839
+ "phpunit/php-file-iterator": "^3.0.3",
840
+ "phpunit/php-text-template": "^2.0.2",
841
+ "sebastian/code-unit-reverse-lookup": "^2.0.2",
842
+ "sebastian/complexity": "^2.0",
843
+ "sebastian/environment": "^5.1.2",
844
+ "sebastian/lines-of-code": "^1.0.3",
845
+ "sebastian/version": "^3.0.1",
846
+ "theseer/tokenizer": "^1.2.0"
847
+ },
848
+ "require-dev": {
849
+ "phpunit/phpunit": "^9.3"
850
+ },
851
+ "suggest": {
852
+ "ext-pcov": "*",
853
+ "ext-xdebug": "*"
854
+ },
855
+ "type": "library",
856
+ "extra": {
857
+ "branch-alias": {
858
+ "dev-master": "9.2-dev"
859
+ }
860
+ },
861
+ "autoload": {
862
+ "classmap": [
863
+ "src/"
864
+ ]
865
+ },
866
+ "notification-url": "https://packagist.org/downloads/",
867
+ "license": [
868
+ "BSD-3-Clause"
869
+ ],
870
+ "authors": [
871
+ {
872
+ "name": "Sebastian Bergmann",
873
+ "email": "sebastian@phpunit.de",
874
+ "role": "lead"
875
+ }
876
+ ],
877
+ "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
878
+ "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
879
+ "keywords": [
880
+ "coverage",
881
+ "testing",
882
+ "xunit"
883
+ ],
884
+ "support": {
885
+ "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
886
+ "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.6"
887
+ },
888
+ "funding": [
889
+ {
890
+ "url": "https://github.com/sebastianbergmann",
891
+ "type": "github"
892
+ }
893
+ ],
894
+ "time": "2021-03-28T07:26:59+00:00"
895
+ },
896
+ {
897
+ "name": "phpunit/php-file-iterator",
898
+ "version": "3.0.5",
899
+ "source": {
900
+ "type": "git",
901
+ "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
902
+ "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8"
903
+ },
904
+ "dist": {
905
+ "type": "zip",
906
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/aa4be8575f26070b100fccb67faabb28f21f66f8",
907
+ "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8",
908
+ "shasum": ""
909
+ },
910
+ "require": {
911
+ "php": ">=7.3"
912
+ },
913
+ "require-dev": {
914
+ "phpunit/phpunit": "^9.3"
915
+ },
916
+ "type": "library",
917
+ "extra": {
918
+ "branch-alias": {
919
+ "dev-master": "3.0-dev"
920
+ }
921
+ },
922
+ "autoload": {
923
+ "classmap": [
924
+ "src/"
925
+ ]
926
+ },
927
+ "notification-url": "https://packagist.org/downloads/",
928
+ "license": [
929
+ "BSD-3-Clause"
930
+ ],
931
+ "authors": [
932
+ {
933
+ "name": "Sebastian Bergmann",
934
+ "email": "sebastian@phpunit.de",
935
+ "role": "lead"
936
+ }
937
+ ],
938
+ "description": "FilterIterator implementation that filters files based on a list of suffixes.",
939
+ "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
940
+ "keywords": [
941
+ "filesystem",
942
+ "iterator"
943
+ ],
944
+ "support": {
945
+ "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues",
946
+ "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.5"
947
+ },
948
+ "funding": [
949
+ {
950
+ "url": "https://github.com/sebastianbergmann",
951
+ "type": "github"
952
+ }
953
+ ],
954
+ "time": "2020-09-28T05:57:25+00:00"
955
+ },
956
+ {
957
+ "name": "phpunit/php-invoker",
958
+ "version": "3.1.1",
959
+ "source": {
960
+ "type": "git",
961
+ "url": "https://github.com/sebastianbergmann/php-invoker.git",
962
+ "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67"
963
+ },
964
+ "dist": {
965
+ "type": "zip",
966
+ "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
967
+ "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
968
+ "shasum": ""
969
+ },
970
+ "require": {
971
+ "php": ">=7.3"
972
+ },
973
+ "require-dev": {
974
+ "ext-pcntl": "*",
975
+ "phpunit/phpunit": "^9.3"
976
+ },
977
+ "suggest": {
978
+ "ext-pcntl": "*"
979
+ },
980
+ "type": "library",
981
+ "extra": {
982
+ "branch-alias": {
983
+ "dev-master": "3.1-dev"
984
+ }
985
+ },
986
+ "autoload": {
987
+ "classmap": [
988
+ "src/"
989
+ ]
990
+ },
991
+ "notification-url": "https://packagist.org/downloads/",
992
+ "license": [
993
+ "BSD-3-Clause"
994
+ ],
995
+ "authors": [
996
+ {
997
+ "name": "Sebastian Bergmann",
998
+ "email": "sebastian@phpunit.de",
999
+ "role": "lead"
1000
+ }
1001
+ ],
1002
+ "description": "Invoke callables with a timeout",
1003
+ "homepage": "https://github.com/sebastianbergmann/php-invoker/",
1004
+ "keywords": [
1005
+ "process"
1006
+ ],
1007
+ "support": {
1008
+ "issues": "https://github.com/sebastianbergmann/php-invoker/issues",
1009
+ "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1"
1010
+ },
1011
+ "funding": [
1012
+ {
1013
+ "url": "https://github.com/sebastianbergmann",
1014
+ "type": "github"
1015
+ }
1016
+ ],
1017
+ "time": "2020-09-28T05:58:55+00:00"
1018
+ },
1019
+ {
1020
+ "name": "phpunit/php-text-template",
1021
+ "version": "2.0.4",
1022
+ "source": {
1023
+ "type": "git",
1024
+ "url": "https://github.com/sebastianbergmann/php-text-template.git",
1025
+ "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28"
1026
+ },
1027
+ "dist": {
1028
+ "type": "zip",
1029
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
1030
+ "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
1031
+ "shasum": ""
1032
+ },
1033
+ "require": {
1034
+ "php": ">=7.3"
1035
+ },
1036
+ "require-dev": {
1037
+ "phpunit/phpunit": "^9.3"
1038
+ },
1039
+ "type": "library",
1040
+ "extra": {
1041
+ "branch-alias": {
1042
+ "dev-master": "2.0-dev"
1043
+ }
1044
+ },
1045
+ "autoload": {
1046
+ "classmap": [
1047
+ "src/"
1048
+ ]
1049
+ },
1050
+ "notification-url": "https://packagist.org/downloads/",
1051
+ "license": [
1052
+ "BSD-3-Clause"
1053
+ ],
1054
+ "authors": [
1055
+ {
1056
+ "name": "Sebastian Bergmann",
1057
+ "email": "sebastian@phpunit.de",
1058
+ "role": "lead"
1059
+ }
1060
+ ],
1061
+ "description": "Simple template engine.",
1062
+ "homepage": "https://github.com/sebastianbergmann/php-text-template/",
1063
+ "keywords": [
1064
+ "template"
1065
+ ],
1066
+ "support": {
1067
+ "issues": "https://github.com/sebastianbergmann/php-text-template/issues",
1068
+ "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4"
1069
+ },
1070
+ "funding": [
1071
+ {
1072
+ "url": "https://github.com/sebastianbergmann",
1073
+ "type": "github"
1074
+ }
1075
+ ],
1076
+ "time": "2020-10-26T05:33:50+00:00"
1077
+ },
1078
+ {
1079
+ "name": "phpunit/php-timer",
1080
+ "version": "5.0.3",
1081
+ "source": {
1082
+ "type": "git",
1083
+ "url": "https://github.com/sebastianbergmann/php-timer.git",
1084
+ "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2"
1085
+ },
1086
+ "dist": {
1087
+ "type": "zip",
1088
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
1089
+ "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
1090
+ "shasum": ""
1091
+ },
1092
+ "require": {
1093
+ "php": ">=7.3"
1094
+ },
1095
+ "require-dev": {
1096
+ "phpunit/phpunit": "^9.3"
1097
+ },
1098
+ "type": "library",
1099
+ "extra": {
1100
+ "branch-alias": {
1101
+ "dev-master": "5.0-dev"
1102
+ }
1103
+ },
1104
+ "autoload": {
1105
+ "classmap": [
1106
+ "src/"
1107
+ ]
1108
+ },
1109
+ "notification-url": "https://packagist.org/downloads/",
1110
+ "license": [
1111
+ "BSD-3-Clause"
1112
+ ],
1113
+ "authors": [
1114
+ {
1115
+ "name": "Sebastian Bergmann",
1116
+ "email": "sebastian@phpunit.de",
1117
+ "role": "lead"
1118
+ }
1119
+ ],
1120
+ "description": "Utility class for timing",
1121
+ "homepage": "https://github.com/sebastianbergmann/php-timer/",
1122
+ "keywords": [
1123
+ "timer"
1124
+ ],
1125
+ "support": {
1126
+ "issues": "https://github.com/sebastianbergmann/php-timer/issues",
1127
+ "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3"
1128
+ },
1129
+ "funding": [
1130
+ {
1131
+ "url": "https://github.com/sebastianbergmann",
1132
+ "type": "github"
1133
+ }
1134
+ ],
1135
+ "time": "2020-10-26T13:16:10+00:00"
1136
+ },
1137
+ {
1138
+ "name": "phpunit/phpunit",
1139
+ "version": "9.5.4",
1140
+ "source": {
1141
+ "type": "git",
1142
+ "url": "https://github.com/sebastianbergmann/phpunit.git",
1143
+ "reference": "c73c6737305e779771147af66c96ca6a7ed8a741"
1144
+ },
1145
+ "dist": {
1146
+ "type": "zip",
1147
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c73c6737305e779771147af66c96ca6a7ed8a741",
1148
+ "reference": "c73c6737305e779771147af66c96ca6a7ed8a741",
1149
+ "shasum": ""
1150
+ },
1151
+ "require": {
1152
+ "doctrine/instantiator": "^1.3.1",
1153
+ "ext-dom": "*",
1154
+ "ext-json": "*",
1155
+ "ext-libxml": "*",
1156
+ "ext-mbstring": "*",
1157
+ "ext-xml": "*",
1158
+ "ext-xmlwriter": "*",
1159
+ "myclabs/deep-copy": "^1.10.1",
1160
+ "phar-io/manifest": "^2.0.1",
1161
+ "phar-io/version": "^3.0.2",
1162
+ "php": ">=7.3",
1163
+ "phpspec/prophecy": "^1.12.1",
1164
+ "phpunit/php-code-coverage": "^9.2.3",
1165
+ "phpunit/php-file-iterator": "^3.0.5",
1166
+ "phpunit/php-invoker": "^3.1.1",
1167
+ "phpunit/php-text-template": "^2.0.3",
1168
+ "phpunit/php-timer": "^5.0.2",
1169
+ "sebastian/cli-parser": "^1.0.1",
1170
+ "sebastian/code-unit": "^1.0.6",
1171
+ "sebastian/comparator": "^4.0.5",
1172
+ "sebastian/diff": "^4.0.3",
1173
+ "sebastian/environment": "^5.1.3",
1174
+ "sebastian/exporter": "^4.0.3",
1175
+ "sebastian/global-state": "^5.0.1",
1176
+ "sebastian/object-enumerator": "^4.0.3",
1177
+ "sebastian/resource-operations": "^3.0.3",
1178
+ "sebastian/type": "^2.3",
1179
+ "sebastian/version": "^3.0.2"
1180
+ },
1181
+ "require-dev": {
1182
+ "ext-pdo": "*",
1183
+ "phpspec/prophecy-phpunit": "^2.0.1"
1184
+ },
1185
+ "suggest": {
1186
+ "ext-soap": "*",
1187
+ "ext-xdebug": "*"
1188
+ },
1189
+ "bin": [
1190
+ "phpunit"
1191
+ ],
1192
+ "type": "library",
1193
+ "extra": {
1194
+ "branch-alias": {
1195
+ "dev-master": "9.5-dev"
1196
+ }
1197
+ },
1198
+ "autoload": {
1199
+ "classmap": [
1200
+ "src/"
1201
+ ],
1202
+ "files": [
1203
+ "src/Framework/Assert/Functions.php"
1204
+ ]
1205
+ },
1206
+ "notification-url": "https://packagist.org/downloads/",
1207
+ "license": [
1208
+ "BSD-3-Clause"
1209
+ ],
1210
+ "authors": [
1211
+ {
1212
+ "name": "Sebastian Bergmann",
1213
+ "email": "sebastian@phpunit.de",
1214
+ "role": "lead"
1215
+ }
1216
+ ],
1217
+ "description": "The PHP Unit Testing framework.",
1218
+ "homepage": "https://phpunit.de/",
1219
+ "keywords": [
1220
+ "phpunit",
1221
+ "testing",
1222
+ "xunit"
1223
+ ],
1224
+ "support": {
1225
+ "issues": "https://github.com/sebastianbergmann/phpunit/issues",
1226
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.4"
1227
+ },
1228
+ "funding": [
1229
+ {
1230
+ "url": "https://phpunit.de/donate.html",
1231
+ "type": "custom"
1232
+ },
1233
+ {
1234
+ "url": "https://github.com/sebastianbergmann",
1235
+ "type": "github"
1236
+ }
1237
+ ],
1238
+ "time": "2021-03-23T07:16:29+00:00"
1239
+ },
1240
+ {
1241
+ "name": "sebastian/cli-parser",
1242
+ "version": "1.0.1",
1243
+ "source": {
1244
+ "type": "git",
1245
+ "url": "https://github.com/sebastianbergmann/cli-parser.git",
1246
+ "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2"
1247
+ },
1248
+ "dist": {
1249
+ "type": "zip",
1250
+ "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2",
1251
+ "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2",
1252
+ "shasum": ""
1253
+ },
1254
+ "require": {
1255
+ "php": ">=7.3"
1256
+ },
1257
+ "require-dev": {
1258
+ "phpunit/phpunit": "^9.3"
1259
+ },
1260
+ "type": "library",
1261
+ "extra": {
1262
+ "branch-alias": {
1263
+ "dev-master": "1.0-dev"
1264
+ }
1265
+ },
1266
+ "autoload": {
1267
+ "classmap": [
1268
+ "src/"
1269
+ ]
1270
+ },
1271
+ "notification-url": "https://packagist.org/downloads/",
1272
+ "license": [
1273
+ "BSD-3-Clause"
1274
+ ],
1275
+ "authors": [
1276
+ {
1277
+ "name": "Sebastian Bergmann",
1278
+ "email": "sebastian@phpunit.de",
1279
+ "role": "lead"
1280
+ }
1281
+ ],
1282
+ "description": "Library for parsing CLI options",
1283
+ "homepage": "https://github.com/sebastianbergmann/cli-parser",
1284
+ "support": {
1285
+ "issues": "https://github.com/sebastianbergmann/cli-parser/issues",
1286
+ "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1"
1287
+ },
1288
+ "funding": [
1289
+ {
1290
+ "url": "https://github.com/sebastianbergmann",
1291
+ "type": "github"
1292
+ }
1293
+ ],
1294
+ "time": "2020-09-28T06:08:49+00:00"
1295
+ },
1296
+ {
1297
+ "name": "sebastian/code-unit",
1298
+ "version": "1.0.8",
1299
+ "source": {
1300
+ "type": "git",
1301
+ "url": "https://github.com/sebastianbergmann/code-unit.git",
1302
+ "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120"
1303
+ },
1304
+ "dist": {
1305
+ "type": "zip",
1306
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120",
1307
+ "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120",
1308
+ "shasum": ""
1309
+ },
1310
+ "require": {
1311
+ "php": ">=7.3"
1312
+ },
1313
+ "require-dev": {
1314
+ "phpunit/phpunit": "^9.3"
1315
+ },
1316
+ "type": "library",
1317
+ "extra": {
1318
+ "branch-alias": {
1319
+ "dev-master": "1.0-dev"
1320
+ }
1321
+ },
1322
+ "autoload": {
1323
+ "classmap": [
1324
+ "src/"
1325
+ ]
1326
+ },
1327
+ "notification-url": "https://packagist.org/downloads/",
1328
+ "license": [
1329
+ "BSD-3-Clause"
1330
+ ],
1331
+ "authors": [
1332
+ {
1333
+ "name": "Sebastian Bergmann",
1334
+ "email": "sebastian@phpunit.de",
1335
+ "role": "lead"
1336
+ }
1337
+ ],
1338
+ "description": "Collection of value objects that represent the PHP code units",
1339
+ "homepage": "https://github.com/sebastianbergmann/code-unit",
1340
+ "support": {
1341
+ "issues": "https://github.com/sebastianbergmann/code-unit/issues",
1342
+ "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8"
1343
+ },
1344
+ "funding": [
1345
+ {
1346
+ "url": "https://github.com/sebastianbergmann",
1347
+ "type": "github"
1348
+ }
1349
+ ],
1350
+ "time": "2020-10-26T13:08:54+00:00"
1351
+ },
1352
+ {
1353
+ "name": "sebastian/code-unit-reverse-lookup",
1354
+ "version": "2.0.3",
1355
+ "source": {
1356
+ "type": "git",
1357
+ "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
1358
+ "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5"
1359
+ },
1360
+ "dist": {
1361
+ "type": "zip",
1362
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
1363
+ "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
1364
+ "shasum": ""
1365
+ },
1366
+ "require": {
1367
+ "php": ">=7.3"
1368
+ },
1369
+ "require-dev": {
1370
+ "phpunit/phpunit": "^9.3"
1371
+ },
1372
+ "type": "library",
1373
+ "extra": {
1374
+ "branch-alias": {
1375
+ "dev-master": "2.0-dev"
1376
+ }
1377
+ },
1378
+ "autoload": {
1379
+ "classmap": [
1380
+ "src/"
1381
+ ]
1382
+ },
1383
+ "notification-url": "https://packagist.org/downloads/",
1384
+ "license": [
1385
+ "BSD-3-Clause"
1386
+ ],
1387
+ "authors": [
1388
+ {
1389
+ "name": "Sebastian Bergmann",
1390
+ "email": "sebastian@phpunit.de"
1391
+ }
1392
+ ],
1393
+ "description": "Looks up which function or method a line of code belongs to",
1394
+ "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
1395
+ "support": {
1396
+ "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues",
1397
+ "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3"
1398
+ },
1399
+ "funding": [
1400
+ {
1401
+ "url": "https://github.com/sebastianbergmann",
1402
+ "type": "github"
1403
+ }
1404
+ ],
1405
+ "time": "2020-09-28T05:30:19+00:00"
1406
+ },
1407
+ {
1408
+ "name": "sebastian/comparator",
1409
+ "version": "4.0.6",
1410
+ "source": {
1411
+ "type": "git",
1412
+ "url": "https://github.com/sebastianbergmann/comparator.git",
1413
+ "reference": "55f4261989e546dc112258c7a75935a81a7ce382"
1414
+ },
1415
+ "dist": {
1416
+ "type": "zip",
1417
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382",
1418
+ "reference": "55f4261989e546dc112258c7a75935a81a7ce382",
1419
+ "shasum": ""
1420
+ },
1421
+ "require": {
1422
+ "php": ">=7.3",
1423
+ "sebastian/diff": "^4.0",
1424
+ "sebastian/exporter": "^4.0"
1425
+ },
1426
+ "require-dev": {
1427
+ "phpunit/phpunit": "^9.3"
1428
+ },
1429
+ "type": "library",
1430
+ "extra": {
1431
+ "branch-alias": {
1432
+ "dev-master": "4.0-dev"
1433
+ }
1434
+ },
1435
+ "autoload": {
1436
+ "classmap": [
1437
+ "src/"
1438
+ ]
1439
+ },
1440
+ "notification-url": "https://packagist.org/downloads/",
1441
+ "license": [
1442
+ "BSD-3-Clause"
1443
+ ],
1444
+ "authors": [
1445
+ {
1446
+ "name": "Sebastian Bergmann",
1447
+ "email": "sebastian@phpunit.de"
1448
+ },
1449
+ {
1450
+ "name": "Jeff Welch",
1451
+ "email": "whatthejeff@gmail.com"
1452
+ },
1453
+ {
1454
+ "name": "Volker Dusch",
1455
+ "email": "github@wallbash.com"
1456
+ },
1457
+ {
1458
+ "name": "Bernhard Schussek",
1459
+ "email": "bschussek@2bepublished.at"
1460
+ }
1461
+ ],
1462
+ "description": "Provides the functionality to compare PHP values for equality",
1463
+ "homepage": "https://github.com/sebastianbergmann/comparator",
1464
+ "keywords": [
1465
+ "comparator",
1466
+ "compare",
1467
+ "equality"
1468
+ ],
1469
+ "support": {
1470
+ "issues": "https://github.com/sebastianbergmann/comparator/issues",
1471
+ "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6"
1472
+ },
1473
+ "funding": [
1474
+ {
1475
+ "url": "https://github.com/sebastianbergmann",
1476
+ "type": "github"
1477
+ }
1478
+ ],
1479
+ "time": "2020-10-26T15:49:45+00:00"
1480
+ },
1481
+ {
1482
+ "name": "sebastian/complexity",
1483
+ "version": "2.0.2",
1484
+ "source": {
1485
+ "type": "git",
1486
+ "url": "https://github.com/sebastianbergmann/complexity.git",
1487
+ "reference": "739b35e53379900cc9ac327b2147867b8b6efd88"
1488
+ },
1489
+ "dist": {
1490
+ "type": "zip",
1491
+ "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88",
1492
+ "reference": "739b35e53379900cc9ac327b2147867b8b6efd88",
1493
+ "shasum": ""
1494
+ },
1495
+ "require": {
1496
+ "nikic/php-parser": "^4.7",
1497
+ "php": ">=7.3"
1498
+ },
1499
+ "require-dev": {
1500
+ "phpunit/phpunit": "^9.3"
1501
+ },
1502
+ "type": "library",
1503
+ "extra": {
1504
+ "branch-alias": {
1505
+ "dev-master": "2.0-dev"
1506
+ }
1507
+ },
1508
+ "autoload": {
1509
+ "classmap": [
1510
+ "src/"
1511
+ ]
1512
+ },
1513
+ "notification-url": "https://packagist.org/downloads/",
1514
+ "license": [
1515
+ "BSD-3-Clause"
1516
+ ],
1517
+ "authors": [
1518
+ {
1519
+ "name": "Sebastian Bergmann",
1520
+ "email": "sebastian@phpunit.de",
1521
+ "role": "lead"
1522
+ }
1523
+ ],
1524
+ "description": "Library for calculating the complexity of PHP code units",
1525
+ "homepage": "https://github.com/sebastianbergmann/complexity",
1526
+ "support": {
1527
+ "issues": "https://github.com/sebastianbergmann/complexity/issues",
1528
+ "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2"
1529
+ },
1530
+ "funding": [
1531
+ {
1532
+ "url": "https://github.com/sebastianbergmann",
1533
+ "type": "github"
1534
+ }
1535
+ ],
1536
+ "time": "2020-10-26T15:52:27+00:00"
1537
+ },
1538
+ {
1539
+ "name": "sebastian/diff",
1540
+ "version": "4.0.4",
1541
+ "source": {
1542
+ "type": "git",
1543
+ "url": "https://github.com/sebastianbergmann/diff.git",
1544
+ "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d"
1545
+ },
1546
+ "dist": {
1547
+ "type": "zip",
1548
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d",
1549
+ "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d",
1550
+ "shasum": ""
1551
+ },
1552
+ "require": {
1553
+ "php": ">=7.3"
1554
+ },
1555
+ "require-dev": {
1556
+ "phpunit/phpunit": "^9.3",
1557
+ "symfony/process": "^4.2 || ^5"
1558
+ },
1559
+ "type": "library",
1560
+ "extra": {
1561
+ "branch-alias": {
1562
+ "dev-master": "4.0-dev"
1563
+ }
1564
+ },
1565
+ "autoload": {
1566
+ "classmap": [
1567
+ "src/"
1568
+ ]
1569
+ },
1570
+ "notification-url": "https://packagist.org/downloads/",
1571
+ "license": [
1572
+ "BSD-3-Clause"
1573
+ ],
1574
+ "authors": [
1575
+ {
1576
+ "name": "Sebastian Bergmann",
1577
+ "email": "sebastian@phpunit.de"
1578
+ },
1579
+ {
1580
+ "name": "Kore Nordmann",
1581
+ "email": "mail@kore-nordmann.de"
1582
+ }
1583
+ ],
1584
+ "description": "Diff implementation",
1585
+ "homepage": "https://github.com/sebastianbergmann/diff",
1586
+ "keywords": [
1587
+ "diff",
1588
+ "udiff",
1589
+ "unidiff",
1590
+ "unified diff"
1591
+ ],
1592
+ "support": {
1593
+ "issues": "https://github.com/sebastianbergmann/diff/issues",
1594
+ "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4"
1595
+ },
1596
+ "funding": [
1597
+ {
1598
+ "url": "https://github.com/sebastianbergmann",
1599
+ "type": "github"
1600
+ }
1601
+ ],
1602
+ "time": "2020-10-26T13:10:38+00:00"
1603
+ },
1604
+ {
1605
+ "name": "sebastian/environment",
1606
+ "version": "5.1.3",
1607
+ "source": {
1608
+ "type": "git",
1609
+ "url": "https://github.com/sebastianbergmann/environment.git",
1610
+ "reference": "388b6ced16caa751030f6a69e588299fa09200ac"
1611
+ },
1612
+ "dist": {
1613
+ "type": "zip",
1614
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/388b6ced16caa751030f6a69e588299fa09200ac",
1615
+ "reference": "388b6ced16caa751030f6a69e588299fa09200ac",
1616
+ "shasum": ""
1617
+ },
1618
+ "require": {
1619
+ "php": ">=7.3"
1620
+ },
1621
+ "require-dev": {
1622
+ "phpunit/phpunit": "^9.3"
1623
+ },
1624
+ "suggest": {
1625
+ "ext-posix": "*"
1626
+ },
1627
+ "type": "library",
1628
+ "extra": {
1629
+ "branch-alias": {
1630
+ "dev-master": "5.1-dev"
1631
+ }
1632
+ },
1633
+ "autoload": {
1634
+ "classmap": [
1635
+ "src/"
1636
+ ]
1637
+ },
1638
+ "notification-url": "https://packagist.org/downloads/",
1639
+ "license": [
1640
+ "BSD-3-Clause"
1641
+ ],
1642
+ "authors": [
1643
+ {
1644
+ "name": "Sebastian Bergmann",
1645
+ "email": "sebastian@phpunit.de"
1646
+ }
1647
+ ],
1648
+ "description": "Provides functionality to handle HHVM/PHP environments",
1649
+ "homepage": "http://www.github.com/sebastianbergmann/environment",
1650
+ "keywords": [
1651
+ "Xdebug",
1652
+ "environment",
1653
+ "hhvm"
1654
+ ],
1655
+ "support": {
1656
+ "issues": "https://github.com/sebastianbergmann/environment/issues",
1657
+ "source": "https://github.com/sebastianbergmann/environment/tree/5.1.3"
1658
+ },
1659
+ "funding": [
1660
+ {
1661
+ "url": "https://github.com/sebastianbergmann",
1662
+ "type": "github"
1663
+ }
1664
+ ],
1665
+ "time": "2020-09-28T05:52:38+00:00"
1666
+ },
1667
+ {
1668
+ "name": "sebastian/exporter",
1669
+ "version": "4.0.3",
1670
+ "source": {
1671
+ "type": "git",
1672
+ "url": "https://github.com/sebastianbergmann/exporter.git",
1673
+ "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65"
1674
+ },
1675
+ "dist": {
1676
+ "type": "zip",
1677
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/d89cc98761b8cb5a1a235a6b703ae50d34080e65",
1678
+ "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65",
1679
+ "shasum": ""
1680
+ },
1681
+ "require": {
1682
+ "php": ">=7.3",
1683
+ "sebastian/recursion-context": "^4.0"
1684
+ },
1685
+ "require-dev": {
1686
+ "ext-mbstring": "*",
1687
+ "phpunit/phpunit": "^9.3"
1688
+ },
1689
+ "type": "library",
1690
+ "extra": {
1691
+ "branch-alias": {
1692
+ "dev-master": "4.0-dev"
1693
+ }
1694
+ },
1695
+ "autoload": {
1696
+ "classmap": [
1697
+ "src/"
1698
+ ]
1699
+ },
1700
+ "notification-url": "https://packagist.org/downloads/",
1701
+ "license": [
1702
+ "BSD-3-Clause"
1703
+ ],
1704
+ "authors": [
1705
+ {
1706
+ "name": "Sebastian Bergmann",
1707
+ "email": "sebastian@phpunit.de"
1708
+ },
1709
+ {
1710
+ "name": "Jeff Welch",
1711
+ "email": "whatthejeff@gmail.com"
1712
+ },
1713
+ {
1714
+ "name": "Volker Dusch",
1715
+ "email": "github@wallbash.com"
1716
+ },
1717
+ {
1718
+ "name": "Adam Harvey",
1719
+ "email": "aharvey@php.net"
1720
+ },
1721
+ {
1722
+ "name": "Bernhard Schussek",
1723
+ "email": "bschussek@gmail.com"
1724
+ }
1725
+ ],
1726
+ "description": "Provides the functionality to export PHP variables for visualization",
1727
+ "homepage": "http://www.github.com/sebastianbergmann/exporter",
1728
+ "keywords": [
1729
+ "export",
1730
+ "exporter"
1731
+ ],
1732
+ "support": {
1733
+ "issues": "https://github.com/sebastianbergmann/exporter/issues",
1734
+ "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.3"
1735
+ },
1736
+ "funding": [
1737
+ {
1738
+ "url": "https://github.com/sebastianbergmann",
1739
+ "type": "github"
1740
+ }
1741
+ ],
1742
+ "time": "2020-09-28T05:24:23+00:00"
1743
+ },
1744
+ {
1745
+ "name": "sebastian/global-state",
1746
+ "version": "5.0.2",
1747
+ "source": {
1748
+ "type": "git",
1749
+ "url": "https://github.com/sebastianbergmann/global-state.git",
1750
+ "reference": "a90ccbddffa067b51f574dea6eb25d5680839455"
1751
+ },
1752
+ "dist": {
1753
+ "type": "zip",
1754
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/a90ccbddffa067b51f574dea6eb25d5680839455",
1755
+ "reference": "a90ccbddffa067b51f574dea6eb25d5680839455",
1756
+ "shasum": ""
1757
+ },
1758
+ "require": {
1759
+ "php": ">=7.3",
1760
+ "sebastian/object-reflector": "^2.0",
1761
+ "sebastian/recursion-context": "^4.0"
1762
+ },
1763
+ "require-dev": {
1764
+ "ext-dom": "*",
1765
+ "phpunit/phpunit": "^9.3"
1766
+ },
1767
+ "suggest": {
1768
+ "ext-uopz": "*"
1769
+ },
1770
+ "type": "library",
1771
+ "extra": {
1772
+ "branch-alias": {
1773
+ "dev-master": "5.0-dev"
1774
+ }
1775
+ },
1776
+ "autoload": {
1777
+ "classmap": [
1778
+ "src/"
1779
+ ]
1780
+ },
1781
+ "notification-url": "https://packagist.org/downloads/",
1782
+ "license": [
1783
+ "BSD-3-Clause"
1784
+ ],
1785
+ "authors": [
1786
+ {
1787
+ "name": "Sebastian Bergmann",
1788
+ "email": "sebastian@phpunit.de"
1789
+ }
1790
+ ],
1791
+ "description": "Snapshotting of global state",
1792
+ "homepage": "http://www.github.com/sebastianbergmann/global-state",
1793
+ "keywords": [
1794
+ "global state"
1795
+ ],
1796
+ "support": {
1797
+ "issues": "https://github.com/sebastianbergmann/global-state/issues",
1798
+ "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.2"
1799
+ },
1800
+ "funding": [
1801
+ {
1802
+ "url": "https://github.com/sebastianbergmann",
1803
+ "type": "github"
1804
+ }
1805
+ ],
1806
+ "time": "2020-10-26T15:55:19+00:00"
1807
+ },
1808
+ {
1809
+ "name": "sebastian/lines-of-code",
1810
+ "version": "1.0.3",
1811
+ "source": {
1812
+ "type": "git",
1813
+ "url": "https://github.com/sebastianbergmann/lines-of-code.git",
1814
+ "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc"
1815
+ },
1816
+ "dist": {
1817
+ "type": "zip",
1818
+ "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc",
1819
+ "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc",
1820
+ "shasum": ""
1821
+ },
1822
+ "require": {
1823
+ "nikic/php-parser": "^4.6",
1824
+ "php": ">=7.3"
1825
+ },
1826
+ "require-dev": {
1827
+ "phpunit/phpunit": "^9.3"
1828
+ },
1829
+ "type": "library",
1830
+ "extra": {
1831
+ "branch-alias": {
1832
+ "dev-master": "1.0-dev"
1833
+ }
1834
+ },
1835
+ "autoload": {
1836
+ "classmap": [
1837
+ "src/"
1838
+ ]
1839
+ },
1840
+ "notification-url": "https://packagist.org/downloads/",
1841
+ "license": [
1842
+ "BSD-3-Clause"
1843
+ ],
1844
+ "authors": [
1845
+ {
1846
+ "name": "Sebastian Bergmann",
1847
+ "email": "sebastian@phpunit.de",
1848
+ "role": "lead"
1849
+ }
1850
+ ],
1851
+ "description": "Library for counting the lines of code in PHP source code",
1852
+ "homepage": "https://github.com/sebastianbergmann/lines-of-code",
1853
+ "support": {
1854
+ "issues": "https://github.com/sebastianbergmann/lines-of-code/issues",
1855
+ "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3"
1856
+ },
1857
+ "funding": [
1858
+ {
1859
+ "url": "https://github.com/sebastianbergmann",
1860
+ "type": "github"
1861
+ }
1862
+ ],
1863
+ "time": "2020-11-28T06:42:11+00:00"
1864
+ },
1865
+ {
1866
+ "name": "sebastian/object-enumerator",
1867
+ "version": "4.0.4",
1868
+ "source": {
1869
+ "type": "git",
1870
+ "url": "https://github.com/sebastianbergmann/object-enumerator.git",
1871
+ "reference": "5c9eeac41b290a3712d88851518825ad78f45c71"
1872
+ },
1873
+ "dist": {
1874
+ "type": "zip",
1875
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71",
1876
+ "reference": "5c9eeac41b290a3712d88851518825ad78f45c71",
1877
+ "shasum": ""
1878
+ },
1879
+ "require": {
1880
+ "php": ">=7.3",
1881
+ "sebastian/object-reflector": "^2.0",
1882
+ "sebastian/recursion-context": "^4.0"
1883
+ },
1884
+ "require-dev": {
1885
+ "phpunit/phpunit": "^9.3"
1886
+ },
1887
+ "type": "library",
1888
+ "extra": {
1889
+ "branch-alias": {
1890
+ "dev-master": "4.0-dev"
1891
+ }
1892
+ },
1893
+ "autoload": {
1894
+ "classmap": [
1895
+ "src/"
1896
+ ]
1897
+ },
1898
+ "notification-url": "https://packagist.org/downloads/",
1899
+ "license": [
1900
+ "BSD-3-Clause"
1901
+ ],
1902
+ "authors": [
1903
+ {
1904
+ "name": "Sebastian Bergmann",
1905
+ "email": "sebastian@phpunit.de"
1906
+ }
1907
+ ],
1908
+ "description": "Traverses array structures and object graphs to enumerate all referenced objects",
1909
+ "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
1910
+ "support": {
1911
+ "issues": "https://github.com/sebastianbergmann/object-enumerator/issues",
1912
+ "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4"
1913
+ },
1914
+ "funding": [
1915
+ {
1916
+ "url": "https://github.com/sebastianbergmann",
1917
+ "type": "github"
1918
+ }
1919
+ ],
1920
+ "time": "2020-10-26T13:12:34+00:00"
1921
+ },
1922
+ {
1923
+ "name": "sebastian/object-reflector",
1924
+ "version": "2.0.4",
1925
+ "source": {
1926
+ "type": "git",
1927
+ "url": "https://github.com/sebastianbergmann/object-reflector.git",
1928
+ "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7"
1929
+ },
1930
+ "dist": {
1931
+ "type": "zip",
1932
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
1933
+ "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
1934
+ "shasum": ""
1935
+ },
1936
+ "require": {
1937
+ "php": ">=7.3"
1938
+ },
1939
+ "require-dev": {
1940
+ "phpunit/phpunit": "^9.3"
1941
+ },
1942
+ "type": "library",
1943
+ "extra": {
1944
+ "branch-alias": {
1945
+ "dev-master": "2.0-dev"
1946
+ }
1947
+ },
1948
+ "autoload": {
1949
+ "classmap": [
1950
+ "src/"
1951
+ ]
1952
+ },
1953
+ "notification-url": "https://packagist.org/downloads/",
1954
+ "license": [
1955
+ "BSD-3-Clause"
1956
+ ],
1957
+ "authors": [
1958
+ {
1959
+ "name": "Sebastian Bergmann",
1960
+ "email": "sebastian@phpunit.de"
1961
+ }
1962
+ ],
1963
+ "description": "Allows reflection of object attributes, including inherited and non-public ones",
1964
+ "homepage": "https://github.com/sebastianbergmann/object-reflector/",
1965
+ "support": {
1966
+ "issues": "https://github.com/sebastianbergmann/object-reflector/issues",
1967
+ "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4"
1968
+ },
1969
+ "funding": [
1970
+ {
1971
+ "url": "https://github.com/sebastianbergmann",
1972
+ "type": "github"
1973
+ }
1974
+ ],
1975
+ "time": "2020-10-26T13:14:26+00:00"
1976
+ },
1977
+ {
1978
+ "name": "sebastian/recursion-context",
1979
+ "version": "4.0.4",
1980
+ "source": {
1981
+ "type": "git",
1982
+ "url": "https://github.com/sebastianbergmann/recursion-context.git",
1983
+ "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172"
1984
+ },
1985
+ "dist": {
1986
+ "type": "zip",
1987
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172",
1988
+ "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172",
1989
+ "shasum": ""
1990
+ },
1991
+ "require": {
1992
+ "php": ">=7.3"
1993
+ },
1994
+ "require-dev": {
1995
+ "phpunit/phpunit": "^9.3"
1996
+ },
1997
+ "type": "library",
1998
+ "extra": {
1999
+ "branch-alias": {
2000
+ "dev-master": "4.0-dev"
2001
+ }
2002
+ },
2003
+ "autoload": {
2004
+ "classmap": [
2005
+ "src/"
2006
+ ]
2007
+ },
2008
+ "notification-url": "https://packagist.org/downloads/",
2009
+ "license": [
2010
+ "BSD-3-Clause"
2011
+ ],
2012
+ "authors": [
2013
+ {
2014
+ "name": "Sebastian Bergmann",
2015
+ "email": "sebastian@phpunit.de"
2016
+ },
2017
+ {
2018
+ "name": "Jeff Welch",
2019
+ "email": "whatthejeff@gmail.com"
2020
+ },
2021
+ {
2022
+ "name": "Adam Harvey",
2023
+ "email": "aharvey@php.net"
2024
+ }
2025
+ ],
2026
+ "description": "Provides functionality to recursively process PHP variables",
2027
+ "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
2028
+ "support": {
2029
+ "issues": "https://github.com/sebastianbergmann/recursion-context/issues",
2030
+ "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4"
2031
+ },
2032
+ "funding": [
2033
+ {
2034
+ "url": "https://github.com/sebastianbergmann",
2035
+ "type": "github"
2036
+ }
2037
+ ],
2038
+ "time": "2020-10-26T13:17:30+00:00"
2039
+ },
2040
+ {
2041
+ "name": "sebastian/resource-operations",
2042
+ "version": "3.0.3",
2043
+ "source": {
2044
+ "type": "git",
2045
+ "url": "https://github.com/sebastianbergmann/resource-operations.git",
2046
+ "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8"
2047
+ },
2048
+ "dist": {
2049
+ "type": "zip",
2050
+ "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
2051
+ "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
2052
+ "shasum": ""
2053
+ },
2054
+ "require": {
2055
+ "php": ">=7.3"
2056
+ },
2057
+ "require-dev": {
2058
+ "phpunit/phpunit": "^9.0"
2059
+ },
2060
+ "type": "library",
2061
+ "extra": {
2062
+ "branch-alias": {
2063
+ "dev-master": "3.0-dev"
2064
+ }
2065
+ },
2066
+ "autoload": {
2067
+ "classmap": [
2068
+ "src/"
2069
+ ]
2070
+ },
2071
+ "notification-url": "https://packagist.org/downloads/",
2072
+ "license": [
2073
+ "BSD-3-Clause"
2074
+ ],
2075
+ "authors": [
2076
+ {
2077
+ "name": "Sebastian Bergmann",
2078
+ "email": "sebastian@phpunit.de"
2079
+ }
2080
+ ],
2081
+ "description": "Provides a list of PHP built-in functions that operate on resources",
2082
+ "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
2083
+ "support": {
2084
+ "issues": "https://github.com/sebastianbergmann/resource-operations/issues",
2085
+ "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3"
2086
+ },
2087
+ "funding": [
2088
+ {
2089
+ "url": "https://github.com/sebastianbergmann",
2090
+ "type": "github"
2091
+ }
2092
+ ],
2093
+ "time": "2020-09-28T06:45:17+00:00"
2094
+ },
2095
+ {
2096
+ "name": "sebastian/type",
2097
+ "version": "2.3.1",
2098
+ "source": {
2099
+ "type": "git",
2100
+ "url": "https://github.com/sebastianbergmann/type.git",
2101
+ "reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2"
2102
+ },
2103
+ "dist": {
2104
+ "type": "zip",
2105
+ "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/81cd61ab7bbf2de744aba0ea61fae32f721df3d2",
2106
+ "reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2",
2107
+ "shasum": ""
2108
+ },
2109
+ "require": {
2110
+ "php": ">=7.3"
2111
+ },
2112
+ "require-dev": {
2113
+ "phpunit/phpunit": "^9.3"
2114
+ },
2115
+ "type": "library",
2116
+ "extra": {
2117
+ "branch-alias": {
2118
+ "dev-master": "2.3-dev"
2119
+ }
2120
+ },
2121
+ "autoload": {
2122
+ "classmap": [
2123
+ "src/"
2124
+ ]
2125
+ },
2126
+ "notification-url": "https://packagist.org/downloads/",
2127
+ "license": [
2128
+ "BSD-3-Clause"
2129
+ ],
2130
+ "authors": [
2131
+ {
2132
+ "name": "Sebastian Bergmann",
2133
+ "email": "sebastian@phpunit.de",
2134
+ "role": "lead"
2135
+ }
2136
+ ],
2137
+ "description": "Collection of value objects that represent the types of the PHP type system",
2138
+ "homepage": "https://github.com/sebastianbergmann/type",
2139
+ "support": {
2140
+ "issues": "https://github.com/sebastianbergmann/type/issues",
2141
+ "source": "https://github.com/sebastianbergmann/type/tree/2.3.1"
2142
+ },
2143
+ "funding": [
2144
+ {
2145
+ "url": "https://github.com/sebastianbergmann",
2146
+ "type": "github"
2147
+ }
2148
+ ],
2149
+ "time": "2020-10-26T13:18:59+00:00"
2150
+ },
2151
+ {
2152
+ "name": "sebastian/version",
2153
+ "version": "3.0.2",
2154
+ "source": {
2155
+ "type": "git",
2156
+ "url": "https://github.com/sebastianbergmann/version.git",
2157
+ "reference": "c6c1022351a901512170118436c764e473f6de8c"
2158
+ },
2159
+ "dist": {
2160
+ "type": "zip",
2161
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c",
2162
+ "reference": "c6c1022351a901512170118436c764e473f6de8c",
2163
+ "shasum": ""
2164
+ },
2165
+ "require": {
2166
+ "php": ">=7.3"
2167
+ },
2168
+ "type": "library",
2169
+ "extra": {
2170
+ "branch-alias": {
2171
+ "dev-master": "3.0-dev"
2172
+ }
2173
+ },
2174
+ "autoload": {
2175
+ "classmap": [
2176
+ "src/"
2177
+ ]
2178
+ },
2179
+ "notification-url": "https://packagist.org/downloads/",
2180
+ "license": [
2181
+ "BSD-3-Clause"
2182
+ ],
2183
+ "authors": [
2184
+ {
2185
+ "name": "Sebastian Bergmann",
2186
+ "email": "sebastian@phpunit.de",
2187
+ "role": "lead"
2188
+ }
2189
+ ],
2190
+ "description": "Library that helps with managing the version number of Git-hosted PHP projects",
2191
+ "homepage": "https://github.com/sebastianbergmann/version",
2192
+ "support": {
2193
+ "issues": "https://github.com/sebastianbergmann/version/issues",
2194
+ "source": "https://github.com/sebastianbergmann/version/tree/3.0.2"
2195
+ },
2196
+ "funding": [
2197
+ {
2198
+ "url": "https://github.com/sebastianbergmann",
2199
+ "type": "github"
2200
+ }
2201
+ ],
2202
+ "time": "2020-09-28T06:39:44+00:00"
2203
+ },
2204
+ {
2205
+ "name": "squizlabs/php_codesniffer",
2206
+ "version": "3.6.0",
2207
+ "source": {
2208
+ "type": "git",
2209
+ "url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
2210
+ "reference": "ffced0d2c8fa8e6cdc4d695a743271fab6c38625"
2211
+ },
2212
+ "dist": {
2213
+ "type": "zip",
2214
+ "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ffced0d2c8fa8e6cdc4d695a743271fab6c38625",
2215
+ "reference": "ffced0d2c8fa8e6cdc4d695a743271fab6c38625",
2216
+ "shasum": ""
2217
+ },
2218
+ "require": {
2219
+ "ext-simplexml": "*",
2220
+ "ext-tokenizer": "*",
2221
+ "ext-xmlwriter": "*",
2222
+ "php": ">=5.4.0"
2223
+ },
2224
+ "require-dev": {
2225
+ "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0"
2226
+ },
2227
+ "bin": [
2228
+ "bin/phpcs",
2229
+ "bin/phpcbf"
2230
+ ],
2231
+ "type": "library",
2232
+ "extra": {
2233
+ "branch-alias": {
2234
+ "dev-master": "3.x-dev"
2235
+ }
2236
+ },
2237
+ "notification-url": "https://packagist.org/downloads/",
2238
+ "license": [
2239
+ "BSD-3-Clause"
2240
+ ],
2241
+ "authors": [
2242
+ {
2243
+ "name": "Greg Sherwood",
2244
+ "role": "lead"
2245
+ }
2246
+ ],
2247
+ "description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.",
2248
+ "homepage": "https://github.com/squizlabs/PHP_CodeSniffer",
2249
+ "keywords": [
2250
+ "phpcs",
2251
+ "standards"
2252
+ ],
2253
+ "support": {
2254
+ "issues": "https://github.com/squizlabs/PHP_CodeSniffer/issues",
2255
+ "source": "https://github.com/squizlabs/PHP_CodeSniffer",
2256
+ "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki"
2257
+ },
2258
+ "time": "2021-04-09T00:54:41+00:00"
2259
+ },
2260
+ {
2261
+ "name": "symfony/polyfill-ctype",
2262
+ "version": "v1.22.1",
2263
+ "source": {
2264
+ "type": "git",
2265
+ "url": "https://github.com/symfony/polyfill-ctype.git",
2266
+ "reference": "c6c942b1ac76c82448322025e084cadc56048b4e"
2267
+ },
2268
+ "dist": {
2269
+ "type": "zip",
2270
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/c6c942b1ac76c82448322025e084cadc56048b4e",
2271
+ "reference": "c6c942b1ac76c82448322025e084cadc56048b4e",
2272
+ "shasum": ""
2273
+ },
2274
+ "require": {
2275
+ "php": ">=7.1"
2276
+ },
2277
+ "suggest": {
2278
+ "ext-ctype": "For best performance"
2279
+ },
2280
+ "type": "library",
2281
+ "extra": {
2282
+ "branch-alias": {
2283
+ "dev-main": "1.22-dev"
2284
+ },
2285
+ "thanks": {
2286
+ "name": "symfony/polyfill",
2287
+ "url": "https://github.com/symfony/polyfill"
2288
+ }
2289
+ },
2290
+ "autoload": {
2291
+ "psr-4": {
2292
+ "Symfony\\Polyfill\\Ctype\\": ""
2293
+ },
2294
+ "files": [
2295
+ "bootstrap.php"
2296
+ ]
2297
+ },
2298
+ "notification-url": "https://packagist.org/downloads/",
2299
+ "license": [
2300
+ "MIT"
2301
+ ],
2302
+ "authors": [
2303
+ {
2304
+ "name": "Gert de Pagter",
2305
+ "email": "BackEndTea@gmail.com"
2306
+ },
2307
+ {
2308
+ "name": "Symfony Community",
2309
+ "homepage": "https://symfony.com/contributors"
2310
+ }
2311
+ ],
2312
+ "description": "Symfony polyfill for ctype functions",
2313
+ "homepage": "https://symfony.com",
2314
+ "keywords": [
2315
+ "compatibility",
2316
+ "ctype",
2317
+ "polyfill",
2318
+ "portable"
2319
+ ],
2320
+ "support": {
2321
+ "source": "https://github.com/symfony/polyfill-ctype/tree/v1.22.1"
2322
+ },
2323
+ "funding": [
2324
+ {
2325
+ "url": "https://symfony.com/sponsor",
2326
+ "type": "custom"
2327
+ },
2328
+ {
2329
+ "url": "https://github.com/fabpot",
2330
+ "type": "github"
2331
+ },
2332
+ {
2333
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2334
+ "type": "tidelift"
2335
+ }
2336
+ ],
2337
+ "time": "2021-01-07T16:49:33+00:00"
2338
+ },
2339
+ {
2340
+ "name": "theseer/tokenizer",
2341
+ "version": "1.2.0",
2342
+ "source": {
2343
+ "type": "git",
2344
+ "url": "https://github.com/theseer/tokenizer.git",
2345
+ "reference": "75a63c33a8577608444246075ea0af0d052e452a"
2346
+ },
2347
+ "dist": {
2348
+ "type": "zip",
2349
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a",
2350
+ "reference": "75a63c33a8577608444246075ea0af0d052e452a",
2351
+ "shasum": ""
2352
+ },
2353
+ "require": {
2354
+ "ext-dom": "*",
2355
+ "ext-tokenizer": "*",
2356
+ "ext-xmlwriter": "*",
2357
+ "php": "^7.2 || ^8.0"
2358
+ },
2359
+ "type": "library",
2360
+ "autoload": {
2361
+ "classmap": [
2362
+ "src/"
2363
+ ]
2364
+ },
2365
+ "notification-url": "https://packagist.org/downloads/",
2366
+ "license": [
2367
+ "BSD-3-Clause"
2368
+ ],
2369
+ "authors": [
2370
+ {
2371
+ "name": "Arne Blankerts",
2372
+ "email": "arne@blankerts.de",
2373
+ "role": "Developer"
2374
+ }
2375
+ ],
2376
+ "description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
2377
+ "support": {
2378
+ "issues": "https://github.com/theseer/tokenizer/issues",
2379
+ "source": "https://github.com/theseer/tokenizer/tree/master"
2380
+ },
2381
+ "funding": [
2382
+ {
2383
+ "url": "https://github.com/theseer",
2384
+ "type": "github"
2385
+ }
2386
+ ],
2387
+ "time": "2020-07-12T23:59:07+00:00"
2388
+ },
2389
+ {
2390
+ "name": "webmozart/assert",
2391
+ "version": "1.10.0",
2392
+ "source": {
2393
+ "type": "git",
2394
+ "url": "https://github.com/webmozarts/assert.git",
2395
+ "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25"
2396
+ },
2397
+ "dist": {
2398
+ "type": "zip",
2399
+ "url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25",
2400
+ "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25",
2401
+ "shasum": ""
2402
+ },
2403
+ "require": {
2404
+ "php": "^7.2 || ^8.0",
2405
+ "symfony/polyfill-ctype": "^1.8"
2406
+ },
2407
+ "conflict": {
2408
+ "phpstan/phpstan": "<0.12.20",
2409
+ "vimeo/psalm": "<4.6.1 || 4.6.2"
2410
+ },
2411
+ "require-dev": {
2412
+ "phpunit/phpunit": "^8.5.13"
2413
+ },
2414
+ "type": "library",
2415
+ "extra": {
2416
+ "branch-alias": {
2417
+ "dev-master": "1.10-dev"
2418
+ }
2419
+ },
2420
+ "autoload": {
2421
+ "psr-4": {
2422
+ "Webmozart\\Assert\\": "src/"
2423
+ }
2424
+ },
2425
+ "notification-url": "https://packagist.org/downloads/",
2426
+ "license": [
2427
+ "MIT"
2428
+ ],
2429
+ "authors": [
2430
+ {
2431
+ "name": "Bernhard Schussek",
2432
+ "email": "bschussek@gmail.com"
2433
+ }
2434
+ ],
2435
+ "description": "Assertions to validate method input/output with nice error messages.",
2436
+ "keywords": [
2437
+ "assert",
2438
+ "check",
2439
+ "validate"
2440
+ ],
2441
+ "support": {
2442
+ "issues": "https://github.com/webmozarts/assert/issues",
2443
+ "source": "https://github.com/webmozarts/assert/tree/1.10.0"
2444
+ },
2445
+ "time": "2021-03-09T10:59:23+00:00"
2446
+ }
2447
+ ],
2448
+ "aliases": [],
2449
+ "minimum-stability": "stable",
2450
+ "stability-flags": [],
2451
+ "prefer-stable": false,
2452
+ "prefer-lowest": false,
2453
+ "platform": [],
2454
+ "platform-dev": [],
2455
+ "plugin-api-version": "2.0.0"
2456
+ }
extendify-sdk/config.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ {
2
+ "api": {
3
+ "live": "https://dashboard.extendify.com/api",
4
+ "dev": "https://testing.extendify.com/api"
5
+ }
6
+ }
extendify-sdk/extendify-sdk.php ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Plugin Name: Extendify SDK
4
+ * Description: SDK for viewing and accessing the Extendify template library.
5
+ * Version: 1.0.0
6
+ * Author: Extendify
7
+ * Text Domain: extendify-sdk
8
+ */
9
+
10
+ if (!defined('ABSPATH')) {
11
+ exit;
12
+ }
13
+
14
+ if (!class_exists('ExtendifySdk')) :
15
+
16
+ /**
17
+ * The Extendify Sdk
18
+ */
19
+ // phpcs:ignore Squiz.Classes.ClassFileName.NoMatch,Squiz.Commenting.ClassComment.Missing,PEAR.Commenting.ClassComment.Missing
20
+ final class ExtendifySdk
21
+ {
22
+
23
+ /**
24
+ * Var to make sure we only load once
25
+ *
26
+ * @var boolean $loaded
27
+ */
28
+ public static $loaded = false;
29
+
30
+ /**
31
+ * Set up the SDK
32
+ *
33
+ * @return void
34
+ */
35
+ public function __invoke()
36
+ {
37
+ if (version_compare(PHP_VERSION, '5.6', '<') || version_compare($GLOBALS['wp_version'], '5.4', '<')) {
38
+ return;
39
+ }
40
+
41
+ if (!self::$loaded) {
42
+ self::$loaded = true;
43
+ require dirname(__FILE__) . '/bootstrap.php';
44
+ $app = new Extendify\ExtendifySdk\App();
45
+ if (!defined('EXTENDIFYSDK_BASE_URL')) {
46
+ define('EXTENDIFYSDK_BASE_URL', plugin_dir_url(__FILE__));
47
+ }
48
+ }
49
+ }
50
+ // phpcs:ignore Squiz.Classes.ClassDeclaration.SpaceBeforeCloseBrace
51
+ }
52
+
53
+ $extendifySdk = new ExtendifySdk();
54
+ $extendifySdk();
55
+ endif;
extendify-sdk/loader.php ADDED
@@ -0,0 +1,61 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Use this file to load in the SDK from another plugin
4
+ * Example: require_once plugin_dir_path(__FILE__) . 'extendify-templates-sdk/loader.php';
5
+ */
6
+
7
+ if (!defined('ABSPATH')) {
8
+ exit;
9
+ }
10
+
11
+ if (!function_exists('extendifysdkCheckPluginInstalled')) {
12
+ /**
13
+ * Will be truthy if the plugin is installed.
14
+ *
15
+ * @param string $name name of the plugin 'extendify-sdk'.
16
+ * @return bool|string - will return path, ex. 'extendify-sdk/extendify-sdk.php'.
17
+ */
18
+ function extendifysdkCheckPluginInstalled($name)
19
+ {
20
+ if (!function_exists('get_plugins')) {
21
+ include_once ABSPATH . 'wp-admin/includes/plugin.php';
22
+ }
23
+
24
+ foreach (get_plugins() as $plugin => $data) {
25
+ if ($data['TextDomain'] === $name) {
26
+ return $plugin;
27
+ }
28
+ }
29
+
30
+ return false;
31
+ }
32
+ }//end if
33
+
34
+ // If the template SDK development build is installed, default to that.
35
+ $extendifysdkSdk = extendifysdkCheckPluginInstalled('extendify-sdk');
36
+
37
+ if ($extendifysdkSdk) {
38
+ // Only if it's deactivated.
39
+ if (is_plugin_active($extendifysdkSdk)) {
40
+ return false;
41
+ }
42
+ }
43
+
44
+ // If Editor Plus is installed, next default to that.
45
+ $extendifysdkEditorPlus = extendifysdkCheckPluginInstalled('editorplus');
46
+ if ($extendifysdkEditorPlus) {
47
+ // Only if it's deactivated.
48
+ if (is_plugin_active($extendifysdkEditorPlus)) {
49
+ // Only if we aren't currently inside Editor Plus.
50
+ if (strpos(basename(__DIR__), 'editorplus') === -1) {
51
+ return false;
52
+ }
53
+ }
54
+ }
55
+
56
+ // Next is first come, first serve.
57
+ if (class_exists('ExtendifySdk')) {
58
+ return false;
59
+ }
60
+
61
+ require_once plugin_dir_path(__FILE__) . 'extendify-sdk.php';
extendify-sdk/package-lock.json ADDED
@@ -0,0 +1,16573 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "extendify-sdk",
3
+ "requires": true,
4
+ "lockfileVersion": 1,
5
+ "dependencies": {
6
+ "@babel/cli": {
7
+ "version": "7.13.10",
8
+ "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.13.10.tgz",
9
+ "integrity": "sha512-lYSBC7B4B9hJ7sv0Ojx1BrGhuzCoOIYfLjd+Xpd4rOzdS+a47yi8voV8vFkfjlZR1N5qZO7ixOCbobUdT304PQ==",
10
+ "dev": true,
11
+ "requires": {
12
+ "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents",
13
+ "chokidar": "^3.4.0",
14
+ "commander": "^4.0.1",
15
+ "convert-source-map": "^1.1.0",
16
+ "fs-readdir-recursive": "^1.1.0",
17
+ "glob": "^7.0.0",
18
+ "lodash": "^4.17.19",
19
+ "make-dir": "^2.1.0",
20
+ "slash": "^2.0.0",
21
+ "source-map": "^0.5.0"
22
+ },
23
+ "dependencies": {
24
+ "commander": {
25
+ "version": "4.1.1",
26
+ "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz",
27
+ "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==",
28
+ "dev": true
29
+ },
30
+ "make-dir": {
31
+ "version": "2.1.0",
32
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
33
+ "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
34
+ "dev": true,
35
+ "requires": {
36
+ "pify": "^4.0.1",
37
+ "semver": "^5.6.0"
38
+ }
39
+ },
40
+ "pify": {
41
+ "version": "4.0.1",
42
+ "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
43
+ "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
44
+ "dev": true
45
+ },
46
+ "slash": {
47
+ "version": "2.0.0",
48
+ "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz",
49
+ "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==",
50
+ "dev": true
51
+ },
52
+ "source-map": {
53
+ "version": "0.5.7",
54
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
55
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
56
+ "dev": true
57
+ }
58
+ }
59
+ },
60
+ "@babel/code-frame": {
61
+ "version": "7.12.13",
62
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz",
63
+ "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==",
64
+ "dev": true,
65
+ "requires": {
66
+ "@babel/highlight": "^7.12.13"
67
+ }
68
+ },
69
+ "@babel/compat-data": {
70
+ "version": "7.13.12",
71
+ "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.12.tgz",
72
+ "integrity": "sha512-3eJJ841uKxeV8dcN/2yGEUy+RfgQspPEgQat85umsE1rotuquQ2AbIub4S6j7c50a2d+4myc+zSlnXeIHrOnhQ==",
73
+ "dev": true
74
+ },
75
+ "@babel/core": {
76
+ "version": "7.13.10",
77
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.10.tgz",
78
+ "integrity": "sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw==",
79
+ "dev": true,
80
+ "requires": {
81
+ "@babel/code-frame": "^7.12.13",
82
+ "@babel/generator": "^7.13.9",
83
+ "@babel/helper-compilation-targets": "^7.13.10",
84
+ "@babel/helper-module-transforms": "^7.13.0",
85
+ "@babel/helpers": "^7.13.10",
86
+ "@babel/parser": "^7.13.10",
87
+ "@babel/template": "^7.12.13",
88
+ "@babel/traverse": "^7.13.0",
89
+ "@babel/types": "^7.13.0",
90
+ "convert-source-map": "^1.7.0",
91
+ "debug": "^4.1.0",
92
+ "gensync": "^1.0.0-beta.2",
93
+ "json5": "^2.1.2",
94
+ "lodash": "^4.17.19",
95
+ "semver": "^6.3.0",
96
+ "source-map": "^0.5.0"
97
+ },
98
+ "dependencies": {
99
+ "debug": {
100
+ "version": "4.3.1",
101
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
102
+ "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
103
+ "dev": true,
104
+ "requires": {
105
+ "ms": "2.1.2"
106
+ }
107
+ },
108
+ "json5": {
109
+ "version": "2.2.0",
110
+ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
111
+ "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
112
+ "dev": true,
113
+ "requires": {
114
+ "minimist": "^1.2.5"
115
+ }
116
+ },
117
+ "ms": {
118
+ "version": "2.1.2",
119
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
120
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
121
+ "dev": true
122
+ },
123
+ "semver": {
124
+ "version": "6.3.0",
125
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
126
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
127
+ "dev": true
128
+ },
129
+ "source-map": {
130
+ "version": "0.5.7",
131
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
132
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
133
+ "dev": true
134
+ }
135
+ }
136
+ },
137
+ "@babel/generator": {
138
+ "version": "7.13.9",
139
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.13.9.tgz",
140
+ "integrity": "sha512-mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw==",
141
+ "dev": true,
142
+ "requires": {
143
+ "@babel/types": "^7.13.0",
144
+ "jsesc": "^2.5.1",
145
+ "source-map": "^0.5.0"
146
+ },
147
+ "dependencies": {
148
+ "source-map": {
149
+ "version": "0.5.7",
150
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
151
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
152
+ "dev": true
153
+ }
154
+ }
155
+ },
156
+ "@babel/helper-annotate-as-pure": {
157
+ "version": "7.12.13",
158
+ "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.13.tgz",
159
+ "integrity": "sha512-7YXfX5wQ5aYM/BOlbSccHDbuXXFPxeoUmfWtz8le2yTkTZc+BxsiEnENFoi2SlmA8ewDkG2LgIMIVzzn2h8kfw==",
160
+ "dev": true,
161
+ "requires": {
162
+ "@babel/types": "^7.12.13"
163
+ }
164
+ },
165
+ "@babel/helper-builder-binary-assignment-operator-visitor": {
166
+ "version": "7.12.13",
167
+ "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.12.13.tgz",
168
+ "integrity": "sha512-CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA==",
169
+ "dev": true,
170
+ "requires": {
171
+ "@babel/helper-explode-assignable-expression": "^7.12.13",
172
+ "@babel/types": "^7.12.13"
173
+ }
174
+ },
175
+ "@babel/helper-compilation-targets": {
176
+ "version": "7.13.10",
177
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.10.tgz",
178
+ "integrity": "sha512-/Xju7Qg1GQO4mHZ/Kcs6Au7gfafgZnwm+a7sy/ow/tV1sHeraRUHbjdat8/UvDor4Tez+siGKDk6zIKtCPKVJA==",
179
+ "dev": true,
180
+ "requires": {
181
+ "@babel/compat-data": "^7.13.8",
182
+ "@babel/helper-validator-option": "^7.12.17",
183
+ "browserslist": "^4.14.5",
184
+ "semver": "^6.3.0"
185
+ },
186
+ "dependencies": {
187
+ "semver": {
188
+ "version": "6.3.0",
189
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
190
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
191
+ "dev": true
192
+ }
193
+ }
194
+ },
195
+ "@babel/helper-create-class-features-plugin": {
196
+ "version": "7.13.11",
197
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.13.11.tgz",
198
+ "integrity": "sha512-ays0I7XYq9xbjCSvT+EvysLgfc3tOkwCULHjrnscGT3A9qD4sk3wXnJ3of0MAWsWGjdinFvajHU2smYuqXKMrw==",
199
+ "dev": true,
200
+ "requires": {
201
+ "@babel/helper-function-name": "^7.12.13",
202
+ "@babel/helper-member-expression-to-functions": "^7.13.0",
203
+ "@babel/helper-optimise-call-expression": "^7.12.13",
204
+ "@babel/helper-replace-supers": "^7.13.0",
205
+ "@babel/helper-split-export-declaration": "^7.12.13"
206
+ }
207
+ },
208
+ "@babel/helper-create-regexp-features-plugin": {
209
+ "version": "7.12.17",
210
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.17.tgz",
211
+ "integrity": "sha512-p2VGmBu9oefLZ2nQpgnEnG0ZlRPvL8gAGvPUMQwUdaE8k49rOMuZpOwdQoy5qJf6K8jL3bcAMhVUlHAjIgJHUg==",
212
+ "dev": true,
213
+ "requires": {
214
+ "@babel/helper-annotate-as-pure": "^7.12.13",
215
+ "regexpu-core": "^4.7.1"
216
+ }
217
+ },
218
+ "@babel/helper-define-polyfill-provider": {
219
+ "version": "0.1.5",
220
+ "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.1.5.tgz",
221
+ "integrity": "sha512-nXuzCSwlJ/WKr8qxzW816gwyT6VZgiJG17zR40fou70yfAcqjoNyTLl/DQ+FExw5Hx5KNqshmN8Ldl/r2N7cTg==",
222
+ "dev": true,
223
+ "requires": {
224
+ "@babel/helper-compilation-targets": "^7.13.0",
225
+ "@babel/helper-module-imports": "^7.12.13",
226
+ "@babel/helper-plugin-utils": "^7.13.0",
227
+ "@babel/traverse": "^7.13.0",
228
+ "debug": "^4.1.1",
229
+ "lodash.debounce": "^4.0.8",
230
+ "resolve": "^1.14.2",
231
+ "semver": "^6.1.2"
232
+ },
233
+ "dependencies": {
234
+ "debug": {
235
+ "version": "4.3.1",
236
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
237
+ "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
238
+ "dev": true,
239
+ "requires": {
240
+ "ms": "2.1.2"
241
+ }
242
+ },
243
+ "ms": {
244
+ "version": "2.1.2",
245
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
246
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
247
+ "dev": true
248
+ },
249
+ "semver": {
250
+ "version": "6.3.0",
251
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
252
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
253
+ "dev": true
254
+ }
255
+ }
256
+ },
257
+ "@babel/helper-explode-assignable-expression": {
258
+ "version": "7.13.0",
259
+ "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.13.0.tgz",
260
+ "integrity": "sha512-qS0peLTDP8kOisG1blKbaoBg/o9OSa1qoumMjTK5pM+KDTtpxpsiubnCGP34vK8BXGcb2M9eigwgvoJryrzwWA==",
261
+ "dev": true,
262
+ "requires": {
263
+ "@babel/types": "^7.13.0"
264
+ }
265
+ },
266
+ "@babel/helper-function-name": {
267
+ "version": "7.12.13",
268
+ "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz",
269
+ "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==",
270
+ "dev": true,
271
+ "requires": {
272
+ "@babel/helper-get-function-arity": "^7.12.13",
273
+ "@babel/template": "^7.12.13",
274
+ "@babel/types": "^7.12.13"
275
+ }
276
+ },
277
+ "@babel/helper-get-function-arity": {
278
+ "version": "7.12.13",
279
+ "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz",
280
+ "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==",
281
+ "dev": true,
282
+ "requires": {
283
+ "@babel/types": "^7.12.13"
284
+ }
285
+ },
286
+ "@babel/helper-hoist-variables": {
287
+ "version": "7.13.0",
288
+ "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.13.0.tgz",
289
+ "integrity": "sha512-0kBzvXiIKfsCA0y6cFEIJf4OdzfpRuNk4+YTeHZpGGc666SATFKTz6sRncwFnQk7/ugJ4dSrCj6iJuvW4Qwr2g==",
290
+ "dev": true,
291
+ "requires": {
292
+ "@babel/traverse": "^7.13.0",
293
+ "@babel/types": "^7.13.0"
294
+ }
295
+ },
296
+ "@babel/helper-member-expression-to-functions": {
297
+ "version": "7.13.12",
298
+ "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz",
299
+ "integrity": "sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==",
300
+ "dev": true,
301
+ "requires": {
302
+ "@babel/types": "^7.13.12"
303
+ }
304
+ },
305
+ "@babel/helper-module-imports": {
306
+ "version": "7.13.12",
307
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz",
308
+ "integrity": "sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==",
309
+ "dev": true,
310
+ "requires": {
311
+ "@babel/types": "^7.13.12"
312
+ }
313
+ },
314
+ "@babel/helper-module-transforms": {
315
+ "version": "7.13.12",
316
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.12.tgz",
317
+ "integrity": "sha512-7zVQqMO3V+K4JOOj40kxiCrMf6xlQAkewBB0eu2b03OO/Q21ZutOzjpfD79A5gtE/2OWi1nv625MrDlGlkbknQ==",
318
+ "dev": true,
319
+ "requires": {
320
+ "@babel/helper-module-imports": "^7.13.12",
321
+ "@babel/helper-replace-supers": "^7.13.12",
322
+ "@babel/helper-simple-access": "^7.13.12",
323
+ "@babel/helper-split-export-declaration": "^7.12.13",
324
+ "@babel/helper-validator-identifier": "^7.12.11",
325
+ "@babel/template": "^7.12.13",
326
+ "@babel/traverse": "^7.13.0",
327
+ "@babel/types": "^7.13.12"
328
+ }
329
+ },
330
+ "@babel/helper-optimise-call-expression": {
331
+ "version": "7.12.13",
332
+ "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz",
333
+ "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==",
334
+ "dev": true,
335
+ "requires": {
336
+ "@babel/types": "^7.12.13"
337
+ }
338
+ },
339
+ "@babel/helper-plugin-utils": {
340
+ "version": "7.13.0",
341
+ "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz",
342
+ "integrity": "sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ==",
343
+ "dev": true
344
+ },
345
+ "@babel/helper-remap-async-to-generator": {
346
+ "version": "7.13.0",
347
+ "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.13.0.tgz",
348
+ "integrity": "sha512-pUQpFBE9JvC9lrQbpX0TmeNIy5s7GnZjna2lhhcHC7DzgBs6fWn722Y5cfwgrtrqc7NAJwMvOa0mKhq6XaE4jg==",
349
+ "dev": true,
350
+ "requires": {
351
+ "@babel/helper-annotate-as-pure": "^7.12.13",
352
+ "@babel/helper-wrap-function": "^7.13.0",
353
+ "@babel/types": "^7.13.0"
354
+ }
355
+ },
356
+ "@babel/helper-replace-supers": {
357
+ "version": "7.13.12",
358
+ "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz",
359
+ "integrity": "sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw==",
360
+ "dev": true,
361
+ "requires": {
362
+ "@babel/helper-member-expression-to-functions": "^7.13.12",
363
+ "@babel/helper-optimise-call-expression": "^7.12.13",
364
+ "@babel/traverse": "^7.13.0",
365
+ "@babel/types": "^7.13.12"
366
+ }
367
+ },
368
+ "@babel/helper-simple-access": {
369
+ "version": "7.13.12",
370
+ "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz",
371
+ "integrity": "sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==",
372
+ "dev": true,
373
+ "requires": {
374
+ "@babel/types": "^7.13.12"
375
+ }
376
+ },
377
+ "@babel/helper-skip-transparent-expression-wrappers": {
378
+ "version": "7.12.1",
379
+ "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz",
380
+ "integrity": "sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA==",
381
+ "dev": true,
382
+ "requires": {
383
+ "@babel/types": "^7.12.1"
384
+ }
385
+ },
386
+ "@babel/helper-split-export-declaration": {
387
+ "version": "7.12.13",
388
+ "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz",
389
+ "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==",
390
+ "dev": true,
391
+ "requires": {
392
+ "@babel/types": "^7.12.13"
393
+ }
394
+ },
395
+ "@babel/helper-validator-identifier": {
396
+ "version": "7.12.11",
397
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
398
+ "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==",
399
+ "dev": true
400
+ },
401
+ "@babel/helper-validator-option": {
402
+ "version": "7.12.17",
403
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz",
404
+ "integrity": "sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==",
405
+ "dev": true
406
+ },
407
+ "@babel/helper-wrap-function": {
408
+ "version": "7.13.0",
409
+ "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.13.0.tgz",
410
+ "integrity": "sha512-1UX9F7K3BS42fI6qd2A4BjKzgGjToscyZTdp1DjknHLCIvpgne6918io+aL5LXFcER/8QWiwpoY902pVEqgTXA==",
411
+ "dev": true,
412
+ "requires": {
413
+ "@babel/helper-function-name": "^7.12.13",
414
+ "@babel/template": "^7.12.13",
415
+ "@babel/traverse": "^7.13.0",
416
+ "@babel/types": "^7.13.0"
417
+ }
418
+ },
419
+ "@babel/helpers": {
420
+ "version": "7.13.10",
421
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.10.tgz",
422
+ "integrity": "sha512-4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ==",
423
+ "dev": true,
424
+ "requires": {
425
+ "@babel/template": "^7.12.13",
426
+ "@babel/traverse": "^7.13.0",
427
+ "@babel/types": "^7.13.0"
428
+ }
429
+ },
430
+ "@babel/highlight": {
431
+ "version": "7.13.10",
432
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz",
433
+ "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==",
434
+ "dev": true,
435
+ "requires": {
436
+ "@babel/helper-validator-identifier": "^7.12.11",
437
+ "chalk": "^2.0.0",
438
+ "js-tokens": "^4.0.0"
439
+ },
440
+ "dependencies": {
441
+ "ansi-styles": {
442
+ "version": "3.2.1",
443
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
444
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
445
+ "dev": true,
446
+ "requires": {
447
+ "color-convert": "^1.9.0"
448
+ }
449
+ },
450
+ "chalk": {
451
+ "version": "2.4.2",
452
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
453
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
454
+ "dev": true,
455
+ "requires": {
456
+ "ansi-styles": "^3.2.1",
457
+ "escape-string-regexp": "^1.0.5",
458
+ "supports-color": "^5.3.0"
459
+ }
460
+ },
461
+ "supports-color": {
462
+ "version": "5.5.0",
463
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
464
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
465
+ "dev": true,
466
+ "requires": {
467
+ "has-flag": "^3.0.0"
468
+ }
469
+ }
470
+ }
471
+ },
472
+ "@babel/parser": {
473
+ "version": "7.13.12",
474
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.12.tgz",
475
+ "integrity": "sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw==",
476
+ "dev": true
477
+ },
478
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
479
+ "version": "7.13.12",
480
+ "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12.tgz",
481
+ "integrity": "sha512-d0u3zWKcoZf379fOeJdr1a5WPDny4aOFZ6hlfKivgK0LY7ZxNfoaHL2fWwdGtHyVvra38FC+HVYkO+byfSA8AQ==",
482
+ "dev": true,
483
+ "requires": {
484
+ "@babel/helper-plugin-utils": "^7.13.0",
485
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.12.1",
486
+ "@babel/plugin-proposal-optional-chaining": "^7.13.12"
487
+ }
488
+ },
489
+ "@babel/plugin-proposal-async-generator-functions": {
490
+ "version": "7.13.8",
491
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.13.8.tgz",
492
+ "integrity": "sha512-rPBnhj+WgoSmgq+4gQUtXx/vOcU+UYtjy1AA/aeD61Hwj410fwYyqfUcRP3lR8ucgliVJL/G7sXcNUecC75IXA==",
493
+ "dev": true,
494
+ "requires": {
495
+ "@babel/helper-plugin-utils": "^7.13.0",
496
+ "@babel/helper-remap-async-to-generator": "^7.13.0",
497
+ "@babel/plugin-syntax-async-generators": "^7.8.4"
498
+ }
499
+ },
500
+ "@babel/plugin-proposal-class-properties": {
501
+ "version": "7.13.0",
502
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.13.0.tgz",
503
+ "integrity": "sha512-KnTDjFNC1g+45ka0myZNvSBFLhNCLN+GeGYLDEA8Oq7MZ6yMgfLoIRh86GRT0FjtJhZw8JyUskP9uvj5pHM9Zg==",
504
+ "dev": true,
505
+ "requires": {
506
+ "@babel/helper-create-class-features-plugin": "^7.13.0",
507
+ "@babel/helper-plugin-utils": "^7.13.0"
508
+ }
509
+ },
510
+ "@babel/plugin-proposal-dynamic-import": {
511
+ "version": "7.13.8",
512
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.13.8.tgz",
513
+ "integrity": "sha512-ONWKj0H6+wIRCkZi9zSbZtE/r73uOhMVHh256ys0UzfM7I3d4n+spZNWjOnJv2gzopumP2Wxi186vI8N0Y2JyQ==",
514
+ "dev": true,
515
+ "requires": {
516
+ "@babel/helper-plugin-utils": "^7.13.0",
517
+ "@babel/plugin-syntax-dynamic-import": "^7.8.3"
518
+ }
519
+ },
520
+ "@babel/plugin-proposal-export-namespace-from": {
521
+ "version": "7.12.13",
522
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.12.13.tgz",
523
+ "integrity": "sha512-INAgtFo4OnLN3Y/j0VwAgw3HDXcDtX+C/erMvWzuV9v71r7urb6iyMXu7eM9IgLr1ElLlOkaHjJ0SbCmdOQ3Iw==",
524
+ "dev": true,
525
+ "requires": {
526
+ "@babel/helper-plugin-utils": "^7.12.13",
527
+ "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
528
+ }
529
+ },
530
+ "@babel/plugin-proposal-json-strings": {
531
+ "version": "7.13.8",
532
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.13.8.tgz",
533
+ "integrity": "sha512-w4zOPKUFPX1mgvTmL/fcEqy34hrQ1CRcGxdphBc6snDnnqJ47EZDIyop6IwXzAC8G916hsIuXB2ZMBCExC5k7Q==",
534
+ "dev": true,
535
+ "requires": {
536
+ "@babel/helper-plugin-utils": "^7.13.0",
537
+ "@babel/plugin-syntax-json-strings": "^7.8.3"
538
+ }
539
+ },
540
+ "@babel/plugin-proposal-logical-assignment-operators": {
541
+ "version": "7.13.8",
542
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.13.8.tgz",
543
+ "integrity": "sha512-aul6znYB4N4HGweImqKn59Su9RS8lbUIqxtXTOcAGtNIDczoEFv+l1EhmX8rUBp3G1jMjKJm8m0jXVp63ZpS4A==",
544
+ "dev": true,
545
+ "requires": {
546
+ "@babel/helper-plugin-utils": "^7.13.0",
547
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
548
+ }
549
+ },
550
+ "@babel/plugin-proposal-nullish-coalescing-operator": {
551
+ "version": "7.13.8",
552
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.13.8.tgz",
553
+ "integrity": "sha512-iePlDPBn//UhxExyS9KyeYU7RM9WScAG+D3Hhno0PLJebAEpDZMocbDe64eqynhNAnwz/vZoL/q/QB2T1OH39A==",
554
+ "dev": true,
555
+ "requires": {
556
+ "@babel/helper-plugin-utils": "^7.13.0",
557
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
558
+ }
559
+ },
560
+ "@babel/plugin-proposal-numeric-separator": {
561
+ "version": "7.12.13",
562
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.13.tgz",
563
+ "integrity": "sha512-O1jFia9R8BUCl3ZGB7eitaAPu62TXJRHn7rh+ojNERCFyqRwJMTmhz+tJ+k0CwI6CLjX/ee4qW74FSqlq9I35w==",
564
+ "dev": true,
565
+ "requires": {
566
+ "@babel/helper-plugin-utils": "^7.12.13",
567
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4"
568
+ }
569
+ },
570
+ "@babel/plugin-proposal-object-rest-spread": {
571
+ "version": "7.13.8",
572
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.13.8.tgz",
573
+ "integrity": "sha512-DhB2EuB1Ih7S3/IRX5AFVgZ16k3EzfRbq97CxAVI1KSYcW+lexV8VZb7G7L8zuPVSdQMRn0kiBpf/Yzu9ZKH0g==",
574
+ "dev": true,
575
+ "requires": {
576
+ "@babel/compat-data": "^7.13.8",
577
+ "@babel/helper-compilation-targets": "^7.13.8",
578
+ "@babel/helper-plugin-utils": "^7.13.0",
579
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
580
+ "@babel/plugin-transform-parameters": "^7.13.0"
581
+ }
582
+ },
583
+ "@babel/plugin-proposal-optional-catch-binding": {
584
+ "version": "7.13.8",
585
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.13.8.tgz",
586
+ "integrity": "sha512-0wS/4DUF1CuTmGo+NiaHfHcVSeSLj5S3e6RivPTg/2k3wOv3jO35tZ6/ZWsQhQMvdgI7CwphjQa/ccarLymHVA==",
587
+ "dev": true,
588
+ "requires": {
589
+ "@babel/helper-plugin-utils": "^7.13.0",
590
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
591
+ }
592
+ },
593
+ "@babel/plugin-proposal-optional-chaining": {
594
+ "version": "7.13.12",
595
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.13.12.tgz",
596
+ "integrity": "sha512-fcEdKOkIB7Tf4IxrgEVeFC4zeJSTr78no9wTdBuZZbqF64kzllU0ybo2zrzm7gUQfxGhBgq4E39oRs8Zx/RMYQ==",
597
+ "dev": true,
598
+ "requires": {
599
+ "@babel/helper-plugin-utils": "^7.13.0",
600
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.12.1",
601
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3"
602
+ }
603
+ },
604
+ "@babel/plugin-proposal-private-methods": {
605
+ "version": "7.13.0",
606
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.13.0.tgz",
607
+ "integrity": "sha512-MXyyKQd9inhx1kDYPkFRVOBXQ20ES8Pto3T7UZ92xj2mY0EVD8oAVzeyYuVfy/mxAdTSIayOvg+aVzcHV2bn6Q==",
608
+ "dev": true,
609
+ "requires": {
610
+ "@babel/helper-create-class-features-plugin": "^7.13.0",
611
+ "@babel/helper-plugin-utils": "^7.13.0"
612
+ }
613
+ },
614
+ "@babel/plugin-proposal-unicode-property-regex": {
615
+ "version": "7.12.13",
616
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.12.13.tgz",
617
+ "integrity": "sha512-XyJmZidNfofEkqFV5VC/bLabGmO5QzenPO/YOfGuEbgU+2sSwMmio3YLb4WtBgcmmdwZHyVyv8on77IUjQ5Gvg==",
618
+ "dev": true,
619
+ "requires": {
620
+ "@babel/helper-create-regexp-features-plugin": "^7.12.13",
621
+ "@babel/helper-plugin-utils": "^7.12.13"
622
+ }
623
+ },
624
+ "@babel/plugin-syntax-async-generators": {
625
+ "version": "7.8.4",
626
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
627
+ "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
628
+ "dev": true,
629
+ "requires": {
630
+ "@babel/helper-plugin-utils": "^7.8.0"
631
+ }
632
+ },
633
+ "@babel/plugin-syntax-bigint": {
634
+ "version": "7.8.3",
635
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
636
+ "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
637
+ "dev": true,
638
+ "requires": {
639
+ "@babel/helper-plugin-utils": "^7.8.0"
640
+ }
641
+ },
642
+ "@babel/plugin-syntax-class-properties": {
643
+ "version": "7.12.13",
644
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
645
+ "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
646
+ "dev": true,
647
+ "requires": {
648
+ "@babel/helper-plugin-utils": "^7.12.13"
649
+ }
650
+ },
651
+ "@babel/plugin-syntax-dynamic-import": {
652
+ "version": "7.8.3",
653
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
654
+ "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
655
+ "dev": true,
656
+ "requires": {
657
+ "@babel/helper-plugin-utils": "^7.8.0"
658
+ }
659
+ },
660
+ "@babel/plugin-syntax-export-namespace-from": {
661
+ "version": "7.8.3",
662
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
663
+ "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
664
+ "dev": true,
665
+ "requires": {
666
+ "@babel/helper-plugin-utils": "^7.8.3"
667
+ }
668
+ },
669
+ "@babel/plugin-syntax-import-meta": {
670
+ "version": "7.10.4",
671
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
672
+ "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
673
+ "dev": true,
674
+ "requires": {
675
+ "@babel/helper-plugin-utils": "^7.10.4"
676
+ }
677
+ },
678
+ "@babel/plugin-syntax-json-strings": {
679
+ "version": "7.8.3",
680
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
681
+ "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
682
+ "dev": true,
683
+ "requires": {
684
+ "@babel/helper-plugin-utils": "^7.8.0"
685
+ }
686
+ },
687
+ "@babel/plugin-syntax-jsx": {
688
+ "version": "7.12.13",
689
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.13.tgz",
690
+ "integrity": "sha512-d4HM23Q1K7oq/SLNmG6mRt85l2csmQ0cHRaxRXjKW0YFdEXqlZ5kzFQKH5Uc3rDJECgu+yCRgPkG04Mm98R/1g==",
691
+ "dev": true,
692
+ "requires": {
693
+ "@babel/helper-plugin-utils": "^7.12.13"
694
+ }
695
+ },
696
+ "@babel/plugin-syntax-logical-assignment-operators": {
697
+ "version": "7.10.4",
698
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
699
+ "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
700
+ "dev": true,
701
+ "requires": {
702
+ "@babel/helper-plugin-utils": "^7.10.4"
703
+ }
704
+ },
705
+ "@babel/plugin-syntax-nullish-coalescing-operator": {
706
+ "version": "7.8.3",
707
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
708
+ "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
709
+ "dev": true,
710
+ "requires": {
711
+ "@babel/helper-plugin-utils": "^7.8.0"
712
+ }
713
+ },
714
+ "@babel/plugin-syntax-numeric-separator": {
715
+ "version": "7.10.4",
716
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
717
+ "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
718
+ "dev": true,
719
+ "requires": {
720
+ "@babel/helper-plugin-utils": "^7.10.4"
721
+ }
722
+ },
723
+ "@babel/plugin-syntax-object-rest-spread": {
724
+ "version": "7.8.3",
725
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
726
+ "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
727
+ "dev": true,
728
+ "requires": {
729
+ "@babel/helper-plugin-utils": "^7.8.0"
730
+ }
731
+ },
732
+ "@babel/plugin-syntax-optional-catch-binding": {
733
+ "version": "7.8.3",
734
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
735
+ "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
736
+ "dev": true,
737
+ "requires": {
738
+ "@babel/helper-plugin-utils": "^7.8.0"
739
+ }
740
+ },
741
+ "@babel/plugin-syntax-optional-chaining": {
742
+ "version": "7.8.3",
743
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
744
+ "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
745
+ "dev": true,
746
+ "requires": {
747
+ "@babel/helper-plugin-utils": "^7.8.0"
748
+ }
749
+ },
750
+ "@babel/plugin-syntax-top-level-await": {
751
+ "version": "7.12.13",
752
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.13.tgz",
753
+ "integrity": "sha512-A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ==",
754
+ "dev": true,
755
+ "requires": {
756
+ "@babel/helper-plugin-utils": "^7.12.13"
757
+ }
758
+ },
759
+ "@babel/plugin-transform-arrow-functions": {
760
+ "version": "7.13.0",
761
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.13.0.tgz",
762
+ "integrity": "sha512-96lgJagobeVmazXFaDrbmCLQxBysKu7U6Do3mLsx27gf5Dk85ezysrs2BZUpXD703U/Su1xTBDxxar2oa4jAGg==",
763
+ "dev": true,
764
+ "requires": {
765
+ "@babel/helper-plugin-utils": "^7.13.0"
766
+ }
767
+ },
768
+ "@babel/plugin-transform-async-to-generator": {
769
+ "version": "7.13.0",
770
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.13.0.tgz",
771
+ "integrity": "sha512-3j6E004Dx0K3eGmhxVJxwwI89CTJrce7lg3UrtFuDAVQ/2+SJ/h/aSFOeE6/n0WB1GsOffsJp6MnPQNQ8nmwhg==",
772
+ "dev": true,
773
+ "requires": {
774
+ "@babel/helper-module-imports": "^7.12.13",
775
+ "@babel/helper-plugin-utils": "^7.13.0",
776
+ "@babel/helper-remap-async-to-generator": "^7.13.0"
777
+ }
778
+ },
779
+ "@babel/plugin-transform-block-scoped-functions": {
780
+ "version": "7.12.13",
781
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.13.tgz",
782
+ "integrity": "sha512-zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg==",
783
+ "dev": true,
784
+ "requires": {
785
+ "@babel/helper-plugin-utils": "^7.12.13"
786
+ }
787
+ },
788
+ "@babel/plugin-transform-block-scoping": {
789
+ "version": "7.12.13",
790
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.13.tgz",
791
+ "integrity": "sha512-Pxwe0iqWJX4fOOM2kEZeUuAxHMWb9nK+9oh5d11bsLoB0xMg+mkDpt0eYuDZB7ETrY9bbcVlKUGTOGWy7BHsMQ==",
792
+ "dev": true,
793
+ "requires": {
794
+ "@babel/helper-plugin-utils": "^7.12.13"
795
+ }
796
+ },
797
+ "@babel/plugin-transform-classes": {
798
+ "version": "7.13.0",
799
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.13.0.tgz",
800
+ "integrity": "sha512-9BtHCPUARyVH1oXGcSJD3YpsqRLROJx5ZNP6tN5vnk17N0SVf9WCtf8Nuh1CFmgByKKAIMstitKduoCmsaDK5g==",
801
+ "dev": true,
802
+ "requires": {
803
+ "@babel/helper-annotate-as-pure": "^7.12.13",
804
+ "@babel/helper-function-name": "^7.12.13",
805
+ "@babel/helper-optimise-call-expression": "^7.12.13",
806
+ "@babel/helper-plugin-utils": "^7.13.0",
807
+ "@babel/helper-replace-supers": "^7.13.0",
808
+ "@babel/helper-split-export-declaration": "^7.12.13",
809
+ "globals": "^11.1.0"
810
+ }
811
+ },
812
+ "@babel/plugin-transform-computed-properties": {
813
+ "version": "7.13.0",
814
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.13.0.tgz",
815
+ "integrity": "sha512-RRqTYTeZkZAz8WbieLTvKUEUxZlUTdmL5KGMyZj7FnMfLNKV4+r5549aORG/mgojRmFlQMJDUupwAMiF2Q7OUg==",
816
+ "dev": true,
817
+ "requires": {
818
+ "@babel/helper-plugin-utils": "^7.13.0"
819
+ }
820
+ },
821
+ "@babel/plugin-transform-destructuring": {
822
+ "version": "7.13.0",
823
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.13.0.tgz",
824
+ "integrity": "sha512-zym5em7tePoNT9s964c0/KU3JPPnuq7VhIxPRefJ4/s82cD+q1mgKfuGRDMCPL0HTyKz4dISuQlCusfgCJ86HA==",
825
+ "dev": true,
826
+ "requires": {
827
+ "@babel/helper-plugin-utils": "^7.13.0"
828
+ }
829
+ },
830
+ "@babel/plugin-transform-dotall-regex": {
831
+ "version": "7.12.13",
832
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.13.tgz",
833
+ "integrity": "sha512-foDrozE65ZFdUC2OfgeOCrEPTxdB3yjqxpXh8CH+ipd9CHd4s/iq81kcUpyH8ACGNEPdFqbtzfgzbT/ZGlbDeQ==",
834
+ "dev": true,
835
+ "requires": {
836
+ "@babel/helper-create-regexp-features-plugin": "^7.12.13",
837
+ "@babel/helper-plugin-utils": "^7.12.13"
838
+ }
839
+ },
840
+ "@babel/plugin-transform-duplicate-keys": {
841
+ "version": "7.12.13",
842
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.12.13.tgz",
843
+ "integrity": "sha512-NfADJiiHdhLBW3pulJlJI2NB0t4cci4WTZ8FtdIuNc2+8pslXdPtRRAEWqUY+m9kNOk2eRYbTAOipAxlrOcwwQ==",
844
+ "dev": true,
845
+ "requires": {
846
+ "@babel/helper-plugin-utils": "^7.12.13"
847
+ }
848
+ },
849
+ "@babel/plugin-transform-exponentiation-operator": {
850
+ "version": "7.12.13",
851
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.13.tgz",
852
+ "integrity": "sha512-fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA==",
853
+ "dev": true,
854
+ "requires": {
855
+ "@babel/helper-builder-binary-assignment-operator-visitor": "^7.12.13",
856
+ "@babel/helper-plugin-utils": "^7.12.13"
857
+ }
858
+ },
859
+ "@babel/plugin-transform-for-of": {
860
+ "version": "7.13.0",
861
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.13.0.tgz",
862
+ "integrity": "sha512-IHKT00mwUVYE0zzbkDgNRP6SRzvfGCYsOxIRz8KsiaaHCcT9BWIkO+H9QRJseHBLOGBZkHUdHiqj6r0POsdytg==",
863
+ "dev": true,
864
+ "requires": {
865
+ "@babel/helper-plugin-utils": "^7.13.0"
866
+ }
867
+ },
868
+ "@babel/plugin-transform-function-name": {
869
+ "version": "7.12.13",
870
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.13.tgz",
871
+ "integrity": "sha512-6K7gZycG0cmIwwF7uMK/ZqeCikCGVBdyP2J5SKNCXO5EOHcqi+z7Jwf8AmyDNcBgxET8DrEtCt/mPKPyAzXyqQ==",
872
+ "dev": true,
873
+ "requires": {
874
+ "@babel/helper-function-name": "^7.12.13",
875
+ "@babel/helper-plugin-utils": "^7.12.13"
876
+ }
877
+ },
878
+ "@babel/plugin-transform-literals": {
879
+ "version": "7.12.13",
880
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.13.tgz",
881
+ "integrity": "sha512-FW+WPjSR7hiUxMcKqyNjP05tQ2kmBCdpEpZHY1ARm96tGQCCBvXKnpjILtDplUnJ/eHZ0lALLM+d2lMFSpYJrQ==",
882
+ "dev": true,
883
+ "requires": {
884
+ "@babel/helper-plugin-utils": "^7.12.13"
885
+ }
886
+ },
887
+ "@babel/plugin-transform-member-expression-literals": {
888
+ "version": "7.12.13",
889
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.13.tgz",
890
+ "integrity": "sha512-kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg==",
891
+ "dev": true,
892
+ "requires": {
893
+ "@babel/helper-plugin-utils": "^7.12.13"
894
+ }
895
+ },
896
+ "@babel/plugin-transform-modules-amd": {
897
+ "version": "7.13.0",
898
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.13.0.tgz",
899
+ "integrity": "sha512-EKy/E2NHhY/6Vw5d1k3rgoobftcNUmp9fGjb9XZwQLtTctsRBOTRO7RHHxfIky1ogMN5BxN7p9uMA3SzPfotMQ==",
900
+ "dev": true,
901
+ "requires": {
902
+ "@babel/helper-module-transforms": "^7.13.0",
903
+ "@babel/helper-plugin-utils": "^7.13.0",
904
+ "babel-plugin-dynamic-import-node": "^2.3.3"
905
+ }
906
+ },
907
+ "@babel/plugin-transform-modules-commonjs": {
908
+ "version": "7.13.8",
909
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.13.8.tgz",
910
+ "integrity": "sha512-9QiOx4MEGglfYZ4XOnU79OHr6vIWUakIj9b4mioN8eQIoEh+pf5p/zEB36JpDFWA12nNMiRf7bfoRvl9Rn79Bw==",
911
+ "dev": true,
912
+ "requires": {
913
+ "@babel/helper-module-transforms": "^7.13.0",
914
+ "@babel/helper-plugin-utils": "^7.13.0",
915
+ "@babel/helper-simple-access": "^7.12.13",
916
+ "babel-plugin-dynamic-import-node": "^2.3.3"
917
+ }
918
+ },
919
+ "@babel/plugin-transform-modules-systemjs": {
920
+ "version": "7.13.8",
921
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.13.8.tgz",
922
+ "integrity": "sha512-hwqctPYjhM6cWvVIlOIe27jCIBgHCsdH2xCJVAYQm7V5yTMoilbVMi9f6wKg0rpQAOn6ZG4AOyvCqFF/hUh6+A==",
923
+ "dev": true,
924
+ "requires": {
925
+ "@babel/helper-hoist-variables": "^7.13.0",
926
+ "@babel/helper-module-transforms": "^7.13.0",
927
+ "@babel/helper-plugin-utils": "^7.13.0",
928
+ "@babel/helper-validator-identifier": "^7.12.11",
929
+ "babel-plugin-dynamic-import-node": "^2.3.3"
930
+ }
931
+ },
932
+ "@babel/plugin-transform-modules-umd": {
933
+ "version": "7.13.0",
934
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.13.0.tgz",
935
+ "integrity": "sha512-D/ILzAh6uyvkWjKKyFE/W0FzWwasv6vPTSqPcjxFqn6QpX3u8DjRVliq4F2BamO2Wee/om06Vyy+vPkNrd4wxw==",
936
+ "dev": true,
937
+ "requires": {
938
+ "@babel/helper-module-transforms": "^7.13.0",
939
+ "@babel/helper-plugin-utils": "^7.13.0"
940
+ }
941
+ },
942
+ "@babel/plugin-transform-named-capturing-groups-regex": {
943
+ "version": "7.12.13",
944
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.12.13.tgz",
945
+ "integrity": "sha512-Xsm8P2hr5hAxyYblrfACXpQKdQbx4m2df9/ZZSQ8MAhsadw06+jW7s9zsSw6he+mJZXRlVMyEnVktJo4zjk1WA==",
946
+ "dev": true,
947
+ "requires": {
948
+ "@babel/helper-create-regexp-features-plugin": "^7.12.13"
949
+ }
950
+ },
951
+ "@babel/plugin-transform-new-target": {
952
+ "version": "7.12.13",
953
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.12.13.tgz",
954
+ "integrity": "sha512-/KY2hbLxrG5GTQ9zzZSc3xWiOy379pIETEhbtzwZcw9rvuaVV4Fqy7BYGYOWZnaoXIQYbbJ0ziXLa/sKcGCYEQ==",
955
+ "dev": true,
956
+ "requires": {
957
+ "@babel/helper-plugin-utils": "^7.12.13"
958
+ }
959
+ },
960
+ "@babel/plugin-transform-object-super": {
961
+ "version": "7.12.13",
962
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.13.tgz",
963
+ "integrity": "sha512-JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ==",
964
+ "dev": true,
965
+ "requires": {
966
+ "@babel/helper-plugin-utils": "^7.12.13",
967
+ "@babel/helper-replace-supers": "^7.12.13"
968
+ }
969
+ },
970
+ "@babel/plugin-transform-parameters": {
971
+ "version": "7.13.0",
972
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.13.0.tgz",
973
+ "integrity": "sha512-Jt8k/h/mIwE2JFEOb3lURoY5C85ETcYPnbuAJ96zRBzh1XHtQZfs62ChZ6EP22QlC8c7Xqr9q+e1SU5qttwwjw==",
974
+ "dev": true,
975
+ "requires": {
976
+ "@babel/helper-plugin-utils": "^7.13.0"
977
+ }
978
+ },
979
+ "@babel/plugin-transform-property-literals": {
980
+ "version": "7.12.13",
981
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.13.tgz",
982
+ "integrity": "sha512-nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A==",
983
+ "dev": true,
984
+ "requires": {
985
+ "@babel/helper-plugin-utils": "^7.12.13"
986
+ }
987
+ },
988
+ "@babel/plugin-transform-react-constant-elements": {
989
+ "version": "7.13.10",
990
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.13.10.tgz",
991
+ "integrity": "sha512-E+aCW9j7mLq01tOuGV08YzLBt+vSyr4bOPT75B6WrAlrUfmOYOZ/yWk847EH0dv0xXiCihWLEmlX//O30YhpIw==",
992
+ "dev": true,
993
+ "requires": {
994
+ "@babel/helper-plugin-utils": "^7.13.0"
995
+ }
996
+ },
997
+ "@babel/plugin-transform-react-display-name": {
998
+ "version": "7.12.13",
999
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.12.13.tgz",
1000
+ "integrity": "sha512-MprESJzI9O5VnJZrL7gg1MpdqmiFcUv41Jc7SahxYsNP2kDkFqClxxTZq+1Qv4AFCamm+GXMRDQINNn+qrxmiA==",
1001
+ "dev": true,
1002
+ "requires": {
1003
+ "@babel/helper-plugin-utils": "^7.12.13"
1004
+ }
1005
+ },
1006
+ "@babel/plugin-transform-react-jsx": {
1007
+ "version": "7.13.12",
1008
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.13.12.tgz",
1009
+ "integrity": "sha512-jcEI2UqIcpCqB5U5DRxIl0tQEProI2gcu+g8VTIqxLO5Iidojb4d77q+fwGseCvd8af/lJ9masp4QWzBXFE2xA==",
1010
+ "dev": true,
1011
+ "requires": {
1012
+ "@babel/helper-annotate-as-pure": "^7.12.13",
1013
+ "@babel/helper-module-imports": "^7.13.12",
1014
+ "@babel/helper-plugin-utils": "^7.13.0",
1015
+ "@babel/plugin-syntax-jsx": "^7.12.13",
1016
+ "@babel/types": "^7.13.12"
1017
+ }
1018
+ },
1019
+ "@babel/plugin-transform-react-jsx-development": {
1020
+ "version": "7.12.17",
1021
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.12.17.tgz",
1022
+ "integrity": "sha512-BPjYV86SVuOaudFhsJR1zjgxxOhJDt6JHNoD48DxWEIxUCAMjV1ys6DYw4SDYZh0b1QsS2vfIA9t/ZsQGsDOUQ==",
1023
+ "dev": true,
1024
+ "requires": {
1025
+ "@babel/plugin-transform-react-jsx": "^7.12.17"
1026
+ }
1027
+ },
1028
+ "@babel/plugin-transform-react-pure-annotations": {
1029
+ "version": "7.12.1",
1030
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.12.1.tgz",
1031
+ "integrity": "sha512-RqeaHiwZtphSIUZ5I85PEH19LOSzxfuEazoY7/pWASCAIBuATQzpSVD+eT6MebeeZT2F4eSL0u4vw6n4Nm0Mjg==",
1032
+ "dev": true,
1033
+ "requires": {
1034
+ "@babel/helper-annotate-as-pure": "^7.10.4",
1035
+ "@babel/helper-plugin-utils": "^7.10.4"
1036
+ }
1037
+ },
1038
+ "@babel/plugin-transform-regenerator": {
1039
+ "version": "7.12.13",
1040
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.13.tgz",
1041
+ "integrity": "sha512-lxb2ZAvSLyJ2PEe47hoGWPmW22v7CtSl9jW8mingV4H2sEX/JOcrAj2nPuGWi56ERUm2bUpjKzONAuT6HCn2EA==",
1042
+ "dev": true,
1043
+ "requires": {
1044
+ "regenerator-transform": "^0.14.2"
1045
+ }
1046
+ },
1047
+ "@babel/plugin-transform-reserved-words": {
1048
+ "version": "7.12.13",
1049
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.13.tgz",
1050
+ "integrity": "sha512-xhUPzDXxZN1QfiOy/I5tyye+TRz6lA7z6xaT4CLOjPRMVg1ldRf0LHw0TDBpYL4vG78556WuHdyO9oi5UmzZBg==",
1051
+ "dev": true,
1052
+ "requires": {
1053
+ "@babel/helper-plugin-utils": "^7.12.13"
1054
+ }
1055
+ },
1056
+ "@babel/plugin-transform-shorthand-properties": {
1057
+ "version": "7.12.13",
1058
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.13.tgz",
1059
+ "integrity": "sha512-xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw==",
1060
+ "dev": true,
1061
+ "requires": {
1062
+ "@babel/helper-plugin-utils": "^7.12.13"
1063
+ }
1064
+ },
1065
+ "@babel/plugin-transform-spread": {
1066
+ "version": "7.13.0",
1067
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.13.0.tgz",
1068
+ "integrity": "sha512-V6vkiXijjzYeFmQTr3dBxPtZYLPcUfY34DebOU27jIl2M/Y8Egm52Hw82CSjjPqd54GTlJs5x+CR7HeNr24ckg==",
1069
+ "dev": true,
1070
+ "requires": {
1071
+ "@babel/helper-plugin-utils": "^7.13.0",
1072
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.12.1"
1073
+ }
1074
+ },
1075
+ "@babel/plugin-transform-sticky-regex": {
1076
+ "version": "7.12.13",
1077
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.13.tgz",
1078
+ "integrity": "sha512-Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg==",
1079
+ "dev": true,
1080
+ "requires": {
1081
+ "@babel/helper-plugin-utils": "^7.12.13"
1082
+ }
1083
+ },
1084
+ "@babel/plugin-transform-template-literals": {
1085
+ "version": "7.13.0",
1086
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.13.0.tgz",
1087
+ "integrity": "sha512-d67umW6nlfmr1iehCcBv69eSUSySk1EsIS8aTDX4Xo9qajAh6mYtcl4kJrBkGXuxZPEgVr7RVfAvNW6YQkd4Mw==",
1088
+ "dev": true,
1089
+ "requires": {
1090
+ "@babel/helper-plugin-utils": "^7.13.0"
1091
+ }
1092
+ },
1093
+ "@babel/plugin-transform-typeof-symbol": {
1094
+ "version": "7.12.13",
1095
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.13.tgz",
1096
+ "integrity": "sha512-eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ==",
1097
+ "dev": true,
1098
+ "requires": {
1099
+ "@babel/helper-plugin-utils": "^7.12.13"
1100
+ }
1101
+ },
1102
+ "@babel/plugin-transform-unicode-escapes": {
1103
+ "version": "7.12.13",
1104
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.13.tgz",
1105
+ "integrity": "sha512-0bHEkdwJ/sN/ikBHfSmOXPypN/beiGqjo+o4/5K+vxEFNPRPdImhviPakMKG4x96l85emoa0Z6cDflsdBusZbw==",
1106
+ "dev": true,
1107
+ "requires": {
1108
+ "@babel/helper-plugin-utils": "^7.12.13"
1109
+ }
1110
+ },
1111
+ "@babel/plugin-transform-unicode-regex": {
1112
+ "version": "7.12.13",
1113
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.13.tgz",
1114
+ "integrity": "sha512-mDRzSNY7/zopwisPZ5kM9XKCfhchqIYwAKRERtEnhYscZB79VRekuRSoYbN0+KVe3y8+q1h6A4svXtP7N+UoCA==",
1115
+ "dev": true,
1116
+ "requires": {
1117
+ "@babel/helper-create-regexp-features-plugin": "^7.12.13",
1118
+ "@babel/helper-plugin-utils": "^7.12.13"
1119
+ }
1120
+ },
1121
+ "@babel/preset-env": {
1122
+ "version": "7.13.12",
1123
+ "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.13.12.tgz",
1124
+ "integrity": "sha512-JzElc6jk3Ko6zuZgBtjOd01pf9yYDEIH8BcqVuYIuOkzOwDesoa/Nz4gIo4lBG6K861KTV9TvIgmFuT6ytOaAA==",
1125
+ "dev": true,
1126
+ "requires": {
1127
+ "@babel/compat-data": "^7.13.12",
1128
+ "@babel/helper-compilation-targets": "^7.13.10",
1129
+ "@babel/helper-plugin-utils": "^7.13.0",
1130
+ "@babel/helper-validator-option": "^7.12.17",
1131
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.13.12",
1132
+ "@babel/plugin-proposal-async-generator-functions": "^7.13.8",
1133
+ "@babel/plugin-proposal-class-properties": "^7.13.0",
1134
+ "@babel/plugin-proposal-dynamic-import": "^7.13.8",
1135
+ "@babel/plugin-proposal-export-namespace-from": "^7.12.13",
1136
+ "@babel/plugin-proposal-json-strings": "^7.13.8",
1137
+ "@babel/plugin-proposal-logical-assignment-operators": "^7.13.8",
1138
+ "@babel/plugin-proposal-nullish-coalescing-operator": "^7.13.8",
1139
+ "@babel/plugin-proposal-numeric-separator": "^7.12.13",
1140
+ "@babel/plugin-proposal-object-rest-spread": "^7.13.8",
1141
+ "@babel/plugin-proposal-optional-catch-binding": "^7.13.8",
1142
+ "@babel/plugin-proposal-optional-chaining": "^7.13.12",
1143
+ "@babel/plugin-proposal-private-methods": "^7.13.0",
1144
+ "@babel/plugin-proposal-unicode-property-regex": "^7.12.13",
1145
+ "@babel/plugin-syntax-async-generators": "^7.8.4",
1146
+ "@babel/plugin-syntax-class-properties": "^7.12.13",
1147
+ "@babel/plugin-syntax-dynamic-import": "^7.8.3",
1148
+ "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
1149
+ "@babel/plugin-syntax-json-strings": "^7.8.3",
1150
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
1151
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
1152
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4",
1153
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
1154
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
1155
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3",
1156
+ "@babel/plugin-syntax-top-level-await": "^7.12.13",
1157
+ "@babel/plugin-transform-arrow-functions": "^7.13.0",
1158
+ "@babel/plugin-transform-async-to-generator": "^7.13.0",
1159
+ "@babel/plugin-transform-block-scoped-functions": "^7.12.13",
1160
+ "@babel/plugin-transform-block-scoping": "^7.12.13",
1161
+ "@babel/plugin-transform-classes": "^7.13.0",
1162
+ "@babel/plugin-transform-computed-properties": "^7.13.0",
1163
+ "@babel/plugin-transform-destructuring": "^7.13.0",
1164
+ "@babel/plugin-transform-dotall-regex": "^7.12.13",
1165
+ "@babel/plugin-transform-duplicate-keys": "^7.12.13",
1166
+ "@babel/plugin-transform-exponentiation-operator": "^7.12.13",
1167
+ "@babel/plugin-transform-for-of": "^7.13.0",
1168
+ "@babel/plugin-transform-function-name": "^7.12.13",
1169
+ "@babel/plugin-transform-literals": "^7.12.13",
1170
+ "@babel/plugin-transform-member-expression-literals": "^7.12.13",
1171
+ "@babel/plugin-transform-modules-amd": "^7.13.0",
1172
+ "@babel/plugin-transform-modules-commonjs": "^7.13.8",
1173
+ "@babel/plugin-transform-modules-systemjs": "^7.13.8",
1174
+ "@babel/plugin-transform-modules-umd": "^7.13.0",
1175
+ "@babel/plugin-transform-named-capturing-groups-regex": "^7.12.13",
1176
+ "@babel/plugin-transform-new-target": "^7.12.13",
1177
+ "@babel/plugin-transform-object-super": "^7.12.13",
1178
+ "@babel/plugin-transform-parameters": "^7.13.0",
1179
+ "@babel/plugin-transform-property-literals": "^7.12.13",
1180
+ "@babel/plugin-transform-regenerator": "^7.12.13",
1181
+ "@babel/plugin-transform-reserved-words": "^7.12.13",
1182
+ "@babel/plugin-transform-shorthand-properties": "^7.12.13",
1183
+ "@babel/plugin-transform-spread": "^7.13.0",
1184
+ "@babel/plugin-transform-sticky-regex": "^7.12.13",
1185
+ "@babel/plugin-transform-template-literals": "^7.13.0",
1186
+ "@babel/plugin-transform-typeof-symbol": "^7.12.13",
1187
+ "@babel/plugin-transform-unicode-escapes": "^7.12.13",
1188
+ "@babel/plugin-transform-unicode-regex": "^7.12.13",
1189
+ "@babel/preset-modules": "^0.1.4",
1190
+ "@babel/types": "^7.13.12",
1191
+ "babel-plugin-polyfill-corejs2": "^0.1.4",
1192
+ "babel-plugin-polyfill-corejs3": "^0.1.3",
1193
+ "babel-plugin-polyfill-regenerator": "^0.1.2",
1194
+ "core-js-compat": "^3.9.0",
1195
+ "semver": "^6.3.0"
1196
+ },
1197
+ "dependencies": {
1198
+ "semver": {
1199
+ "version": "6.3.0",
1200
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1201
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1202
+ "dev": true
1203
+ }
1204
+ }
1205
+ },
1206
+ "@babel/preset-modules": {
1207
+ "version": "0.1.4",
1208
+ "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.4.tgz",
1209
+ "integrity": "sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==",
1210
+ "dev": true,
1211
+ "requires": {
1212
+ "@babel/helper-plugin-utils": "^7.0.0",
1213
+ "@babel/plugin-proposal-unicode-property-regex": "^7.4.4",
1214
+ "@babel/plugin-transform-dotall-regex": "^7.4.4",
1215
+ "@babel/types": "^7.4.4",
1216
+ "esutils": "^2.0.2"
1217
+ }
1218
+ },
1219
+ "@babel/preset-react": {
1220
+ "version": "7.12.13",
1221
+ "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.12.13.tgz",
1222
+ "integrity": "sha512-TYM0V9z6Abb6dj1K7i5NrEhA13oS5ujUYQYDfqIBXYHOc2c2VkFgc+q9kyssIyUfy4/hEwqrgSlJ/Qgv8zJLsA==",
1223
+ "dev": true,
1224
+ "requires": {
1225
+ "@babel/helper-plugin-utils": "^7.12.13",
1226
+ "@babel/plugin-transform-react-display-name": "^7.12.13",
1227
+ "@babel/plugin-transform-react-jsx": "^7.12.13",
1228
+ "@babel/plugin-transform-react-jsx-development": "^7.12.12",
1229
+ "@babel/plugin-transform-react-pure-annotations": "^7.12.1"
1230
+ }
1231
+ },
1232
+ "@babel/runtime": {
1233
+ "version": "7.13.10",
1234
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.10.tgz",
1235
+ "integrity": "sha512-4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw==",
1236
+ "requires": {
1237
+ "regenerator-runtime": "^0.13.4"
1238
+ }
1239
+ },
1240
+ "@babel/runtime-corejs2": {
1241
+ "version": "7.13.10",
1242
+ "resolved": "https://registry.npmjs.org/@babel/runtime-corejs2/-/runtime-corejs2-7.13.10.tgz",
1243
+ "integrity": "sha512-rZw5P1ZewO6XZTDxtXuAuAFUqfNXyM8HO/9WiaDd34Anka0uFTpo0RvBLeV775AEE/zKw3LQB+poZw/O9lrZBg==",
1244
+ "dev": true,
1245
+ "requires": {
1246
+ "core-js": "^2.6.5",
1247
+ "regenerator-runtime": "^0.13.4"
1248
+ }
1249
+ },
1250
+ "@babel/template": {
1251
+ "version": "7.12.13",
1252
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz",
1253
+ "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==",
1254
+ "dev": true,
1255
+ "requires": {
1256
+ "@babel/code-frame": "^7.12.13",
1257
+ "@babel/parser": "^7.12.13",
1258
+ "@babel/types": "^7.12.13"
1259
+ }
1260
+ },
1261
+ "@babel/traverse": {
1262
+ "version": "7.13.0",
1263
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz",
1264
+ "integrity": "sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ==",
1265
+ "dev": true,
1266
+ "requires": {
1267
+ "@babel/code-frame": "^7.12.13",
1268
+ "@babel/generator": "^7.13.0",
1269
+ "@babel/helper-function-name": "^7.12.13",
1270
+ "@babel/helper-split-export-declaration": "^7.12.13",
1271
+ "@babel/parser": "^7.13.0",
1272
+ "@babel/types": "^7.13.0",
1273
+ "debug": "^4.1.0",
1274
+ "globals": "^11.1.0",
1275
+ "lodash": "^4.17.19"
1276
+ },
1277
+ "dependencies": {
1278
+ "debug": {
1279
+ "version": "4.3.1",
1280
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
1281
+ "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
1282
+ "dev": true,
1283
+ "requires": {
1284
+ "ms": "2.1.2"
1285
+ }
1286
+ },
1287
+ "ms": {
1288
+ "version": "2.1.2",
1289
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
1290
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
1291
+ "dev": true
1292
+ }
1293
+ }
1294
+ },
1295
+ "@babel/types": {
1296
+ "version": "7.13.12",
1297
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz",
1298
+ "integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==",
1299
+ "dev": true,
1300
+ "requires": {
1301
+ "@babel/helper-validator-identifier": "^7.12.11",
1302
+ "lodash": "^4.17.19",
1303
+ "to-fast-properties": "^2.0.0"
1304
+ }
1305
+ },
1306
+ "@choojs/findup": {
1307
+ "version": "0.2.1",
1308
+ "resolved": "https://registry.npmjs.org/@choojs/findup/-/findup-0.2.1.tgz",
1309
+ "integrity": "sha512-YstAqNb0MCN8PjdLCDfRsBcGVRN41f3vgLvaI0IrIcBp4AqILRSS0DeWNGkicC+f/zRIPJLc+9RURVSepwvfBw==",
1310
+ "dev": true,
1311
+ "requires": {
1312
+ "commander": "^2.15.1"
1313
+ }
1314
+ },
1315
+ "@cnakazawa/watch": {
1316
+ "version": "1.0.4",
1317
+ "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz",
1318
+ "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==",
1319
+ "dev": true,
1320
+ "requires": {
1321
+ "exec-sh": "^0.3.2",
1322
+ "minimist": "^1.2.0"
1323
+ }
1324
+ },
1325
+ "@csstools/convert-colors": {
1326
+ "version": "1.4.0",
1327
+ "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz",
1328
+ "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==",
1329
+ "dev": true
1330
+ },
1331
+ "@discoveryjs/json-ext": {
1332
+ "version": "0.5.2",
1333
+ "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.2.tgz",
1334
+ "integrity": "sha512-HyYEUDeIj5rRQU2Hk5HTB2uHsbRQpF70nvMhVzi+VJR0X+xNEhjPui4/kBf3VeH/wqD28PT4sVOm8qqLjBrSZg==",
1335
+ "dev": true
1336
+ },
1337
+ "@emotion/cache": {
1338
+ "version": "10.0.29",
1339
+ "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-10.0.29.tgz",
1340
+ "integrity": "sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ==",
1341
+ "dev": true,
1342
+ "requires": {
1343
+ "@emotion/sheet": "0.9.4",
1344
+ "@emotion/stylis": "0.8.5",
1345
+ "@emotion/utils": "0.11.3",
1346
+ "@emotion/weak-memoize": "0.2.5"
1347
+ }
1348
+ },
1349
+ "@emotion/core": {
1350
+ "version": "10.1.1",
1351
+ "resolved": "https://registry.npmjs.org/@emotion/core/-/core-10.1.1.tgz",
1352
+ "integrity": "sha512-ZMLG6qpXR8x031NXD8HJqugy/AZSkAuMxxqB46pmAR7ze47MhNJ56cdoX243QPZdGctrdfo+s08yZTiwaUcRKA==",
1353
+ "dev": true,
1354
+ "requires": {
1355
+ "@babel/runtime": "^7.5.5",
1356
+ "@emotion/cache": "^10.0.27",
1357
+ "@emotion/css": "^10.0.27",
1358
+ "@emotion/serialize": "^0.11.15",
1359
+ "@emotion/sheet": "0.9.4",
1360
+ "@emotion/utils": "0.11.3"
1361
+ }
1362
+ },
1363
+ "@emotion/css": {
1364
+ "version": "10.0.27",
1365
+ "resolved": "https://registry.npmjs.org/@emotion/css/-/css-10.0.27.tgz",
1366
+ "integrity": "sha512-6wZjsvYeBhyZQYNrGoR5yPMYbMBNEnanDrqmsqS1mzDm1cOTu12shvl2j4QHNS36UaTE0USIJawCH9C8oW34Zw==",
1367
+ "dev": true,
1368
+ "requires": {
1369
+ "@emotion/serialize": "^0.11.15",
1370
+ "@emotion/utils": "0.11.3",
1371
+ "babel-plugin-emotion": "^10.0.27"
1372
+ }
1373
+ },
1374
+ "@emotion/hash": {
1375
+ "version": "0.8.0",
1376
+ "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz",
1377
+ "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==",
1378
+ "dev": true
1379
+ },
1380
+ "@emotion/is-prop-valid": {
1381
+ "version": "0.8.8",
1382
+ "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz",
1383
+ "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==",
1384
+ "dev": true,
1385
+ "requires": {
1386
+ "@emotion/memoize": "0.7.4"
1387
+ }
1388
+ },
1389
+ "@emotion/memoize": {
1390
+ "version": "0.7.4",
1391
+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz",
1392
+ "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==",
1393
+ "dev": true
1394
+ },
1395
+ "@emotion/native": {
1396
+ "version": "10.0.27",
1397
+ "resolved": "https://registry.npmjs.org/@emotion/native/-/native-10.0.27.tgz",
1398
+ "integrity": "sha512-3qxR2XFizGfABKKbX9kAYc0PHhKuCEuyxshoq3TaMEbi9asWHdQVChg32ULpblm4XAf9oxaitAU7J9SfdwFxtw==",
1399
+ "dev": true,
1400
+ "requires": {
1401
+ "@emotion/primitives-core": "10.0.27"
1402
+ }
1403
+ },
1404
+ "@emotion/primitives-core": {
1405
+ "version": "10.0.27",
1406
+ "resolved": "https://registry.npmjs.org/@emotion/primitives-core/-/primitives-core-10.0.27.tgz",
1407
+ "integrity": "sha512-fRBEDNPSFFOrBJ0OcheuElayrNTNdLF9DzMxtL0sFgsCFvvadlzwJHhJMSwEJuxwARm9GhVLr1p8G8JGkK98lQ==",
1408
+ "dev": true,
1409
+ "requires": {
1410
+ "css-to-react-native": "^2.2.1"
1411
+ }
1412
+ },
1413
+ "@emotion/serialize": {
1414
+ "version": "0.11.16",
1415
+ "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-0.11.16.tgz",
1416
+ "integrity": "sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg==",
1417
+ "dev": true,
1418
+ "requires": {
1419
+ "@emotion/hash": "0.8.0",
1420
+ "@emotion/memoize": "0.7.4",
1421
+ "@emotion/unitless": "0.7.5",
1422
+ "@emotion/utils": "0.11.3",
1423
+ "csstype": "^2.5.7"
1424
+ },
1425
+ "dependencies": {
1426
+ "csstype": {
1427
+ "version": "2.6.16",
1428
+ "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.16.tgz",
1429
+ "integrity": "sha512-61FBWoDHp/gRtsoDkq/B1nWrCUG/ok1E3tUrcNbZjsE9Cxd9yzUirjS3+nAATB8U4cTtaQmAHbNndoFz5L6C9Q==",
1430
+ "dev": true
1431
+ }
1432
+ }
1433
+ },
1434
+ "@emotion/sheet": {
1435
+ "version": "0.9.4",
1436
+ "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-0.9.4.tgz",
1437
+ "integrity": "sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA==",
1438
+ "dev": true
1439
+ },
1440
+ "@emotion/styled": {
1441
+ "version": "10.0.27",
1442
+ "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-10.0.27.tgz",
1443
+ "integrity": "sha512-iK/8Sh7+NLJzyp9a5+vIQIXTYxfT4yB/OJbjzQanB2RZpvmzBQOHZWhpAMZWYEKRNNbsD6WfBw5sVWkb6WzS/Q==",
1444
+ "dev": true,
1445
+ "requires": {
1446
+ "@emotion/styled-base": "^10.0.27",
1447
+ "babel-plugin-emotion": "^10.0.27"
1448
+ }
1449
+ },
1450
+ "@emotion/styled-base": {
1451
+ "version": "10.0.31",
1452
+ "resolved": "https://registry.npmjs.org/@emotion/styled-base/-/styled-base-10.0.31.tgz",
1453
+ "integrity": "sha512-wTOE1NcXmqMWlyrtwdkqg87Mu6Rj1MaukEoEmEkHirO5IoHDJ8LgCQL4MjJODgxWxXibGR3opGp1p7YvkNEdXQ==",
1454
+ "dev": true,
1455
+ "requires": {
1456
+ "@babel/runtime": "^7.5.5",
1457
+ "@emotion/is-prop-valid": "0.8.8",
1458
+ "@emotion/serialize": "^0.11.15",
1459
+ "@emotion/utils": "0.11.3"
1460
+ }
1461
+ },
1462
+ "@emotion/stylis": {
1463
+ "version": "0.8.5",
1464
+ "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz",
1465
+ "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==",
1466
+ "dev": true
1467
+ },
1468
+ "@emotion/unitless": {
1469
+ "version": "0.7.5",
1470
+ "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz",
1471
+ "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==",
1472
+ "dev": true
1473
+ },
1474
+ "@emotion/utils": {
1475
+ "version": "0.11.3",
1476
+ "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-0.11.3.tgz",
1477
+ "integrity": "sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw==",
1478
+ "dev": true
1479
+ },
1480
+ "@emotion/weak-memoize": {
1481
+ "version": "0.2.5",
1482
+ "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz",
1483
+ "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==",
1484
+ "dev": true
1485
+ },
1486
+ "@eslint/eslintrc": {
1487
+ "version": "0.4.0",
1488
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz",
1489
+ "integrity": "sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==",
1490
+ "dev": true,
1491
+ "requires": {
1492
+ "ajv": "^6.12.4",
1493
+ "debug": "^4.1.1",
1494
+ "espree": "^7.3.0",
1495
+ "globals": "^12.1.0",
1496
+ "ignore": "^4.0.6",
1497
+ "import-fresh": "^3.2.1",
1498
+ "js-yaml": "^3.13.1",
1499
+ "minimatch": "^3.0.4",
1500
+ "strip-json-comments": "^3.1.1"
1501
+ },
1502
+ "dependencies": {
1503
+ "debug": {
1504
+ "version": "4.3.1",
1505
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
1506
+ "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
1507
+ "dev": true,
1508
+ "requires": {
1509
+ "ms": "2.1.2"
1510
+ }
1511
+ },
1512
+ "globals": {
1513
+ "version": "12.4.0",
1514
+ "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz",
1515
+ "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==",
1516
+ "dev": true,
1517
+ "requires": {
1518
+ "type-fest": "^0.8.1"
1519
+ }
1520
+ },
1521
+ "ignore": {
1522
+ "version": "4.0.6",
1523
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
1524
+ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
1525
+ "dev": true
1526
+ },
1527
+ "ms": {
1528
+ "version": "2.1.2",
1529
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
1530
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
1531
+ "dev": true
1532
+ },
1533
+ "strip-json-comments": {
1534
+ "version": "3.1.1",
1535
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
1536
+ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
1537
+ "dev": true
1538
+ },
1539
+ "type-fest": {
1540
+ "version": "0.8.1",
1541
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
1542
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
1543
+ "dev": true
1544
+ }
1545
+ }
1546
+ },
1547
+ "@istanbuljs/load-nyc-config": {
1548
+ "version": "1.1.0",
1549
+ "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
1550
+ "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
1551
+ "dev": true,
1552
+ "requires": {
1553
+ "camelcase": "^5.3.1",
1554
+ "find-up": "^4.1.0",
1555
+ "get-package-type": "^0.1.0",
1556
+ "js-yaml": "^3.13.1",
1557
+ "resolve-from": "^5.0.0"
1558
+ },
1559
+ "dependencies": {
1560
+ "camelcase": {
1561
+ "version": "5.3.1",
1562
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
1563
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
1564
+ "dev": true
1565
+ },
1566
+ "find-up": {
1567
+ "version": "4.1.0",
1568
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
1569
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
1570
+ "dev": true,
1571
+ "requires": {
1572
+ "locate-path": "^5.0.0",
1573
+ "path-exists": "^4.0.0"
1574
+ }
1575
+ },
1576
+ "path-exists": {
1577
+ "version": "4.0.0",
1578
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
1579
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
1580
+ "dev": true
1581
+ },
1582
+ "resolve-from": {
1583
+ "version": "5.0.0",
1584
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
1585
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
1586
+ "dev": true
1587
+ }
1588
+ }
1589
+ },
1590
+ "@istanbuljs/schema": {
1591
+ "version": "0.1.3",
1592
+ "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
1593
+ "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
1594
+ "dev": true
1595
+ },
1596
+ "@itsjonq/is": {
1597
+ "version": "0.0.2",
1598
+ "resolved": "https://registry.npmjs.org/@itsjonq/is/-/is-0.0.2.tgz",
1599
+ "integrity": "sha512-P0Ug+chfjCV1JV8MUxAGPz0BM76yDlR76AIfPwRZ6mAJW56k6b9j0s2cIcEsEAu0gNj/RJD1STw777AQyBN3CQ==",
1600
+ "dev": true
1601
+ },
1602
+ "@jest/transform": {
1603
+ "version": "26.6.2",
1604
+ "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.6.2.tgz",
1605
+ "integrity": "sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==",
1606
+ "dev": true,
1607
+ "requires": {
1608
+ "@babel/core": "^7.1.0",
1609
+ "@jest/types": "^26.6.2",
1610
+ "babel-plugin-istanbul": "^6.0.0",
1611
+ "chalk": "^4.0.0",
1612
+ "convert-source-map": "^1.4.0",
1613
+ "fast-json-stable-stringify": "^2.0.0",
1614
+ "graceful-fs": "^4.2.4",
1615
+ "jest-haste-map": "^26.6.2",
1616
+ "jest-regex-util": "^26.0.0",
1617
+ "jest-util": "^26.6.2",
1618
+ "micromatch": "^4.0.2",
1619
+ "pirates": "^4.0.1",
1620
+ "slash": "^3.0.0",
1621
+ "source-map": "^0.6.1",
1622
+ "write-file-atomic": "^3.0.0"
1623
+ },
1624
+ "dependencies": {
1625
+ "ansi-styles": {
1626
+ "version": "4.3.0",
1627
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
1628
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
1629
+ "dev": true,
1630
+ "requires": {
1631
+ "color-convert": "^2.0.1"
1632
+ }
1633
+ },
1634
+ "chalk": {
1635
+ "version": "4.1.0",
1636
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
1637
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
1638
+ "dev": true,
1639
+ "requires": {
1640
+ "ansi-styles": "^4.1.0",
1641
+ "supports-color": "^7.1.0"
1642
+ }
1643
+ },
1644
+ "color-convert": {
1645
+ "version": "2.0.1",
1646
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1647
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1648
+ "dev": true,
1649
+ "requires": {
1650
+ "color-name": "~1.1.4"
1651
+ }
1652
+ },
1653
+ "color-name": {
1654
+ "version": "1.1.4",
1655
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1656
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
1657
+ "dev": true
1658
+ },
1659
+ "has-flag": {
1660
+ "version": "4.0.0",
1661
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
1662
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
1663
+ "dev": true
1664
+ },
1665
+ "supports-color": {
1666
+ "version": "7.2.0",
1667
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
1668
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1669
+ "dev": true,
1670
+ "requires": {
1671
+ "has-flag": "^4.0.0"
1672
+ }
1673
+ }
1674
+ }
1675
+ },
1676
+ "@jest/types": {
1677
+ "version": "26.6.2",
1678
+ "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz",
1679
+ "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==",
1680
+ "dev": true,
1681
+ "requires": {
1682
+ "@types/istanbul-lib-coverage": "^2.0.0",
1683
+ "@types/istanbul-reports": "^3.0.0",
1684
+ "@types/node": "*",
1685
+ "@types/yargs": "^15.0.0",
1686
+ "chalk": "^4.0.0"
1687
+ },
1688
+ "dependencies": {
1689
+ "ansi-styles": {
1690
+ "version": "4.3.0",
1691
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
1692
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
1693
+ "dev": true,
1694
+ "requires": {
1695
+ "color-convert": "^2.0.1"
1696
+ }
1697
+ },
1698
+ "chalk": {
1699
+ "version": "4.1.0",
1700
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
1701
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
1702
+ "dev": true,
1703
+ "requires": {
1704
+ "ansi-styles": "^4.1.0",
1705
+ "supports-color": "^7.1.0"
1706
+ }
1707
+ },
1708
+ "color-convert": {
1709
+ "version": "2.0.1",
1710
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1711
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1712
+ "dev": true,
1713
+ "requires": {
1714
+ "color-name": "~1.1.4"
1715
+ }
1716
+ },
1717
+ "color-name": {
1718
+ "version": "1.1.4",
1719
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1720
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
1721
+ "dev": true
1722
+ },
1723
+ "has-flag": {
1724
+ "version": "4.0.0",
1725
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
1726
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
1727
+ "dev": true
1728
+ },
1729
+ "supports-color": {
1730
+ "version": "7.2.0",
1731
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
1732
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1733
+ "dev": true,
1734
+ "requires": {
1735
+ "has-flag": "^4.0.0"
1736
+ }
1737
+ }
1738
+ }
1739
+ },
1740
+ "@nicolo-ribaudo/chokidar-2": {
1741
+ "version": "2.1.8-no-fsevents",
1742
+ "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.tgz",
1743
+ "integrity": "sha512-+nb9vWloHNNMFHjGofEam3wopE3m1yuambrrd/fnPc+lFOMB9ROTqQlche9ByFWNkdNqfSgR/kkQtQ8DzEWt2w==",
1744
+ "dev": true,
1745
+ "optional": true,
1746
+ "requires": {
1747
+ "anymatch": "^2.0.0",
1748
+ "async-each": "^1.0.1",
1749
+ "braces": "^2.3.2",
1750
+ "glob-parent": "^3.1.0",
1751
+ "inherits": "^2.0.3",
1752
+ "is-binary-path": "^1.0.0",
1753
+ "is-glob": "^4.0.0",
1754
+ "normalize-path": "^3.0.0",
1755
+ "path-is-absolute": "^1.0.0",
1756
+ "readdirp": "^2.2.1",
1757
+ "upath": "^1.1.1"
1758
+ },
1759
+ "dependencies": {
1760
+ "braces": {
1761
+ "version": "2.3.2",
1762
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
1763
+ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
1764
+ "dev": true,
1765
+ "optional": true,
1766
+ "requires": {
1767
+ "arr-flatten": "^1.1.0",
1768
+ "array-unique": "^0.3.2",
1769
+ "extend-shallow": "^2.0.1",
1770
+ "fill-range": "^4.0.0",
1771
+ "isobject": "^3.0.1",
1772
+ "repeat-element": "^1.1.2",
1773
+ "snapdragon": "^0.8.1",
1774
+ "snapdragon-node": "^2.0.1",
1775
+ "split-string": "^3.0.2",
1776
+ "to-regex": "^3.0.1"
1777
+ }
1778
+ },
1779
+ "extend-shallow": {
1780
+ "version": "2.0.1",
1781
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1782
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1783
+ "dev": true,
1784
+ "optional": true,
1785
+ "requires": {
1786
+ "is-extendable": "^0.1.0"
1787
+ }
1788
+ },
1789
+ "fill-range": {
1790
+ "version": "4.0.0",
1791
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
1792
+ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
1793
+ "dev": true,
1794
+ "optional": true,
1795
+ "requires": {
1796
+ "extend-shallow": "^2.0.1",
1797
+ "is-number": "^3.0.0",
1798
+ "repeat-string": "^1.6.1",
1799
+ "to-regex-range": "^2.1.0"
1800
+ }
1801
+ },
1802
+ "glob-parent": {
1803
+ "version": "3.1.0",
1804
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
1805
+ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
1806
+ "dev": true,
1807
+ "optional": true,
1808
+ "requires": {
1809
+ "is-glob": "^3.1.0",
1810
+ "path-dirname": "^1.0.0"
1811
+ },
1812
+ "dependencies": {
1813
+ "is-glob": {
1814
+ "version": "3.1.0",
1815
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
1816
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
1817
+ "dev": true,
1818
+ "optional": true,
1819
+ "requires": {
1820
+ "is-extglob": "^2.1.0"
1821
+ }
1822
+ }
1823
+ }
1824
+ },
1825
+ "is-number": {
1826
+ "version": "3.0.0",
1827
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
1828
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
1829
+ "dev": true,
1830
+ "optional": true,
1831
+ "requires": {
1832
+ "kind-of": "^3.0.2"
1833
+ }
1834
+ },
1835
+ "kind-of": {
1836
+ "version": "3.2.2",
1837
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
1838
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
1839
+ "dev": true,
1840
+ "optional": true,
1841
+ "requires": {
1842
+ "is-buffer": "^1.1.5"
1843
+ }
1844
+ },
1845
+ "to-regex-range": {
1846
+ "version": "2.1.1",
1847
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
1848
+ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
1849
+ "dev": true,
1850
+ "optional": true,
1851
+ "requires": {
1852
+ "is-number": "^3.0.0",
1853
+ "repeat-string": "^1.6.1"
1854
+ }
1855
+ }
1856
+ }
1857
+ },
1858
+ "@nodelib/fs.scandir": {
1859
+ "version": "2.1.4",
1860
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz",
1861
+ "integrity": "sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==",
1862
+ "requires": {
1863
+ "@nodelib/fs.stat": "2.0.4",
1864
+ "run-parallel": "^1.1.9"
1865
+ }
1866
+ },
1867
+ "@nodelib/fs.stat": {
1868
+ "version": "2.0.4",
1869
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz",
1870
+ "integrity": "sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q=="
1871
+ },
1872
+ "@nodelib/fs.walk": {
1873
+ "version": "1.2.6",
1874
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz",
1875
+ "integrity": "sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==",
1876
+ "requires": {
1877
+ "@nodelib/fs.scandir": "2.1.4",
1878
+ "fastq": "^1.6.0"
1879
+ }
1880
+ },
1881
+ "@popperjs/core": {
1882
+ "version": "2.9.1",
1883
+ "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.9.1.tgz",
1884
+ "integrity": "sha512-DvJbbn3dUgMxDnJLH+RZQPnXak1h4ZVYQ7CWiFWjQwBFkVajT4rfw2PdpHLTSTwxrYfnoEXkuBiwkDm6tPMQeA==",
1885
+ "dev": true
1886
+ },
1887
+ "@rjsf/core": {
1888
+ "version": "2.5.1",
1889
+ "resolved": "https://registry.npmjs.org/@rjsf/core/-/core-2.5.1.tgz",
1890
+ "integrity": "sha512-km8NYScXNONaL5BiSLS6wyDj49pOLZtn0iXg7Zxlm921uuf3o2AAX5SuZS5kB4Zj2zlrVMrXESexfX6bxdDYHw==",
1891
+ "dev": true,
1892
+ "requires": {
1893
+ "@babel/runtime-corejs2": "^7.8.7",
1894
+ "@types/json-schema": "^7.0.4",
1895
+ "ajv": "^6.7.0",
1896
+ "core-js": "^2.5.7",
1897
+ "json-schema-merge-allof": "^0.6.0",
1898
+ "jsonpointer": "^4.0.1",
1899
+ "lodash": "^4.17.15",
1900
+ "prop-types": "^15.7.2",
1901
+ "react-app-polyfill": "^1.0.4",
1902
+ "react-is": "^16.9.0",
1903
+ "shortid": "^2.2.14"
1904
+ }
1905
+ },
1906
+ "@sindresorhus/is": {
1907
+ "version": "0.7.0",
1908
+ "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz",
1909
+ "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow=="
1910
+ },
1911
+ "@svgr/babel-plugin-add-jsx-attribute": {
1912
+ "version": "5.4.0",
1913
+ "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz",
1914
+ "integrity": "sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg==",
1915
+ "dev": true
1916
+ },
1917
+ "@svgr/babel-plugin-remove-jsx-attribute": {
1918
+ "version": "5.4.0",
1919
+ "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz",
1920
+ "integrity": "sha512-yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg==",
1921
+ "dev": true
1922
+ },
1923
+ "@svgr/babel-plugin-remove-jsx-empty-expression": {
1924
+ "version": "5.0.1",
1925
+ "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz",
1926
+ "integrity": "sha512-LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA==",
1927
+ "dev": true
1928
+ },
1929
+ "@svgr/babel-plugin-replace-jsx-attribute-value": {
1930
+ "version": "5.0.1",
1931
+ "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz",
1932
+ "integrity": "sha512-PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ==",
1933
+ "dev": true
1934
+ },
1935
+ "@svgr/babel-plugin-svg-dynamic-title": {
1936
+ "version": "5.4.0",
1937
+ "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz",
1938
+ "integrity": "sha512-zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg==",
1939
+ "dev": true
1940
+ },
1941
+ "@svgr/babel-plugin-svg-em-dimensions": {
1942
+ "version": "5.4.0",
1943
+ "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz",
1944
+ "integrity": "sha512-cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw==",
1945
+ "dev": true
1946
+ },
1947
+ "@svgr/babel-plugin-transform-react-native-svg": {
1948
+ "version": "5.4.0",
1949
+ "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz",
1950
+ "integrity": "sha512-3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q==",
1951
+ "dev": true
1952
+ },
1953
+ "@svgr/babel-plugin-transform-svg-component": {
1954
+ "version": "5.5.0",
1955
+ "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.5.0.tgz",
1956
+ "integrity": "sha512-q4jSH1UUvbrsOtlo/tKcgSeiCHRSBdXoIoqX1pgcKK/aU3JD27wmMKwGtpB8qRYUYoyXvfGxUVKchLuR5pB3rQ==",
1957
+ "dev": true
1958
+ },
1959
+ "@svgr/babel-preset": {
1960
+ "version": "5.5.0",
1961
+ "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-5.5.0.tgz",
1962
+ "integrity": "sha512-4FiXBjvQ+z2j7yASeGPEi8VD/5rrGQk4Xrq3EdJmoZgz/tpqChpo5hgXDvmEauwtvOc52q8ghhZK4Oy7qph4ig==",
1963
+ "dev": true,
1964
+ "requires": {
1965
+ "@svgr/babel-plugin-add-jsx-attribute": "^5.4.0",
1966
+ "@svgr/babel-plugin-remove-jsx-attribute": "^5.4.0",
1967
+ "@svgr/babel-plugin-remove-jsx-empty-expression": "^5.0.1",
1968
+ "@svgr/babel-plugin-replace-jsx-attribute-value": "^5.0.1",
1969
+ "@svgr/babel-plugin-svg-dynamic-title": "^5.4.0",
1970
+ "@svgr/babel-plugin-svg-em-dimensions": "^5.4.0",
1971
+ "@svgr/babel-plugin-transform-react-native-svg": "^5.4.0",
1972
+ "@svgr/babel-plugin-transform-svg-component": "^5.5.0"
1973
+ }
1974
+ },
1975
+ "@svgr/core": {
1976
+ "version": "5.5.0",
1977
+ "resolved": "https://registry.npmjs.org/@svgr/core/-/core-5.5.0.tgz",
1978
+ "integrity": "sha512-q52VOcsJPvV3jO1wkPtzTuKlvX7Y3xIcWRpCMtBF3MrteZJtBfQw/+u0B1BHy5ColpQc1/YVTrPEtSYIMNZlrQ==",
1979
+ "dev": true,
1980
+ "requires": {
1981
+ "@svgr/plugin-jsx": "^5.5.0",
1982
+ "camelcase": "^6.2.0",
1983
+ "cosmiconfig": "^7.0.0"
1984
+ },
1985
+ "dependencies": {
1986
+ "camelcase": {
1987
+ "version": "6.2.0",
1988
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz",
1989
+ "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==",
1990
+ "dev": true
1991
+ }
1992
+ }
1993
+ },
1994
+ "@svgr/hast-util-to-babel-ast": {
1995
+ "version": "5.5.0",
1996
+ "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.5.0.tgz",
1997
+ "integrity": "sha512-cAaR/CAiZRB8GP32N+1jocovUtvlj0+e65TB50/6Lcime+EA49m/8l+P2ko+XPJ4dw3xaPS3jOL4F2X4KWxoeQ==",
1998
+ "dev": true,
1999
+ "requires": {
2000
+ "@babel/types": "^7.12.6"
2001
+ }
2002
+ },
2003
+ "@svgr/plugin-jsx": {
2004
+ "version": "5.5.0",
2005
+ "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-5.5.0.tgz",
2006
+ "integrity": "sha512-V/wVh33j12hGh05IDg8GpIUXbjAPnTdPTKuP4VNLggnwaHMPNQNae2pRnyTAILWCQdz5GyMqtO488g7CKM8CBA==",
2007
+ "dev": true,
2008
+ "requires": {
2009
+ "@babel/core": "^7.12.3",
2010
+ "@svgr/babel-preset": "^5.5.0",
2011
+ "@svgr/hast-util-to-babel-ast": "^5.5.0",
2012
+ "svg-parser": "^2.0.2"
2013
+ }
2014
+ },
2015
+ "@svgr/plugin-svgo": {
2016
+ "version": "5.5.0",
2017
+ "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-5.5.0.tgz",
2018
+ "integrity": "sha512-r5swKk46GuQl4RrVejVwpeeJaydoxkdwkM1mBKOgJLBUJPGaLci6ylg/IjhrRsREKDkr4kbMWdgOtbXEh0fyLQ==",
2019
+ "dev": true,
2020
+ "requires": {
2021
+ "cosmiconfig": "^7.0.0",
2022
+ "deepmerge": "^4.2.2",
2023
+ "svgo": "^1.2.2"
2024
+ }
2025
+ },
2026
+ "@svgr/webpack": {
2027
+ "version": "5.5.0",
2028
+ "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-5.5.0.tgz",
2029
+ "integrity": "sha512-DOBOK255wfQxguUta2INKkzPj6AIS6iafZYiYmHn6W3pHlycSRRlvWKCfLDG10fXfLWqE3DJHgRUOyJYmARa7g==",
2030
+ "dev": true,
2031
+ "requires": {
2032
+ "@babel/core": "^7.12.3",
2033
+ "@babel/plugin-transform-react-constant-elements": "^7.12.1",
2034
+ "@babel/preset-env": "^7.12.1",
2035
+ "@babel/preset-react": "^7.12.5",
2036
+ "@svgr/core": "^5.5.0",
2037
+ "@svgr/plugin-jsx": "^5.5.0",
2038
+ "@svgr/plugin-svgo": "^5.5.0",
2039
+ "loader-utils": "^2.0.0"
2040
+ },
2041
+ "dependencies": {
2042
+ "json5": {
2043
+ "version": "2.2.0",
2044
+ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
2045
+ "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
2046
+ "dev": true,
2047
+ "requires": {
2048
+ "minimist": "^1.2.5"
2049
+ }
2050
+ },
2051
+ "loader-utils": {
2052
+ "version": "2.0.0",
2053
+ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
2054
+ "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
2055
+ "dev": true,
2056
+ "requires": {
2057
+ "big.js": "^5.2.2",
2058
+ "emojis-list": "^3.0.0",
2059
+ "json5": "^2.1.2"
2060
+ }
2061
+ }
2062
+ }
2063
+ },
2064
+ "@tannin/compile": {
2065
+ "version": "1.1.0",
2066
+ "resolved": "https://registry.npmjs.org/@tannin/compile/-/compile-1.1.0.tgz",
2067
+ "integrity": "sha512-n8m9eNDfoNZoxdvWiTfW/hSPhehzLJ3zW7f8E7oT6mCROoMNWCB4TYtv041+2FMAxweiE0j7i1jubQU4MEC/Gg==",
2068
+ "dev": true,
2069
+ "requires": {
2070
+ "@tannin/evaluate": "^1.2.0",
2071
+ "@tannin/postfix": "^1.1.0"
2072
+ }
2073
+ },
2074
+ "@tannin/evaluate": {
2075
+ "version": "1.2.0",
2076
+ "resolved": "https://registry.npmjs.org/@tannin/evaluate/-/evaluate-1.2.0.tgz",
2077
+ "integrity": "sha512-3ioXvNowbO/wSrxsDG5DKIMxC81P0QrQTYai8zFNY+umuoHWRPbQ/TuuDEOju9E+jQDXmj6yI5GyejNuh8I+eg==",
2078
+ "dev": true
2079
+ },
2080
+ "@tannin/plural-forms": {
2081
+ "version": "1.1.0",
2082
+ "resolved": "https://registry.npmjs.org/@tannin/plural-forms/-/plural-forms-1.1.0.tgz",
2083
+ "integrity": "sha512-xl9R2mDZO/qiHam1AgMnAES6IKIg7OBhcXqy6eDsRCdXuxAFPcjrej9HMjyCLE0DJ/8cHf0i5OQTstuBRhpbHw==",
2084
+ "dev": true,
2085
+ "requires": {
2086
+ "@tannin/compile": "^1.1.0"
2087
+ }
2088
+ },
2089
+ "@tannin/postfix": {
2090
+ "version": "1.1.0",
2091
+ "resolved": "https://registry.npmjs.org/@tannin/postfix/-/postfix-1.1.0.tgz",
2092
+ "integrity": "sha512-oocsqY7g0cR+Gur5jRQLSrX2OtpMLMse1I10JQBm8CdGMrDkh1Mg2gjsiquMHRtBs4Qwu5wgEp5GgIYHk4SNPw==",
2093
+ "dev": true
2094
+ },
2095
+ "@types/babel__core": {
2096
+ "version": "7.1.14",
2097
+ "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.14.tgz",
2098
+ "integrity": "sha512-zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g==",
2099
+ "dev": true,
2100
+ "requires": {
2101
+ "@babel/parser": "^7.1.0",
2102
+ "@babel/types": "^7.0.0",
2103
+ "@types/babel__generator": "*",
2104
+ "@types/babel__template": "*",
2105
+ "@types/babel__traverse": "*"
2106
+ }
2107
+ },
2108
+ "@types/babel__generator": {
2109
+ "version": "7.6.2",
2110
+ "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.2.tgz",
2111
+ "integrity": "sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==",
2112
+ "dev": true,
2113
+ "requires": {
2114
+ "@babel/types": "^7.0.0"
2115
+ }
2116
+ },
2117
+ "@types/babel__template": {
2118
+ "version": "7.4.0",
2119
+ "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.0.tgz",
2120
+ "integrity": "sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A==",
2121
+ "dev": true,
2122
+ "requires": {
2123
+ "@babel/parser": "^7.1.0",
2124
+ "@babel/types": "^7.0.0"
2125
+ }
2126
+ },
2127
+ "@types/babel__traverse": {
2128
+ "version": "7.11.1",
2129
+ "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.11.1.tgz",
2130
+ "integrity": "sha512-Vs0hm0vPahPMYi9tDjtP66llufgO3ST16WXaSTtDGEl9cewAl3AibmxWw6TINOqHPT9z0uABKAYjT9jNSg4npw==",
2131
+ "dev": true,
2132
+ "requires": {
2133
+ "@babel/types": "^7.3.0"
2134
+ }
2135
+ },
2136
+ "@types/cheerio": {
2137
+ "version": "0.22.28",
2138
+ "resolved": "https://registry.npmjs.org/@types/cheerio/-/cheerio-0.22.28.tgz",
2139
+ "integrity": "sha512-ehUMGSW5IeDxJjbru4awKYMlKGmo1wSSGUVqXtYwlgmUM8X1a0PZttEIm6yEY7vHsY/hh6iPnklF213G0UColw==",
2140
+ "dev": true,
2141
+ "requires": {
2142
+ "@types/node": "*"
2143
+ }
2144
+ },
2145
+ "@types/eslint": {
2146
+ "version": "7.2.7",
2147
+ "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.7.tgz",
2148
+ "integrity": "sha512-EHXbc1z2GoQRqHaAT7+grxlTJ3WE2YNeD6jlpPoRc83cCoThRY+NUWjCUZaYmk51OICkPXn2hhphcWcWXgNW0Q==",
2149
+ "dev": true,
2150
+ "requires": {
2151
+ "@types/estree": "*",
2152
+ "@types/json-schema": "*"
2153
+ }
2154
+ },
2155
+ "@types/eslint-scope": {
2156
+ "version": "3.7.0",
2157
+ "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz",
2158
+ "integrity": "sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==",
2159
+ "dev": true,
2160
+ "requires": {
2161
+ "@types/eslint": "*",
2162
+ "@types/estree": "*"
2163
+ }
2164
+ },
2165
+ "@types/estree": {
2166
+ "version": "0.0.46",
2167
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.46.tgz",
2168
+ "integrity": "sha512-laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg==",
2169
+ "dev": true
2170
+ },
2171
+ "@types/glob": {
2172
+ "version": "7.1.3",
2173
+ "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz",
2174
+ "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==",
2175
+ "requires": {
2176
+ "@types/minimatch": "*",
2177
+ "@types/node": "*"
2178
+ }
2179
+ },
2180
+ "@types/graceful-fs": {
2181
+ "version": "4.1.5",
2182
+ "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz",
2183
+ "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==",
2184
+ "dev": true,
2185
+ "requires": {
2186
+ "@types/node": "*"
2187
+ }
2188
+ },
2189
+ "@types/istanbul-lib-coverage": {
2190
+ "version": "2.0.3",
2191
+ "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz",
2192
+ "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==",
2193
+ "dev": true
2194
+ },
2195
+ "@types/istanbul-lib-report": {
2196
+ "version": "3.0.0",
2197
+ "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
2198
+ "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==",
2199
+ "dev": true,
2200
+ "requires": {
2201
+ "@types/istanbul-lib-coverage": "*"
2202
+ }
2203
+ },
2204
+ "@types/istanbul-reports": {
2205
+ "version": "3.0.0",
2206
+ "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz",
2207
+ "integrity": "sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==",
2208
+ "dev": true,
2209
+ "requires": {
2210
+ "@types/istanbul-lib-report": "*"
2211
+ }
2212
+ },
2213
+ "@types/json-schema": {
2214
+ "version": "7.0.7",
2215
+ "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz",
2216
+ "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==",
2217
+ "dev": true
2218
+ },
2219
+ "@types/minimatch": {
2220
+ "version": "3.0.3",
2221
+ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz",
2222
+ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="
2223
+ },
2224
+ "@types/node": {
2225
+ "version": "14.14.35",
2226
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.35.tgz",
2227
+ "integrity": "sha512-Lt+wj8NVPx0zUmUwumiVXapmaLUcAk3yPuHCFVXras9k5VT9TdhJqKqGVUQCD60OTMCl0qxJ57OiTL0Mic3Iag=="
2228
+ },
2229
+ "@types/parse-json": {
2230
+ "version": "4.0.0",
2231
+ "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
2232
+ "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==",
2233
+ "dev": true
2234
+ },
2235
+ "@types/prop-types": {
2236
+ "version": "15.7.3",
2237
+ "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz",
2238
+ "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw=="
2239
+ },
2240
+ "@types/q": {
2241
+ "version": "1.5.4",
2242
+ "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz",
2243
+ "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==",
2244
+ "dev": true
2245
+ },
2246
+ "@types/react": {
2247
+ "version": "16.14.5",
2248
+ "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.5.tgz",
2249
+ "integrity": "sha512-YRRv9DNZhaVTVRh9Wmmit7Y0UFhEVqXqCSw3uazRWMxa2x85hWQZ5BN24i7GXZbaclaLXEcodEeIHsjBA8eAMw==",
2250
+ "requires": {
2251
+ "@types/prop-types": "*",
2252
+ "@types/scheduler": "*",
2253
+ "csstype": "^3.0.2"
2254
+ }
2255
+ },
2256
+ "@types/react-dom": {
2257
+ "version": "16.9.12",
2258
+ "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.9.12.tgz",
2259
+ "integrity": "sha512-i7NPZZpPte3jtVOoW+eLB7G/jsX5OM6GqQnH+lC0nq0rqwlK0x8WcMEvYDgFWqWhWMlTltTimzdMax6wYfZssA==",
2260
+ "requires": {
2261
+ "@types/react": "^16"
2262
+ }
2263
+ },
2264
+ "@types/scheduler": {
2265
+ "version": "0.16.1",
2266
+ "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz",
2267
+ "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA=="
2268
+ },
2269
+ "@types/yargs": {
2270
+ "version": "15.0.13",
2271
+ "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.13.tgz",
2272
+ "integrity": "sha512-kQ5JNTrbDv3Rp5X2n/iUu37IJBDU2gsZ5R/g1/KHOOEc5IKfUFjXT6DENPGduh08I/pamwtEq4oul7gUqKTQDQ==",
2273
+ "dev": true,
2274
+ "requires": {
2275
+ "@types/yargs-parser": "*"
2276
+ }
2277
+ },
2278
+ "@types/yargs-parser": {
2279
+ "version": "20.2.0",
2280
+ "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.0.tgz",
2281
+ "integrity": "sha512-37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA==",
2282
+ "dev": true
2283
+ },
2284
+ "@webassemblyjs/ast": {
2285
+ "version": "1.11.0",
2286
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.0.tgz",
2287
+ "integrity": "sha512-kX2W49LWsbthrmIRMbQZuQDhGtjyqXfEmmHyEi4XWnSZtPmxY0+3anPIzsnRb45VH/J55zlOfWvZuY47aJZTJg==",
2288
+ "dev": true,
2289
+ "requires": {
2290
+ "@webassemblyjs/helper-numbers": "1.11.0",
2291
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.0"
2292
+ }
2293
+ },
2294
+ "@webassemblyjs/floating-point-hex-parser": {
2295
+ "version": "1.11.0",
2296
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.0.tgz",
2297
+ "integrity": "sha512-Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA==",
2298
+ "dev": true
2299
+ },
2300
+ "@webassemblyjs/helper-api-error": {
2301
+ "version": "1.11.0",
2302
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.0.tgz",
2303
+ "integrity": "sha512-baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w==",
2304
+ "dev": true
2305
+ },
2306
+ "@webassemblyjs/helper-buffer": {
2307
+ "version": "1.11.0",
2308
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.0.tgz",
2309
+ "integrity": "sha512-u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA==",
2310
+ "dev": true
2311
+ },
2312
+ "@webassemblyjs/helper-numbers": {
2313
+ "version": "1.11.0",
2314
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.0.tgz",
2315
+ "integrity": "sha512-DhRQKelIj01s5IgdsOJMKLppI+4zpmcMQ3XboFPLwCpSNH6Hqo1ritgHgD0nqHeSYqofA6aBN/NmXuGjM1jEfQ==",
2316
+ "dev": true,
2317
+ "requires": {
2318
+ "@webassemblyjs/floating-point-hex-parser": "1.11.0",
2319
+ "@webassemblyjs/helper-api-error": "1.11.0",
2320
+ "@xtuc/long": "4.2.2"
2321
+ }
2322
+ },
2323
+ "@webassemblyjs/helper-wasm-bytecode": {
2324
+ "version": "1.11.0",
2325
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.0.tgz",
2326
+ "integrity": "sha512-MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA==",
2327
+ "dev": true
2328
+ },
2329
+ "@webassemblyjs/helper-wasm-section": {
2330
+ "version": "1.11.0",
2331
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.0.tgz",
2332
+ "integrity": "sha512-3Eb88hcbfY/FCukrg6i3EH8H2UsD7x8Vy47iVJrP967A9JGqgBVL9aH71SETPx1JrGsOUVLo0c7vMCN22ytJew==",
2333
+ "dev": true,
2334
+ "requires": {
2335
+ "@webassemblyjs/ast": "1.11.0",
2336
+ "@webassemblyjs/helper-buffer": "1.11.0",
2337
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.0",
2338
+ "@webassemblyjs/wasm-gen": "1.11.0"
2339
+ }
2340
+ },
2341
+ "@webassemblyjs/ieee754": {
2342
+ "version": "1.11.0",
2343
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.0.tgz",
2344
+ "integrity": "sha512-KXzOqpcYQwAfeQ6WbF6HXo+0udBNmw0iXDmEK5sFlmQdmND+tr773Ti8/5T/M6Tl/413ArSJErATd8In3B+WBA==",
2345
+ "dev": true,
2346
+ "requires": {
2347
+ "@xtuc/ieee754": "^1.2.0"
2348
+ }
2349
+ },
2350
+ "@webassemblyjs/leb128": {
2351
+ "version": "1.11.0",
2352
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.0.tgz",
2353
+ "integrity": "sha512-aqbsHa1mSQAbeeNcl38un6qVY++hh8OpCOzxhixSYgbRfNWcxJNJQwe2rezK9XEcssJbbWIkblaJRwGMS9zp+g==",
2354
+ "dev": true,
2355
+ "requires": {
2356
+ "@xtuc/long": "4.2.2"
2357
+ }
2358
+ },
2359
+ "@webassemblyjs/utf8": {
2360
+ "version": "1.11.0",
2361
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.0.tgz",
2362
+ "integrity": "sha512-A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw==",
2363
+ "dev": true
2364
+ },
2365
+ "@webassemblyjs/wasm-edit": {
2366
+ "version": "1.11.0",
2367
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.0.tgz",
2368
+ "integrity": "sha512-JHQ0damXy0G6J9ucyKVXO2j08JVJ2ntkdJlq1UTiUrIgfGMmA7Ik5VdC/L8hBK46kVJgujkBIoMtT8yVr+yVOQ==",
2369
+ "dev": true,
2370
+ "requires": {
2371
+ "@webassemblyjs/ast": "1.11.0",
2372
+ "@webassemblyjs/helper-buffer": "1.11.0",
2373
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.0",
2374
+ "@webassemblyjs/helper-wasm-section": "1.11.0",
2375
+ "@webassemblyjs/wasm-gen": "1.11.0",
2376
+ "@webassemblyjs/wasm-opt": "1.11.0",
2377
+ "@webassemblyjs/wasm-parser": "1.11.0",
2378
+ "@webassemblyjs/wast-printer": "1.11.0"
2379
+ }
2380
+ },
2381
+ "@webassemblyjs/wasm-gen": {
2382
+ "version": "1.11.0",
2383
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.0.tgz",
2384
+ "integrity": "sha512-BEUv1aj0WptCZ9kIS30th5ILASUnAPEvE3tVMTrItnZRT9tXCLW2LEXT8ezLw59rqPP9klh9LPmpU+WmRQmCPQ==",
2385
+ "dev": true,
2386
+ "requires": {
2387
+ "@webassemblyjs/ast": "1.11.0",
2388
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.0",
2389
+ "@webassemblyjs/ieee754": "1.11.0",
2390
+ "@webassemblyjs/leb128": "1.11.0",
2391
+ "@webassemblyjs/utf8": "1.11.0"
2392
+ }
2393
+ },
2394
+ "@webassemblyjs/wasm-opt": {
2395
+ "version": "1.11.0",
2396
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.0.tgz",
2397
+ "integrity": "sha512-tHUSP5F4ywyh3hZ0+fDQuWxKx3mJiPeFufg+9gwTpYp324mPCQgnuVKwzLTZVqj0duRDovnPaZqDwoyhIO8kYg==",
2398
+ "dev": true,
2399
+ "requires": {
2400
+ "@webassemblyjs/ast": "1.11.0",
2401
+ "@webassemblyjs/helper-buffer": "1.11.0",
2402
+ "@webassemblyjs/wasm-gen": "1.11.0",
2403
+ "@webassemblyjs/wasm-parser": "1.11.0"
2404
+ }
2405
+ },
2406
+ "@webassemblyjs/wasm-parser": {
2407
+ "version": "1.11.0",
2408
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.0.tgz",
2409
+ "integrity": "sha512-6L285Sgu9gphrcpDXINvm0M9BskznnzJTE7gYkjDbxET28shDqp27wpruyx3C2S/dvEwiigBwLA1cz7lNUi0kw==",
2410
+ "dev": true,
2411
+ "requires": {
2412
+ "@webassemblyjs/ast": "1.11.0",
2413
+ "@webassemblyjs/helper-api-error": "1.11.0",
2414
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.0",
2415
+ "@webassemblyjs/ieee754": "1.11.0",
2416
+ "@webassemblyjs/leb128": "1.11.0",
2417
+ "@webassemblyjs/utf8": "1.11.0"
2418
+ }
2419
+ },
2420
+ "@webassemblyjs/wast-printer": {
2421
+ "version": "1.11.0",
2422
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.0.tgz",
2423
+ "integrity": "sha512-Fg5OX46pRdTgB7rKIUojkh9vXaVN6sGYCnEiJN1GYkb0RPwShZXp6KTDqmoMdQPKhcroOXh3fEzmkWmCYaKYhQ==",
2424
+ "dev": true,
2425
+ "requires": {
2426
+ "@webassemblyjs/ast": "1.11.0",
2427
+ "@xtuc/long": "4.2.2"
2428
+ }
2429
+ },
2430
+ "@webpack-cli/configtest": {
2431
+ "version": "1.0.1",
2432
+ "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.1.tgz",
2433
+ "integrity": "sha512-B+4uBUYhpzDXmwuo3V9yBH6cISwxEI4J+NO5ggDaGEEHb0osY/R7MzeKc0bHURXQuZjMM4qD+bSJCKIuI3eNBQ==",
2434
+ "dev": true
2435
+ },
2436
+ "@webpack-cli/info": {
2437
+ "version": "1.2.2",
2438
+ "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.2.tgz",
2439
+ "integrity": "sha512-5U9kUJHnwU+FhKH4PWGZuBC1hTEPYyxGSL5jjoBI96Gx8qcYJGOikpiIpFoTq8mmgX3im2zAo2wanv/alD74KQ==",
2440
+ "dev": true,
2441
+ "requires": {
2442
+ "envinfo": "^7.7.3"
2443
+ }
2444
+ },
2445
+ "@webpack-cli/serve": {
2446
+ "version": "1.3.0",
2447
+ "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.3.0.tgz",
2448
+ "integrity": "sha512-k2p2VrONcYVX1wRRrf0f3X2VGltLWcv+JzXRBDmvCxGlCeESx4OXw91TsWeKOkp784uNoVQo313vxJFHXPPwfw==",
2449
+ "dev": true
2450
+ },
2451
+ "@wordpress/a11y": {
2452
+ "version": "2.15.0",
2453
+ "resolved": "https://registry.npmjs.org/@wordpress/a11y/-/a11y-2.15.0.tgz",
2454
+ "integrity": "sha512-IkfzOQ3oq0GMMK3eUvS809oRtoa1xYdqYfz3ftSC7eb5Q0l6ybdPg+odQG8GZnshfQsZtq4GJKILe1sWkjfHOQ==",
2455
+ "dev": true,
2456
+ "requires": {
2457
+ "@babel/runtime": "^7.12.5",
2458
+ "@wordpress/dom-ready": "^2.13.0",
2459
+ "@wordpress/i18n": "^3.19.0"
2460
+ }
2461
+ },
2462
+ "@wordpress/api-fetch": {
2463
+ "version": "3.22.0",
2464
+ "resolved": "https://registry.npmjs.org/@wordpress/api-fetch/-/api-fetch-3.22.0.tgz",
2465
+ "integrity": "sha512-HYK2hFhDyxb4OZlF99aMrJWzBC3rGeuypyBy0OrPt0n3Uz3Z+0uRKoO49g1txDQgXb3G+iIgO9vwpdQuY9J6+g==",
2466
+ "dev": true,
2467
+ "requires": {
2468
+ "@babel/runtime": "^7.12.5",
2469
+ "@wordpress/i18n": "^3.19.0",
2470
+ "@wordpress/url": "^2.22.0"
2471
+ }
2472
+ },
2473
+ "@wordpress/autop": {
2474
+ "version": "2.12.0",
2475
+ "resolved": "https://registry.npmjs.org/@wordpress/autop/-/autop-2.12.0.tgz",
2476
+ "integrity": "sha512-O2JQUEZoM2qLrqTT3BWZziOvh4tnNTrgpIOx0ahqF75AOkYzMtTGLMDp1fOfLYdFhBliCve83EKHH8zkgppJHQ==",
2477
+ "dev": true,
2478
+ "requires": {
2479
+ "@babel/runtime": "^7.12.5"
2480
+ }
2481
+ },
2482
+ "@wordpress/babel-plugin-makepot": {
2483
+ "version": "4.1.0",
2484
+ "resolved": "https://registry.npmjs.org/@wordpress/babel-plugin-makepot/-/babel-plugin-makepot-4.1.0.tgz",
2485
+ "integrity": "sha512-d4ywDLrPMNS9ECh+G3coDGhuqjemDo27Fck94wXRY3L80TbGF8DaLU2/2Vz3s3EcwlrRiJWRKskxPiYIpsiH9Q==",
2486
+ "dev": true,
2487
+ "requires": {
2488
+ "gettext-parser": "^1.3.1",
2489
+ "lodash": "^4.17.19"
2490
+ }
2491
+ },
2492
+ "@wordpress/base-styles": {
2493
+ "version": "3.4.0",
2494
+ "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-3.4.0.tgz",
2495
+ "integrity": "sha512-ATH9iGj61Rp9kG42o18L79P6LTt8i6VLg2ZeG5+wd+fHan6mXmZPMR1fiNHUq2mED14RL8JOd575dgI6kf+sTw==",
2496
+ "dev": true
2497
+ },
2498
+ "@wordpress/blob": {
2499
+ "version": "2.13.0",
2500
+ "resolved": "https://registry.npmjs.org/@wordpress/blob/-/blob-2.13.0.tgz",
2501
+ "integrity": "sha512-lEzQmsi19/L187UoHfTM/WEcUEn8Yc5rFKeR0wDQVpl4MnGrTL1HeGHuOKk9QDCFOA+bPP4HVMkS9B45F7WeOA==",
2502
+ "dev": true,
2503
+ "requires": {
2504
+ "@babel/runtime": "^7.12.5"
2505
+ }
2506
+ },
2507
+ "@wordpress/block-editor": {
2508
+ "version": "5.3.0",
2509
+ "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-5.3.0.tgz",
2510
+ "integrity": "sha512-y8UuFe2hYZs9D9LraNKM8jFxGodTeyHyC1aBrXzPenhXZBUZUWJgRaJPbQDGcCc0yfBh9C3Swh9GLdjwEjVm7Q==",
2511
+ "dev": true,
2512
+ "requires": {
2513
+ "@babel/runtime": "^7.12.5",
2514
+ "@wordpress/a11y": "^2.15.0",
2515
+ "@wordpress/blob": "^2.13.0",
2516
+ "@wordpress/blocks": "^8.0.0",
2517
+ "@wordpress/components": "^13.0.0",
2518
+ "@wordpress/compose": "^3.25.0",
2519
+ "@wordpress/data": "^4.27.0",
2520
+ "@wordpress/data-controls": "^1.21.0",
2521
+ "@wordpress/deprecated": "^2.12.0",
2522
+ "@wordpress/dom": "^2.17.0",
2523
+ "@wordpress/element": "^2.20.0",
2524
+ "@wordpress/hooks": "^2.12.0",
2525
+ "@wordpress/html-entities": "^2.11.0",
2526
+ "@wordpress/i18n": "^3.19.0",
2527
+ "@wordpress/icons": "^2.10.0",
2528
+ "@wordpress/is-shallow-equal": "^3.1.0",
2529
+ "@wordpress/keyboard-shortcuts": "^1.14.0",
2530
+ "@wordpress/keycodes": "^2.19.0",
2531
+ "@wordpress/notices": "^2.13.0",
2532
+ "@wordpress/rich-text": "^3.25.0",
2533
+ "@wordpress/shortcode": "^2.13.0",
2534
+ "@wordpress/token-list": "^1.15.0",
2535
+ "@wordpress/url": "^2.22.0",
2536
+ "@wordpress/wordcount": "^2.15.0",
2537
+ "classnames": "^2.2.5",
2538
+ "css-mediaquery": "^0.1.2",
2539
+ "diff": "^4.0.2",
2540
+ "dom-scroll-into-view": "^1.2.1",
2541
+ "inherits": "^2.0.3",
2542
+ "lodash": "^4.17.19",
2543
+ "memize": "^1.1.0",
2544
+ "react-autosize-textarea": "^7.1.0",
2545
+ "react-spring": "^8.0.19",
2546
+ "redux-multi": "^0.1.12",
2547
+ "rememo": "^3.0.0",
2548
+ "tinycolor2": "^1.4.2",
2549
+ "traverse": "^0.6.6"
2550
+ }
2551
+ },
2552
+ "@wordpress/block-library": {
2553
+ "version": "2.29.0",
2554
+ "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-2.29.0.tgz",
2555
+ "integrity": "sha512-TjEG4+xUKGw0cfLvbMHDtOPoCj1W4GRyUYn1S8q0Q5EA5Gngo3MCITSGLxXQV3Foi04LXOFZgo8eukeYz0OiAg==",
2556
+ "dev": true,
2557
+ "requires": {
2558
+ "@babel/runtime": "^7.12.5",
2559
+ "@wordpress/a11y": "^2.15.0",
2560
+ "@wordpress/api-fetch": "^3.22.0",
2561
+ "@wordpress/autop": "^2.12.0",
2562
+ "@wordpress/blob": "^2.13.0",
2563
+ "@wordpress/block-editor": "^5.3.0",
2564
+ "@wordpress/blocks": "^8.0.0",
2565
+ "@wordpress/components": "^13.0.0",
2566
+ "@wordpress/compose": "^3.25.0",
2567
+ "@wordpress/core-data": "^2.26.0",
2568
+ "@wordpress/data": "^4.27.0",
2569
+ "@wordpress/date": "^3.14.0",
2570
+ "@wordpress/deprecated": "^2.12.0",
2571
+ "@wordpress/dom": "^2.17.0",
2572
+ "@wordpress/editor": "^9.26.0",
2573
+ "@wordpress/element": "^2.20.0",
2574
+ "@wordpress/escape-html": "^1.12.0",
2575
+ "@wordpress/hooks": "^2.12.0",
2576
+ "@wordpress/i18n": "^3.19.0",
2577
+ "@wordpress/icons": "^2.10.0",
2578
+ "@wordpress/is-shallow-equal": "^3.1.0",
2579
+ "@wordpress/keycodes": "^2.19.0",
2580
+ "@wordpress/notices": "^2.13.0",
2581
+ "@wordpress/primitives": "^1.12.0",
2582
+ "@wordpress/reusable-blocks": "^1.2.0",
2583
+ "@wordpress/rich-text": "^3.25.0",
2584
+ "@wordpress/server-side-render": "^1.21.0",
2585
+ "@wordpress/url": "^2.22.0",
2586
+ "@wordpress/viewport": "^2.26.0",
2587
+ "classnames": "^2.2.5",
2588
+ "fast-average-color": "4.3.0",
2589
+ "lodash": "^4.17.19",
2590
+ "memize": "^1.1.0",
2591
+ "moment": "^2.22.1",
2592
+ "react-easy-crop": "^3.0.0",
2593
+ "tinycolor2": "^1.4.2"
2594
+ },
2595
+ "dependencies": {
2596
+ "@wordpress/block-editor": {
2597
+ "version": "5.3.0",
2598
+ "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-5.3.0.tgz",
2599
+ "integrity": "sha512-y8UuFe2hYZs9D9LraNKM8jFxGodTeyHyC1aBrXzPenhXZBUZUWJgRaJPbQDGcCc0yfBh9C3Swh9GLdjwEjVm7Q==",
2600
+ "dev": true,
2601
+ "requires": {
2602
+ "@babel/runtime": "^7.12.5",
2603
+ "@wordpress/a11y": "^2.15.0",
2604
+ "@wordpress/blob": "^2.13.0",
2605
+ "@wordpress/blocks": "^8.0.0",
2606
+ "@wordpress/components": "^13.0.0",
2607
+ "@wordpress/compose": "^3.25.0",
2608
+ "@wordpress/data": "^4.27.0",
2609
+ "@wordpress/data-controls": "^1.21.0",
2610
+ "@wordpress/deprecated": "^2.12.0",
2611
+ "@wordpress/dom": "^2.17.0",
2612
+ "@wordpress/element": "^2.20.0",
2613
+ "@wordpress/hooks": "^2.12.0",
2614
+ "@wordpress/html-entities": "^2.11.0",
2615
+ "@wordpress/i18n": "^3.19.0",
2616
+ "@wordpress/icons": "^2.10.0",
2617
+ "@wordpress/is-shallow-equal": "^3.1.0",
2618
+ "@wordpress/keyboard-shortcuts": "^1.14.0",
2619
+ "@wordpress/keycodes": "^2.19.0",
2620
+ "@wordpress/notices": "^2.13.0",
2621
+ "@wordpress/rich-text": "^3.25.0",
2622
+ "@wordpress/shortcode": "^2.13.0",
2623
+ "@wordpress/token-list": "^1.15.0",
2624
+ "@wordpress/url": "^2.22.0",
2625
+ "@wordpress/wordcount": "^2.15.0",
2626
+ "classnames": "^2.2.5",
2627
+ "css-mediaquery": "^0.1.2",
2628
+ "diff": "^4.0.2",
2629
+ "dom-scroll-into-view": "^1.2.1",
2630
+ "inherits": "^2.0.3",
2631
+ "lodash": "^4.17.19",
2632
+ "memize": "^1.1.0",
2633
+ "react-autosize-textarea": "^7.1.0",
2634
+ "react-spring": "^8.0.19",
2635
+ "redux-multi": "^0.1.12",
2636
+ "rememo": "^3.0.0",
2637
+ "tinycolor2": "^1.4.2",
2638
+ "traverse": "^0.6.6"
2639
+ }
2640
+ },
2641
+ "@wordpress/blocks": {
2642
+ "version": "8.0.0",
2643
+ "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-8.0.0.tgz",
2644
+ "integrity": "sha512-Q1X3eyGwwm+7g2yx3fwYFIdgeICMQDCJMJ2jGFxEm19PvVA4kN/ilk4N0BjMbHrnE+jVNwKxKGOuVgtcgm8f9g==",
2645
+ "dev": true,
2646
+ "requires": {
2647
+ "@babel/runtime": "^7.12.5",
2648
+ "@wordpress/autop": "^2.12.0",
2649
+ "@wordpress/blob": "^2.13.0",
2650
+ "@wordpress/block-serialization-default-parser": "^3.10.0",
2651
+ "@wordpress/compose": "^3.25.0",
2652
+ "@wordpress/data": "^4.27.0",
2653
+ "@wordpress/deprecated": "^2.12.0",
2654
+ "@wordpress/dom": "^2.17.0",
2655
+ "@wordpress/element": "^2.20.0",
2656
+ "@wordpress/hooks": "^2.12.0",
2657
+ "@wordpress/html-entities": "^2.11.0",
2658
+ "@wordpress/i18n": "^3.19.0",
2659
+ "@wordpress/icons": "^2.10.0",
2660
+ "@wordpress/is-shallow-equal": "^3.1.0",
2661
+ "@wordpress/shortcode": "^2.13.0",
2662
+ "hpq": "^1.3.0",
2663
+ "lodash": "^4.17.19",
2664
+ "rememo": "^3.0.0",
2665
+ "showdown": "^1.9.1",
2666
+ "simple-html-tokenizer": "^0.5.7",
2667
+ "tinycolor2": "^1.4.2",
2668
+ "uuid": "^8.3.0"
2669
+ }
2670
+ },
2671
+ "@wordpress/components": {
2672
+ "version": "13.0.0",
2673
+ "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-13.0.0.tgz",
2674
+ "integrity": "sha512-Yyw0bRqFR4GsR7csZ5uGD4QMErq15W19AfDMnOBhcZpFicnSl9hGFLCp97AzcGYWf5Qqx34Zr0TsiepqfPwF3A==",
2675
+ "dev": true,
2676
+ "requires": {
2677
+ "@babel/runtime": "^7.12.5",
2678
+ "@emotion/core": "^10.1.1",
2679
+ "@emotion/css": "^10.0.22",
2680
+ "@emotion/native": "^10.0.22",
2681
+ "@emotion/styled": "^10.0.23",
2682
+ "@wordpress/a11y": "^2.15.0",
2683
+ "@wordpress/compose": "^3.25.0",
2684
+ "@wordpress/date": "^3.14.0",
2685
+ "@wordpress/deprecated": "^2.12.0",
2686
+ "@wordpress/dom": "^2.17.0",
2687
+ "@wordpress/element": "^2.20.0",
2688
+ "@wordpress/hooks": "^2.12.0",
2689
+ "@wordpress/i18n": "^3.19.0",
2690
+ "@wordpress/icons": "^2.10.0",
2691
+ "@wordpress/is-shallow-equal": "^3.1.0",
2692
+ "@wordpress/keycodes": "^2.19.0",
2693
+ "@wordpress/primitives": "^1.12.0",
2694
+ "@wordpress/rich-text": "^3.25.0",
2695
+ "@wordpress/warning": "^1.4.0",
2696
+ "@wp-g2/components": "^0.0.159",
2697
+ "@wp-g2/context": "^0.0.159",
2698
+ "@wp-g2/styles": "^0.0.159",
2699
+ "@wp-g2/utils": "^0.0.159",
2700
+ "classnames": "^2.2.5",
2701
+ "dom-scroll-into-view": "^1.2.1",
2702
+ "downshift": "^6.0.15",
2703
+ "gradient-parser": "^0.1.5",
2704
+ "highlight-words-core": "^1.2.2",
2705
+ "lodash": "^4.17.19",
2706
+ "memize": "^1.1.0",
2707
+ "moment": "^2.22.1",
2708
+ "re-resizable": "^6.4.0",
2709
+ "react-dates": "^17.1.1",
2710
+ "react-resize-aware": "^3.1.0",
2711
+ "react-spring": "^8.0.20",
2712
+ "react-use-gesture": "^9.0.0",
2713
+ "reakit": "^1.3.5",
2714
+ "rememo": "^3.0.0",
2715
+ "tinycolor2": "^1.4.2",
2716
+ "uuid": "^8.3.0"
2717
+ }
2718
+ },
2719
+ "@wordpress/icons": {
2720
+ "version": "2.10.0",
2721
+ "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-2.10.0.tgz",
2722
+ "integrity": "sha512-rLYOmpgOEEB1XBOkaxSkA1IiqH5MTrYOXeZAP4CW116MLLWCOqUHjHY9tC+hQHNYDyfuRFZst+HEj302Eqa9NQ==",
2723
+ "dev": true,
2724
+ "requires": {
2725
+ "@babel/runtime": "^7.12.5",
2726
+ "@wordpress/element": "^2.20.0",
2727
+ "@wordpress/primitives": "^1.12.0"
2728
+ }
2729
+ },
2730
+ "@wordpress/is-shallow-equal": {
2731
+ "version": "3.1.0",
2732
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
2733
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
2734
+ "dev": true,
2735
+ "requires": {
2736
+ "@babel/runtime": "^7.12.5"
2737
+ }
2738
+ },
2739
+ "downshift": {
2740
+ "version": "6.1.1",
2741
+ "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.1.tgz",
2742
+ "integrity": "sha512-ch8Sh/j7gVqQd7Kcv3A5TkGfldmxmlQrRPZJYWEhzh24+h7WA4vXssuhcGNJrD8YPJlZYQGHcaX8BNhS0IcOvg==",
2743
+ "dev": true,
2744
+ "requires": {
2745
+ "@babel/runtime": "^7.12.5",
2746
+ "compute-scroll-into-view": "^1.0.17",
2747
+ "prop-types": "^15.7.2",
2748
+ "react-is": "^17.0.1"
2749
+ }
2750
+ },
2751
+ "react-autosize-textarea": {
2752
+ "version": "7.1.0",
2753
+ "resolved": "https://registry.npmjs.org/react-autosize-textarea/-/react-autosize-textarea-7.1.0.tgz",
2754
+ "integrity": "sha512-BHpjCDkuOlllZn3nLazY2F8oYO1tS2jHnWhcjTWQdcKiiMU6gHLNt/fzmqMSyerR0eTdKtfSIqtSeTtghNwS+g==",
2755
+ "dev": true,
2756
+ "requires": {
2757
+ "autosize": "^4.0.2",
2758
+ "line-height": "^0.3.1",
2759
+ "prop-types": "^15.5.6"
2760
+ }
2761
+ },
2762
+ "react-is": {
2763
+ "version": "17.0.2",
2764
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
2765
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
2766
+ "dev": true
2767
+ },
2768
+ "react-use-gesture": {
2769
+ "version": "9.1.3",
2770
+ "resolved": "https://registry.npmjs.org/react-use-gesture/-/react-use-gesture-9.1.3.tgz",
2771
+ "integrity": "sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg==",
2772
+ "dev": true
2773
+ },
2774
+ "uuid": {
2775
+ "version": "8.3.2",
2776
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
2777
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
2778
+ "dev": true
2779
+ }
2780
+ }
2781
+ },
2782
+ "@wordpress/block-serialization-default-parser": {
2783
+ "version": "3.10.0",
2784
+ "resolved": "https://registry.npmjs.org/@wordpress/block-serialization-default-parser/-/block-serialization-default-parser-3.10.0.tgz",
2785
+ "integrity": "sha512-d33jzVhqIM6dGpM9Jjupqw677CO6j2KmbhxGq37mNuwUKuWnSJrGzApvDXAV1xz9AIdaehoxoAcnURoQM+Ogow==",
2786
+ "dev": true,
2787
+ "requires": {
2788
+ "@babel/runtime": "^7.12.5"
2789
+ }
2790
+ },
2791
+ "@wordpress/blocks": {
2792
+ "version": "8.0.0",
2793
+ "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-8.0.0.tgz",
2794
+ "integrity": "sha512-Q1X3eyGwwm+7g2yx3fwYFIdgeICMQDCJMJ2jGFxEm19PvVA4kN/ilk4N0BjMbHrnE+jVNwKxKGOuVgtcgm8f9g==",
2795
+ "dev": true,
2796
+ "requires": {
2797
+ "@babel/runtime": "^7.12.5",
2798
+ "@wordpress/autop": "^2.12.0",
2799
+ "@wordpress/blob": "^2.13.0",
2800
+ "@wordpress/block-serialization-default-parser": "^3.10.0",
2801
+ "@wordpress/compose": "^3.25.0",
2802
+ "@wordpress/data": "^4.27.0",
2803
+ "@wordpress/deprecated": "^2.12.0",
2804
+ "@wordpress/dom": "^2.17.0",
2805
+ "@wordpress/element": "^2.20.0",
2806
+ "@wordpress/hooks": "^2.12.0",
2807
+ "@wordpress/html-entities": "^2.11.0",
2808
+ "@wordpress/i18n": "^3.19.0",
2809
+ "@wordpress/icons": "^2.10.0",
2810
+ "@wordpress/is-shallow-equal": "^3.1.0",
2811
+ "@wordpress/shortcode": "^2.13.0",
2812
+ "hpq": "^1.3.0",
2813
+ "lodash": "^4.17.19",
2814
+ "rememo": "^3.0.0",
2815
+ "showdown": "^1.9.1",
2816
+ "simple-html-tokenizer": "^0.5.7",
2817
+ "tinycolor2": "^1.4.2",
2818
+ "uuid": "^8.3.0"
2819
+ },
2820
+ "dependencies": {
2821
+ "uuid": {
2822
+ "version": "8.3.2",
2823
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
2824
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
2825
+ "dev": true
2826
+ }
2827
+ }
2828
+ },
2829
+ "@wordpress/browserslist-config": {
2830
+ "version": "3.0.1",
2831
+ "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-3.0.1.tgz",
2832
+ "integrity": "sha512-l0c/X8w2v+NBShzEoykLuaLQNo1qiAONnPKXfIeiI145zAdjA5e8zMR0sUTDVsCxVfqfd2tH+D4wuhf68T3+Aw==",
2833
+ "dev": true
2834
+ },
2835
+ "@wordpress/components": {
2836
+ "version": "13.0.0",
2837
+ "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-13.0.0.tgz",
2838
+ "integrity": "sha512-Yyw0bRqFR4GsR7csZ5uGD4QMErq15W19AfDMnOBhcZpFicnSl9hGFLCp97AzcGYWf5Qqx34Zr0TsiepqfPwF3A==",
2839
+ "dev": true,
2840
+ "requires": {
2841
+ "@babel/runtime": "^7.12.5",
2842
+ "@emotion/core": "^10.1.1",
2843
+ "@emotion/css": "^10.0.22",
2844
+ "@emotion/native": "^10.0.22",
2845
+ "@emotion/styled": "^10.0.23",
2846
+ "@wordpress/a11y": "^2.15.0",
2847
+ "@wordpress/compose": "^3.25.0",
2848
+ "@wordpress/date": "^3.14.0",
2849
+ "@wordpress/deprecated": "^2.12.0",
2850
+ "@wordpress/dom": "^2.17.0",
2851
+ "@wordpress/element": "^2.20.0",
2852
+ "@wordpress/hooks": "^2.12.0",
2853
+ "@wordpress/i18n": "^3.19.0",
2854
+ "@wordpress/icons": "^2.10.0",
2855
+ "@wordpress/is-shallow-equal": "^3.1.0",
2856
+ "@wordpress/keycodes": "^2.19.0",
2857
+ "@wordpress/primitives": "^1.12.0",
2858
+ "@wordpress/rich-text": "^3.25.0",
2859
+ "@wordpress/warning": "^1.4.0",
2860
+ "@wp-g2/components": "^0.0.159",
2861
+ "@wp-g2/context": "^0.0.159",
2862
+ "@wp-g2/styles": "^0.0.159",
2863
+ "@wp-g2/utils": "^0.0.159",
2864
+ "classnames": "^2.2.5",
2865
+ "dom-scroll-into-view": "^1.2.1",
2866
+ "downshift": "^6.0.15",
2867
+ "gradient-parser": "^0.1.5",
2868
+ "highlight-words-core": "^1.2.2",
2869
+ "lodash": "^4.17.19",
2870
+ "memize": "^1.1.0",
2871
+ "moment": "^2.22.1",
2872
+ "re-resizable": "^6.4.0",
2873
+ "react-dates": "^17.1.1",
2874
+ "react-resize-aware": "^3.1.0",
2875
+ "react-spring": "^8.0.20",
2876
+ "react-use-gesture": "^9.0.0",
2877
+ "reakit": "^1.3.5",
2878
+ "rememo": "^3.0.0",
2879
+ "tinycolor2": "^1.4.2",
2880
+ "uuid": "^8.3.0"
2881
+ },
2882
+ "dependencies": {
2883
+ "uuid": {
2884
+ "version": "8.3.2",
2885
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
2886
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
2887
+ "dev": true
2888
+ }
2889
+ }
2890
+ },
2891
+ "@wordpress/compose": {
2892
+ "version": "3.25.0",
2893
+ "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-3.25.0.tgz",
2894
+ "integrity": "sha512-mml8uw3Au95irp/nImKLcTM9RIAfFa8q0Ct+SEgDJae1WhEWbWXFCNr9wus/Kn1FQmr++8Fth5XNQMNQPMH6kg==",
2895
+ "dev": true,
2896
+ "requires": {
2897
+ "@babel/runtime": "^7.12.5",
2898
+ "@wordpress/deprecated": "^2.12.0",
2899
+ "@wordpress/dom": "^2.17.0",
2900
+ "@wordpress/element": "^2.20.0",
2901
+ "@wordpress/is-shallow-equal": "^3.1.0",
2902
+ "@wordpress/keycodes": "^2.19.0",
2903
+ "@wordpress/priority-queue": "^1.11.0",
2904
+ "clipboard": "^2.0.1",
2905
+ "lodash": "^4.17.19",
2906
+ "memize": "^1.1.0",
2907
+ "mousetrap": "^1.6.5",
2908
+ "react-resize-aware": "^3.1.0",
2909
+ "use-memo-one": "^1.1.1"
2910
+ },
2911
+ "dependencies": {
2912
+ "@wordpress/is-shallow-equal": {
2913
+ "version": "3.1.0",
2914
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
2915
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
2916
+ "dev": true,
2917
+ "requires": {
2918
+ "@babel/runtime": "^7.12.5"
2919
+ }
2920
+ }
2921
+ }
2922
+ },
2923
+ "@wordpress/core-data": {
2924
+ "version": "2.26.0",
2925
+ "resolved": "https://registry.npmjs.org/@wordpress/core-data/-/core-data-2.26.0.tgz",
2926
+ "integrity": "sha512-U2xZJG4JrxpOonNP7hMIDbntkiuyNi7lhZzf+qA/LGcwXMUIJIyeai99vhXsdJupM7yUwalTDyyJTW42o30Fsw==",
2927
+ "dev": true,
2928
+ "requires": {
2929
+ "@babel/runtime": "^7.12.5",
2930
+ "@wordpress/api-fetch": "^3.22.0",
2931
+ "@wordpress/blocks": "^8.0.0",
2932
+ "@wordpress/data": "^4.27.0",
2933
+ "@wordpress/data-controls": "^1.21.0",
2934
+ "@wordpress/deprecated": "^2.12.0",
2935
+ "@wordpress/element": "^2.20.0",
2936
+ "@wordpress/i18n": "^3.19.0",
2937
+ "@wordpress/is-shallow-equal": "^3.1.0",
2938
+ "@wordpress/url": "^2.22.0",
2939
+ "equivalent-key-map": "^0.2.2",
2940
+ "lodash": "^4.17.19",
2941
+ "rememo": "^3.0.0",
2942
+ "uuid": "^8.3.0"
2943
+ },
2944
+ "dependencies": {
2945
+ "@wordpress/blocks": {
2946
+ "version": "8.0.0",
2947
+ "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-8.0.0.tgz",
2948
+ "integrity": "sha512-Q1X3eyGwwm+7g2yx3fwYFIdgeICMQDCJMJ2jGFxEm19PvVA4kN/ilk4N0BjMbHrnE+jVNwKxKGOuVgtcgm8f9g==",
2949
+ "dev": true,
2950
+ "requires": {
2951
+ "@babel/runtime": "^7.12.5",
2952
+ "@wordpress/autop": "^2.12.0",
2953
+ "@wordpress/blob": "^2.13.0",
2954
+ "@wordpress/block-serialization-default-parser": "^3.10.0",
2955
+ "@wordpress/compose": "^3.25.0",
2956
+ "@wordpress/data": "^4.27.0",
2957
+ "@wordpress/deprecated": "^2.12.0",
2958
+ "@wordpress/dom": "^2.17.0",
2959
+ "@wordpress/element": "^2.20.0",
2960
+ "@wordpress/hooks": "^2.12.0",
2961
+ "@wordpress/html-entities": "^2.11.0",
2962
+ "@wordpress/i18n": "^3.19.0",
2963
+ "@wordpress/icons": "^2.10.0",
2964
+ "@wordpress/is-shallow-equal": "^3.1.0",
2965
+ "@wordpress/shortcode": "^2.13.0",
2966
+ "hpq": "^1.3.0",
2967
+ "lodash": "^4.17.19",
2968
+ "rememo": "^3.0.0",
2969
+ "showdown": "^1.9.1",
2970
+ "simple-html-tokenizer": "^0.5.7",
2971
+ "tinycolor2": "^1.4.2",
2972
+ "uuid": "^8.3.0"
2973
+ }
2974
+ },
2975
+ "@wordpress/icons": {
2976
+ "version": "2.10.0",
2977
+ "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-2.10.0.tgz",
2978
+ "integrity": "sha512-rLYOmpgOEEB1XBOkaxSkA1IiqH5MTrYOXeZAP4CW116MLLWCOqUHjHY9tC+hQHNYDyfuRFZst+HEj302Eqa9NQ==",
2979
+ "dev": true,
2980
+ "requires": {
2981
+ "@babel/runtime": "^7.12.5",
2982
+ "@wordpress/element": "^2.20.0",
2983
+ "@wordpress/primitives": "^1.12.0"
2984
+ }
2985
+ },
2986
+ "@wordpress/is-shallow-equal": {
2987
+ "version": "3.1.0",
2988
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
2989
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
2990
+ "dev": true,
2991
+ "requires": {
2992
+ "@babel/runtime": "^7.12.5"
2993
+ }
2994
+ },
2995
+ "uuid": {
2996
+ "version": "8.3.2",
2997
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
2998
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
2999
+ "dev": true
3000
+ }
3001
+ }
3002
+ },
3003
+ "@wordpress/data": {
3004
+ "version": "4.27.0",
3005
+ "resolved": "https://registry.npmjs.org/@wordpress/data/-/data-4.27.0.tgz",
3006
+ "integrity": "sha512-upv72iYFXff0ASpWqYZAT78m00P3XGnJiAnoFoGT4pS58+kwlP3fpRqfCRK+GY5Gai8UiQak+DNTv9qzq35m1g==",
3007
+ "dev": true,
3008
+ "requires": {
3009
+ "@babel/runtime": "^7.12.5",
3010
+ "@wordpress/compose": "^3.25.0",
3011
+ "@wordpress/deprecated": "^2.12.0",
3012
+ "@wordpress/element": "^2.20.0",
3013
+ "@wordpress/is-shallow-equal": "^3.1.0",
3014
+ "@wordpress/priority-queue": "^1.11.0",
3015
+ "@wordpress/redux-routine": "^3.14.0",
3016
+ "equivalent-key-map": "^0.2.2",
3017
+ "is-promise": "^4.0.0",
3018
+ "lodash": "^4.17.19",
3019
+ "memize": "^1.1.0",
3020
+ "redux": "^4.0.0",
3021
+ "turbo-combine-reducers": "^1.0.2",
3022
+ "use-memo-one": "^1.1.1"
3023
+ },
3024
+ "dependencies": {
3025
+ "@wordpress/is-shallow-equal": {
3026
+ "version": "3.1.0",
3027
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
3028
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
3029
+ "dev": true,
3030
+ "requires": {
3031
+ "@babel/runtime": "^7.12.5"
3032
+ }
3033
+ }
3034
+ }
3035
+ },
3036
+ "@wordpress/data-controls": {
3037
+ "version": "1.21.0",
3038
+ "resolved": "https://registry.npmjs.org/@wordpress/data-controls/-/data-controls-1.21.0.tgz",
3039
+ "integrity": "sha512-XikKs9R3HEDdQo+Ua4oB+hg56LUUp+6KXix/yJuvVvJ3q2MBNTGfkdXXwMTE3WOZw6HPsBGBX4cgSgsE88jUtg==",
3040
+ "dev": true,
3041
+ "requires": {
3042
+ "@babel/runtime": "^7.12.5",
3043
+ "@wordpress/api-fetch": "^3.22.0",
3044
+ "@wordpress/data": "^4.27.0",
3045
+ "@wordpress/deprecated": "^2.12.0"
3046
+ }
3047
+ },
3048
+ "@wordpress/date": {
3049
+ "version": "3.14.0",
3050
+ "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-3.14.0.tgz",
3051
+ "integrity": "sha512-7300QodhTfWTbz19ElGmYnbxu0pG+EXcnasaOFUJn5Q7hKB9oSqnsyLmg2QkKzg8aYNQP+pWsRrIDWetOemfaw==",
3052
+ "dev": true,
3053
+ "requires": {
3054
+ "@babel/runtime": "^7.12.5",
3055
+ "moment": "^2.22.1",
3056
+ "moment-timezone": "^0.5.31"
3057
+ }
3058
+ },
3059
+ "@wordpress/deprecated": {
3060
+ "version": "2.12.0",
3061
+ "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-2.12.0.tgz",
3062
+ "integrity": "sha512-AjOv8hx8i05esaVtri7VExoHNJQ9ZRAXeakirH2aZeZdOu34FKb7LxBoZCmlRo6y7tSQejs0IfYvDEWlr7HOvQ==",
3063
+ "dev": true,
3064
+ "requires": {
3065
+ "@babel/runtime": "^7.12.5",
3066
+ "@wordpress/hooks": "^2.12.0"
3067
+ }
3068
+ },
3069
+ "@wordpress/dom": {
3070
+ "version": "2.17.0",
3071
+ "resolved": "https://registry.npmjs.org/@wordpress/dom/-/dom-2.17.0.tgz",
3072
+ "integrity": "sha512-RNEdCcBv3wNwuudwqfyNsm+LYpc8wJvARSplhojkd9tc7qdpExy4uz5/sQCxgnP7CGl8p8N4hVASBoIPBwewxQ==",
3073
+ "dev": true,
3074
+ "requires": {
3075
+ "@babel/runtime": "^7.12.5",
3076
+ "lodash": "^4.17.19"
3077
+ }
3078
+ },
3079
+ "@wordpress/dom-ready": {
3080
+ "version": "2.13.0",
3081
+ "resolved": "https://registry.npmjs.org/@wordpress/dom-ready/-/dom-ready-2.13.0.tgz",
3082
+ "integrity": "sha512-AodwaKzsNBLCOsdHJedo0hS7yPQPJhvREM60Wjw984GVgwKFx73yBsE8g9tchtmkPA/cTHR6ZJc+QHAMTJbANg==",
3083
+ "dev": true,
3084
+ "requires": {
3085
+ "@babel/runtime": "^7.12.5"
3086
+ }
3087
+ },
3088
+ "@wordpress/edit-post": {
3089
+ "version": "3.27.0",
3090
+ "resolved": "https://registry.npmjs.org/@wordpress/edit-post/-/edit-post-3.27.0.tgz",
3091
+ "integrity": "sha512-jirj8/M6NN+iuFUAqacRO51QY9iXl7wDu5t+i9B7hEAONWAvLxx6d/So66ndTR810l+8Y+rO1tzUzRgOC/vRlg==",
3092
+ "dev": true,
3093
+ "requires": {
3094
+ "@babel/runtime": "^7.12.5",
3095
+ "@wordpress/a11y": "^2.15.0",
3096
+ "@wordpress/api-fetch": "^3.22.0",
3097
+ "@wordpress/block-editor": "^5.3.0",
3098
+ "@wordpress/block-library": "^2.29.0",
3099
+ "@wordpress/blocks": "^8.0.0",
3100
+ "@wordpress/components": "^13.0.0",
3101
+ "@wordpress/compose": "^3.25.0",
3102
+ "@wordpress/core-data": "^2.26.0",
3103
+ "@wordpress/data": "^4.27.0",
3104
+ "@wordpress/data-controls": "^1.21.0",
3105
+ "@wordpress/editor": "^9.26.0",
3106
+ "@wordpress/element": "^2.20.0",
3107
+ "@wordpress/hooks": "^2.12.0",
3108
+ "@wordpress/i18n": "^3.19.0",
3109
+ "@wordpress/icons": "^2.10.0",
3110
+ "@wordpress/interface": "^1.1.0",
3111
+ "@wordpress/keyboard-shortcuts": "^1.14.0",
3112
+ "@wordpress/keycodes": "^2.19.0",
3113
+ "@wordpress/media-utils": "^1.20.0",
3114
+ "@wordpress/notices": "^2.13.0",
3115
+ "@wordpress/plugins": "^2.25.0",
3116
+ "@wordpress/primitives": "^1.12.0",
3117
+ "@wordpress/url": "^2.22.0",
3118
+ "@wordpress/viewport": "^2.26.0",
3119
+ "@wordpress/warning": "^1.4.0",
3120
+ "classnames": "^2.2.5",
3121
+ "lodash": "^4.17.19",
3122
+ "memize": "^1.1.0",
3123
+ "rememo": "^3.0.0"
3124
+ },
3125
+ "dependencies": {
3126
+ "@wordpress/block-editor": {
3127
+ "version": "5.3.0",
3128
+ "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-5.3.0.tgz",
3129
+ "integrity": "sha512-y8UuFe2hYZs9D9LraNKM8jFxGodTeyHyC1aBrXzPenhXZBUZUWJgRaJPbQDGcCc0yfBh9C3Swh9GLdjwEjVm7Q==",
3130
+ "dev": true,
3131
+ "requires": {
3132
+ "@babel/runtime": "^7.12.5",
3133
+ "@wordpress/a11y": "^2.15.0",
3134
+ "@wordpress/blob": "^2.13.0",
3135
+ "@wordpress/blocks": "^8.0.0",
3136
+ "@wordpress/components": "^13.0.0",
3137
+ "@wordpress/compose": "^3.25.0",
3138
+ "@wordpress/data": "^4.27.0",
3139
+ "@wordpress/data-controls": "^1.21.0",
3140
+ "@wordpress/deprecated": "^2.12.0",
3141
+ "@wordpress/dom": "^2.17.0",
3142
+ "@wordpress/element": "^2.20.0",
3143
+ "@wordpress/hooks": "^2.12.0",
3144
+ "@wordpress/html-entities": "^2.11.0",
3145
+ "@wordpress/i18n": "^3.19.0",
3146
+ "@wordpress/icons": "^2.10.0",
3147
+ "@wordpress/is-shallow-equal": "^3.1.0",
3148
+ "@wordpress/keyboard-shortcuts": "^1.14.0",
3149
+ "@wordpress/keycodes": "^2.19.0",
3150
+ "@wordpress/notices": "^2.13.0",
3151
+ "@wordpress/rich-text": "^3.25.0",
3152
+ "@wordpress/shortcode": "^2.13.0",
3153
+ "@wordpress/token-list": "^1.15.0",
3154
+ "@wordpress/url": "^2.22.0",
3155
+ "@wordpress/wordcount": "^2.15.0",
3156
+ "classnames": "^2.2.5",
3157
+ "css-mediaquery": "^0.1.2",
3158
+ "diff": "^4.0.2",
3159
+ "dom-scroll-into-view": "^1.2.1",
3160
+ "inherits": "^2.0.3",
3161
+ "lodash": "^4.17.19",
3162
+ "memize": "^1.1.0",
3163
+ "react-autosize-textarea": "^7.1.0",
3164
+ "react-spring": "^8.0.19",
3165
+ "redux-multi": "^0.1.12",
3166
+ "rememo": "^3.0.0",
3167
+ "tinycolor2": "^1.4.2",
3168
+ "traverse": "^0.6.6"
3169
+ }
3170
+ },
3171
+ "@wordpress/blocks": {
3172
+ "version": "8.0.0",
3173
+ "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-8.0.0.tgz",
3174
+ "integrity": "sha512-Q1X3eyGwwm+7g2yx3fwYFIdgeICMQDCJMJ2jGFxEm19PvVA4kN/ilk4N0BjMbHrnE+jVNwKxKGOuVgtcgm8f9g==",
3175
+ "dev": true,
3176
+ "requires": {
3177
+ "@babel/runtime": "^7.12.5",
3178
+ "@wordpress/autop": "^2.12.0",
3179
+ "@wordpress/blob": "^2.13.0",
3180
+ "@wordpress/block-serialization-default-parser": "^3.10.0",
3181
+ "@wordpress/compose": "^3.25.0",
3182
+ "@wordpress/data": "^4.27.0",
3183
+ "@wordpress/deprecated": "^2.12.0",
3184
+ "@wordpress/dom": "^2.17.0",
3185
+ "@wordpress/element": "^2.20.0",
3186
+ "@wordpress/hooks": "^2.12.0",
3187
+ "@wordpress/html-entities": "^2.11.0",
3188
+ "@wordpress/i18n": "^3.19.0",
3189
+ "@wordpress/icons": "^2.10.0",
3190
+ "@wordpress/is-shallow-equal": "^3.1.0",
3191
+ "@wordpress/shortcode": "^2.13.0",
3192
+ "hpq": "^1.3.0",
3193
+ "lodash": "^4.17.19",
3194
+ "rememo": "^3.0.0",
3195
+ "showdown": "^1.9.1",
3196
+ "simple-html-tokenizer": "^0.5.7",
3197
+ "tinycolor2": "^1.4.2",
3198
+ "uuid": "^8.3.0"
3199
+ }
3200
+ },
3201
+ "@wordpress/components": {
3202
+ "version": "13.0.0",
3203
+ "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-13.0.0.tgz",
3204
+ "integrity": "sha512-Yyw0bRqFR4GsR7csZ5uGD4QMErq15W19AfDMnOBhcZpFicnSl9hGFLCp97AzcGYWf5Qqx34Zr0TsiepqfPwF3A==",
3205
+ "dev": true,
3206
+ "requires": {
3207
+ "@babel/runtime": "^7.12.5",
3208
+ "@emotion/core": "^10.1.1",
3209
+ "@emotion/css": "^10.0.22",
3210
+ "@emotion/native": "^10.0.22",
3211
+ "@emotion/styled": "^10.0.23",
3212
+ "@wordpress/a11y": "^2.15.0",
3213
+ "@wordpress/compose": "^3.25.0",
3214
+ "@wordpress/date": "^3.14.0",
3215
+ "@wordpress/deprecated": "^2.12.0",
3216
+ "@wordpress/dom": "^2.17.0",
3217
+ "@wordpress/element": "^2.20.0",
3218
+ "@wordpress/hooks": "^2.12.0",
3219
+ "@wordpress/i18n": "^3.19.0",
3220
+ "@wordpress/icons": "^2.10.0",
3221
+ "@wordpress/is-shallow-equal": "^3.1.0",
3222
+ "@wordpress/keycodes": "^2.19.0",
3223
+ "@wordpress/primitives": "^1.12.0",
3224
+ "@wordpress/rich-text": "^3.25.0",
3225
+ "@wordpress/warning": "^1.4.0",
3226
+ "@wp-g2/components": "^0.0.159",
3227
+ "@wp-g2/context": "^0.0.159",
3228
+ "@wp-g2/styles": "^0.0.159",
3229
+ "@wp-g2/utils": "^0.0.159",
3230
+ "classnames": "^2.2.5",
3231
+ "dom-scroll-into-view": "^1.2.1",
3232
+ "downshift": "^6.0.15",
3233
+ "gradient-parser": "^0.1.5",
3234
+ "highlight-words-core": "^1.2.2",
3235
+ "lodash": "^4.17.19",
3236
+ "memize": "^1.1.0",
3237
+ "moment": "^2.22.1",
3238
+ "re-resizable": "^6.4.0",
3239
+ "react-dates": "^17.1.1",
3240
+ "react-resize-aware": "^3.1.0",
3241
+ "react-spring": "^8.0.20",
3242
+ "react-use-gesture": "^9.0.0",
3243
+ "reakit": "^1.3.5",
3244
+ "rememo": "^3.0.0",
3245
+ "tinycolor2": "^1.4.2",
3246
+ "uuid": "^8.3.0"
3247
+ }
3248
+ },
3249
+ "@wordpress/icons": {
3250
+ "version": "2.10.0",
3251
+ "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-2.10.0.tgz",
3252
+ "integrity": "sha512-rLYOmpgOEEB1XBOkaxSkA1IiqH5MTrYOXeZAP4CW116MLLWCOqUHjHY9tC+hQHNYDyfuRFZst+HEj302Eqa9NQ==",
3253
+ "dev": true,
3254
+ "requires": {
3255
+ "@babel/runtime": "^7.12.5",
3256
+ "@wordpress/element": "^2.20.0",
3257
+ "@wordpress/primitives": "^1.12.0"
3258
+ }
3259
+ },
3260
+ "@wordpress/is-shallow-equal": {
3261
+ "version": "3.1.0",
3262
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
3263
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
3264
+ "dev": true,
3265
+ "requires": {
3266
+ "@babel/runtime": "^7.12.5"
3267
+ }
3268
+ },
3269
+ "downshift": {
3270
+ "version": "6.1.1",
3271
+ "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.1.tgz",
3272
+ "integrity": "sha512-ch8Sh/j7gVqQd7Kcv3A5TkGfldmxmlQrRPZJYWEhzh24+h7WA4vXssuhcGNJrD8YPJlZYQGHcaX8BNhS0IcOvg==",
3273
+ "dev": true,
3274
+ "requires": {
3275
+ "@babel/runtime": "^7.12.5",
3276
+ "compute-scroll-into-view": "^1.0.17",
3277
+ "prop-types": "^15.7.2",
3278
+ "react-is": "^17.0.1"
3279
+ }
3280
+ },
3281
+ "react-autosize-textarea": {
3282
+ "version": "7.1.0",
3283
+ "resolved": "https://registry.npmjs.org/react-autosize-textarea/-/react-autosize-textarea-7.1.0.tgz",
3284
+ "integrity": "sha512-BHpjCDkuOlllZn3nLazY2F8oYO1tS2jHnWhcjTWQdcKiiMU6gHLNt/fzmqMSyerR0eTdKtfSIqtSeTtghNwS+g==",
3285
+ "dev": true,
3286
+ "requires": {
3287
+ "autosize": "^4.0.2",
3288
+ "line-height": "^0.3.1",
3289
+ "prop-types": "^15.5.6"
3290
+ }
3291
+ },
3292
+ "react-is": {
3293
+ "version": "17.0.2",
3294
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
3295
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
3296
+ "dev": true
3297
+ },
3298
+ "react-use-gesture": {
3299
+ "version": "9.1.3",
3300
+ "resolved": "https://registry.npmjs.org/react-use-gesture/-/react-use-gesture-9.1.3.tgz",
3301
+ "integrity": "sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg==",
3302
+ "dev": true
3303
+ },
3304
+ "uuid": {
3305
+ "version": "8.3.2",
3306
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
3307
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
3308
+ "dev": true
3309
+ }
3310
+ }
3311
+ },
3312
+ "@wordpress/editor": {
3313
+ "version": "9.26.0",
3314
+ "resolved": "https://registry.npmjs.org/@wordpress/editor/-/editor-9.26.0.tgz",
3315
+ "integrity": "sha512-lUeTNTWIDiL0yR3zWHkCpSBytxR15opKvxjQl6zjmwSji8qSCDlKXMS5gZpJDmNr6UqCv3M+n6gOiNGxUSwfTw==",
3316
+ "dev": true,
3317
+ "requires": {
3318
+ "@babel/runtime": "^7.12.5",
3319
+ "@wordpress/api-fetch": "^3.22.0",
3320
+ "@wordpress/autop": "^2.12.0",
3321
+ "@wordpress/blob": "^2.13.0",
3322
+ "@wordpress/block-editor": "^5.3.0",
3323
+ "@wordpress/blocks": "^8.0.0",
3324
+ "@wordpress/components": "^13.0.0",
3325
+ "@wordpress/compose": "^3.25.0",
3326
+ "@wordpress/core-data": "^2.26.0",
3327
+ "@wordpress/data": "^4.27.0",
3328
+ "@wordpress/data-controls": "^1.21.0",
3329
+ "@wordpress/date": "^3.14.0",
3330
+ "@wordpress/deprecated": "^2.12.0",
3331
+ "@wordpress/element": "^2.20.0",
3332
+ "@wordpress/hooks": "^2.12.0",
3333
+ "@wordpress/html-entities": "^2.11.0",
3334
+ "@wordpress/i18n": "^3.19.0",
3335
+ "@wordpress/icons": "^2.10.0",
3336
+ "@wordpress/is-shallow-equal": "^3.1.0",
3337
+ "@wordpress/keyboard-shortcuts": "^1.14.0",
3338
+ "@wordpress/keycodes": "^2.19.0",
3339
+ "@wordpress/media-utils": "^1.20.0",
3340
+ "@wordpress/notices": "^2.13.0",
3341
+ "@wordpress/reusable-blocks": "^1.2.0",
3342
+ "@wordpress/rich-text": "^3.25.0",
3343
+ "@wordpress/server-side-render": "^1.21.0",
3344
+ "@wordpress/url": "^2.22.0",
3345
+ "@wordpress/wordcount": "^2.15.0",
3346
+ "classnames": "^2.2.5",
3347
+ "lodash": "^4.17.19",
3348
+ "memize": "^1.1.0",
3349
+ "react-autosize-textarea": "^7.1.0",
3350
+ "rememo": "^3.0.0"
3351
+ },
3352
+ "dependencies": {
3353
+ "@wordpress/block-editor": {
3354
+ "version": "5.3.0",
3355
+ "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-5.3.0.tgz",
3356
+ "integrity": "sha512-y8UuFe2hYZs9D9LraNKM8jFxGodTeyHyC1aBrXzPenhXZBUZUWJgRaJPbQDGcCc0yfBh9C3Swh9GLdjwEjVm7Q==",
3357
+ "dev": true,
3358
+ "requires": {
3359
+ "@babel/runtime": "^7.12.5",
3360
+ "@wordpress/a11y": "^2.15.0",
3361
+ "@wordpress/blob": "^2.13.0",
3362
+ "@wordpress/blocks": "^8.0.0",
3363
+ "@wordpress/components": "^13.0.0",
3364
+ "@wordpress/compose": "^3.25.0",
3365
+ "@wordpress/data": "^4.27.0",
3366
+ "@wordpress/data-controls": "^1.21.0",
3367
+ "@wordpress/deprecated": "^2.12.0",
3368
+ "@wordpress/dom": "^2.17.0",
3369
+ "@wordpress/element": "^2.20.0",
3370
+ "@wordpress/hooks": "^2.12.0",
3371
+ "@wordpress/html-entities": "^2.11.0",
3372
+ "@wordpress/i18n": "^3.19.0",
3373
+ "@wordpress/icons": "^2.10.0",
3374
+ "@wordpress/is-shallow-equal": "^3.1.0",
3375
+ "@wordpress/keyboard-shortcuts": "^1.14.0",
3376
+ "@wordpress/keycodes": "^2.19.0",
3377
+ "@wordpress/notices": "^2.13.0",
3378
+ "@wordpress/rich-text": "^3.25.0",
3379
+ "@wordpress/shortcode": "^2.13.0",
3380
+ "@wordpress/token-list": "^1.15.0",
3381
+ "@wordpress/url": "^2.22.0",
3382
+ "@wordpress/wordcount": "^2.15.0",
3383
+ "classnames": "^2.2.5",
3384
+ "css-mediaquery": "^0.1.2",
3385
+ "diff": "^4.0.2",
3386
+ "dom-scroll-into-view": "^1.2.1",
3387
+ "inherits": "^2.0.3",
3388
+ "lodash": "^4.17.19",
3389
+ "memize": "^1.1.0",
3390
+ "react-autosize-textarea": "^7.1.0",
3391
+ "react-spring": "^8.0.19",
3392
+ "redux-multi": "^0.1.12",
3393
+ "rememo": "^3.0.0",
3394
+ "tinycolor2": "^1.4.2",
3395
+ "traverse": "^0.6.6"
3396
+ }
3397
+ },
3398
+ "@wordpress/blocks": {
3399
+ "version": "8.0.0",
3400
+ "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-8.0.0.tgz",
3401
+ "integrity": "sha512-Q1X3eyGwwm+7g2yx3fwYFIdgeICMQDCJMJ2jGFxEm19PvVA4kN/ilk4N0BjMbHrnE+jVNwKxKGOuVgtcgm8f9g==",
3402
+ "dev": true,
3403
+ "requires": {
3404
+ "@babel/runtime": "^7.12.5",
3405
+ "@wordpress/autop": "^2.12.0",
3406
+ "@wordpress/blob": "^2.13.0",
3407
+ "@wordpress/block-serialization-default-parser": "^3.10.0",
3408
+ "@wordpress/compose": "^3.25.0",
3409
+ "@wordpress/data": "^4.27.0",
3410
+ "@wordpress/deprecated": "^2.12.0",
3411
+ "@wordpress/dom": "^2.17.0",
3412
+ "@wordpress/element": "^2.20.0",
3413
+ "@wordpress/hooks": "^2.12.0",
3414
+ "@wordpress/html-entities": "^2.11.0",
3415
+ "@wordpress/i18n": "^3.19.0",
3416
+ "@wordpress/icons": "^2.10.0",
3417
+ "@wordpress/is-shallow-equal": "^3.1.0",
3418
+ "@wordpress/shortcode": "^2.13.0",
3419
+ "hpq": "^1.3.0",
3420
+ "lodash": "^4.17.19",
3421
+ "rememo": "^3.0.0",
3422
+ "showdown": "^1.9.1",
3423
+ "simple-html-tokenizer": "^0.5.7",
3424
+ "tinycolor2": "^1.4.2",
3425
+ "uuid": "^8.3.0"
3426
+ }
3427
+ },
3428
+ "@wordpress/components": {
3429
+ "version": "13.0.0",
3430
+ "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-13.0.0.tgz",
3431
+ "integrity": "sha512-Yyw0bRqFR4GsR7csZ5uGD4QMErq15W19AfDMnOBhcZpFicnSl9hGFLCp97AzcGYWf5Qqx34Zr0TsiepqfPwF3A==",
3432
+ "dev": true,
3433
+ "requires": {
3434
+ "@babel/runtime": "^7.12.5",
3435
+ "@emotion/core": "^10.1.1",
3436
+ "@emotion/css": "^10.0.22",
3437
+ "@emotion/native": "^10.0.22",
3438
+ "@emotion/styled": "^10.0.23",
3439
+ "@wordpress/a11y": "^2.15.0",
3440
+ "@wordpress/compose": "^3.25.0",
3441
+ "@wordpress/date": "^3.14.0",
3442
+ "@wordpress/deprecated": "^2.12.0",
3443
+ "@wordpress/dom": "^2.17.0",
3444
+ "@wordpress/element": "^2.20.0",
3445
+ "@wordpress/hooks": "^2.12.0",
3446
+ "@wordpress/i18n": "^3.19.0",
3447
+ "@wordpress/icons": "^2.10.0",
3448
+ "@wordpress/is-shallow-equal": "^3.1.0",
3449
+ "@wordpress/keycodes": "^2.19.0",
3450
+ "@wordpress/primitives": "^1.12.0",
3451
+ "@wordpress/rich-text": "^3.25.0",
3452
+ "@wordpress/warning": "^1.4.0",
3453
+ "@wp-g2/components": "^0.0.159",
3454
+ "@wp-g2/context": "^0.0.159",
3455
+ "@wp-g2/styles": "^0.0.159",
3456
+ "@wp-g2/utils": "^0.0.159",
3457
+ "classnames": "^2.2.5",
3458
+ "dom-scroll-into-view": "^1.2.1",
3459
+ "downshift": "^6.0.15",
3460
+ "gradient-parser": "^0.1.5",
3461
+ "highlight-words-core": "^1.2.2",
3462
+ "lodash": "^4.17.19",
3463
+ "memize": "^1.1.0",
3464
+ "moment": "^2.22.1",
3465
+ "re-resizable": "^6.4.0",
3466
+ "react-dates": "^17.1.1",
3467
+ "react-resize-aware": "^3.1.0",
3468
+ "react-spring": "^8.0.20",
3469
+ "react-use-gesture": "^9.0.0",
3470
+ "reakit": "^1.3.5",
3471
+ "rememo": "^3.0.0",
3472
+ "tinycolor2": "^1.4.2",
3473
+ "uuid": "^8.3.0"
3474
+ }
3475
+ },
3476
+ "@wordpress/icons": {
3477
+ "version": "2.10.0",
3478
+ "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-2.10.0.tgz",
3479
+ "integrity": "sha512-rLYOmpgOEEB1XBOkaxSkA1IiqH5MTrYOXeZAP4CW116MLLWCOqUHjHY9tC+hQHNYDyfuRFZst+HEj302Eqa9NQ==",
3480
+ "dev": true,
3481
+ "requires": {
3482
+ "@babel/runtime": "^7.12.5",
3483
+ "@wordpress/element": "^2.20.0",
3484
+ "@wordpress/primitives": "^1.12.0"
3485
+ }
3486
+ },
3487
+ "@wordpress/is-shallow-equal": {
3488
+ "version": "3.1.0",
3489
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
3490
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
3491
+ "dev": true,
3492
+ "requires": {
3493
+ "@babel/runtime": "^7.12.5"
3494
+ }
3495
+ },
3496
+ "downshift": {
3497
+ "version": "6.1.1",
3498
+ "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.1.tgz",
3499
+ "integrity": "sha512-ch8Sh/j7gVqQd7Kcv3A5TkGfldmxmlQrRPZJYWEhzh24+h7WA4vXssuhcGNJrD8YPJlZYQGHcaX8BNhS0IcOvg==",
3500
+ "dev": true,
3501
+ "requires": {
3502
+ "@babel/runtime": "^7.12.5",
3503
+ "compute-scroll-into-view": "^1.0.17",
3504
+ "prop-types": "^15.7.2",
3505
+ "react-is": "^17.0.1"
3506
+ }
3507
+ },
3508
+ "react-autosize-textarea": {
3509
+ "version": "7.1.0",
3510
+ "resolved": "https://registry.npmjs.org/react-autosize-textarea/-/react-autosize-textarea-7.1.0.tgz",
3511
+ "integrity": "sha512-BHpjCDkuOlllZn3nLazY2F8oYO1tS2jHnWhcjTWQdcKiiMU6gHLNt/fzmqMSyerR0eTdKtfSIqtSeTtghNwS+g==",
3512
+ "dev": true,
3513
+ "requires": {
3514
+ "autosize": "^4.0.2",
3515
+ "line-height": "^0.3.1",
3516
+ "prop-types": "^15.5.6"
3517
+ }
3518
+ },
3519
+ "react-is": {
3520
+ "version": "17.0.2",
3521
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
3522
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
3523
+ "dev": true
3524
+ },
3525
+ "react-use-gesture": {
3526
+ "version": "9.1.3",
3527
+ "resolved": "https://registry.npmjs.org/react-use-gesture/-/react-use-gesture-9.1.3.tgz",
3528
+ "integrity": "sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg==",
3529
+ "dev": true
3530
+ },
3531
+ "uuid": {
3532
+ "version": "8.3.2",
3533
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
3534
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
3535
+ "dev": true
3536
+ }
3537
+ }
3538
+ },
3539
+ "@wordpress/element": {
3540
+ "version": "2.20.0",
3541
+ "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-2.20.0.tgz",
3542
+ "integrity": "sha512-6sZQSvyhnD0MHmZ9w6t3k6E1mw1y6AbwJ0pGBmm8Kqnsv4oeZpYCmriwwceCufZLLRS1icFB5VGZRIdvMWRMPA==",
3543
+ "requires": {
3544
+ "@babel/runtime": "^7.12.5",
3545
+ "@types/react": "^16.9.0",
3546
+ "@types/react-dom": "^16.9.0",
3547
+ "@wordpress/escape-html": "^1.12.0",
3548
+ "lodash": "^4.17.19",
3549
+ "react": "^16.13.1",
3550
+ "react-dom": "^16.13.1"
3551
+ },
3552
+ "dependencies": {
3553
+ "react": {
3554
+ "version": "16.14.0",
3555
+ "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz",
3556
+ "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==",
3557
+ "requires": {
3558
+ "loose-envify": "^1.1.0",
3559
+ "object-assign": "^4.1.1",
3560
+ "prop-types": "^15.6.2"
3561
+ }
3562
+ },
3563
+ "react-dom": {
3564
+ "version": "16.14.0",
3565
+ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz",
3566
+ "integrity": "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==",
3567
+ "requires": {
3568
+ "loose-envify": "^1.1.0",
3569
+ "object-assign": "^4.1.1",
3570
+ "prop-types": "^15.6.2",
3571
+ "scheduler": "^0.19.1"
3572
+ }
3573
+ }
3574
+ }
3575
+ },
3576
+ "@wordpress/escape-html": {
3577
+ "version": "1.12.0",
3578
+ "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-1.12.0.tgz",
3579
+ "integrity": "sha512-T+HiRDlm3UcPnbV00g3Qclea0SIopHd7d+xSSRfblhEhoiCDC5GTdjUAbrtMGZov46PHhHEl1/iN3oMv+mlWXQ==",
3580
+ "requires": {
3581
+ "@babel/runtime": "^7.12.5"
3582
+ }
3583
+ },
3584
+ "@wordpress/hooks": {
3585
+ "version": "2.12.0",
3586
+ "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-2.12.0.tgz",
3587
+ "integrity": "sha512-BXQw5ZKupKbwlczHFJcDPG8cNi8MmiRgLI42Dwl181+1w9UOHGAjbsRmgYreAIU8vXEx2Gr1QW0HroVpZxixoA==",
3588
+ "dev": true,
3589
+ "requires": {
3590
+ "@babel/runtime": "^7.12.5"
3591
+ }
3592
+ },
3593
+ "@wordpress/html-entities": {
3594
+ "version": "2.11.0",
3595
+ "resolved": "https://registry.npmjs.org/@wordpress/html-entities/-/html-entities-2.11.0.tgz",
3596
+ "integrity": "sha512-FvOMTKpiQ7Rwt/FxgMpCHCZxlMA22oALcv6yk6qlVmEGlXaYjiX//bhKitg5kQXRnwwrAw2CNfFO0Ar691kaRw==",
3597
+ "dev": true,
3598
+ "requires": {
3599
+ "@babel/runtime": "^7.12.5"
3600
+ }
3601
+ },
3602
+ "@wordpress/i18n": {
3603
+ "version": "3.19.0",
3604
+ "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-3.19.0.tgz",
3605
+ "integrity": "sha512-dACJKGzcaTS8AufH6HpHYm3v9zB6uRPK6DQg6F+oL8EhvENs1o+oSfwP3RDYmaI7BHSg/JYID+vIGm/nZDMx6A==",
3606
+ "dev": true,
3607
+ "requires": {
3608
+ "@babel/runtime": "^7.12.5",
3609
+ "@wordpress/hooks": "^2.12.0",
3610
+ "gettext-parser": "^1.3.1",
3611
+ "lodash": "^4.17.19",
3612
+ "memize": "^1.1.0",
3613
+ "sprintf-js": "^1.1.1",
3614
+ "tannin": "^1.2.0"
3615
+ },
3616
+ "dependencies": {
3617
+ "sprintf-js": {
3618
+ "version": "1.1.2",
3619
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz",
3620
+ "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==",
3621
+ "dev": true
3622
+ }
3623
+ }
3624
+ },
3625
+ "@wordpress/icons": {
3626
+ "version": "2.10.0",
3627
+ "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-2.10.0.tgz",
3628
+ "integrity": "sha512-rLYOmpgOEEB1XBOkaxSkA1IiqH5MTrYOXeZAP4CW116MLLWCOqUHjHY9tC+hQHNYDyfuRFZst+HEj302Eqa9NQ==",
3629
+ "requires": {
3630
+ "@babel/runtime": "^7.12.5",
3631
+ "@wordpress/element": "^2.20.0",
3632
+ "@wordpress/primitives": "^1.12.0"
3633
+ }
3634
+ },
3635
+ "@wordpress/interface": {
3636
+ "version": "1.1.0",
3637
+ "resolved": "https://registry.npmjs.org/@wordpress/interface/-/interface-1.1.0.tgz",
3638
+ "integrity": "sha512-yRbQxgAO49GMhlFdgklGx5Pc1nwj9klEI0fRJTuOtDqhZMsOf4n1S9BFTqu5qkmAGnyqw9MWTt0fwR6X67OP+g==",
3639
+ "dev": true,
3640
+ "requires": {
3641
+ "@babel/runtime": "^7.12.5",
3642
+ "@wordpress/components": "^13.0.0",
3643
+ "@wordpress/compose": "^3.25.0",
3644
+ "@wordpress/data": "^4.27.0",
3645
+ "@wordpress/deprecated": "^2.12.0",
3646
+ "@wordpress/element": "^2.20.0",
3647
+ "@wordpress/i18n": "^3.19.0",
3648
+ "@wordpress/icons": "^2.10.0",
3649
+ "@wordpress/plugins": "^2.25.0",
3650
+ "@wordpress/viewport": "^2.26.0",
3651
+ "classnames": "^2.2.5",
3652
+ "lodash": "^4.17.19"
3653
+ },
3654
+ "dependencies": {
3655
+ "@wordpress/components": {
3656
+ "version": "13.0.0",
3657
+ "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-13.0.0.tgz",
3658
+ "integrity": "sha512-Yyw0bRqFR4GsR7csZ5uGD4QMErq15W19AfDMnOBhcZpFicnSl9hGFLCp97AzcGYWf5Qqx34Zr0TsiepqfPwF3A==",
3659
+ "dev": true,
3660
+ "requires": {
3661
+ "@babel/runtime": "^7.12.5",
3662
+ "@emotion/core": "^10.1.1",
3663
+ "@emotion/css": "^10.0.22",
3664
+ "@emotion/native": "^10.0.22",
3665
+ "@emotion/styled": "^10.0.23",
3666
+ "@wordpress/a11y": "^2.15.0",
3667
+ "@wordpress/compose": "^3.25.0",
3668
+ "@wordpress/date": "^3.14.0",
3669
+ "@wordpress/deprecated": "^2.12.0",
3670
+ "@wordpress/dom": "^2.17.0",
3671
+ "@wordpress/element": "^2.20.0",
3672
+ "@wordpress/hooks": "^2.12.0",
3673
+ "@wordpress/i18n": "^3.19.0",
3674
+ "@wordpress/icons": "^2.10.0",
3675
+ "@wordpress/is-shallow-equal": "^3.1.0",
3676
+ "@wordpress/keycodes": "^2.19.0",
3677
+ "@wordpress/primitives": "^1.12.0",
3678
+ "@wordpress/rich-text": "^3.25.0",
3679
+ "@wordpress/warning": "^1.4.0",
3680
+ "@wp-g2/components": "^0.0.159",
3681
+ "@wp-g2/context": "^0.0.159",
3682
+ "@wp-g2/styles": "^0.0.159",
3683
+ "@wp-g2/utils": "^0.0.159",
3684
+ "classnames": "^2.2.5",
3685
+ "dom-scroll-into-view": "^1.2.1",
3686
+ "downshift": "^6.0.15",
3687
+ "gradient-parser": "^0.1.5",
3688
+ "highlight-words-core": "^1.2.2",
3689
+ "lodash": "^4.17.19",
3690
+ "memize": "^1.1.0",
3691
+ "moment": "^2.22.1",
3692
+ "re-resizable": "^6.4.0",
3693
+ "react-dates": "^17.1.1",
3694
+ "react-resize-aware": "^3.1.0",
3695
+ "react-spring": "^8.0.20",
3696
+ "react-use-gesture": "^9.0.0",
3697
+ "reakit": "^1.3.5",
3698
+ "rememo": "^3.0.0",
3699
+ "tinycolor2": "^1.4.2",
3700
+ "uuid": "^8.3.0"
3701
+ }
3702
+ },
3703
+ "@wordpress/icons": {
3704
+ "version": "2.10.0",
3705
+ "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-2.10.0.tgz",
3706
+ "integrity": "sha512-rLYOmpgOEEB1XBOkaxSkA1IiqH5MTrYOXeZAP4CW116MLLWCOqUHjHY9tC+hQHNYDyfuRFZst+HEj302Eqa9NQ==",
3707
+ "dev": true,
3708
+ "requires": {
3709
+ "@babel/runtime": "^7.12.5",
3710
+ "@wordpress/element": "^2.20.0",
3711
+ "@wordpress/primitives": "^1.12.0"
3712
+ }
3713
+ },
3714
+ "@wordpress/is-shallow-equal": {
3715
+ "version": "3.1.0",
3716
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
3717
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
3718
+ "dev": true,
3719
+ "requires": {
3720
+ "@babel/runtime": "^7.12.5"
3721
+ }
3722
+ },
3723
+ "downshift": {
3724
+ "version": "6.1.1",
3725
+ "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.1.tgz",
3726
+ "integrity": "sha512-ch8Sh/j7gVqQd7Kcv3A5TkGfldmxmlQrRPZJYWEhzh24+h7WA4vXssuhcGNJrD8YPJlZYQGHcaX8BNhS0IcOvg==",
3727
+ "dev": true,
3728
+ "requires": {
3729
+ "@babel/runtime": "^7.12.5",
3730
+ "compute-scroll-into-view": "^1.0.17",
3731
+ "prop-types": "^15.7.2",
3732
+ "react-is": "^17.0.1"
3733
+ }
3734
+ },
3735
+ "react-is": {
3736
+ "version": "17.0.2",
3737
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
3738
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
3739
+ "dev": true
3740
+ },
3741
+ "react-use-gesture": {
3742
+ "version": "9.1.3",
3743
+ "resolved": "https://registry.npmjs.org/react-use-gesture/-/react-use-gesture-9.1.3.tgz",
3744
+ "integrity": "sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg==",
3745
+ "dev": true
3746
+ },
3747
+ "uuid": {
3748
+ "version": "8.3.2",
3749
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
3750
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
3751
+ "dev": true
3752
+ }
3753
+ }
3754
+ },
3755
+ "@wordpress/is-shallow-equal": {
3756
+ "version": "3.1.0",
3757
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
3758
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
3759
+ "dev": true,
3760
+ "requires": {
3761
+ "@babel/runtime": "^7.12.5"
3762
+ }
3763
+ },
3764
+ "@wordpress/jest-console": {
3765
+ "version": "4.0.1",
3766
+ "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-4.0.1.tgz",
3767
+ "integrity": "sha512-LVCfRvBkXvmd5xIxg41IMwu0mLHSY4XU2IrotCXZ8EjO3nNJwqPp3ZF6MNHRFXMzvU6qeKqaajvw4p7LnkdIzQ==",
3768
+ "dev": true,
3769
+ "requires": {
3770
+ "@babel/runtime": "^7.12.5",
3771
+ "jest-matcher-utils": "^26.6.2",
3772
+ "lodash": "^4.17.19"
3773
+ }
3774
+ },
3775
+ "@wordpress/jest-preset-default": {
3776
+ "version": "7.0.1",
3777
+ "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-7.0.1.tgz",
3778
+ "integrity": "sha512-MSzgz3poU7F7+PmWclfG9yvdNTEVJbQYdoPflD7ZUXWDFpL62K3zaUeEuI+GXgXh7rshlSoMxs+Lm9Sl9/YwBw==",
3779
+ "dev": true,
3780
+ "requires": {
3781
+ "@wordpress/jest-console": "^4.0.1",
3782
+ "babel-jest": "^26.6.3",
3783
+ "enzyme": "^3.11.0",
3784
+ "enzyme-adapter-react-16": "^1.15.2",
3785
+ "enzyme-to-json": "^3.4.4"
3786
+ }
3787
+ },
3788
+ "@wordpress/keyboard-shortcuts": {
3789
+ "version": "1.14.0",
3790
+ "resolved": "https://registry.npmjs.org/@wordpress/keyboard-shortcuts/-/keyboard-shortcuts-1.14.0.tgz",
3791
+ "integrity": "sha512-NSQOhJjcMYE5N500oHxHstIuIYQiXx95zTtuDJ6b/UEmd53fobrzi+B7tKhN6izCtgbek2rpW3A2eMvDguBlmQ==",
3792
+ "dev": true,
3793
+ "requires": {
3794
+ "@babel/runtime": "^7.12.5",
3795
+ "@wordpress/compose": "^3.25.0",
3796
+ "@wordpress/data": "^4.27.0",
3797
+ "@wordpress/element": "^2.20.0",
3798
+ "@wordpress/keycodes": "^2.19.0",
3799
+ "lodash": "^4.17.19",
3800
+ "rememo": "^3.0.0"
3801
+ }
3802
+ },
3803
+ "@wordpress/keycodes": {
3804
+ "version": "2.19.0",
3805
+ "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-2.19.0.tgz",
3806
+ "integrity": "sha512-nHUh6IQoljY0ojbDCgjcZDFThAj013nFDk4JF25N+MMhEc98sPj9EItJnpGB0cU1M4C1POmm1bHnrMgPywlEqw==",
3807
+ "dev": true,
3808
+ "requires": {
3809
+ "@babel/runtime": "^7.12.5",
3810
+ "@wordpress/i18n": "^3.19.0",
3811
+ "lodash": "^4.17.19"
3812
+ }
3813
+ },
3814
+ "@wordpress/media-utils": {
3815
+ "version": "1.20.0",
3816
+ "resolved": "https://registry.npmjs.org/@wordpress/media-utils/-/media-utils-1.20.0.tgz",
3817
+ "integrity": "sha512-yes3F/JPNkfyVOtK97IO1i1d09uBCWbtjiA1h2KlEozbEs+tNJU9Yd/hHDEPcxzQXBUaNNf8Qdn+Z3vW3adpsQ==",
3818
+ "dev": true,
3819
+ "requires": {
3820
+ "@babel/runtime": "^7.12.5",
3821
+ "@wordpress/api-fetch": "^3.22.0",
3822
+ "@wordpress/blob": "^2.13.0",
3823
+ "@wordpress/element": "^2.20.0",
3824
+ "@wordpress/i18n": "^3.19.0",
3825
+ "lodash": "^4.17.19"
3826
+ }
3827
+ },
3828
+ "@wordpress/notices": {
3829
+ "version": "2.13.0",
3830
+ "resolved": "https://registry.npmjs.org/@wordpress/notices/-/notices-2.13.0.tgz",
3831
+ "integrity": "sha512-uMOFSmt3AIUjPS0txq7pfOuJjRlBkCsZp2M4J6W8+glx2XMDzaVvngTsUCfM3VjBddmLl6QFRIoU9/pUphY/CQ==",
3832
+ "dev": true,
3833
+ "requires": {
3834
+ "@babel/runtime": "^7.12.5",
3835
+ "@wordpress/a11y": "^2.15.0",
3836
+ "@wordpress/data": "^4.27.0",
3837
+ "lodash": "^4.17.19"
3838
+ }
3839
+ },
3840
+ "@wordpress/plugins": {
3841
+ "version": "2.25.0",
3842
+ "resolved": "https://registry.npmjs.org/@wordpress/plugins/-/plugins-2.25.0.tgz",
3843
+ "integrity": "sha512-u5VikGgNOQxtxwzQnODGpSC5Do1aftWPsiJHbRHMpiIVOqaa1Cv0Fah5+x1fOJgJcs2MxTCKuTKuRNhaDMnQ+w==",
3844
+ "dev": true,
3845
+ "requires": {
3846
+ "@babel/runtime": "^7.12.5",
3847
+ "@wordpress/compose": "^3.25.0",
3848
+ "@wordpress/element": "^2.20.0",
3849
+ "@wordpress/hooks": "^2.12.0",
3850
+ "@wordpress/icons": "^2.10.0",
3851
+ "lodash": "^4.17.19",
3852
+ "memize": "^1.1.0"
3853
+ },
3854
+ "dependencies": {
3855
+ "@wordpress/icons": {
3856
+ "version": "2.10.0",
3857
+ "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-2.10.0.tgz",
3858
+ "integrity": "sha512-rLYOmpgOEEB1XBOkaxSkA1IiqH5MTrYOXeZAP4CW116MLLWCOqUHjHY9tC+hQHNYDyfuRFZst+HEj302Eqa9NQ==",
3859
+ "dev": true,
3860
+ "requires": {
3861
+ "@babel/runtime": "^7.12.5",
3862
+ "@wordpress/element": "^2.20.0",
3863
+ "@wordpress/primitives": "^1.12.0"
3864
+ }
3865
+ }
3866
+ }
3867
+ },
3868
+ "@wordpress/primitives": {
3869
+ "version": "1.12.0",
3870
+ "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-1.12.0.tgz",
3871
+ "integrity": "sha512-56YJZ6Vp9Ci6iyHmWmrxjZGzOp+yPcc4R1W+ek1ChkTojulX9/9L0S4HtKwRLKvKLhPxogTVwbaHveLyku/ZNQ==",
3872
+ "requires": {
3873
+ "@babel/runtime": "^7.12.5",
3874
+ "@wordpress/element": "^2.20.0",
3875
+ "classnames": "^2.2.5"
3876
+ }
3877
+ },
3878
+ "@wordpress/priority-queue": {
3879
+ "version": "1.11.0",
3880
+ "resolved": "https://registry.npmjs.org/@wordpress/priority-queue/-/priority-queue-1.11.0.tgz",
3881
+ "integrity": "sha512-2cF9VKzvTe14zT7ZXvNB/M7jTnQL0VcpqZsSpjTsaJsJ04Ihy/i0FpaFlHd44sGi1RV1WpBtjgs8BX3TNtFmVQ==",
3882
+ "dev": true,
3883
+ "requires": {
3884
+ "@babel/runtime": "^7.12.5"
3885
+ }
3886
+ },
3887
+ "@wordpress/redux-routine": {
3888
+ "version": "3.14.0",
3889
+ "resolved": "https://registry.npmjs.org/@wordpress/redux-routine/-/redux-routine-3.14.0.tgz",
3890
+ "integrity": "sha512-BVCgsGyRQ7MHHfoxAYlPHWmYBayN9G2NXswhk/E/W845PXB2yshBZuE9Chkpnvi0OqOkxssV8PLh5/tJEIApew==",
3891
+ "dev": true,
3892
+ "requires": {
3893
+ "@babel/runtime": "^7.12.5",
3894
+ "is-promise": "^4.0.0",
3895
+ "lodash": "^4.17.19",
3896
+ "rungen": "^0.3.2"
3897
+ }
3898
+ },
3899
+ "@wordpress/reusable-blocks": {
3900
+ "version": "1.2.0",
3901
+ "resolved": "https://registry.npmjs.org/@wordpress/reusable-blocks/-/reusable-blocks-1.2.0.tgz",
3902
+ "integrity": "sha512-sc954yTtqvroafzz4u5jg1c9g2n2kLStBrxX1cBuvgbQVGViFTS1l3kxuJVm1NRifa+IXqKtunSj0diQb2srAg==",
3903
+ "dev": true,
3904
+ "requires": {
3905
+ "@wordpress/block-editor": "^5.3.0",
3906
+ "@wordpress/blocks": "^8.0.0",
3907
+ "@wordpress/components": "^13.0.0",
3908
+ "@wordpress/compose": "^3.25.0",
3909
+ "@wordpress/core-data": "^2.26.0",
3910
+ "@wordpress/data": "^4.27.0",
3911
+ "@wordpress/element": "^2.20.0",
3912
+ "@wordpress/i18n": "^3.19.0",
3913
+ "@wordpress/icons": "^2.10.0",
3914
+ "@wordpress/notices": "^2.13.0",
3915
+ "@wordpress/url": "^2.22.0",
3916
+ "lodash": "^4.17.19"
3917
+ },
3918
+ "dependencies": {
3919
+ "@wordpress/block-editor": {
3920
+ "version": "5.3.0",
3921
+ "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-5.3.0.tgz",
3922
+ "integrity": "sha512-y8UuFe2hYZs9D9LraNKM8jFxGodTeyHyC1aBrXzPenhXZBUZUWJgRaJPbQDGcCc0yfBh9C3Swh9GLdjwEjVm7Q==",
3923
+ "dev": true,
3924
+ "requires": {
3925
+ "@babel/runtime": "^7.12.5",
3926
+ "@wordpress/a11y": "^2.15.0",
3927
+ "@wordpress/blob": "^2.13.0",
3928
+ "@wordpress/blocks": "^8.0.0",
3929
+ "@wordpress/components": "^13.0.0",
3930
+ "@wordpress/compose": "^3.25.0",
3931
+ "@wordpress/data": "^4.27.0",
3932
+ "@wordpress/data-controls": "^1.21.0",
3933
+ "@wordpress/deprecated": "^2.12.0",
3934
+ "@wordpress/dom": "^2.17.0",
3935
+ "@wordpress/element": "^2.20.0",
3936
+ "@wordpress/hooks": "^2.12.0",
3937
+ "@wordpress/html-entities": "^2.11.0",
3938
+ "@wordpress/i18n": "^3.19.0",
3939
+ "@wordpress/icons": "^2.10.0",
3940
+ "@wordpress/is-shallow-equal": "^3.1.0",
3941
+ "@wordpress/keyboard-shortcuts": "^1.14.0",
3942
+ "@wordpress/keycodes": "^2.19.0",
3943
+ "@wordpress/notices": "^2.13.0",
3944
+ "@wordpress/rich-text": "^3.25.0",
3945
+ "@wordpress/shortcode": "^2.13.0",
3946
+ "@wordpress/token-list": "^1.15.0",
3947
+ "@wordpress/url": "^2.22.0",
3948
+ "@wordpress/wordcount": "^2.15.0",
3949
+ "classnames": "^2.2.5",
3950
+ "css-mediaquery": "^0.1.2",
3951
+ "diff": "^4.0.2",
3952
+ "dom-scroll-into-view": "^1.2.1",
3953
+ "inherits": "^2.0.3",
3954
+ "lodash": "^4.17.19",
3955
+ "memize": "^1.1.0",
3956
+ "react-autosize-textarea": "^7.1.0",
3957
+ "react-spring": "^8.0.19",
3958
+ "redux-multi": "^0.1.12",
3959
+ "rememo": "^3.0.0",
3960
+ "tinycolor2": "^1.4.2",
3961
+ "traverse": "^0.6.6"
3962
+ }
3963
+ },
3964
+ "@wordpress/blocks": {
3965
+ "version": "8.0.0",
3966
+ "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-8.0.0.tgz",
3967
+ "integrity": "sha512-Q1X3eyGwwm+7g2yx3fwYFIdgeICMQDCJMJ2jGFxEm19PvVA4kN/ilk4N0BjMbHrnE+jVNwKxKGOuVgtcgm8f9g==",
3968
+ "dev": true,
3969
+ "requires": {
3970
+ "@babel/runtime": "^7.12.5",
3971
+ "@wordpress/autop": "^2.12.0",
3972
+ "@wordpress/blob": "^2.13.0",
3973
+ "@wordpress/block-serialization-default-parser": "^3.10.0",
3974
+ "@wordpress/compose": "^3.25.0",
3975
+ "@wordpress/data": "^4.27.0",
3976
+ "@wordpress/deprecated": "^2.12.0",
3977
+ "@wordpress/dom": "^2.17.0",
3978
+ "@wordpress/element": "^2.20.0",
3979
+ "@wordpress/hooks": "^2.12.0",
3980
+ "@wordpress/html-entities": "^2.11.0",
3981
+ "@wordpress/i18n": "^3.19.0",
3982
+ "@wordpress/icons": "^2.10.0",
3983
+ "@wordpress/is-shallow-equal": "^3.1.0",
3984
+ "@wordpress/shortcode": "^2.13.0",
3985
+ "hpq": "^1.3.0",
3986
+ "lodash": "^4.17.19",
3987
+ "rememo": "^3.0.0",
3988
+ "showdown": "^1.9.1",
3989
+ "simple-html-tokenizer": "^0.5.7",
3990
+ "tinycolor2": "^1.4.2",
3991
+ "uuid": "^8.3.0"
3992
+ }
3993
+ },
3994
+ "@wordpress/components": {
3995
+ "version": "13.0.0",
3996
+ "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-13.0.0.tgz",
3997
+ "integrity": "sha512-Yyw0bRqFR4GsR7csZ5uGD4QMErq15W19AfDMnOBhcZpFicnSl9hGFLCp97AzcGYWf5Qqx34Zr0TsiepqfPwF3A==",
3998
+ "dev": true,
3999
+ "requires": {
4000
+ "@babel/runtime": "^7.12.5",
4001
+ "@emotion/core": "^10.1.1",
4002
+ "@emotion/css": "^10.0.22",
4003
+ "@emotion/native": "^10.0.22",
4004
+ "@emotion/styled": "^10.0.23",
4005
+ "@wordpress/a11y": "^2.15.0",
4006
+ "@wordpress/compose": "^3.25.0",
4007
+ "@wordpress/date": "^3.14.0",
4008
+ "@wordpress/deprecated": "^2.12.0",
4009
+ "@wordpress/dom": "^2.17.0",
4010
+ "@wordpress/element": "^2.20.0",
4011
+ "@wordpress/hooks": "^2.12.0",
4012
+ "@wordpress/i18n": "^3.19.0",
4013
+ "@wordpress/icons": "^2.10.0",
4014
+ "@wordpress/is-shallow-equal": "^3.1.0",
4015
+ "@wordpress/keycodes": "^2.19.0",
4016
+ "@wordpress/primitives": "^1.12.0",
4017
+ "@wordpress/rich-text": "^3.25.0",
4018
+ "@wordpress/warning": "^1.4.0",
4019
+ "@wp-g2/components": "^0.0.159",
4020
+ "@wp-g2/context": "^0.0.159",
4021
+ "@wp-g2/styles": "^0.0.159",
4022
+ "@wp-g2/utils": "^0.0.159",
4023
+ "classnames": "^2.2.5",
4024
+ "dom-scroll-into-view": "^1.2.1",
4025
+ "downshift": "^6.0.15",
4026
+ "gradient-parser": "^0.1.5",
4027
+ "highlight-words-core": "^1.2.2",
4028
+ "lodash": "^4.17.19",
4029
+ "memize": "^1.1.0",
4030
+ "moment": "^2.22.1",
4031
+ "re-resizable": "^6.4.0",
4032
+ "react-dates": "^17.1.1",
4033
+ "react-resize-aware": "^3.1.0",
4034
+ "react-spring": "^8.0.20",
4035
+ "react-use-gesture": "^9.0.0",
4036
+ "reakit": "^1.3.5",
4037
+ "rememo": "^3.0.0",
4038
+ "tinycolor2": "^1.4.2",
4039
+ "uuid": "^8.3.0"
4040
+ }
4041
+ },
4042
+ "@wordpress/icons": {
4043
+ "version": "2.10.0",
4044
+ "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-2.10.0.tgz",
4045
+ "integrity": "sha512-rLYOmpgOEEB1XBOkaxSkA1IiqH5MTrYOXeZAP4CW116MLLWCOqUHjHY9tC+hQHNYDyfuRFZst+HEj302Eqa9NQ==",
4046
+ "dev": true,
4047
+ "requires": {
4048
+ "@babel/runtime": "^7.12.5",
4049
+ "@wordpress/element": "^2.20.0",
4050
+ "@wordpress/primitives": "^1.12.0"
4051
+ }
4052
+ },
4053
+ "@wordpress/is-shallow-equal": {
4054
+ "version": "3.1.0",
4055
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
4056
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
4057
+ "dev": true,
4058
+ "requires": {
4059
+ "@babel/runtime": "^7.12.5"
4060
+ }
4061
+ },
4062
+ "downshift": {
4063
+ "version": "6.1.1",
4064
+ "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.1.tgz",
4065
+ "integrity": "sha512-ch8Sh/j7gVqQd7Kcv3A5TkGfldmxmlQrRPZJYWEhzh24+h7WA4vXssuhcGNJrD8YPJlZYQGHcaX8BNhS0IcOvg==",
4066
+ "dev": true,
4067
+ "requires": {
4068
+ "@babel/runtime": "^7.12.5",
4069
+ "compute-scroll-into-view": "^1.0.17",
4070
+ "prop-types": "^15.7.2",
4071
+ "react-is": "^17.0.1"
4072
+ }
4073
+ },
4074
+ "react-autosize-textarea": {
4075
+ "version": "7.1.0",
4076
+ "resolved": "https://registry.npmjs.org/react-autosize-textarea/-/react-autosize-textarea-7.1.0.tgz",
4077
+ "integrity": "sha512-BHpjCDkuOlllZn3nLazY2F8oYO1tS2jHnWhcjTWQdcKiiMU6gHLNt/fzmqMSyerR0eTdKtfSIqtSeTtghNwS+g==",
4078
+ "dev": true,
4079
+ "requires": {
4080
+ "autosize": "^4.0.2",
4081
+ "line-height": "^0.3.1",
4082
+ "prop-types": "^15.5.6"
4083
+ }
4084
+ },
4085
+ "react-is": {
4086
+ "version": "17.0.2",
4087
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
4088
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
4089
+ "dev": true
4090
+ },
4091
+ "react-use-gesture": {
4092
+ "version": "9.1.3",
4093
+ "resolved": "https://registry.npmjs.org/react-use-gesture/-/react-use-gesture-9.1.3.tgz",
4094
+ "integrity": "sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg==",
4095
+ "dev": true
4096
+ },
4097
+ "uuid": {
4098
+ "version": "8.3.2",
4099
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
4100
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
4101
+ "dev": true
4102
+ }
4103
+ }
4104
+ },
4105
+ "@wordpress/rich-text": {
4106
+ "version": "3.25.0",
4107
+ "resolved": "https://registry.npmjs.org/@wordpress/rich-text/-/rich-text-3.25.0.tgz",
4108
+ "integrity": "sha512-/s07rf9W26+o7HATCTbjowhyIb0CYUL0Tq5HuS1xy2p7vkG/vQcnRyxthKlhaDNg/SKxDcngmxUxc/HtM8VefA==",
4109
+ "dev": true,
4110
+ "requires": {
4111
+ "@babel/runtime": "^7.12.5",
4112
+ "@wordpress/compose": "^3.25.0",
4113
+ "@wordpress/data": "^4.27.0",
4114
+ "@wordpress/deprecated": "^2.12.0",
4115
+ "@wordpress/dom": "^2.17.0",
4116
+ "@wordpress/element": "^2.20.0",
4117
+ "@wordpress/escape-html": "^1.12.0",
4118
+ "@wordpress/is-shallow-equal": "^3.1.0",
4119
+ "@wordpress/keycodes": "^2.19.0",
4120
+ "classnames": "^2.2.5",
4121
+ "lodash": "^4.17.19",
4122
+ "memize": "^1.1.0",
4123
+ "rememo": "^3.0.0"
4124
+ },
4125
+ "dependencies": {
4126
+ "@wordpress/is-shallow-equal": {
4127
+ "version": "3.1.0",
4128
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
4129
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
4130
+ "dev": true,
4131
+ "requires": {
4132
+ "@babel/runtime": "^7.12.5"
4133
+ }
4134
+ }
4135
+ }
4136
+ },
4137
+ "@wordpress/server-side-render": {
4138
+ "version": "1.21.0",
4139
+ "resolved": "https://registry.npmjs.org/@wordpress/server-side-render/-/server-side-render-1.21.0.tgz",
4140
+ "integrity": "sha512-Y7Kn8/i0IVvfneym4rAlOp3KiR/bK08lxDixPNsJmIux73whh3RdnAMIo3d+P/p3FXxLGCmDaI9SWQGRcDpwqA==",
4141
+ "dev": true,
4142
+ "requires": {
4143
+ "@babel/runtime": "^7.12.5",
4144
+ "@wordpress/api-fetch": "^3.22.0",
4145
+ "@wordpress/blocks": "^8.0.0",
4146
+ "@wordpress/components": "^13.0.0",
4147
+ "@wordpress/data": "^4.27.0",
4148
+ "@wordpress/deprecated": "^2.12.0",
4149
+ "@wordpress/element": "^2.20.0",
4150
+ "@wordpress/i18n": "^3.19.0",
4151
+ "@wordpress/url": "^2.22.0",
4152
+ "lodash": "^4.17.19"
4153
+ },
4154
+ "dependencies": {
4155
+ "@wordpress/blocks": {
4156
+ "version": "8.0.0",
4157
+ "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-8.0.0.tgz",
4158
+ "integrity": "sha512-Q1X3eyGwwm+7g2yx3fwYFIdgeICMQDCJMJ2jGFxEm19PvVA4kN/ilk4N0BjMbHrnE+jVNwKxKGOuVgtcgm8f9g==",
4159
+ "dev": true,
4160
+ "requires": {
4161
+ "@babel/runtime": "^7.12.5",
4162
+ "@wordpress/autop": "^2.12.0",
4163
+ "@wordpress/blob": "^2.13.0",
4164
+ "@wordpress/block-serialization-default-parser": "^3.10.0",
4165
+ "@wordpress/compose": "^3.25.0",
4166
+ "@wordpress/data": "^4.27.0",
4167
+ "@wordpress/deprecated": "^2.12.0",
4168
+ "@wordpress/dom": "^2.17.0",
4169
+ "@wordpress/element": "^2.20.0",
4170
+ "@wordpress/hooks": "^2.12.0",
4171
+ "@wordpress/html-entities": "^2.11.0",
4172
+ "@wordpress/i18n": "^3.19.0",
4173
+ "@wordpress/icons": "^2.10.0",
4174
+ "@wordpress/is-shallow-equal": "^3.1.0",
4175
+ "@wordpress/shortcode": "^2.13.0",
4176
+ "hpq": "^1.3.0",
4177
+ "lodash": "^4.17.19",
4178
+ "rememo": "^3.0.0",
4179
+ "showdown": "^1.9.1",
4180
+ "simple-html-tokenizer": "^0.5.7",
4181
+ "tinycolor2": "^1.4.2",
4182
+ "uuid": "^8.3.0"
4183
+ }
4184
+ },
4185
+ "@wordpress/components": {
4186
+ "version": "13.0.0",
4187
+ "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-13.0.0.tgz",
4188
+ "integrity": "sha512-Yyw0bRqFR4GsR7csZ5uGD4QMErq15W19AfDMnOBhcZpFicnSl9hGFLCp97AzcGYWf5Qqx34Zr0TsiepqfPwF3A==",
4189
+ "dev": true,
4190
+ "requires": {
4191
+ "@babel/runtime": "^7.12.5",
4192
+ "@emotion/core": "^10.1.1",
4193
+ "@emotion/css": "^10.0.22",
4194
+ "@emotion/native": "^10.0.22",
4195
+ "@emotion/styled": "^10.0.23",
4196
+ "@wordpress/a11y": "^2.15.0",
4197
+ "@wordpress/compose": "^3.25.0",
4198
+ "@wordpress/date": "^3.14.0",
4199
+ "@wordpress/deprecated": "^2.12.0",
4200
+ "@wordpress/dom": "^2.17.0",
4201
+ "@wordpress/element": "^2.20.0",
4202
+ "@wordpress/hooks": "^2.12.0",
4203
+ "@wordpress/i18n": "^3.19.0",
4204
+ "@wordpress/icons": "^2.10.0",
4205
+ "@wordpress/is-shallow-equal": "^3.1.0",
4206
+ "@wordpress/keycodes": "^2.19.0",
4207
+ "@wordpress/primitives": "^1.12.0",
4208
+ "@wordpress/rich-text": "^3.25.0",
4209
+ "@wordpress/warning": "^1.4.0",
4210
+ "@wp-g2/components": "^0.0.159",
4211
+ "@wp-g2/context": "^0.0.159",
4212
+ "@wp-g2/styles": "^0.0.159",
4213
+ "@wp-g2/utils": "^0.0.159",
4214
+ "classnames": "^2.2.5",
4215
+ "dom-scroll-into-view": "^1.2.1",
4216
+ "downshift": "^6.0.15",
4217
+ "gradient-parser": "^0.1.5",
4218
+ "highlight-words-core": "^1.2.2",
4219
+ "lodash": "^4.17.19",
4220
+ "memize": "^1.1.0",
4221
+ "moment": "^2.22.1",
4222
+ "re-resizable": "^6.4.0",
4223
+ "react-dates": "^17.1.1",
4224
+ "react-resize-aware": "^3.1.0",
4225
+ "react-spring": "^8.0.20",
4226
+ "react-use-gesture": "^9.0.0",
4227
+ "reakit": "^1.3.5",
4228
+ "rememo": "^3.0.0",
4229
+ "tinycolor2": "^1.4.2",
4230
+ "uuid": "^8.3.0"
4231
+ }
4232
+ },
4233
+ "@wordpress/icons": {
4234
+ "version": "2.10.0",
4235
+ "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-2.10.0.tgz",
4236
+ "integrity": "sha512-rLYOmpgOEEB1XBOkaxSkA1IiqH5MTrYOXeZAP4CW116MLLWCOqUHjHY9tC+hQHNYDyfuRFZst+HEj302Eqa9NQ==",
4237
+ "dev": true,
4238
+ "requires": {
4239
+ "@babel/runtime": "^7.12.5",
4240
+ "@wordpress/element": "^2.20.0",
4241
+ "@wordpress/primitives": "^1.12.0"
4242
+ }
4243
+ },
4244
+ "@wordpress/is-shallow-equal": {
4245
+ "version": "3.1.0",
4246
+ "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-3.1.0.tgz",
4247
+ "integrity": "sha512-j1kGZEXzta6ZL9p8i++rYXeuAg4ZSSMXsUhSqloADYXsx/nUslNQMKoaTSKKI49nbzZJhc4lJH1Kp+jZZ086EA==",
4248
+ "dev": true,
4249
+ "requires": {
4250
+ "@babel/runtime": "^7.12.5"
4251
+ }
4252
+ },
4253
+ "downshift": {
4254
+ "version": "6.1.1",
4255
+ "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.1.tgz",
4256
+ "integrity": "sha512-ch8Sh/j7gVqQd7Kcv3A5TkGfldmxmlQrRPZJYWEhzh24+h7WA4vXssuhcGNJrD8YPJlZYQGHcaX8BNhS0IcOvg==",
4257
+ "dev": true,
4258
+ "requires": {
4259
+ "@babel/runtime": "^7.12.5",
4260
+ "compute-scroll-into-view": "^1.0.17",
4261
+ "prop-types": "^15.7.2",
4262
+ "react-is": "^17.0.1"
4263
+ }
4264
+ },
4265
+ "react-is": {
4266
+ "version": "17.0.2",
4267
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
4268
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
4269
+ "dev": true
4270
+ },
4271
+ "react-use-gesture": {
4272
+ "version": "9.1.3",
4273
+ "resolved": "https://registry.npmjs.org/react-use-gesture/-/react-use-gesture-9.1.3.tgz",
4274
+ "integrity": "sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg==",
4275
+ "dev": true
4276
+ },
4277
+ "uuid": {
4278
+ "version": "8.3.2",
4279
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
4280
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
4281
+ "dev": true
4282
+ }
4283
+ }
4284
+ },
4285
+ "@wordpress/shortcode": {
4286
+ "version": "2.13.0",
4287
+ "resolved": "https://registry.npmjs.org/@wordpress/shortcode/-/shortcode-2.13.0.tgz",
4288
+ "integrity": "sha512-aWFZuzT8d39ab78wb1nhFf2ExM3WkXOjufJ4JaDXBxbqVXQjQ03SwmEqcpw3/7rdkQJDl8mrJpWlv/dz8kw1GA==",
4289
+ "dev": true,
4290
+ "requires": {
4291
+ "@babel/runtime": "^7.12.5",
4292
+ "lodash": "^4.17.19",
4293
+ "memize": "^1.1.0"
4294
+ }
4295
+ },
4296
+ "@wordpress/token-list": {
4297
+ "version": "1.15.0",
4298
+ "resolved": "https://registry.npmjs.org/@wordpress/token-list/-/token-list-1.15.0.tgz",
4299
+ "integrity": "sha512-EugIoMt410Pn4KZe7PwPQTJi3HdDgIYtrcR9KzqdhzsrnxSIvy73sZMLw4zJeOiyhEM9nI2gxmqL6BhPLI0HHA==",
4300
+ "dev": true,
4301
+ "requires": {
4302
+ "@babel/runtime": "^7.12.5",
4303
+ "lodash": "^4.17.19"
4304
+ }
4305
+ },
4306
+ "@wordpress/url": {
4307
+ "version": "2.22.0",
4308
+ "resolved": "https://registry.npmjs.org/@wordpress/url/-/url-2.22.0.tgz",
4309
+ "integrity": "sha512-CRQo4+ENF7aMZCJEyP0MP7uJsXTpulxLUA1CMB0MVTuaKDHbj3DYg8bRpx418Yhq8h9SOBQJL0LzFHZXiiuqKQ==",
4310
+ "dev": true,
4311
+ "requires": {
4312
+ "@babel/runtime": "^7.12.5",
4313
+ "lodash": "^4.17.19",
4314
+ "react-native-url-polyfill": "^1.1.2"
4315
+ }
4316
+ },
4317
+ "@wordpress/viewport": {
4318
+ "version": "2.26.0",
4319
+ "resolved": "https://registry.npmjs.org/@wordpress/viewport/-/viewport-2.26.0.tgz",
4320
+ "integrity": "sha512-Vsw0GZyinT81D8271eXVr0OYxKcJK/YrD6NgGhUkmGWSHDBqWes2iu9Wn8n8W+UOvFzAbxU0ufjb52zMGQSxww==",
4321
+ "dev": true,
4322
+ "requires": {
4323
+ "@babel/runtime": "^7.12.5",
4324
+ "@wordpress/compose": "^3.25.0",
4325
+ "@wordpress/data": "^4.27.0",
4326
+ "lodash": "^4.17.19"
4327
+ }
4328
+ },
4329
+ "@wordpress/warning": {
4330
+ "version": "1.4.0",
4331
+ "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-1.4.0.tgz",
4332
+ "integrity": "sha512-Qem8mDHbP/KTX8m/g1k9pU772bxn9KnfMLx8B77ZL0T9VmMHOeBggQj0AEIr0BD18zimY6IzuE+XnE8mlkyzYw==",
4333
+ "dev": true
4334
+ },
4335
+ "@wordpress/wordcount": {
4336
+ "version": "2.15.0",
4337
+ "resolved": "https://registry.npmjs.org/@wordpress/wordcount/-/wordcount-2.15.0.tgz",
4338
+ "integrity": "sha512-1aWYZQUKX5WBjyypw+bhq5IZvB+0in6M85n59WEsn/+0sTlOozd+Ycs09NzOiqqQ+G613qaIGA7XKu53K9oetg==",
4339
+ "dev": true,
4340
+ "requires": {
4341
+ "@babel/runtime": "^7.12.5",
4342
+ "lodash": "^4.17.19"
4343
+ }
4344
+ },
4345
+ "@wp-g2/components": {
4346
+ "version": "0.0.159",
4347
+ "resolved": "https://registry.npmjs.org/@wp-g2/components/-/components-0.0.159.tgz",
4348
+ "integrity": "sha512-FUuQpZxiq7ROfOrPcCcru3znc82r9VtVRSAACQpadRswIYr9aTaedWOCnaI0QU32rs51nh4bc2LwalZVtE7nkg==",
4349
+ "dev": true,
4350
+ "requires": {
4351
+ "@popperjs/core": "^2.5.4",
4352
+ "@wp-g2/context": "^0.0.159",
4353
+ "@wp-g2/styles": "^0.0.159",
4354
+ "@wp-g2/utils": "^0.0.159",
4355
+ "csstype": "^3.0.3",
4356
+ "downshift": "^6.0.15",
4357
+ "framer-motion": "^2.1.0",
4358
+ "highlight-words-core": "^1.2.2",
4359
+ "history": "^4.9.0",
4360
+ "lodash": "^4.17.19",
4361
+ "path-to-regexp": "^1.7.0",
4362
+ "react-colorful": "4.4.4",
4363
+ "react-textarea-autosize": "^8.2.0",
4364
+ "react-use-gesture": "^9.0.0",
4365
+ "reakit": "^1.3.4"
4366
+ },
4367
+ "dependencies": {
4368
+ "downshift": {
4369
+ "version": "6.1.1",
4370
+ "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.1.tgz",
4371
+ "integrity": "sha512-ch8Sh/j7gVqQd7Kcv3A5TkGfldmxmlQrRPZJYWEhzh24+h7WA4vXssuhcGNJrD8YPJlZYQGHcaX8BNhS0IcOvg==",
4372
+ "dev": true,
4373
+ "requires": {
4374
+ "@babel/runtime": "^7.12.5",
4375
+ "compute-scroll-into-view": "^1.0.17",
4376
+ "prop-types": "^15.7.2",
4377
+ "react-is": "^17.0.1"
4378
+ }
4379
+ },
4380
+ "react-is": {
4381
+ "version": "17.0.2",
4382
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
4383
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
4384
+ "dev": true
4385
+ },
4386
+ "react-use-gesture": {
4387
+ "version": "9.1.3",
4388
+ "resolved": "https://registry.npmjs.org/react-use-gesture/-/react-use-gesture-9.1.3.tgz",
4389
+ "integrity": "sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg==",
4390
+ "dev": true
4391
+ }
4392
+ }
4393
+ },
4394
+ "@wp-g2/context": {
4395
+ "version": "0.0.159",
4396
+ "resolved": "https://registry.npmjs.org/@wp-g2/context/-/context-0.0.159.tgz",
4397
+ "integrity": "sha512-FyWg2u2yjUfzoNv3W8L+JQKojYuYrauNU0SidqbGaPMrk5ftSkRHisCxiYQgfeBUSPVvEIVfIDacDfHZ6QjI8A==",
4398
+ "dev": true,
4399
+ "requires": {
4400
+ "@emotion/hash": "^0.8.0",
4401
+ "@wp-g2/styles": "^0.0.159",
4402
+ "@wp-g2/utils": "^0.0.159",
4403
+ "lodash": "^4.17.19"
4404
+ }
4405
+ },
4406
+ "@wp-g2/create-styles": {
4407
+ "version": "0.0.159",
4408
+ "resolved": "https://registry.npmjs.org/@wp-g2/create-styles/-/create-styles-0.0.159.tgz",
4409
+ "integrity": "sha512-cdoasY3TS2LoBHK/Erw57gcHAYex2csKULLoFcvlttMBMhsLT0tQWz6aJjJDFCW1QZAjjIuk+FXByOxyZwo2cg==",
4410
+ "dev": true,
4411
+ "requires": {
4412
+ "@emotion/core": "^10.1.1",
4413
+ "@emotion/hash": "^0.8.0",
4414
+ "@emotion/is-prop-valid": "^0.8.8",
4415
+ "@wp-g2/utils": "^0.0.159",
4416
+ "create-emotion": "^10.0.27",
4417
+ "emotion": "^10.0.27",
4418
+ "emotion-theming": "^10.0.27",
4419
+ "lodash": "^4.17.19",
4420
+ "mitt": "^2.1.0",
4421
+ "rtlcss": "^2.6.2",
4422
+ "styled-griddie": "^0.1.3"
4423
+ }
4424
+ },
4425
+ "@wp-g2/styles": {
4426
+ "version": "0.0.159",
4427
+ "resolved": "https://registry.npmjs.org/@wp-g2/styles/-/styles-0.0.159.tgz",
4428
+ "integrity": "sha512-ZjhAKuLwNa+l5fJgwGzu7UzsUGJcW9D1EdfORKbGBv7Jw4+6P5xk+qf4CNYN6u3EE3J5r//CTF16f6Pbj2pjKg==",
4429
+ "dev": true,
4430
+ "requires": {
4431
+ "@wp-g2/create-styles": "^0.0.159",
4432
+ "@wp-g2/utils": "^0.0.159"
4433
+ }
4434
+ },
4435
+ "@wp-g2/utils": {
4436
+ "version": "0.0.159",
4437
+ "resolved": "https://registry.npmjs.org/@wp-g2/utils/-/utils-0.0.159.tgz",
4438
+ "integrity": "sha512-0bkbB1o+4J3qShVl5STiWVN9xl2+/LtiEi/sC4yx/yeFXN31Cr/HKtGVIjil2aRkL8Dk7imbaSJoMIyH5LfvsA==",
4439
+ "dev": true,
4440
+ "requires": {
4441
+ "copy-to-clipboard": "^3.3.1",
4442
+ "create-emotion": "^10.0.27",
4443
+ "deepmerge": "^4.2.2",
4444
+ "fast-deep-equal": "^3.1.3",
4445
+ "hoist-non-react-statics": "^3.3.2",
4446
+ "json2mq": "^0.2.0",
4447
+ "lodash": "^4.17.19",
4448
+ "memize": "^1.1.0",
4449
+ "react-merge-refs": "^1.1.0",
4450
+ "react-resize-aware": "^3.1.0",
4451
+ "tinycolor2": "^1.4.2",
4452
+ "use-enhanced-state": "^0.0.13",
4453
+ "use-isomorphic-layout-effect": "^1.0.0"
4454
+ }
4455
+ },
4456
+ "@xtuc/ieee754": {
4457
+ "version": "1.2.0",
4458
+ "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
4459
+ "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
4460
+ "dev": true
4461
+ },
4462
+ "@xtuc/long": {
4463
+ "version": "4.2.2",
4464
+ "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
4465
+ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
4466
+ "dev": true
4467
+ },
4468
+ "abbrev": {
4469
+ "version": "1.1.1",
4470
+ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
4471
+ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
4472
+ "dev": true
4473
+ },
4474
+ "acorn": {
4475
+ "version": "7.4.1",
4476
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
4477
+ "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
4478
+ "dev": true
4479
+ },
4480
+ "acorn-jsx": {
4481
+ "version": "5.3.1",
4482
+ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz",
4483
+ "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==",
4484
+ "dev": true
4485
+ },
4486
+ "aggregate-error": {
4487
+ "version": "3.1.0",
4488
+ "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
4489
+ "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
4490
+ "requires": {
4491
+ "clean-stack": "^2.0.0",
4492
+ "indent-string": "^4.0.0"
4493
+ },
4494
+ "dependencies": {
4495
+ "indent-string": {
4496
+ "version": "4.0.0",
4497
+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
4498
+ "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg=="
4499
+ }
4500
+ }
4501
+ },
4502
+ "airbnb-prop-types": {
4503
+ "version": "2.16.0",
4504
+ "resolved": "https://registry.npmjs.org/airbnb-prop-types/-/airbnb-prop-types-2.16.0.tgz",
4505
+ "integrity": "sha512-7WHOFolP/6cS96PhKNrslCLMYAI8yB1Pp6u6XmxozQOiZbsI5ycglZr5cHhBFfuRcQQjzCMith5ZPZdYiJCxUg==",
4506
+ "dev": true,
4507
+ "requires": {
4508
+ "array.prototype.find": "^2.1.1",
4509
+ "function.prototype.name": "^1.1.2",
4510
+ "is-regex": "^1.1.0",
4511
+ "object-is": "^1.1.2",
4512
+ "object.assign": "^4.1.0",
4513
+ "object.entries": "^1.1.2",
4514
+ "prop-types": "^15.7.2",
4515
+ "prop-types-exact": "^1.2.0",
4516
+ "react-is": "^16.13.1"
4517
+ }
4518
+ },
4519
+ "ajv": {
4520
+ "version": "6.12.6",
4521
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
4522
+ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
4523
+ "dev": true,
4524
+ "requires": {
4525
+ "fast-deep-equal": "^3.1.1",
4526
+ "fast-json-stable-stringify": "^2.0.0",
4527
+ "json-schema-traverse": "^0.4.1",
4528
+ "uri-js": "^4.2.2"
4529
+ }
4530
+ },
4531
+ "ajv-keywords": {
4532
+ "version": "3.5.2",
4533
+ "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
4534
+ "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
4535
+ "dev": true
4536
+ },
4537
+ "amdefine": {
4538
+ "version": "1.0.1",
4539
+ "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
4540
+ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
4541
+ "dev": true
4542
+ },
4543
+ "ansi-colors": {
4544
+ "version": "4.1.1",
4545
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
4546
+ "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
4547
+ "dev": true
4548
+ },
4549
+ "ansi-regex": {
4550
+ "version": "2.1.1",
4551
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
4552
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
4553
+ },
4554
+ "ansi-styles": {
4555
+ "version": "2.2.1",
4556
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
4557
+ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4="
4558
+ },
4559
+ "anymatch": {
4560
+ "version": "2.0.0",
4561
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
4562
+ "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
4563
+ "dev": true,
4564
+ "requires": {
4565
+ "micromatch": "^3.1.4",
4566
+ "normalize-path": "^2.1.1"
4567
+ },
4568
+ "dependencies": {
4569
+ "braces": {
4570
+ "version": "2.3.2",
4571
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
4572
+ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
4573
+ "dev": true,
4574
+ "requires": {
4575
+ "arr-flatten": "^1.1.0",
4576
+ "array-unique": "^0.3.2",
4577
+ "extend-shallow": "^2.0.1",
4578
+ "fill-range": "^4.0.0",
4579
+ "isobject": "^3.0.1",
4580
+ "repeat-element": "^1.1.2",
4581
+ "snapdragon": "^0.8.1",
4582
+ "snapdragon-node": "^2.0.1",
4583
+ "split-string": "^3.0.2",
4584
+ "to-regex": "^3.0.1"
4585
+ },
4586
+ "dependencies": {
4587
+ "extend-shallow": {
4588
+ "version": "2.0.1",
4589
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
4590
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
4591
+ "dev": true,
4592
+ "requires": {
4593
+ "is-extendable": "^0.1.0"
4594
+ }
4595
+ }
4596
+ }
4597
+ },
4598
+ "fill-range": {
4599
+ "version": "4.0.0",
4600
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
4601
+ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
4602
+ "dev": true,
4603
+ "requires": {
4604
+ "extend-shallow": "^2.0.1",
4605
+ "is-number": "^3.0.0",
4606
+ "repeat-string": "^1.6.1",
4607
+ "to-regex-range": "^2.1.0"
4608
+ },
4609
+ "dependencies": {
4610
+ "extend-shallow": {
4611
+ "version": "2.0.1",
4612
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
4613
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
4614
+ "dev": true,
4615
+ "requires": {
4616
+ "is-extendable": "^0.1.0"
4617
+ }
4618
+ }
4619
+ }
4620
+ },
4621
+ "is-number": {
4622
+ "version": "3.0.0",
4623
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
4624
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
4625
+ "dev": true,
4626
+ "requires": {
4627
+ "kind-of": "^3.0.2"
4628
+ },
4629
+ "dependencies": {
4630
+ "kind-of": {
4631
+ "version": "3.2.2",
4632
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
4633
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
4634
+ "dev": true,
4635
+ "requires": {
4636
+ "is-buffer": "^1.1.5"
4637
+ }
4638
+ }
4639
+ }
4640
+ },
4641
+ "micromatch": {
4642
+ "version": "3.1.10",
4643
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
4644
+ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
4645
+ "dev": true,
4646
+ "requires": {
4647
+ "arr-diff": "^4.0.0",
4648
+ "array-unique": "^0.3.2",
4649
+ "braces": "^2.3.1",
4650
+ "define-property": "^2.0.2",
4651
+ "extend-shallow": "^3.0.2",
4652
+ "extglob": "^2.0.4",
4653
+ "fragment-cache": "^0.2.1",
4654
+ "kind-of": "^6.0.2",
4655
+ "nanomatch": "^1.2.9",
4656
+ "object.pick": "^1.3.0",
4657
+ "regex-not": "^1.0.0",
4658
+ "snapdragon": "^0.8.1",
4659
+ "to-regex": "^3.0.2"
4660
+ }
4661
+ },
4662
+ "normalize-path": {
4663
+ "version": "2.1.1",
4664
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
4665
+ "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
4666
+ "dev": true,
4667
+ "requires": {
4668
+ "remove-trailing-separator": "^1.0.1"
4669
+ }
4670
+ },
4671
+ "to-regex-range": {
4672
+ "version": "2.1.1",
4673
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
4674
+ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
4675
+ "dev": true,
4676
+ "requires": {
4677
+ "is-number": "^3.0.0",
4678
+ "repeat-string": "^1.6.1"
4679
+ }
4680
+ }
4681
+ }
4682
+ },
4683
+ "aproba": {
4684
+ "version": "1.2.0",
4685
+ "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
4686
+ "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="
4687
+ },
4688
+ "arch": {
4689
+ "version": "2.2.0",
4690
+ "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz",
4691
+ "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ=="
4692
+ },
4693
+ "archive-type": {
4694
+ "version": "4.0.0",
4695
+ "resolved": "https://registry.npmjs.org/archive-type/-/archive-type-4.0.0.tgz",
4696
+ "integrity": "sha1-+S5yIzBW38aWlHJ0nCZ72wRrHXA=",
4697
+ "requires": {
4698
+ "file-type": "^4.2.0"
4699
+ },
4700
+ "dependencies": {
4701
+ "file-type": {
4702
+ "version": "4.4.0",
4703
+ "resolved": "https://registry.npmjs.org/file-type/-/file-type-4.4.0.tgz",
4704
+ "integrity": "sha1-G2AOX8ofvcboDApwxxyNul95BsU="
4705
+ }
4706
+ }
4707
+ },
4708
+ "are-we-there-yet": {
4709
+ "version": "1.1.5",
4710
+ "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz",
4711
+ "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==",
4712
+ "dev": true,
4713
+ "requires": {
4714
+ "delegates": "^1.0.0",
4715
+ "readable-stream": "^2.0.6"
4716
+ }
4717
+ },
4718
+ "argparse": {
4719
+ "version": "1.0.10",
4720
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
4721
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
4722
+ "dev": true,
4723
+ "requires": {
4724
+ "sprintf-js": "~1.0.2"
4725
+ }
4726
+ },
4727
+ "arr-diff": {
4728
+ "version": "4.0.0",
4729
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
4730
+ "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
4731
+ "dev": true
4732
+ },
4733
+ "arr-flatten": {
4734
+ "version": "1.1.0",
4735
+ "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
4736
+ "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
4737
+ "dev": true
4738
+ },
4739
+ "arr-union": {
4740
+ "version": "3.1.0",
4741
+ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
4742
+ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
4743
+ "dev": true
4744
+ },
4745
+ "array-filter": {
4746
+ "version": "1.0.0",
4747
+ "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz",
4748
+ "integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=",
4749
+ "dev": true
4750
+ },
4751
+ "array-find-index": {
4752
+ "version": "1.0.2",
4753
+ "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
4754
+ "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E="
4755
+ },
4756
+ "array-includes": {
4757
+ "version": "3.1.3",
4758
+ "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz",
4759
+ "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==",
4760
+ "dev": true,
4761
+ "requires": {
4762
+ "call-bind": "^1.0.2",
4763
+ "define-properties": "^1.1.3",
4764
+ "es-abstract": "^1.18.0-next.2",
4765
+ "get-intrinsic": "^1.1.1",
4766
+ "is-string": "^1.0.5"
4767
+ }
4768
+ },
4769
+ "array-union": {
4770
+ "version": "2.1.0",
4771
+ "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
4772
+ "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw=="
4773
+ },
4774
+ "array-unique": {
4775
+ "version": "0.3.2",
4776
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
4777
+ "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
4778
+ "dev": true
4779
+ },
4780
+ "array.prototype.find": {
4781
+ "version": "2.1.1",
4782
+ "resolved": "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.1.1.tgz",
4783
+ "integrity": "sha512-mi+MYNJYLTx2eNYy+Yh6raoQacCsNeeMUaspFPh9Y141lFSsWxxB8V9mM2ye+eqiRs917J6/pJ4M9ZPzenWckA==",
4784
+ "dev": true,
4785
+ "requires": {
4786
+ "define-properties": "^1.1.3",
4787
+ "es-abstract": "^1.17.4"
4788
+ }
4789
+ },
4790
+ "array.prototype.flat": {
4791
+ "version": "1.2.4",
4792
+ "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz",
4793
+ "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==",
4794
+ "dev": true,
4795
+ "requires": {
4796
+ "call-bind": "^1.0.0",
4797
+ "define-properties": "^1.1.3",
4798
+ "es-abstract": "^1.18.0-next.1"
4799
+ }
4800
+ },
4801
+ "array.prototype.flatmap": {
4802
+ "version": "1.2.4",
4803
+ "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz",
4804
+ "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==",
4805
+ "dev": true,
4806
+ "requires": {
4807
+ "call-bind": "^1.0.0",
4808
+ "define-properties": "^1.1.3",
4809
+ "es-abstract": "^1.18.0-next.1",
4810
+ "function-bind": "^1.1.1"
4811
+ }
4812
+ },
4813
+ "asap": {
4814
+ "version": "2.0.6",
4815
+ "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
4816
+ "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
4817
+ "dev": true
4818
+ },
4819
+ "asn1": {
4820
+ "version": "0.2.4",
4821
+ "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
4822
+ "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
4823
+ "dev": true,
4824
+ "requires": {
4825
+ "safer-buffer": "~2.1.0"
4826
+ }
4827
+ },
4828
+ "assert-plus": {
4829
+ "version": "1.0.0",
4830
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
4831
+ "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
4832
+ "dev": true
4833
+ },
4834
+ "assign-symbols": {
4835
+ "version": "1.0.0",
4836
+ "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
4837
+ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
4838
+ "dev": true
4839
+ },
4840
+ "astral-regex": {
4841
+ "version": "2.0.0",
4842
+ "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
4843
+ "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
4844
+ "dev": true
4845
+ },
4846
+ "async-each": {
4847
+ "version": "1.0.3",
4848
+ "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz",
4849
+ "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==",
4850
+ "dev": true,
4851
+ "optional": true
4852
+ },
4853
+ "async-foreach": {
4854
+ "version": "0.1.3",
4855
+ "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
4856
+ "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=",
4857
+ "dev": true
4858
+ },
4859
+ "asynckit": {
4860
+ "version": "0.4.0",
4861
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
4862
+ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
4863
+ "dev": true
4864
+ },
4865
+ "atob": {
4866
+ "version": "2.1.2",
4867
+ "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
4868
+ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
4869
+ "dev": true
4870
+ },
4871
+ "autoprefixer": {
4872
+ "version": "10.2.5",
4873
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.2.5.tgz",
4874
+ "integrity": "sha512-7H4AJZXvSsn62SqZyJCP+1AWwOuoYpUfK6ot9vm0e87XD6mT8lDywc9D9OTJPMULyGcvmIxzTAMeG2Cc+YX+fA==",
4875
+ "dev": true,
4876
+ "requires": {
4877
+ "browserslist": "^4.16.3",
4878
+ "caniuse-lite": "^1.0.30001196",
4879
+ "colorette": "^1.2.2",
4880
+ "fraction.js": "^4.0.13",
4881
+ "normalize-range": "^0.1.2",
4882
+ "postcss-value-parser": "^4.1.0"
4883
+ },
4884
+ "dependencies": {
4885
+ "postcss-value-parser": {
4886
+ "version": "4.1.0",
4887
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz",
4888
+ "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
4889
+ "dev": true
4890
+ }
4891
+ }
4892
+ },
4893
+ "autosize": {
4894
+ "version": "4.0.2",
4895
+ "resolved": "https://registry.npmjs.org/autosize/-/autosize-4.0.2.tgz",
4896
+ "integrity": "sha512-jnSyH2d+qdfPGpWlcuhGiHmqBJ6g3X+8T+iRwFrHPLVcdoGJE/x6Qicm6aDHfTsbgZKxyV8UU/YB2p4cjKDRRA==",
4897
+ "dev": true
4898
+ },
4899
+ "aws-sign2": {
4900
+ "version": "0.7.0",
4901
+ "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
4902
+ "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
4903
+ "dev": true
4904
+ },
4905
+ "aws4": {
4906
+ "version": "1.11.0",
4907
+ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz",
4908
+ "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==",
4909
+ "dev": true
4910
+ },
4911
+ "axios": {
4912
+ "version": "0.21.1",
4913
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
4914
+ "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
4915
+ "requires": {
4916
+ "follow-redirects": "^1.10.0"
4917
+ }
4918
+ },
4919
+ "babel-jest": {
4920
+ "version": "26.6.3",
4921
+ "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz",
4922
+ "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==",
4923
+ "dev": true,
4924
+ "requires": {
4925
+ "@jest/transform": "^26.6.2",
4926
+ "@jest/types": "^26.6.2",
4927
+ "@types/babel__core": "^7.1.7",
4928
+ "babel-plugin-istanbul": "^6.0.0",
4929
+ "babel-preset-jest": "^26.6.2",
4930
+ "chalk": "^4.0.0",
4931
+ "graceful-fs": "^4.2.4",
4932
+ "slash": "^3.0.0"
4933
+ },
4934
+ "dependencies": {
4935
+ "ansi-styles": {
4936
+ "version": "4.3.0",
4937
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
4938
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
4939
+ "dev": true,
4940
+ "requires": {
4941
+ "color-convert": "^2.0.1"
4942
+ }
4943
+ },
4944
+ "chalk": {
4945
+ "version": "4.1.0",
4946
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
4947
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
4948
+ "dev": true,
4949
+ "requires": {
4950
+ "ansi-styles": "^4.1.0",
4951
+ "supports-color": "^7.1.0"
4952
+ }
4953
+ },
4954
+ "color-convert": {
4955
+ "version": "2.0.1",
4956
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
4957
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
4958
+ "dev": true,
4959
+ "requires": {
4960
+ "color-name": "~1.1.4"
4961
+ }
4962
+ },
4963
+ "color-name": {
4964
+ "version": "1.1.4",
4965
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
4966
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
4967
+ "dev": true
4968
+ },
4969
+ "has-flag": {
4970
+ "version": "4.0.0",
4971
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
4972
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
4973
+ "dev": true
4974
+ },
4975
+ "supports-color": {
4976
+ "version": "7.2.0",
4977
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
4978
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
4979
+ "dev": true,
4980
+ "requires": {
4981
+ "has-flag": "^4.0.0"
4982
+ }
4983
+ }
4984
+ }
4985
+ },
4986
+ "babel-loader": {
4987
+ "version": "8.2.2",
4988
+ "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.2.tgz",
4989
+ "integrity": "sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g==",
4990
+ "dev": true,
4991
+ "requires": {
4992
+ "find-cache-dir": "^3.3.1",
4993
+ "loader-utils": "^1.4.0",
4994
+ "make-dir": "^3.1.0",
4995
+ "schema-utils": "^2.6.5"
4996
+ },
4997
+ "dependencies": {
4998
+ "make-dir": {
4999
+ "version": "3.1.0",
5000
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
5001
+ "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
5002
+ "dev": true,
5003
+ "requires": {
5004
+ "semver": "^6.0.0"
5005
+ }
5006
+ },
5007
+ "semver": {
5008
+ "version": "6.3.0",
5009
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
5010
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
5011
+ "dev": true
5012
+ }
5013
+ }
5014
+ },
5015
+ "babel-plugin-dynamic-import-node": {
5016
+ "version": "2.3.3",
5017
+ "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
5018
+ "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==",
5019
+ "dev": true,
5020
+ "requires": {
5021
+ "object.assign": "^4.1.0"
5022
+ }
5023
+ },
5024
+ "babel-plugin-emotion": {
5025
+ "version": "10.2.2",
5026
+ "resolved": "https://registry.npmjs.org/babel-plugin-emotion/-/babel-plugin-emotion-10.2.2.tgz",
5027
+ "integrity": "sha512-SMSkGoqTbTyUTDeuVuPIWifPdUGkTk1Kf9BWRiXIOIcuyMfsdp2EjeiiFvOzX8NOBvEh/ypKYvUh2rkgAJMCLA==",
5028
+ "dev": true,
5029
+ "requires": {
5030
+ "@babel/helper-module-imports": "^7.0.0",
5031
+ "@emotion/hash": "0.8.0",
5032
+ "@emotion/memoize": "0.7.4",
5033
+ "@emotion/serialize": "^0.11.16",
5034
+ "babel-plugin-macros": "^2.0.0",
5035
+ "babel-plugin-syntax-jsx": "^6.18.0",
5036
+ "convert-source-map": "^1.5.0",
5037
+ "escape-string-regexp": "^1.0.5",
5038
+ "find-root": "^1.1.0",
5039
+ "source-map": "^0.5.7"
5040
+ },
5041
+ "dependencies": {
5042
+ "source-map": {
5043
+ "version": "0.5.7",
5044
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
5045
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
5046
+ "dev": true
5047
+ }
5048
+ }
5049
+ },
5050
+ "babel-plugin-istanbul": {
5051
+ "version": "6.0.0",
5052
+ "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz",
5053
+ "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==",
5054
+ "dev": true,
5055
+ "requires": {
5056
+ "@babel/helper-plugin-utils": "^7.0.0",
5057
+ "@istanbuljs/load-nyc-config": "^1.0.0",
5058
+ "@istanbuljs/schema": "^0.1.2",
5059
+ "istanbul-lib-instrument": "^4.0.0",
5060
+ "test-exclude": "^6.0.0"
5061
+ }
5062
+ },
5063
+ "babel-plugin-jest-hoist": {
5064
+ "version": "26.6.2",
5065
+ "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz",
5066
+ "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==",
5067
+ "dev": true,
5068
+ "requires": {
5069
+ "@babel/template": "^7.3.3",
5070
+ "@babel/types": "^7.3.3",
5071
+ "@types/babel__core": "^7.0.0",
5072
+ "@types/babel__traverse": "^7.0.6"
5073
+ }
5074
+ },
5075
+ "babel-plugin-macros": {
5076
+ "version": "2.8.0",
5077
+ "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz",
5078
+ "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==",
5079
+ "dev": true,
5080
+ "requires": {
5081
+ "@babel/runtime": "^7.7.2",
5082
+ "cosmiconfig": "^6.0.0",
5083
+ "resolve": "^1.12.0"
5084
+ },
5085
+ "dependencies": {
5086
+ "cosmiconfig": {
5087
+ "version": "6.0.0",
5088
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
5089
+ "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
5090
+ "dev": true,
5091
+ "requires": {
5092
+ "@types/parse-json": "^4.0.0",
5093
+ "import-fresh": "^3.1.0",
5094
+ "parse-json": "^5.0.0",
5095
+ "path-type": "^4.0.0",
5096
+ "yaml": "^1.7.2"
5097
+ }
5098
+ },
5099
+ "import-fresh": {
5100
+ "version": "3.3.0",
5101
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
5102
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
5103
+ "dev": true,
5104
+ "requires": {
5105
+ "parent-module": "^1.0.0",
5106
+ "resolve-from": "^4.0.0"
5107
+ }
5108
+ },
5109
+ "parse-json": {
5110
+ "version": "5.2.0",
5111
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
5112
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
5113
+ "dev": true,
5114
+ "requires": {
5115
+ "@babel/code-frame": "^7.0.0",
5116
+ "error-ex": "^1.3.1",
5117
+ "json-parse-even-better-errors": "^2.3.0",
5118
+ "lines-and-columns": "^1.1.6"
5119
+ }
5120
+ },
5121
+ "path-type": {
5122
+ "version": "4.0.0",
5123
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
5124
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
5125
+ "dev": true
5126
+ },
5127
+ "resolve-from": {
5128
+ "version": "4.0.0",
5129
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
5130
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
5131
+ "dev": true
5132
+ }
5133
+ }
5134
+ },
5135
+ "babel-plugin-polyfill-corejs2": {
5136
+ "version": "0.1.10",
5137
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.1.10.tgz",
5138
+ "integrity": "sha512-DO95wD4g0A8KRaHKi0D51NdGXzvpqVLnLu5BTvDlpqUEpTmeEtypgC1xqesORaWmiUOQI14UHKlzNd9iZ2G3ZA==",
5139
+ "dev": true,
5140
+ "requires": {
5141
+ "@babel/compat-data": "^7.13.0",
5142
+ "@babel/helper-define-polyfill-provider": "^0.1.5",
5143
+ "semver": "^6.1.1"
5144
+ },
5145
+ "dependencies": {
5146
+ "semver": {
5147
+ "version": "6.3.0",
5148
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
5149
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
5150
+ "dev": true
5151
+ }
5152
+ }
5153
+ },
5154
+ "babel-plugin-polyfill-corejs3": {
5155
+ "version": "0.1.7",
5156
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.1.7.tgz",
5157
+ "integrity": "sha512-u+gbS9bbPhZWEeyy1oR/YaaSpod/KDT07arZHb80aTpl8H5ZBq+uN1nN9/xtX7jQyfLdPfoqI4Rue/MQSWJquw==",
5158
+ "dev": true,
5159
+ "requires": {
5160
+ "@babel/helper-define-polyfill-provider": "^0.1.5",
5161
+ "core-js-compat": "^3.8.1"
5162
+ }
5163
+ },
5164
+ "babel-plugin-polyfill-regenerator": {
5165
+ "version": "0.1.6",
5166
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.1.6.tgz",
5167
+ "integrity": "sha512-OUrYG9iKPKz8NxswXbRAdSwF0GhRdIEMTloQATJi4bDuFqrXaXcCUT/VGNrr8pBcjMh1RxZ7Xt9cytVJTJfvMg==",
5168
+ "dev": true,
5169
+ "requires": {
5170
+ "@babel/helper-define-polyfill-provider": "^0.1.5"
5171
+ }
5172
+ },
5173
+ "babel-plugin-syntax-jsx": {
5174
+ "version": "6.18.0",
5175
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz",
5176
+ "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=",
5177
+ "dev": true
5178
+ },
5179
+ "babel-preset-current-node-syntax": {
5180
+ "version": "1.0.1",
5181
+ "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz",
5182
+ "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==",
5183
+ "dev": true,
5184
+ "requires": {
5185
+ "@babel/plugin-syntax-async-generators": "^7.8.4",
5186
+ "@babel/plugin-syntax-bigint": "^7.8.3",
5187
+ "@babel/plugin-syntax-class-properties": "^7.8.3",
5188
+ "@babel/plugin-syntax-import-meta": "^7.8.3",
5189
+ "@babel/plugin-syntax-json-strings": "^7.8.3",
5190
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3",
5191
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
5192
+ "@babel/plugin-syntax-numeric-separator": "^7.8.3",
5193
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
5194
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
5195
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3",
5196
+ "@babel/plugin-syntax-top-level-await": "^7.8.3"
5197
+ }
5198
+ },
5199
+ "babel-preset-jest": {
5200
+ "version": "26.6.2",
5201
+ "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz",
5202
+ "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==",
5203
+ "dev": true,
5204
+ "requires": {
5205
+ "babel-plugin-jest-hoist": "^26.6.2",
5206
+ "babel-preset-current-node-syntax": "^1.0.0"
5207
+ }
5208
+ },
5209
+ "balanced-match": {
5210
+ "version": "1.0.0",
5211
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
5212
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
5213
+ },
5214
+ "base": {
5215
+ "version": "0.11.2",
5216
+ "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
5217
+ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
5218
+ "dev": true,
5219
+ "requires": {
5220
+ "cache-base": "^1.0.1",
5221
+ "class-utils": "^0.3.5",
5222
+ "component-emitter": "^1.2.1",
5223
+ "define-property": "^1.0.0",
5224
+ "isobject": "^3.0.1",
5225
+ "mixin-deep": "^1.2.0",
5226
+ "pascalcase": "^0.1.1"
5227
+ },
5228
+ "dependencies": {
5229
+ "define-property": {
5230
+ "version": "1.0.0",
5231
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
5232
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
5233
+ "dev": true,
5234
+ "requires": {
5235
+ "is-descriptor": "^1.0.0"
5236
+ }
5237
+ },
5238
+ "is-accessor-descriptor": {
5239
+ "version": "1.0.0",
5240
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
5241
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
5242
+ "dev": true,
5243
+ "requires": {
5244
+ "kind-of": "^6.0.0"
5245
+ }
5246
+ },
5247
+ "is-data-descriptor": {
5248
+ "version": "1.0.0",
5249
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
5250
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
5251
+ "dev": true,
5252
+ "requires": {
5253
+ "kind-of": "^6.0.0"
5254
+ }
5255
+ },
5256
+ "is-descriptor": {
5257
+ "version": "1.0.2",
5258
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
5259
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
5260
+ "dev": true,
5261
+ "requires": {
5262
+ "is-accessor-descriptor": "^1.0.0",
5263
+ "is-data-descriptor": "^1.0.0",
5264
+ "kind-of": "^6.0.2"
5265
+ }
5266
+ }
5267
+ }
5268
+ },
5269
+ "base64-js": {
5270
+ "version": "1.5.1",
5271
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
5272
+ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
5273
+ },
5274
+ "bcrypt-pbkdf": {
5275
+ "version": "1.0.2",
5276
+ "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
5277
+ "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
5278
+ "dev": true,
5279
+ "requires": {
5280
+ "tweetnacl": "^0.14.3"
5281
+ }
5282
+ },
5283
+ "big.js": {
5284
+ "version": "5.2.2",
5285
+ "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
5286
+ "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ=="
5287
+ },
5288
+ "bin-build": {
5289
+ "version": "3.0.0",
5290
+ "resolved": "https://registry.npmjs.org/bin-build/-/bin-build-3.0.0.tgz",
5291
+ "integrity": "sha512-jcUOof71/TNAI2uM5uoUaDq2ePcVBQ3R/qhxAz1rX7UfvduAL/RXD3jXzvn8cVcDJdGVkiR1shal3OH0ImpuhA==",
5292
+ "requires": {
5293
+ "decompress": "^4.0.0",
5294
+ "download": "^6.2.2",
5295
+ "execa": "^0.7.0",
5296
+ "p-map-series": "^1.0.0",
5297
+ "tempfile": "^2.0.0"
5298
+ },
5299
+ "dependencies": {
5300
+ "cross-spawn": {
5301
+ "version": "5.1.0",
5302
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
5303
+ "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
5304
+ "requires": {
5305
+ "lru-cache": "^4.0.1",
5306
+ "shebang-command": "^1.2.0",
5307
+ "which": "^1.2.9"
5308
+ }
5309
+ },
5310
+ "execa": {
5311
+ "version": "0.7.0",
5312
+ "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz",
5313
+ "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=",
5314
+ "requires": {
5315
+ "cross-spawn": "^5.0.1",
5316
+ "get-stream": "^3.0.0",
5317
+ "is-stream": "^1.1.0",
5318
+ "npm-run-path": "^2.0.0",
5319
+ "p-finally": "^1.0.0",
5320
+ "signal-exit": "^3.0.0",
5321
+ "strip-eof": "^1.0.0"
5322
+ }
5323
+ },
5324
+ "get-stream": {
5325
+ "version": "3.0.0",
5326
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
5327
+ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ="
5328
+ },
5329
+ "is-stream": {
5330
+ "version": "1.1.0",
5331
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
5332
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
5333
+ },
5334
+ "npm-run-path": {
5335
+ "version": "2.0.2",
5336
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
5337
+ "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
5338
+ "requires": {
5339
+ "path-key": "^2.0.0"
5340
+ }
5341
+ },
5342
+ "path-key": {
5343
+ "version": "2.0.1",
5344
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
5345
+ "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A="
5346
+ },
5347
+ "shebang-command": {
5348
+ "version": "1.2.0",
5349
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
5350
+ "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
5351
+ "requires": {
5352
+ "shebang-regex": "^1.0.0"
5353
+ }
5354
+ },
5355
+ "shebang-regex": {
5356
+ "version": "1.0.0",
5357
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
5358
+ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM="
5359
+ },
5360
+ "which": {
5361
+ "version": "1.3.1",
5362
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
5363
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
5364
+ "requires": {
5365
+ "isexe": "^2.0.0"
5366
+ }
5367
+ }
5368
+ }
5369
+ },
5370
+ "bin-check": {
5371
+ "version": "4.1.0",
5372
+ "resolved": "https://registry.npmjs.org/bin-check/-/bin-check-4.1.0.tgz",
5373
+ "integrity": "sha512-b6weQyEUKsDGFlACWSIOfveEnImkJyK/FGW6FAG42loyoquvjdtOIqO6yBFzHyqyVVhNgNkQxxx09SFLK28YnA==",
5374
+ "requires": {
5375
+ "execa": "^0.7.0",
5376
+ "executable": "^4.1.0"
5377
+ },
5378
+ "dependencies": {
5379
+ "cross-spawn": {
5380
+ "version": "5.1.0",
5381
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
5382
+ "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
5383
+ "requires": {
5384
+ "lru-cache": "^4.0.1",
5385
+ "shebang-command": "^1.2.0",
5386
+ "which": "^1.2.9"
5387
+ }
5388
+ },
5389
+ "execa": {
5390
+ "version": "0.7.0",
5391
+ "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz",
5392
+ "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=",
5393
+ "requires": {
5394
+ "cross-spawn": "^5.0.1",
5395
+ "get-stream": "^3.0.0",
5396
+ "is-stream": "^1.1.0",
5397
+ "npm-run-path": "^2.0.0",
5398
+ "p-finally": "^1.0.0",
5399
+ "signal-exit": "^3.0.0",
5400
+ "strip-eof": "^1.0.0"
5401
+ }
5402
+ },
5403
+ "get-stream": {
5404
+ "version": "3.0.0",
5405
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
5406
+ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ="
5407
+ },
5408
+ "is-stream": {
5409
+ "version": "1.1.0",
5410
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
5411
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
5412
+ },
5413
+ "npm-run-path": {
5414
+ "version": "2.0.2",
5415
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
5416
+ "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
5417
+ "requires": {
5418
+ "path-key": "^2.0.0"
5419
+ }
5420
+ },
5421
+ "path-key": {
5422
+ "version": "2.0.1",
5423
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
5424
+ "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A="
5425
+ },
5426
+ "shebang-command": {
5427
+ "version": "1.2.0",
5428
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
5429
+ "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
5430
+ "requires": {
5431
+ "shebang-regex": "^1.0.0"
5432
+ }
5433
+ },
5434
+ "shebang-regex": {
5435
+ "version": "1.0.0",
5436
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
5437
+ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM="
5438
+ },
5439
+ "which": {
5440
+ "version": "1.3.1",
5441
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
5442
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
5443
+ "requires": {
5444
+ "isexe": "^2.0.0"
5445
+ }
5446
+ }
5447
+ }
5448
+ },
5449
+ "bin-version": {
5450
+ "version": "3.1.0",
5451
+ "resolved": "https://registry.npmjs.org/bin-version/-/bin-version-3.1.0.tgz",
5452
+ "integrity": "sha512-Mkfm4iE1VFt4xd4vH+gx+0/71esbfus2LsnCGe8Pi4mndSPyT+NGES/Eg99jx8/lUGWfu3z2yuB/bt5UB+iVbQ==",
5453
+ "requires": {
5454
+ "execa": "^1.0.0",
5455
+ "find-versions": "^3.0.0"
5456
+ },
5457
+ "dependencies": {
5458
+ "cross-spawn": {
5459
+ "version": "6.0.5",
5460
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
5461
+ "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
5462
+ "requires": {
5463
+ "nice-try": "^1.0.4",
5464
+ "path-key": "^2.0.1",
5465
+ "semver": "^5.5.0",
5466
+ "shebang-command": "^1.2.0",
5467
+ "which": "^1.2.9"
5468
+ }
5469
+ },
5470
+ "execa": {
5471
+ "version": "1.0.0",
5472
+ "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz",
5473
+ "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==",
5474
+ "requires": {
5475
+ "cross-spawn": "^6.0.0",
5476
+ "get-stream": "^4.0.0",
5477
+ "is-stream": "^1.1.0",
5478
+ "npm-run-path": "^2.0.0",
5479
+ "p-finally": "^1.0.0",
5480
+ "signal-exit": "^3.0.0",
5481
+ "strip-eof": "^1.0.0"
5482
+ }
5483
+ },
5484
+ "get-stream": {
5485
+ "version": "4.1.0",
5486
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
5487
+ "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
5488
+ "requires": {
5489
+ "pump": "^3.0.0"
5490
+ }
5491
+ },
5492
+ "is-stream": {
5493
+ "version": "1.1.0",
5494
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
5495
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
5496
+ },
5497
+ "npm-run-path": {
5498
+ "version": "2.0.2",
5499
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
5500
+ "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
5501
+ "requires": {
5502
+ "path-key": "^2.0.0"
5503
+ }
5504
+ },
5505
+ "path-key": {
5506
+ "version": "2.0.1",
5507
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
5508
+ "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A="
5509
+ },
5510
+ "shebang-command": {
5511
+ "version": "1.2.0",
5512
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
5513
+ "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
5514
+ "requires": {
5515
+ "shebang-regex": "^1.0.0"
5516
+ }
5517
+ },
5518
+ "shebang-regex": {
5519
+ "version": "1.0.0",
5520
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
5521
+ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM="
5522
+ },
5523
+ "which": {
5524
+ "version": "1.3.1",
5525
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
5526
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
5527
+ "requires": {
5528
+ "isexe": "^2.0.0"
5529
+ }
5530
+ }
5531
+ }
5532
+ },
5533
+ "bin-version-check": {
5534
+ "version": "4.0.0",
5535
+ "resolved": "https://registry.npmjs.org/bin-version-check/-/bin-version-check-4.0.0.tgz",
5536
+ "integrity": "sha512-sR631OrhC+1f8Cvs8WyVWOA33Y8tgwjETNPyyD/myRBXLkfS/vl74FmH/lFcRl9KY3zwGh7jFhvyk9vV3/3ilQ==",
5537
+ "requires": {
5538
+ "bin-version": "^3.0.0",
5539
+ "semver": "^5.6.0",
5540
+ "semver-truncate": "^1.1.2"
5541
+ }
5542
+ },
5543
+ "bin-wrapper": {
5544
+ "version": "4.1.0",
5545
+ "resolved": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-4.1.0.tgz",
5546
+ "integrity": "sha512-hfRmo7hWIXPkbpi0ZltboCMVrU+0ClXR/JgbCKKjlDjQf6igXa7OwdqNcFWQZPZTgiY7ZpzE3+LjjkLiTN2T7Q==",
5547
+ "requires": {
5548
+ "bin-check": "^4.1.0",
5549
+ "bin-version-check": "^4.0.0",
5550
+ "download": "^7.1.0",
5551
+ "import-lazy": "^3.1.0",
5552
+ "os-filter-obj": "^2.0.0",
5553
+ "pify": "^4.0.1"
5554
+ },
5555
+ "dependencies": {
5556
+ "download": {
5557
+ "version": "7.1.0",
5558
+ "resolved": "https://registry.npmjs.org/download/-/download-7.1.0.tgz",
5559
+ "integrity": "sha512-xqnBTVd/E+GxJVrX5/eUJiLYjCGPwMpdL+jGhGU57BvtcA7wwhtHVbXBeUk51kOpW3S7Jn3BQbN9Q1R1Km2qDQ==",
5560
+ "requires": {
5561
+ "archive-type": "^4.0.0",
5562
+ "caw": "^2.0.1",
5563
+ "content-disposition": "^0.5.2",
5564
+ "decompress": "^4.2.0",
5565
+ "ext-name": "^5.0.0",
5566
+ "file-type": "^8.1.0",
5567
+ "filenamify": "^2.0.0",
5568
+ "get-stream": "^3.0.0",
5569
+ "got": "^8.3.1",
5570
+ "make-dir": "^1.2.0",
5571
+ "p-event": "^2.1.0",
5572
+ "pify": "^3.0.0"
5573
+ },
5574
+ "dependencies": {
5575
+ "pify": {
5576
+ "version": "3.0.0",
5577
+ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
5578
+ "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY="
5579
+ }
5580
+ }
5581
+ },
5582
+ "file-type": {
5583
+ "version": "8.1.0",
5584
+ "resolved": "https://registry.npmjs.org/file-type/-/file-type-8.1.0.tgz",
5585
+ "integrity": "sha512-qyQ0pzAy78gVoJsmYeNgl8uH8yKhr1lVhW7JbzJmnlRi0I4R2eEDEJZVKG8agpDnLpacwNbDhLNG/LMdxHD2YQ=="
5586
+ },
5587
+ "get-stream": {
5588
+ "version": "3.0.0",
5589
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
5590
+ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ="
5591
+ },
5592
+ "got": {
5593
+ "version": "8.3.2",
5594
+ "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz",
5595
+ "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==",
5596
+ "requires": {
5597
+ "@sindresorhus/is": "^0.7.0",
5598
+ "cacheable-request": "^2.1.1",
5599
+ "decompress-response": "^3.3.0",
5600
+ "duplexer3": "^0.1.4",
5601
+ "get-stream": "^3.0.0",
5602
+ "into-stream": "^3.1.0",
5603
+ "is-retry-allowed": "^1.1.0",
5604
+ "isurl": "^1.0.0-alpha5",
5605
+ "lowercase-keys": "^1.0.0",
5606
+ "mimic-response": "^1.0.0",
5607
+ "p-cancelable": "^0.4.0",
5608
+ "p-timeout": "^2.0.1",
5609
+ "pify": "^3.0.0",
5610
+ "safe-buffer": "^5.1.1",
5611
+ "timed-out": "^4.0.1",
5612
+ "url-parse-lax": "^3.0.0",
5613
+ "url-to-options": "^1.0.1"
5614
+ },
5615
+ "dependencies": {
5616
+ "pify": {
5617
+ "version": "3.0.0",
5618
+ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
5619
+ "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY="
5620
+ }
5621
+ }
5622
+ },
5623
+ "p-cancelable": {
5624
+ "version": "0.4.1",
5625
+ "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz",
5626
+ "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ=="
5627
+ },
5628
+ "p-event": {
5629
+ "version": "2.3.1",
5630
+ "resolved": "https://registry.npmjs.org/p-event/-/p-event-2.3.1.tgz",
5631
+ "integrity": "sha512-NQCqOFhbpVTMX4qMe8PF8lbGtzZ+LCiN7pcNrb/413Na7+TRoe1xkKUzuWa/YEJdGQ0FvKtj35EEbDoVPO2kbA==",
5632
+ "requires": {
5633
+ "p-timeout": "^2.0.1"
5634
+ }
5635
+ },
5636
+ "p-timeout": {
5637
+ "version": "2.0.1",
5638
+ "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz",
5639
+ "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==",
5640
+ "requires": {
5641
+ "p-finally": "^1.0.0"
5642
+ }
5643
+ },
5644
+ "pify": {
5645
+ "version": "4.0.1",
5646
+ "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
5647
+ "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g=="
5648
+ },
5649
+ "prepend-http": {
5650
+ "version": "2.0.0",
5651
+ "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz",
5652
+ "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc="
5653
+ },
5654
+ "url-parse-lax": {
5655
+ "version": "3.0.0",
5656
+ "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz",
5657
+ "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=",
5658
+ "requires": {
5659
+ "prepend-http": "^2.0.0"
5660
+ }
5661
+ }
5662
+ }
5663
+ },
5664
+ "binary-extensions": {
5665
+ "version": "1.13.1",
5666
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
5667
+ "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
5668
+ "dev": true,
5669
+ "optional": true
5670
+ },
5671
+ "bl": {
5672
+ "version": "1.2.3",
5673
+ "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz",
5674
+ "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==",
5675
+ "requires": {
5676
+ "readable-stream": "^2.3.5",
5677
+ "safe-buffer": "^5.1.1"
5678
+ }
5679
+ },
5680
+ "body-scroll-lock": {
5681
+ "version": "3.1.5",
5682
+ "resolved": "https://registry.npmjs.org/body-scroll-lock/-/body-scroll-lock-3.1.5.tgz",
5683
+ "integrity": "sha512-Yi1Xaml0EvNA0OYWxXiYNqY24AfWkbA6w5vxE7GWxtKfzIbZM+Qw+aSmkgsbWzbHiy/RCSkUZBplVxTA+E4jJg==",
5684
+ "dev": true
5685
+ },
5686
+ "boolbase": {
5687
+ "version": "1.0.0",
5688
+ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
5689
+ "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=",
5690
+ "dev": true
5691
+ },
5692
+ "brace-expansion": {
5693
+ "version": "1.1.11",
5694
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
5695
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
5696
+ "requires": {
5697
+ "balanced-match": "^1.0.0",
5698
+ "concat-map": "0.0.1"
5699
+ }
5700
+ },
5701
+ "braces": {
5702
+ "version": "3.0.2",
5703
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
5704
+ "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
5705
+ "requires": {
5706
+ "fill-range": "^7.0.1"
5707
+ }
5708
+ },
5709
+ "brcast": {
5710
+ "version": "2.0.2",
5711
+ "resolved": "https://registry.npmjs.org/brcast/-/brcast-2.0.2.tgz",
5712
+ "integrity": "sha512-Tfn5JSE7hrUlFcOoaLzVvkbgIemIorMIyoMr3TgvszWW7jFt2C9PdeMLtysYD9RU0MmU17b69+XJG1eRY2OBRg==",
5713
+ "dev": true
5714
+ },
5715
+ "browserslist": {
5716
+ "version": "4.16.3",
5717
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz",
5718
+ "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==",
5719
+ "dev": true,
5720
+ "requires": {
5721
+ "caniuse-lite": "^1.0.30001181",
5722
+ "colorette": "^1.2.1",
5723
+ "electron-to-chromium": "^1.3.649",
5724
+ "escalade": "^3.1.1",
5725
+ "node-releases": "^1.1.70"
5726
+ }
5727
+ },
5728
+ "bser": {
5729
+ "version": "2.1.1",
5730
+ "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
5731
+ "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
5732
+ "dev": true,
5733
+ "requires": {
5734
+ "node-int64": "^0.4.0"
5735
+ }
5736
+ },
5737
+ "buffer": {
5738
+ "version": "5.7.1",
5739
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
5740
+ "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
5741
+ "requires": {
5742
+ "base64-js": "^1.3.1",
5743
+ "ieee754": "^1.1.13"
5744
+ }
5745
+ },
5746
+ "buffer-alloc": {
5747
+ "version": "1.2.0",
5748
+ "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz",
5749
+ "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==",
5750
+ "requires": {
5751
+ "buffer-alloc-unsafe": "^1.1.0",
5752
+ "buffer-fill": "^1.0.0"
5753
+ }
5754
+ },
5755
+ "buffer-alloc-unsafe": {
5756
+ "version": "1.1.0",
5757
+ "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
5758
+ "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg=="
5759
+ },
5760
+ "buffer-crc32": {
5761
+ "version": "0.2.13",
5762
+ "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
5763
+ "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI="
5764
+ },
5765
+ "buffer-fill": {
5766
+ "version": "1.0.0",
5767
+ "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
5768
+ "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw="
5769
+ },
5770
+ "buffer-from": {
5771
+ "version": "1.1.1",
5772
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
5773
+ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
5774
+ "dev": true
5775
+ },
5776
+ "cacache": {
5777
+ "version": "13.0.1",
5778
+ "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz",
5779
+ "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==",
5780
+ "requires": {
5781
+ "chownr": "^1.1.2",
5782
+ "figgy-pudding": "^3.5.1",
5783
+ "fs-minipass": "^2.0.0",
5784
+ "glob": "^7.1.4",
5785
+ "graceful-fs": "^4.2.2",
5786
+ "infer-owner": "^1.0.4",
5787
+ "lru-cache": "^5.1.1",
5788
+ "minipass": "^3.0.0",
5789
+ "minipass-collect": "^1.0.2",
5790
+ "minipass-flush": "^1.0.5",
5791
+ "minipass-pipeline": "^1.2.2",
5792
+ "mkdirp": "^0.5.1",
5793
+ "move-concurrently": "^1.0.1",
5794
+ "p-map": "^3.0.0",
5795
+ "promise-inflight": "^1.0.1",
5796
+ "rimraf": "^2.7.1",
5797
+ "ssri": "^7.0.0",
5798
+ "unique-filename": "^1.1.1"
5799
+ },
5800
+ "dependencies": {
5801
+ "lru-cache": {
5802
+ "version": "5.1.1",
5803
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
5804
+ "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
5805
+ "requires": {
5806
+ "yallist": "^3.0.2"
5807
+ }
5808
+ },
5809
+ "yallist": {
5810
+ "version": "3.1.1",
5811
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
5812
+ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="
5813
+ }
5814
+ }
5815
+ },
5816
+ "cache-base": {
5817
+ "version": "1.0.1",
5818
+ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
5819
+ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
5820
+ "dev": true,
5821
+ "requires": {
5822
+ "collection-visit": "^1.0.0",
5823
+ "component-emitter": "^1.2.1",
5824
+ "get-value": "^2.0.6",
5825
+ "has-value": "^1.0.0",
5826
+ "isobject": "^3.0.1",
5827
+ "set-value": "^2.0.0",
5828
+ "to-object-path": "^0.3.0",
5829
+ "union-value": "^1.0.0",
5830
+ "unset-value": "^1.0.0"
5831
+ }
5832
+ },
5833
+ "cacheable-request": {
5834
+ "version": "2.1.4",
5835
+ "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz",
5836
+ "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=",
5837
+ "requires": {
5838
+ "clone-response": "1.0.2",
5839
+ "get-stream": "3.0.0",
5840
+ "http-cache-semantics": "3.8.1",
5841
+ "keyv": "3.0.0",
5842
+ "lowercase-keys": "1.0.0",
5843
+ "normalize-url": "2.0.1",
5844
+ "responselike": "1.0.2"
5845
+ },
5846
+ "dependencies": {
5847
+ "get-stream": {
5848
+ "version": "3.0.0",
5849
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
5850
+ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ="
5851
+ },
5852
+ "lowercase-keys": {
5853
+ "version": "1.0.0",
5854
+ "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz",
5855
+ "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY="
5856
+ }
5857
+ }
5858
+ },
5859
+ "call-bind": {
5860
+ "version": "1.0.2",
5861
+ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
5862
+ "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
5863
+ "dev": true,
5864
+ "requires": {
5865
+ "function-bind": "^1.1.1",
5866
+ "get-intrinsic": "^1.0.2"
5867
+ }
5868
+ },
5869
+ "camelcase": {
5870
+ "version": "2.1.1",
5871
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
5872
+ "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8="
5873
+ },
5874
+ "camelcase-keys": {
5875
+ "version": "2.1.0",
5876
+ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
5877
+ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
5878
+ "requires": {
5879
+ "camelcase": "^2.0.0",
5880
+ "map-obj": "^1.0.0"
5881
+ }
5882
+ },
5883
+ "camelize": {
5884
+ "version": "1.0.0",
5885
+ "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz",
5886
+ "integrity": "sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs=",
5887
+ "dev": true
5888
+ },
5889
+ "caniuse-lite": {
5890
+ "version": "1.0.30001204",
5891
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001204.tgz",
5892
+ "integrity": "sha512-JUdjWpcxfJ9IPamy2f5JaRDCaqJOxDzOSKtbdx4rH9VivMd1vIzoPumsJa9LoMIi4Fx2BV2KZOxWhNkBjaYivQ==",
5893
+ "dev": true
5894
+ },
5895
+ "capture-exit": {
5896
+ "version": "2.0.0",
5897
+ "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz",
5898
+ "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==",
5899
+ "dev": true,
5900
+ "requires": {
5901
+ "rsvp": "^4.8.4"
5902
+ }
5903
+ },
5904
+ "caseless": {
5905
+ "version": "0.12.0",
5906
+ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
5907
+ "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
5908
+ "dev": true
5909
+ },
5910
+ "caw": {
5911
+ "version": "2.0.1",
5912
+ "resolved": "https://registry.npmjs.org/caw/-/caw-2.0.1.tgz",
5913
+ "integrity": "sha512-Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA==",
5914
+ "requires": {
5915
+ "get-proxy": "^2.0.0",
5916
+ "isurl": "^1.0.0-alpha5",
5917
+ "tunnel-agent": "^0.6.0",
5918
+ "url-to-options": "^1.0.1"
5919
+ }
5920
+ },
5921
+ "chalk": {
5922
+ "version": "1.1.3",
5923
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
5924
+ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
5925
+ "requires": {
5926
+ "ansi-styles": "^2.2.1",
5927
+ "escape-string-regexp": "^1.0.2",
5928
+ "has-ansi": "^2.0.0",
5929
+ "strip-ansi": "^3.0.0",
5930
+ "supports-color": "^2.0.0"
5931
+ }
5932
+ },
5933
+ "cheerio": {
5934
+ "version": "1.0.0-rc.5",
5935
+ "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.5.tgz",
5936
+ "integrity": "sha512-yoqps/VCaZgN4pfXtenwHROTp8NG6/Hlt4Jpz2FEP0ZJQ+ZUkVDd0hAPDNKhj3nakpfPt/CNs57yEtxD1bXQiw==",
5937
+ "dev": true,
5938
+ "requires": {
5939
+ "cheerio-select-tmp": "^0.1.0",
5940
+ "dom-serializer": "~1.2.0",
5941
+ "domhandler": "^4.0.0",
5942
+ "entities": "~2.1.0",
5943
+ "htmlparser2": "^6.0.0",
5944
+ "parse5": "^6.0.0",
5945
+ "parse5-htmlparser2-tree-adapter": "^6.0.0"
5946
+ },
5947
+ "dependencies": {
5948
+ "dom-serializer": {
5949
+ "version": "1.2.0",
5950
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.2.0.tgz",
5951
+ "integrity": "sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA==",
5952
+ "dev": true,
5953
+ "requires": {
5954
+ "domelementtype": "^2.0.1",
5955
+ "domhandler": "^4.0.0",
5956
+ "entities": "^2.0.0"
5957
+ }
5958
+ },
5959
+ "domelementtype": {
5960
+ "version": "2.1.0",
5961
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz",
5962
+ "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==",
5963
+ "dev": true
5964
+ },
5965
+ "entities": {
5966
+ "version": "2.1.0",
5967
+ "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz",
5968
+ "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==",
5969
+ "dev": true
5970
+ }
5971
+ }
5972
+ },
5973
+ "cheerio-select-tmp": {
5974
+ "version": "0.1.1",
5975
+ "resolved": "https://registry.npmjs.org/cheerio-select-tmp/-/cheerio-select-tmp-0.1.1.tgz",
5976
+ "integrity": "sha512-YYs5JvbpU19VYJyj+F7oYrIE2BOll1/hRU7rEy/5+v9BzkSo3bK81iAeeQEMI92vRIxz677m72UmJUiVwwgjfQ==",
5977
+ "dev": true,
5978
+ "requires": {
5979
+ "css-select": "^3.1.2",
5980
+ "css-what": "^4.0.0",
5981
+ "domelementtype": "^2.1.0",
5982
+ "domhandler": "^4.0.0",
5983
+ "domutils": "^2.4.4"
5984
+ },
5985
+ "dependencies": {
5986
+ "css-select": {
5987
+ "version": "3.1.2",
5988
+ "resolved": "https://registry.npmjs.org/css-select/-/css-select-3.1.2.tgz",
5989
+ "integrity": "sha512-qmss1EihSuBNWNNhHjxzxSfJoFBM/lERB/Q4EnsJQQC62R2evJDW481091oAdOr9uh46/0n4nrg0It5cAnj1RA==",
5990
+ "dev": true,
5991
+ "requires": {
5992
+ "boolbase": "^1.0.0",
5993
+ "css-what": "^4.0.0",
5994
+ "domhandler": "^4.0.0",
5995
+ "domutils": "^2.4.3",
5996
+ "nth-check": "^2.0.0"
5997
+ }
5998
+ },
5999
+ "css-what": {
6000
+ "version": "4.0.0",
6001
+ "resolved": "https://registry.npmjs.org/css-what/-/css-what-4.0.0.tgz",
6002
+ "integrity": "sha512-teijzG7kwYfNVsUh2H/YN62xW3KK9YhXEgSlbxMlcyjPNvdKJqFx5lrwlJgoFP1ZHlB89iGDlo/JyshKeRhv5A==",
6003
+ "dev": true
6004
+ },
6005
+ "dom-serializer": {
6006
+ "version": "1.2.0",
6007
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.2.0.tgz",
6008
+ "integrity": "sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA==",
6009
+ "dev": true,
6010
+ "requires": {
6011
+ "domelementtype": "^2.0.1",
6012
+ "domhandler": "^4.0.0",
6013
+ "entities": "^2.0.0"
6014
+ }
6015
+ },
6016
+ "domelementtype": {
6017
+ "version": "2.1.0",
6018
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz",
6019
+ "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==",
6020
+ "dev": true
6021
+ },
6022
+ "domutils": {
6023
+ "version": "2.5.0",
6024
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.5.0.tgz",
6025
+ "integrity": "sha512-Ho16rzNMOFk2fPwChGh3D2D9OEHAfG19HgmRR2l+WLSsIstNsAYBzePH412bL0y5T44ejABIVfTHQ8nqi/tBCg==",
6026
+ "dev": true,
6027
+ "requires": {
6028
+ "dom-serializer": "^1.0.1",
6029
+ "domelementtype": "^2.0.1",
6030
+ "domhandler": "^4.0.0"
6031
+ }
6032
+ },
6033
+ "nth-check": {
6034
+ "version": "2.0.0",
6035
+ "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz",
6036
+ "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==",
6037
+ "dev": true,
6038
+ "requires": {
6039
+ "boolbase": "^1.0.0"
6040
+ }
6041
+ }
6042
+ }
6043
+ },
6044
+ "chokidar": {
6045
+ "version": "3.5.1",
6046
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz",
6047
+ "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==",
6048
+ "dev": true,
6049
+ "optional": true,
6050
+ "requires": {
6051
+ "anymatch": "~3.1.1",
6052
+ "braces": "~3.0.2",
6053
+ "fsevents": "~2.3.1",
6054
+ "glob-parent": "~5.1.0",
6055
+ "is-binary-path": "~2.1.0",
6056
+ "is-glob": "~4.0.1",
6057
+ "normalize-path": "~3.0.0",
6058
+ "readdirp": "~3.5.0"
6059
+ },
6060
+ "dependencies": {
6061
+ "anymatch": {
6062
+ "version": "3.1.1",
6063
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz",
6064
+ "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==",
6065
+ "dev": true,
6066
+ "optional": true,
6067
+ "requires": {
6068
+ "normalize-path": "^3.0.0",
6069
+ "picomatch": "^2.0.4"
6070
+ }
6071
+ },
6072
+ "binary-extensions": {
6073
+ "version": "2.2.0",
6074
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
6075
+ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
6076
+ "dev": true,
6077
+ "optional": true
6078
+ },
6079
+ "is-binary-path": {
6080
+ "version": "2.1.0",
6081
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
6082
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
6083
+ "dev": true,
6084
+ "optional": true,
6085
+ "requires": {
6086
+ "binary-extensions": "^2.0.0"
6087
+ }
6088
+ },
6089
+ "readdirp": {
6090
+ "version": "3.5.0",
6091
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz",
6092
+ "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==",
6093
+ "dev": true,
6094
+ "optional": true,
6095
+ "requires": {
6096
+ "picomatch": "^2.2.1"
6097
+ }
6098
+ }
6099
+ }
6100
+ },
6101
+ "chownr": {
6102
+ "version": "1.1.4",
6103
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
6104
+ "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg=="
6105
+ },
6106
+ "chrome-trace-event": {
6107
+ "version": "1.0.2",
6108
+ "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz",
6109
+ "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==",
6110
+ "dev": true,
6111
+ "requires": {
6112
+ "tslib": "^1.9.0"
6113
+ }
6114
+ },
6115
+ "ci-info": {
6116
+ "version": "2.0.0",
6117
+ "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
6118
+ "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
6119
+ "dev": true
6120
+ },
6121
+ "class-utils": {
6122
+ "version": "0.3.6",
6123
+ "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
6124
+ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
6125
+ "dev": true,
6126
+ "requires": {
6127
+ "arr-union": "^3.1.0",
6128
+ "define-property": "^0.2.5",
6129
+ "isobject": "^3.0.0",
6130
+ "static-extend": "^0.1.1"
6131
+ },
6132
+ "dependencies": {
6133
+ "define-property": {
6134
+ "version": "0.2.5",
6135
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
6136
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
6137
+ "dev": true,
6138
+ "requires": {
6139
+ "is-descriptor": "^0.1.0"
6140
+ }
6141
+ }
6142
+ }
6143
+ },
6144
+ "classnames": {
6145
+ "version": "2.2.6",
6146
+ "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz",
6147
+ "integrity": "sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q=="
6148
+ },
6149
+ "clean-stack": {
6150
+ "version": "2.2.0",
6151
+ "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
6152
+ "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A=="
6153
+ },
6154
+ "clipboard": {
6155
+ "version": "2.0.8",
6156
+ "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.8.tgz",
6157
+ "integrity": "sha512-Y6WO0unAIQp5bLmk1zdThRhgJt/x3ks6f30s3oE3H1mgIEU33XyQjEf8gsf6DxC7NPX8Y1SsNWjUjL/ywLnnbQ==",
6158
+ "dev": true,
6159
+ "requires": {
6160
+ "good-listener": "^1.2.2",
6161
+ "select": "^1.1.2",
6162
+ "tiny-emitter": "^2.0.0"
6163
+ }
6164
+ },
6165
+ "cliui": {
6166
+ "version": "5.0.0",
6167
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
6168
+ "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
6169
+ "dev": true,
6170
+ "requires": {
6171
+ "string-width": "^3.1.0",
6172
+ "strip-ansi": "^5.2.0",
6173
+ "wrap-ansi": "^5.1.0"
6174
+ },
6175
+ "dependencies": {
6176
+ "ansi-regex": {
6177
+ "version": "4.1.0",
6178
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
6179
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
6180
+ "dev": true
6181
+ },
6182
+ "strip-ansi": {
6183
+ "version": "5.2.0",
6184
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
6185
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
6186
+ "dev": true,
6187
+ "requires": {
6188
+ "ansi-regex": "^4.1.0"
6189
+ }
6190
+ }
6191
+ }
6192
+ },
6193
+ "clone-deep": {
6194
+ "version": "4.0.1",
6195
+ "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
6196
+ "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
6197
+ "dev": true,
6198
+ "requires": {
6199
+ "is-plain-object": "^2.0.4",
6200
+ "kind-of": "^6.0.2",
6201
+ "shallow-clone": "^3.0.0"
6202
+ }
6203
+ },
6204
+ "clone-response": {
6205
+ "version": "1.0.2",
6206
+ "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz",
6207
+ "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=",
6208
+ "requires": {
6209
+ "mimic-response": "^1.0.0"
6210
+ }
6211
+ },
6212
+ "coa": {
6213
+ "version": "2.0.2",
6214
+ "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz",
6215
+ "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==",
6216
+ "dev": true,
6217
+ "requires": {
6218
+ "@types/q": "^1.5.1",
6219
+ "chalk": "^2.4.1",
6220
+ "q": "^1.1.2"
6221
+ },
6222
+ "dependencies": {
6223
+ "ansi-styles": {
6224
+ "version": "3.2.1",
6225
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
6226
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
6227
+ "dev": true,
6228
+ "requires": {
6229
+ "color-convert": "^1.9.0"
6230
+ }
6231
+ },
6232
+ "chalk": {
6233
+ "version": "2.4.2",
6234
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
6235
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
6236
+ "dev": true,
6237
+ "requires": {
6238
+ "ansi-styles": "^3.2.1",
6239
+ "escape-string-regexp": "^1.0.5",
6240
+ "supports-color": "^5.3.0"
6241
+ }
6242
+ },
6243
+ "supports-color": {
6244
+ "version": "5.5.0",
6245
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
6246
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
6247
+ "dev": true,
6248
+ "requires": {
6249
+ "has-flag": "^3.0.0"
6250
+ }
6251
+ }
6252
+ }
6253
+ },
6254
+ "code-point-at": {
6255
+ "version": "1.1.0",
6256
+ "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
6257
+ "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
6258
+ "dev": true
6259
+ },
6260
+ "collection-visit": {
6261
+ "version": "1.0.0",
6262
+ "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
6263
+ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
6264
+ "dev": true,
6265
+ "requires": {
6266
+ "map-visit": "^1.0.0",
6267
+ "object-visit": "^1.0.0"
6268
+ }
6269
+ },
6270
+ "color-convert": {
6271
+ "version": "1.9.3",
6272
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
6273
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
6274
+ "dev": true,
6275
+ "requires": {
6276
+ "color-name": "1.1.3"
6277
+ }
6278
+ },
6279
+ "color-name": {
6280
+ "version": "1.1.3",
6281
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
6282
+ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
6283
+ "dev": true
6284
+ },
6285
+ "colorette": {
6286
+ "version": "1.2.2",
6287
+ "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz",
6288
+ "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==",
6289
+ "dev": true
6290
+ },
6291
+ "combined-stream": {
6292
+ "version": "1.0.8",
6293
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
6294
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
6295
+ "dev": true,
6296
+ "requires": {
6297
+ "delayed-stream": "~1.0.0"
6298
+ }
6299
+ },
6300
+ "commander": {
6301
+ "version": "2.20.3",
6302
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
6303
+ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
6304
+ },
6305
+ "commondir": {
6306
+ "version": "1.0.1",
6307
+ "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
6308
+ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs="
6309
+ },
6310
+ "component-emitter": {
6311
+ "version": "1.3.0",
6312
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
6313
+ "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
6314
+ "dev": true
6315
+ },
6316
+ "compute-gcd": {
6317
+ "version": "1.2.1",
6318
+ "resolved": "https://registry.npmjs.org/compute-gcd/-/compute-gcd-1.2.1.tgz",
6319
+ "integrity": "sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==",
6320
+ "dev": true,
6321
+ "requires": {
6322
+ "validate.io-array": "^1.0.3",
6323
+ "validate.io-function": "^1.0.2",
6324
+ "validate.io-integer-array": "^1.0.0"
6325
+ }
6326
+ },
6327
+ "compute-lcm": {
6328
+ "version": "1.1.2",
6329
+ "resolved": "https://registry.npmjs.org/compute-lcm/-/compute-lcm-1.1.2.tgz",
6330
+ "integrity": "sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==",
6331
+ "dev": true,
6332
+ "requires": {
6333
+ "compute-gcd": "^1.2.1",
6334
+ "validate.io-array": "^1.0.3",
6335
+ "validate.io-function": "^1.0.2",
6336
+ "validate.io-integer-array": "^1.0.0"
6337
+ }
6338
+ },
6339
+ "compute-scroll-into-view": {
6340
+ "version": "1.0.17",
6341
+ "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.17.tgz",
6342
+ "integrity": "sha512-j4dx+Fb0URmzbwwMUrhqWM2BEWHdFGx+qZ9qqASHRPqvTYdqvWnHg0H1hIbcyLnvgnoNAVMlwkepyqM3DaIFUg==",
6343
+ "dev": true
6344
+ },
6345
+ "computed-style": {
6346
+ "version": "0.1.4",
6347
+ "resolved": "https://registry.npmjs.org/computed-style/-/computed-style-0.1.4.tgz",
6348
+ "integrity": "sha1-fzRP2FhLLkJb7cpKGvwOMAuwXXQ=",
6349
+ "dev": true
6350
+ },
6351
+ "concat-map": {
6352
+ "version": "0.0.1",
6353
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
6354
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
6355
+ },
6356
+ "config-chain": {
6357
+ "version": "1.1.12",
6358
+ "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz",
6359
+ "integrity": "sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA==",
6360
+ "requires": {
6361
+ "ini": "^1.3.4",
6362
+ "proto-list": "~1.2.1"
6363
+ }
6364
+ },
6365
+ "console-control-strings": {
6366
+ "version": "1.1.0",
6367
+ "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
6368
+ "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
6369
+ "dev": true
6370
+ },
6371
+ "console-stream": {
6372
+ "version": "0.1.1",
6373
+ "resolved": "https://registry.npmjs.org/console-stream/-/console-stream-0.1.1.tgz",
6374
+ "integrity": "sha1-oJX+B7IEZZVfL6/Si11yvM2UnUQ="
6375
+ },
6376
+ "consolidated-events": {
6377
+ "version": "2.0.2",
6378
+ "resolved": "https://registry.npmjs.org/consolidated-events/-/consolidated-events-2.0.2.tgz",
6379
+ "integrity": "sha512-2/uRVMdRypf5z/TW/ncD/66l75P5hH2vM/GR8Jf8HLc2xnfJtmina6F6du8+v4Z2vTrMo7jC+W1tmEEuuELgkQ==",
6380
+ "dev": true
6381
+ },
6382
+ "content-disposition": {
6383
+ "version": "0.5.3",
6384
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz",
6385
+ "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==",
6386
+ "requires": {
6387
+ "safe-buffer": "5.1.2"
6388
+ },
6389
+ "dependencies": {
6390
+ "safe-buffer": {
6391
+ "version": "5.1.2",
6392
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
6393
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
6394
+ }
6395
+ }
6396
+ },
6397
+ "convert-source-map": {
6398
+ "version": "1.7.0",
6399
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz",
6400
+ "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==",
6401
+ "dev": true,
6402
+ "requires": {
6403
+ "safe-buffer": "~5.1.1"
6404
+ },
6405
+ "dependencies": {
6406
+ "safe-buffer": {
6407
+ "version": "5.1.2",
6408
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
6409
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
6410
+ "dev": true
6411
+ }
6412
+ }
6413
+ },
6414
+ "copy-concurrently": {
6415
+ "version": "1.0.5",
6416
+ "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz",
6417
+ "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==",
6418
+ "requires": {
6419
+ "aproba": "^1.1.1",
6420
+ "fs-write-stream-atomic": "^1.0.8",
6421
+ "iferr": "^0.1.5",
6422
+ "mkdirp": "^0.5.1",
6423
+ "rimraf": "^2.5.4",
6424
+ "run-queue": "^1.0.0"
6425
+ }
6426
+ },
6427
+ "copy-descriptor": {
6428
+ "version": "0.1.1",
6429
+ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
6430
+ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
6431
+ "dev": true
6432
+ },
6433
+ "copy-to-clipboard": {
6434
+ "version": "3.3.1",
6435
+ "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz",
6436
+ "integrity": "sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw==",
6437
+ "dev": true,
6438
+ "requires": {
6439
+ "toggle-selection": "^1.0.6"
6440
+ }
6441
+ },
6442
+ "core-js": {
6443
+ "version": "2.6.12",
6444
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
6445
+ "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==",
6446
+ "dev": true
6447
+ },
6448
+ "core-js-compat": {
6449
+ "version": "3.9.1",
6450
+ "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.9.1.tgz",
6451
+ "integrity": "sha512-jXAirMQxrkbiiLsCx9bQPJFA6llDadKMpYrBJQJ3/c4/vsPP/fAf29h24tviRlvwUL6AmY5CHLu2GvjuYviQqA==",
6452
+ "dev": true,
6453
+ "requires": {
6454
+ "browserslist": "^4.16.3",
6455
+ "semver": "7.0.0"
6456
+ },
6457
+ "dependencies": {
6458
+ "semver": {
6459
+ "version": "7.0.0",
6460
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz",
6461
+ "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==",
6462
+ "dev": true
6463
+ }
6464
+ }
6465
+ },
6466
+ "core-util-is": {
6467
+ "version": "1.0.2",
6468
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
6469
+ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
6470
+ },
6471
+ "cosmiconfig": {
6472
+ "version": "7.0.0",
6473
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz",
6474
+ "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==",
6475
+ "dev": true,
6476
+ "requires": {
6477
+ "@types/parse-json": "^4.0.0",
6478
+ "import-fresh": "^3.2.1",
6479
+ "parse-json": "^5.0.0",
6480
+ "path-type": "^4.0.0",
6481
+ "yaml": "^1.10.0"
6482
+ },
6483
+ "dependencies": {
6484
+ "parse-json": {
6485
+ "version": "5.2.0",
6486
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
6487
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
6488
+ "dev": true,
6489
+ "requires": {
6490
+ "@babel/code-frame": "^7.0.0",
6491
+ "error-ex": "^1.3.1",
6492
+ "json-parse-even-better-errors": "^2.3.0",
6493
+ "lines-and-columns": "^1.1.6"
6494
+ }
6495
+ },
6496
+ "path-type": {
6497
+ "version": "4.0.0",
6498
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
6499
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
6500
+ "dev": true
6501
+ }
6502
+ }
6503
+ },
6504
+ "create-emotion": {
6505
+ "version": "10.0.27",
6506
+ "resolved": "https://registry.npmjs.org/create-emotion/-/create-emotion-10.0.27.tgz",
6507
+ "integrity": "sha512-fIK73w82HPPn/RsAij7+Zt8eCE8SptcJ3WoRMfxMtjteYxud8GDTKKld7MYwAX2TVhrw29uR1N/bVGxeStHILg==",
6508
+ "dev": true,
6509
+ "requires": {
6510
+ "@emotion/cache": "^10.0.27",
6511
+ "@emotion/serialize": "^0.11.15",
6512
+ "@emotion/sheet": "0.9.4",
6513
+ "@emotion/utils": "0.11.3"
6514
+ }
6515
+ },
6516
+ "cross-env": {
6517
+ "version": "7.0.3",
6518
+ "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz",
6519
+ "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==",
6520
+ "dev": true,
6521
+ "requires": {
6522
+ "cross-spawn": "^7.0.1"
6523
+ }
6524
+ },
6525
+ "cross-spawn": {
6526
+ "version": "7.0.3",
6527
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
6528
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
6529
+ "requires": {
6530
+ "path-key": "^3.1.0",
6531
+ "shebang-command": "^2.0.0",
6532
+ "which": "^2.0.1"
6533
+ }
6534
+ },
6535
+ "css-blank-pseudo": {
6536
+ "version": "0.1.4",
6537
+ "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz",
6538
+ "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==",
6539
+ "dev": true,
6540
+ "requires": {
6541
+ "postcss": "^7.0.5"
6542
+ },
6543
+ "dependencies": {
6544
+ "ansi-styles": {
6545
+ "version": "3.2.1",
6546
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
6547
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
6548
+ "dev": true,
6549
+ "requires": {
6550
+ "color-convert": "^1.9.0"
6551
+ }
6552
+ },
6553
+ "chalk": {
6554
+ "version": "2.4.2",
6555
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
6556
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
6557
+ "dev": true,
6558
+ "requires": {
6559
+ "ansi-styles": "^3.2.1",
6560
+ "escape-string-regexp": "^1.0.5",
6561
+ "supports-color": "^5.3.0"
6562
+ },
6563
+ "dependencies": {
6564
+ "supports-color": {
6565
+ "version": "5.5.0",
6566
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
6567
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
6568
+ "dev": true,
6569
+ "requires": {
6570
+ "has-flag": "^3.0.0"
6571
+ }
6572
+ }
6573
+ }
6574
+ },
6575
+ "postcss": {
6576
+ "version": "7.0.35",
6577
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
6578
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
6579
+ "dev": true,
6580
+ "requires": {
6581
+ "chalk": "^2.4.2",
6582
+ "source-map": "^0.6.1",
6583
+ "supports-color": "^6.1.0"
6584
+ }
6585
+ },
6586
+ "supports-color": {
6587
+ "version": "6.1.0",
6588
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
6589
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
6590
+ "dev": true,
6591
+ "requires": {
6592
+ "has-flag": "^3.0.0"
6593
+ }
6594
+ }
6595
+ }
6596
+ },
6597
+ "css-color-keywords": {
6598
+ "version": "1.0.0",
6599
+ "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz",
6600
+ "integrity": "sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU=",
6601
+ "dev": true
6602
+ },
6603
+ "css-has-pseudo": {
6604
+ "version": "0.10.0",
6605
+ "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz",
6606
+ "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==",
6607
+ "dev": true,
6608
+ "requires": {
6609
+ "postcss": "^7.0.6",
6610
+ "postcss-selector-parser": "^5.0.0-rc.4"
6611
+ },
6612
+ "dependencies": {
6613
+ "ansi-styles": {
6614
+ "version": "3.2.1",
6615
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
6616
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
6617
+ "dev": true,
6618
+ "requires": {
6619
+ "color-convert": "^1.9.0"
6620
+ }
6621
+ },
6622
+ "chalk": {
6623
+ "version": "2.4.2",
6624
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
6625
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
6626
+ "dev": true,
6627
+ "requires": {
6628
+ "ansi-styles": "^3.2.1",
6629
+ "escape-string-regexp": "^1.0.5",
6630
+ "supports-color": "^5.3.0"
6631
+ },
6632
+ "dependencies": {
6633
+ "supports-color": {
6634
+ "version": "5.5.0",
6635
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
6636
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
6637
+ "dev": true,
6638
+ "requires": {
6639
+ "has-flag": "^3.0.0"
6640
+ }
6641
+ }
6642
+ }
6643
+ },
6644
+ "cssesc": {
6645
+ "version": "2.0.0",
6646
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz",
6647
+ "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==",
6648
+ "dev": true
6649
+ },
6650
+ "postcss": {
6651
+ "version": "7.0.35",
6652
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
6653
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
6654
+ "dev": true,
6655
+ "requires": {
6656
+ "chalk": "^2.4.2",
6657
+ "source-map": "^0.6.1",
6658
+ "supports-color": "^6.1.0"
6659
+ }
6660
+ },
6661
+ "postcss-selector-parser": {
6662
+ "version": "5.0.0",
6663
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz",
6664
+ "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==",
6665
+ "dev": true,
6666
+ "requires": {
6667
+ "cssesc": "^2.0.0",
6668
+ "indexes-of": "^1.0.1",
6669
+ "uniq": "^1.0.1"
6670
+ }
6671
+ },
6672
+ "supports-color": {
6673
+ "version": "6.1.0",
6674
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
6675
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
6676
+ "dev": true,
6677
+ "requires": {
6678
+ "has-flag": "^3.0.0"
6679
+ }
6680
+ }
6681
+ }
6682
+ },
6683
+ "css-loader": {
6684
+ "version": "5.1.3",
6685
+ "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-5.1.3.tgz",
6686
+ "integrity": "sha512-CoPZvyh8sLiGARK3gqczpfdedbM74klGWurF2CsNZ2lhNaXdLIUks+3Mfax3WBeRuHoglU+m7KG/+7gY6G4aag==",
6687
+ "dev": true,
6688
+ "requires": {
6689
+ "camelcase": "^6.2.0",
6690
+ "cssesc": "^3.0.0",
6691
+ "icss-utils": "^5.1.0",
6692
+ "loader-utils": "^2.0.0",
6693
+ "postcss": "^8.2.8",
6694
+ "postcss-modules-extract-imports": "^3.0.0",
6695
+ "postcss-modules-local-by-default": "^4.0.0",
6696
+ "postcss-modules-scope": "^3.0.0",
6697
+ "postcss-modules-values": "^4.0.0",
6698
+ "postcss-value-parser": "^4.1.0",
6699
+ "schema-utils": "^3.0.0",
6700
+ "semver": "^7.3.4"
6701
+ },
6702
+ "dependencies": {
6703
+ "camelcase": {
6704
+ "version": "6.2.0",
6705
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz",
6706
+ "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==",
6707
+ "dev": true
6708
+ },
6709
+ "json5": {
6710
+ "version": "2.2.0",
6711
+ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
6712
+ "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
6713
+ "dev": true,
6714
+ "requires": {
6715
+ "minimist": "^1.2.5"
6716
+ }
6717
+ },
6718
+ "loader-utils": {
6719
+ "version": "2.0.0",
6720
+ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
6721
+ "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
6722
+ "dev": true,
6723
+ "requires": {
6724
+ "big.js": "^5.2.2",
6725
+ "emojis-list": "^3.0.0",
6726
+ "json5": "^2.1.2"
6727
+ }
6728
+ },
6729
+ "lru-cache": {
6730
+ "version": "6.0.0",
6731
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
6732
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
6733
+ "dev": true,
6734
+ "requires": {
6735
+ "yallist": "^4.0.0"
6736
+ }
6737
+ },
6738
+ "nanoid": {
6739
+ "version": "3.1.22",
6740
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.22.tgz",
6741
+ "integrity": "sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ==",
6742
+ "dev": true
6743
+ },
6744
+ "postcss": {
6745
+ "version": "8.2.8",
6746
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.8.tgz",
6747
+ "integrity": "sha512-1F0Xb2T21xET7oQV9eKuctbM9S7BC0fetoHCc4H13z0PT6haiRLP4T0ZY4XWh7iLP0usgqykT6p9B2RtOf4FPw==",
6748
+ "dev": true,
6749
+ "requires": {
6750
+ "colorette": "^1.2.2",
6751
+ "nanoid": "^3.1.20",
6752
+ "source-map": "^0.6.1"
6753
+ }
6754
+ },
6755
+ "postcss-value-parser": {
6756
+ "version": "4.1.0",
6757
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz",
6758
+ "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
6759
+ "dev": true
6760
+ },
6761
+ "schema-utils": {
6762
+ "version": "3.0.0",
6763
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
6764
+ "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
6765
+ "dev": true,
6766
+ "requires": {
6767
+ "@types/json-schema": "^7.0.6",
6768
+ "ajv": "^6.12.5",
6769
+ "ajv-keywords": "^3.5.2"
6770
+ }
6771
+ },
6772
+ "semver": {
6773
+ "version": "7.3.5",
6774
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
6775
+ "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
6776
+ "dev": true,
6777
+ "requires": {
6778
+ "lru-cache": "^6.0.0"
6779
+ }
6780
+ },
6781
+ "yallist": {
6782
+ "version": "4.0.0",
6783
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
6784
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
6785
+ "dev": true
6786
+ }
6787
+ }
6788
+ },
6789
+ "css-mediaquery": {
6790
+ "version": "0.1.2",
6791
+ "resolved": "https://registry.npmjs.org/css-mediaquery/-/css-mediaquery-0.1.2.tgz",
6792
+ "integrity": "sha1-aiw3NEkoYYYxxUvTPO3TAdoYvqA=",
6793
+ "dev": true
6794
+ },
6795
+ "css-prefers-color-scheme": {
6796
+ "version": "3.1.1",
6797
+ "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz",
6798
+ "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==",
6799
+ "dev": true,
6800
+ "requires": {
6801
+ "postcss": "^7.0.5"
6802
+ },
6803
+ "dependencies": {
6804
+ "ansi-styles": {
6805
+ "version": "3.2.1",
6806
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
6807
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
6808
+ "dev": true,
6809
+ "requires": {
6810
+ "color-convert": "^1.9.0"
6811
+ }
6812
+ },
6813
+ "chalk": {
6814
+ "version": "2.4.2",
6815
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
6816
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
6817
+ "dev": true,
6818
+ "requires": {
6819
+ "ansi-styles": "^3.2.1",
6820
+ "escape-string-regexp": "^1.0.5",
6821
+ "supports-color": "^5.3.0"
6822
+ },
6823
+ "dependencies": {
6824
+ "supports-color": {
6825
+ "version": "5.5.0",
6826
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
6827
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
6828
+ "dev": true,
6829
+ "requires": {
6830
+ "has-flag": "^3.0.0"
6831
+ }
6832
+ }
6833
+ }
6834
+ },
6835
+ "postcss": {
6836
+ "version": "7.0.35",
6837
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
6838
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
6839
+ "dev": true,
6840
+ "requires": {
6841
+ "chalk": "^2.4.2",
6842
+ "source-map": "^0.6.1",
6843
+ "supports-color": "^6.1.0"
6844
+ }
6845
+ },
6846
+ "supports-color": {
6847
+ "version": "6.1.0",
6848
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
6849
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
6850
+ "dev": true,
6851
+ "requires": {
6852
+ "has-flag": "^3.0.0"
6853
+ }
6854
+ }
6855
+ }
6856
+ },
6857
+ "css-select": {
6858
+ "version": "2.1.0",
6859
+ "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz",
6860
+ "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==",
6861
+ "dev": true,
6862
+ "requires": {
6863
+ "boolbase": "^1.0.0",
6864
+ "css-what": "^3.2.1",
6865
+ "domutils": "^1.7.0",
6866
+ "nth-check": "^1.0.2"
6867
+ }
6868
+ },
6869
+ "css-select-base-adapter": {
6870
+ "version": "0.1.1",
6871
+ "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz",
6872
+ "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==",
6873
+ "dev": true
6874
+ },
6875
+ "css-to-react-native": {
6876
+ "version": "2.3.2",
6877
+ "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-2.3.2.tgz",
6878
+ "integrity": "sha512-VOFaeZA053BqvvvqIA8c9n0+9vFppVBAHCp6JgFTtTMU3Mzi+XnelJ9XC9ul3BqFzZyQ5N+H0SnwsWT2Ebchxw==",
6879
+ "dev": true,
6880
+ "requires": {
6881
+ "camelize": "^1.0.0",
6882
+ "css-color-keywords": "^1.0.0",
6883
+ "postcss-value-parser": "^3.3.0"
6884
+ }
6885
+ },
6886
+ "css-tree": {
6887
+ "version": "1.0.0-alpha.37",
6888
+ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz",
6889
+ "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==",
6890
+ "dev": true,
6891
+ "requires": {
6892
+ "mdn-data": "2.0.4",
6893
+ "source-map": "^0.6.1"
6894
+ }
6895
+ },
6896
+ "css-what": {
6897
+ "version": "3.4.2",
6898
+ "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz",
6899
+ "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==",
6900
+ "dev": true
6901
+ },
6902
+ "cssdb": {
6903
+ "version": "4.4.0",
6904
+ "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz",
6905
+ "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==",
6906
+ "dev": true
6907
+ },
6908
+ "cssesc": {
6909
+ "version": "3.0.0",
6910
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
6911
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
6912
+ "dev": true
6913
+ },
6914
+ "csso": {
6915
+ "version": "4.2.0",
6916
+ "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz",
6917
+ "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==",
6918
+ "dev": true,
6919
+ "requires": {
6920
+ "css-tree": "^1.1.2"
6921
+ },
6922
+ "dependencies": {
6923
+ "css-tree": {
6924
+ "version": "1.1.2",
6925
+ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.2.tgz",
6926
+ "integrity": "sha512-wCoWush5Aeo48GLhfHPbmvZs59Z+M7k5+B1xDnXbdWNcEF423DoFdqSWE0PM5aNk5nI5cp1q7ms36zGApY/sKQ==",
6927
+ "dev": true,
6928
+ "requires": {
6929
+ "mdn-data": "2.0.14",
6930
+ "source-map": "^0.6.1"
6931
+ }
6932
+ },
6933
+ "mdn-data": {
6934
+ "version": "2.0.14",
6935
+ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz",
6936
+ "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==",
6937
+ "dev": true
6938
+ }
6939
+ }
6940
+ },
6941
+ "csstype": {
6942
+ "version": "3.0.7",
6943
+ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.7.tgz",
6944
+ "integrity": "sha512-KxnUB0ZMlnUWCsx2Z8MUsr6qV6ja1w9ArPErJaJaF8a5SOWoHLIszeCTKGRGRgtLgYrs1E8CHkNSP1VZTTPc9g=="
6945
+ },
6946
+ "currently-unhandled": {
6947
+ "version": "0.4.1",
6948
+ "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
6949
+ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
6950
+ "requires": {
6951
+ "array-find-index": "^1.0.1"
6952
+ }
6953
+ },
6954
+ "dashdash": {
6955
+ "version": "1.14.1",
6956
+ "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
6957
+ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
6958
+ "dev": true,
6959
+ "requires": {
6960
+ "assert-plus": "^1.0.0"
6961
+ }
6962
+ },
6963
+ "debug": {
6964
+ "version": "2.6.9",
6965
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
6966
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
6967
+ "dev": true,
6968
+ "requires": {
6969
+ "ms": "2.0.0"
6970
+ }
6971
+ },
6972
+ "decamelize": {
6973
+ "version": "1.2.0",
6974
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
6975
+ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
6976
+ },
6977
+ "decode-uri-component": {
6978
+ "version": "0.2.0",
6979
+ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
6980
+ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU="
6981
+ },
6982
+ "decompress": {
6983
+ "version": "4.2.1",
6984
+ "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.1.tgz",
6985
+ "integrity": "sha512-e48kc2IjU+2Zw8cTb6VZcJQ3lgVbS4uuB1TfCHbiZIP/haNXm+SVyhu+87jts5/3ROpd82GSVCoNs/z8l4ZOaQ==",
6986
+ "requires": {
6987
+ "decompress-tar": "^4.0.0",
6988
+ "decompress-tarbz2": "^4.0.0",
6989
+ "decompress-targz": "^4.0.0",
6990
+ "decompress-unzip": "^4.0.1",
6991
+ "graceful-fs": "^4.1.10",
6992
+ "make-dir": "^1.0.0",
6993
+ "pify": "^2.3.0",
6994
+ "strip-dirs": "^2.0.0"
6995
+ }
6996
+ },
6997
+ "decompress-response": {
6998
+ "version": "3.3.0",
6999
+ "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz",
7000
+ "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=",
7001
+ "requires": {
7002
+ "mimic-response": "^1.0.0"
7003
+ }
7004
+ },
7005
+ "decompress-tar": {
7006
+ "version": "4.1.1",
7007
+ "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz",
7008
+ "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==",
7009
+ "requires": {
7010
+ "file-type": "^5.2.0",
7011
+ "is-stream": "^1.1.0",
7012
+ "tar-stream": "^1.5.2"
7013
+ },
7014
+ "dependencies": {
7015
+ "is-stream": {
7016
+ "version": "1.1.0",
7017
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
7018
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
7019
+ }
7020
+ }
7021
+ },
7022
+ "decompress-tarbz2": {
7023
+ "version": "4.1.1",
7024
+ "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz",
7025
+ "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==",
7026
+ "requires": {
7027
+ "decompress-tar": "^4.1.0",
7028
+ "file-type": "^6.1.0",
7029
+ "is-stream": "^1.1.0",
7030
+ "seek-bzip": "^1.0.5",
7031
+ "unbzip2-stream": "^1.0.9"
7032
+ },
7033
+ "dependencies": {
7034
+ "file-type": {
7035
+ "version": "6.2.0",
7036
+ "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz",
7037
+ "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg=="
7038
+ },
7039
+ "is-stream": {
7040
+ "version": "1.1.0",
7041
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
7042
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
7043
+ }
7044
+ }
7045
+ },
7046
+ "decompress-targz": {
7047
+ "version": "4.1.1",
7048
+ "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz",
7049
+ "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==",
7050
+ "requires": {
7051
+ "decompress-tar": "^4.1.1",
7052
+ "file-type": "^5.2.0",
7053
+ "is-stream": "^1.1.0"
7054
+ },
7055
+ "dependencies": {
7056
+ "is-stream": {
7057
+ "version": "1.1.0",
7058
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
7059
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
7060
+ }
7061
+ }
7062
+ },
7063
+ "decompress-unzip": {
7064
+ "version": "4.0.1",
7065
+ "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz",
7066
+ "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=",
7067
+ "requires": {
7068
+ "file-type": "^3.8.0",
7069
+ "get-stream": "^2.2.0",
7070
+ "pify": "^2.3.0",
7071
+ "yauzl": "^2.4.2"
7072
+ },
7073
+ "dependencies": {
7074
+ "file-type": {
7075
+ "version": "3.9.0",
7076
+ "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz",
7077
+ "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek="
7078
+ },
7079
+ "get-stream": {
7080
+ "version": "2.3.1",
7081
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz",
7082
+ "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=",
7083
+ "requires": {
7084
+ "object-assign": "^4.0.1",
7085
+ "pinkie-promise": "^2.0.0"
7086
+ }
7087
+ }
7088
+ }
7089
+ },
7090
+ "deep-is": {
7091
+ "version": "0.1.3",
7092
+ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
7093
+ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
7094
+ "dev": true
7095
+ },
7096
+ "deepmerge": {
7097
+ "version": "4.2.2",
7098
+ "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
7099
+ "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg=="
7100
+ },
7101
+ "define-properties": {
7102
+ "version": "1.1.3",
7103
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
7104
+ "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
7105
+ "dev": true,
7106
+ "requires": {
7107
+ "object-keys": "^1.0.12"
7108
+ }
7109
+ },
7110
+ "define-property": {
7111
+ "version": "2.0.2",
7112
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
7113
+ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
7114
+ "dev": true,
7115
+ "requires": {
7116
+ "is-descriptor": "^1.0.2",
7117
+ "isobject": "^3.0.1"
7118
+ },
7119
+ "dependencies": {
7120
+ "is-accessor-descriptor": {
7121
+ "version": "1.0.0",
7122
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
7123
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
7124
+ "dev": true,
7125
+ "requires": {
7126
+ "kind-of": "^6.0.0"
7127
+ }
7128
+ },
7129
+ "is-data-descriptor": {
7130
+ "version": "1.0.0",
7131
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
7132
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
7133
+ "dev": true,
7134
+ "requires": {
7135
+ "kind-of": "^6.0.0"
7136
+ }
7137
+ },
7138
+ "is-descriptor": {
7139
+ "version": "1.0.2",
7140
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
7141
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
7142
+ "dev": true,
7143
+ "requires": {
7144
+ "is-accessor-descriptor": "^1.0.0",
7145
+ "is-data-descriptor": "^1.0.0",
7146
+ "kind-of": "^6.0.2"
7147
+ }
7148
+ }
7149
+ }
7150
+ },
7151
+ "delayed-stream": {
7152
+ "version": "1.0.0",
7153
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
7154
+ "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
7155
+ "dev": true
7156
+ },
7157
+ "delegate": {
7158
+ "version": "3.2.0",
7159
+ "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz",
7160
+ "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==",
7161
+ "dev": true
7162
+ },
7163
+ "delegates": {
7164
+ "version": "1.0.0",
7165
+ "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
7166
+ "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
7167
+ "dev": true
7168
+ },
7169
+ "diff": {
7170
+ "version": "4.0.2",
7171
+ "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
7172
+ "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
7173
+ "dev": true
7174
+ },
7175
+ "diff-sequences": {
7176
+ "version": "26.6.2",
7177
+ "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz",
7178
+ "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==",
7179
+ "dev": true
7180
+ },
7181
+ "dir-glob": {
7182
+ "version": "3.0.1",
7183
+ "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
7184
+ "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
7185
+ "requires": {
7186
+ "path-type": "^4.0.0"
7187
+ },
7188
+ "dependencies": {
7189
+ "path-type": {
7190
+ "version": "4.0.0",
7191
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
7192
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
7193
+ }
7194
+ }
7195
+ },
7196
+ "direction": {
7197
+ "version": "1.0.4",
7198
+ "resolved": "https://registry.npmjs.org/direction/-/direction-1.0.4.tgz",
7199
+ "integrity": "sha512-GYqKi1aH7PJXxdhTeZBFrg8vUBeKXi+cNprXsC1kpJcbcVnV9wBsrOu1cQEdG0WeQwlfHiy3XvnKfIrJ2R0NzQ==",
7200
+ "dev": true
7201
+ },
7202
+ "discontinuous-range": {
7203
+ "version": "1.0.0",
7204
+ "resolved": "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz",
7205
+ "integrity": "sha1-44Mx8IRLukm5qctxx3FYWqsbxlo=",
7206
+ "dev": true
7207
+ },
7208
+ "doctrine": {
7209
+ "version": "2.1.0",
7210
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
7211
+ "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
7212
+ "dev": true,
7213
+ "requires": {
7214
+ "esutils": "^2.0.2"
7215
+ }
7216
+ },
7217
+ "document.contains": {
7218
+ "version": "1.0.2",
7219
+ "resolved": "https://registry.npmjs.org/document.contains/-/document.contains-1.0.2.tgz",
7220
+ "integrity": "sha512-YcvYFs15mX8m3AO1QNQy3BlIpSMfNRj3Ujk2BEJxsZG+HZf7/hZ6jr7mDpXrF8q+ff95Vef5yjhiZxm8CGJr6Q==",
7221
+ "dev": true,
7222
+ "requires": {
7223
+ "define-properties": "^1.1.3"
7224
+ }
7225
+ },
7226
+ "dom-scroll-into-view": {
7227
+ "version": "1.2.1",
7228
+ "resolved": "https://registry.npmjs.org/dom-scroll-into-view/-/dom-scroll-into-view-1.2.1.tgz",
7229
+ "integrity": "sha1-6PNnMt0ImwIBqI14Fdw/iObWbH4=",
7230
+ "dev": true
7231
+ },
7232
+ "dom-serializer": {
7233
+ "version": "0.2.2",
7234
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz",
7235
+ "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==",
7236
+ "dev": true,
7237
+ "requires": {
7238
+ "domelementtype": "^2.0.1",
7239
+ "entities": "^2.0.0"
7240
+ },
7241
+ "dependencies": {
7242
+ "domelementtype": {
7243
+ "version": "2.1.0",
7244
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz",
7245
+ "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==",
7246
+ "dev": true
7247
+ }
7248
+ }
7249
+ },
7250
+ "domelementtype": {
7251
+ "version": "1.3.1",
7252
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
7253
+ "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==",
7254
+ "dev": true
7255
+ },
7256
+ "domhandler": {
7257
+ "version": "4.0.0",
7258
+ "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.0.0.tgz",
7259
+ "integrity": "sha512-KPTbnGQ1JeEMQyO1iYXoagsI6so/C96HZiFyByU3T6iAzpXn8EGEvct6unm1ZGoed8ByO2oirxgwxBmqKF9haA==",
7260
+ "dev": true,
7261
+ "requires": {
7262
+ "domelementtype": "^2.1.0"
7263
+ },
7264
+ "dependencies": {
7265
+ "domelementtype": {
7266
+ "version": "2.1.0",
7267
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz",
7268
+ "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==",
7269
+ "dev": true
7270
+ }
7271
+ }
7272
+ },
7273
+ "domutils": {
7274
+ "version": "1.7.0",
7275
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz",
7276
+ "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==",
7277
+ "dev": true,
7278
+ "requires": {
7279
+ "dom-serializer": "0",
7280
+ "domelementtype": "1"
7281
+ }
7282
+ },
7283
+ "download": {
7284
+ "version": "6.2.5",
7285
+ "resolved": "https://registry.npmjs.org/download/-/download-6.2.5.tgz",
7286
+ "integrity": "sha512-DpO9K1sXAST8Cpzb7kmEhogJxymyVUd5qz/vCOSyvwtp2Klj2XcDt5YUuasgxka44SxF0q5RriKIwJmQHG2AuA==",
7287
+ "requires": {
7288
+ "caw": "^2.0.0",
7289
+ "content-disposition": "^0.5.2",
7290
+ "decompress": "^4.0.0",
7291
+ "ext-name": "^5.0.0",
7292
+ "file-type": "5.2.0",
7293
+ "filenamify": "^2.0.0",
7294
+ "get-stream": "^3.0.0",
7295
+ "got": "^7.0.0",
7296
+ "make-dir": "^1.0.0",
7297
+ "p-event": "^1.0.0",
7298
+ "pify": "^3.0.0"
7299
+ },
7300
+ "dependencies": {
7301
+ "get-stream": {
7302
+ "version": "3.0.0",
7303
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
7304
+ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ="
7305
+ },
7306
+ "pify": {
7307
+ "version": "3.0.0",
7308
+ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
7309
+ "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY="
7310
+ }
7311
+ }
7312
+ },
7313
+ "downshift": {
7314
+ "version": "6.1.1",
7315
+ "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.1.tgz",
7316
+ "integrity": "sha512-ch8Sh/j7gVqQd7Kcv3A5TkGfldmxmlQrRPZJYWEhzh24+h7WA4vXssuhcGNJrD8YPJlZYQGHcaX8BNhS0IcOvg==",
7317
+ "dev": true,
7318
+ "requires": {
7319
+ "@babel/runtime": "^7.12.5",
7320
+ "compute-scroll-into-view": "^1.0.17",
7321
+ "prop-types": "^15.7.2",
7322
+ "react-is": "^17.0.1"
7323
+ },
7324
+ "dependencies": {
7325
+ "react-is": {
7326
+ "version": "17.0.2",
7327
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
7328
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
7329
+ "dev": true
7330
+ }
7331
+ }
7332
+ },
7333
+ "duplexer3": {
7334
+ "version": "0.1.4",
7335
+ "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz",
7336
+ "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI="
7337
+ },
7338
+ "ecc-jsbn": {
7339
+ "version": "0.1.2",
7340
+ "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
7341
+ "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
7342
+ "dev": true,
7343
+ "requires": {
7344
+ "jsbn": "~0.1.0",
7345
+ "safer-buffer": "^2.1.0"
7346
+ }
7347
+ },
7348
+ "electron-to-chromium": {
7349
+ "version": "1.3.695",
7350
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.695.tgz",
7351
+ "integrity": "sha512-lz66RliUqLHU1Ojxx1A4QUxKydjiQ79Y4dZyPobs2Dmxj5aVL2TM3KoQ2Gs7HS703Bfny+ukI3KOxwAB0xceHQ==",
7352
+ "dev": true
7353
+ },
7354
+ "emoji-regex": {
7355
+ "version": "7.0.3",
7356
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
7357
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
7358
+ "dev": true
7359
+ },
7360
+ "emojis-list": {
7361
+ "version": "3.0.0",
7362
+ "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
7363
+ "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q=="
7364
+ },
7365
+ "emotion": {
7366
+ "version": "10.0.27",
7367
+ "resolved": "https://registry.npmjs.org/emotion/-/emotion-10.0.27.tgz",
7368
+ "integrity": "sha512-2xdDzdWWzue8R8lu4G76uWX5WhyQuzATon9LmNeCy/2BHVC6dsEpfhN1a0qhELgtDVdjyEA6J8Y/VlI5ZnaH0g==",
7369
+ "dev": true,
7370
+ "requires": {
7371
+ "babel-plugin-emotion": "^10.0.27",
7372
+ "create-emotion": "^10.0.27"
7373
+ }
7374
+ },
7375
+ "emotion-theming": {
7376
+ "version": "10.0.27",
7377
+ "resolved": "https://registry.npmjs.org/emotion-theming/-/emotion-theming-10.0.27.tgz",
7378
+ "integrity": "sha512-MlF1yu/gYh8u+sLUqA0YuA9JX0P4Hb69WlKc/9OLo+WCXuX6sy/KoIa+qJimgmr2dWqnypYKYPX37esjDBbhdw==",
7379
+ "dev": true,
7380
+ "requires": {
7381
+ "@babel/runtime": "^7.5.5",
7382
+ "@emotion/weak-memoize": "0.2.5",
7383
+ "hoist-non-react-statics": "^3.3.0"
7384
+ }
7385
+ },
7386
+ "encoding": {
7387
+ "version": "0.1.13",
7388
+ "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
7389
+ "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
7390
+ "dev": true,
7391
+ "requires": {
7392
+ "iconv-lite": "^0.6.2"
7393
+ }
7394
+ },
7395
+ "end-of-stream": {
7396
+ "version": "1.4.4",
7397
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
7398
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
7399
+ "requires": {
7400
+ "once": "^1.4.0"
7401
+ }
7402
+ },
7403
+ "enhanced-resolve": {
7404
+ "version": "5.7.0",
7405
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.7.0.tgz",
7406
+ "integrity": "sha512-6njwt/NsZFUKhM6j9U8hzVyD4E4r0x7NQzhTCbcWOJ0IQjNSAoalWmb0AE51Wn+fwan5qVESWi7t2ToBxs9vrw==",
7407
+ "dev": true,
7408
+ "requires": {
7409
+ "graceful-fs": "^4.2.4",
7410
+ "tapable": "^2.2.0"
7411
+ }
7412
+ },
7413
+ "enquirer": {
7414
+ "version": "2.3.6",
7415
+ "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
7416
+ "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==",
7417
+ "dev": true,
7418
+ "requires": {
7419
+ "ansi-colors": "^4.1.1"
7420
+ }
7421
+ },
7422
+ "entities": {
7423
+ "version": "2.2.0",
7424
+ "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
7425
+ "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
7426
+ "dev": true
7427
+ },
7428
+ "env-paths": {
7429
+ "version": "2.2.1",
7430
+ "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz",
7431
+ "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==",
7432
+ "dev": true
7433
+ },
7434
+ "envinfo": {
7435
+ "version": "7.7.4",
7436
+ "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.7.4.tgz",
7437
+ "integrity": "sha512-TQXTYFVVwwluWSFis6K2XKxgrD22jEv0FTuLCQI+OjH7rn93+iY0fSSFM5lrSxFY+H1+B0/cvvlamr3UsBivdQ==",
7438
+ "dev": true
7439
+ },
7440
+ "enzyme": {
7441
+ "version": "3.11.0",
7442
+ "resolved": "https://registry.npmjs.org/enzyme/-/enzyme-3.11.0.tgz",
7443
+ "integrity": "sha512-Dw8/Gs4vRjxY6/6i9wU0V+utmQO9kvh9XLnz3LIudviOnVYDEe2ec+0k+NQoMamn1VrjKgCUOWj5jG/5M5M0Qw==",
7444
+ "dev": true,
7445
+ "requires": {
7446
+ "array.prototype.flat": "^1.2.3",
7447
+ "cheerio": "^1.0.0-rc.3",
7448
+ "enzyme-shallow-equal": "^1.0.1",
7449
+ "function.prototype.name": "^1.1.2",
7450
+ "has": "^1.0.3",
7451
+ "html-element-map": "^1.2.0",
7452
+ "is-boolean-object": "^1.0.1",
7453
+ "is-callable": "^1.1.5",
7454
+ "is-number-object": "^1.0.4",
7455
+ "is-regex": "^1.0.5",
7456
+ "is-string": "^1.0.5",
7457
+ "is-subset": "^0.1.1",
7458
+ "lodash.escape": "^4.0.1",
7459
+ "lodash.isequal": "^4.5.0",
7460
+ "object-inspect": "^1.7.0",
7461
+ "object-is": "^1.0.2",
7462
+ "object.assign": "^4.1.0",
7463
+ "object.entries": "^1.1.1",
7464
+ "object.values": "^1.1.1",
7465
+ "raf": "^3.4.1",
7466
+ "rst-selector-parser": "^2.2.3",
7467
+ "string.prototype.trim": "^1.2.1"
7468
+ }
7469
+ },
7470
+ "enzyme-adapter-react-16": {
7471
+ "version": "1.15.6",
7472
+ "resolved": "https://registry.npmjs.org/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.6.tgz",
7473
+ "integrity": "sha512-yFlVJCXh8T+mcQo8M6my9sPgeGzj85HSHi6Apgf1Cvq/7EL/J9+1JoJmJsRxZgyTvPMAqOEpRSu/Ii/ZpyOk0g==",
7474
+ "dev": true,
7475
+ "requires": {
7476
+ "enzyme-adapter-utils": "^1.14.0",
7477
+ "enzyme-shallow-equal": "^1.0.4",
7478
+ "has": "^1.0.3",
7479
+ "object.assign": "^4.1.2",
7480
+ "object.values": "^1.1.2",
7481
+ "prop-types": "^15.7.2",
7482
+ "react-is": "^16.13.1",
7483
+ "react-test-renderer": "^16.0.0-0",
7484
+ "semver": "^5.7.0"
7485
+ }
7486
+ },
7487
+ "enzyme-adapter-utils": {
7488
+ "version": "1.14.0",
7489
+ "resolved": "https://registry.npmjs.org/enzyme-adapter-utils/-/enzyme-adapter-utils-1.14.0.tgz",
7490
+ "integrity": "sha512-F/z/7SeLt+reKFcb7597IThpDp0bmzcH1E9Oabqv+o01cID2/YInlqHbFl7HzWBl4h3OdZYedtwNDOmSKkk0bg==",
7491
+ "dev": true,
7492
+ "requires": {
7493
+ "airbnb-prop-types": "^2.16.0",
7494
+ "function.prototype.name": "^1.1.3",
7495
+ "has": "^1.0.3",
7496
+ "object.assign": "^4.1.2",
7497
+ "object.fromentries": "^2.0.3",
7498
+ "prop-types": "^15.7.2",
7499
+ "semver": "^5.7.1"
7500
+ }
7501
+ },
7502
+ "enzyme-shallow-equal": {
7503
+ "version": "1.0.4",
7504
+ "resolved": "https://registry.npmjs.org/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.4.tgz",
7505
+ "integrity": "sha512-MttIwB8kKxypwHvRynuC3ahyNc+cFbR8mjVIltnmzQ0uKGqmsfO4bfBuLxb0beLNPhjblUEYvEbsg+VSygvF1Q==",
7506
+ "dev": true,
7507
+ "requires": {
7508
+ "has": "^1.0.3",
7509
+ "object-is": "^1.1.2"
7510
+ }
7511
+ },
7512
+ "enzyme-to-json": {
7513
+ "version": "3.6.1",
7514
+ "resolved": "https://registry.npmjs.org/enzyme-to-json/-/enzyme-to-json-3.6.1.tgz",
7515
+ "integrity": "sha512-15tXuONeq5ORoZjV/bUo2gbtZrN2IH+Z6DvL35QmZyKHgbY1ahn6wcnLd9Xv9OjiwbAXiiP8MRZwbZrCv1wYNg==",
7516
+ "dev": true,
7517
+ "requires": {
7518
+ "@types/cheerio": "^0.22.22",
7519
+ "lodash": "^4.17.15",
7520
+ "react-is": "^16.12.0"
7521
+ }
7522
+ },
7523
+ "equivalent-key-map": {
7524
+ "version": "0.2.2",
7525
+ "resolved": "https://registry.npmjs.org/equivalent-key-map/-/equivalent-key-map-0.2.2.tgz",
7526
+ "integrity": "sha512-xvHeyCDbZzkpN4VHQj/n+j2lOwL0VWszG30X4cOrc9Y7Tuo2qCdZK/0AMod23Z5dCtNUbaju6p0rwOhHUk05ew==",
7527
+ "dev": true
7528
+ },
7529
+ "error-ex": {
7530
+ "version": "1.3.2",
7531
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
7532
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
7533
+ "requires": {
7534
+ "is-arrayish": "^0.2.1"
7535
+ }
7536
+ },
7537
+ "es-abstract": {
7538
+ "version": "1.18.0",
7539
+ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz",
7540
+ "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==",
7541
+ "dev": true,
7542
+ "requires": {
7543
+ "call-bind": "^1.0.2",
7544
+ "es-to-primitive": "^1.2.1",
7545
+ "function-bind": "^1.1.1",
7546
+ "get-intrinsic": "^1.1.1",
7547
+ "has": "^1.0.3",
7548
+ "has-symbols": "^1.0.2",
7549
+ "is-callable": "^1.2.3",
7550
+ "is-negative-zero": "^2.0.1",
7551
+ "is-regex": "^1.1.2",
7552
+ "is-string": "^1.0.5",
7553
+ "object-inspect": "^1.9.0",
7554
+ "object-keys": "^1.1.1",
7555
+ "object.assign": "^4.1.2",
7556
+ "string.prototype.trimend": "^1.0.4",
7557
+ "string.prototype.trimstart": "^1.0.4",
7558
+ "unbox-primitive": "^1.0.0"
7559
+ }
7560
+ },
7561
+ "es-module-lexer": {
7562
+ "version": "0.4.1",
7563
+ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz",
7564
+ "integrity": "sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==",
7565
+ "dev": true
7566
+ },
7567
+ "es-to-primitive": {
7568
+ "version": "1.2.1",
7569
+ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
7570
+ "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
7571
+ "dev": true,
7572
+ "requires": {
7573
+ "is-callable": "^1.1.4",
7574
+ "is-date-object": "^1.0.1",
7575
+ "is-symbol": "^1.0.2"
7576
+ }
7577
+ },
7578
+ "escalade": {
7579
+ "version": "3.1.1",
7580
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
7581
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
7582
+ "dev": true
7583
+ },
7584
+ "escape-string-regexp": {
7585
+ "version": "1.0.5",
7586
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
7587
+ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
7588
+ },
7589
+ "eslint": {
7590
+ "version": "7.22.0",
7591
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.22.0.tgz",
7592
+ "integrity": "sha512-3VawOtjSJUQiiqac8MQc+w457iGLfuNGLFn8JmF051tTKbh5/x/0vlcEj8OgDCaw7Ysa2Jn8paGshV7x2abKXg==",
7593
+ "dev": true,
7594
+ "requires": {
7595
+ "@babel/code-frame": "7.12.11",
7596
+ "@eslint/eslintrc": "^0.4.0",
7597
+ "ajv": "^6.10.0",
7598
+ "chalk": "^4.0.0",
7599
+ "cross-spawn": "^7.0.2",
7600
+ "debug": "^4.0.1",
7601
+ "doctrine": "^3.0.0",
7602
+ "enquirer": "^2.3.5",
7603
+ "eslint-scope": "^5.1.1",
7604
+ "eslint-utils": "^2.1.0",
7605
+ "eslint-visitor-keys": "^2.0.0",
7606
+ "espree": "^7.3.1",
7607
+ "esquery": "^1.4.0",
7608
+ "esutils": "^2.0.2",
7609
+ "file-entry-cache": "^6.0.1",
7610
+ "functional-red-black-tree": "^1.0.1",
7611
+ "glob-parent": "^5.0.0",
7612
+ "globals": "^13.6.0",
7613
+ "ignore": "^4.0.6",
7614
+ "import-fresh": "^3.0.0",
7615
+ "imurmurhash": "^0.1.4",
7616
+ "is-glob": "^4.0.0",
7617
+ "js-yaml": "^3.13.1",
7618
+ "json-stable-stringify-without-jsonify": "^1.0.1",
7619
+ "levn": "^0.4.1",
7620
+ "lodash": "^4.17.21",
7621
+ "minimatch": "^3.0.4",
7622
+ "natural-compare": "^1.4.0",
7623
+ "optionator": "^0.9.1",
7624
+ "progress": "^2.0.0",
7625
+ "regexpp": "^3.1.0",
7626
+ "semver": "^7.2.1",
7627
+ "strip-ansi": "^6.0.0",
7628
+ "strip-json-comments": "^3.1.0",
7629
+ "table": "^6.0.4",
7630
+ "text-table": "^0.2.0",
7631
+ "v8-compile-cache": "^2.0.3"
7632
+ },
7633
+ "dependencies": {
7634
+ "@babel/code-frame": {
7635
+ "version": "7.12.11",
7636
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz",
7637
+ "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==",
7638
+ "dev": true,
7639
+ "requires": {
7640
+ "@babel/highlight": "^7.10.4"
7641
+ }
7642
+ },
7643
+ "ansi-regex": {
7644
+ "version": "5.0.0",
7645
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
7646
+ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
7647
+ "dev": true
7648
+ },
7649
+ "ansi-styles": {
7650
+ "version": "4.3.0",
7651
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
7652
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
7653
+ "dev": true,
7654
+ "requires": {
7655
+ "color-convert": "^2.0.1"
7656
+ }
7657
+ },
7658
+ "chalk": {
7659
+ "version": "4.1.0",
7660
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
7661
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
7662
+ "dev": true,
7663
+ "requires": {
7664
+ "ansi-styles": "^4.1.0",
7665
+ "supports-color": "^7.1.0"
7666
+ }
7667
+ },
7668
+ "color-convert": {
7669
+ "version": "2.0.1",
7670
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
7671
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
7672
+ "dev": true,
7673
+ "requires": {
7674
+ "color-name": "~1.1.4"
7675
+ }
7676
+ },
7677
+ "color-name": {
7678
+ "version": "1.1.4",
7679
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
7680
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
7681
+ "dev": true
7682
+ },
7683
+ "debug": {
7684
+ "version": "4.3.1",
7685
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
7686
+ "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
7687
+ "dev": true,
7688
+ "requires": {
7689
+ "ms": "2.1.2"
7690
+ }
7691
+ },
7692
+ "doctrine": {
7693
+ "version": "3.0.0",
7694
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
7695
+ "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
7696
+ "dev": true,
7697
+ "requires": {
7698
+ "esutils": "^2.0.2"
7699
+ }
7700
+ },
7701
+ "globals": {
7702
+ "version": "13.7.0",
7703
+ "resolved": "https://registry.npmjs.org/globals/-/globals-13.7.0.tgz",
7704
+ "integrity": "sha512-Aipsz6ZKRxa/xQkZhNg0qIWXT6x6rD46f6x/PCnBomlttdIyAPak4YD9jTmKpZ72uROSMU87qJtcgpgHaVchiA==",
7705
+ "dev": true,
7706
+ "requires": {
7707
+ "type-fest": "^0.20.2"
7708
+ }
7709
+ },
7710
+ "has-flag": {
7711
+ "version": "4.0.0",
7712
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
7713
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
7714
+ "dev": true
7715
+ },
7716
+ "ignore": {
7717
+ "version": "4.0.6",
7718
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
7719
+ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
7720
+ "dev": true
7721
+ },
7722
+ "lru-cache": {
7723
+ "version": "6.0.0",
7724
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
7725
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
7726
+ "dev": true,
7727
+ "requires": {
7728
+ "yallist": "^4.0.0"
7729
+ }
7730
+ },
7731
+ "ms": {
7732
+ "version": "2.1.2",
7733
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
7734
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
7735
+ "dev": true
7736
+ },
7737
+ "semver": {
7738
+ "version": "7.3.5",
7739
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
7740
+ "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
7741
+ "dev": true,
7742
+ "requires": {
7743
+ "lru-cache": "^6.0.0"
7744
+ }
7745
+ },
7746
+ "strip-ansi": {
7747
+ "version": "6.0.0",
7748
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
7749
+ "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
7750
+ "dev": true,
7751
+ "requires": {
7752
+ "ansi-regex": "^5.0.0"
7753
+ }
7754
+ },
7755
+ "strip-json-comments": {
7756
+ "version": "3.1.1",
7757
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
7758
+ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
7759
+ "dev": true
7760
+ },
7761
+ "supports-color": {
7762
+ "version": "7.2.0",
7763
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
7764
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
7765
+ "dev": true,
7766
+ "requires": {
7767
+ "has-flag": "^4.0.0"
7768
+ }
7769
+ },
7770
+ "type-fest": {
7771
+ "version": "0.20.2",
7772
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
7773
+ "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
7774
+ "dev": true
7775
+ },
7776
+ "yallist": {
7777
+ "version": "4.0.0",
7778
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
7779
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
7780
+ "dev": true
7781
+ }
7782
+ }
7783
+ },
7784
+ "eslint-loader": {
7785
+ "version": "2.2.1",
7786
+ "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-2.2.1.tgz",
7787
+ "integrity": "sha512-RLgV9hoCVsMLvOxCuNjdqOrUqIj9oJg8hF44vzJaYqsAHuY9G2YAeN3joQ9nxP0p5Th9iFSIpKo+SD8KISxXRg==",
7788
+ "dev": true,
7789
+ "requires": {
7790
+ "loader-fs-cache": "^1.0.0",
7791
+ "loader-utils": "^1.0.2",
7792
+ "object-assign": "^4.0.1",
7793
+ "object-hash": "^1.1.4",
7794
+ "rimraf": "^2.6.1"
7795
+ }
7796
+ },
7797
+ "eslint-plugin-react": {
7798
+ "version": "7.23.0",
7799
+ "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.23.0.tgz",
7800
+ "integrity": "sha512-5rfsRiHKIAdhxv3NxrzE+dBC7BFsNhuErL+Fy940oD1cau55JVTnuL25sqXqD7XY0OkYCRsKEqxZVwezE5ol5w==",
7801
+ "dev": true,
7802
+ "requires": {
7803
+ "array-includes": "^3.1.3",
7804
+ "array.prototype.flatmap": "^1.2.4",
7805
+ "doctrine": "^2.1.0",
7806
+ "has": "^1.0.3",
7807
+ "jsx-ast-utils": "^2.4.1 || ^3.0.0",
7808
+ "minimatch": "^3.0.4",
7809
+ "object.entries": "^1.1.3",
7810
+ "object.fromentries": "^2.0.4",
7811
+ "object.values": "^1.1.3",
7812
+ "prop-types": "^15.7.2",
7813
+ "resolve": "^2.0.0-next.3",
7814
+ "string.prototype.matchall": "^4.0.4"
7815
+ },
7816
+ "dependencies": {
7817
+ "resolve": {
7818
+ "version": "2.0.0-next.3",
7819
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.3.tgz",
7820
+ "integrity": "sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==",
7821
+ "dev": true,
7822
+ "requires": {
7823
+ "is-core-module": "^2.2.0",
7824
+ "path-parse": "^1.0.6"
7825
+ }
7826
+ }
7827
+ }
7828
+ },
7829
+ "eslint-plugin-react-hooks": {
7830
+ "version": "4.2.0",
7831
+ "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz",
7832
+ "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==",
7833
+ "dev": true
7834
+ },
7835
+ "eslint-scope": {
7836
+ "version": "5.1.1",
7837
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
7838
+ "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
7839
+ "dev": true,
7840
+ "requires": {
7841
+ "esrecurse": "^4.3.0",
7842
+ "estraverse": "^4.1.1"
7843
+ }
7844
+ },
7845
+ "eslint-utils": {
7846
+ "version": "2.1.0",
7847
+ "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
7848
+ "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==",
7849
+ "dev": true,
7850
+ "requires": {
7851
+ "eslint-visitor-keys": "^1.1.0"
7852
+ },
7853
+ "dependencies": {
7854
+ "eslint-visitor-keys": {
7855
+ "version": "1.3.0",
7856
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
7857
+ "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
7858
+ "dev": true
7859
+ }
7860
+ }
7861
+ },
7862
+ "eslint-visitor-keys": {
7863
+ "version": "2.0.0",
7864
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz",
7865
+ "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==",
7866
+ "dev": true
7867
+ },
7868
+ "espree": {
7869
+ "version": "7.3.1",
7870
+ "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz",
7871
+ "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==",
7872
+ "dev": true,
7873
+ "requires": {
7874
+ "acorn": "^7.4.0",
7875
+ "acorn-jsx": "^5.3.1",
7876
+ "eslint-visitor-keys": "^1.3.0"
7877
+ },
7878
+ "dependencies": {
7879
+ "eslint-visitor-keys": {
7880
+ "version": "1.3.0",
7881
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
7882
+ "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
7883
+ "dev": true
7884
+ }
7885
+ }
7886
+ },
7887
+ "esprima": {
7888
+ "version": "4.0.1",
7889
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
7890
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
7891
+ "dev": true
7892
+ },
7893
+ "esquery": {
7894
+ "version": "1.4.0",
7895
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
7896
+ "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
7897
+ "dev": true,
7898
+ "requires": {
7899
+ "estraverse": "^5.1.0"
7900
+ },
7901
+ "dependencies": {
7902
+ "estraverse": {
7903
+ "version": "5.2.0",
7904
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
7905
+ "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
7906
+ "dev": true
7907
+ }
7908
+ }
7909
+ },
7910
+ "esrecurse": {
7911
+ "version": "4.3.0",
7912
+ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
7913
+ "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
7914
+ "dev": true,
7915
+ "requires": {
7916
+ "estraverse": "^5.2.0"
7917
+ },
7918
+ "dependencies": {
7919
+ "estraverse": {
7920
+ "version": "5.2.0",
7921
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
7922
+ "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
7923
+ "dev": true
7924
+ }
7925
+ }
7926
+ },
7927
+ "estraverse": {
7928
+ "version": "4.3.0",
7929
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
7930
+ "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
7931
+ "dev": true
7932
+ },
7933
+ "esutils": {
7934
+ "version": "2.0.3",
7935
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
7936
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
7937
+ "dev": true
7938
+ },
7939
+ "events": {
7940
+ "version": "3.3.0",
7941
+ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
7942
+ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
7943
+ "dev": true
7944
+ },
7945
+ "exec-sh": {
7946
+ "version": "0.3.5",
7947
+ "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.5.tgz",
7948
+ "integrity": "sha512-0hzpaUazv4mEccxdn3TXC+HWNeVXNKMCJRK6E7Xyg+LwGAYI3yFag6jTkd4injV+kChYDQS1ftqDhnDVWNhU8A==",
7949
+ "dev": true
7950
+ },
7951
+ "execa": {
7952
+ "version": "4.1.0",
7953
+ "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz",
7954
+ "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==",
7955
+ "requires": {
7956
+ "cross-spawn": "^7.0.0",
7957
+ "get-stream": "^5.0.0",
7958
+ "human-signals": "^1.1.1",
7959
+ "is-stream": "^2.0.0",
7960
+ "merge-stream": "^2.0.0",
7961
+ "npm-run-path": "^4.0.0",
7962
+ "onetime": "^5.1.0",
7963
+ "signal-exit": "^3.0.2",
7964
+ "strip-final-newline": "^2.0.0"
7965
+ },
7966
+ "dependencies": {
7967
+ "mimic-fn": {
7968
+ "version": "2.1.0",
7969
+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
7970
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="
7971
+ },
7972
+ "onetime": {
7973
+ "version": "5.1.2",
7974
+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
7975
+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
7976
+ "requires": {
7977
+ "mimic-fn": "^2.1.0"
7978
+ }
7979
+ }
7980
+ }
7981
+ },
7982
+ "executable": {
7983
+ "version": "4.1.1",
7984
+ "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz",
7985
+ "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==",
7986
+ "requires": {
7987
+ "pify": "^2.2.0"
7988
+ }
7989
+ },
7990
+ "expand-brackets": {
7991
+ "version": "2.1.4",
7992
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
7993
+ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
7994
+ "dev": true,
7995
+ "requires": {
7996
+ "debug": "^2.3.3",
7997
+ "define-property": "^0.2.5",
7998
+ "extend-shallow": "^2.0.1",
7999
+ "posix-character-classes": "^0.1.0",
8000
+ "regex-not": "^1.0.0",
8001
+ "snapdragon": "^0.8.1",
8002
+ "to-regex": "^3.0.1"
8003
+ },
8004
+ "dependencies": {
8005
+ "define-property": {
8006
+ "version": "0.2.5",
8007
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
8008
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
8009
+ "dev": true,
8010
+ "requires": {
8011
+ "is-descriptor": "^0.1.0"
8012
+ }
8013
+ },
8014
+ "extend-shallow": {
8015
+ "version": "2.0.1",
8016
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
8017
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
8018
+ "dev": true,
8019
+ "requires": {
8020
+ "is-extendable": "^0.1.0"
8021
+ }
8022
+ }
8023
+ }
8024
+ },
8025
+ "ext-list": {
8026
+ "version": "2.2.2",
8027
+ "resolved": "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz",
8028
+ "integrity": "sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==",
8029
+ "requires": {
8030
+ "mime-db": "^1.28.0"
8031
+ }
8032
+ },
8033
+ "ext-name": {
8034
+ "version": "5.0.0",
8035
+ "resolved": "https://registry.npmjs.org/ext-name/-/ext-name-5.0.0.tgz",
8036
+ "integrity": "sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==",
8037
+ "requires": {
8038
+ "ext-list": "^2.0.0",
8039
+ "sort-keys-length": "^1.0.0"
8040
+ }
8041
+ },
8042
+ "extend": {
8043
+ "version": "3.0.2",
8044
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
8045
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
8046
+ "dev": true
8047
+ },
8048
+ "extend-shallow": {
8049
+ "version": "3.0.2",
8050
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
8051
+ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
8052
+ "dev": true,
8053
+ "requires": {
8054
+ "assign-symbols": "^1.0.0",
8055
+ "is-extendable": "^1.0.1"
8056
+ },
8057
+ "dependencies": {
8058
+ "is-extendable": {
8059
+ "version": "1.0.1",
8060
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
8061
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
8062
+ "dev": true,
8063
+ "requires": {
8064
+ "is-plain-object": "^2.0.4"
8065
+ }
8066
+ }
8067
+ }
8068
+ },
8069
+ "extglob": {
8070
+ "version": "2.0.4",
8071
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
8072
+ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
8073
+ "dev": true,
8074
+ "requires": {
8075
+ "array-unique": "^0.3.2",
8076
+ "define-property": "^1.0.0",
8077
+ "expand-brackets": "^2.1.4",
8078
+ "extend-shallow": "^2.0.1",
8079
+ "fragment-cache": "^0.2.1",
8080
+ "regex-not": "^1.0.0",
8081
+ "snapdragon": "^0.8.1",
8082
+ "to-regex": "^3.0.1"
8083
+ },
8084
+ "dependencies": {
8085
+ "define-property": {
8086
+ "version": "1.0.0",
8087
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
8088
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
8089
+ "dev": true,
8090
+ "requires": {
8091
+ "is-descriptor": "^1.0.0"
8092
+ }
8093
+ },
8094
+ "extend-shallow": {
8095
+ "version": "2.0.1",
8096
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
8097
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
8098
+ "dev": true,
8099
+ "requires": {
8100
+ "is-extendable": "^0.1.0"
8101
+ }
8102
+ },
8103
+ "is-accessor-descriptor": {
8104
+ "version": "1.0.0",
8105
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
8106
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
8107
+ "dev": true,
8108
+ "requires": {
8109
+ "kind-of": "^6.0.0"
8110
+ }
8111
+ },
8112
+ "is-data-descriptor": {
8113
+ "version": "1.0.0",
8114
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
8115
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
8116
+ "dev": true,
8117
+ "requires": {
8118
+ "kind-of": "^6.0.0"
8119
+ }
8120
+ },
8121
+ "is-descriptor": {
8122
+ "version": "1.0.2",
8123
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
8124
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
8125
+ "dev": true,
8126
+ "requires": {
8127
+ "is-accessor-descriptor": "^1.0.0",
8128
+ "is-data-descriptor": "^1.0.0",
8129
+ "kind-of": "^6.0.2"
8130
+ }
8131
+ }
8132
+ }
8133
+ },
8134
+ "extsprintf": {
8135
+ "version": "1.3.0",
8136
+ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
8137
+ "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
8138
+ "dev": true
8139
+ },
8140
+ "fast-average-color": {
8141
+ "version": "4.3.0",
8142
+ "resolved": "https://registry.npmjs.org/fast-average-color/-/fast-average-color-4.3.0.tgz",
8143
+ "integrity": "sha512-k8FXd6+JeXoItmdNqB3hMwFgArryjdYBLuzEM8fRY/oztd/051yhSHU6GUrMOfIQU9dDHyFDcIAkGrQKlYtpDA==",
8144
+ "dev": true
8145
+ },
8146
+ "fast-deep-equal": {
8147
+ "version": "3.1.3",
8148
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
8149
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
8150
+ "dev": true
8151
+ },
8152
+ "fast-glob": {
8153
+ "version": "3.2.5",
8154
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz",
8155
+ "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==",
8156
+ "requires": {
8157
+ "@nodelib/fs.stat": "^2.0.2",
8158
+ "@nodelib/fs.walk": "^1.2.3",
8159
+ "glob-parent": "^5.1.0",
8160
+ "merge2": "^1.3.0",
8161
+ "micromatch": "^4.0.2",
8162
+ "picomatch": "^2.2.1"
8163
+ }
8164
+ },
8165
+ "fast-json-stable-stringify": {
8166
+ "version": "2.1.0",
8167
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
8168
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
8169
+ "dev": true
8170
+ },
8171
+ "fast-levenshtein": {
8172
+ "version": "2.0.6",
8173
+ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
8174
+ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
8175
+ "dev": true
8176
+ },
8177
+ "fast-memoize": {
8178
+ "version": "2.5.2",
8179
+ "resolved": "https://registry.npmjs.org/fast-memoize/-/fast-memoize-2.5.2.tgz",
8180
+ "integrity": "sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw==",
8181
+ "dev": true
8182
+ },
8183
+ "fastest-levenshtein": {
8184
+ "version": "1.0.12",
8185
+ "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz",
8186
+ "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==",
8187
+ "dev": true
8188
+ },
8189
+ "fastq": {
8190
+ "version": "1.11.0",
8191
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz",
8192
+ "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==",
8193
+ "requires": {
8194
+ "reusify": "^1.0.4"
8195
+ }
8196
+ },
8197
+ "fb-watchman": {
8198
+ "version": "2.0.1",
8199
+ "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz",
8200
+ "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==",
8201
+ "dev": true,
8202
+ "requires": {
8203
+ "bser": "2.1.1"
8204
+ }
8205
+ },
8206
+ "fd-slicer": {
8207
+ "version": "1.1.0",
8208
+ "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
8209
+ "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=",
8210
+ "requires": {
8211
+ "pend": "~1.2.0"
8212
+ }
8213
+ },
8214
+ "figgy-pudding": {
8215
+ "version": "3.5.2",
8216
+ "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz",
8217
+ "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw=="
8218
+ },
8219
+ "figures": {
8220
+ "version": "1.7.0",
8221
+ "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
8222
+ "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=",
8223
+ "requires": {
8224
+ "escape-string-regexp": "^1.0.5",
8225
+ "object-assign": "^4.1.0"
8226
+ }
8227
+ },
8228
+ "file-entry-cache": {
8229
+ "version": "6.0.1",
8230
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
8231
+ "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
8232
+ "dev": true,
8233
+ "requires": {
8234
+ "flat-cache": "^3.0.4"
8235
+ }
8236
+ },
8237
+ "file-type": {
8238
+ "version": "5.2.0",
8239
+ "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz",
8240
+ "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY="
8241
+ },
8242
+ "filename-reserved-regex": {
8243
+ "version": "2.0.0",
8244
+ "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz",
8245
+ "integrity": "sha1-q/c9+rc10EVECr/qLZHzieu/oik="
8246
+ },
8247
+ "filenamify": {
8248
+ "version": "2.1.0",
8249
+ "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-2.1.0.tgz",
8250
+ "integrity": "sha512-ICw7NTT6RsDp2rnYKVd8Fu4cr6ITzGy3+u4vUujPkabyaz+03F24NWEX7fs5fp+kBonlaqPH8fAO2NM+SXt/JA==",
8251
+ "requires": {
8252
+ "filename-reserved-regex": "^2.0.0",
8253
+ "strip-outer": "^1.0.0",
8254
+ "trim-repeated": "^1.0.0"
8255
+ }
8256
+ },
8257
+ "fill-range": {
8258
+ "version": "7.0.1",
8259
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
8260
+ "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
8261
+ "requires": {
8262
+ "to-regex-range": "^5.0.1"
8263
+ }
8264
+ },
8265
+ "find-cache-dir": {
8266
+ "version": "3.3.1",
8267
+ "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz",
8268
+ "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==",
8269
+ "requires": {
8270
+ "commondir": "^1.0.1",
8271
+ "make-dir": "^3.0.2",
8272
+ "pkg-dir": "^4.1.0"
8273
+ },
8274
+ "dependencies": {
8275
+ "make-dir": {
8276
+ "version": "3.1.0",
8277
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
8278
+ "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
8279
+ "requires": {
8280
+ "semver": "^6.0.0"
8281
+ }
8282
+ },
8283
+ "semver": {
8284
+ "version": "6.3.0",
8285
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
8286
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
8287
+ }
8288
+ }
8289
+ },
8290
+ "find-root": {
8291
+ "version": "1.1.0",
8292
+ "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
8293
+ "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==",
8294
+ "dev": true
8295
+ },
8296
+ "find-up": {
8297
+ "version": "1.1.2",
8298
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
8299
+ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
8300
+ "requires": {
8301
+ "path-exists": "^2.0.0",
8302
+ "pinkie-promise": "^2.0.0"
8303
+ }
8304
+ },
8305
+ "find-versions": {
8306
+ "version": "3.2.0",
8307
+ "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz",
8308
+ "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==",
8309
+ "requires": {
8310
+ "semver-regex": "^2.0.0"
8311
+ }
8312
+ },
8313
+ "flat-cache": {
8314
+ "version": "3.0.4",
8315
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
8316
+ "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
8317
+ "dev": true,
8318
+ "requires": {
8319
+ "flatted": "^3.1.0",
8320
+ "rimraf": "^3.0.2"
8321
+ },
8322
+ "dependencies": {
8323
+ "rimraf": {
8324
+ "version": "3.0.2",
8325
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
8326
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
8327
+ "dev": true,
8328
+ "requires": {
8329
+ "glob": "^7.1.3"
8330
+ }
8331
+ }
8332
+ }
8333
+ },
8334
+ "flatted": {
8335
+ "version": "3.1.1",
8336
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz",
8337
+ "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==",
8338
+ "dev": true
8339
+ },
8340
+ "flatten": {
8341
+ "version": "1.0.3",
8342
+ "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz",
8343
+ "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==",
8344
+ "dev": true
8345
+ },
8346
+ "follow-redirects": {
8347
+ "version": "1.13.3",
8348
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.3.tgz",
8349
+ "integrity": "sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA=="
8350
+ },
8351
+ "for-in": {
8352
+ "version": "1.0.2",
8353
+ "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
8354
+ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
8355
+ "dev": true
8356
+ },
8357
+ "forever-agent": {
8358
+ "version": "0.6.1",
8359
+ "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
8360
+ "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
8361
+ "dev": true
8362
+ },
8363
+ "form-data": {
8364
+ "version": "2.3.3",
8365
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
8366
+ "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
8367
+ "dev": true,
8368
+ "requires": {
8369
+ "asynckit": "^0.4.0",
8370
+ "combined-stream": "^1.0.6",
8371
+ "mime-types": "^2.1.12"
8372
+ }
8373
+ },
8374
+ "fraction.js": {
8375
+ "version": "4.0.13",
8376
+ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.0.13.tgz",
8377
+ "integrity": "sha512-E1fz2Xs9ltlUp+qbiyx9wmt2n9dRzPsS11Jtdb8D2o+cC7wr9xkkKsVKJuBX0ST+LVS+LhLO+SbLJNtfWcJvXA==",
8378
+ "dev": true
8379
+ },
8380
+ "fragment-cache": {
8381
+ "version": "0.2.1",
8382
+ "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
8383
+ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
8384
+ "dev": true,
8385
+ "requires": {
8386
+ "map-cache": "^0.2.2"
8387
+ }
8388
+ },
8389
+ "framer-motion": {
8390
+ "version": "2.9.5",
8391
+ "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-2.9.5.tgz",
8392
+ "integrity": "sha512-epSX4Co1YbDv0mjfHouuY0q361TpHE7WQzCp/xMTilxy4kXd+Z23uJzPVorfzbm1a/9q1Yu8T5bndaw65NI4Tg==",
8393
+ "dev": true,
8394
+ "requires": {
8395
+ "@emotion/is-prop-valid": "^0.8.2",
8396
+ "framesync": "^4.1.0",
8397
+ "hey-listen": "^1.0.8",
8398
+ "popmotion": "9.0.0-rc.20",
8399
+ "style-value-types": "^3.1.9",
8400
+ "tslib": "^1.10.0"
8401
+ }
8402
+ },
8403
+ "framesync": {
8404
+ "version": "4.1.0",
8405
+ "resolved": "https://registry.npmjs.org/framesync/-/framesync-4.1.0.tgz",
8406
+ "integrity": "sha512-MmgZ4wCoeVxNbx2xp5hN/zPDCbLSKiDt4BbbslK7j/pM2lg5S0vhTNv1v8BCVb99JPIo6hXBFdwzU7Q4qcAaoQ==",
8407
+ "dev": true,
8408
+ "requires": {
8409
+ "hey-listen": "^1.0.5"
8410
+ }
8411
+ },
8412
+ "from2": {
8413
+ "version": "2.3.0",
8414
+ "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz",
8415
+ "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=",
8416
+ "requires": {
8417
+ "inherits": "^2.0.1",
8418
+ "readable-stream": "^2.0.0"
8419
+ }
8420
+ },
8421
+ "fs-constants": {
8422
+ "version": "1.0.0",
8423
+ "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
8424
+ "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow=="
8425
+ },
8426
+ "fs-minipass": {
8427
+ "version": "2.1.0",
8428
+ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
8429
+ "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
8430
+ "requires": {
8431
+ "minipass": "^3.0.0"
8432
+ }
8433
+ },
8434
+ "fs-readdir-recursive": {
8435
+ "version": "1.1.0",
8436
+ "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz",
8437
+ "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==",
8438
+ "dev": true
8439
+ },
8440
+ "fs-write-stream-atomic": {
8441
+ "version": "1.0.10",
8442
+ "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
8443
+ "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=",
8444
+ "requires": {
8445
+ "graceful-fs": "^4.1.2",
8446
+ "iferr": "^0.1.5",
8447
+ "imurmurhash": "^0.1.4",
8448
+ "readable-stream": "1 || 2"
8449
+ }
8450
+ },
8451
+ "fs.realpath": {
8452
+ "version": "1.0.0",
8453
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
8454
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
8455
+ },
8456
+ "fsevents": {
8457
+ "version": "2.3.2",
8458
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
8459
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
8460
+ "dev": true,
8461
+ "optional": true
8462
+ },
8463
+ "function-bind": {
8464
+ "version": "1.1.1",
8465
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
8466
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
8467
+ },
8468
+ "function.prototype.name": {
8469
+ "version": "1.1.4",
8470
+ "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.4.tgz",
8471
+ "integrity": "sha512-iqy1pIotY/RmhdFZygSSlW0wko2yxkSCKqsuv4pr8QESohpYyG/Z7B/XXvPRKTJS//960rgguE5mSRUsDdaJrQ==",
8472
+ "dev": true,
8473
+ "requires": {
8474
+ "call-bind": "^1.0.2",
8475
+ "define-properties": "^1.1.3",
8476
+ "es-abstract": "^1.18.0-next.2",
8477
+ "functions-have-names": "^1.2.2"
8478
+ }
8479
+ },
8480
+ "functional-red-black-tree": {
8481
+ "version": "1.0.1",
8482
+ "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
8483
+ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
8484
+ "dev": true
8485
+ },
8486
+ "functions-have-names": {
8487
+ "version": "1.2.2",
8488
+ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.2.tgz",
8489
+ "integrity": "sha512-bLgc3asbWdwPbx2mNk2S49kmJCuQeu0nfmaOgbs8WIyzzkw3r4htszdIi9Q9EMezDPTYuJx2wvjZ/EwgAthpnA==",
8490
+ "dev": true
8491
+ },
8492
+ "gauge": {
8493
+ "version": "2.7.4",
8494
+ "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
8495
+ "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
8496
+ "dev": true,
8497
+ "requires": {
8498
+ "aproba": "^1.0.3",
8499
+ "console-control-strings": "^1.0.0",
8500
+ "has-unicode": "^2.0.0",
8501
+ "object-assign": "^4.1.0",
8502
+ "signal-exit": "^3.0.0",
8503
+ "string-width": "^1.0.1",
8504
+ "strip-ansi": "^3.0.1",
8505
+ "wide-align": "^1.1.0"
8506
+ },
8507
+ "dependencies": {
8508
+ "is-fullwidth-code-point": {
8509
+ "version": "1.0.0",
8510
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
8511
+ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
8512
+ "dev": true,
8513
+ "requires": {
8514
+ "number-is-nan": "^1.0.0"
8515
+ }
8516
+ },
8517
+ "string-width": {
8518
+ "version": "1.0.2",
8519
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
8520
+ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
8521
+ "dev": true,
8522
+ "requires": {
8523
+ "code-point-at": "^1.0.0",
8524
+ "is-fullwidth-code-point": "^1.0.0",
8525
+ "strip-ansi": "^3.0.0"
8526
+ }
8527
+ }
8528
+ }
8529
+ },
8530
+ "gaze": {
8531
+ "version": "1.1.3",
8532
+ "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz",
8533
+ "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==",
8534
+ "dev": true,
8535
+ "requires": {
8536
+ "globule": "^1.0.0"
8537
+ }
8538
+ },
8539
+ "gensync": {
8540
+ "version": "1.0.0-beta.2",
8541
+ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
8542
+ "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
8543
+ "dev": true
8544
+ },
8545
+ "get-caller-file": {
8546
+ "version": "2.0.5",
8547
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
8548
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
8549
+ "dev": true
8550
+ },
8551
+ "get-intrinsic": {
8552
+ "version": "1.1.1",
8553
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
8554
+ "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
8555
+ "dev": true,
8556
+ "requires": {
8557
+ "function-bind": "^1.1.1",
8558
+ "has": "^1.0.3",
8559
+ "has-symbols": "^1.0.1"
8560
+ }
8561
+ },
8562
+ "get-package-type": {
8563
+ "version": "0.1.0",
8564
+ "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
8565
+ "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
8566
+ "dev": true
8567
+ },
8568
+ "get-proxy": {
8569
+ "version": "2.1.0",
8570
+ "resolved": "https://registry.npmjs.org/get-proxy/-/get-proxy-2.1.0.tgz",
8571
+ "integrity": "sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw==",
8572
+ "requires": {
8573
+ "npm-conf": "^1.1.0"
8574
+ }
8575
+ },
8576
+ "get-stdin": {
8577
+ "version": "4.0.1",
8578
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
8579
+ "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4="
8580
+ },
8581
+ "get-stream": {
8582
+ "version": "5.2.0",
8583
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
8584
+ "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
8585
+ "requires": {
8586
+ "pump": "^3.0.0"
8587
+ }
8588
+ },
8589
+ "get-value": {
8590
+ "version": "2.0.6",
8591
+ "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
8592
+ "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
8593
+ "dev": true
8594
+ },
8595
+ "getpass": {
8596
+ "version": "0.1.7",
8597
+ "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
8598
+ "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
8599
+ "dev": true,
8600
+ "requires": {
8601
+ "assert-plus": "^1.0.0"
8602
+ }
8603
+ },
8604
+ "gettext-parser": {
8605
+ "version": "1.4.0",
8606
+ "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.4.0.tgz",
8607
+ "integrity": "sha512-sedZYLHlHeBop/gZ1jdg59hlUEcpcZJofLq2JFwJT1zTqAU3l2wFv6IsuwFHGqbiT9DWzMUW4/em2+hspnmMMA==",
8608
+ "dev": true,
8609
+ "requires": {
8610
+ "encoding": "^0.1.12",
8611
+ "safe-buffer": "^5.1.1"
8612
+ }
8613
+ },
8614
+ "glob": {
8615
+ "version": "7.1.6",
8616
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
8617
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
8618
+ "requires": {
8619
+ "fs.realpath": "^1.0.0",
8620
+ "inflight": "^1.0.4",
8621
+ "inherits": "2",
8622
+ "minimatch": "^3.0.4",
8623
+ "once": "^1.3.0",
8624
+ "path-is-absolute": "^1.0.0"
8625
+ }
8626
+ },
8627
+ "glob-parent": {
8628
+ "version": "5.1.2",
8629
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
8630
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
8631
+ "requires": {
8632
+ "is-glob": "^4.0.1"
8633
+ }
8634
+ },
8635
+ "glob-to-regexp": {
8636
+ "version": "0.4.1",
8637
+ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
8638
+ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
8639
+ "dev": true
8640
+ },
8641
+ "global-cache": {
8642
+ "version": "1.2.1",
8643
+ "resolved": "https://registry.npmjs.org/global-cache/-/global-cache-1.2.1.tgz",
8644
+ "integrity": "sha512-EOeUaup5DgWKlCMhA9YFqNRIlZwoxt731jCh47WBV9fQqHgXhr3Fa55hfgIUqilIcPsfdNKN7LHjrNY+Km40KA==",
8645
+ "dev": true,
8646
+ "requires": {
8647
+ "define-properties": "^1.1.2",
8648
+ "is-symbol": "^1.0.1"
8649
+ }
8650
+ },
8651
+ "globals": {
8652
+ "version": "11.12.0",
8653
+ "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
8654
+ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
8655
+ "dev": true
8656
+ },
8657
+ "globby": {
8658
+ "version": "10.0.2",
8659
+ "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz",
8660
+ "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==",
8661
+ "requires": {
8662
+ "@types/glob": "^7.1.1",
8663
+ "array-union": "^2.1.0",
8664
+ "dir-glob": "^3.0.1",
8665
+ "fast-glob": "^3.0.3",
8666
+ "glob": "^7.1.3",
8667
+ "ignore": "^5.1.1",
8668
+ "merge2": "^1.2.3",
8669
+ "slash": "^3.0.0"
8670
+ }
8671
+ },
8672
+ "globule": {
8673
+ "version": "1.3.2",
8674
+ "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz",
8675
+ "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==",
8676
+ "dev": true,
8677
+ "requires": {
8678
+ "glob": "~7.1.1",
8679
+ "lodash": "~4.17.10",
8680
+ "minimatch": "~3.0.2"
8681
+ }
8682
+ },
8683
+ "good-listener": {
8684
+ "version": "1.2.2",
8685
+ "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz",
8686
+ "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=",
8687
+ "dev": true,
8688
+ "requires": {
8689
+ "delegate": "^3.1.2"
8690
+ }
8691
+ },
8692
+ "got": {
8693
+ "version": "7.1.0",
8694
+ "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz",
8695
+ "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==",
8696
+ "requires": {
8697
+ "decompress-response": "^3.2.0",
8698
+ "duplexer3": "^0.1.4",
8699
+ "get-stream": "^3.0.0",
8700
+ "is-plain-obj": "^1.1.0",
8701
+ "is-retry-allowed": "^1.0.0",
8702
+ "is-stream": "^1.0.0",
8703
+ "isurl": "^1.0.0-alpha5",
8704
+ "lowercase-keys": "^1.0.0",
8705
+ "p-cancelable": "^0.3.0",
8706
+ "p-timeout": "^1.1.1",
8707
+ "safe-buffer": "^5.0.1",
8708
+ "timed-out": "^4.0.0",
8709
+ "url-parse-lax": "^1.0.0",
8710
+ "url-to-options": "^1.0.1"
8711
+ },
8712
+ "dependencies": {
8713
+ "get-stream": {
8714
+ "version": "3.0.0",
8715
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
8716
+ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ="
8717
+ },
8718
+ "is-stream": {
8719
+ "version": "1.1.0",
8720
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
8721
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
8722
+ }
8723
+ }
8724
+ },
8725
+ "graceful-fs": {
8726
+ "version": "4.2.6",
8727
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz",
8728
+ "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ=="
8729
+ },
8730
+ "gradient-parser": {
8731
+ "version": "0.1.5",
8732
+ "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-0.1.5.tgz",
8733
+ "integrity": "sha1-DH4heVWeXOfY1x9EI6+TcQCyJIw=",
8734
+ "dev": true
8735
+ },
8736
+ "har-schema": {
8737
+ "version": "2.0.0",
8738
+ "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
8739
+ "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
8740
+ "dev": true
8741
+ },
8742
+ "har-validator": {
8743
+ "version": "5.1.5",
8744
+ "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
8745
+ "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
8746
+ "dev": true,
8747
+ "requires": {
8748
+ "ajv": "^6.12.3",
8749
+ "har-schema": "^2.0.0"
8750
+ }
8751
+ },
8752
+ "has": {
8753
+ "version": "1.0.3",
8754
+ "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
8755
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
8756
+ "requires": {
8757
+ "function-bind": "^1.1.1"
8758
+ }
8759
+ },
8760
+ "has-ansi": {
8761
+ "version": "2.0.0",
8762
+ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
8763
+ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
8764
+ "requires": {
8765
+ "ansi-regex": "^2.0.0"
8766
+ }
8767
+ },
8768
+ "has-bigints": {
8769
+ "version": "1.0.1",
8770
+ "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz",
8771
+ "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==",
8772
+ "dev": true
8773
+ },
8774
+ "has-flag": {
8775
+ "version": "3.0.0",
8776
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
8777
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
8778
+ "dev": true
8779
+ },
8780
+ "has-symbol-support-x": {
8781
+ "version": "1.4.2",
8782
+ "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz",
8783
+ "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw=="
8784
+ },
8785
+ "has-symbols": {
8786
+ "version": "1.0.2",
8787
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz",
8788
+ "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==",
8789
+ "dev": true
8790
+ },
8791
+ "has-to-string-tag-x": {
8792
+ "version": "1.4.1",
8793
+ "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz",
8794
+ "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==",
8795
+ "requires": {
8796
+ "has-symbol-support-x": "^1.4.1"
8797
+ }
8798
+ },
8799
+ "has-unicode": {
8800
+ "version": "2.0.1",
8801
+ "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
8802
+ "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
8803
+ "dev": true
8804
+ },
8805
+ "has-value": {
8806
+ "version": "1.0.0",
8807
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
8808
+ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
8809
+ "dev": true,
8810
+ "requires": {
8811
+ "get-value": "^2.0.6",
8812
+ "has-values": "^1.0.0",
8813
+ "isobject": "^3.0.0"
8814
+ }
8815
+ },
8816
+ "has-values": {
8817
+ "version": "1.0.0",
8818
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
8819
+ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
8820
+ "dev": true,
8821
+ "requires": {
8822
+ "is-number": "^3.0.0",
8823
+ "kind-of": "^4.0.0"
8824
+ },
8825
+ "dependencies": {
8826
+ "is-number": {
8827
+ "version": "3.0.0",
8828
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
8829
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
8830
+ "dev": true,
8831
+ "requires": {
8832
+ "kind-of": "^3.0.2"
8833
+ },
8834
+ "dependencies": {
8835
+ "kind-of": {
8836
+ "version": "3.2.2",
8837
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
8838
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
8839
+ "dev": true,
8840
+ "requires": {
8841
+ "is-buffer": "^1.1.5"
8842
+ }
8843
+ }
8844
+ }
8845
+ },
8846
+ "kind-of": {
8847
+ "version": "4.0.0",
8848
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
8849
+ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
8850
+ "dev": true,
8851
+ "requires": {
8852
+ "is-buffer": "^1.1.5"
8853
+ }
8854
+ }
8855
+ }
8856
+ },
8857
+ "hey-listen": {
8858
+ "version": "1.0.8",
8859
+ "resolved": "https://registry.npmjs.org/hey-listen/-/hey-listen-1.0.8.tgz",
8860
+ "integrity": "sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==",
8861
+ "dev": true
8862
+ },
8863
+ "highlight-words-core": {
8864
+ "version": "1.2.2",
8865
+ "resolved": "https://registry.npmjs.org/highlight-words-core/-/highlight-words-core-1.2.2.tgz",
8866
+ "integrity": "sha512-BXUKIkUuh6cmmxzi5OIbUJxrG8OAk2MqoL1DtO3Wo9D2faJg2ph5ntyuQeLqaHJmzER6H5tllCDA9ZnNe9BVGg==",
8867
+ "dev": true
8868
+ },
8869
+ "history": {
8870
+ "version": "4.10.1",
8871
+ "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz",
8872
+ "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==",
8873
+ "dev": true,
8874
+ "requires": {
8875
+ "@babel/runtime": "^7.1.2",
8876
+ "loose-envify": "^1.2.0",
8877
+ "resolve-pathname": "^3.0.0",
8878
+ "tiny-invariant": "^1.0.2",
8879
+ "tiny-warning": "^1.0.0",
8880
+ "value-equal": "^1.0.1"
8881
+ }
8882
+ },
8883
+ "hoist-non-react-statics": {
8884
+ "version": "3.3.2",
8885
+ "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
8886
+ "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
8887
+ "dev": true,
8888
+ "requires": {
8889
+ "react-is": "^16.7.0"
8890
+ }
8891
+ },
8892
+ "hosted-git-info": {
8893
+ "version": "2.8.8",
8894
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz",
8895
+ "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg=="
8896
+ },
8897
+ "hpq": {
8898
+ "version": "1.3.0",
8899
+ "resolved": "https://registry.npmjs.org/hpq/-/hpq-1.3.0.tgz",
8900
+ "integrity": "sha512-fvYTvdCFOWQupGxqkahrkA+ERBuMdzkxwtUdKrxR6rmMd4Pfl+iZ1QiQYoaZ0B/v0y59MOMnz3XFUWbT50/NWA==",
8901
+ "dev": true
8902
+ },
8903
+ "html-element-map": {
8904
+ "version": "1.3.0",
8905
+ "resolved": "https://registry.npmjs.org/html-element-map/-/html-element-map-1.3.0.tgz",
8906
+ "integrity": "sha512-AqCt/m9YaiMwaaAyOPdq4Ga0cM+jdDWWGueUMkdROZcTeClaGpN0AQeyGchZhTegQoABmc6+IqH7oCR/8vhQYg==",
8907
+ "dev": true,
8908
+ "requires": {
8909
+ "array-filter": "^1.0.0",
8910
+ "call-bind": "^1.0.2"
8911
+ }
8912
+ },
8913
+ "htmlparser2": {
8914
+ "version": "6.0.1",
8915
+ "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.0.1.tgz",
8916
+ "integrity": "sha512-GDKPd+vk4jvSuvCbyuzx/unmXkk090Azec7LovXP8as1Hn8q9p3hbjmDGbUqqhknw0ajwit6LiiWqfiTUPMK7w==",
8917
+ "dev": true,
8918
+ "requires": {
8919
+ "domelementtype": "^2.0.1",
8920
+ "domhandler": "^4.0.0",
8921
+ "domutils": "^2.4.4",
8922
+ "entities": "^2.0.0"
8923
+ },
8924
+ "dependencies": {
8925
+ "dom-serializer": {
8926
+ "version": "1.2.0",
8927
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.2.0.tgz",
8928
+ "integrity": "sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA==",
8929
+ "dev": true,
8930
+ "requires": {
8931
+ "domelementtype": "^2.0.1",
8932
+ "domhandler": "^4.0.0",
8933
+ "entities": "^2.0.0"
8934
+ }
8935
+ },
8936
+ "domelementtype": {
8937
+ "version": "2.1.0",
8938
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz",
8939
+ "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==",
8940
+ "dev": true
8941
+ },
8942
+ "domutils": {
8943
+ "version": "2.5.0",
8944
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.5.0.tgz",
8945
+ "integrity": "sha512-Ho16rzNMOFk2fPwChGh3D2D9OEHAfG19HgmRR2l+WLSsIstNsAYBzePH412bL0y5T44ejABIVfTHQ8nqi/tBCg==",
8946
+ "dev": true,
8947
+ "requires": {
8948
+ "dom-serializer": "^1.0.1",
8949
+ "domelementtype": "^2.0.1",
8950
+ "domhandler": "^4.0.0"
8951
+ }
8952
+ }
8953
+ }
8954
+ },
8955
+ "http-cache-semantics": {
8956
+ "version": "3.8.1",
8957
+ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz",
8958
+ "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w=="
8959
+ },
8960
+ "http-signature": {
8961
+ "version": "1.2.0",
8962
+ "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
8963
+ "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
8964
+ "dev": true,
8965
+ "requires": {
8966
+ "assert-plus": "^1.0.0",
8967
+ "jsprim": "^1.2.2",
8968
+ "sshpk": "^1.7.0"
8969
+ }
8970
+ },
8971
+ "human-signals": {
8972
+ "version": "1.1.1",
8973
+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
8974
+ "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw=="
8975
+ },
8976
+ "iconv-lite": {
8977
+ "version": "0.6.2",
8978
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz",
8979
+ "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==",
8980
+ "dev": true,
8981
+ "requires": {
8982
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
8983
+ }
8984
+ },
8985
+ "icss-utils": {
8986
+ "version": "5.1.0",
8987
+ "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz",
8988
+ "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==",
8989
+ "dev": true
8990
+ },
8991
+ "ieee754": {
8992
+ "version": "1.2.1",
8993
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
8994
+ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
8995
+ },
8996
+ "iferr": {
8997
+ "version": "0.1.5",
8998
+ "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz",
8999
+ "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE="
9000
+ },
9001
+ "ignore": {
9002
+ "version": "5.1.8",
9003
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz",
9004
+ "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw=="
9005
+ },
9006
+ "imagemin": {
9007
+ "version": "7.0.1",
9008
+ "resolved": "https://registry.npmjs.org/imagemin/-/imagemin-7.0.1.tgz",
9009
+ "integrity": "sha512-33AmZ+xjZhg2JMCe+vDf6a9mzWukE7l+wAtesjE7KyteqqKjzxv7aVQeWnul1Ve26mWvEQqyPwl0OctNBfSR9w==",
9010
+ "requires": {
9011
+ "file-type": "^12.0.0",
9012
+ "globby": "^10.0.0",
9013
+ "graceful-fs": "^4.2.2",
9014
+ "junk": "^3.1.0",
9015
+ "make-dir": "^3.0.0",
9016
+ "p-pipe": "^3.0.0",
9017
+ "replace-ext": "^1.0.0"
9018
+ },
9019
+ "dependencies": {
9020
+ "file-type": {
9021
+ "version": "12.4.2",
9022
+ "resolved": "https://registry.npmjs.org/file-type/-/file-type-12.4.2.tgz",
9023
+ "integrity": "sha512-UssQP5ZgIOKelfsaB5CuGAL+Y+q7EmONuiwF3N5HAH0t27rvrttgi6Ra9k/+DVaY9UF6+ybxu5pOXLUdA8N7Vg=="
9024
+ },
9025
+ "make-dir": {
9026
+ "version": "3.1.0",
9027
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
9028
+ "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
9029
+ "requires": {
9030
+ "semver": "^6.0.0"
9031
+ }
9032
+ },
9033
+ "semver": {
9034
+ "version": "6.3.0",
9035
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
9036
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
9037
+ }
9038
+ }
9039
+ },
9040
+ "imagemin-pngquant": {
9041
+ "version": "9.0.2",
9042
+ "resolved": "https://registry.npmjs.org/imagemin-pngquant/-/imagemin-pngquant-9.0.2.tgz",
9043
+ "integrity": "sha512-cj//bKo8+Frd/DM8l6Pg9pws1pnDUjgb7ae++sUX1kUVdv2nrngPykhiUOgFeE0LGY/LmUbCf4egCHC4YUcZSg==",
9044
+ "requires": {
9045
+ "execa": "^4.0.0",
9046
+ "is-png": "^2.0.0",
9047
+ "is-stream": "^2.0.0",
9048
+ "ow": "^0.17.0",
9049
+ "pngquant-bin": "^6.0.0"
9050
+ }
9051
+ },
9052
+ "imagemin-webpack": {
9053
+ "version": "5.1.1",
9054
+ "resolved": "https://registry.npmjs.org/imagemin-webpack/-/imagemin-webpack-5.1.1.tgz",
9055
+ "integrity": "sha512-ZsHHBL/NbX3sepz8shBS8iPLMm8vByUgXTcj5nC4hcv7OZymSgPZay3ODrOodWN6UubefBRRIYpskyywd5Ah0w==",
9056
+ "requires": {
9057
+ "cacache": "^13.0.1",
9058
+ "deepmerge": "^4.2.2",
9059
+ "find-cache-dir": "^3.1.0",
9060
+ "imagemin": "^7.0.1",
9061
+ "loader-utils": "^1.2.3",
9062
+ "p-limit": "^2.2.1",
9063
+ "serialize-javascript": "^2.1.2",
9064
+ "webpack-sources": "^1.4.3"
9065
+ }
9066
+ },
9067
+ "import-fresh": {
9068
+ "version": "3.3.0",
9069
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
9070
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
9071
+ "dev": true,
9072
+ "requires": {
9073
+ "parent-module": "^1.0.0",
9074
+ "resolve-from": "^4.0.0"
9075
+ }
9076
+ },
9077
+ "import-lazy": {
9078
+ "version": "3.1.0",
9079
+ "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-3.1.0.tgz",
9080
+ "integrity": "sha512-8/gvXvX2JMn0F+CDlSC4l6kOmVaLOO3XLkksI7CI3Ud95KDYJuYur2b9P/PUt/i/pDAMd/DulQsNbbbmRRsDIQ=="
9081
+ },
9082
+ "import-local": {
9083
+ "version": "3.0.2",
9084
+ "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz",
9085
+ "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==",
9086
+ "dev": true,
9087
+ "requires": {
9088
+ "pkg-dir": "^4.2.0",
9089
+ "resolve-cwd": "^3.0.0"
9090
+ }
9091
+ },
9092
+ "imurmurhash": {
9093
+ "version": "0.1.4",
9094
+ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
9095
+ "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o="
9096
+ },
9097
+ "indent-string": {
9098
+ "version": "2.1.0",
9099
+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
9100
+ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
9101
+ "requires": {
9102
+ "repeating": "^2.0.0"
9103
+ }
9104
+ },
9105
+ "indexes-of": {
9106
+ "version": "1.0.1",
9107
+ "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz",
9108
+ "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=",
9109
+ "dev": true
9110
+ },
9111
+ "infer-owner": {
9112
+ "version": "1.0.4",
9113
+ "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz",
9114
+ "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A=="
9115
+ },
9116
+ "inflight": {
9117
+ "version": "1.0.6",
9118
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
9119
+ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
9120
+ "requires": {
9121
+ "once": "^1.3.0",
9122
+ "wrappy": "1"
9123
+ }
9124
+ },
9125
+ "inherits": {
9126
+ "version": "2.0.4",
9127
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
9128
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
9129
+ },
9130
+ "ini": {
9131
+ "version": "1.3.8",
9132
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
9133
+ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="
9134
+ },
9135
+ "internal-slot": {
9136
+ "version": "1.0.3",
9137
+ "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz",
9138
+ "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==",
9139
+ "dev": true,
9140
+ "requires": {
9141
+ "get-intrinsic": "^1.1.0",
9142
+ "has": "^1.0.3",
9143
+ "side-channel": "^1.0.4"
9144
+ }
9145
+ },
9146
+ "interpret": {
9147
+ "version": "2.2.0",
9148
+ "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz",
9149
+ "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==",
9150
+ "dev": true
9151
+ },
9152
+ "into-stream": {
9153
+ "version": "3.1.0",
9154
+ "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz",
9155
+ "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=",
9156
+ "requires": {
9157
+ "from2": "^2.1.1",
9158
+ "p-is-promise": "^1.1.0"
9159
+ }
9160
+ },
9161
+ "is-accessor-descriptor": {
9162
+ "version": "0.1.6",
9163
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
9164
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
9165
+ "dev": true,
9166
+ "requires": {
9167
+ "kind-of": "^3.0.2"
9168
+ },
9169
+ "dependencies": {
9170
+ "kind-of": {
9171
+ "version": "3.2.2",
9172
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
9173
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
9174
+ "dev": true,
9175
+ "requires": {
9176
+ "is-buffer": "^1.1.5"
9177
+ }
9178
+ }
9179
+ }
9180
+ },
9181
+ "is-arrayish": {
9182
+ "version": "0.2.1",
9183
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
9184
+ "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0="
9185
+ },
9186
+ "is-bigint": {
9187
+ "version": "1.0.1",
9188
+ "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.1.tgz",
9189
+ "integrity": "sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg==",
9190
+ "dev": true
9191
+ },
9192
+ "is-binary-path": {
9193
+ "version": "1.0.1",
9194
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
9195
+ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
9196
+ "dev": true,
9197
+ "optional": true,
9198
+ "requires": {
9199
+ "binary-extensions": "^1.0.0"
9200
+ }
9201
+ },
9202
+ "is-boolean-object": {
9203
+ "version": "1.1.0",
9204
+ "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz",
9205
+ "integrity": "sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA==",
9206
+ "dev": true,
9207
+ "requires": {
9208
+ "call-bind": "^1.0.0"
9209
+ }
9210
+ },
9211
+ "is-buffer": {
9212
+ "version": "1.1.6",
9213
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
9214
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
9215
+ "dev": true
9216
+ },
9217
+ "is-callable": {
9218
+ "version": "1.2.3",
9219
+ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz",
9220
+ "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==",
9221
+ "dev": true
9222
+ },
9223
+ "is-ci": {
9224
+ "version": "2.0.0",
9225
+ "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz",
9226
+ "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==",
9227
+ "dev": true,
9228
+ "requires": {
9229
+ "ci-info": "^2.0.0"
9230
+ }
9231
+ },
9232
+ "is-core-module": {
9233
+ "version": "2.2.0",
9234
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz",
9235
+ "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==",
9236
+ "requires": {
9237
+ "has": "^1.0.3"
9238
+ }
9239
+ },
9240
+ "is-data-descriptor": {
9241
+ "version": "0.1.4",
9242
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
9243
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
9244
+ "dev": true,
9245
+ "requires": {
9246
+ "kind-of": "^3.0.2"
9247
+ },
9248
+ "dependencies": {
9249
+ "kind-of": {
9250
+ "version": "3.2.2",
9251
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
9252
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
9253
+ "dev": true,
9254
+ "requires": {
9255
+ "is-buffer": "^1.1.5"
9256
+ }
9257
+ }
9258
+ }
9259
+ },
9260
+ "is-date-object": {
9261
+ "version": "1.0.2",
9262
+ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz",
9263
+ "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==",
9264
+ "dev": true
9265
+ },
9266
+ "is-descriptor": {
9267
+ "version": "0.1.6",
9268
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
9269
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
9270
+ "dev": true,
9271
+ "requires": {
9272
+ "is-accessor-descriptor": "^0.1.6",
9273
+ "is-data-descriptor": "^0.1.4",
9274
+ "kind-of": "^5.0.0"
9275
+ },
9276
+ "dependencies": {
9277
+ "kind-of": {
9278
+ "version": "5.1.0",
9279
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
9280
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
9281
+ "dev": true
9282
+ }
9283
+ }
9284
+ },
9285
+ "is-extendable": {
9286
+ "version": "0.1.1",
9287
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
9288
+ "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
9289
+ "dev": true
9290
+ },
9291
+ "is-extglob": {
9292
+ "version": "2.1.1",
9293
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
9294
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
9295
+ },
9296
+ "is-finite": {
9297
+ "version": "1.1.0",
9298
+ "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz",
9299
+ "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w=="
9300
+ },
9301
+ "is-fullwidth-code-point": {
9302
+ "version": "2.0.0",
9303
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
9304
+ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
9305
+ "dev": true
9306
+ },
9307
+ "is-glob": {
9308
+ "version": "4.0.1",
9309
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
9310
+ "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
9311
+ "requires": {
9312
+ "is-extglob": "^2.1.1"
9313
+ }
9314
+ },
9315
+ "is-natural-number": {
9316
+ "version": "4.0.1",
9317
+ "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz",
9318
+ "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg="
9319
+ },
9320
+ "is-negative-zero": {
9321
+ "version": "2.0.1",
9322
+ "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz",
9323
+ "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==",
9324
+ "dev": true
9325
+ },
9326
+ "is-number": {
9327
+ "version": "7.0.0",
9328
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
9329
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
9330
+ },
9331
+ "is-number-object": {
9332
+ "version": "1.0.4",
9333
+ "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz",
9334
+ "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==",
9335
+ "dev": true
9336
+ },
9337
+ "is-object": {
9338
+ "version": "1.0.2",
9339
+ "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz",
9340
+ "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA=="
9341
+ },
9342
+ "is-plain-obj": {
9343
+ "version": "1.1.0",
9344
+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
9345
+ "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4="
9346
+ },
9347
+ "is-plain-object": {
9348
+ "version": "2.0.4",
9349
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
9350
+ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
9351
+ "dev": true,
9352
+ "requires": {
9353
+ "isobject": "^3.0.1"
9354
+ }
9355
+ },
9356
+ "is-png": {
9357
+ "version": "2.0.0",
9358
+ "resolved": "https://registry.npmjs.org/is-png/-/is-png-2.0.0.tgz",
9359
+ "integrity": "sha512-4KPGizaVGj2LK7xwJIz8o5B2ubu1D/vcQsgOGFEDlpcvgZHto4gBnyd0ig7Ws+67ixmwKoNmu0hYnpo6AaKb5g=="
9360
+ },
9361
+ "is-promise": {
9362
+ "version": "4.0.0",
9363
+ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz",
9364
+ "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==",
9365
+ "dev": true
9366
+ },
9367
+ "is-regex": {
9368
+ "version": "1.1.2",
9369
+ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz",
9370
+ "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==",
9371
+ "dev": true,
9372
+ "requires": {
9373
+ "call-bind": "^1.0.2",
9374
+ "has-symbols": "^1.0.1"
9375
+ }
9376
+ },
9377
+ "is-retry-allowed": {
9378
+ "version": "1.2.0",
9379
+ "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz",
9380
+ "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg=="
9381
+ },
9382
+ "is-stream": {
9383
+ "version": "2.0.0",
9384
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
9385
+ "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw=="
9386
+ },
9387
+ "is-string": {
9388
+ "version": "1.0.5",
9389
+ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz",
9390
+ "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==",
9391
+ "dev": true
9392
+ },
9393
+ "is-subset": {
9394
+ "version": "0.1.1",
9395
+ "resolved": "https://registry.npmjs.org/is-subset/-/is-subset-0.1.1.tgz",
9396
+ "integrity": "sha1-ilkRfZMt4d4A8kX83TnOQ/HpOaY=",
9397
+ "dev": true
9398
+ },
9399
+ "is-symbol": {
9400
+ "version": "1.0.3",
9401
+ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz",
9402
+ "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==",
9403
+ "dev": true,
9404
+ "requires": {
9405
+ "has-symbols": "^1.0.1"
9406
+ }
9407
+ },
9408
+ "is-touch-device": {
9409
+ "version": "1.0.1",
9410
+ "resolved": "https://registry.npmjs.org/is-touch-device/-/is-touch-device-1.0.1.tgz",
9411
+ "integrity": "sha512-LAYzo9kMT1b2p19L/1ATGt2XcSilnzNlyvq6c0pbPRVisLbAPpLqr53tIJS00kvrTkj0HtR8U7+u8X0yR8lPSw==",
9412
+ "dev": true
9413
+ },
9414
+ "is-typedarray": {
9415
+ "version": "1.0.0",
9416
+ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
9417
+ "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
9418
+ "dev": true
9419
+ },
9420
+ "is-utf8": {
9421
+ "version": "0.2.1",
9422
+ "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
9423
+ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI="
9424
+ },
9425
+ "is-windows": {
9426
+ "version": "1.0.2",
9427
+ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
9428
+ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
9429
+ "dev": true
9430
+ },
9431
+ "isarray": {
9432
+ "version": "1.0.0",
9433
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
9434
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
9435
+ },
9436
+ "isexe": {
9437
+ "version": "2.0.0",
9438
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
9439
+ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
9440
+ },
9441
+ "isobject": {
9442
+ "version": "3.0.1",
9443
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
9444
+ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
9445
+ "dev": true
9446
+ },
9447
+ "isstream": {
9448
+ "version": "0.1.2",
9449
+ "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
9450
+ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
9451
+ "dev": true
9452
+ },
9453
+ "istanbul-lib-coverage": {
9454
+ "version": "3.0.0",
9455
+ "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz",
9456
+ "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==",
9457
+ "dev": true
9458
+ },
9459
+ "istanbul-lib-instrument": {
9460
+ "version": "4.0.3",
9461
+ "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz",
9462
+ "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==",
9463
+ "dev": true,
9464
+ "requires": {
9465
+ "@babel/core": "^7.7.5",
9466
+ "@istanbuljs/schema": "^0.1.2",
9467
+ "istanbul-lib-coverage": "^3.0.0",
9468
+ "semver": "^6.3.0"
9469
+ },
9470
+ "dependencies": {
9471
+ "semver": {
9472
+ "version": "6.3.0",
9473
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
9474
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
9475
+ "dev": true
9476
+ }
9477
+ }
9478
+ },
9479
+ "isurl": {
9480
+ "version": "1.0.0",
9481
+ "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz",
9482
+ "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==",
9483
+ "requires": {
9484
+ "has-to-string-tag-x": "^1.2.0",
9485
+ "is-object": "^1.0.1"
9486
+ }
9487
+ },
9488
+ "jest-diff": {
9489
+ "version": "26.6.2",
9490
+ "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz",
9491
+ "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==",
9492
+ "dev": true,
9493
+ "requires": {
9494
+ "chalk": "^4.0.0",
9495
+ "diff-sequences": "^26.6.2",
9496
+ "jest-get-type": "^26.3.0",
9497
+ "pretty-format": "^26.6.2"
9498
+ },
9499
+ "dependencies": {
9500
+ "ansi-styles": {
9501
+ "version": "4.3.0",
9502
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
9503
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
9504
+ "dev": true,
9505
+ "requires": {
9506
+ "color-convert": "^2.0.1"
9507
+ }
9508
+ },
9509
+ "chalk": {
9510
+ "version": "4.1.0",
9511
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
9512
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
9513
+ "dev": true,
9514
+ "requires": {
9515
+ "ansi-styles": "^4.1.0",
9516
+ "supports-color": "^7.1.0"
9517
+ }
9518
+ },
9519
+ "color-convert": {
9520
+ "version": "2.0.1",
9521
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
9522
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
9523
+ "dev": true,
9524
+ "requires": {
9525
+ "color-name": "~1.1.4"
9526
+ }
9527
+ },
9528
+ "color-name": {
9529
+ "version": "1.1.4",
9530
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
9531
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
9532
+ "dev": true
9533
+ },
9534
+ "has-flag": {
9535
+ "version": "4.0.0",
9536
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
9537
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
9538
+ "dev": true
9539
+ },
9540
+ "supports-color": {
9541
+ "version": "7.2.0",
9542
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
9543
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
9544
+ "dev": true,
9545
+ "requires": {
9546
+ "has-flag": "^4.0.0"
9547
+ }
9548
+ }
9549
+ }
9550
+ },
9551
+ "jest-get-type": {
9552
+ "version": "26.3.0",
9553
+ "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz",
9554
+ "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==",
9555
+ "dev": true
9556
+ },
9557
+ "jest-haste-map": {
9558
+ "version": "26.6.2",
9559
+ "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.6.2.tgz",
9560
+ "integrity": "sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==",
9561
+ "dev": true,
9562
+ "requires": {
9563
+ "@jest/types": "^26.6.2",
9564
+ "@types/graceful-fs": "^4.1.2",
9565
+ "@types/node": "*",
9566
+ "anymatch": "^3.0.3",
9567
+ "fb-watchman": "^2.0.0",
9568
+ "fsevents": "^2.1.2",
9569
+ "graceful-fs": "^4.2.4",
9570
+ "jest-regex-util": "^26.0.0",
9571
+ "jest-serializer": "^26.6.2",
9572
+ "jest-util": "^26.6.2",
9573
+ "jest-worker": "^26.6.2",
9574
+ "micromatch": "^4.0.2",
9575
+ "sane": "^4.0.3",
9576
+ "walker": "^1.0.7"
9577
+ },
9578
+ "dependencies": {
9579
+ "anymatch": {
9580
+ "version": "3.1.1",
9581
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz",
9582
+ "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==",
9583
+ "dev": true,
9584
+ "requires": {
9585
+ "normalize-path": "^3.0.0",
9586
+ "picomatch": "^2.0.4"
9587
+ }
9588
+ }
9589
+ }
9590
+ },
9591
+ "jest-matcher-utils": {
9592
+ "version": "26.6.2",
9593
+ "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz",
9594
+ "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==",
9595
+ "dev": true,
9596
+ "requires": {
9597
+ "chalk": "^4.0.0",
9598
+ "jest-diff": "^26.6.2",
9599
+ "jest-get-type": "^26.3.0",
9600
+ "pretty-format": "^26.6.2"
9601
+ },
9602
+ "dependencies": {
9603
+ "ansi-styles": {
9604
+ "version": "4.3.0",
9605
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
9606
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
9607
+ "dev": true,
9608
+ "requires": {
9609
+ "color-convert": "^2.0.1"
9610
+ }
9611
+ },
9612
+ "chalk": {
9613
+ "version": "4.1.0",
9614
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
9615
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
9616
+ "dev": true,
9617
+ "requires": {
9618
+ "ansi-styles": "^4.1.0",
9619
+ "supports-color": "^7.1.0"
9620
+ }
9621
+ },
9622
+ "color-convert": {
9623
+ "version": "2.0.1",
9624
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
9625
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
9626
+ "dev": true,
9627
+ "requires": {
9628
+ "color-name": "~1.1.4"
9629
+ }
9630
+ },
9631
+ "color-name": {
9632
+ "version": "1.1.4",
9633
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
9634
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
9635
+ "dev": true
9636
+ },
9637
+ "has-flag": {
9638
+ "version": "4.0.0",
9639
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
9640
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
9641
+ "dev": true
9642
+ },
9643
+ "supports-color": {
9644
+ "version": "7.2.0",
9645
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
9646
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
9647
+ "dev": true,
9648
+ "requires": {
9649
+ "has-flag": "^4.0.0"
9650
+ }
9651
+ }
9652
+ }
9653
+ },
9654
+ "jest-regex-util": {
9655
+ "version": "26.0.0",
9656
+ "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz",
9657
+ "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==",
9658
+ "dev": true
9659
+ },
9660
+ "jest-serializer": {
9661
+ "version": "26.6.2",
9662
+ "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz",
9663
+ "integrity": "sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==",
9664
+ "dev": true,
9665
+ "requires": {
9666
+ "@types/node": "*",
9667
+ "graceful-fs": "^4.2.4"
9668
+ }
9669
+ },
9670
+ "jest-util": {
9671
+ "version": "26.6.2",
9672
+ "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz",
9673
+ "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==",
9674
+ "dev": true,
9675
+ "requires": {
9676
+ "@jest/types": "^26.6.2",
9677
+ "@types/node": "*",
9678
+ "chalk": "^4.0.0",
9679
+ "graceful-fs": "^4.2.4",
9680
+ "is-ci": "^2.0.0",
9681
+ "micromatch": "^4.0.2"
9682
+ },
9683
+ "dependencies": {
9684
+ "ansi-styles": {
9685
+ "version": "4.3.0",
9686
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
9687
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
9688
+ "dev": true,
9689
+ "requires": {
9690
+ "color-convert": "^2.0.1"
9691
+ }
9692
+ },
9693
+ "chalk": {
9694
+ "version": "4.1.0",
9695
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
9696
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
9697
+ "dev": true,
9698
+ "requires": {
9699
+ "ansi-styles": "^4.1.0",
9700
+ "supports-color": "^7.1.0"
9701
+ }
9702
+ },
9703
+ "color-convert": {
9704
+ "version": "2.0.1",
9705
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
9706
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
9707
+ "dev": true,
9708
+ "requires": {
9709
+ "color-name": "~1.1.4"
9710
+ }
9711
+ },
9712
+ "color-name": {
9713
+ "version": "1.1.4",
9714
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
9715
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
9716
+ "dev": true
9717
+ },
9718
+ "has-flag": {
9719
+ "version": "4.0.0",
9720
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
9721
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
9722
+ "dev": true
9723
+ },
9724
+ "supports-color": {
9725
+ "version": "7.2.0",
9726
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
9727
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
9728
+ "dev": true,
9729
+ "requires": {
9730
+ "has-flag": "^4.0.0"
9731
+ }
9732
+ }
9733
+ }
9734
+ },
9735
+ "jest-worker": {
9736
+ "version": "26.6.2",
9737
+ "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz",
9738
+ "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==",
9739
+ "dev": true,
9740
+ "requires": {
9741
+ "@types/node": "*",
9742
+ "merge-stream": "^2.0.0",
9743
+ "supports-color": "^7.0.0"
9744
+ },
9745
+ "dependencies": {
9746
+ "has-flag": {
9747
+ "version": "4.0.0",
9748
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
9749
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
9750
+ "dev": true
9751
+ },
9752
+ "supports-color": {
9753
+ "version": "7.2.0",
9754
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
9755
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
9756
+ "dev": true,
9757
+ "requires": {
9758
+ "has-flag": "^4.0.0"
9759
+ }
9760
+ }
9761
+ }
9762
+ },
9763
+ "js-base64": {
9764
+ "version": "2.6.4",
9765
+ "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz",
9766
+ "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==",
9767
+ "dev": true
9768
+ },
9769
+ "js-tokens": {
9770
+ "version": "4.0.0",
9771
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
9772
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
9773
+ },
9774
+ "js-yaml": {
9775
+ "version": "3.14.1",
9776
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
9777
+ "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
9778
+ "dev": true,
9779
+ "requires": {
9780
+ "argparse": "^1.0.7",
9781
+ "esprima": "^4.0.0"
9782
+ }
9783
+ },
9784
+ "jsbn": {
9785
+ "version": "0.1.1",
9786
+ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
9787
+ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
9788
+ "dev": true
9789
+ },
9790
+ "jsesc": {
9791
+ "version": "2.5.2",
9792
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
9793
+ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
9794
+ "dev": true
9795
+ },
9796
+ "json-buffer": {
9797
+ "version": "3.0.0",
9798
+ "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz",
9799
+ "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg="
9800
+ },
9801
+ "json-parse-better-errors": {
9802
+ "version": "1.0.2",
9803
+ "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
9804
+ "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
9805
+ "dev": true
9806
+ },
9807
+ "json-parse-even-better-errors": {
9808
+ "version": "2.3.1",
9809
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
9810
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
9811
+ "dev": true
9812
+ },
9813
+ "json-schema": {
9814
+ "version": "0.2.3",
9815
+ "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
9816
+ "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=",
9817
+ "dev": true
9818
+ },
9819
+ "json-schema-compare": {
9820
+ "version": "0.2.2",
9821
+ "resolved": "https://registry.npmjs.org/json-schema-compare/-/json-schema-compare-0.2.2.tgz",
9822
+ "integrity": "sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==",
9823
+ "dev": true,
9824
+ "requires": {
9825
+ "lodash": "^4.17.4"
9826
+ }
9827
+ },
9828
+ "json-schema-merge-allof": {
9829
+ "version": "0.6.0",
9830
+ "resolved": "https://registry.npmjs.org/json-schema-merge-allof/-/json-schema-merge-allof-0.6.0.tgz",
9831
+ "integrity": "sha512-LEw4VMQVRceOPLuGRWcxW5orTTiR9ZAtqTAe4rQUjNADTeR81bezBVFa0MqIwp0YmHIM1KkhSjZM7o+IQhaPbQ==",
9832
+ "dev": true,
9833
+ "requires": {
9834
+ "compute-lcm": "^1.1.0",
9835
+ "json-schema-compare": "^0.2.2",
9836
+ "lodash": "^4.17.4"
9837
+ }
9838
+ },
9839
+ "json-schema-traverse": {
9840
+ "version": "0.4.1",
9841
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
9842
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
9843
+ "dev": true
9844
+ },
9845
+ "json-stable-stringify-without-jsonify": {
9846
+ "version": "1.0.1",
9847
+ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
9848
+ "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
9849
+ "dev": true
9850
+ },
9851
+ "json-stringify-safe": {
9852
+ "version": "5.0.1",
9853
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
9854
+ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
9855
+ "dev": true
9856
+ },
9857
+ "json2mq": {
9858
+ "version": "0.2.0",
9859
+ "resolved": "https://registry.npmjs.org/json2mq/-/json2mq-0.2.0.tgz",
9860
+ "integrity": "sha1-tje9O6nqvhIsg+lyBIOusQ0skEo=",
9861
+ "dev": true,
9862
+ "requires": {
9863
+ "string-convert": "^0.2.0"
9864
+ }
9865
+ },
9866
+ "json5": {
9867
+ "version": "1.0.1",
9868
+ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
9869
+ "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
9870
+ "requires": {
9871
+ "minimist": "^1.2.0"
9872
+ }
9873
+ },
9874
+ "jsonpointer": {
9875
+ "version": "4.1.0",
9876
+ "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.1.0.tgz",
9877
+ "integrity": "sha512-CXcRvMyTlnR53xMcKnuMzfCA5i/nfblTnnr74CZb6C4vG39eu6w51t7nKmU5MfLfbTgGItliNyjO/ciNPDqClg==",
9878
+ "dev": true
9879
+ },
9880
+ "jsprim": {
9881
+ "version": "1.4.1",
9882
+ "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
9883
+ "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
9884
+ "dev": true,
9885
+ "requires": {
9886
+ "assert-plus": "1.0.0",
9887
+ "extsprintf": "1.3.0",
9888
+ "json-schema": "0.2.3",
9889
+ "verror": "1.10.0"
9890
+ }
9891
+ },
9892
+ "jsx-ast-utils": {
9893
+ "version": "3.2.0",
9894
+ "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz",
9895
+ "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==",
9896
+ "dev": true,
9897
+ "requires": {
9898
+ "array-includes": "^3.1.2",
9899
+ "object.assign": "^4.1.2"
9900
+ }
9901
+ },
9902
+ "junk": {
9903
+ "version": "3.1.0",
9904
+ "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz",
9905
+ "integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ=="
9906
+ },
9907
+ "keyv": {
9908
+ "version": "3.0.0",
9909
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz",
9910
+ "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==",
9911
+ "requires": {
9912
+ "json-buffer": "3.0.0"
9913
+ }
9914
+ },
9915
+ "kind-of": {
9916
+ "version": "6.0.3",
9917
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
9918
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
9919
+ "dev": true
9920
+ },
9921
+ "klona": {
9922
+ "version": "2.0.4",
9923
+ "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.4.tgz",
9924
+ "integrity": "sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA==",
9925
+ "dev": true
9926
+ },
9927
+ "levn": {
9928
+ "version": "0.4.1",
9929
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
9930
+ "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
9931
+ "dev": true,
9932
+ "requires": {
9933
+ "prelude-ls": "^1.2.1",
9934
+ "type-check": "~0.4.0"
9935
+ }
9936
+ },
9937
+ "line-height": {
9938
+ "version": "0.3.1",
9939
+ "resolved": "https://registry.npmjs.org/line-height/-/line-height-0.3.1.tgz",
9940
+ "integrity": "sha1-SxIF7d4YKHKl76PI9iCzGHqcVMk=",
9941
+ "dev": true,
9942
+ "requires": {
9943
+ "computed-style": "~0.1.3"
9944
+ }
9945
+ },
9946
+ "lines-and-columns": {
9947
+ "version": "1.1.6",
9948
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz",
9949
+ "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=",
9950
+ "dev": true
9951
+ },
9952
+ "load-json-file": {
9953
+ "version": "1.1.0",
9954
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
9955
+ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
9956
+ "requires": {
9957
+ "graceful-fs": "^4.1.2",
9958
+ "parse-json": "^2.2.0",
9959
+ "pify": "^2.0.0",
9960
+ "pinkie-promise": "^2.0.0",
9961
+ "strip-bom": "^2.0.0"
9962
+ }
9963
+ },
9964
+ "loader-fs-cache": {
9965
+ "version": "1.0.3",
9966
+ "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz",
9967
+ "integrity": "sha512-ldcgZpjNJj71n+2Mf6yetz+c9bM4xpKtNds4LbqXzU/PTdeAX0g3ytnU1AJMEcTk2Lex4Smpe3Q/eCTsvUBxbA==",
9968
+ "dev": true,
9969
+ "requires": {
9970
+ "find-cache-dir": "^0.1.1",
9971
+ "mkdirp": "^0.5.1"
9972
+ },
9973
+ "dependencies": {
9974
+ "find-cache-dir": {
9975
+ "version": "0.1.1",
9976
+ "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz",
9977
+ "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=",
9978
+ "dev": true,
9979
+ "requires": {
9980
+ "commondir": "^1.0.1",
9981
+ "mkdirp": "^0.5.1",
9982
+ "pkg-dir": "^1.0.0"
9983
+ }
9984
+ },
9985
+ "pkg-dir": {
9986
+ "version": "1.0.0",
9987
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz",
9988
+ "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=",
9989
+ "dev": true,
9990
+ "requires": {
9991
+ "find-up": "^1.0.0"
9992
+ }
9993
+ }
9994
+ }
9995
+ },
9996
+ "loader-runner": {
9997
+ "version": "4.2.0",
9998
+ "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz",
9999
+ "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==",
10000
+ "dev": true
10001
+ },
10002
+ "loader-utils": {
10003
+ "version": "1.4.0",
10004
+ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz",
10005
+ "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==",
10006
+ "requires": {
10007
+ "big.js": "^5.2.2",
10008
+ "emojis-list": "^3.0.0",
10009
+ "json5": "^1.0.1"
10010
+ }
10011
+ },
10012
+ "locate-path": {
10013
+ "version": "5.0.0",
10014
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
10015
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
10016
+ "requires": {
10017
+ "p-locate": "^4.1.0"
10018
+ }
10019
+ },
10020
+ "lodash": {
10021
+ "version": "4.17.21",
10022
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
10023
+ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
10024
+ },
10025
+ "lodash._reinterpolate": {
10026
+ "version": "3.0.0",
10027
+ "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
10028
+ "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=",
10029
+ "dev": true
10030
+ },
10031
+ "lodash.debounce": {
10032
+ "version": "4.0.8",
10033
+ "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
10034
+ "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=",
10035
+ "dev": true
10036
+ },
10037
+ "lodash.escape": {
10038
+ "version": "4.0.1",
10039
+ "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-4.0.1.tgz",
10040
+ "integrity": "sha1-yQRGkMIeBClL6qUXcS/e0fqI3pg=",
10041
+ "dev": true
10042
+ },
10043
+ "lodash.flattendeep": {
10044
+ "version": "4.4.0",
10045
+ "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz",
10046
+ "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=",
10047
+ "dev": true
10048
+ },
10049
+ "lodash.isequal": {
10050
+ "version": "4.5.0",
10051
+ "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz",
10052
+ "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=",
10053
+ "dev": true
10054
+ },
10055
+ "lodash.template": {
10056
+ "version": "4.5.0",
10057
+ "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz",
10058
+ "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==",
10059
+ "dev": true,
10060
+ "requires": {
10061
+ "lodash._reinterpolate": "^3.0.0",
10062
+ "lodash.templatesettings": "^4.0.0"
10063
+ }
10064
+ },
10065
+ "lodash.templatesettings": {
10066
+ "version": "4.2.0",
10067
+ "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz",
10068
+ "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==",
10069
+ "dev": true,
10070
+ "requires": {
10071
+ "lodash._reinterpolate": "^3.0.0"
10072
+ }
10073
+ },
10074
+ "logalot": {
10075
+ "version": "2.1.0",
10076
+ "resolved": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz",
10077
+ "integrity": "sha1-X46MkNME7fElMJUaVVSruMXj9VI=",
10078
+ "requires": {
10079
+ "figures": "^1.3.5",
10080
+ "squeak": "^1.0.0"
10081
+ }
10082
+ },
10083
+ "longest": {
10084
+ "version": "1.0.1",
10085
+ "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz",
10086
+ "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc="
10087
+ },
10088
+ "loose-envify": {
10089
+ "version": "1.4.0",
10090
+ "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
10091
+ "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
10092
+ "requires": {
10093
+ "js-tokens": "^3.0.0 || ^4.0.0"
10094
+ }
10095
+ },
10096
+ "loud-rejection": {
10097
+ "version": "1.6.0",
10098
+ "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
10099
+ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
10100
+ "requires": {
10101
+ "currently-unhandled": "^0.4.1",
10102
+ "signal-exit": "^3.0.0"
10103
+ }
10104
+ },
10105
+ "lowercase-keys": {
10106
+ "version": "1.0.1",
10107
+ "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz",
10108
+ "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA=="
10109
+ },
10110
+ "lpad-align": {
10111
+ "version": "1.1.2",
10112
+ "resolved": "https://registry.npmjs.org/lpad-align/-/lpad-align-1.1.2.tgz",
10113
+ "integrity": "sha1-IfYArBwwlcPG5JfuZyce4ISB/p4=",
10114
+ "requires": {
10115
+ "get-stdin": "^4.0.1",
10116
+ "indent-string": "^2.1.0",
10117
+ "longest": "^1.0.0",
10118
+ "meow": "^3.3.0"
10119
+ }
10120
+ },
10121
+ "lru-cache": {
10122
+ "version": "4.1.5",
10123
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
10124
+ "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
10125
+ "requires": {
10126
+ "pseudomap": "^1.0.2",
10127
+ "yallist": "^2.1.2"
10128
+ }
10129
+ },
10130
+ "make-dir": {
10131
+ "version": "1.3.0",
10132
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz",
10133
+ "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==",
10134
+ "requires": {
10135
+ "pify": "^3.0.0"
10136
+ },
10137
+ "dependencies": {
10138
+ "pify": {
10139
+ "version": "3.0.0",
10140
+ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
10141
+ "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY="
10142
+ }
10143
+ }
10144
+ },
10145
+ "makeerror": {
10146
+ "version": "1.0.11",
10147
+ "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz",
10148
+ "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=",
10149
+ "dev": true,
10150
+ "requires": {
10151
+ "tmpl": "1.0.x"
10152
+ }
10153
+ },
10154
+ "map-cache": {
10155
+ "version": "0.2.2",
10156
+ "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
10157
+ "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
10158
+ "dev": true
10159
+ },
10160
+ "map-obj": {
10161
+ "version": "1.0.1",
10162
+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
10163
+ "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0="
10164
+ },
10165
+ "map-visit": {
10166
+ "version": "1.0.0",
10167
+ "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
10168
+ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
10169
+ "dev": true,
10170
+ "requires": {
10171
+ "object-visit": "^1.0.0"
10172
+ }
10173
+ },
10174
+ "mdn-data": {
10175
+ "version": "2.0.4",
10176
+ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz",
10177
+ "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==",
10178
+ "dev": true
10179
+ },
10180
+ "memize": {
10181
+ "version": "1.1.0",
10182
+ "resolved": "https://registry.npmjs.org/memize/-/memize-1.1.0.tgz",
10183
+ "integrity": "sha512-K4FcPETOMTwe7KL2LK0orMhpOmWD2wRGwWWpbZy0fyArwsyIKR8YJVz8+efBAh3BO4zPqlSICu4vsLTRRqtFAg==",
10184
+ "dev": true
10185
+ },
10186
+ "meow": {
10187
+ "version": "3.7.0",
10188
+ "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
10189
+ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
10190
+ "requires": {
10191
+ "camelcase-keys": "^2.0.0",
10192
+ "decamelize": "^1.1.2",
10193
+ "loud-rejection": "^1.0.0",
10194
+ "map-obj": "^1.0.1",
10195
+ "minimist": "^1.1.3",
10196
+ "normalize-package-data": "^2.3.4",
10197
+ "object-assign": "^4.0.1",
10198
+ "read-pkg-up": "^1.0.1",
10199
+ "redent": "^1.0.0",
10200
+ "trim-newlines": "^1.0.0"
10201
+ }
10202
+ },
10203
+ "merge-stream": {
10204
+ "version": "2.0.0",
10205
+ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
10206
+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
10207
+ },
10208
+ "merge2": {
10209
+ "version": "1.4.1",
10210
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
10211
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg=="
10212
+ },
10213
+ "micromatch": {
10214
+ "version": "4.0.2",
10215
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz",
10216
+ "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==",
10217
+ "requires": {
10218
+ "braces": "^3.0.1",
10219
+ "picomatch": "^2.0.5"
10220
+ }
10221
+ },
10222
+ "mime-db": {
10223
+ "version": "1.46.0",
10224
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.46.0.tgz",
10225
+ "integrity": "sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ=="
10226
+ },
10227
+ "mime-types": {
10228
+ "version": "2.1.29",
10229
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.29.tgz",
10230
+ "integrity": "sha512-Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ==",
10231
+ "dev": true,
10232
+ "requires": {
10233
+ "mime-db": "1.46.0"
10234
+ }
10235
+ },
10236
+ "mimic-fn": {
10237
+ "version": "2.1.0",
10238
+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
10239
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
10240
+ "dev": true
10241
+ },
10242
+ "mimic-response": {
10243
+ "version": "1.0.1",
10244
+ "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz",
10245
+ "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ=="
10246
+ },
10247
+ "mini-css-extract-plugin": {
10248
+ "version": "1.3.9",
10249
+ "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.9.tgz",
10250
+ "integrity": "sha512-Ac4s+xhVbqlyhXS5J/Vh/QXUz3ycXlCqoCPpg0vdfhsIBH9eg/It/9L1r1XhSCH737M1lqcWnMuWL13zcygn5A==",
10251
+ "dev": true,
10252
+ "requires": {
10253
+ "loader-utils": "^2.0.0",
10254
+ "schema-utils": "^3.0.0",
10255
+ "webpack-sources": "^1.1.0"
10256
+ },
10257
+ "dependencies": {
10258
+ "json5": {
10259
+ "version": "2.2.0",
10260
+ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
10261
+ "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
10262
+ "dev": true,
10263
+ "requires": {
10264
+ "minimist": "^1.2.5"
10265
+ }
10266
+ },
10267
+ "loader-utils": {
10268
+ "version": "2.0.0",
10269
+ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
10270
+ "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
10271
+ "dev": true,
10272
+ "requires": {
10273
+ "big.js": "^5.2.2",
10274
+ "emojis-list": "^3.0.0",
10275
+ "json5": "^2.1.2"
10276
+ }
10277
+ },
10278
+ "schema-utils": {
10279
+ "version": "3.0.0",
10280
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
10281
+ "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
10282
+ "dev": true,
10283
+ "requires": {
10284
+ "@types/json-schema": "^7.0.6",
10285
+ "ajv": "^6.12.5",
10286
+ "ajv-keywords": "^3.5.2"
10287
+ }
10288
+ }
10289
+ }
10290
+ },
10291
+ "minimatch": {
10292
+ "version": "3.0.4",
10293
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
10294
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
10295
+ "requires": {
10296
+ "brace-expansion": "^1.1.7"
10297
+ }
10298
+ },
10299
+ "minimist": {
10300
+ "version": "1.2.5",
10301
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
10302
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
10303
+ },
10304
+ "minipass": {
10305
+ "version": "3.1.3",
10306
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz",
10307
+ "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==",
10308
+ "requires": {
10309
+ "yallist": "^4.0.0"
10310
+ },
10311
+ "dependencies": {
10312
+ "yallist": {
10313
+ "version": "4.0.0",
10314
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
10315
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
10316
+ }
10317
+ }
10318
+ },
10319
+ "minipass-collect": {
10320
+ "version": "1.0.2",
10321
+ "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz",
10322
+ "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==",
10323
+ "requires": {
10324
+ "minipass": "^3.0.0"
10325
+ }
10326
+ },
10327
+ "minipass-flush": {
10328
+ "version": "1.0.5",
10329
+ "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz",
10330
+ "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==",
10331
+ "requires": {
10332
+ "minipass": "^3.0.0"
10333
+ }
10334
+ },
10335
+ "minipass-pipeline": {
10336
+ "version": "1.2.4",
10337
+ "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz",
10338
+ "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==",
10339
+ "requires": {
10340
+ "minipass": "^3.0.0"
10341
+ }
10342
+ },
10343
+ "minizlib": {
10344
+ "version": "2.1.2",
10345
+ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
10346
+ "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
10347
+ "dev": true,
10348
+ "requires": {
10349
+ "minipass": "^3.0.0",
10350
+ "yallist": "^4.0.0"
10351
+ },
10352
+ "dependencies": {
10353
+ "yallist": {
10354
+ "version": "4.0.0",
10355
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
10356
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
10357
+ "dev": true
10358
+ }
10359
+ }
10360
+ },
10361
+ "mitt": {
10362
+ "version": "2.1.0",
10363
+ "resolved": "https://registry.npmjs.org/mitt/-/mitt-2.1.0.tgz",
10364
+ "integrity": "sha512-ILj2TpLiysu2wkBbWjAmww7TkZb65aiQO+DkVdUTBpBXq+MHYiETENkKFMtsJZX1Lf4pe4QOrTSjIfUwN5lRdg==",
10365
+ "dev": true
10366
+ },
10367
+ "mixin-deep": {
10368
+ "version": "1.3.2",
10369
+ "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
10370
+ "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
10371
+ "dev": true,
10372
+ "requires": {
10373
+ "for-in": "^1.0.2",
10374
+ "is-extendable": "^1.0.1"
10375
+ },
10376
+ "dependencies": {
10377
+ "is-extendable": {
10378
+ "version": "1.0.1",
10379
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
10380
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
10381
+ "dev": true,
10382
+ "requires": {
10383
+ "is-plain-object": "^2.0.4"
10384
+ }
10385
+ }
10386
+ }
10387
+ },
10388
+ "mkdirp": {
10389
+ "version": "0.5.5",
10390
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
10391
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
10392
+ "requires": {
10393
+ "minimist": "^1.2.5"
10394
+ }
10395
+ },
10396
+ "moment": {
10397
+ "version": "2.29.1",
10398
+ "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz",
10399
+ "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==",
10400
+ "dev": true
10401
+ },
10402
+ "moment-timezone": {
10403
+ "version": "0.5.33",
10404
+ "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.33.tgz",
10405
+ "integrity": "sha512-PTc2vcT8K9J5/9rDEPe5czSIKgLoGsH8UNpA4qZTVw0Vd/Uz19geE9abbIOQKaAQFcnQ3v5YEXrbSc5BpshH+w==",
10406
+ "dev": true,
10407
+ "requires": {
10408
+ "moment": ">= 2.9.0"
10409
+ }
10410
+ },
10411
+ "moo": {
10412
+ "version": "0.5.1",
10413
+ "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz",
10414
+ "integrity": "sha512-I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==",
10415
+ "dev": true
10416
+ },
10417
+ "mousetrap": {
10418
+ "version": "1.6.5",
10419
+ "resolved": "https://registry.npmjs.org/mousetrap/-/mousetrap-1.6.5.tgz",
10420
+ "integrity": "sha512-QNo4kEepaIBwiT8CDhP98umTetp+JNfQYBWvC1pc6/OAibuXtRcxZ58Qz8skvEHYvURne/7R8T5VoOI7rDsEUA==",
10421
+ "dev": true
10422
+ },
10423
+ "move-concurrently": {
10424
+ "version": "1.0.1",
10425
+ "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz",
10426
+ "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=",
10427
+ "requires": {
10428
+ "aproba": "^1.1.1",
10429
+ "copy-concurrently": "^1.0.0",
10430
+ "fs-write-stream-atomic": "^1.0.8",
10431
+ "mkdirp": "^0.5.1",
10432
+ "rimraf": "^2.5.4",
10433
+ "run-queue": "^1.0.3"
10434
+ }
10435
+ },
10436
+ "ms": {
10437
+ "version": "2.0.0",
10438
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
10439
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
10440
+ "dev": true
10441
+ },
10442
+ "nan": {
10443
+ "version": "2.14.2",
10444
+ "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz",
10445
+ "integrity": "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==",
10446
+ "dev": true
10447
+ },
10448
+ "nanoid": {
10449
+ "version": "2.1.11",
10450
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-2.1.11.tgz",
10451
+ "integrity": "sha512-s/snB+WGm6uwi0WjsZdaVcuf3KJXlfGl2LcxgwkEwJF0D/BWzVWAZW/XY4bFaiR7s0Jk3FPvlnepg1H1b1UwlA==",
10452
+ "dev": true
10453
+ },
10454
+ "nanomatch": {
10455
+ "version": "1.2.13",
10456
+ "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
10457
+ "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
10458
+ "dev": true,
10459
+ "requires": {
10460
+ "arr-diff": "^4.0.0",
10461
+ "array-unique": "^0.3.2",
10462
+ "define-property": "^2.0.2",
10463
+ "extend-shallow": "^3.0.2",
10464
+ "fragment-cache": "^0.2.1",
10465
+ "is-windows": "^1.0.2",
10466
+ "kind-of": "^6.0.2",
10467
+ "object.pick": "^1.3.0",
10468
+ "regex-not": "^1.0.0",
10469
+ "snapdragon": "^0.8.1",
10470
+ "to-regex": "^3.0.1"
10471
+ }
10472
+ },
10473
+ "natural-compare": {
10474
+ "version": "1.4.0",
10475
+ "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
10476
+ "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
10477
+ "dev": true
10478
+ },
10479
+ "nearley": {
10480
+ "version": "2.20.1",
10481
+ "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.20.1.tgz",
10482
+ "integrity": "sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==",
10483
+ "dev": true,
10484
+ "requires": {
10485
+ "commander": "^2.19.0",
10486
+ "moo": "^0.5.0",
10487
+ "railroad-diagrams": "^1.0.0",
10488
+ "randexp": "0.4.6"
10489
+ }
10490
+ },
10491
+ "neo-async": {
10492
+ "version": "2.6.2",
10493
+ "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
10494
+ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
10495
+ "dev": true
10496
+ },
10497
+ "nice-try": {
10498
+ "version": "1.0.5",
10499
+ "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
10500
+ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ=="
10501
+ },
10502
+ "node-gyp": {
10503
+ "version": "7.1.2",
10504
+ "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-7.1.2.tgz",
10505
+ "integrity": "sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ==",
10506
+ "dev": true,
10507
+ "requires": {
10508
+ "env-paths": "^2.2.0",
10509
+ "glob": "^7.1.4",
10510
+ "graceful-fs": "^4.2.3",
10511
+ "nopt": "^5.0.0",
10512
+ "npmlog": "^4.1.2",
10513
+ "request": "^2.88.2",
10514
+ "rimraf": "^3.0.2",
10515
+ "semver": "^7.3.2",
10516
+ "tar": "^6.0.2",
10517
+ "which": "^2.0.2"
10518
+ },
10519
+ "dependencies": {
10520
+ "lru-cache": {
10521
+ "version": "6.0.0",
10522
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
10523
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
10524
+ "dev": true,
10525
+ "requires": {
10526
+ "yallist": "^4.0.0"
10527
+ }
10528
+ },
10529
+ "rimraf": {
10530
+ "version": "3.0.2",
10531
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
10532
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
10533
+ "dev": true,
10534
+ "requires": {
10535
+ "glob": "^7.1.3"
10536
+ }
10537
+ },
10538
+ "semver": {
10539
+ "version": "7.3.5",
10540
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
10541
+ "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
10542
+ "dev": true,
10543
+ "requires": {
10544
+ "lru-cache": "^6.0.0"
10545
+ }
10546
+ },
10547
+ "yallist": {
10548
+ "version": "4.0.0",
10549
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
10550
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
10551
+ "dev": true
10552
+ }
10553
+ }
10554
+ },
10555
+ "node-int64": {
10556
+ "version": "0.4.0",
10557
+ "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
10558
+ "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=",
10559
+ "dev": true
10560
+ },
10561
+ "node-modules-regexp": {
10562
+ "version": "1.0.0",
10563
+ "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz",
10564
+ "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=",
10565
+ "dev": true
10566
+ },
10567
+ "node-releases": {
10568
+ "version": "1.1.71",
10569
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz",
10570
+ "integrity": "sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==",
10571
+ "dev": true
10572
+ },
10573
+ "node-sass": {
10574
+ "version": "5.0.0",
10575
+ "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-5.0.0.tgz",
10576
+ "integrity": "sha512-opNgmlu83ZCF792U281Ry7tak9IbVC+AKnXGovcQ8LG8wFaJv6cLnRlc6DIHlmNxWEexB5bZxi9SZ9JyUuOYjw==",
10577
+ "dev": true,
10578
+ "requires": {
10579
+ "async-foreach": "^0.1.3",
10580
+ "chalk": "^1.1.1",
10581
+ "cross-spawn": "^7.0.3",
10582
+ "gaze": "^1.0.0",
10583
+ "get-stdin": "^4.0.1",
10584
+ "glob": "^7.0.3",
10585
+ "lodash": "^4.17.15",
10586
+ "meow": "^3.7.0",
10587
+ "mkdirp": "^0.5.1",
10588
+ "nan": "^2.13.2",
10589
+ "node-gyp": "^7.1.0",
10590
+ "npmlog": "^4.0.0",
10591
+ "request": "^2.88.0",
10592
+ "sass-graph": "2.2.5",
10593
+ "stdout-stream": "^1.4.0",
10594
+ "true-case-path": "^1.0.2"
10595
+ }
10596
+ },
10597
+ "nopt": {
10598
+ "version": "5.0.0",
10599
+ "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
10600
+ "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
10601
+ "dev": true,
10602
+ "requires": {
10603
+ "abbrev": "1"
10604
+ }
10605
+ },
10606
+ "normalize-package-data": {
10607
+ "version": "2.5.0",
10608
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
10609
+ "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
10610
+ "requires": {
10611
+ "hosted-git-info": "^2.1.4",
10612
+ "resolve": "^1.10.0",
10613
+ "semver": "2 || 3 || 4 || 5",
10614
+ "validate-npm-package-license": "^3.0.1"
10615
+ }
10616
+ },
10617
+ "normalize-path": {
10618
+ "version": "3.0.0",
10619
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
10620
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
10621
+ "dev": true
10622
+ },
10623
+ "normalize-range": {
10624
+ "version": "0.1.2",
10625
+ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
10626
+ "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=",
10627
+ "dev": true
10628
+ },
10629
+ "normalize-url": {
10630
+ "version": "2.0.1",
10631
+ "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz",
10632
+ "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==",
10633
+ "requires": {
10634
+ "prepend-http": "^2.0.0",
10635
+ "query-string": "^5.0.1",
10636
+ "sort-keys": "^2.0.0"
10637
+ },
10638
+ "dependencies": {
10639
+ "prepend-http": {
10640
+ "version": "2.0.0",
10641
+ "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz",
10642
+ "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc="
10643
+ },
10644
+ "sort-keys": {
10645
+ "version": "2.0.0",
10646
+ "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz",
10647
+ "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=",
10648
+ "requires": {
10649
+ "is-plain-obj": "^1.0.0"
10650
+ }
10651
+ }
10652
+ }
10653
+ },
10654
+ "normalize-wheel": {
10655
+ "version": "1.0.1",
10656
+ "resolved": "https://registry.npmjs.org/normalize-wheel/-/normalize-wheel-1.0.1.tgz",
10657
+ "integrity": "sha1-rsiGr/2wRQcNhWRH32Ls+GFG7EU=",
10658
+ "dev": true
10659
+ },
10660
+ "npm-conf": {
10661
+ "version": "1.1.3",
10662
+ "resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz",
10663
+ "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==",
10664
+ "requires": {
10665
+ "config-chain": "^1.1.11",
10666
+ "pify": "^3.0.0"
10667
+ },
10668
+ "dependencies": {
10669
+ "pify": {
10670
+ "version": "3.0.0",
10671
+ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
10672
+ "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY="
10673
+ }
10674
+ }
10675
+ },
10676
+ "npm-run-path": {
10677
+ "version": "4.0.1",
10678
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
10679
+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
10680
+ "requires": {
10681
+ "path-key": "^3.0.0"
10682
+ }
10683
+ },
10684
+ "npmlog": {
10685
+ "version": "4.1.2",
10686
+ "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
10687
+ "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
10688
+ "dev": true,
10689
+ "requires": {
10690
+ "are-we-there-yet": "~1.1.2",
10691
+ "console-control-strings": "~1.1.0",
10692
+ "gauge": "~2.7.3",
10693
+ "set-blocking": "~2.0.0"
10694
+ }
10695
+ },
10696
+ "nth-check": {
10697
+ "version": "1.0.2",
10698
+ "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
10699
+ "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
10700
+ "dev": true,
10701
+ "requires": {
10702
+ "boolbase": "~1.0.0"
10703
+ }
10704
+ },
10705
+ "num2fraction": {
10706
+ "version": "1.2.2",
10707
+ "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz",
10708
+ "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=",
10709
+ "dev": true
10710
+ },
10711
+ "number-is-nan": {
10712
+ "version": "1.0.1",
10713
+ "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
10714
+ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
10715
+ "dev": true
10716
+ },
10717
+ "oauth-sign": {
10718
+ "version": "0.9.0",
10719
+ "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
10720
+ "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
10721
+ "dev": true
10722
+ },
10723
+ "object-assign": {
10724
+ "version": "4.1.1",
10725
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
10726
+ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
10727
+ },
10728
+ "object-copy": {
10729
+ "version": "0.1.0",
10730
+ "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
10731
+ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
10732
+ "dev": true,
10733
+ "requires": {
10734
+ "copy-descriptor": "^0.1.0",
10735
+ "define-property": "^0.2.5",
10736
+ "kind-of": "^3.0.3"
10737
+ },
10738
+ "dependencies": {
10739
+ "define-property": {
10740
+ "version": "0.2.5",
10741
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
10742
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
10743
+ "dev": true,
10744
+ "requires": {
10745
+ "is-descriptor": "^0.1.0"
10746
+ }
10747
+ },
10748
+ "kind-of": {
10749
+ "version": "3.2.2",
10750
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
10751
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
10752
+ "dev": true,
10753
+ "requires": {
10754
+ "is-buffer": "^1.1.5"
10755
+ }
10756
+ }
10757
+ }
10758
+ },
10759
+ "object-hash": {
10760
+ "version": "1.3.1",
10761
+ "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz",
10762
+ "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==",
10763
+ "dev": true
10764
+ },
10765
+ "object-inspect": {
10766
+ "version": "1.9.0",
10767
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz",
10768
+ "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==",
10769
+ "dev": true
10770
+ },
10771
+ "object-is": {
10772
+ "version": "1.1.5",
10773
+ "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz",
10774
+ "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==",
10775
+ "dev": true,
10776
+ "requires": {
10777
+ "call-bind": "^1.0.2",
10778
+ "define-properties": "^1.1.3"
10779
+ }
10780
+ },
10781
+ "object-keys": {
10782
+ "version": "1.1.1",
10783
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
10784
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
10785
+ "dev": true
10786
+ },
10787
+ "object-visit": {
10788
+ "version": "1.0.1",
10789
+ "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
10790
+ "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
10791
+ "dev": true,
10792
+ "requires": {
10793
+ "isobject": "^3.0.0"
10794
+ }
10795
+ },
10796
+ "object.assign": {
10797
+ "version": "4.1.2",
10798
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz",
10799
+ "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==",
10800
+ "dev": true,
10801
+ "requires": {
10802
+ "call-bind": "^1.0.0",
10803
+ "define-properties": "^1.1.3",
10804
+ "has-symbols": "^1.0.1",
10805
+ "object-keys": "^1.1.1"
10806
+ }
10807
+ },
10808
+ "object.entries": {
10809
+ "version": "1.1.3",
10810
+ "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz",
10811
+ "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==",
10812
+ "dev": true,
10813
+ "requires": {
10814
+ "call-bind": "^1.0.0",
10815
+ "define-properties": "^1.1.3",
10816
+ "es-abstract": "^1.18.0-next.1",
10817
+ "has": "^1.0.3"
10818
+ }
10819
+ },
10820
+ "object.fromentries": {
10821
+ "version": "2.0.4",
10822
+ "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz",
10823
+ "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==",
10824
+ "dev": true,
10825
+ "requires": {
10826
+ "call-bind": "^1.0.2",
10827
+ "define-properties": "^1.1.3",
10828
+ "es-abstract": "^1.18.0-next.2",
10829
+ "has": "^1.0.3"
10830
+ }
10831
+ },
10832
+ "object.getownpropertydescriptors": {
10833
+ "version": "2.1.2",
10834
+ "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz",
10835
+ "integrity": "sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ==",
10836
+ "dev": true,
10837
+ "requires": {
10838
+ "call-bind": "^1.0.2",
10839
+ "define-properties": "^1.1.3",
10840
+ "es-abstract": "^1.18.0-next.2"
10841
+ }
10842
+ },
10843
+ "object.pick": {
10844
+ "version": "1.3.0",
10845
+ "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
10846
+ "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
10847
+ "dev": true,
10848
+ "requires": {
10849
+ "isobject": "^3.0.1"
10850
+ }
10851
+ },
10852
+ "object.values": {
10853
+ "version": "1.1.3",
10854
+ "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.3.tgz",
10855
+ "integrity": "sha512-nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw==",
10856
+ "dev": true,
10857
+ "requires": {
10858
+ "call-bind": "^1.0.2",
10859
+ "define-properties": "^1.1.3",
10860
+ "es-abstract": "^1.18.0-next.2",
10861
+ "has": "^1.0.3"
10862
+ }
10863
+ },
10864
+ "once": {
10865
+ "version": "1.4.0",
10866
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
10867
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
10868
+ "requires": {
10869
+ "wrappy": "1"
10870
+ }
10871
+ },
10872
+ "onetime": {
10873
+ "version": "5.1.2",
10874
+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
10875
+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
10876
+ "dev": true,
10877
+ "requires": {
10878
+ "mimic-fn": "^2.1.0"
10879
+ }
10880
+ },
10881
+ "optionator": {
10882
+ "version": "0.9.1",
10883
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
10884
+ "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
10885
+ "dev": true,
10886
+ "requires": {
10887
+ "deep-is": "^0.1.3",
10888
+ "fast-levenshtein": "^2.0.6",
10889
+ "levn": "^0.4.1",
10890
+ "prelude-ls": "^1.2.1",
10891
+ "type-check": "^0.4.0",
10892
+ "word-wrap": "^1.2.3"
10893
+ }
10894
+ },
10895
+ "os-filter-obj": {
10896
+ "version": "2.0.0",
10897
+ "resolved": "https://registry.npmjs.org/os-filter-obj/-/os-filter-obj-2.0.0.tgz",
10898
+ "integrity": "sha512-uksVLsqG3pVdzzPvmAHpBK0wKxYItuzZr7SziusRPoz67tGV8rL1szZ6IdeUrbqLjGDwApBtN29eEE3IqGHOjg==",
10899
+ "requires": {
10900
+ "arch": "^2.1.0"
10901
+ }
10902
+ },
10903
+ "ow": {
10904
+ "version": "0.17.0",
10905
+ "resolved": "https://registry.npmjs.org/ow/-/ow-0.17.0.tgz",
10906
+ "integrity": "sha512-i3keDzDQP5lWIe4oODyDFey1qVrq2hXKTuTH2VpqwpYtzPiKZt2ziRI4NBQmgW40AnV5Euz17OyWweCb+bNEQA==",
10907
+ "requires": {
10908
+ "type-fest": "^0.11.0"
10909
+ }
10910
+ },
10911
+ "p-cancelable": {
10912
+ "version": "0.3.0",
10913
+ "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz",
10914
+ "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw=="
10915
+ },
10916
+ "p-event": {
10917
+ "version": "1.3.0",
10918
+ "resolved": "https://registry.npmjs.org/p-event/-/p-event-1.3.0.tgz",
10919
+ "integrity": "sha1-jmtPT2XHK8W2/ii3XtqHT5akoIU=",
10920
+ "requires": {
10921
+ "p-timeout": "^1.1.1"
10922
+ }
10923
+ },
10924
+ "p-finally": {
10925
+ "version": "1.0.0",
10926
+ "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
10927
+ "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4="
10928
+ },
10929
+ "p-is-promise": {
10930
+ "version": "1.1.0",
10931
+ "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz",
10932
+ "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4="
10933
+ },
10934
+ "p-limit": {
10935
+ "version": "2.3.0",
10936
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
10937
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
10938
+ "requires": {
10939
+ "p-try": "^2.0.0"
10940
+ }
10941
+ },
10942
+ "p-locate": {
10943
+ "version": "4.1.0",
10944
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
10945
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
10946
+ "requires": {
10947
+ "p-limit": "^2.2.0"
10948
+ }
10949
+ },
10950
+ "p-map": {
10951
+ "version": "3.0.0",
10952
+ "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz",
10953
+ "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==",
10954
+ "requires": {
10955
+ "aggregate-error": "^3.0.0"
10956
+ }
10957
+ },
10958
+ "p-map-series": {
10959
+ "version": "1.0.0",
10960
+ "resolved": "https://registry.npmjs.org/p-map-series/-/p-map-series-1.0.0.tgz",
10961
+ "integrity": "sha1-v5j+V1cFZYqeE1G++4WuTB8Hvco=",
10962
+ "requires": {
10963
+ "p-reduce": "^1.0.0"
10964
+ }
10965
+ },
10966
+ "p-pipe": {
10967
+ "version": "3.1.0",
10968
+ "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz",
10969
+ "integrity": "sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw=="
10970
+ },
10971
+ "p-reduce": {
10972
+ "version": "1.0.0",
10973
+ "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz",
10974
+ "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo="
10975
+ },
10976
+ "p-timeout": {
10977
+ "version": "1.2.1",
10978
+ "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz",
10979
+ "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=",
10980
+ "requires": {
10981
+ "p-finally": "^1.0.0"
10982
+ }
10983
+ },
10984
+ "p-try": {
10985
+ "version": "2.2.0",
10986
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
10987
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
10988
+ },
10989
+ "parent-module": {
10990
+ "version": "1.0.1",
10991
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
10992
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
10993
+ "dev": true,
10994
+ "requires": {
10995
+ "callsites": "^3.0.0"
10996
+ },
10997
+ "dependencies": {
10998
+ "callsites": {
10999
+ "version": "3.1.0",
11000
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
11001
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
11002
+ "dev": true
11003
+ }
11004
+ }
11005
+ },
11006
+ "parse-json": {
11007
+ "version": "2.2.0",
11008
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
11009
+ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
11010
+ "requires": {
11011
+ "error-ex": "^1.2.0"
11012
+ }
11013
+ },
11014
+ "parse5": {
11015
+ "version": "6.0.1",
11016
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
11017
+ "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
11018
+ "dev": true
11019
+ },
11020
+ "parse5-htmlparser2-tree-adapter": {
11021
+ "version": "6.0.1",
11022
+ "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz",
11023
+ "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==",
11024
+ "dev": true,
11025
+ "requires": {
11026
+ "parse5": "^6.0.1"
11027
+ }
11028
+ },
11029
+ "pascalcase": {
11030
+ "version": "0.1.1",
11031
+ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
11032
+ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
11033
+ "dev": true
11034
+ },
11035
+ "path-dirname": {
11036
+ "version": "1.0.2",
11037
+ "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
11038
+ "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=",
11039
+ "dev": true,
11040
+ "optional": true
11041
+ },
11042
+ "path-exists": {
11043
+ "version": "2.1.0",
11044
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
11045
+ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
11046
+ "requires": {
11047
+ "pinkie-promise": "^2.0.0"
11048
+ }
11049
+ },
11050
+ "path-is-absolute": {
11051
+ "version": "1.0.1",
11052
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
11053
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
11054
+ },
11055
+ "path-key": {
11056
+ "version": "3.1.1",
11057
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
11058
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="
11059
+ },
11060
+ "path-parse": {
11061
+ "version": "1.0.6",
11062
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
11063
+ "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw=="
11064
+ },
11065
+ "path-to-regexp": {
11066
+ "version": "1.8.0",
11067
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz",
11068
+ "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==",
11069
+ "dev": true,
11070
+ "requires": {
11071
+ "isarray": "0.0.1"
11072
+ },
11073
+ "dependencies": {
11074
+ "isarray": {
11075
+ "version": "0.0.1",
11076
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
11077
+ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
11078
+ "dev": true
11079
+ }
11080
+ }
11081
+ },
11082
+ "path-type": {
11083
+ "version": "1.1.0",
11084
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
11085
+ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
11086
+ "requires": {
11087
+ "graceful-fs": "^4.1.2",
11088
+ "pify": "^2.0.0",
11089
+ "pinkie-promise": "^2.0.0"
11090
+ }
11091
+ },
11092
+ "pend": {
11093
+ "version": "1.2.0",
11094
+ "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
11095
+ "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA="
11096
+ },
11097
+ "performance-now": {
11098
+ "version": "2.1.0",
11099
+ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
11100
+ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=",
11101
+ "dev": true
11102
+ },
11103
+ "picomatch": {
11104
+ "version": "2.2.2",
11105
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
11106
+ "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg=="
11107
+ },
11108
+ "pify": {
11109
+ "version": "2.3.0",
11110
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
11111
+ "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw="
11112
+ },
11113
+ "pinkie": {
11114
+ "version": "2.0.4",
11115
+ "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
11116
+ "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA="
11117
+ },
11118
+ "pinkie-promise": {
11119
+ "version": "2.0.1",
11120
+ "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
11121
+ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
11122
+ "requires": {
11123
+ "pinkie": "^2.0.0"
11124
+ }
11125
+ },
11126
+ "pirates": {
11127
+ "version": "4.0.1",
11128
+ "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz",
11129
+ "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==",
11130
+ "dev": true,
11131
+ "requires": {
11132
+ "node-modules-regexp": "^1.0.0"
11133
+ }
11134
+ },
11135
+ "pkg-dir": {
11136
+ "version": "4.2.0",
11137
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
11138
+ "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
11139
+ "requires": {
11140
+ "find-up": "^4.0.0"
11141
+ },
11142
+ "dependencies": {
11143
+ "find-up": {
11144
+ "version": "4.1.0",
11145
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
11146
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
11147
+ "requires": {
11148
+ "locate-path": "^5.0.0",
11149
+ "path-exists": "^4.0.0"
11150
+ }
11151
+ },
11152
+ "path-exists": {
11153
+ "version": "4.0.0",
11154
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
11155
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
11156
+ }
11157
+ }
11158
+ },
11159
+ "pngquant-bin": {
11160
+ "version": "6.0.0",
11161
+ "resolved": "https://registry.npmjs.org/pngquant-bin/-/pngquant-bin-6.0.0.tgz",
11162
+ "integrity": "sha512-oXWAS9MQ9iiDAJRdAZ9KO1mC5UwhzKkJsmetiu0iqIjJuW7JsuLhmc4JdRm7uJkIWRzIAou/Vq2VcjfJwz30Ow==",
11163
+ "requires": {
11164
+ "bin-build": "^3.0.0",
11165
+ "bin-wrapper": "^4.0.1",
11166
+ "execa": "^4.0.0",
11167
+ "logalot": "^2.0.0"
11168
+ }
11169
+ },
11170
+ "popmotion": {
11171
+ "version": "9.0.0-rc.20",
11172
+ "resolved": "https://registry.npmjs.org/popmotion/-/popmotion-9.0.0-rc.20.tgz",
11173
+ "integrity": "sha512-f98sny03WuA+c8ckBjNNXotJD4G2utG/I3Q23NU69OEafrXtxxSukAaJBxzbtxwDvz3vtZK69pu9ojdkMoBNTg==",
11174
+ "dev": true,
11175
+ "requires": {
11176
+ "framesync": "^4.1.0",
11177
+ "hey-listen": "^1.0.8",
11178
+ "style-value-types": "^3.1.9",
11179
+ "tslib": "^1.10.0"
11180
+ }
11181
+ },
11182
+ "posix-character-classes": {
11183
+ "version": "0.1.1",
11184
+ "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
11185
+ "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
11186
+ "dev": true
11187
+ },
11188
+ "postcss": {
11189
+ "version": "6.0.23",
11190
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
11191
+ "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
11192
+ "dev": true,
11193
+ "requires": {
11194
+ "chalk": "^2.4.1",
11195
+ "source-map": "^0.6.1",
11196
+ "supports-color": "^5.4.0"
11197
+ },
11198
+ "dependencies": {
11199
+ "ansi-styles": {
11200
+ "version": "3.2.1",
11201
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11202
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11203
+ "dev": true,
11204
+ "requires": {
11205
+ "color-convert": "^1.9.0"
11206
+ }
11207
+ },
11208
+ "chalk": {
11209
+ "version": "2.4.2",
11210
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11211
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11212
+ "dev": true,
11213
+ "requires": {
11214
+ "ansi-styles": "^3.2.1",
11215
+ "escape-string-regexp": "^1.0.5",
11216
+ "supports-color": "^5.3.0"
11217
+ }
11218
+ },
11219
+ "supports-color": {
11220
+ "version": "5.5.0",
11221
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11222
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11223
+ "dev": true,
11224
+ "requires": {
11225
+ "has-flag": "^3.0.0"
11226
+ }
11227
+ }
11228
+ }
11229
+ },
11230
+ "postcss-attribute-case-insensitive": {
11231
+ "version": "4.0.2",
11232
+ "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz",
11233
+ "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==",
11234
+ "dev": true,
11235
+ "requires": {
11236
+ "postcss": "^7.0.2",
11237
+ "postcss-selector-parser": "^6.0.2"
11238
+ },
11239
+ "dependencies": {
11240
+ "ansi-styles": {
11241
+ "version": "3.2.1",
11242
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11243
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11244
+ "dev": true,
11245
+ "requires": {
11246
+ "color-convert": "^1.9.0"
11247
+ }
11248
+ },
11249
+ "chalk": {
11250
+ "version": "2.4.2",
11251
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11252
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11253
+ "dev": true,
11254
+ "requires": {
11255
+ "ansi-styles": "^3.2.1",
11256
+ "escape-string-regexp": "^1.0.5",
11257
+ "supports-color": "^5.3.0"
11258
+ },
11259
+ "dependencies": {
11260
+ "supports-color": {
11261
+ "version": "5.5.0",
11262
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11263
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11264
+ "dev": true,
11265
+ "requires": {
11266
+ "has-flag": "^3.0.0"
11267
+ }
11268
+ }
11269
+ }
11270
+ },
11271
+ "postcss": {
11272
+ "version": "7.0.35",
11273
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11274
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11275
+ "dev": true,
11276
+ "requires": {
11277
+ "chalk": "^2.4.2",
11278
+ "source-map": "^0.6.1",
11279
+ "supports-color": "^6.1.0"
11280
+ }
11281
+ },
11282
+ "supports-color": {
11283
+ "version": "6.1.0",
11284
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11285
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11286
+ "dev": true,
11287
+ "requires": {
11288
+ "has-flag": "^3.0.0"
11289
+ }
11290
+ }
11291
+ }
11292
+ },
11293
+ "postcss-color-functional-notation": {
11294
+ "version": "2.0.1",
11295
+ "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz",
11296
+ "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==",
11297
+ "dev": true,
11298
+ "requires": {
11299
+ "postcss": "^7.0.2",
11300
+ "postcss-values-parser": "^2.0.0"
11301
+ },
11302
+ "dependencies": {
11303
+ "ansi-styles": {
11304
+ "version": "3.2.1",
11305
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11306
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11307
+ "dev": true,
11308
+ "requires": {
11309
+ "color-convert": "^1.9.0"
11310
+ }
11311
+ },
11312
+ "chalk": {
11313
+ "version": "2.4.2",
11314
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11315
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11316
+ "dev": true,
11317
+ "requires": {
11318
+ "ansi-styles": "^3.2.1",
11319
+ "escape-string-regexp": "^1.0.5",
11320
+ "supports-color": "^5.3.0"
11321
+ },
11322
+ "dependencies": {
11323
+ "supports-color": {
11324
+ "version": "5.5.0",
11325
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11326
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11327
+ "dev": true,
11328
+ "requires": {
11329
+ "has-flag": "^3.0.0"
11330
+ }
11331
+ }
11332
+ }
11333
+ },
11334
+ "postcss": {
11335
+ "version": "7.0.35",
11336
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11337
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11338
+ "dev": true,
11339
+ "requires": {
11340
+ "chalk": "^2.4.2",
11341
+ "source-map": "^0.6.1",
11342
+ "supports-color": "^6.1.0"
11343
+ }
11344
+ },
11345
+ "supports-color": {
11346
+ "version": "6.1.0",
11347
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11348
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11349
+ "dev": true,
11350
+ "requires": {
11351
+ "has-flag": "^3.0.0"
11352
+ }
11353
+ }
11354
+ }
11355
+ },
11356
+ "postcss-color-gray": {
11357
+ "version": "5.0.0",
11358
+ "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz",
11359
+ "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==",
11360
+ "dev": true,
11361
+ "requires": {
11362
+ "@csstools/convert-colors": "^1.4.0",
11363
+ "postcss": "^7.0.5",
11364
+ "postcss-values-parser": "^2.0.0"
11365
+ },
11366
+ "dependencies": {
11367
+ "ansi-styles": {
11368
+ "version": "3.2.1",
11369
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11370
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11371
+ "dev": true,
11372
+ "requires": {
11373
+ "color-convert": "^1.9.0"
11374
+ }
11375
+ },
11376
+ "chalk": {
11377
+ "version": "2.4.2",
11378
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11379
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11380
+ "dev": true,
11381
+ "requires": {
11382
+ "ansi-styles": "^3.2.1",
11383
+ "escape-string-regexp": "^1.0.5",
11384
+ "supports-color": "^5.3.0"
11385
+ },
11386
+ "dependencies": {
11387
+ "supports-color": {
11388
+ "version": "5.5.0",
11389
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11390
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11391
+ "dev": true,
11392
+ "requires": {
11393
+ "has-flag": "^3.0.0"
11394
+ }
11395
+ }
11396
+ }
11397
+ },
11398
+ "postcss": {
11399
+ "version": "7.0.35",
11400
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11401
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11402
+ "dev": true,
11403
+ "requires": {
11404
+ "chalk": "^2.4.2",
11405
+ "source-map": "^0.6.1",
11406
+ "supports-color": "^6.1.0"
11407
+ }
11408
+ },
11409
+ "supports-color": {
11410
+ "version": "6.1.0",
11411
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11412
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11413
+ "dev": true,
11414
+ "requires": {
11415
+ "has-flag": "^3.0.0"
11416
+ }
11417
+ }
11418
+ }
11419
+ },
11420
+ "postcss-color-hex-alpha": {
11421
+ "version": "5.0.3",
11422
+ "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz",
11423
+ "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==",
11424
+ "dev": true,
11425
+ "requires": {
11426
+ "postcss": "^7.0.14",
11427
+ "postcss-values-parser": "^2.0.1"
11428
+ },
11429
+ "dependencies": {
11430
+ "ansi-styles": {
11431
+ "version": "3.2.1",
11432
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11433
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11434
+ "dev": true,
11435
+ "requires": {
11436
+ "color-convert": "^1.9.0"
11437
+ }
11438
+ },
11439
+ "chalk": {
11440
+ "version": "2.4.2",
11441
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11442
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11443
+ "dev": true,
11444
+ "requires": {
11445
+ "ansi-styles": "^3.2.1",
11446
+ "escape-string-regexp": "^1.0.5",
11447
+ "supports-color": "^5.3.0"
11448
+ },
11449
+ "dependencies": {
11450
+ "supports-color": {
11451
+ "version": "5.5.0",
11452
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11453
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11454
+ "dev": true,
11455
+ "requires": {
11456
+ "has-flag": "^3.0.0"
11457
+ }
11458
+ }
11459
+ }
11460
+ },
11461
+ "postcss": {
11462
+ "version": "7.0.35",
11463
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11464
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11465
+ "dev": true,
11466
+ "requires": {
11467
+ "chalk": "^2.4.2",
11468
+ "source-map": "^0.6.1",
11469
+ "supports-color": "^6.1.0"
11470
+ }
11471
+ },
11472
+ "supports-color": {
11473
+ "version": "6.1.0",
11474
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11475
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11476
+ "dev": true,
11477
+ "requires": {
11478
+ "has-flag": "^3.0.0"
11479
+ }
11480
+ }
11481
+ }
11482
+ },
11483
+ "postcss-color-mod-function": {
11484
+ "version": "3.0.3",
11485
+ "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz",
11486
+ "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==",
11487
+ "dev": true,
11488
+ "requires": {
11489
+ "@csstools/convert-colors": "^1.4.0",
11490
+ "postcss": "^7.0.2",
11491
+ "postcss-values-parser": "^2.0.0"
11492
+ },
11493
+ "dependencies": {
11494
+ "ansi-styles": {
11495
+ "version": "3.2.1",
11496
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11497
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11498
+ "dev": true,
11499
+ "requires": {
11500
+ "color-convert": "^1.9.0"
11501
+ }
11502
+ },
11503
+ "chalk": {
11504
+ "version": "2.4.2",
11505
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11506
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11507
+ "dev": true,
11508
+ "requires": {
11509
+ "ansi-styles": "^3.2.1",
11510
+ "escape-string-regexp": "^1.0.5",
11511
+ "supports-color": "^5.3.0"
11512
+ },
11513
+ "dependencies": {
11514
+ "supports-color": {
11515
+ "version": "5.5.0",
11516
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11517
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11518
+ "dev": true,
11519
+ "requires": {
11520
+ "has-flag": "^3.0.0"
11521
+ }
11522
+ }
11523
+ }
11524
+ },
11525
+ "postcss": {
11526
+ "version": "7.0.35",
11527
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11528
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11529
+ "dev": true,
11530
+ "requires": {
11531
+ "chalk": "^2.4.2",
11532
+ "source-map": "^0.6.1",
11533
+ "supports-color": "^6.1.0"
11534
+ }
11535
+ },
11536
+ "supports-color": {
11537
+ "version": "6.1.0",
11538
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11539
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11540
+ "dev": true,
11541
+ "requires": {
11542
+ "has-flag": "^3.0.0"
11543
+ }
11544
+ }
11545
+ }
11546
+ },
11547
+ "postcss-color-rebeccapurple": {
11548
+ "version": "4.0.1",
11549
+ "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz",
11550
+ "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==",
11551
+ "dev": true,
11552
+ "requires": {
11553
+ "postcss": "^7.0.2",
11554
+ "postcss-values-parser": "^2.0.0"
11555
+ },
11556
+ "dependencies": {
11557
+ "ansi-styles": {
11558
+ "version": "3.2.1",
11559
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11560
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11561
+ "dev": true,
11562
+ "requires": {
11563
+ "color-convert": "^1.9.0"
11564
+ }
11565
+ },
11566
+ "chalk": {
11567
+ "version": "2.4.2",
11568
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11569
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11570
+ "dev": true,
11571
+ "requires": {
11572
+ "ansi-styles": "^3.2.1",
11573
+ "escape-string-regexp": "^1.0.5",
11574
+ "supports-color": "^5.3.0"
11575
+ },
11576
+ "dependencies": {
11577
+ "supports-color": {
11578
+ "version": "5.5.0",
11579
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11580
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11581
+ "dev": true,
11582
+ "requires": {
11583
+ "has-flag": "^3.0.0"
11584
+ }
11585
+ }
11586
+ }
11587
+ },
11588
+ "postcss": {
11589
+ "version": "7.0.35",
11590
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11591
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11592
+ "dev": true,
11593
+ "requires": {
11594
+ "chalk": "^2.4.2",
11595
+ "source-map": "^0.6.1",
11596
+ "supports-color": "^6.1.0"
11597
+ }
11598
+ },
11599
+ "supports-color": {
11600
+ "version": "6.1.0",
11601
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11602
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11603
+ "dev": true,
11604
+ "requires": {
11605
+ "has-flag": "^3.0.0"
11606
+ }
11607
+ }
11608
+ }
11609
+ },
11610
+ "postcss-custom-media": {
11611
+ "version": "7.0.8",
11612
+ "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz",
11613
+ "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==",
11614
+ "dev": true,
11615
+ "requires": {
11616
+ "postcss": "^7.0.14"
11617
+ },
11618
+ "dependencies": {
11619
+ "ansi-styles": {
11620
+ "version": "3.2.1",
11621
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11622
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11623
+ "dev": true,
11624
+ "requires": {
11625
+ "color-convert": "^1.9.0"
11626
+ }
11627
+ },
11628
+ "chalk": {
11629
+ "version": "2.4.2",
11630
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11631
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11632
+ "dev": true,
11633
+ "requires": {
11634
+ "ansi-styles": "^3.2.1",
11635
+ "escape-string-regexp": "^1.0.5",
11636
+ "supports-color": "^5.3.0"
11637
+ },
11638
+ "dependencies": {
11639
+ "supports-color": {
11640
+ "version": "5.5.0",
11641
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11642
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11643
+ "dev": true,
11644
+ "requires": {
11645
+ "has-flag": "^3.0.0"
11646
+ }
11647
+ }
11648
+ }
11649
+ },
11650
+ "postcss": {
11651
+ "version": "7.0.35",
11652
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11653
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11654
+ "dev": true,
11655
+ "requires": {
11656
+ "chalk": "^2.4.2",
11657
+ "source-map": "^0.6.1",
11658
+ "supports-color": "^6.1.0"
11659
+ }
11660
+ },
11661
+ "supports-color": {
11662
+ "version": "6.1.0",
11663
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11664
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11665
+ "dev": true,
11666
+ "requires": {
11667
+ "has-flag": "^3.0.0"
11668
+ }
11669
+ }
11670
+ }
11671
+ },
11672
+ "postcss-custom-properties": {
11673
+ "version": "8.0.11",
11674
+ "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz",
11675
+ "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==",
11676
+ "dev": true,
11677
+ "requires": {
11678
+ "postcss": "^7.0.17",
11679
+ "postcss-values-parser": "^2.0.1"
11680
+ },
11681
+ "dependencies": {
11682
+ "ansi-styles": {
11683
+ "version": "3.2.1",
11684
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11685
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11686
+ "dev": true,
11687
+ "requires": {
11688
+ "color-convert": "^1.9.0"
11689
+ }
11690
+ },
11691
+ "chalk": {
11692
+ "version": "2.4.2",
11693
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11694
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11695
+ "dev": true,
11696
+ "requires": {
11697
+ "ansi-styles": "^3.2.1",
11698
+ "escape-string-regexp": "^1.0.5",
11699
+ "supports-color": "^5.3.0"
11700
+ },
11701
+ "dependencies": {
11702
+ "supports-color": {
11703
+ "version": "5.5.0",
11704
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11705
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11706
+ "dev": true,
11707
+ "requires": {
11708
+ "has-flag": "^3.0.0"
11709
+ }
11710
+ }
11711
+ }
11712
+ },
11713
+ "postcss": {
11714
+ "version": "7.0.35",
11715
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11716
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11717
+ "dev": true,
11718
+ "requires": {
11719
+ "chalk": "^2.4.2",
11720
+ "source-map": "^0.6.1",
11721
+ "supports-color": "^6.1.0"
11722
+ }
11723
+ },
11724
+ "supports-color": {
11725
+ "version": "6.1.0",
11726
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11727
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11728
+ "dev": true,
11729
+ "requires": {
11730
+ "has-flag": "^3.0.0"
11731
+ }
11732
+ }
11733
+ }
11734
+ },
11735
+ "postcss-custom-selectors": {
11736
+ "version": "5.1.2",
11737
+ "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz",
11738
+ "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==",
11739
+ "dev": true,
11740
+ "requires": {
11741
+ "postcss": "^7.0.2",
11742
+ "postcss-selector-parser": "^5.0.0-rc.3"
11743
+ },
11744
+ "dependencies": {
11745
+ "ansi-styles": {
11746
+ "version": "3.2.1",
11747
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11748
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11749
+ "dev": true,
11750
+ "requires": {
11751
+ "color-convert": "^1.9.0"
11752
+ }
11753
+ },
11754
+ "chalk": {
11755
+ "version": "2.4.2",
11756
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11757
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11758
+ "dev": true,
11759
+ "requires": {
11760
+ "ansi-styles": "^3.2.1",
11761
+ "escape-string-regexp": "^1.0.5",
11762
+ "supports-color": "^5.3.0"
11763
+ },
11764
+ "dependencies": {
11765
+ "supports-color": {
11766
+ "version": "5.5.0",
11767
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11768
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11769
+ "dev": true,
11770
+ "requires": {
11771
+ "has-flag": "^3.0.0"
11772
+ }
11773
+ }
11774
+ }
11775
+ },
11776
+ "cssesc": {
11777
+ "version": "2.0.0",
11778
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz",
11779
+ "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==",
11780
+ "dev": true
11781
+ },
11782
+ "postcss": {
11783
+ "version": "7.0.35",
11784
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11785
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11786
+ "dev": true,
11787
+ "requires": {
11788
+ "chalk": "^2.4.2",
11789
+ "source-map": "^0.6.1",
11790
+ "supports-color": "^6.1.0"
11791
+ }
11792
+ },
11793
+ "postcss-selector-parser": {
11794
+ "version": "5.0.0",
11795
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz",
11796
+ "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==",
11797
+ "dev": true,
11798
+ "requires": {
11799
+ "cssesc": "^2.0.0",
11800
+ "indexes-of": "^1.0.1",
11801
+ "uniq": "^1.0.1"
11802
+ }
11803
+ },
11804
+ "supports-color": {
11805
+ "version": "6.1.0",
11806
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11807
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11808
+ "dev": true,
11809
+ "requires": {
11810
+ "has-flag": "^3.0.0"
11811
+ }
11812
+ }
11813
+ }
11814
+ },
11815
+ "postcss-dir-pseudo-class": {
11816
+ "version": "5.0.0",
11817
+ "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz",
11818
+ "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==",
11819
+ "dev": true,
11820
+ "requires": {
11821
+ "postcss": "^7.0.2",
11822
+ "postcss-selector-parser": "^5.0.0-rc.3"
11823
+ },
11824
+ "dependencies": {
11825
+ "ansi-styles": {
11826
+ "version": "3.2.1",
11827
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11828
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11829
+ "dev": true,
11830
+ "requires": {
11831
+ "color-convert": "^1.9.0"
11832
+ }
11833
+ },
11834
+ "chalk": {
11835
+ "version": "2.4.2",
11836
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11837
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11838
+ "dev": true,
11839
+ "requires": {
11840
+ "ansi-styles": "^3.2.1",
11841
+ "escape-string-regexp": "^1.0.5",
11842
+ "supports-color": "^5.3.0"
11843
+ },
11844
+ "dependencies": {
11845
+ "supports-color": {
11846
+ "version": "5.5.0",
11847
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11848
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11849
+ "dev": true,
11850
+ "requires": {
11851
+ "has-flag": "^3.0.0"
11852
+ }
11853
+ }
11854
+ }
11855
+ },
11856
+ "cssesc": {
11857
+ "version": "2.0.0",
11858
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz",
11859
+ "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==",
11860
+ "dev": true
11861
+ },
11862
+ "postcss": {
11863
+ "version": "7.0.35",
11864
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11865
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11866
+ "dev": true,
11867
+ "requires": {
11868
+ "chalk": "^2.4.2",
11869
+ "source-map": "^0.6.1",
11870
+ "supports-color": "^6.1.0"
11871
+ }
11872
+ },
11873
+ "postcss-selector-parser": {
11874
+ "version": "5.0.0",
11875
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz",
11876
+ "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==",
11877
+ "dev": true,
11878
+ "requires": {
11879
+ "cssesc": "^2.0.0",
11880
+ "indexes-of": "^1.0.1",
11881
+ "uniq": "^1.0.1"
11882
+ }
11883
+ },
11884
+ "supports-color": {
11885
+ "version": "6.1.0",
11886
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11887
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11888
+ "dev": true,
11889
+ "requires": {
11890
+ "has-flag": "^3.0.0"
11891
+ }
11892
+ }
11893
+ }
11894
+ },
11895
+ "postcss-double-position-gradients": {
11896
+ "version": "1.0.0",
11897
+ "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz",
11898
+ "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==",
11899
+ "dev": true,
11900
+ "requires": {
11901
+ "postcss": "^7.0.5",
11902
+ "postcss-values-parser": "^2.0.0"
11903
+ },
11904
+ "dependencies": {
11905
+ "ansi-styles": {
11906
+ "version": "3.2.1",
11907
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11908
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11909
+ "dev": true,
11910
+ "requires": {
11911
+ "color-convert": "^1.9.0"
11912
+ }
11913
+ },
11914
+ "chalk": {
11915
+ "version": "2.4.2",
11916
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11917
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11918
+ "dev": true,
11919
+ "requires": {
11920
+ "ansi-styles": "^3.2.1",
11921
+ "escape-string-regexp": "^1.0.5",
11922
+ "supports-color": "^5.3.0"
11923
+ },
11924
+ "dependencies": {
11925
+ "supports-color": {
11926
+ "version": "5.5.0",
11927
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11928
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11929
+ "dev": true,
11930
+ "requires": {
11931
+ "has-flag": "^3.0.0"
11932
+ }
11933
+ }
11934
+ }
11935
+ },
11936
+ "postcss": {
11937
+ "version": "7.0.35",
11938
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
11939
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
11940
+ "dev": true,
11941
+ "requires": {
11942
+ "chalk": "^2.4.2",
11943
+ "source-map": "^0.6.1",
11944
+ "supports-color": "^6.1.0"
11945
+ }
11946
+ },
11947
+ "supports-color": {
11948
+ "version": "6.1.0",
11949
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
11950
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
11951
+ "dev": true,
11952
+ "requires": {
11953
+ "has-flag": "^3.0.0"
11954
+ }
11955
+ }
11956
+ }
11957
+ },
11958
+ "postcss-env-function": {
11959
+ "version": "2.0.2",
11960
+ "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz",
11961
+ "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==",
11962
+ "dev": true,
11963
+ "requires": {
11964
+ "postcss": "^7.0.2",
11965
+ "postcss-values-parser": "^2.0.0"
11966
+ },
11967
+ "dependencies": {
11968
+ "ansi-styles": {
11969
+ "version": "3.2.1",
11970
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
11971
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
11972
+ "dev": true,
11973
+ "requires": {
11974
+ "color-convert": "^1.9.0"
11975
+ }
11976
+ },
11977
+ "chalk": {
11978
+ "version": "2.4.2",
11979
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
11980
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
11981
+ "dev": true,
11982
+ "requires": {
11983
+ "ansi-styles": "^3.2.1",
11984
+ "escape-string-regexp": "^1.0.5",
11985
+ "supports-color": "^5.3.0"
11986
+ },
11987
+ "dependencies": {
11988
+ "supports-color": {
11989
+ "version": "5.5.0",
11990
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
11991
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
11992
+ "dev": true,
11993
+ "requires": {
11994
+ "has-flag": "^3.0.0"
11995
+ }
11996
+ }
11997
+ }
11998
+ },
11999
+ "postcss": {
12000
+ "version": "7.0.35",
12001
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12002
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12003
+ "dev": true,
12004
+ "requires": {
12005
+ "chalk": "^2.4.2",
12006
+ "source-map": "^0.6.1",
12007
+ "supports-color": "^6.1.0"
12008
+ }
12009
+ },
12010
+ "supports-color": {
12011
+ "version": "6.1.0",
12012
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12013
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12014
+ "dev": true,
12015
+ "requires": {
12016
+ "has-flag": "^3.0.0"
12017
+ }
12018
+ }
12019
+ }
12020
+ },
12021
+ "postcss-focus-visible": {
12022
+ "version": "4.0.0",
12023
+ "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz",
12024
+ "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==",
12025
+ "dev": true,
12026
+ "requires": {
12027
+ "postcss": "^7.0.2"
12028
+ },
12029
+ "dependencies": {
12030
+ "ansi-styles": {
12031
+ "version": "3.2.1",
12032
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12033
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12034
+ "dev": true,
12035
+ "requires": {
12036
+ "color-convert": "^1.9.0"
12037
+ }
12038
+ },
12039
+ "chalk": {
12040
+ "version": "2.4.2",
12041
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12042
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12043
+ "dev": true,
12044
+ "requires": {
12045
+ "ansi-styles": "^3.2.1",
12046
+ "escape-string-regexp": "^1.0.5",
12047
+ "supports-color": "^5.3.0"
12048
+ },
12049
+ "dependencies": {
12050
+ "supports-color": {
12051
+ "version": "5.5.0",
12052
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12053
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12054
+ "dev": true,
12055
+ "requires": {
12056
+ "has-flag": "^3.0.0"
12057
+ }
12058
+ }
12059
+ }
12060
+ },
12061
+ "postcss": {
12062
+ "version": "7.0.35",
12063
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12064
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12065
+ "dev": true,
12066
+ "requires": {
12067
+ "chalk": "^2.4.2",
12068
+ "source-map": "^0.6.1",
12069
+ "supports-color": "^6.1.0"
12070
+ }
12071
+ },
12072
+ "supports-color": {
12073
+ "version": "6.1.0",
12074
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12075
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12076
+ "dev": true,
12077
+ "requires": {
12078
+ "has-flag": "^3.0.0"
12079
+ }
12080
+ }
12081
+ }
12082
+ },
12083
+ "postcss-focus-within": {
12084
+ "version": "3.0.0",
12085
+ "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz",
12086
+ "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==",
12087
+ "dev": true,
12088
+ "requires": {
12089
+ "postcss": "^7.0.2"
12090
+ },
12091
+ "dependencies": {
12092
+ "ansi-styles": {
12093
+ "version": "3.2.1",
12094
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12095
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12096
+ "dev": true,
12097
+ "requires": {
12098
+ "color-convert": "^1.9.0"
12099
+ }
12100
+ },
12101
+ "chalk": {
12102
+ "version": "2.4.2",
12103
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12104
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12105
+ "dev": true,
12106
+ "requires": {
12107
+ "ansi-styles": "^3.2.1",
12108
+ "escape-string-regexp": "^1.0.5",
12109
+ "supports-color": "^5.3.0"
12110
+ },
12111
+ "dependencies": {
12112
+ "supports-color": {
12113
+ "version": "5.5.0",
12114
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12115
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12116
+ "dev": true,
12117
+ "requires": {
12118
+ "has-flag": "^3.0.0"
12119
+ }
12120
+ }
12121
+ }
12122
+ },
12123
+ "postcss": {
12124
+ "version": "7.0.35",
12125
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12126
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12127
+ "dev": true,
12128
+ "requires": {
12129
+ "chalk": "^2.4.2",
12130
+ "source-map": "^0.6.1",
12131
+ "supports-color": "^6.1.0"
12132
+ }
12133
+ },
12134
+ "supports-color": {
12135
+ "version": "6.1.0",
12136
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12137
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12138
+ "dev": true,
12139
+ "requires": {
12140
+ "has-flag": "^3.0.0"
12141
+ }
12142
+ }
12143
+ }
12144
+ },
12145
+ "postcss-font-variant": {
12146
+ "version": "4.0.1",
12147
+ "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz",
12148
+ "integrity": "sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA==",
12149
+ "dev": true,
12150
+ "requires": {
12151
+ "postcss": "^7.0.2"
12152
+ },
12153
+ "dependencies": {
12154
+ "ansi-styles": {
12155
+ "version": "3.2.1",
12156
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12157
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12158
+ "dev": true,
12159
+ "requires": {
12160
+ "color-convert": "^1.9.0"
12161
+ }
12162
+ },
12163
+ "chalk": {
12164
+ "version": "2.4.2",
12165
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12166
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12167
+ "dev": true,
12168
+ "requires": {
12169
+ "ansi-styles": "^3.2.1",
12170
+ "escape-string-regexp": "^1.0.5",
12171
+ "supports-color": "^5.3.0"
12172
+ },
12173
+ "dependencies": {
12174
+ "supports-color": {
12175
+ "version": "5.5.0",
12176
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12177
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12178
+ "dev": true,
12179
+ "requires": {
12180
+ "has-flag": "^3.0.0"
12181
+ }
12182
+ }
12183
+ }
12184
+ },
12185
+ "postcss": {
12186
+ "version": "7.0.35",
12187
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12188
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12189
+ "dev": true,
12190
+ "requires": {
12191
+ "chalk": "^2.4.2",
12192
+ "source-map": "^0.6.1",
12193
+ "supports-color": "^6.1.0"
12194
+ }
12195
+ },
12196
+ "supports-color": {
12197
+ "version": "6.1.0",
12198
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12199
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12200
+ "dev": true,
12201
+ "requires": {
12202
+ "has-flag": "^3.0.0"
12203
+ }
12204
+ }
12205
+ }
12206
+ },
12207
+ "postcss-gap-properties": {
12208
+ "version": "2.0.0",
12209
+ "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz",
12210
+ "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==",
12211
+ "dev": true,
12212
+ "requires": {
12213
+ "postcss": "^7.0.2"
12214
+ },
12215
+ "dependencies": {
12216
+ "ansi-styles": {
12217
+ "version": "3.2.1",
12218
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12219
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12220
+ "dev": true,
12221
+ "requires": {
12222
+ "color-convert": "^1.9.0"
12223
+ }
12224
+ },
12225
+ "chalk": {
12226
+ "version": "2.4.2",
12227
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12228
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12229
+ "dev": true,
12230
+ "requires": {
12231
+ "ansi-styles": "^3.2.1",
12232
+ "escape-string-regexp": "^1.0.5",
12233
+ "supports-color": "^5.3.0"
12234
+ },
12235
+ "dependencies": {
12236
+ "supports-color": {
12237
+ "version": "5.5.0",
12238
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12239
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12240
+ "dev": true,
12241
+ "requires": {
12242
+ "has-flag": "^3.0.0"
12243
+ }
12244
+ }
12245
+ }
12246
+ },
12247
+ "postcss": {
12248
+ "version": "7.0.35",
12249
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12250
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12251
+ "dev": true,
12252
+ "requires": {
12253
+ "chalk": "^2.4.2",
12254
+ "source-map": "^0.6.1",
12255
+ "supports-color": "^6.1.0"
12256
+ }
12257
+ },
12258
+ "supports-color": {
12259
+ "version": "6.1.0",
12260
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12261
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12262
+ "dev": true,
12263
+ "requires": {
12264
+ "has-flag": "^3.0.0"
12265
+ }
12266
+ }
12267
+ }
12268
+ },
12269
+ "postcss-image-set-function": {
12270
+ "version": "3.0.1",
12271
+ "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz",
12272
+ "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==",
12273
+ "dev": true,
12274
+ "requires": {
12275
+ "postcss": "^7.0.2",
12276
+ "postcss-values-parser": "^2.0.0"
12277
+ },
12278
+ "dependencies": {
12279
+ "ansi-styles": {
12280
+ "version": "3.2.1",
12281
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12282
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12283
+ "dev": true,
12284
+ "requires": {
12285
+ "color-convert": "^1.9.0"
12286
+ }
12287
+ },
12288
+ "chalk": {
12289
+ "version": "2.4.2",
12290
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12291
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12292
+ "dev": true,
12293
+ "requires": {
12294
+ "ansi-styles": "^3.2.1",
12295
+ "escape-string-regexp": "^1.0.5",
12296
+ "supports-color": "^5.3.0"
12297
+ },
12298
+ "dependencies": {
12299
+ "supports-color": {
12300
+ "version": "5.5.0",
12301
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12302
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12303
+ "dev": true,
12304
+ "requires": {
12305
+ "has-flag": "^3.0.0"
12306
+ }
12307
+ }
12308
+ }
12309
+ },
12310
+ "postcss": {
12311
+ "version": "7.0.35",
12312
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12313
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12314
+ "dev": true,
12315
+ "requires": {
12316
+ "chalk": "^2.4.2",
12317
+ "source-map": "^0.6.1",
12318
+ "supports-color": "^6.1.0"
12319
+ }
12320
+ },
12321
+ "supports-color": {
12322
+ "version": "6.1.0",
12323
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12324
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12325
+ "dev": true,
12326
+ "requires": {
12327
+ "has-flag": "^3.0.0"
12328
+ }
12329
+ }
12330
+ }
12331
+ },
12332
+ "postcss-initial": {
12333
+ "version": "3.0.2",
12334
+ "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.2.tgz",
12335
+ "integrity": "sha512-ugA2wKonC0xeNHgirR4D3VWHs2JcU08WAi1KFLVcnb7IN89phID6Qtg2RIctWbnvp1TM2BOmDtX8GGLCKdR8YA==",
12336
+ "dev": true,
12337
+ "requires": {
12338
+ "lodash.template": "^4.5.0",
12339
+ "postcss": "^7.0.2"
12340
+ },
12341
+ "dependencies": {
12342
+ "ansi-styles": {
12343
+ "version": "3.2.1",
12344
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12345
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12346
+ "dev": true,
12347
+ "requires": {
12348
+ "color-convert": "^1.9.0"
12349
+ }
12350
+ },
12351
+ "chalk": {
12352
+ "version": "2.4.2",
12353
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12354
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12355
+ "dev": true,
12356
+ "requires": {
12357
+ "ansi-styles": "^3.2.1",
12358
+ "escape-string-regexp": "^1.0.5",
12359
+ "supports-color": "^5.3.0"
12360
+ },
12361
+ "dependencies": {
12362
+ "supports-color": {
12363
+ "version": "5.5.0",
12364
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12365
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12366
+ "dev": true,
12367
+ "requires": {
12368
+ "has-flag": "^3.0.0"
12369
+ }
12370
+ }
12371
+ }
12372
+ },
12373
+ "postcss": {
12374
+ "version": "7.0.35",
12375
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12376
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12377
+ "dev": true,
12378
+ "requires": {
12379
+ "chalk": "^2.4.2",
12380
+ "source-map": "^0.6.1",
12381
+ "supports-color": "^6.1.0"
12382
+ }
12383
+ },
12384
+ "supports-color": {
12385
+ "version": "6.1.0",
12386
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12387
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12388
+ "dev": true,
12389
+ "requires": {
12390
+ "has-flag": "^3.0.0"
12391
+ }
12392
+ }
12393
+ }
12394
+ },
12395
+ "postcss-lab-function": {
12396
+ "version": "2.0.1",
12397
+ "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz",
12398
+ "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==",
12399
+ "dev": true,
12400
+ "requires": {
12401
+ "@csstools/convert-colors": "^1.4.0",
12402
+ "postcss": "^7.0.2",
12403
+ "postcss-values-parser": "^2.0.0"
12404
+ },
12405
+ "dependencies": {
12406
+ "ansi-styles": {
12407
+ "version": "3.2.1",
12408
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12409
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12410
+ "dev": true,
12411
+ "requires": {
12412
+ "color-convert": "^1.9.0"
12413
+ }
12414
+ },
12415
+ "chalk": {
12416
+ "version": "2.4.2",
12417
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12418
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12419
+ "dev": true,
12420
+ "requires": {
12421
+ "ansi-styles": "^3.2.1",
12422
+ "escape-string-regexp": "^1.0.5",
12423
+ "supports-color": "^5.3.0"
12424
+ },
12425
+ "dependencies": {
12426
+ "supports-color": {
12427
+ "version": "5.5.0",
12428
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12429
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12430
+ "dev": true,
12431
+ "requires": {
12432
+ "has-flag": "^3.0.0"
12433
+ }
12434
+ }
12435
+ }
12436
+ },
12437
+ "postcss": {
12438
+ "version": "7.0.35",
12439
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12440
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12441
+ "dev": true,
12442
+ "requires": {
12443
+ "chalk": "^2.4.2",
12444
+ "source-map": "^0.6.1",
12445
+ "supports-color": "^6.1.0"
12446
+ }
12447
+ },
12448
+ "supports-color": {
12449
+ "version": "6.1.0",
12450
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12451
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12452
+ "dev": true,
12453
+ "requires": {
12454
+ "has-flag": "^3.0.0"
12455
+ }
12456
+ }
12457
+ }
12458
+ },
12459
+ "postcss-loader": {
12460
+ "version": "5.2.0",
12461
+ "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-5.2.0.tgz",
12462
+ "integrity": "sha512-uSuCkENFeUaOYsKrXm0eNNgVIxc71z8RcckLMbVw473rGojFnrUeqEz6zBgXsH2q1EIzXnO/4pEz9RhALjlITA==",
12463
+ "dev": true,
12464
+ "requires": {
12465
+ "cosmiconfig": "^7.0.0",
12466
+ "klona": "^2.0.4",
12467
+ "semver": "^7.3.4"
12468
+ },
12469
+ "dependencies": {
12470
+ "lru-cache": {
12471
+ "version": "6.0.0",
12472
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
12473
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
12474
+ "dev": true,
12475
+ "requires": {
12476
+ "yallist": "^4.0.0"
12477
+ }
12478
+ },
12479
+ "semver": {
12480
+ "version": "7.3.5",
12481
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
12482
+ "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
12483
+ "dev": true,
12484
+ "requires": {
12485
+ "lru-cache": "^6.0.0"
12486
+ }
12487
+ },
12488
+ "yallist": {
12489
+ "version": "4.0.0",
12490
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
12491
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
12492
+ "dev": true
12493
+ }
12494
+ }
12495
+ },
12496
+ "postcss-logical": {
12497
+ "version": "3.0.0",
12498
+ "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz",
12499
+ "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==",
12500
+ "dev": true,
12501
+ "requires": {
12502
+ "postcss": "^7.0.2"
12503
+ },
12504
+ "dependencies": {
12505
+ "ansi-styles": {
12506
+ "version": "3.2.1",
12507
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12508
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12509
+ "dev": true,
12510
+ "requires": {
12511
+ "color-convert": "^1.9.0"
12512
+ }
12513
+ },
12514
+ "chalk": {
12515
+ "version": "2.4.2",
12516
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12517
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12518
+ "dev": true,
12519
+ "requires": {
12520
+ "ansi-styles": "^3.2.1",
12521
+ "escape-string-regexp": "^1.0.5",
12522
+ "supports-color": "^5.3.0"
12523
+ },
12524
+ "dependencies": {
12525
+ "supports-color": {
12526
+ "version": "5.5.0",
12527
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12528
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12529
+ "dev": true,
12530
+ "requires": {
12531
+ "has-flag": "^3.0.0"
12532
+ }
12533
+ }
12534
+ }
12535
+ },
12536
+ "postcss": {
12537
+ "version": "7.0.35",
12538
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12539
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12540
+ "dev": true,
12541
+ "requires": {
12542
+ "chalk": "^2.4.2",
12543
+ "source-map": "^0.6.1",
12544
+ "supports-color": "^6.1.0"
12545
+ }
12546
+ },
12547
+ "supports-color": {
12548
+ "version": "6.1.0",
12549
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12550
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12551
+ "dev": true,
12552
+ "requires": {
12553
+ "has-flag": "^3.0.0"
12554
+ }
12555
+ }
12556
+ }
12557
+ },
12558
+ "postcss-media-minmax": {
12559
+ "version": "4.0.0",
12560
+ "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz",
12561
+ "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==",
12562
+ "dev": true,
12563
+ "requires": {
12564
+ "postcss": "^7.0.2"
12565
+ },
12566
+ "dependencies": {
12567
+ "ansi-styles": {
12568
+ "version": "3.2.1",
12569
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12570
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12571
+ "dev": true,
12572
+ "requires": {
12573
+ "color-convert": "^1.9.0"
12574
+ }
12575
+ },
12576
+ "chalk": {
12577
+ "version": "2.4.2",
12578
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12579
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12580
+ "dev": true,
12581
+ "requires": {
12582
+ "ansi-styles": "^3.2.1",
12583
+ "escape-string-regexp": "^1.0.5",
12584
+ "supports-color": "^5.3.0"
12585
+ },
12586
+ "dependencies": {
12587
+ "supports-color": {
12588
+ "version": "5.5.0",
12589
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12590
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12591
+ "dev": true,
12592
+ "requires": {
12593
+ "has-flag": "^3.0.0"
12594
+ }
12595
+ }
12596
+ }
12597
+ },
12598
+ "postcss": {
12599
+ "version": "7.0.35",
12600
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12601
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12602
+ "dev": true,
12603
+ "requires": {
12604
+ "chalk": "^2.4.2",
12605
+ "source-map": "^0.6.1",
12606
+ "supports-color": "^6.1.0"
12607
+ }
12608
+ },
12609
+ "supports-color": {
12610
+ "version": "6.1.0",
12611
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12612
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12613
+ "dev": true,
12614
+ "requires": {
12615
+ "has-flag": "^3.0.0"
12616
+ }
12617
+ }
12618
+ }
12619
+ },
12620
+ "postcss-modules-extract-imports": {
12621
+ "version": "3.0.0",
12622
+ "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz",
12623
+ "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==",
12624
+ "dev": true
12625
+ },
12626
+ "postcss-modules-local-by-default": {
12627
+ "version": "4.0.0",
12628
+ "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz",
12629
+ "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==",
12630
+ "dev": true,
12631
+ "requires": {
12632
+ "icss-utils": "^5.0.0",
12633
+ "postcss-selector-parser": "^6.0.2",
12634
+ "postcss-value-parser": "^4.1.0"
12635
+ },
12636
+ "dependencies": {
12637
+ "postcss-value-parser": {
12638
+ "version": "4.1.0",
12639
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz",
12640
+ "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
12641
+ "dev": true
12642
+ }
12643
+ }
12644
+ },
12645
+ "postcss-modules-scope": {
12646
+ "version": "3.0.0",
12647
+ "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz",
12648
+ "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==",
12649
+ "dev": true,
12650
+ "requires": {
12651
+ "postcss-selector-parser": "^6.0.4"
12652
+ }
12653
+ },
12654
+ "postcss-modules-values": {
12655
+ "version": "4.0.0",
12656
+ "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz",
12657
+ "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==",
12658
+ "dev": true,
12659
+ "requires": {
12660
+ "icss-utils": "^5.0.0"
12661
+ }
12662
+ },
12663
+ "postcss-nesting": {
12664
+ "version": "7.0.1",
12665
+ "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz",
12666
+ "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==",
12667
+ "dev": true,
12668
+ "requires": {
12669
+ "postcss": "^7.0.2"
12670
+ },
12671
+ "dependencies": {
12672
+ "ansi-styles": {
12673
+ "version": "3.2.1",
12674
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12675
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12676
+ "dev": true,
12677
+ "requires": {
12678
+ "color-convert": "^1.9.0"
12679
+ }
12680
+ },
12681
+ "chalk": {
12682
+ "version": "2.4.2",
12683
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12684
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12685
+ "dev": true,
12686
+ "requires": {
12687
+ "ansi-styles": "^3.2.1",
12688
+ "escape-string-regexp": "^1.0.5",
12689
+ "supports-color": "^5.3.0"
12690
+ },
12691
+ "dependencies": {
12692
+ "supports-color": {
12693
+ "version": "5.5.0",
12694
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12695
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12696
+ "dev": true,
12697
+ "requires": {
12698
+ "has-flag": "^3.0.0"
12699
+ }
12700
+ }
12701
+ }
12702
+ },
12703
+ "postcss": {
12704
+ "version": "7.0.35",
12705
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12706
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12707
+ "dev": true,
12708
+ "requires": {
12709
+ "chalk": "^2.4.2",
12710
+ "source-map": "^0.6.1",
12711
+ "supports-color": "^6.1.0"
12712
+ }
12713
+ },
12714
+ "supports-color": {
12715
+ "version": "6.1.0",
12716
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12717
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12718
+ "dev": true,
12719
+ "requires": {
12720
+ "has-flag": "^3.0.0"
12721
+ }
12722
+ }
12723
+ }
12724
+ },
12725
+ "postcss-overflow-shorthand": {
12726
+ "version": "2.0.0",
12727
+ "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz",
12728
+ "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==",
12729
+ "dev": true,
12730
+ "requires": {
12731
+ "postcss": "^7.0.2"
12732
+ },
12733
+ "dependencies": {
12734
+ "ansi-styles": {
12735
+ "version": "3.2.1",
12736
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12737
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12738
+ "dev": true,
12739
+ "requires": {
12740
+ "color-convert": "^1.9.0"
12741
+ }
12742
+ },
12743
+ "chalk": {
12744
+ "version": "2.4.2",
12745
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12746
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12747
+ "dev": true,
12748
+ "requires": {
12749
+ "ansi-styles": "^3.2.1",
12750
+ "escape-string-regexp": "^1.0.5",
12751
+ "supports-color": "^5.3.0"
12752
+ },
12753
+ "dependencies": {
12754
+ "supports-color": {
12755
+ "version": "5.5.0",
12756
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12757
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12758
+ "dev": true,
12759
+ "requires": {
12760
+ "has-flag": "^3.0.0"
12761
+ }
12762
+ }
12763
+ }
12764
+ },
12765
+ "postcss": {
12766
+ "version": "7.0.35",
12767
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12768
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12769
+ "dev": true,
12770
+ "requires": {
12771
+ "chalk": "^2.4.2",
12772
+ "source-map": "^0.6.1",
12773
+ "supports-color": "^6.1.0"
12774
+ }
12775
+ },
12776
+ "supports-color": {
12777
+ "version": "6.1.0",
12778
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12779
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12780
+ "dev": true,
12781
+ "requires": {
12782
+ "has-flag": "^3.0.0"
12783
+ }
12784
+ }
12785
+ }
12786
+ },
12787
+ "postcss-page-break": {
12788
+ "version": "2.0.0",
12789
+ "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz",
12790
+ "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==",
12791
+ "dev": true,
12792
+ "requires": {
12793
+ "postcss": "^7.0.2"
12794
+ },
12795
+ "dependencies": {
12796
+ "ansi-styles": {
12797
+ "version": "3.2.1",
12798
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12799
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12800
+ "dev": true,
12801
+ "requires": {
12802
+ "color-convert": "^1.9.0"
12803
+ }
12804
+ },
12805
+ "chalk": {
12806
+ "version": "2.4.2",
12807
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12808
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12809
+ "dev": true,
12810
+ "requires": {
12811
+ "ansi-styles": "^3.2.1",
12812
+ "escape-string-regexp": "^1.0.5",
12813
+ "supports-color": "^5.3.0"
12814
+ },
12815
+ "dependencies": {
12816
+ "supports-color": {
12817
+ "version": "5.5.0",
12818
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12819
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12820
+ "dev": true,
12821
+ "requires": {
12822
+ "has-flag": "^3.0.0"
12823
+ }
12824
+ }
12825
+ }
12826
+ },
12827
+ "postcss": {
12828
+ "version": "7.0.35",
12829
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12830
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12831
+ "dev": true,
12832
+ "requires": {
12833
+ "chalk": "^2.4.2",
12834
+ "source-map": "^0.6.1",
12835
+ "supports-color": "^6.1.0"
12836
+ }
12837
+ },
12838
+ "supports-color": {
12839
+ "version": "6.1.0",
12840
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12841
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12842
+ "dev": true,
12843
+ "requires": {
12844
+ "has-flag": "^3.0.0"
12845
+ }
12846
+ }
12847
+ }
12848
+ },
12849
+ "postcss-place": {
12850
+ "version": "4.0.1",
12851
+ "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz",
12852
+ "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==",
12853
+ "dev": true,
12854
+ "requires": {
12855
+ "postcss": "^7.0.2",
12856
+ "postcss-values-parser": "^2.0.0"
12857
+ },
12858
+ "dependencies": {
12859
+ "ansi-styles": {
12860
+ "version": "3.2.1",
12861
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12862
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12863
+ "dev": true,
12864
+ "requires": {
12865
+ "color-convert": "^1.9.0"
12866
+ }
12867
+ },
12868
+ "chalk": {
12869
+ "version": "2.4.2",
12870
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12871
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12872
+ "dev": true,
12873
+ "requires": {
12874
+ "ansi-styles": "^3.2.1",
12875
+ "escape-string-regexp": "^1.0.5",
12876
+ "supports-color": "^5.3.0"
12877
+ },
12878
+ "dependencies": {
12879
+ "supports-color": {
12880
+ "version": "5.5.0",
12881
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12882
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12883
+ "dev": true,
12884
+ "requires": {
12885
+ "has-flag": "^3.0.0"
12886
+ }
12887
+ }
12888
+ }
12889
+ },
12890
+ "postcss": {
12891
+ "version": "7.0.35",
12892
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
12893
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
12894
+ "dev": true,
12895
+ "requires": {
12896
+ "chalk": "^2.4.2",
12897
+ "source-map": "^0.6.1",
12898
+ "supports-color": "^6.1.0"
12899
+ }
12900
+ },
12901
+ "supports-color": {
12902
+ "version": "6.1.0",
12903
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
12904
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
12905
+ "dev": true,
12906
+ "requires": {
12907
+ "has-flag": "^3.0.0"
12908
+ }
12909
+ }
12910
+ }
12911
+ },
12912
+ "postcss-preset-env": {
12913
+ "version": "6.7.0",
12914
+ "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz",
12915
+ "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==",
12916
+ "dev": true,
12917
+ "requires": {
12918
+ "autoprefixer": "^9.6.1",
12919
+ "browserslist": "^4.6.4",
12920
+ "caniuse-lite": "^1.0.30000981",
12921
+ "css-blank-pseudo": "^0.1.4",
12922
+ "css-has-pseudo": "^0.10.0",
12923
+ "css-prefers-color-scheme": "^3.1.1",
12924
+ "cssdb": "^4.4.0",
12925
+ "postcss": "^7.0.17",
12926
+ "postcss-attribute-case-insensitive": "^4.0.1",
12927
+ "postcss-color-functional-notation": "^2.0.1",
12928
+ "postcss-color-gray": "^5.0.0",
12929
+ "postcss-color-hex-alpha": "^5.0.3",
12930
+ "postcss-color-mod-function": "^3.0.3",
12931
+ "postcss-color-rebeccapurple": "^4.0.1",
12932
+ "postcss-custom-media": "^7.0.8",
12933
+ "postcss-custom-properties": "^8.0.11",
12934
+ "postcss-custom-selectors": "^5.1.2",
12935
+ "postcss-dir-pseudo-class": "^5.0.0",
12936
+ "postcss-double-position-gradients": "^1.0.0",
12937
+ "postcss-env-function": "^2.0.2",
12938
+ "postcss-focus-visible": "^4.0.0",
12939
+ "postcss-focus-within": "^3.0.0",
12940
+ "postcss-font-variant": "^4.0.0",
12941
+ "postcss-gap-properties": "^2.0.0",
12942
+ "postcss-image-set-function": "^3.0.1",
12943
+ "postcss-initial": "^3.0.0",
12944
+ "postcss-lab-function": "^2.0.1",
12945
+ "postcss-logical": "^3.0.0",
12946
+ "postcss-media-minmax": "^4.0.0",
12947
+ "postcss-nesting": "^7.0.0",
12948
+ "postcss-overflow-shorthand": "^2.0.0",
12949
+ "postcss-page-break": "^2.0.0",
12950
+ "postcss-place": "^4.0.1",
12951
+ "postcss-pseudo-class-any-link": "^6.0.0",
12952
+ "postcss-replace-overflow-wrap": "^3.0.0",
12953
+ "postcss-selector-matches": "^4.0.0",
12954
+ "postcss-selector-not": "^4.0.0"
12955
+ },
12956
+ "dependencies": {
12957
+ "ansi-styles": {
12958
+ "version": "3.2.1",
12959
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
12960
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
12961
+ "dev": true,
12962
+ "requires": {
12963
+ "color-convert": "^1.9.0"
12964
+ }
12965
+ },
12966
+ "autoprefixer": {
12967
+ "version": "9.8.6",
12968
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz",
12969
+ "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==",
12970
+ "dev": true,
12971
+ "requires": {
12972
+ "browserslist": "^4.12.0",
12973
+ "caniuse-lite": "^1.0.30001109",
12974
+ "colorette": "^1.2.1",
12975
+ "normalize-range": "^0.1.2",
12976
+ "num2fraction": "^1.2.2",
12977
+ "postcss": "^7.0.32",
12978
+ "postcss-value-parser": "^4.1.0"
12979
+ }
12980
+ },
12981
+ "chalk": {
12982
+ "version": "2.4.2",
12983
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
12984
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
12985
+ "dev": true,
12986
+ "requires": {
12987
+ "ansi-styles": "^3.2.1",
12988
+ "escape-string-regexp": "^1.0.5",
12989
+ "supports-color": "^5.3.0"
12990
+ },
12991
+ "dependencies": {
12992
+ "supports-color": {
12993
+ "version": "5.5.0",
12994
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
12995
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
12996
+ "dev": true,
12997
+ "requires": {
12998
+ "has-flag": "^3.0.0"
12999
+ }
13000
+ }
13001
+ }
13002
+ },
13003
+ "postcss": {
13004
+ "version": "7.0.35",
13005
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
13006
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
13007
+ "dev": true,
13008
+ "requires": {
13009
+ "chalk": "^2.4.2",
13010
+ "source-map": "^0.6.1",
13011
+ "supports-color": "^6.1.0"
13012
+ }
13013
+ },
13014
+ "postcss-value-parser": {
13015
+ "version": "4.1.0",
13016
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz",
13017
+ "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
13018
+ "dev": true
13019
+ },
13020
+ "supports-color": {
13021
+ "version": "6.1.0",
13022
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
13023
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
13024
+ "dev": true,
13025
+ "requires": {
13026
+ "has-flag": "^3.0.0"
13027
+ }
13028
+ }
13029
+ }
13030
+ },
13031
+ "postcss-pseudo-class-any-link": {
13032
+ "version": "6.0.0",
13033
+ "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz",
13034
+ "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==",
13035
+ "dev": true,
13036
+ "requires": {
13037
+ "postcss": "^7.0.2",
13038
+ "postcss-selector-parser": "^5.0.0-rc.3"
13039
+ },
13040
+ "dependencies": {
13041
+ "ansi-styles": {
13042
+ "version": "3.2.1",
13043
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
13044
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
13045
+ "dev": true,
13046
+ "requires": {
13047
+ "color-convert": "^1.9.0"
13048
+ }
13049
+ },
13050
+ "chalk": {
13051
+ "version": "2.4.2",
13052
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
13053
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
13054
+ "dev": true,
13055
+ "requires": {
13056
+ "ansi-styles": "^3.2.1",
13057
+ "escape-string-regexp": "^1.0.5",
13058
+ "supports-color": "^5.3.0"
13059
+ },
13060
+ "dependencies": {
13061
+ "supports-color": {
13062
+ "version": "5.5.0",
13063
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
13064
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
13065
+ "dev": true,
13066
+ "requires": {
13067
+ "has-flag": "^3.0.0"
13068
+ }
13069
+ }
13070
+ }
13071
+ },
13072
+ "cssesc": {
13073
+ "version": "2.0.0",
13074
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz",
13075
+ "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==",
13076
+ "dev": true
13077
+ },
13078
+ "postcss": {
13079
+ "version": "7.0.35",
13080
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
13081
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
13082
+ "dev": true,
13083
+ "requires": {
13084
+ "chalk": "^2.4.2",
13085
+ "source-map": "^0.6.1",
13086
+ "supports-color": "^6.1.0"
13087
+ }
13088
+ },
13089
+ "postcss-selector-parser": {
13090
+ "version": "5.0.0",
13091
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz",
13092
+ "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==",
13093
+ "dev": true,
13094
+ "requires": {
13095
+ "cssesc": "^2.0.0",
13096
+ "indexes-of": "^1.0.1",
13097
+ "uniq": "^1.0.1"
13098
+ }
13099
+ },
13100
+ "supports-color": {
13101
+ "version": "6.1.0",
13102
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
13103
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
13104
+ "dev": true,
13105
+ "requires": {
13106
+ "has-flag": "^3.0.0"
13107
+ }
13108
+ }
13109
+ }
13110
+ },
13111
+ "postcss-replace-overflow-wrap": {
13112
+ "version": "3.0.0",
13113
+ "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz",
13114
+ "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==",
13115
+ "dev": true,
13116
+ "requires": {
13117
+ "postcss": "^7.0.2"
13118
+ },
13119
+ "dependencies": {
13120
+ "ansi-styles": {
13121
+ "version": "3.2.1",
13122
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
13123
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
13124
+ "dev": true,
13125
+ "requires": {
13126
+ "color-convert": "^1.9.0"
13127
+ }
13128
+ },
13129
+ "chalk": {
13130
+ "version": "2.4.2",
13131
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
13132
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
13133
+ "dev": true,
13134
+ "requires": {
13135
+ "ansi-styles": "^3.2.1",
13136
+ "escape-string-regexp": "^1.0.5",
13137
+ "supports-color": "^5.3.0"
13138
+ },
13139
+ "dependencies": {
13140
+ "supports-color": {
13141
+ "version": "5.5.0",
13142
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
13143
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
13144
+ "dev": true,
13145
+ "requires": {
13146
+ "has-flag": "^3.0.0"
13147
+ }
13148
+ }
13149
+ }
13150
+ },
13151
+ "postcss": {
13152
+ "version": "7.0.35",
13153
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
13154
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
13155
+ "dev": true,
13156
+ "requires": {
13157
+ "chalk": "^2.4.2",
13158
+ "source-map": "^0.6.1",
13159
+ "supports-color": "^6.1.0"
13160
+ }
13161
+ },
13162
+ "supports-color": {
13163
+ "version": "6.1.0",
13164
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
13165
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
13166
+ "dev": true,
13167
+ "requires": {
13168
+ "has-flag": "^3.0.0"
13169
+ }
13170
+ }
13171
+ }
13172
+ },
13173
+ "postcss-selector-matches": {
13174
+ "version": "4.0.0",
13175
+ "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz",
13176
+ "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==",
13177
+ "dev": true,
13178
+ "requires": {
13179
+ "balanced-match": "^1.0.0",
13180
+ "postcss": "^7.0.2"
13181
+ },
13182
+ "dependencies": {
13183
+ "ansi-styles": {
13184
+ "version": "3.2.1",
13185
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
13186
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
13187
+ "dev": true,
13188
+ "requires": {
13189
+ "color-convert": "^1.9.0"
13190
+ }
13191
+ },
13192
+ "chalk": {
13193
+ "version": "2.4.2",
13194
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
13195
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
13196
+ "dev": true,
13197
+ "requires": {
13198
+ "ansi-styles": "^3.2.1",
13199
+ "escape-string-regexp": "^1.0.5",
13200
+ "supports-color": "^5.3.0"
13201
+ },
13202
+ "dependencies": {
13203
+ "supports-color": {
13204
+ "version": "5.5.0",
13205
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
13206
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
13207
+ "dev": true,
13208
+ "requires": {
13209
+ "has-flag": "^3.0.0"
13210
+ }
13211
+ }
13212
+ }
13213
+ },
13214
+ "postcss": {
13215
+ "version": "7.0.35",
13216
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
13217
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
13218
+ "dev": true,
13219
+ "requires": {
13220
+ "chalk": "^2.4.2",
13221
+ "source-map": "^0.6.1",
13222
+ "supports-color": "^6.1.0"
13223
+ }
13224
+ },
13225
+ "supports-color": {
13226
+ "version": "6.1.0",
13227
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
13228
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
13229
+ "dev": true,
13230
+ "requires": {
13231
+ "has-flag": "^3.0.0"
13232
+ }
13233
+ }
13234
+ }
13235
+ },
13236
+ "postcss-selector-not": {
13237
+ "version": "4.0.1",
13238
+ "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz",
13239
+ "integrity": "sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ==",
13240
+ "dev": true,
13241
+ "requires": {
13242
+ "balanced-match": "^1.0.0",
13243
+ "postcss": "^7.0.2"
13244
+ },
13245
+ "dependencies": {
13246
+ "ansi-styles": {
13247
+ "version": "3.2.1",
13248
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
13249
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
13250
+ "dev": true,
13251
+ "requires": {
13252
+ "color-convert": "^1.9.0"
13253
+ }
13254
+ },
13255
+ "chalk": {
13256
+ "version": "2.4.2",
13257
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
13258
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
13259
+ "dev": true,
13260
+ "requires": {
13261
+ "ansi-styles": "^3.2.1",
13262
+ "escape-string-regexp": "^1.0.5",
13263
+ "supports-color": "^5.3.0"
13264
+ },
13265
+ "dependencies": {
13266
+ "supports-color": {
13267
+ "version": "5.5.0",
13268
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
13269
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
13270
+ "dev": true,
13271
+ "requires": {
13272
+ "has-flag": "^3.0.0"
13273
+ }
13274
+ }
13275
+ }
13276
+ },
13277
+ "postcss": {
13278
+ "version": "7.0.35",
13279
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz",
13280
+ "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==",
13281
+ "dev": true,
13282
+ "requires": {
13283
+ "chalk": "^2.4.2",
13284
+ "source-map": "^0.6.1",
13285
+ "supports-color": "^6.1.0"
13286
+ }
13287
+ },
13288
+ "supports-color": {
13289
+ "version": "6.1.0",
13290
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
13291
+ "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
13292
+ "dev": true,
13293
+ "requires": {
13294
+ "has-flag": "^3.0.0"
13295
+ }
13296
+ }
13297
+ }
13298
+ },
13299
+ "postcss-selector-parser": {
13300
+ "version": "6.0.4",
13301
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz",
13302
+ "integrity": "sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==",
13303
+ "dev": true,
13304
+ "requires": {
13305
+ "cssesc": "^3.0.0",
13306
+ "indexes-of": "^1.0.1",
13307
+ "uniq": "^1.0.1",
13308
+ "util-deprecate": "^1.0.2"
13309
+ }
13310
+ },
13311
+ "postcss-value-parser": {
13312
+ "version": "3.3.1",
13313
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
13314
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
13315
+ "dev": true
13316
+ },
13317
+ "postcss-values-parser": {
13318
+ "version": "2.0.1",
13319
+ "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz",
13320
+ "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==",
13321
+ "dev": true,
13322
+ "requires": {
13323
+ "flatten": "^1.0.2",
13324
+ "indexes-of": "^1.0.1",
13325
+ "uniq": "^1.0.1"
13326
+ }
13327
+ },
13328
+ "prelude-ls": {
13329
+ "version": "1.2.1",
13330
+ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
13331
+ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
13332
+ "dev": true
13333
+ },
13334
+ "prepend-http": {
13335
+ "version": "1.0.4",
13336
+ "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
13337
+ "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw="
13338
+ },
13339
+ "pretty-format": {
13340
+ "version": "26.6.2",
13341
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz",
13342
+ "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==",
13343
+ "dev": true,
13344
+ "requires": {
13345
+ "@jest/types": "^26.6.2",
13346
+ "ansi-regex": "^5.0.0",
13347
+ "ansi-styles": "^4.0.0",
13348
+ "react-is": "^17.0.1"
13349
+ },
13350
+ "dependencies": {
13351
+ "ansi-regex": {
13352
+ "version": "5.0.0",
13353
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
13354
+ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
13355
+ "dev": true
13356
+ },
13357
+ "ansi-styles": {
13358
+ "version": "4.3.0",
13359
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
13360
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
13361
+ "dev": true,
13362
+ "requires": {
13363
+ "color-convert": "^2.0.1"
13364
+ }
13365
+ },
13366
+ "color-convert": {
13367
+ "version": "2.0.1",
13368
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
13369
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
13370
+ "dev": true,
13371
+ "requires": {
13372
+ "color-name": "~1.1.4"
13373
+ }
13374
+ },
13375
+ "color-name": {
13376
+ "version": "1.1.4",
13377
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
13378
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
13379
+ "dev": true
13380
+ },
13381
+ "react-is": {
13382
+ "version": "17.0.2",
13383
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
13384
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
13385
+ "dev": true
13386
+ }
13387
+ }
13388
+ },
13389
+ "process-nextick-args": {
13390
+ "version": "2.0.1",
13391
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
13392
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
13393
+ },
13394
+ "progress": {
13395
+ "version": "2.0.3",
13396
+ "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
13397
+ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
13398
+ "dev": true
13399
+ },
13400
+ "promise": {
13401
+ "version": "8.1.0",
13402
+ "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz",
13403
+ "integrity": "sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==",
13404
+ "dev": true,
13405
+ "requires": {
13406
+ "asap": "~2.0.6"
13407
+ }
13408
+ },
13409
+ "promise-inflight": {
13410
+ "version": "1.0.1",
13411
+ "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz",
13412
+ "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM="
13413
+ },
13414
+ "prop-types": {
13415
+ "version": "15.7.2",
13416
+ "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz",
13417
+ "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==",
13418
+ "requires": {
13419
+ "loose-envify": "^1.4.0",
13420
+ "object-assign": "^4.1.1",
13421
+ "react-is": "^16.8.1"
13422
+ }
13423
+ },
13424
+ "prop-types-exact": {
13425
+ "version": "1.2.0",
13426
+ "resolved": "https://registry.npmjs.org/prop-types-exact/-/prop-types-exact-1.2.0.tgz",
13427
+ "integrity": "sha512-K+Tk3Kd9V0odiXFP9fwDHUYRyvK3Nun3GVyPapSIs5OBkITAm15W0CPFD/YKTkMUAbc0b9CUwRQp2ybiBIq+eA==",
13428
+ "dev": true,
13429
+ "requires": {
13430
+ "has": "^1.0.3",
13431
+ "object.assign": "^4.1.0",
13432
+ "reflect.ownkeys": "^0.2.0"
13433
+ }
13434
+ },
13435
+ "proto-list": {
13436
+ "version": "1.2.4",
13437
+ "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz",
13438
+ "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk="
13439
+ },
13440
+ "pseudomap": {
13441
+ "version": "1.0.2",
13442
+ "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
13443
+ "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM="
13444
+ },
13445
+ "psl": {
13446
+ "version": "1.8.0",
13447
+ "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
13448
+ "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==",
13449
+ "dev": true
13450
+ },
13451
+ "pump": {
13452
+ "version": "3.0.0",
13453
+ "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
13454
+ "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
13455
+ "requires": {
13456
+ "end-of-stream": "^1.1.0",
13457
+ "once": "^1.3.1"
13458
+ }
13459
+ },
13460
+ "punycode": {
13461
+ "version": "2.1.1",
13462
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
13463
+ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
13464
+ "dev": true
13465
+ },
13466
+ "q": {
13467
+ "version": "1.5.1",
13468
+ "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
13469
+ "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=",
13470
+ "dev": true
13471
+ },
13472
+ "qs": {
13473
+ "version": "6.5.2",
13474
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
13475
+ "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==",
13476
+ "dev": true
13477
+ },
13478
+ "query-string": {
13479
+ "version": "5.1.1",
13480
+ "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz",
13481
+ "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==",
13482
+ "requires": {
13483
+ "decode-uri-component": "^0.2.0",
13484
+ "object-assign": "^4.1.0",
13485
+ "strict-uri-encode": "^1.0.0"
13486
+ }
13487
+ },
13488
+ "queue-microtask": {
13489
+ "version": "1.2.3",
13490
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
13491
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A=="
13492
+ },
13493
+ "raf": {
13494
+ "version": "3.4.1",
13495
+ "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz",
13496
+ "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==",
13497
+ "dev": true,
13498
+ "requires": {
13499
+ "performance-now": "^2.1.0"
13500
+ }
13501
+ },
13502
+ "railroad-diagrams": {
13503
+ "version": "1.0.0",
13504
+ "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz",
13505
+ "integrity": "sha1-635iZ1SN3t+4mcG5Dlc3RVnN234=",
13506
+ "dev": true
13507
+ },
13508
+ "randexp": {
13509
+ "version": "0.4.6",
13510
+ "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz",
13511
+ "integrity": "sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==",
13512
+ "dev": true,
13513
+ "requires": {
13514
+ "discontinuous-range": "1.0.0",
13515
+ "ret": "~0.1.10"
13516
+ }
13517
+ },
13518
+ "randombytes": {
13519
+ "version": "2.1.0",
13520
+ "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
13521
+ "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
13522
+ "dev": true,
13523
+ "requires": {
13524
+ "safe-buffer": "^5.1.0"
13525
+ }
13526
+ },
13527
+ "re-resizable": {
13528
+ "version": "6.9.0",
13529
+ "resolved": "https://registry.npmjs.org/re-resizable/-/re-resizable-6.9.0.tgz",
13530
+ "integrity": "sha512-3cUDG81ylyqI0Pdgle/RHwwRYq0ORZzsUaySOCO8IbEtNyaRtrIHYm/jMQ5pjcNiKCxR3vsSymIQZHwJq4gg2Q==",
13531
+ "dev": true,
13532
+ "requires": {
13533
+ "fast-memoize": "^2.5.1"
13534
+ }
13535
+ },
13536
+ "react": {
13537
+ "version": "17.0.2",
13538
+ "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
13539
+ "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
13540
+ "requires": {
13541
+ "loose-envify": "^1.1.0",
13542
+ "object-assign": "^4.1.1"
13543
+ }
13544
+ },
13545
+ "react-addons-shallow-compare": {
13546
+ "version": "15.6.3",
13547
+ "resolved": "https://registry.npmjs.org/react-addons-shallow-compare/-/react-addons-shallow-compare-15.6.3.tgz",
13548
+ "integrity": "sha512-EDJbgKTtGRLhr3wiGDXK/+AEJ59yqGS+tKE6mue0aNXT6ZMR7VJbbzIiT6akotmHg1BLj46ElJSb+NBMp80XBg==",
13549
+ "dev": true,
13550
+ "requires": {
13551
+ "object-assign": "^4.1.0"
13552
+ }
13553
+ },
13554
+ "react-app-polyfill": {
13555
+ "version": "1.0.6",
13556
+ "resolved": "https://registry.npmjs.org/react-app-polyfill/-/react-app-polyfill-1.0.6.tgz",
13557
+ "integrity": "sha512-OfBnObtnGgLGfweORmdZbyEz+3dgVePQBb3zipiaDsMHV1NpWm0rDFYIVXFV/AK+x4VIIfWHhrdMIeoTLyRr2g==",
13558
+ "dev": true,
13559
+ "requires": {
13560
+ "core-js": "^3.5.0",
13561
+ "object-assign": "^4.1.1",
13562
+ "promise": "^8.0.3",
13563
+ "raf": "^3.4.1",
13564
+ "regenerator-runtime": "^0.13.3",
13565
+ "whatwg-fetch": "^3.0.0"
13566
+ },
13567
+ "dependencies": {
13568
+ "core-js": {
13569
+ "version": "3.9.1",
13570
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.9.1.tgz",
13571
+ "integrity": "sha512-gSjRvzkxQc1zjM/5paAmL4idJBFzuJoo+jDjF1tStYFMV2ERfD02HhahhCGXUyHxQRG4yFKVSdO6g62eoRMcDg==",
13572
+ "dev": true
13573
+ }
13574
+ }
13575
+ },
13576
+ "react-autosize-textarea": {
13577
+ "version": "7.1.0",
13578
+ "resolved": "https://registry.npmjs.org/react-autosize-textarea/-/react-autosize-textarea-7.1.0.tgz",
13579
+ "integrity": "sha512-BHpjCDkuOlllZn3nLazY2F8oYO1tS2jHnWhcjTWQdcKiiMU6gHLNt/fzmqMSyerR0eTdKtfSIqtSeTtghNwS+g==",
13580
+ "dev": true,
13581
+ "requires": {
13582
+ "autosize": "^4.0.2",
13583
+ "line-height": "^0.3.1",
13584
+ "prop-types": "^15.5.6"
13585
+ }
13586
+ },
13587
+ "react-colorful": {
13588
+ "version": "4.4.4",
13589
+ "resolved": "https://registry.npmjs.org/react-colorful/-/react-colorful-4.4.4.tgz",
13590
+ "integrity": "sha512-01V2/6rr6sa1vaZntWZJXZxnU7ew02NG2rqq0eoVp4d3gFU5Ug9lDzNMbr+8ns0byXsJbBR8LbwQTlAjz6x7Kg==",
13591
+ "dev": true
13592
+ },
13593
+ "react-dates": {
13594
+ "version": "17.2.0",
13595
+ "resolved": "https://registry.npmjs.org/react-dates/-/react-dates-17.2.0.tgz",
13596
+ "integrity": "sha512-RDlerU8DdRRrlYS0MQ7Z9igPWABGLDwz6+ykBNff67RM3Sset2TDqeuOr+R5o00Ggn5U47GeLsGcSDxlZd9cHw==",
13597
+ "dev": true,
13598
+ "requires": {
13599
+ "airbnb-prop-types": "^2.10.0",
13600
+ "consolidated-events": "^1.1.1 || ^2.0.0",
13601
+ "is-touch-device": "^1.0.1",
13602
+ "lodash": "^4.1.1",
13603
+ "object.assign": "^4.1.0",
13604
+ "object.values": "^1.0.4",
13605
+ "prop-types": "^15.6.1",
13606
+ "react-addons-shallow-compare": "^15.6.2",
13607
+ "react-moment-proptypes": "^1.6.0",
13608
+ "react-outside-click-handler": "^1.2.0",
13609
+ "react-portal": "^4.1.5",
13610
+ "react-with-styles": "^3.2.0",
13611
+ "react-with-styles-interface-css": "^4.0.2"
13612
+ }
13613
+ },
13614
+ "react-dom": {
13615
+ "version": "17.0.2",
13616
+ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz",
13617
+ "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==",
13618
+ "requires": {
13619
+ "loose-envify": "^1.1.0",
13620
+ "object-assign": "^4.1.1",
13621
+ "scheduler": "^0.20.2"
13622
+ },
13623
+ "dependencies": {
13624
+ "scheduler": {
13625
+ "version": "0.20.2",
13626
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz",
13627
+ "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==",
13628
+ "requires": {
13629
+ "loose-envify": "^1.1.0",
13630
+ "object-assign": "^4.1.1"
13631
+ }
13632
+ }
13633
+ }
13634
+ },
13635
+ "react-easy-crop": {
13636
+ "version": "3.3.2",
13637
+ "resolved": "https://registry.npmjs.org/react-easy-crop/-/react-easy-crop-3.3.2.tgz",
13638
+ "integrity": "sha512-u5QsCq0uxf1Cct3IOWtJek1FklteFlOPyO5fjdlu5pG44C8/3Dhizh23UDtCGTe/9T12udbyrss+jyG46WcZIQ==",
13639
+ "dev": true,
13640
+ "requires": {
13641
+ "normalize-wheel": "^1.0.1",
13642
+ "tslib": "2.0.1"
13643
+ },
13644
+ "dependencies": {
13645
+ "tslib": {
13646
+ "version": "2.0.1",
13647
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.1.tgz",
13648
+ "integrity": "sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ==",
13649
+ "dev": true
13650
+ }
13651
+ }
13652
+ },
13653
+ "react-is": {
13654
+ "version": "16.13.1",
13655
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
13656
+ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
13657
+ },
13658
+ "react-merge-refs": {
13659
+ "version": "1.1.0",
13660
+ "resolved": "https://registry.npmjs.org/react-merge-refs/-/react-merge-refs-1.1.0.tgz",
13661
+ "integrity": "sha512-alTKsjEL0dKH/ru1Iyn7vliS2QRcBp9zZPGoWxUOvRGWPUYgjo+V01is7p04It6KhgrzhJGnIj9GgX8W4bZoCQ==",
13662
+ "dev": true
13663
+ },
13664
+ "react-moment-proptypes": {
13665
+ "version": "1.8.0",
13666
+ "resolved": "https://registry.npmjs.org/react-moment-proptypes/-/react-moment-proptypes-1.8.0.tgz",
13667
+ "integrity": "sha512-vkysOAoKqU05umMRGUgCkOl2L5n0+5SjCq4iI1LleTfQDNC0l2nmjK+JTdf2eG0wUV24ZdHdEmgsKzf325b3zA==",
13668
+ "dev": true,
13669
+ "requires": {
13670
+ "moment": ">=1.6.0"
13671
+ }
13672
+ },
13673
+ "react-native-url-polyfill": {
13674
+ "version": "1.3.0",
13675
+ "resolved": "https://registry.npmjs.org/react-native-url-polyfill/-/react-native-url-polyfill-1.3.0.tgz",
13676
+ "integrity": "sha512-w9JfSkvpqqlix9UjDvJjm1EjSt652zVQ6iwCIj1cVVkwXf4jQhQgTNXY6EVTwuAmUjg6BC6k9RHCBynoLFo3IQ==",
13677
+ "dev": true,
13678
+ "requires": {
13679
+ "whatwg-url-without-unicode": "8.0.0-3"
13680
+ }
13681
+ },
13682
+ "react-outside-click-handler": {
13683
+ "version": "1.3.0",
13684
+ "resolved": "https://registry.npmjs.org/react-outside-click-handler/-/react-outside-click-handler-1.3.0.tgz",
13685
+ "integrity": "sha512-Te/7zFU0oHpAnctl//pP3hEAeobfeHMyygHB8MnjP6sX5OR8KHT1G3jmLsV3U9RnIYo+Yn+peJYWu+D5tUS8qQ==",
13686
+ "dev": true,
13687
+ "requires": {
13688
+ "airbnb-prop-types": "^2.15.0",
13689
+ "consolidated-events": "^1.1.1 || ^2.0.0",
13690
+ "document.contains": "^1.0.1",
13691
+ "object.values": "^1.1.0",
13692
+ "prop-types": "^15.7.2"
13693
+ }
13694
+ },
13695
+ "react-portal": {
13696
+ "version": "4.2.1",
13697
+ "resolved": "https://registry.npmjs.org/react-portal/-/react-portal-4.2.1.tgz",
13698
+ "integrity": "sha512-fE9kOBagwmTXZ3YGRYb4gcMy+kSA+yLO0xnPankjRlfBv4uCpFXqKPfkpsGQQR15wkZ9EssnvTOl1yMzbkxhPQ==",
13699
+ "dev": true,
13700
+ "requires": {
13701
+ "prop-types": "^15.5.8"
13702
+ }
13703
+ },
13704
+ "react-resize-aware": {
13705
+ "version": "3.1.0",
13706
+ "resolved": "https://registry.npmjs.org/react-resize-aware/-/react-resize-aware-3.1.0.tgz",
13707
+ "integrity": "sha512-bIhHlxVTX7xKUz14ksXMEHjzCZPTpQZKZISY3nbTD273pDKPABGFNFBP6Tr42KECxzC5YQiKpMchjTVJCqaxpA==",
13708
+ "dev": true
13709
+ },
13710
+ "react-spring": {
13711
+ "version": "8.0.27",
13712
+ "resolved": "https://registry.npmjs.org/react-spring/-/react-spring-8.0.27.tgz",
13713
+ "integrity": "sha512-nDpWBe3ZVezukNRandTeLSPcwwTMjNVu1IDq9qA/AMiUqHuRN4BeSWvKr3eIxxg1vtiYiOLy4FqdfCP5IoP77g==",
13714
+ "dev": true,
13715
+ "requires": {
13716
+ "@babel/runtime": "^7.3.1",
13717
+ "prop-types": "^15.5.8"
13718
+ }
13719
+ },
13720
+ "react-test-renderer": {
13721
+ "version": "16.14.0",
13722
+ "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-16.14.0.tgz",
13723
+ "integrity": "sha512-L8yPjqPE5CZO6rKsKXRO/rVPiaCOy0tQQJbC+UjPNlobl5mad59lvPjwFsQHTvL03caVDIVr9x9/OSgDe6I5Eg==",
13724
+ "dev": true,
13725
+ "requires": {
13726
+ "object-assign": "^4.1.1",
13727
+ "prop-types": "^15.6.2",
13728
+ "react-is": "^16.8.6",
13729
+ "scheduler": "^0.19.1"
13730
+ }
13731
+ },
13732
+ "react-textarea-autosize": {
13733
+ "version": "8.3.2",
13734
+ "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.3.2.tgz",
13735
+ "integrity": "sha512-JrMWVgQSaExQByP3ggI1eA8zF4mF0+ddVuX7acUeK2V7bmrpjVOY72vmLz2IXFJSAXoY3D80nEzrn0GWajWK3Q==",
13736
+ "dev": true,
13737
+ "requires": {
13738
+ "@babel/runtime": "^7.10.2",
13739
+ "use-composed-ref": "^1.0.0",
13740
+ "use-latest": "^1.0.0"
13741
+ }
13742
+ },
13743
+ "react-use-gesture": {
13744
+ "version": "9.1.3",
13745
+ "resolved": "https://registry.npmjs.org/react-use-gesture/-/react-use-gesture-9.1.3.tgz",
13746
+ "integrity": "sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg==",
13747
+ "dev": true
13748
+ },
13749
+ "react-with-direction": {
13750
+ "version": "1.3.1",
13751
+ "resolved": "https://registry.npmjs.org/react-with-direction/-/react-with-direction-1.3.1.tgz",
13752
+ "integrity": "sha512-aGcM21ZzhqeXFvDCfPj0rVNYuaVXfTz5D3Rbn0QMz/unZe+CCiLHthrjQWO7s6qdfXORgYFtmS7OVsRgSk5LXQ==",
13753
+ "dev": true,
13754
+ "requires": {
13755
+ "airbnb-prop-types": "^2.10.0",
13756
+ "brcast": "^2.0.2",
13757
+ "deepmerge": "^1.5.2",
13758
+ "direction": "^1.0.2",
13759
+ "hoist-non-react-statics": "^3.3.0",
13760
+ "object.assign": "^4.1.0",
13761
+ "object.values": "^1.0.4",
13762
+ "prop-types": "^15.6.2"
13763
+ },
13764
+ "dependencies": {
13765
+ "deepmerge": {
13766
+ "version": "1.5.2",
13767
+ "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz",
13768
+ "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==",
13769
+ "dev": true
13770
+ }
13771
+ }
13772
+ },
13773
+ "react-with-styles": {
13774
+ "version": "3.2.3",
13775
+ "resolved": "https://registry.npmjs.org/react-with-styles/-/react-with-styles-3.2.3.tgz",
13776
+ "integrity": "sha512-MTI1UOvMHABRLj5M4WpODfwnveHaip6X7QUMI2x6zovinJiBXxzhA9AJP7MZNaKqg1JRFtHPXZdroUC8KcXwlQ==",
13777
+ "dev": true,
13778
+ "requires": {
13779
+ "hoist-non-react-statics": "^3.2.1",
13780
+ "object.assign": "^4.1.0",
13781
+ "prop-types": "^15.6.2",
13782
+ "react-with-direction": "^1.3.0"
13783
+ }
13784
+ },
13785
+ "react-with-styles-interface-css": {
13786
+ "version": "4.0.3",
13787
+ "resolved": "https://registry.npmjs.org/react-with-styles-interface-css/-/react-with-styles-interface-css-4.0.3.tgz",
13788
+ "integrity": "sha512-wE43PIyjal2dexxyyx4Lhbcb+E42amoYPnkunRZkb9WTA+Z+9LagbyxwsI352NqMdFmghR0opg29dzDO4/YXbw==",
13789
+ "dev": true,
13790
+ "requires": {
13791
+ "array.prototype.flat": "^1.2.1",
13792
+ "global-cache": "^1.2.1"
13793
+ }
13794
+ },
13795
+ "read-pkg": {
13796
+ "version": "1.1.0",
13797
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
13798
+ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
13799
+ "requires": {
13800
+ "load-json-file": "^1.0.0",
13801
+ "normalize-package-data": "^2.3.2",
13802
+ "path-type": "^1.0.0"
13803
+ }
13804
+ },
13805
+ "read-pkg-up": {
13806
+ "version": "1.0.1",
13807
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
13808
+ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
13809
+ "requires": {
13810
+ "find-up": "^1.0.0",
13811
+ "read-pkg": "^1.0.0"
13812
+ }
13813
+ },
13814
+ "readable-stream": {
13815
+ "version": "2.3.7",
13816
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
13817
+ "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
13818
+ "requires": {
13819
+ "core-util-is": "~1.0.0",
13820
+ "inherits": "~2.0.3",
13821
+ "isarray": "~1.0.0",
13822
+ "process-nextick-args": "~2.0.0",
13823
+ "safe-buffer": "~5.1.1",
13824
+ "string_decoder": "~1.1.1",
13825
+ "util-deprecate": "~1.0.1"
13826
+ },
13827
+ "dependencies": {
13828
+ "safe-buffer": {
13829
+ "version": "5.1.2",
13830
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
13831
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
13832
+ }
13833
+ }
13834
+ },
13835
+ "readdirp": {
13836
+ "version": "2.2.1",
13837
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
13838
+ "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
13839
+ "dev": true,
13840
+ "optional": true,
13841
+ "requires": {
13842
+ "graceful-fs": "^4.1.11",
13843
+ "micromatch": "^3.1.10",
13844
+ "readable-stream": "^2.0.2"
13845
+ },
13846
+ "dependencies": {
13847
+ "braces": {
13848
+ "version": "2.3.2",
13849
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
13850
+ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
13851
+ "dev": true,
13852
+ "optional": true,
13853
+ "requires": {
13854
+ "arr-flatten": "^1.1.0",
13855
+ "array-unique": "^0.3.2",
13856
+ "extend-shallow": "^2.0.1",
13857
+ "fill-range": "^4.0.0",
13858
+ "isobject": "^3.0.1",
13859
+ "repeat-element": "^1.1.2",
13860
+ "snapdragon": "^0.8.1",
13861
+ "snapdragon-node": "^2.0.1",
13862
+ "split-string": "^3.0.2",
13863
+ "to-regex": "^3.0.1"
13864
+ },
13865
+ "dependencies": {
13866
+ "extend-shallow": {
13867
+ "version": "2.0.1",
13868
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
13869
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
13870
+ "dev": true,
13871
+ "optional": true,
13872
+ "requires": {
13873
+ "is-extendable": "^0.1.0"
13874
+ }
13875
+ }
13876
+ }
13877
+ },
13878
+ "fill-range": {
13879
+ "version": "4.0.0",
13880
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
13881
+ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
13882
+ "dev": true,
13883
+ "optional": true,
13884
+ "requires": {
13885
+ "extend-shallow": "^2.0.1",
13886
+ "is-number": "^3.0.0",
13887
+ "repeat-string": "^1.6.1",
13888
+ "to-regex-range": "^2.1.0"
13889
+ },
13890
+ "dependencies": {
13891
+ "extend-shallow": {
13892
+ "version": "2.0.1",
13893
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
13894
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
13895
+ "dev": true,
13896
+ "optional": true,
13897
+ "requires": {
13898
+ "is-extendable": "^0.1.0"
13899
+ }
13900
+ }
13901
+ }
13902
+ },
13903
+ "is-number": {
13904
+ "version": "3.0.0",
13905
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
13906
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
13907
+ "dev": true,
13908
+ "optional": true,
13909
+ "requires": {
13910
+ "kind-of": "^3.0.2"
13911
+ },
13912
+ "dependencies": {
13913
+ "kind-of": {
13914
+ "version": "3.2.2",
13915
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
13916
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
13917
+ "dev": true,
13918
+ "optional": true,
13919
+ "requires": {
13920
+ "is-buffer": "^1.1.5"
13921
+ }
13922
+ }
13923
+ }
13924
+ },
13925
+ "micromatch": {
13926
+ "version": "3.1.10",
13927
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
13928
+ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
13929
+ "dev": true,
13930
+ "optional": true,
13931
+ "requires": {
13932
+ "arr-diff": "^4.0.0",
13933
+ "array-unique": "^0.3.2",
13934
+ "braces": "^2.3.1",
13935
+ "define-property": "^2.0.2",
13936
+ "extend-shallow": "^3.0.2",
13937
+ "extglob": "^2.0.4",
13938
+ "fragment-cache": "^0.2.1",
13939
+ "kind-of": "^6.0.2",
13940
+ "nanomatch": "^1.2.9",
13941
+ "object.pick": "^1.3.0",
13942
+ "regex-not": "^1.0.0",
13943
+ "snapdragon": "^0.8.1",
13944
+ "to-regex": "^3.0.2"
13945
+ }
13946
+ },
13947
+ "to-regex-range": {
13948
+ "version": "2.1.1",
13949
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
13950
+ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
13951
+ "dev": true,
13952
+ "optional": true,
13953
+ "requires": {
13954
+ "is-number": "^3.0.0",
13955
+ "repeat-string": "^1.6.1"
13956
+ }
13957
+ }
13958
+ }
13959
+ },
13960
+ "reakit": {
13961
+ "version": "1.3.6",
13962
+ "resolved": "https://registry.npmjs.org/reakit/-/reakit-1.3.6.tgz",
13963
+ "integrity": "sha512-/I7XNPEUuRjCVwDkriy7HKuSKTtCmojZrrClGIg1gexB7Ij5vjpEbyUZzwHMmvIEoMqUZDC0Q6cDWfLpqaY9vA==",
13964
+ "dev": true,
13965
+ "requires": {
13966
+ "@popperjs/core": "^2.5.4",
13967
+ "body-scroll-lock": "^3.1.5",
13968
+ "reakit-system": "^0.15.1",
13969
+ "reakit-utils": "^0.15.1",
13970
+ "reakit-warning": "^0.6.1"
13971
+ }
13972
+ },
13973
+ "reakit-system": {
13974
+ "version": "0.15.1",
13975
+ "resolved": "https://registry.npmjs.org/reakit-system/-/reakit-system-0.15.1.tgz",
13976
+ "integrity": "sha512-PkqfAyEohtcEu/gUvKriCv42NywDtUgvocEN3147BI45dOFAB89nrT7wRIbIcKJiUT598F+JlPXAZZVLWhc1Kg==",
13977
+ "dev": true,
13978
+ "requires": {
13979
+ "reakit-utils": "^0.15.1"
13980
+ }
13981
+ },
13982
+ "reakit-utils": {
13983
+ "version": "0.15.1",
13984
+ "resolved": "https://registry.npmjs.org/reakit-utils/-/reakit-utils-0.15.1.tgz",
13985
+ "integrity": "sha512-6cZgKGvOkAMQgkwU9jdYbHfkuIN1Pr+vwcB19plLvcTfVN0Or10JhIuj9X+JaPZyI7ydqTDFaKNdUcDP69o/+Q==",
13986
+ "dev": true
13987
+ },
13988
+ "reakit-warning": {
13989
+ "version": "0.6.1",
13990
+ "resolved": "https://registry.npmjs.org/reakit-warning/-/reakit-warning-0.6.1.tgz",
13991
+ "integrity": "sha512-poFUV0EyxB+CcV9uTNBAFmcgsnR2DzAbOTkld4Ul+QOKSeEHZB3b3+MoZQgcYHmbvG19Na1uWaM7ES+/Eyr8tQ==",
13992
+ "dev": true,
13993
+ "requires": {
13994
+ "reakit-utils": "^0.15.1"
13995
+ }
13996
+ },
13997
+ "rechoir": {
13998
+ "version": "0.7.0",
13999
+ "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz",
14000
+ "integrity": "sha512-ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q==",
14001
+ "dev": true,
14002
+ "requires": {
14003
+ "resolve": "^1.9.0"
14004
+ }
14005
+ },
14006
+ "redent": {
14007
+ "version": "1.0.0",
14008
+ "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
14009
+ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
14010
+ "requires": {
14011
+ "indent-string": "^2.1.0",
14012
+ "strip-indent": "^1.0.1"
14013
+ }
14014
+ },
14015
+ "redux": {
14016
+ "version": "4.0.5",
14017
+ "resolved": "https://registry.npmjs.org/redux/-/redux-4.0.5.tgz",
14018
+ "integrity": "sha512-VSz1uMAH24DM6MF72vcojpYPtrTUu3ByVWfPL1nPfVRb5mZVTve5GnNCUV53QM/BZ66xfWrm0CTWoM+Xlz8V1w==",
14019
+ "dev": true,
14020
+ "requires": {
14021
+ "loose-envify": "^1.4.0",
14022
+ "symbol-observable": "^1.2.0"
14023
+ }
14024
+ },
14025
+ "redux-multi": {
14026
+ "version": "0.1.12",
14027
+ "resolved": "https://registry.npmjs.org/redux-multi/-/redux-multi-0.1.12.tgz",
14028
+ "integrity": "sha1-KOH+XklnLLxb2KB/Cyrq8O+DVcI=",
14029
+ "dev": true
14030
+ },
14031
+ "reflect.ownkeys": {
14032
+ "version": "0.2.0",
14033
+ "resolved": "https://registry.npmjs.org/reflect.ownkeys/-/reflect.ownkeys-0.2.0.tgz",
14034
+ "integrity": "sha1-dJrO7H8/34tj+SegSAnpDFwLNGA=",
14035
+ "dev": true
14036
+ },
14037
+ "regenerate": {
14038
+ "version": "1.4.2",
14039
+ "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
14040
+ "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
14041
+ "dev": true
14042
+ },
14043
+ "regenerate-unicode-properties": {
14044
+ "version": "8.2.0",
14045
+ "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz",
14046
+ "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==",
14047
+ "dev": true,
14048
+ "requires": {
14049
+ "regenerate": "^1.4.0"
14050
+ }
14051
+ },
14052
+ "regenerator-runtime": {
14053
+ "version": "0.13.7",
14054
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz",
14055
+ "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew=="
14056
+ },
14057
+ "regenerator-transform": {
14058
+ "version": "0.14.5",
14059
+ "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz",
14060
+ "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==",
14061
+ "dev": true,
14062
+ "requires": {
14063
+ "@babel/runtime": "^7.8.4"
14064
+ }
14065
+ },
14066
+ "regex-not": {
14067
+ "version": "1.0.2",
14068
+ "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
14069
+ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
14070
+ "dev": true,
14071
+ "requires": {
14072
+ "extend-shallow": "^3.0.2",
14073
+ "safe-regex": "^1.1.0"
14074
+ }
14075
+ },
14076
+ "regexp.prototype.flags": {
14077
+ "version": "1.3.1",
14078
+ "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz",
14079
+ "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==",
14080
+ "dev": true,
14081
+ "requires": {
14082
+ "call-bind": "^1.0.2",
14083
+ "define-properties": "^1.1.3"
14084
+ }
14085
+ },
14086
+ "regexpp": {
14087
+ "version": "3.1.0",
14088
+ "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz",
14089
+ "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==",
14090
+ "dev": true
14091
+ },
14092
+ "regexpu-core": {
14093
+ "version": "4.7.1",
14094
+ "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz",
14095
+ "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==",
14096
+ "dev": true,
14097
+ "requires": {
14098
+ "regenerate": "^1.4.0",
14099
+ "regenerate-unicode-properties": "^8.2.0",
14100
+ "regjsgen": "^0.5.1",
14101
+ "regjsparser": "^0.6.4",
14102
+ "unicode-match-property-ecmascript": "^1.0.4",
14103
+ "unicode-match-property-value-ecmascript": "^1.2.0"
14104
+ }
14105
+ },
14106
+ "regjsgen": {
14107
+ "version": "0.5.2",
14108
+ "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz",
14109
+ "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==",
14110
+ "dev": true
14111
+ },
14112
+ "regjsparser": {
14113
+ "version": "0.6.8",
14114
+ "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.8.tgz",
14115
+ "integrity": "sha512-3weFrFQREJhJ2PW+iCGaG6TenyzNSZgsBKZ/oEf6Trme31COSeIWhHw9O6FPkuXktfx+b6Hf/5e6dKPHaROq2g==",
14116
+ "dev": true,
14117
+ "requires": {
14118
+ "jsesc": "~0.5.0"
14119
+ },
14120
+ "dependencies": {
14121
+ "jsesc": {
14122
+ "version": "0.5.0",
14123
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
14124
+ "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
14125
+ "dev": true
14126
+ }
14127
+ }
14128
+ },
14129
+ "rememo": {
14130
+ "version": "3.0.0",
14131
+ "resolved": "https://registry.npmjs.org/rememo/-/rememo-3.0.0.tgz",
14132
+ "integrity": "sha512-eWtut/7pqMRnSccbexb647iPjN7ir6Tmf4RG92ZVlykFEkHqGYy9tWnpHH3I+FS+WQ6lQ1i1iDgarYzGKgTcRQ==",
14133
+ "dev": true
14134
+ },
14135
+ "remove-trailing-separator": {
14136
+ "version": "1.1.0",
14137
+ "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
14138
+ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
14139
+ "dev": true
14140
+ },
14141
+ "repeat-element": {
14142
+ "version": "1.1.3",
14143
+ "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz",
14144
+ "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==",
14145
+ "dev": true
14146
+ },
14147
+ "repeat-string": {
14148
+ "version": "1.6.1",
14149
+ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
14150
+ "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
14151
+ "dev": true
14152
+ },
14153
+ "repeating": {
14154
+ "version": "2.0.1",
14155
+ "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
14156
+ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
14157
+ "requires": {
14158
+ "is-finite": "^1.0.0"
14159
+ }
14160
+ },
14161
+ "replace-ext": {
14162
+ "version": "1.0.1",
14163
+ "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz",
14164
+ "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw=="
14165
+ },
14166
+ "request": {
14167
+ "version": "2.88.2",
14168
+ "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
14169
+ "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
14170
+ "dev": true,
14171
+ "requires": {
14172
+ "aws-sign2": "~0.7.0",
14173
+ "aws4": "^1.8.0",
14174
+ "caseless": "~0.12.0",
14175
+ "combined-stream": "~1.0.6",
14176
+ "extend": "~3.0.2",
14177
+ "forever-agent": "~0.6.1",
14178
+ "form-data": "~2.3.2",
14179
+ "har-validator": "~5.1.3",
14180
+ "http-signature": "~1.2.0",
14181
+ "is-typedarray": "~1.0.0",
14182
+ "isstream": "~0.1.2",
14183
+ "json-stringify-safe": "~5.0.1",
14184
+ "mime-types": "~2.1.19",
14185
+ "oauth-sign": "~0.9.0",
14186
+ "performance-now": "^2.1.0",
14187
+ "qs": "~6.5.2",
14188
+ "safe-buffer": "^5.1.2",
14189
+ "tough-cookie": "~2.5.0",
14190
+ "tunnel-agent": "^0.6.0",
14191
+ "uuid": "^3.3.2"
14192
+ }
14193
+ },
14194
+ "require-directory": {
14195
+ "version": "2.1.1",
14196
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
14197
+ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
14198
+ "dev": true
14199
+ },
14200
+ "require-from-string": {
14201
+ "version": "2.0.2",
14202
+ "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
14203
+ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
14204
+ "dev": true
14205
+ },
14206
+ "require-main-filename": {
14207
+ "version": "2.0.0",
14208
+ "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
14209
+ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
14210
+ "dev": true
14211
+ },
14212
+ "resolve": {
14213
+ "version": "1.20.0",
14214
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
14215
+ "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==",
14216
+ "requires": {
14217
+ "is-core-module": "^2.2.0",
14218
+ "path-parse": "^1.0.6"
14219
+ }
14220
+ },
14221
+ "resolve-cwd": {
14222
+ "version": "3.0.0",
14223
+ "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
14224
+ "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
14225
+ "dev": true,
14226
+ "requires": {
14227
+ "resolve-from": "^5.0.0"
14228
+ },
14229
+ "dependencies": {
14230
+ "resolve-from": {
14231
+ "version": "5.0.0",
14232
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
14233
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
14234
+ "dev": true
14235
+ }
14236
+ }
14237
+ },
14238
+ "resolve-from": {
14239
+ "version": "4.0.0",
14240
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
14241
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
14242
+ "dev": true
14243
+ },
14244
+ "resolve-pathname": {
14245
+ "version": "3.0.0",
14246
+ "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz",
14247
+ "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==",
14248
+ "dev": true
14249
+ },
14250
+ "resolve-url": {
14251
+ "version": "0.2.1",
14252
+ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
14253
+ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
14254
+ "dev": true
14255
+ },
14256
+ "responselike": {
14257
+ "version": "1.0.2",
14258
+ "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz",
14259
+ "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=",
14260
+ "requires": {
14261
+ "lowercase-keys": "^1.0.0"
14262
+ }
14263
+ },
14264
+ "ret": {
14265
+ "version": "0.1.15",
14266
+ "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
14267
+ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
14268
+ "dev": true
14269
+ },
14270
+ "reusify": {
14271
+ "version": "1.0.4",
14272
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
14273
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw=="
14274
+ },
14275
+ "rimraf": {
14276
+ "version": "2.7.1",
14277
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
14278
+ "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
14279
+ "requires": {
14280
+ "glob": "^7.1.3"
14281
+ }
14282
+ },
14283
+ "rst-selector-parser": {
14284
+ "version": "2.2.3",
14285
+ "resolved": "https://registry.npmjs.org/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz",
14286
+ "integrity": "sha1-gbIw6i/MYGbInjRy3nlChdmwPZE=",
14287
+ "dev": true,
14288
+ "requires": {
14289
+ "lodash.flattendeep": "^4.4.0",
14290
+ "nearley": "^2.7.10"
14291
+ }
14292
+ },
14293
+ "rsvp": {
14294
+ "version": "4.8.5",
14295
+ "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz",
14296
+ "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==",
14297
+ "dev": true
14298
+ },
14299
+ "rtlcss": {
14300
+ "version": "2.6.2",
14301
+ "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-2.6.2.tgz",
14302
+ "integrity": "sha512-06LFAr+GAPo+BvaynsXRfoYTJvSaWRyOhURCQ7aeI1MKph9meM222F+Zkt3bDamyHHJuGi3VPtiRkpyswmQbGA==",
14303
+ "dev": true,
14304
+ "requires": {
14305
+ "@choojs/findup": "^0.2.1",
14306
+ "chalk": "^2.4.2",
14307
+ "mkdirp": "^0.5.1",
14308
+ "postcss": "^6.0.23",
14309
+ "strip-json-comments": "^2.0.0"
14310
+ },
14311
+ "dependencies": {
14312
+ "ansi-styles": {
14313
+ "version": "3.2.1",
14314
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
14315
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
14316
+ "dev": true,
14317
+ "requires": {
14318
+ "color-convert": "^1.9.0"
14319
+ }
14320
+ },
14321
+ "chalk": {
14322
+ "version": "2.4.2",
14323
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
14324
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
14325
+ "dev": true,
14326
+ "requires": {
14327
+ "ansi-styles": "^3.2.1",
14328
+ "escape-string-regexp": "^1.0.5",
14329
+ "supports-color": "^5.3.0"
14330
+ }
14331
+ },
14332
+ "supports-color": {
14333
+ "version": "5.5.0",
14334
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
14335
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
14336
+ "dev": true,
14337
+ "requires": {
14338
+ "has-flag": "^3.0.0"
14339
+ }
14340
+ }
14341
+ }
14342
+ },
14343
+ "run-parallel": {
14344
+ "version": "1.2.0",
14345
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
14346
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
14347
+ "requires": {
14348
+ "queue-microtask": "^1.2.2"
14349
+ }
14350
+ },
14351
+ "run-queue": {
14352
+ "version": "1.0.3",
14353
+ "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz",
14354
+ "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=",
14355
+ "requires": {
14356
+ "aproba": "^1.1.1"
14357
+ }
14358
+ },
14359
+ "rungen": {
14360
+ "version": "0.3.2",
14361
+ "resolved": "https://registry.npmjs.org/rungen/-/rungen-0.3.2.tgz",
14362
+ "integrity": "sha1-QAwJ6+kU57F+C27zJjQA/Cq8fLM=",
14363
+ "dev": true
14364
+ },
14365
+ "safe-buffer": {
14366
+ "version": "5.2.1",
14367
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
14368
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
14369
+ },
14370
+ "safe-regex": {
14371
+ "version": "1.1.0",
14372
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
14373
+ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
14374
+ "dev": true,
14375
+ "requires": {
14376
+ "ret": "~0.1.10"
14377
+ }
14378
+ },
14379
+ "safer-buffer": {
14380
+ "version": "2.1.2",
14381
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
14382
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
14383
+ "dev": true
14384
+ },
14385
+ "sane": {
14386
+ "version": "4.1.0",
14387
+ "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz",
14388
+ "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==",
14389
+ "dev": true,
14390
+ "requires": {
14391
+ "@cnakazawa/watch": "^1.0.3",
14392
+ "anymatch": "^2.0.0",
14393
+ "capture-exit": "^2.0.0",
14394
+ "exec-sh": "^0.3.2",
14395
+ "execa": "^1.0.0",
14396
+ "fb-watchman": "^2.0.0",
14397
+ "micromatch": "^3.1.4",
14398
+ "minimist": "^1.1.1",
14399
+ "walker": "~1.0.5"
14400
+ },
14401
+ "dependencies": {
14402
+ "braces": {
14403
+ "version": "2.3.2",
14404
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
14405
+ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
14406
+ "dev": true,
14407
+ "requires": {
14408
+ "arr-flatten": "^1.1.0",
14409
+ "array-unique": "^0.3.2",
14410
+ "extend-shallow": "^2.0.1",
14411
+ "fill-range": "^4.0.0",
14412
+ "isobject": "^3.0.1",
14413
+ "repeat-element": "^1.1.2",
14414
+ "snapdragon": "^0.8.1",
14415
+ "snapdragon-node": "^2.0.1",
14416
+ "split-string": "^3.0.2",
14417
+ "to-regex": "^3.0.1"
14418
+ },
14419
+ "dependencies": {
14420
+ "extend-shallow": {
14421
+ "version": "2.0.1",
14422
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
14423
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
14424
+ "dev": true,
14425
+ "requires": {
14426
+ "is-extendable": "^0.1.0"
14427
+ }
14428
+ }
14429
+ }
14430
+ },
14431
+ "cross-spawn": {
14432
+ "version": "6.0.5",
14433
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
14434
+ "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
14435
+ "dev": true,
14436
+ "requires": {
14437
+ "nice-try": "^1.0.4",
14438
+ "path-key": "^2.0.1",
14439
+ "semver": "^5.5.0",
14440
+ "shebang-command": "^1.2.0",
14441
+ "which": "^1.2.9"
14442
+ }
14443
+ },
14444
+ "execa": {
14445
+ "version": "1.0.0",
14446
+ "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz",
14447
+ "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==",
14448
+ "dev": true,
14449
+ "requires": {
14450
+ "cross-spawn": "^6.0.0",
14451
+ "get-stream": "^4.0.0",
14452
+ "is-stream": "^1.1.0",
14453
+ "npm-run-path": "^2.0.0",
14454
+ "p-finally": "^1.0.0",
14455
+ "signal-exit": "^3.0.0",
14456
+ "strip-eof": "^1.0.0"
14457
+ }
14458
+ },
14459
+ "fill-range": {
14460
+ "version": "4.0.0",
14461
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
14462
+ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
14463
+ "dev": true,
14464
+ "requires": {
14465
+ "extend-shallow": "^2.0.1",
14466
+ "is-number": "^3.0.0",
14467
+ "repeat-string": "^1.6.1",
14468
+ "to-regex-range": "^2.1.0"
14469
+ },
14470
+ "dependencies": {
14471
+ "extend-shallow": {
14472
+ "version": "2.0.1",
14473
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
14474
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
14475
+ "dev": true,
14476
+ "requires": {
14477
+ "is-extendable": "^0.1.0"
14478
+ }
14479
+ }
14480
+ }
14481
+ },
14482
+ "get-stream": {
14483
+ "version": "4.1.0",
14484
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
14485
+ "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
14486
+ "dev": true,
14487
+ "requires": {
14488
+ "pump": "^3.0.0"
14489
+ }
14490
+ },
14491
+ "is-number": {
14492
+ "version": "3.0.0",
14493
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
14494
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
14495
+ "dev": true,
14496
+ "requires": {
14497
+ "kind-of": "^3.0.2"
14498
+ },
14499
+ "dependencies": {
14500
+ "kind-of": {
14501
+ "version": "3.2.2",
14502
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
14503
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
14504
+ "dev": true,
14505
+ "requires": {
14506
+ "is-buffer": "^1.1.5"
14507
+ }
14508
+ }
14509
+ }
14510
+ },
14511
+ "is-stream": {
14512
+ "version": "1.1.0",
14513
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
14514
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
14515
+ "dev": true
14516
+ },
14517
+ "micromatch": {
14518
+ "version": "3.1.10",
14519
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
14520
+ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
14521
+ "dev": true,
14522
+ "requires": {
14523
+ "arr-diff": "^4.0.0",
14524
+ "array-unique": "^0.3.2",
14525
+ "braces": "^2.3.1",
14526
+ "define-property": "^2.0.2",
14527
+ "extend-shallow": "^3.0.2",
14528
+ "extglob": "^2.0.4",
14529
+ "fragment-cache": "^0.2.1",
14530
+ "kind-of": "^6.0.2",
14531
+ "nanomatch": "^1.2.9",
14532
+ "object.pick": "^1.3.0",
14533
+ "regex-not": "^1.0.0",
14534
+ "snapdragon": "^0.8.1",
14535
+ "to-regex": "^3.0.2"
14536
+ }
14537
+ },
14538
+ "npm-run-path": {
14539
+ "version": "2.0.2",
14540
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
14541
+ "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
14542
+ "dev": true,
14543
+ "requires": {
14544
+ "path-key": "^2.0.0"
14545
+ }
14546
+ },
14547
+ "path-key": {
14548
+ "version": "2.0.1",
14549
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
14550
+ "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
14551
+ "dev": true
14552
+ },
14553
+ "shebang-command": {
14554
+ "version": "1.2.0",
14555
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
14556
+ "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
14557
+ "dev": true,
14558
+ "requires": {
14559
+ "shebang-regex": "^1.0.0"
14560
+ }
14561
+ },
14562
+ "shebang-regex": {
14563
+ "version": "1.0.0",
14564
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
14565
+ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
14566
+ "dev": true
14567
+ },
14568
+ "to-regex-range": {
14569
+ "version": "2.1.1",
14570
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
14571
+ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
14572
+ "dev": true,
14573
+ "requires": {
14574
+ "is-number": "^3.0.0",
14575
+ "repeat-string": "^1.6.1"
14576
+ }
14577
+ },
14578
+ "which": {
14579
+ "version": "1.3.1",
14580
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
14581
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
14582
+ "dev": true,
14583
+ "requires": {
14584
+ "isexe": "^2.0.0"
14585
+ }
14586
+ }
14587
+ }
14588
+ },
14589
+ "sass-graph": {
14590
+ "version": "2.2.5",
14591
+ "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz",
14592
+ "integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==",
14593
+ "dev": true,
14594
+ "requires": {
14595
+ "glob": "^7.0.0",
14596
+ "lodash": "^4.0.0",
14597
+ "scss-tokenizer": "^0.2.3",
14598
+ "yargs": "^13.3.2"
14599
+ },
14600
+ "dependencies": {
14601
+ "camelcase": {
14602
+ "version": "5.3.1",
14603
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
14604
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
14605
+ "dev": true
14606
+ },
14607
+ "find-up": {
14608
+ "version": "3.0.0",
14609
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
14610
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
14611
+ "dev": true,
14612
+ "requires": {
14613
+ "locate-path": "^3.0.0"
14614
+ }
14615
+ },
14616
+ "locate-path": {
14617
+ "version": "3.0.0",
14618
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
14619
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
14620
+ "dev": true,
14621
+ "requires": {
14622
+ "p-locate": "^3.0.0",
14623
+ "path-exists": "^3.0.0"
14624
+ }
14625
+ },
14626
+ "p-locate": {
14627
+ "version": "3.0.0",
14628
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
14629
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
14630
+ "dev": true,
14631
+ "requires": {
14632
+ "p-limit": "^2.0.0"
14633
+ }
14634
+ },
14635
+ "path-exists": {
14636
+ "version": "3.0.0",
14637
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
14638
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
14639
+ "dev": true
14640
+ },
14641
+ "yargs": {
14642
+ "version": "13.3.2",
14643
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
14644
+ "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
14645
+ "dev": true,
14646
+ "requires": {
14647
+ "cliui": "^5.0.0",
14648
+ "find-up": "^3.0.0",
14649
+ "get-caller-file": "^2.0.1",
14650
+ "require-directory": "^2.1.1",
14651
+ "require-main-filename": "^2.0.0",
14652
+ "set-blocking": "^2.0.0",
14653
+ "string-width": "^3.0.0",
14654
+ "which-module": "^2.0.0",
14655
+ "y18n": "^4.0.0",
14656
+ "yargs-parser": "^13.1.2"
14657
+ }
14658
+ },
14659
+ "yargs-parser": {
14660
+ "version": "13.1.2",
14661
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
14662
+ "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
14663
+ "dev": true,
14664
+ "requires": {
14665
+ "camelcase": "^5.0.0",
14666
+ "decamelize": "^1.2.0"
14667
+ }
14668
+ }
14669
+ }
14670
+ },
14671
+ "sass-loader": {
14672
+ "version": "11.0.1",
14673
+ "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-11.0.1.tgz",
14674
+ "integrity": "sha512-Vp1LcP4slTsTNLEiDkTcm8zGN/XYYrZz2BZybQbliWA8eXveqA/AxsEjllQTpJbg2MzCsx/qNO48sHdZtOaxTw==",
14675
+ "dev": true,
14676
+ "requires": {
14677
+ "klona": "^2.0.4",
14678
+ "neo-async": "^2.6.2"
14679
+ }
14680
+ },
14681
+ "sax": {
14682
+ "version": "1.2.4",
14683
+ "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
14684
+ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
14685
+ "dev": true
14686
+ },
14687
+ "scheduler": {
14688
+ "version": "0.19.1",
14689
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz",
14690
+ "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==",
14691
+ "requires": {
14692
+ "loose-envify": "^1.1.0",
14693
+ "object-assign": "^4.1.1"
14694
+ }
14695
+ },
14696
+ "schema-utils": {
14697
+ "version": "2.7.1",
14698
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
14699
+ "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
14700
+ "dev": true,
14701
+ "requires": {
14702
+ "@types/json-schema": "^7.0.5",
14703
+ "ajv": "^6.12.4",
14704
+ "ajv-keywords": "^3.5.2"
14705
+ }
14706
+ },
14707
+ "scss-tokenizer": {
14708
+ "version": "0.2.3",
14709
+ "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
14710
+ "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
14711
+ "dev": true,
14712
+ "requires": {
14713
+ "js-base64": "^2.1.8",
14714
+ "source-map": "^0.4.2"
14715
+ },
14716
+ "dependencies": {
14717
+ "source-map": {
14718
+ "version": "0.4.4",
14719
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
14720
+ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
14721
+ "dev": true,
14722
+ "requires": {
14723
+ "amdefine": ">=0.0.4"
14724
+ }
14725
+ }
14726
+ }
14727
+ },
14728
+ "seek-bzip": {
14729
+ "version": "1.0.6",
14730
+ "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.6.tgz",
14731
+ "integrity": "sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==",
14732
+ "requires": {
14733
+ "commander": "^2.8.1"
14734
+ }
14735
+ },
14736
+ "select": {
14737
+ "version": "1.1.2",
14738
+ "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz",
14739
+ "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=",
14740
+ "dev": true
14741
+ },
14742
+ "semver": {
14743
+ "version": "5.7.1",
14744
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
14745
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ=="
14746
+ },
14747
+ "semver-regex": {
14748
+ "version": "2.0.0",
14749
+ "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz",
14750
+ "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw=="
14751
+ },
14752
+ "semver-truncate": {
14753
+ "version": "1.1.2",
14754
+ "resolved": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.2.tgz",
14755
+ "integrity": "sha1-V/Qd5pcHpicJp+AQS6IRcQnqR+g=",
14756
+ "requires": {
14757
+ "semver": "^5.3.0"
14758
+ }
14759
+ },
14760
+ "serialize-javascript": {
14761
+ "version": "2.1.2",
14762
+ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz",
14763
+ "integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ=="
14764
+ },
14765
+ "set-blocking": {
14766
+ "version": "2.0.0",
14767
+ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
14768
+ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
14769
+ "dev": true
14770
+ },
14771
+ "set-value": {
14772
+ "version": "2.0.1",
14773
+ "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
14774
+ "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
14775
+ "dev": true,
14776
+ "requires": {
14777
+ "extend-shallow": "^2.0.1",
14778
+ "is-extendable": "^0.1.1",
14779
+ "is-plain-object": "^2.0.3",
14780
+ "split-string": "^3.0.1"
14781
+ },
14782
+ "dependencies": {
14783
+ "extend-shallow": {
14784
+ "version": "2.0.1",
14785
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
14786
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
14787
+ "dev": true,
14788
+ "requires": {
14789
+ "is-extendable": "^0.1.0"
14790
+ }
14791
+ }
14792
+ }
14793
+ },
14794
+ "shallow-clone": {
14795
+ "version": "3.0.1",
14796
+ "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
14797
+ "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
14798
+ "dev": true,
14799
+ "requires": {
14800
+ "kind-of": "^6.0.2"
14801
+ }
14802
+ },
14803
+ "shebang-command": {
14804
+ "version": "2.0.0",
14805
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
14806
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
14807
+ "requires": {
14808
+ "shebang-regex": "^3.0.0"
14809
+ }
14810
+ },
14811
+ "shebang-regex": {
14812
+ "version": "3.0.0",
14813
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
14814
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="
14815
+ },
14816
+ "shortid": {
14817
+ "version": "2.2.16",
14818
+ "resolved": "https://registry.npmjs.org/shortid/-/shortid-2.2.16.tgz",
14819
+ "integrity": "sha512-Ugt+GIZqvGXCIItnsL+lvFJOiN7RYqlGy7QE41O3YC1xbNSeDGIRO7xg2JJXIAj1cAGnOeC1r7/T9pgrtQbv4g==",
14820
+ "dev": true,
14821
+ "requires": {
14822
+ "nanoid": "^2.1.0"
14823
+ }
14824
+ },
14825
+ "showdown": {
14826
+ "version": "1.9.1",
14827
+ "resolved": "https://registry.npmjs.org/showdown/-/showdown-1.9.1.tgz",
14828
+ "integrity": "sha512-9cGuS382HcvExtf5AHk7Cb4pAeQQ+h0eTr33V1mu+crYWV4KvWAw6el92bDrqGEk5d46Ai/fhbEUwqJ/mTCNEA==",
14829
+ "dev": true,
14830
+ "requires": {
14831
+ "yargs": "^14.2"
14832
+ }
14833
+ },
14834
+ "side-channel": {
14835
+ "version": "1.0.4",
14836
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
14837
+ "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
14838
+ "dev": true,
14839
+ "requires": {
14840
+ "call-bind": "^1.0.0",
14841
+ "get-intrinsic": "^1.0.2",
14842
+ "object-inspect": "^1.9.0"
14843
+ }
14844
+ },
14845
+ "signal-exit": {
14846
+ "version": "3.0.3",
14847
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
14848
+ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA=="
14849
+ },
14850
+ "simple-html-tokenizer": {
14851
+ "version": "0.5.11",
14852
+ "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.5.11.tgz",
14853
+ "integrity": "sha512-C2WEK/Z3HoSFbYq8tI7ni3eOo/NneSPRoPpcM7WdLjFOArFuyXEjAoCdOC3DgMfRyziZQ1hCNR4mrNdWEvD0og==",
14854
+ "dev": true
14855
+ },
14856
+ "slash": {
14857
+ "version": "3.0.0",
14858
+ "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
14859
+ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q=="
14860
+ },
14861
+ "slice-ansi": {
14862
+ "version": "4.0.0",
14863
+ "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
14864
+ "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
14865
+ "dev": true,
14866
+ "requires": {
14867
+ "ansi-styles": "^4.0.0",
14868
+ "astral-regex": "^2.0.0",
14869
+ "is-fullwidth-code-point": "^3.0.0"
14870
+ },
14871
+ "dependencies": {
14872
+ "ansi-styles": {
14873
+ "version": "4.3.0",
14874
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
14875
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
14876
+ "dev": true,
14877
+ "requires": {
14878
+ "color-convert": "^2.0.1"
14879
+ }
14880
+ },
14881
+ "color-convert": {
14882
+ "version": "2.0.1",
14883
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
14884
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
14885
+ "dev": true,
14886
+ "requires": {
14887
+ "color-name": "~1.1.4"
14888
+ }
14889
+ },
14890
+ "color-name": {
14891
+ "version": "1.1.4",
14892
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
14893
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
14894
+ "dev": true
14895
+ },
14896
+ "is-fullwidth-code-point": {
14897
+ "version": "3.0.0",
14898
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
14899
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
14900
+ "dev": true
14901
+ }
14902
+ }
14903
+ },
14904
+ "snapdragon": {
14905
+ "version": "0.8.2",
14906
+ "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
14907
+ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
14908
+ "dev": true,
14909
+ "requires": {
14910
+ "base": "^0.11.1",
14911
+ "debug": "^2.2.0",
14912
+ "define-property": "^0.2.5",
14913
+ "extend-shallow": "^2.0.1",
14914
+ "map-cache": "^0.2.2",
14915
+ "source-map": "^0.5.6",
14916
+ "source-map-resolve": "^0.5.0",
14917
+ "use": "^3.1.0"
14918
+ },
14919
+ "dependencies": {
14920
+ "define-property": {
14921
+ "version": "0.2.5",
14922
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
14923
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
14924
+ "dev": true,
14925
+ "requires": {
14926
+ "is-descriptor": "^0.1.0"
14927
+ }
14928
+ },
14929
+ "extend-shallow": {
14930
+ "version": "2.0.1",
14931
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
14932
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
14933
+ "dev": true,
14934
+ "requires": {
14935
+ "is-extendable": "^0.1.0"
14936
+ }
14937
+ },
14938
+ "source-map": {
14939
+ "version": "0.5.7",
14940
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
14941
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
14942
+ "dev": true
14943
+ }
14944
+ }
14945
+ },
14946
+ "snapdragon-node": {
14947
+ "version": "2.1.1",
14948
+ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
14949
+ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
14950
+ "dev": true,
14951
+ "requires": {
14952
+ "define-property": "^1.0.0",
14953
+ "isobject": "^3.0.0",
14954
+ "snapdragon-util": "^3.0.1"
14955
+ },
14956
+ "dependencies": {
14957
+ "define-property": {
14958
+ "version": "1.0.0",
14959
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
14960
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
14961
+ "dev": true,
14962
+ "requires": {
14963
+ "is-descriptor": "^1.0.0"
14964
+ }
14965
+ },
14966
+ "is-accessor-descriptor": {
14967
+ "version": "1.0.0",
14968
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
14969
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
14970
+ "dev": true,
14971
+ "requires": {
14972
+ "kind-of": "^6.0.0"
14973
+ }
14974
+ },
14975
+ "is-data-descriptor": {
14976
+ "version": "1.0.0",
14977
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
14978
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
14979
+ "dev": true,
14980
+ "requires": {
14981
+ "kind-of": "^6.0.0"
14982
+ }
14983
+ },
14984
+ "is-descriptor": {
14985
+ "version": "1.0.2",
14986
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
14987
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
14988
+ "dev": true,
14989
+ "requires": {
14990
+ "is-accessor-descriptor": "^1.0.0",
14991
+ "is-data-descriptor": "^1.0.0",
14992
+ "kind-of": "^6.0.2"
14993
+ }
14994
+ }
14995
+ }
14996
+ },
14997
+ "snapdragon-util": {
14998
+ "version": "3.0.1",
14999
+ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
15000
+ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
15001
+ "dev": true,
15002
+ "requires": {
15003
+ "kind-of": "^3.2.0"
15004
+ },
15005
+ "dependencies": {
15006
+ "kind-of": {
15007
+ "version": "3.2.2",
15008
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
15009
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
15010
+ "dev": true,
15011
+ "requires": {
15012
+ "is-buffer": "^1.1.5"
15013
+ }
15014
+ }
15015
+ }
15016
+ },
15017
+ "sort-keys": {
15018
+ "version": "1.1.2",
15019
+ "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz",
15020
+ "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=",
15021
+ "requires": {
15022
+ "is-plain-obj": "^1.0.0"
15023
+ }
15024
+ },
15025
+ "sort-keys-length": {
15026
+ "version": "1.0.1",
15027
+ "resolved": "https://registry.npmjs.org/sort-keys-length/-/sort-keys-length-1.0.1.tgz",
15028
+ "integrity": "sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg=",
15029
+ "requires": {
15030
+ "sort-keys": "^1.0.0"
15031
+ }
15032
+ },
15033
+ "source-list-map": {
15034
+ "version": "2.0.1",
15035
+ "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
15036
+ "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw=="
15037
+ },
15038
+ "source-map": {
15039
+ "version": "0.6.1",
15040
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
15041
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
15042
+ },
15043
+ "source-map-resolve": {
15044
+ "version": "0.5.3",
15045
+ "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
15046
+ "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
15047
+ "dev": true,
15048
+ "requires": {
15049
+ "atob": "^2.1.2",
15050
+ "decode-uri-component": "^0.2.0",
15051
+ "resolve-url": "^0.2.1",
15052
+ "source-map-url": "^0.4.0",
15053
+ "urix": "^0.1.0"
15054
+ }
15055
+ },
15056
+ "source-map-support": {
15057
+ "version": "0.5.19",
15058
+ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
15059
+ "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
15060
+ "dev": true,
15061
+ "requires": {
15062
+ "buffer-from": "^1.0.0",
15063
+ "source-map": "^0.6.0"
15064
+ }
15065
+ },
15066
+ "source-map-url": {
15067
+ "version": "0.4.1",
15068
+ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz",
15069
+ "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==",
15070
+ "dev": true
15071
+ },
15072
+ "spdx-correct": {
15073
+ "version": "3.1.1",
15074
+ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
15075
+ "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
15076
+ "requires": {
15077
+ "spdx-expression-parse": "^3.0.0",
15078
+ "spdx-license-ids": "^3.0.0"
15079
+ }
15080
+ },
15081
+ "spdx-exceptions": {
15082
+ "version": "2.3.0",
15083
+ "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
15084
+ "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A=="
15085
+ },
15086
+ "spdx-expression-parse": {
15087
+ "version": "3.0.1",
15088
+ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
15089
+ "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
15090
+ "requires": {
15091
+ "spdx-exceptions": "^2.1.0",
15092
+ "spdx-license-ids": "^3.0.0"
15093
+ }
15094
+ },
15095
+ "spdx-license-ids": {
15096
+ "version": "3.0.7",
15097
+ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz",
15098
+ "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ=="
15099
+ },
15100
+ "split-string": {
15101
+ "version": "3.1.0",
15102
+ "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
15103
+ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
15104
+ "dev": true,
15105
+ "requires": {
15106
+ "extend-shallow": "^3.0.0"
15107
+ }
15108
+ },
15109
+ "sprintf-js": {
15110
+ "version": "1.0.3",
15111
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
15112
+ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
15113
+ "dev": true
15114
+ },
15115
+ "squeak": {
15116
+ "version": "1.3.0",
15117
+ "resolved": "https://registry.npmjs.org/squeak/-/squeak-1.3.0.tgz",
15118
+ "integrity": "sha1-MwRQN7ZDiLVnZ0uEMiplIQc5FsM=",
15119
+ "requires": {
15120
+ "chalk": "^1.0.0",
15121
+ "console-stream": "^0.1.1",
15122
+ "lpad-align": "^1.0.1"
15123
+ }
15124
+ },
15125
+ "sshpk": {
15126
+ "version": "1.16.1",
15127
+ "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz",
15128
+ "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==",
15129
+ "dev": true,
15130
+ "requires": {
15131
+ "asn1": "~0.2.3",
15132
+ "assert-plus": "^1.0.0",
15133
+ "bcrypt-pbkdf": "^1.0.0",
15134
+ "dashdash": "^1.12.0",
15135
+ "ecc-jsbn": "~0.1.1",
15136
+ "getpass": "^0.1.1",
15137
+ "jsbn": "~0.1.0",
15138
+ "safer-buffer": "^2.0.2",
15139
+ "tweetnacl": "~0.14.0"
15140
+ }
15141
+ },
15142
+ "ssri": {
15143
+ "version": "7.1.0",
15144
+ "resolved": "https://registry.npmjs.org/ssri/-/ssri-7.1.0.tgz",
15145
+ "integrity": "sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g==",
15146
+ "requires": {
15147
+ "figgy-pudding": "^3.5.1",
15148
+ "minipass": "^3.1.1"
15149
+ }
15150
+ },
15151
+ "stable": {
15152
+ "version": "0.1.8",
15153
+ "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz",
15154
+ "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==",
15155
+ "dev": true
15156
+ },
15157
+ "static-extend": {
15158
+ "version": "0.1.2",
15159
+ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
15160
+ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
15161
+ "dev": true,
15162
+ "requires": {
15163
+ "define-property": "^0.2.5",
15164
+ "object-copy": "^0.1.0"
15165
+ },
15166
+ "dependencies": {
15167
+ "define-property": {
15168
+ "version": "0.2.5",
15169
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
15170
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
15171
+ "dev": true,
15172
+ "requires": {
15173
+ "is-descriptor": "^0.1.0"
15174
+ }
15175
+ }
15176
+ }
15177
+ },
15178
+ "stdout-stream": {
15179
+ "version": "1.4.1",
15180
+ "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz",
15181
+ "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==",
15182
+ "dev": true,
15183
+ "requires": {
15184
+ "readable-stream": "^2.0.1"
15185
+ }
15186
+ },
15187
+ "strict-uri-encode": {
15188
+ "version": "1.1.0",
15189
+ "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz",
15190
+ "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM="
15191
+ },
15192
+ "string-convert": {
15193
+ "version": "0.2.1",
15194
+ "resolved": "https://registry.npmjs.org/string-convert/-/string-convert-0.2.1.tgz",
15195
+ "integrity": "sha1-aYLMMEn7tM2F+LJFaLnZvznu/5c=",
15196
+ "dev": true
15197
+ },
15198
+ "string-width": {
15199
+ "version": "3.1.0",
15200
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
15201
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
15202
+ "dev": true,
15203
+ "requires": {
15204
+ "emoji-regex": "^7.0.1",
15205
+ "is-fullwidth-code-point": "^2.0.0",
15206
+ "strip-ansi": "^5.1.0"
15207
+ },
15208
+ "dependencies": {
15209
+ "ansi-regex": {
15210
+ "version": "4.1.0",
15211
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
15212
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
15213
+ "dev": true
15214
+ },
15215
+ "strip-ansi": {
15216
+ "version": "5.2.0",
15217
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
15218
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
15219
+ "dev": true,
15220
+ "requires": {
15221
+ "ansi-regex": "^4.1.0"
15222
+ }
15223
+ }
15224
+ }
15225
+ },
15226
+ "string.prototype.matchall": {
15227
+ "version": "4.0.4",
15228
+ "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.4.tgz",
15229
+ "integrity": "sha512-pknFIWVachNcyqRfaQSeu/FUfpvJTe4uskUSZ9Wc1RijsPuzbZ8TyYT8WCNnntCjUEqQ3vUHMAfVj2+wLAisPQ==",
15230
+ "dev": true,
15231
+ "requires": {
15232
+ "call-bind": "^1.0.2",
15233
+ "define-properties": "^1.1.3",
15234
+ "es-abstract": "^1.18.0-next.2",
15235
+ "has-symbols": "^1.0.1",
15236
+ "internal-slot": "^1.0.3",
15237
+ "regexp.prototype.flags": "^1.3.1",
15238
+ "side-channel": "^1.0.4"
15239
+ }
15240
+ },
15241
+ "string.prototype.trim": {
15242
+ "version": "1.2.4",
15243
+ "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.4.tgz",
15244
+ "integrity": "sha512-hWCk/iqf7lp0/AgTF7/ddO1IWtSNPASjlzCicV5irAVdE1grjsneK26YG6xACMBEdCvO8fUST0UzDMh/2Qy+9Q==",
15245
+ "dev": true,
15246
+ "requires": {
15247
+ "call-bind": "^1.0.2",
15248
+ "define-properties": "^1.1.3",
15249
+ "es-abstract": "^1.18.0-next.2"
15250
+ }
15251
+ },
15252
+ "string.prototype.trimend": {
15253
+ "version": "1.0.4",
15254
+ "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz",
15255
+ "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==",
15256
+ "dev": true,
15257
+ "requires": {
15258
+ "call-bind": "^1.0.2",
15259
+ "define-properties": "^1.1.3"
15260
+ }
15261
+ },
15262
+ "string.prototype.trimstart": {
15263
+ "version": "1.0.4",
15264
+ "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz",
15265
+ "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==",
15266
+ "dev": true,
15267
+ "requires": {
15268
+ "call-bind": "^1.0.2",
15269
+ "define-properties": "^1.1.3"
15270
+ }
15271
+ },
15272
+ "string_decoder": {
15273
+ "version": "1.1.1",
15274
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
15275
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
15276
+ "requires": {
15277
+ "safe-buffer": "~5.1.0"
15278
+ },
15279
+ "dependencies": {
15280
+ "safe-buffer": {
15281
+ "version": "5.1.2",
15282
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
15283
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
15284
+ }
15285
+ }
15286
+ },
15287
+ "strip-ansi": {
15288
+ "version": "3.0.1",
15289
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
15290
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
15291
+ "requires": {
15292
+ "ansi-regex": "^2.0.0"
15293
+ }
15294
+ },
15295
+ "strip-bom": {
15296
+ "version": "2.0.0",
15297
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
15298
+ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
15299
+ "requires": {
15300
+ "is-utf8": "^0.2.0"
15301
+ }
15302
+ },
15303
+ "strip-dirs": {
15304
+ "version": "2.1.0",
15305
+ "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz",
15306
+ "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==",
15307
+ "requires": {
15308
+ "is-natural-number": "^4.0.1"
15309
+ }
15310
+ },
15311
+ "strip-eof": {
15312
+ "version": "1.0.0",
15313
+ "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
15314
+ "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8="
15315
+ },
15316
+ "strip-final-newline": {
15317
+ "version": "2.0.0",
15318
+ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
15319
+ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA=="
15320
+ },
15321
+ "strip-indent": {
15322
+ "version": "1.0.1",
15323
+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
15324
+ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
15325
+ "requires": {
15326
+ "get-stdin": "^4.0.1"
15327
+ }
15328
+ },
15329
+ "strip-json-comments": {
15330
+ "version": "2.0.1",
15331
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
15332
+ "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
15333
+ "dev": true
15334
+ },
15335
+ "strip-outer": {
15336
+ "version": "1.0.1",
15337
+ "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz",
15338
+ "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==",
15339
+ "requires": {
15340
+ "escape-string-regexp": "^1.0.2"
15341
+ }
15342
+ },
15343
+ "style-value-types": {
15344
+ "version": "3.2.0",
15345
+ "resolved": "https://registry.npmjs.org/style-value-types/-/style-value-types-3.2.0.tgz",
15346
+ "integrity": "sha512-ih0mGsrYYmVvdDi++/66O6BaQPRPRMQHoZevNNdMMcPlP/cH28Rnfsqf1UEba/Bwfuw9T8BmIMwbGdzsPwQKrQ==",
15347
+ "dev": true,
15348
+ "requires": {
15349
+ "hey-listen": "^1.0.8",
15350
+ "tslib": "^1.10.0"
15351
+ }
15352
+ },
15353
+ "styled-griddie": {
15354
+ "version": "0.1.3",
15355
+ "resolved": "https://registry.npmjs.org/styled-griddie/-/styled-griddie-0.1.3.tgz",
15356
+ "integrity": "sha512-RjsiiADJrRpdPTF8NR26nlZutnvkrX78tiM5/za/E+ftVdpjD8ZBb2iOzrIzfix80uDcHYQbg3iIR0lOGaYmEQ==",
15357
+ "dev": true
15358
+ },
15359
+ "supports-color": {
15360
+ "version": "2.0.0",
15361
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
15362
+ "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc="
15363
+ },
15364
+ "svg-parser": {
15365
+ "version": "2.0.4",
15366
+ "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz",
15367
+ "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==",
15368
+ "dev": true
15369
+ },
15370
+ "svgo": {
15371
+ "version": "1.3.2",
15372
+ "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz",
15373
+ "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==",
15374
+ "dev": true,
15375
+ "requires": {
15376
+ "chalk": "^2.4.1",
15377
+ "coa": "^2.0.2",
15378
+ "css-select": "^2.0.0",
15379
+ "css-select-base-adapter": "^0.1.1",
15380
+ "css-tree": "1.0.0-alpha.37",
15381
+ "csso": "^4.0.2",
15382
+ "js-yaml": "^3.13.1",
15383
+ "mkdirp": "~0.5.1",
15384
+ "object.values": "^1.1.0",
15385
+ "sax": "~1.2.4",
15386
+ "stable": "^0.1.8",
15387
+ "unquote": "~1.1.1",
15388
+ "util.promisify": "~1.0.0"
15389
+ },
15390
+ "dependencies": {
15391
+ "ansi-styles": {
15392
+ "version": "3.2.1",
15393
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
15394
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
15395
+ "dev": true,
15396
+ "requires": {
15397
+ "color-convert": "^1.9.0"
15398
+ }
15399
+ },
15400
+ "chalk": {
15401
+ "version": "2.4.2",
15402
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
15403
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
15404
+ "dev": true,
15405
+ "requires": {
15406
+ "ansi-styles": "^3.2.1",
15407
+ "escape-string-regexp": "^1.0.5",
15408
+ "supports-color": "^5.3.0"
15409
+ }
15410
+ },
15411
+ "supports-color": {
15412
+ "version": "5.5.0",
15413
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
15414
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
15415
+ "dev": true,
15416
+ "requires": {
15417
+ "has-flag": "^3.0.0"
15418
+ }
15419
+ }
15420
+ }
15421
+ },
15422
+ "symbol-observable": {
15423
+ "version": "1.2.0",
15424
+ "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz",
15425
+ "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==",
15426
+ "dev": true
15427
+ },
15428
+ "table": {
15429
+ "version": "6.0.7",
15430
+ "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz",
15431
+ "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==",
15432
+ "dev": true,
15433
+ "requires": {
15434
+ "ajv": "^7.0.2",
15435
+ "lodash": "^4.17.20",
15436
+ "slice-ansi": "^4.0.0",
15437
+ "string-width": "^4.2.0"
15438
+ },
15439
+ "dependencies": {
15440
+ "ajv": {
15441
+ "version": "7.2.3",
15442
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.3.tgz",
15443
+ "integrity": "sha512-idv5WZvKVXDqKralOImQgPM9v6WOdLNa0IY3B3doOjw/YxRGT8I+allIJ6kd7Uaj+SF1xZUSU+nPM5aDNBVtnw==",
15444
+ "dev": true,
15445
+ "requires": {
15446
+ "fast-deep-equal": "^3.1.1",
15447
+ "json-schema-traverse": "^1.0.0",
15448
+ "require-from-string": "^2.0.2",
15449
+ "uri-js": "^4.2.2"
15450
+ }
15451
+ },
15452
+ "ansi-regex": {
15453
+ "version": "5.0.0",
15454
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
15455
+ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
15456
+ "dev": true
15457
+ },
15458
+ "emoji-regex": {
15459
+ "version": "8.0.0",
15460
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
15461
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
15462
+ "dev": true
15463
+ },
15464
+ "is-fullwidth-code-point": {
15465
+ "version": "3.0.0",
15466
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
15467
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
15468
+ "dev": true
15469
+ },
15470
+ "json-schema-traverse": {
15471
+ "version": "1.0.0",
15472
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
15473
+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
15474
+ "dev": true
15475
+ },
15476
+ "string-width": {
15477
+ "version": "4.2.2",
15478
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz",
15479
+ "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==",
15480
+ "dev": true,
15481
+ "requires": {
15482
+ "emoji-regex": "^8.0.0",
15483
+ "is-fullwidth-code-point": "^3.0.0",
15484
+ "strip-ansi": "^6.0.0"
15485
+ }
15486
+ },
15487
+ "strip-ansi": {
15488
+ "version": "6.0.0",
15489
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
15490
+ "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
15491
+ "dev": true,
15492
+ "requires": {
15493
+ "ansi-regex": "^5.0.0"
15494
+ }
15495
+ }
15496
+ }
15497
+ },
15498
+ "tannin": {
15499
+ "version": "1.2.0",
15500
+ "resolved": "https://registry.npmjs.org/tannin/-/tannin-1.2.0.tgz",
15501
+ "integrity": "sha512-U7GgX/RcSeUETbV7gYgoz8PD7Ni4y95pgIP/Z6ayI3CfhSujwKEBlGFTCRN+Aqnuyf4AN2yHL+L8x+TCGjb9uA==",
15502
+ "dev": true,
15503
+ "requires": {
15504
+ "@tannin/plural-forms": "^1.1.0"
15505
+ }
15506
+ },
15507
+ "tapable": {
15508
+ "version": "2.2.0",
15509
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.0.tgz",
15510
+ "integrity": "sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw==",
15511
+ "dev": true
15512
+ },
15513
+ "tar": {
15514
+ "version": "6.1.0",
15515
+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz",
15516
+ "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==",
15517
+ "dev": true,
15518
+ "requires": {
15519
+ "chownr": "^2.0.0",
15520
+ "fs-minipass": "^2.0.0",
15521
+ "minipass": "^3.0.0",
15522
+ "minizlib": "^2.1.1",
15523
+ "mkdirp": "^1.0.3",
15524
+ "yallist": "^4.0.0"
15525
+ },
15526
+ "dependencies": {
15527
+ "chownr": {
15528
+ "version": "2.0.0",
15529
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
15530
+ "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
15531
+ "dev": true
15532
+ },
15533
+ "mkdirp": {
15534
+ "version": "1.0.4",
15535
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
15536
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
15537
+ "dev": true
15538
+ },
15539
+ "yallist": {
15540
+ "version": "4.0.0",
15541
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
15542
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
15543
+ "dev": true
15544
+ }
15545
+ }
15546
+ },
15547
+ "tar-stream": {
15548
+ "version": "1.6.2",
15549
+ "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz",
15550
+ "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==",
15551
+ "requires": {
15552
+ "bl": "^1.0.0",
15553
+ "buffer-alloc": "^1.2.0",
15554
+ "end-of-stream": "^1.0.0",
15555
+ "fs-constants": "^1.0.0",
15556
+ "readable-stream": "^2.3.0",
15557
+ "to-buffer": "^1.1.1",
15558
+ "xtend": "^4.0.0"
15559
+ }
15560
+ },
15561
+ "temp-dir": {
15562
+ "version": "1.0.0",
15563
+ "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz",
15564
+ "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0="
15565
+ },
15566
+ "tempfile": {
15567
+ "version": "2.0.0",
15568
+ "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz",
15569
+ "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=",
15570
+ "requires": {
15571
+ "temp-dir": "^1.0.0",
15572
+ "uuid": "^3.0.1"
15573
+ }
15574
+ },
15575
+ "terser": {
15576
+ "version": "5.6.1",
15577
+ "resolved": "https://registry.npmjs.org/terser/-/terser-5.6.1.tgz",
15578
+ "integrity": "sha512-yv9YLFQQ+3ZqgWCUk+pvNJwgUTdlIxUk1WTN+RnaFJe2L7ipG2csPT0ra2XRm7Cs8cxN7QXmK1rFzEwYEQkzXw==",
15579
+ "dev": true,
15580
+ "requires": {
15581
+ "commander": "^2.20.0",
15582
+ "source-map": "~0.7.2",
15583
+ "source-map-support": "~0.5.19"
15584
+ },
15585
+ "dependencies": {
15586
+ "source-map": {
15587
+ "version": "0.7.3",
15588
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
15589
+ "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
15590
+ "dev": true
15591
+ }
15592
+ }
15593
+ },
15594
+ "terser-webpack-plugin": {
15595
+ "version": "5.1.1",
15596
+ "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.1.tgz",
15597
+ "integrity": "sha512-5XNNXZiR8YO6X6KhSGXfY0QrGrCRlSwAEjIIrlRQR4W8nP69TaJUlh3bkuac6zzgspiGPfKEHcY295MMVExl5Q==",
15598
+ "dev": true,
15599
+ "requires": {
15600
+ "jest-worker": "^26.6.2",
15601
+ "p-limit": "^3.1.0",
15602
+ "schema-utils": "^3.0.0",
15603
+ "serialize-javascript": "^5.0.1",
15604
+ "source-map": "^0.6.1",
15605
+ "terser": "^5.5.1"
15606
+ },
15607
+ "dependencies": {
15608
+ "p-limit": {
15609
+ "version": "3.1.0",
15610
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
15611
+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
15612
+ "dev": true,
15613
+ "requires": {
15614
+ "yocto-queue": "^0.1.0"
15615
+ }
15616
+ },
15617
+ "schema-utils": {
15618
+ "version": "3.0.0",
15619
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
15620
+ "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
15621
+ "dev": true,
15622
+ "requires": {
15623
+ "@types/json-schema": "^7.0.6",
15624
+ "ajv": "^6.12.5",
15625
+ "ajv-keywords": "^3.5.2"
15626
+ }
15627
+ },
15628
+ "serialize-javascript": {
15629
+ "version": "5.0.1",
15630
+ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz",
15631
+ "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==",
15632
+ "dev": true,
15633
+ "requires": {
15634
+ "randombytes": "^2.1.0"
15635
+ }
15636
+ }
15637
+ }
15638
+ },
15639
+ "test-exclude": {
15640
+ "version": "6.0.0",
15641
+ "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
15642
+ "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
15643
+ "dev": true,
15644
+ "requires": {
15645
+ "@istanbuljs/schema": "^0.1.2",
15646
+ "glob": "^7.1.4",
15647
+ "minimatch": "^3.0.4"
15648
+ }
15649
+ },
15650
+ "text-table": {
15651
+ "version": "0.2.0",
15652
+ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
15653
+ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
15654
+ "dev": true
15655
+ },
15656
+ "through": {
15657
+ "version": "2.3.8",
15658
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
15659
+ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU="
15660
+ },
15661
+ "timed-out": {
15662
+ "version": "4.0.1",
15663
+ "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz",
15664
+ "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8="
15665
+ },
15666
+ "tiny-emitter": {
15667
+ "version": "2.1.0",
15668
+ "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
15669
+ "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==",
15670
+ "dev": true
15671
+ },
15672
+ "tiny-invariant": {
15673
+ "version": "1.1.0",
15674
+ "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.1.0.tgz",
15675
+ "integrity": "sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw==",
15676
+ "dev": true
15677
+ },
15678
+ "tiny-warning": {
15679
+ "version": "1.0.3",
15680
+ "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz",
15681
+ "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==",
15682
+ "dev": true
15683
+ },
15684
+ "tinycolor2": {
15685
+ "version": "1.4.2",
15686
+ "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz",
15687
+ "integrity": "sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA==",
15688
+ "dev": true
15689
+ },
15690
+ "tmpl": {
15691
+ "version": "1.0.4",
15692
+ "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz",
15693
+ "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=",
15694
+ "dev": true
15695
+ },
15696
+ "to-buffer": {
15697
+ "version": "1.1.1",
15698
+ "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz",
15699
+ "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg=="
15700
+ },
15701
+ "to-fast-properties": {
15702
+ "version": "2.0.0",
15703
+ "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
15704
+ "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
15705
+ "dev": true
15706
+ },
15707
+ "to-object-path": {
15708
+ "version": "0.3.0",
15709
+ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
15710
+ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
15711
+ "dev": true,
15712
+ "requires": {
15713
+ "kind-of": "^3.0.2"
15714
+ },
15715
+ "dependencies": {
15716
+ "kind-of": {
15717
+ "version": "3.2.2",
15718
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
15719
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
15720
+ "dev": true,
15721
+ "requires": {
15722
+ "is-buffer": "^1.1.5"
15723
+ }
15724
+ }
15725
+ }
15726
+ },
15727
+ "to-regex": {
15728
+ "version": "3.0.2",
15729
+ "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
15730
+ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
15731
+ "dev": true,
15732
+ "requires": {
15733
+ "define-property": "^2.0.2",
15734
+ "extend-shallow": "^3.0.2",
15735
+ "regex-not": "^1.0.2",
15736
+ "safe-regex": "^1.1.0"
15737
+ }
15738
+ },
15739
+ "to-regex-range": {
15740
+ "version": "5.0.1",
15741
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
15742
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
15743
+ "requires": {
15744
+ "is-number": "^7.0.0"
15745
+ }
15746
+ },
15747
+ "toggle-selection": {
15748
+ "version": "1.0.6",
15749
+ "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz",
15750
+ "integrity": "sha1-bkWxJj8gF/oKzH2J14sVuL932jI=",
15751
+ "dev": true
15752
+ },
15753
+ "tough-cookie": {
15754
+ "version": "2.5.0",
15755
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
15756
+ "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
15757
+ "dev": true,
15758
+ "requires": {
15759
+ "psl": "^1.1.28",
15760
+ "punycode": "^2.1.1"
15761
+ }
15762
+ },
15763
+ "traverse": {
15764
+ "version": "0.6.6",
15765
+ "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz",
15766
+ "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=",
15767
+ "dev": true
15768
+ },
15769
+ "trim-newlines": {
15770
+ "version": "1.0.0",
15771
+ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
15772
+ "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM="
15773
+ },
15774
+ "trim-repeated": {
15775
+ "version": "1.0.0",
15776
+ "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz",
15777
+ "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=",
15778
+ "requires": {
15779
+ "escape-string-regexp": "^1.0.2"
15780
+ }
15781
+ },
15782
+ "true-case-path": {
15783
+ "version": "1.0.3",
15784
+ "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz",
15785
+ "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==",
15786
+ "dev": true,
15787
+ "requires": {
15788
+ "glob": "^7.1.2"
15789
+ }
15790
+ },
15791
+ "ts-essentials": {
15792
+ "version": "2.0.12",
15793
+ "resolved": "https://registry.npmjs.org/ts-essentials/-/ts-essentials-2.0.12.tgz",
15794
+ "integrity": "sha512-3IVX4nI6B5cc31/GFFE+i8ey/N2eA0CZDbo6n0yrz0zDX8ZJ8djmU1p+XRz7G3is0F3bB3pu2pAroFdAWQKU3w==",
15795
+ "dev": true
15796
+ },
15797
+ "tslib": {
15798
+ "version": "1.14.1",
15799
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
15800
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
15801
+ "dev": true
15802
+ },
15803
+ "tunnel-agent": {
15804
+ "version": "0.6.0",
15805
+ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
15806
+ "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
15807
+ "requires": {
15808
+ "safe-buffer": "^5.0.1"
15809
+ }
15810
+ },
15811
+ "turbo-combine-reducers": {
15812
+ "version": "1.0.2",
15813
+ "resolved": "https://registry.npmjs.org/turbo-combine-reducers/-/turbo-combine-reducers-1.0.2.tgz",
15814
+ "integrity": "sha512-gHbdMZlA6Ym6Ur5pSH/UWrNQMIM9IqTH6SoL1DbHpqEdQ8i+cFunSmSlFykPt0eGQwZ4d/XTHOl74H0/kFBVWw==",
15815
+ "dev": true
15816
+ },
15817
+ "tweetnacl": {
15818
+ "version": "0.14.5",
15819
+ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
15820
+ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
15821
+ "dev": true
15822
+ },
15823
+ "type-check": {
15824
+ "version": "0.4.0",
15825
+ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
15826
+ "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
15827
+ "dev": true,
15828
+ "requires": {
15829
+ "prelude-ls": "^1.2.1"
15830
+ }
15831
+ },
15832
+ "type-fest": {
15833
+ "version": "0.11.0",
15834
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz",
15835
+ "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ=="
15836
+ },
15837
+ "typedarray-to-buffer": {
15838
+ "version": "3.1.5",
15839
+ "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
15840
+ "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
15841
+ "dev": true,
15842
+ "requires": {
15843
+ "is-typedarray": "^1.0.0"
15844
+ }
15845
+ },
15846
+ "unbox-primitive": {
15847
+ "version": "1.0.0",
15848
+ "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.0.tgz",
15849
+ "integrity": "sha512-P/51NX+JXyxK/aigg1/ZgyccdAxm5K1+n8+tvqSntjOivPt19gvm1VC49RWYetsiub8WViUchdxl/KWHHB0kzA==",
15850
+ "dev": true,
15851
+ "requires": {
15852
+ "function-bind": "^1.1.1",
15853
+ "has-bigints": "^1.0.0",
15854
+ "has-symbols": "^1.0.0",
15855
+ "which-boxed-primitive": "^1.0.1"
15856
+ }
15857
+ },
15858
+ "unbzip2-stream": {
15859
+ "version": "1.4.3",
15860
+ "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz",
15861
+ "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==",
15862
+ "requires": {
15863
+ "buffer": "^5.2.1",
15864
+ "through": "^2.3.8"
15865
+ }
15866
+ },
15867
+ "unicode-canonical-property-names-ecmascript": {
15868
+ "version": "1.0.4",
15869
+ "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz",
15870
+ "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==",
15871
+ "dev": true
15872
+ },
15873
+ "unicode-match-property-ecmascript": {
15874
+ "version": "1.0.4",
15875
+ "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz",
15876
+ "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==",
15877
+ "dev": true,
15878
+ "requires": {
15879
+ "unicode-canonical-property-names-ecmascript": "^1.0.4",
15880
+ "unicode-property-aliases-ecmascript": "^1.0.4"
15881
+ }
15882
+ },
15883
+ "unicode-match-property-value-ecmascript": {
15884
+ "version": "1.2.0",
15885
+ "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz",
15886
+ "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==",
15887
+ "dev": true
15888
+ },
15889
+ "unicode-property-aliases-ecmascript": {
15890
+ "version": "1.1.0",
15891
+ "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz",
15892
+ "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==",
15893
+ "dev": true
15894
+ },
15895
+ "union-value": {
15896
+ "version": "1.0.1",
15897
+ "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
15898
+ "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
15899
+ "dev": true,
15900
+ "requires": {
15901
+ "arr-union": "^3.1.0",
15902
+ "get-value": "^2.0.6",
15903
+ "is-extendable": "^0.1.1",
15904
+ "set-value": "^2.0.1"
15905
+ }
15906
+ },
15907
+ "uniq": {
15908
+ "version": "1.0.1",
15909
+ "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
15910
+ "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=",
15911
+ "dev": true
15912
+ },
15913
+ "unique-filename": {
15914
+ "version": "1.1.1",
15915
+ "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz",
15916
+ "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==",
15917
+ "requires": {
15918
+ "unique-slug": "^2.0.0"
15919
+ }
15920
+ },
15921
+ "unique-slug": {
15922
+ "version": "2.0.2",
15923
+ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz",
15924
+ "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==",
15925
+ "requires": {
15926
+ "imurmurhash": "^0.1.4"
15927
+ }
15928
+ },
15929
+ "unquote": {
15930
+ "version": "1.1.1",
15931
+ "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz",
15932
+ "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=",
15933
+ "dev": true
15934
+ },
15935
+ "unset-value": {
15936
+ "version": "1.0.0",
15937
+ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
15938
+ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
15939
+ "dev": true,
15940
+ "requires": {
15941
+ "has-value": "^0.3.1",
15942
+ "isobject": "^3.0.0"
15943
+ },
15944
+ "dependencies": {
15945
+ "has-value": {
15946
+ "version": "0.3.1",
15947
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
15948
+ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
15949
+ "dev": true,
15950
+ "requires": {
15951
+ "get-value": "^2.0.3",
15952
+ "has-values": "^0.1.4",
15953
+ "isobject": "^2.0.0"
15954
+ },
15955
+ "dependencies": {
15956
+ "isobject": {
15957
+ "version": "2.1.0",
15958
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
15959
+ "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
15960
+ "dev": true,
15961
+ "requires": {
15962
+ "isarray": "1.0.0"
15963
+ }
15964
+ }
15965
+ }
15966
+ },
15967
+ "has-values": {
15968
+ "version": "0.1.4",
15969
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
15970
+ "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=",
15971
+ "dev": true
15972
+ }
15973
+ }
15974
+ },
15975
+ "upath": {
15976
+ "version": "1.2.0",
15977
+ "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz",
15978
+ "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==",
15979
+ "dev": true,
15980
+ "optional": true
15981
+ },
15982
+ "uri-js": {
15983
+ "version": "4.4.1",
15984
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
15985
+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
15986
+ "dev": true,
15987
+ "requires": {
15988
+ "punycode": "^2.1.0"
15989
+ }
15990
+ },
15991
+ "urix": {
15992
+ "version": "0.1.0",
15993
+ "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
15994
+ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
15995
+ "dev": true
15996
+ },
15997
+ "url-parse-lax": {
15998
+ "version": "1.0.0",
15999
+ "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz",
16000
+ "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=",
16001
+ "requires": {
16002
+ "prepend-http": "^1.0.1"
16003
+ }
16004
+ },
16005
+ "url-to-options": {
16006
+ "version": "1.0.1",
16007
+ "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz",
16008
+ "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k="
16009
+ },
16010
+ "use": {
16011
+ "version": "3.1.1",
16012
+ "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
16013
+ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
16014
+ "dev": true
16015
+ },
16016
+ "use-composed-ref": {
16017
+ "version": "1.1.0",
16018
+ "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.1.0.tgz",
16019
+ "integrity": "sha512-my1lNHGWsSDAhhVAT4MKs6IjBUtG6ZG11uUqexPH9PptiIZDQOzaF4f5tEbJ2+7qvNbtXNBbU3SfmN+fXlWDhg==",
16020
+ "dev": true,
16021
+ "requires": {
16022
+ "ts-essentials": "^2.0.3"
16023
+ }
16024
+ },
16025
+ "use-enhanced-state": {
16026
+ "version": "0.0.13",
16027
+ "resolved": "https://registry.npmjs.org/use-enhanced-state/-/use-enhanced-state-0.0.13.tgz",
16028
+ "integrity": "sha512-RCtUQdhfUXu/0GAQqLnKPetUt3BheYFpOTogppHe9x1XGwluiu6DQLKVNnc3yMfj0HM3IOVBgw5nVJJuZS5TWQ==",
16029
+ "dev": true,
16030
+ "requires": {
16031
+ "@itsjonq/is": "0.0.2",
16032
+ "tiny-warning": "^1.0.3"
16033
+ }
16034
+ },
16035
+ "use-isomorphic-layout-effect": {
16036
+ "version": "1.1.1",
16037
+ "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.1.tgz",
16038
+ "integrity": "sha512-L7Evj8FGcwo/wpbv/qvSfrkHFtOpCzvM5yl2KVyDJoylVuSvzphiiasmjgQPttIGBAy2WKiBNR98q8w7PiNgKQ==",
16039
+ "dev": true
16040
+ },
16041
+ "use-latest": {
16042
+ "version": "1.2.0",
16043
+ "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.0.tgz",
16044
+ "integrity": "sha512-d2TEuG6nSLKQLAfW3By8mKr8HurOlTkul0sOpxbClIv4SQ4iOd7BYr7VIzdbktUCnv7dua/60xzd8igMU6jmyw==",
16045
+ "dev": true,
16046
+ "requires": {
16047
+ "use-isomorphic-layout-effect": "^1.0.0"
16048
+ }
16049
+ },
16050
+ "use-memo-one": {
16051
+ "version": "1.1.2",
16052
+ "resolved": "https://registry.npmjs.org/use-memo-one/-/use-memo-one-1.1.2.tgz",
16053
+ "integrity": "sha512-u2qFKtxLsia/r8qG0ZKkbytbztzRb317XCkT7yP8wxL0tZ/CzK2G+WWie5vWvpyeP7+YoPIwbJoIHJ4Ba4k0oQ==",
16054
+ "dev": true
16055
+ },
16056
+ "util-deprecate": {
16057
+ "version": "1.0.2",
16058
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
16059
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
16060
+ },
16061
+ "util.promisify": {
16062
+ "version": "1.0.1",
16063
+ "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz",
16064
+ "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==",
16065
+ "dev": true,
16066
+ "requires": {
16067
+ "define-properties": "^1.1.3",
16068
+ "es-abstract": "^1.17.2",
16069
+ "has-symbols": "^1.0.1",
16070
+ "object.getownpropertydescriptors": "^2.1.0"
16071
+ }
16072
+ },
16073
+ "uuid": {
16074
+ "version": "3.4.0",
16075
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
16076
+ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A=="
16077
+ },
16078
+ "v8-compile-cache": {
16079
+ "version": "2.3.0",
16080
+ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
16081
+ "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
16082
+ "dev": true
16083
+ },
16084
+ "validate-npm-package-license": {
16085
+ "version": "3.0.4",
16086
+ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
16087
+ "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
16088
+ "requires": {
16089
+ "spdx-correct": "^3.0.0",
16090
+ "spdx-expression-parse": "^3.0.0"
16091
+ }
16092
+ },
16093
+ "validate.io-array": {
16094
+ "version": "1.0.6",
16095
+ "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz",
16096
+ "integrity": "sha1-W1osr9j4uFq7L4hroVPy2Tond00=",
16097
+ "dev": true
16098
+ },
16099
+ "validate.io-function": {
16100
+ "version": "1.0.2",
16101
+ "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz",
16102
+ "integrity": "sha1-NDoZgC7TsZaCaceA5VjpNBHAutc=",
16103
+ "dev": true
16104
+ },
16105
+ "validate.io-integer": {
16106
+ "version": "1.0.5",
16107
+ "resolved": "https://registry.npmjs.org/validate.io-integer/-/validate.io-integer-1.0.5.tgz",
16108
+ "integrity": "sha1-FoSWSAuVviJH7EQ/IjPeT4mHgGg=",
16109
+ "dev": true,
16110
+ "requires": {
16111
+ "validate.io-number": "^1.0.3"
16112
+ }
16113
+ },
16114
+ "validate.io-integer-array": {
16115
+ "version": "1.0.0",
16116
+ "resolved": "https://registry.npmjs.org/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz",
16117
+ "integrity": "sha1-LKveAzKTpry+Bj/q/pHq9GsToIk=",
16118
+ "dev": true,
16119
+ "requires": {
16120
+ "validate.io-array": "^1.0.3",
16121
+ "validate.io-integer": "^1.0.4"
16122
+ }
16123
+ },
16124
+ "validate.io-number": {
16125
+ "version": "1.0.3",
16126
+ "resolved": "https://registry.npmjs.org/validate.io-number/-/validate.io-number-1.0.3.tgz",
16127
+ "integrity": "sha1-9j/+2iSL8opnqNSODjtGGhZluvg=",
16128
+ "dev": true
16129
+ },
16130
+ "value-equal": {
16131
+ "version": "1.0.1",
16132
+ "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz",
16133
+ "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==",
16134
+ "dev": true
16135
+ },
16136
+ "verror": {
16137
+ "version": "1.10.0",
16138
+ "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
16139
+ "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
16140
+ "dev": true,
16141
+ "requires": {
16142
+ "assert-plus": "^1.0.0",
16143
+ "core-util-is": "1.0.2",
16144
+ "extsprintf": "^1.2.0"
16145
+ }
16146
+ },
16147
+ "walker": {
16148
+ "version": "1.0.7",
16149
+ "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz",
16150
+ "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=",
16151
+ "dev": true,
16152
+ "requires": {
16153
+ "makeerror": "1.0.x"
16154
+ }
16155
+ },
16156
+ "watchpack": {
16157
+ "version": "2.1.1",
16158
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.1.1.tgz",
16159
+ "integrity": "sha512-Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw==",
16160
+ "dev": true,
16161
+ "requires": {
16162
+ "glob-to-regexp": "^0.4.1",
16163
+ "graceful-fs": "^4.1.2"
16164
+ }
16165
+ },
16166
+ "webidl-conversions": {
16167
+ "version": "5.0.0",
16168
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz",
16169
+ "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==",
16170
+ "dev": true
16171
+ },
16172
+ "webpack": {
16173
+ "version": "5.27.2",
16174
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.27.2.tgz",
16175
+ "integrity": "sha512-brNF3N/EdvMzkaZ/Xzb8sqPn5Si3iw6meqCnmNFtcnkorZsFZCBFMa2ElpIMjx6sKWYsnUpBO2dnX+7xgj+mjg==",
16176
+ "dev": true,
16177
+ "requires": {
16178
+ "@types/eslint-scope": "^3.7.0",
16179
+ "@types/estree": "^0.0.46",
16180
+ "@webassemblyjs/ast": "1.11.0",
16181
+ "@webassemblyjs/wasm-edit": "1.11.0",
16182
+ "@webassemblyjs/wasm-parser": "1.11.0",
16183
+ "acorn": "^8.0.4",
16184
+ "browserslist": "^4.14.5",
16185
+ "chrome-trace-event": "^1.0.2",
16186
+ "enhanced-resolve": "^5.7.0",
16187
+ "es-module-lexer": "^0.4.0",
16188
+ "eslint-scope": "^5.1.1",
16189
+ "events": "^3.2.0",
16190
+ "glob-to-regexp": "^0.4.1",
16191
+ "graceful-fs": "^4.2.4",
16192
+ "json-parse-better-errors": "^1.0.2",
16193
+ "loader-runner": "^4.2.0",
16194
+ "mime-types": "^2.1.27",
16195
+ "neo-async": "^2.6.2",
16196
+ "schema-utils": "^3.0.0",
16197
+ "tapable": "^2.1.1",
16198
+ "terser-webpack-plugin": "^5.1.1",
16199
+ "watchpack": "^2.0.0",
16200
+ "webpack-sources": "^2.1.1"
16201
+ },
16202
+ "dependencies": {
16203
+ "acorn": {
16204
+ "version": "8.1.0",
16205
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.1.0.tgz",
16206
+ "integrity": "sha512-LWCF/Wn0nfHOmJ9rzQApGnxnvgfROzGilS8936rqN/lfcYkY9MYZzdMqN+2NJ4SlTc+m5HiSa+kNfDtI64dwUA==",
16207
+ "dev": true
16208
+ },
16209
+ "schema-utils": {
16210
+ "version": "3.0.0",
16211
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz",
16212
+ "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==",
16213
+ "dev": true,
16214
+ "requires": {
16215
+ "@types/json-schema": "^7.0.6",
16216
+ "ajv": "^6.12.5",
16217
+ "ajv-keywords": "^3.5.2"
16218
+ }
16219
+ },
16220
+ "webpack-sources": {
16221
+ "version": "2.2.0",
16222
+ "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.2.0.tgz",
16223
+ "integrity": "sha512-bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w==",
16224
+ "dev": true,
16225
+ "requires": {
16226
+ "source-list-map": "^2.0.1",
16227
+ "source-map": "^0.6.1"
16228
+ }
16229
+ }
16230
+ }
16231
+ },
16232
+ "webpack-cli": {
16233
+ "version": "4.5.0",
16234
+ "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.5.0.tgz",
16235
+ "integrity": "sha512-wXg/ef6Ibstl2f50mnkcHblRPN/P9J4Nlod5Hg9HGFgSeF8rsqDGHJeVe4aR26q9l62TUJi6vmvC2Qz96YJw1Q==",
16236
+ "dev": true,
16237
+ "requires": {
16238
+ "@discoveryjs/json-ext": "^0.5.0",
16239
+ "@webpack-cli/configtest": "^1.0.1",
16240
+ "@webpack-cli/info": "^1.2.2",
16241
+ "@webpack-cli/serve": "^1.3.0",
16242
+ "colorette": "^1.2.1",
16243
+ "commander": "^7.0.0",
16244
+ "enquirer": "^2.3.6",
16245
+ "execa": "^5.0.0",
16246
+ "fastest-levenshtein": "^1.0.12",
16247
+ "import-local": "^3.0.2",
16248
+ "interpret": "^2.2.0",
16249
+ "rechoir": "^0.7.0",
16250
+ "v8-compile-cache": "^2.2.0",
16251
+ "webpack-merge": "^5.7.3"
16252
+ },
16253
+ "dependencies": {
16254
+ "commander": {
16255
+ "version": "7.2.0",
16256
+ "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
16257
+ "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
16258
+ "dev": true
16259
+ },
16260
+ "execa": {
16261
+ "version": "5.0.0",
16262
+ "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz",
16263
+ "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==",
16264
+ "dev": true,
16265
+ "requires": {
16266
+ "cross-spawn": "^7.0.3",
16267
+ "get-stream": "^6.0.0",
16268
+ "human-signals": "^2.1.0",
16269
+ "is-stream": "^2.0.0",
16270
+ "merge-stream": "^2.0.0",
16271
+ "npm-run-path": "^4.0.1",
16272
+ "onetime": "^5.1.2",
16273
+ "signal-exit": "^3.0.3",
16274
+ "strip-final-newline": "^2.0.0"
16275
+ }
16276
+ },
16277
+ "get-stream": {
16278
+ "version": "6.0.0",
16279
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz",
16280
+ "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==",
16281
+ "dev": true
16282
+ },
16283
+ "human-signals": {
16284
+ "version": "2.1.0",
16285
+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
16286
+ "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
16287
+ "dev": true
16288
+ }
16289
+ }
16290
+ },
16291
+ "webpack-merge": {
16292
+ "version": "5.7.3",
16293
+ "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.7.3.tgz",
16294
+ "integrity": "sha512-6/JUQv0ELQ1igjGDzHkXbVDRxkfA57Zw7PfiupdLFJYrgFqY5ZP8xxbpp2lU3EPwYx89ht5Z/aDkD40hFCm5AA==",
16295
+ "dev": true,
16296
+ "requires": {
16297
+ "clone-deep": "^4.0.1",
16298
+ "wildcard": "^2.0.0"
16299
+ }
16300
+ },
16301
+ "webpack-remove-empty-scripts": {
16302
+ "version": "0.7.1",
16303
+ "resolved": "https://registry.npmjs.org/webpack-remove-empty-scripts/-/webpack-remove-empty-scripts-0.7.1.tgz",
16304
+ "integrity": "sha512-9GWBe8TxKUYMalR84L99QjME6W0ptd/pupNqB4Ad4NazouwT+9QJLcfJjl7PDhR/L+qY9JHlzIGdgj0Vv1f3zA==",
16305
+ "dev": true
16306
+ },
16307
+ "webpack-sources": {
16308
+ "version": "1.4.3",
16309
+ "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz",
16310
+ "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==",
16311
+ "requires": {
16312
+ "source-list-map": "^2.0.0",
16313
+ "source-map": "~0.6.1"
16314
+ }
16315
+ },
16316
+ "whatwg-fetch": {
16317
+ "version": "3.6.2",
16318
+ "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz",
16319
+ "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==",
16320
+ "dev": true
16321
+ },
16322
+ "whatwg-url-without-unicode": {
16323
+ "version": "8.0.0-3",
16324
+ "resolved": "https://registry.npmjs.org/whatwg-url-without-unicode/-/whatwg-url-without-unicode-8.0.0-3.tgz",
16325
+ "integrity": "sha512-HoKuzZrUlgpz35YO27XgD28uh/WJH4B0+3ttFqRo//lmq+9T/mIOJ6kqmINI9HpUpz1imRC/nR/lxKpJiv0uig==",
16326
+ "dev": true,
16327
+ "requires": {
16328
+ "buffer": "^5.4.3",
16329
+ "punycode": "^2.1.1",
16330
+ "webidl-conversions": "^5.0.0"
16331
+ }
16332
+ },
16333
+ "which": {
16334
+ "version": "2.0.2",
16335
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
16336
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
16337
+ "requires": {
16338
+ "isexe": "^2.0.0"
16339
+ }
16340
+ },
16341
+ "which-boxed-primitive": {
16342
+ "version": "1.0.2",
16343
+ "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
16344
+ "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
16345
+ "dev": true,
16346
+ "requires": {
16347
+ "is-bigint": "^1.0.1",
16348
+ "is-boolean-object": "^1.1.0",
16349
+ "is-number-object": "^1.0.4",
16350
+ "is-string": "^1.0.5",
16351
+ "is-symbol": "^1.0.3"
16352
+ }
16353
+ },
16354
+ "which-module": {
16355
+ "version": "2.0.0",
16356
+ "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
16357
+ "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
16358
+ "dev": true
16359
+ },
16360
+ "wide-align": {
16361
+ "version": "1.1.3",
16362
+ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
16363
+ "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
16364
+ "dev": true,
16365
+ "requires": {
16366
+ "string-width": "^1.0.2 || 2"
16367
+ },
16368
+ "dependencies": {
16369
+ "ansi-regex": {
16370
+ "version": "3.0.0",
16371
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
16372
+ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
16373
+ "dev": true
16374
+ },
16375
+ "string-width": {
16376
+ "version": "2.1.1",
16377
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
16378
+ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
16379
+ "dev": true,
16380
+ "requires": {
16381
+ "is-fullwidth-code-point": "^2.0.0",
16382
+ "strip-ansi": "^4.0.0"
16383
+ }
16384
+ },
16385
+ "strip-ansi": {
16386
+ "version": "4.0.0",
16387
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
16388
+ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
16389
+ "dev": true,
16390
+ "requires": {
16391
+ "ansi-regex": "^3.0.0"
16392
+ }
16393
+ }
16394
+ }
16395
+ },
16396
+ "wildcard": {
16397
+ "version": "2.0.0",
16398
+ "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz",
16399
+ "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==",
16400
+ "dev": true
16401
+ },
16402
+ "word-wrap": {
16403
+ "version": "1.2.3",
16404
+ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
16405
+ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
16406
+ "dev": true
16407
+ },
16408
+ "wrap-ansi": {
16409
+ "version": "5.1.0",
16410
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
16411
+ "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
16412
+ "dev": true,
16413
+ "requires": {
16414
+ "ansi-styles": "^3.2.0",
16415
+ "string-width": "^3.0.0",
16416
+ "strip-ansi": "^5.0.0"
16417
+ },
16418
+ "dependencies": {
16419
+ "ansi-regex": {
16420
+ "version": "4.1.0",
16421
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
16422
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
16423
+ "dev": true
16424
+ },
16425
+ "ansi-styles": {
16426
+ "version": "3.2.1",
16427
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
16428
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
16429
+ "dev": true,
16430
+ "requires": {
16431
+ "color-convert": "^1.9.0"
16432
+ }
16433
+ },
16434
+ "strip-ansi": {
16435
+ "version": "5.2.0",
16436
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
16437
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
16438
+ "dev": true,
16439
+ "requires": {
16440
+ "ansi-regex": "^4.1.0"
16441
+ }
16442
+ }
16443
+ }
16444
+ },
16445
+ "wrappy": {
16446
+ "version": "1.0.2",
16447
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
16448
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
16449
+ },
16450
+ "write-file-atomic": {
16451
+ "version": "3.0.3",
16452
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
16453
+ "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
16454
+ "dev": true,
16455
+ "requires": {
16456
+ "imurmurhash": "^0.1.4",
16457
+ "is-typedarray": "^1.0.0",
16458
+ "signal-exit": "^3.0.2",
16459
+ "typedarray-to-buffer": "^3.1.5"
16460
+ }
16461
+ },
16462
+ "xtend": {
16463
+ "version": "4.0.2",
16464
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
16465
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ=="
16466
+ },
16467
+ "y18n": {
16468
+ "version": "4.0.1",
16469
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz",
16470
+ "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==",
16471
+ "dev": true
16472
+ },
16473
+ "yallist": {
16474
+ "version": "2.1.2",
16475
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
16476
+ "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI="
16477
+ },
16478
+ "yaml": {
16479
+ "version": "1.10.2",
16480
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
16481
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
16482
+ "dev": true
16483
+ },
16484
+ "yargs": {
16485
+ "version": "14.2.3",
16486
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz",
16487
+ "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==",
16488
+ "dev": true,
16489
+ "requires": {
16490
+ "cliui": "^5.0.0",
16491
+ "decamelize": "^1.2.0",
16492
+ "find-up": "^3.0.0",
16493
+ "get-caller-file": "^2.0.1",
16494
+ "require-directory": "^2.1.1",
16495
+ "require-main-filename": "^2.0.0",
16496
+ "set-blocking": "^2.0.0",
16497
+ "string-width": "^3.0.0",
16498
+ "which-module": "^2.0.0",
16499
+ "y18n": "^4.0.0",
16500
+ "yargs-parser": "^15.0.1"
16501
+ },
16502
+ "dependencies": {
16503
+ "find-up": {
16504
+ "version": "3.0.0",
16505
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
16506
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
16507
+ "dev": true,
16508
+ "requires": {
16509
+ "locate-path": "^3.0.0"
16510
+ }
16511
+ },
16512
+ "locate-path": {
16513
+ "version": "3.0.0",
16514
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
16515
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
16516
+ "dev": true,
16517
+ "requires": {
16518
+ "p-locate": "^3.0.0",
16519
+ "path-exists": "^3.0.0"
16520
+ }
16521
+ },
16522
+ "p-locate": {
16523
+ "version": "3.0.0",
16524
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
16525
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
16526
+ "dev": true,
16527
+ "requires": {
16528
+ "p-limit": "^2.0.0"
16529
+ }
16530
+ },
16531
+ "path-exists": {
16532
+ "version": "3.0.0",
16533
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
16534
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
16535
+ "dev": true
16536
+ }
16537
+ }
16538
+ },
16539
+ "yargs-parser": {
16540
+ "version": "15.0.1",
16541
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz",
16542
+ "integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==",
16543
+ "dev": true,
16544
+ "requires": {
16545
+ "camelcase": "^5.0.0",
16546
+ "decamelize": "^1.2.0"
16547
+ },
16548
+ "dependencies": {
16549
+ "camelcase": {
16550
+ "version": "5.3.1",
16551
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
16552
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
16553
+ "dev": true
16554
+ }
16555
+ }
16556
+ },
16557
+ "yauzl": {
16558
+ "version": "2.10.0",
16559
+ "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
16560
+ "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
16561
+ "requires": {
16562
+ "buffer-crc32": "~0.2.3",
16563
+ "fd-slicer": "~1.1.0"
16564
+ }
16565
+ },
16566
+ "yocto-queue": {
16567
+ "version": "0.1.0",
16568
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
16569
+ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
16570
+ "dev": true
16571
+ }
16572
+ }
16573
+ }
extendify-sdk/package.json ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "extendify-sdk",
3
+ "description": "",
4
+ "scripts": {
5
+ "build": "cross-env BABEL_ENV=default NODE_ENV=production webpack",
6
+ "dev": "cross-env BABEL_ENV=default NODE_ENV=development webpack",
7
+ "watch": "npm run dev -- --watch",
8
+ "lint": "eslint src/**/*.js",
9
+ "lint-fix": "eslint src/**/*.js --fix"
10
+ },
11
+ "devDependencies": {
12
+ "@babel/cli": "7.13.10",
13
+ "@babel/core": "^7.13.10",
14
+ "@babel/plugin-proposal-object-rest-spread": "^7.13.8",
15
+ "@babel/plugin-transform-async-to-generator": "^7.13.0",
16
+ "@babel/plugin-transform-react-jsx": "^7.13.12",
17
+ "@babel/preset-env": "^7.13.12",
18
+ "@rjsf/core": "^2.5.1",
19
+ "@svgr/webpack": "^5.5.0",
20
+ "@wordpress/babel-plugin-makepot": "^4.1.0",
21
+ "@wordpress/base-styles": "^3.4.0",
22
+ "@wordpress/block-editor": "^5.3.0",
23
+ "@wordpress/blocks": "^8.0.0",
24
+ "@wordpress/browserslist-config": "^3.0.1",
25
+ "@wordpress/components": "^13.0.0",
26
+ "@wordpress/edit-post": "^3.27.0",
27
+ "@wordpress/editor": "^9.26.0",
28
+ "@wordpress/hooks": "^2.12.0",
29
+ "@wordpress/i18n": "^3.19.0",
30
+ "@wordpress/jest-preset-default": "^7.0.1",
31
+ "autoprefixer": "^10.2.5",
32
+ "babel-loader": "^8.2.2",
33
+ "cross-env": "7.0.3",
34
+ "css-loader": "^5.1.3",
35
+ "eslint": "^7.22.0",
36
+ "eslint-loader": "^2.1.1",
37
+ "eslint-plugin-react": "^7.23.0",
38
+ "eslint-plugin-react-hooks": "^4.2.0",
39
+ "mini-css-extract-plugin": "^1.3.9",
40
+ "node-sass": "^5.0.0",
41
+ "postcss-loader": "^5.2.0",
42
+ "postcss-preset-env": "^6.7.0",
43
+ "sass-loader": "^11.0.1",
44
+ "webpack": "^5.27.2",
45
+ "webpack-cli": "^4.5.0",
46
+ "webpack-remove-empty-scripts": "^0.7.1"
47
+ },
48
+ "dependencies": {
49
+ "@wordpress/icons": "2.10.0",
50
+ "axios": "^0.21.1",
51
+ "classnames": "^2.2.6",
52
+ "imagemin-pngquant": "^9.0.2",
53
+ "imagemin-webpack": "^5.1.0",
54
+ "react": "^17.0.2",
55
+ "react-dom": "^17.0.2"
56
+ }
57
+ }
extendify-sdk/public/.gitkeep ADDED
File without changes
extendify-sdk/public/build/extendify-sdk.css ADDED
@@ -0,0 +1,2 @@
 
 
1
+ .etfy-templates-library-modal-root{height:100%}.etfy-templates-library-modal-root .etfy-back-button{cursor:pointer;text-decoration:none;color:#000;display:none;margin-right:16px}@media (max-width: 782px){.etfy-templates-library-modal-root .etfy-back-button{display:block}}.etfy-templates-library-modal-root .components-modal__content{max-width:100%;width:1500px}.etfy-templates-library-modal-root .components-modal__content .etfy-templates-library-modal{display:flex;flex-direction:row;margin-top:32px}.etfy-templates-library-modal-root .components-modal__content .etfy-templates-library-modal>div:not(:first-child){margin-left:48px}@media (max-width: 600px){.etfy-templates-library-modal-root .components-modal__content .etfy-templates-library-modal{flex-direction:column}.etfy-templates-library-modal-root .components-modal__content .etfy-templates-library-modal>div:not(:first-child){margin-left:0}}.etfy-screen-single-template .etfy-back-button{display:block}@media (max-width: 782px){.etfy-screen-menu .etfy-back-button{display:none}}@media (max-width: 782px){.etfy-screen-menu .etfy-templates-library-content-root{display:none}}@media (max-width: 782px){.etfy-screen-templates .etfy-templates-library-sidebar,.etfy-screen-single-template .etfy-templates-library-sidebar{display:none}}.etfy-templates-library-content-root{width:70%;height:100%;display:block;margin-bottom:32px}@media (max-width: 782px){.etfy-templates-library-content-root{width:100%}}.etfy-templates-library-content-root .etfy-templates-description--small{display:none}.etfy-templates-library-content-root .etfy-templates-description--small h3 span{margin:0 8px}@media (max-width: 782px){.etfy-templates-library-content-root .etfy-templates-description--small{display:block}}.etfy-templates-library-content-root .etfy-templates-library-content.etfy-templates-library-grid{display:grid;grid-template-columns:repeat(2, 1fr);grid-column-gap:24px;-moz-column-gap:24px;column-gap:24px;grid-row-gap:40px;row-gap:40px}@media (max-width: 782px){.etfy-templates-library-content-root .etfy-templates-library-content.etfy-templates-library-grid{grid-template-columns:1fr;grid-column-gap:16px;-moz-column-gap:16px;column-gap:16px}}.etfy-templates-library-content-root.etfy-templates-loading{position:relative;padding:calc(48px * 2) 0px;height:50vh;min-height:50vh}.etfy-templates-library-content-root.etfy-templates-loading .etfy-loading{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.etfy-template-main:focus{box-shadow:0 0 0 1.5px var(--wp-admin-theme-color)}.etfy-template-main .etfy-template{cursor:pointer}.etfy-template-main .etfy-template .etfy-template-header{display:flex;flex-direction:row;justify-content:space-between}.etfy-template-main .etfy-template .etfy-template-media{background-size:cover;min-height:315px}.etfy-template-main .etfy-template.etfy-type-pattern .etfy-template-media{background-repeat:no-repeat;background-position-y:50%;background-size:contain}.etfy-templates-library-sidebar{width:30%;height:75vh;top:90px;overflow-y:auto;overflow-x:hidden;position:sticky;padding:0px 16px 0px 1px}@media (max-width: 782px){.etfy-templates-library-sidebar{height:100%;padding-right:0px}}.etfy-templates-library-sidebar .etfy-templates-library-sidebar__wrapper{position:sticky}@media (max-width: 782px){.etfy-templates-library-sidebar{width:100%}}.etfy-templates-library-sidebar .etfy-templates-library-top__area{position:sticky;top:0px;background-color:#fff}.etfy-templates-library-sidebar .etfy-divider{margin:24px 0}.etfy-templates-library-sidebar .block-editor-inserter__search{padding:0px;padding-top:4px}.etfy-templates-library-sidebar .block-editor-inserter__search svg{height:100%}.etfy-templates-library-sidebar .block-editor-inserter__search .block-editor-inserter__search-icon{right:10px !important}.etfy-templates-library-sidebar-menu .etfy-selected-category{background-color:#f0f0f0}.etfy-templates-library-sidebar-menu .etfy-selected-category .etfy-menu-item:hover{box-shadow:0 0 0 1.5px var(--wp-admin-theme-color) inset}.etfy-template-preview{display:flex;flex-direction:row}.etfy-template-preview>div:not(:first-child){margin:0px 0px 0px 32px}@media (max-width: 600px){.etfy-template-preview{flex-direction:column-reverse}.etfy-template-preview>div:not(:first-child){margin:0px 0px 32px 0px}}.etfy-template-preview .etfy-template-media{width:60%}.etfy-template-preview .etfy-template-media img{width:100%;height:100%}@media (max-width: 600px){.etfy-template-preview .etfy-template-media{width:100%}}.etfy-template-preview .etfy-template-details{width:40%;top:80px;position:sticky;height:100%}@media (max-width: 600px){.etfy-template-preview .etfy-template-details{width:100%;display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;position:relative;top:0px}}.etfy-template-preview .etfy-template-details .etfy-template-title{margin:32px 0px}@media (max-width: 600px){.etfy-template-preview .etfy-template-details .etfy-template-title{margin:16px 0px}}.etfy-template-preview .etfy-template-details .etfy-template-category{margin-right:4px}.etfy-template-preview .etfy-template-details .etfy-upgrade-btn{background-color:#e0e0e0;border:1px solid #ddd}.etfy-template-preview hr{margin:16px 0}.etfy-load-more{text-align:center;margin-top:16px}.etfy-not-results-found__root h2{line-height:1.4}.etfy-auth-api-form{margin-bottom:32px}.etfy-auth-api-form .etfy-auth-field{margin-bottom:16px}.etfy-library-auth__header{display:inline-block;margin-bottom:24px}.etfy-library-auth__header .etfy-upgrade__btn{margin-right:8px}.etfy-library-auth__header .etfy-upgrade__btn{background-color:#4ab866;color:#fff;outline:#fff}.etfy-library-auth__header .etfy-upgrade__btn:focus{color:#fff;box-shadow:none !important}.etfy-library-auth__header .etfy-add-key__btn{background-color:#e0e0e0;border:1px solid #ddd}#extendify-templates-inserter{display:flex;flex-direction:column;justify-content:center}#extendify-templates-inserter svg{margin-right:8px;fill:none}.etfy-lib-menu svg{fill:none}
2
+
extendify-sdk/public/build/extendify-sdk.js ADDED
@@ -0,0 +1,2 @@
 
 
1
+ /*! For license information please see extendify-sdk.js.LICENSE.txt */
2
+ (()=>{var e={669:(e,t,r)=>{e.exports=r(609)},448:(e,t,r)=>{"use strict";var n=r(867),a=r(26),o=r(372),i=r(327),s=r(97),u=r(109),c=r(985),l=r(61);e.exports=function(e){return new Promise((function(t,r){var p=e.data,f=e.headers;n.isFormData(p)&&delete f["Content-Type"];var m=new XMLHttpRequest;if(e.auth){var d=e.auth.username||"",y=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";f.Authorization="Basic "+btoa(d+":"+y)}var h=s(e.baseURL,e.url);if(m.open(e.method.toUpperCase(),i(h,e.params,e.paramsSerializer),!0),m.timeout=e.timeout,m.onreadystatechange=function(){if(m&&4===m.readyState&&(0!==m.status||m.responseURL&&0===m.responseURL.indexOf("file:"))){var n="getAllResponseHeaders"in m?u(m.getAllResponseHeaders()):null,o={data:e.responseType&&"text"!==e.responseType?m.response:m.responseText,status:m.status,statusText:m.statusText,headers:n,config:e,request:m};a(t,r,o),m=null}},m.onabort=function(){m&&(r(l("Request aborted",e,"ECONNABORTED",m)),m=null)},m.onerror=function(){r(l("Network Error",e,null,m)),m=null},m.ontimeout=function(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),r(l(t,e,"ECONNABORTED",m)),m=null},n.isStandardBrowserEnv()){var v=(e.withCredentials||c(h))&&e.xsrfCookieName?o.read(e.xsrfCookieName):void 0;v&&(f[e.xsrfHeaderName]=v)}if("setRequestHeader"in m&&n.forEach(f,(function(e,t){void 0===p&&"content-type"===t.toLowerCase()?delete f[t]:m.setRequestHeader(t,e)})),n.isUndefined(e.withCredentials)||(m.withCredentials=!!e.withCredentials),e.responseType)try{m.responseType=e.responseType}catch(t){if("json"!==e.responseType)throw t}"function"==typeof e.onDownloadProgress&&m.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&m.upload&&m.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function(e){m&&(m.abort(),r(e),m=null)})),p||(p=null),m.send(p)}))}},609:(e,t,r)=>{"use strict";var n=r(867),a=r(849),o=r(321),i=r(185);function s(e){var t=new o(e),r=a(o.prototype.request,t);return n.extend(r,o.prototype,t),n.extend(r,t),r}var u=s(r(655));u.Axios=o,u.create=function(e){return s(i(u.defaults,e))},u.Cancel=r(263),u.CancelToken=r(972),u.isCancel=r(502),u.all=function(e){return Promise.all(e)},u.spread=r(713),u.isAxiosError=r(268),e.exports=u,e.exports.default=u},263:e=>{"use strict";function t(e){this.message=e}t.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},t.prototype.__CANCEL__=!0,e.exports=t},972:(e,t,r)=>{"use strict";var n=r(263);function a(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var r=this;e((function(e){r.reason||(r.reason=new n(e),t(r.reason))}))}a.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},a.source=function(){var e;return{token:new a((function(t){e=t})),cancel:e}},e.exports=a},502:e=>{"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},321:(e,t,r)=>{"use strict";var n=r(867),a=r(327),o=r(782),i=r(572),s=r(185);function u(e){this.defaults=e,this.interceptors={request:new o,response:new o}}u.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=s(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[i,void 0],r=Promise.resolve(e);for(this.interceptors.request.forEach((function(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function(e){t.push(e.fulfilled,e.rejected)}));t.length;)r=r.then(t.shift(),t.shift());return r},u.prototype.getUri=function(e){return e=s(this.defaults,e),a(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},n.forEach(["delete","get","head","options"],(function(e){u.prototype[e]=function(t,r){return this.request(s(r||{},{method:e,url:t,data:(r||{}).data}))}})),n.forEach(["post","put","patch"],(function(e){u.prototype[e]=function(t,r,n){return this.request(s(n||{},{method:e,url:t,data:r}))}})),e.exports=u},782:(e,t,r)=>{"use strict";var n=r(867);function a(){this.handlers=[]}a.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},a.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},a.prototype.forEach=function(e){n.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=a},97:(e,t,r)=>{"use strict";var n=r(793),a=r(303);e.exports=function(e,t){return e&&!n(t)?a(e,t):t}},61:(e,t,r)=>{"use strict";var n=r(481);e.exports=function(e,t,r,a,o){var i=new Error(e);return n(i,t,r,a,o)}},572:(e,t,r)=>{"use strict";var n=r(867),a=r(527),o=r(502),i=r(655);function s(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function(e){return s(e),e.headers=e.headers||{},e.data=a(e.data,e.headers,e.transformRequest),e.headers=n.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),n.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||i.adapter)(e).then((function(t){return s(e),t.data=a(t.data,t.headers,e.transformResponse),t}),(function(t){return o(t)||(s(e),t&&t.response&&(t.response.data=a(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},481:e=>{"use strict";e.exports=function(e,t,r,n,a){return e.config=t,r&&(e.code=r),e.request=n,e.response=a,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},185:(e,t,r)=>{"use strict";var n=r(867);e.exports=function(e,t){t=t||{};var r={},a=["url","method","data"],o=["headers","auth","proxy","params"],i=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],s=["validateStatus"];function u(e,t){return n.isPlainObject(e)&&n.isPlainObject(t)?n.merge(e,t):n.isPlainObject(t)?n.merge({},t):n.isArray(t)?t.slice():t}function c(a){n.isUndefined(t[a])?n.isUndefined(e[a])||(r[a]=u(void 0,e[a])):r[a]=u(e[a],t[a])}n.forEach(a,(function(e){n.isUndefined(t[e])||(r[e]=u(void 0,t[e]))})),n.forEach(o,c),n.forEach(i,(function(a){n.isUndefined(t[a])?n.isUndefined(e[a])||(r[a]=u(void 0,e[a])):r[a]=u(void 0,t[a])})),n.forEach(s,(function(n){n in t?r[n]=u(e[n],t[n]):n in e&&(r[n]=u(void 0,e[n]))}));var l=a.concat(o).concat(i).concat(s),p=Object.keys(e).concat(Object.keys(t)).filter((function(e){return-1===l.indexOf(e)}));return n.forEach(p,c),r}},26:(e,t,r)=>{"use strict";var n=r(61);e.exports=function(e,t,r){var a=r.config.validateStatus;r.status&&a&&!a(r.status)?t(n("Request failed with status code "+r.status,r.config,null,r.request,r)):e(r)}},527:(e,t,r)=>{"use strict";var n=r(867);e.exports=function(e,t,r){return n.forEach(r,(function(r){e=r(e,t)})),e}},655:(e,t,r)=>{"use strict";var n=r(867),a=r(16),o={"Content-Type":"application/x-www-form-urlencoded"};function i(e,t){!n.isUndefined(e)&&n.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var s,u={adapter:(("undefined"!=typeof XMLHttpRequest||"undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process))&&(s=r(448)),s),transformRequest:[function(e,t){return a(t,"Accept"),a(t,"Content-Type"),n.isFormData(e)||n.isArrayBuffer(e)||n.isBuffer(e)||n.isStream(e)||n.isFile(e)||n.isBlob(e)?e:n.isArrayBufferView(e)?e.buffer:n.isURLSearchParams(e)?(i(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):n.isObject(e)?(i(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};n.forEach(["delete","get","head"],(function(e){u.headers[e]={}})),n.forEach(["post","put","patch"],(function(e){u.headers[e]=n.merge(o)})),e.exports=u},849:e=>{"use strict";e.exports=function(e,t){return function(){for(var r=new Array(arguments.length),n=0;n<r.length;n++)r[n]=arguments[n];return e.apply(t,r)}}},327:(e,t,r)=>{"use strict";var n=r(867);function a(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,r){if(!t)return e;var o;if(r)o=r(t);else if(n.isURLSearchParams(t))o=t.toString();else{var i=[];n.forEach(t,(function(e,t){null!=e&&(n.isArray(e)?t+="[]":e=[e],n.forEach(e,(function(e){n.isDate(e)?e=e.toISOString():n.isObject(e)&&(e=JSON.stringify(e)),i.push(a(t)+"="+a(e))})))})),o=i.join("&")}if(o){var s=e.indexOf("#");-1!==s&&(e=e.slice(0,s)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}},303:e=>{"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},372:(e,t,r)=>{"use strict";var n=r(867);e.exports=n.isStandardBrowserEnv()?{write:function(e,t,r,a,o,i){var s=[];s.push(e+"="+encodeURIComponent(t)),n.isNumber(r)&&s.push("expires="+new Date(r).toGMTString()),n.isString(a)&&s.push("path="+a),n.isString(o)&&s.push("domain="+o),!0===i&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},793:e=>{"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},268:e=>{"use strict";e.exports=function(e){return"object"==typeof e&&!0===e.isAxiosError}},985:(e,t,r)=>{"use strict";var n=r(867);e.exports=n.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a");function a(e){var n=e;return t&&(r.setAttribute("href",n),n=r.href),r.setAttribute("href",n),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:"/"===r.pathname.charAt(0)?r.pathname:"/"+r.pathname}}return e=a(window.location.href),function(t){var r=n.isString(t)?a(t):t;return r.protocol===e.protocol&&r.host===e.host}}():function(){return!0}},16:(e,t,r)=>{"use strict";var n=r(867);e.exports=function(e,t){n.forEach(e,(function(r,n){n!==t&&n.toUpperCase()===t.toUpperCase()&&(e[t]=r,delete e[n])}))}},109:(e,t,r)=>{"use strict";var n=r(867),a=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,r,o,i={};return e?(n.forEach(e.split("\n"),(function(e){if(o=e.indexOf(":"),t=n.trim(e.substr(0,o)).toLowerCase(),r=n.trim(e.substr(o+1)),t){if(i[t]&&a.indexOf(t)>=0)return;i[t]="set-cookie"===t?(i[t]?i[t]:[]).concat([r]):i[t]?i[t]+", "+r:r}})),i):i}},713:e=>{"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},867:(e,t,r)=>{"use strict";var n=r(849),a=Object.prototype.toString;function o(e){return"[object Array]"===a.call(e)}function i(e){return void 0===e}function s(e){return null!==e&&"object"==typeof e}function u(e){if("[object Object]"!==a.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function c(e){return"[object Function]"===a.call(e)}function l(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),o(e))for(var r=0,n=e.length;r<n;r++)t.call(null,e[r],r,e);else for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.call(null,e[a],a,e)}e.exports={isArray:o,isArrayBuffer:function(e){return"[object ArrayBuffer]"===a.call(e)},isBuffer:function(e){return null!==e&&!i(e)&&null!==e.constructor&&!i(e.constructor)&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},isArrayBufferView:function(e){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&e.buffer instanceof ArrayBuffer},isString:function(e){return"string"==typeof e},isNumber:function(e){return"number"==typeof e},isObject:s,isPlainObject:u,isUndefined:i,isDate:function(e){return"[object Date]"===a.call(e)},isFile:function(e){return"[object File]"===a.call(e)},isBlob:function(e){return"[object Blob]"===a.call(e)},isFunction:c,isStream:function(e){return s(e)&&c(e.pipe)},isURLSearchParams:function(e){return"undefined"!=typeof URLSearchParams&&e instanceof URLSearchParams},isStandardBrowserEnv:function(){return("undefined"==typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&"undefined"!=typeof window&&"undefined"!=typeof document},forEach:l,merge:function e(){var t={};function r(r,n){u(t[n])&&u(r)?t[n]=e(t[n],r):u(r)?t[n]=e({},r):o(r)?t[n]=r.slice():t[n]=r}for(var n=0,a=arguments.length;n<a;n++)l(arguments[n],r);return t},extend:function(e,t,r){return l(t,(function(t,a){e[a]=r&&"function"==typeof t?n(t,r):t})),e},trim:function(e){return e.replace(/^\s*/,"").replace(/\s*$/,"")},stripBOM:function(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e}}},184:(e,t)=>{var r;!function(){"use strict";var n={}.hasOwnProperty;function a(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var i=a.apply(null,r);i&&e.push(i)}else if("object"===o)for(var s in r)n.call(r,s)&&r[s]&&e.push(s)}}return e.join(" ")}e.exports?(a.default=a,e.exports=a):void 0===(r=function(){return a}.apply(t,[]))||(e.exports=r)}()}},t={};function r(n){var a=t[n];if(void 0!==a)return a.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,r),o.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";const e=wp.data;var t,n;function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){i(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var s={previewStatus:!1,templates:{loading:!1,error:!1,records:[],offset:""},templateTypes:["pattern","template"],templateFilters:{categories:[],type:"template",search:""},currentPreviewTemplate:{},currentScreen:"menu",reloadRequirements:{required:!1,insertCurrentTemplate:!1},apiKey:null!==(t=localStorage.getItem("etfy_library__key"))&&void 0!==t?t:"",maxImports:3,currentImports:null!==(n=localStorage.getItem("etfy__library_imports_left"))&&void 0!==n?n:3};const u=lodash;var c={reducer:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SET_LIBRARY_PREVIEW_STATUS":return o(o({},e),{},{previewStatus:t.status});case"SET_TEMPLATES":return o(o({},e),{},{templates:o(o({},e.templates),t.templates)});case"SET_PREVIEW_TEMPLATE":return o(o({},e),{},{currentPreviewTemplate:t.template});case"SET_FILTERS":return o(o({},e),{},{templateFilters:o(o({},e.templateFilters),t.filters)});case"SET_LOADING_STATUS":switch(t.key){case"templates":return o(o({},e),{},{templates:o(o({},e.templates),{},{loading:t.status})})}break;case"SET_SCREEN":return o(o({},e),{},{currentScreen:t.screen});case"SET_RELOAD_REQUIREMENTS":return o(o({},e),{},{reloadRequirements:t.reload});case"SET_KEY":return o(o({},e),{},{apiKey:t.key});case"SET_STATE":return t.state;case"SET_IMPORTS":return o(o({},e),{},{currentImports:t.imports});default:return e}},actions:{setLibraryPreviewStatus:function(e){return{type:"SET_LIBRARY_PREVIEW_STATUS",status:e}},setTemplates:function(e){return{type:"SET_TEMPLATES",templates:e}},setLoadingStatus:function(e,t){return{type:"SET_LOADING_STATUS",key:e,status:t}},setCurrentPreviewTemplate:function(e){return{type:"SET_PREVIEW_TEMPLATE",template:e}},setFilters:function(e){return{type:"SET_FILTERS",filters:e}},setLastAppliedFilters:function(e){return{type:"SET_LAST_APPLIED_FILTERS",filters:e}},setCurrentScreen:function(e){return{type:"SET_SCREEN",screen:e}},setReloadRequirements:function(e){return{type:"SET_RELOAD_REQUIREMENTS",reload:e}},setSpecificState:function(e){return{type:"SET_STATE",state:e}},setApiKey:function(e){return{type:"SET_KEY",key:e}},setImportsCount:function(e){return{type:"SET_IMPORTS",imports:e}}},selectors:{getLibraryPreviewStatus:function(e){return(0,u.get)(e,"previewStatus")},getTemplates:function(e){return(0,u.get)(e,"templates")},getLoadingStatus:function(e,t){switch(t){case"templates":return(0,u.get)(e,"templates.loading");default:return!1}},getTemplateTypes:function(e){return(0,u.get)(e,"templateTypes")},getAppliedFilter:function(e,t){if((0,u.isString)(t)){var r=(0,u.get)(e,"templateFilters");return!!(0,u.has)(r,t)&&(0,u.get)(r,t)}},getAppliedFilters:function(e){return(0,u.get)(e,"templateFilters")},getCurrentPreviewTemplate:function(e){return(0,u.get)(e,"currentPreviewTemplate")},getCurrentScreen:function(e){return(0,u.get)(e,"currentScreen")},getApiKey:function(e){return(0,u.get)(e,"apiKey")},getCurrentImports:function(e){return(0,u.get)(e,"currentImports")},getMaxImports:function(e){return(0,u.get)(e,"maxImports")},getAuthenticationStatus:function(e){return!!(0,u.get)(e,"apiKey")}},resolvers:{},controls:{}};const l=(0,e.registerStore)("extendify-templates/data",c),p=wp.i18n,f=wp.element;var m="extendify-templates-inserter";const d=function(e){var t=e.icon,r={library:wp.element.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,viewBox:"0 0 20 20",fill:"none"},wp.element.createElement("g",{clipPath:"url(#clip0)"},wp.element.createElement("mask",{id:"mask0","mask-type":"alpha",maskUnits:"userSpaceOnUse",x:-4,y:0,width:29,height:28},wp.element.createElement("rect",{width:"19.6666",height:"19.6474",transform:"matrix(0.699908 0.714233 -0.724976 0.688774 10.2439 0)",fill:"black"})),wp.element.createElement("g",{mask:"url(#mask0)"},wp.element.createElement("rect",{x:"0.00339341",y:"0.701607",width:"18.6666",height:"18.6474",transform:"matrix(0.715941 0.698161 -0.709154 0.705054 10.4294 -8.1563)",stroke:"black"})),wp.element.createElement("rect",{width:"11.6128",height:"11.5957",transform:"matrix(0.710545 0.703466 -0.714551 0.699772 10.0079 0.414024)",fill:"black"}),wp.element.createElement("rect",{width:"7.53985",height:"3.68769",transform:"matrix(0.708475 -0.705736 0.716585 0.697499 4.20924 8.58513)",fill:"white"})),wp.element.createElement("defs",null,wp.element.createElement("clipPath",{id:"clip0"},wp.element.createElement("rect",{width:20,height:20,fill:"white"}))))};return(0,u.get)(r,t)};window.wp.domReady((function(){var t="extendify-templates-inserter-btn",r='<div id="extendify-templates-inserter"><button type="button" id="'+t+'" class="components-button">'+(0,f.renderToString)(wp.element.createElement(d,{icon:"library"}))+(0,p.__)("Library",m)+"</button></div>",n=document.getElementById("editor");n&&window.wp.data.subscribe((function(){setTimeout((function(){if(!document.getElementById(t)){var a=n.querySelector(".edit-post-header-toolbar");a instanceof HTMLElement&&(a.insertAdjacentHTML("beforeend",r),document.querySelector("#"+t).addEventListener("click",(function(){(0,(0,e.dispatch)("extendify-templates/data").setLibraryPreviewStatus)(!0)})))}}),1)}))}));const y=wp.plugins,h=wp.editPost,v=wp.compose;(0,y.registerPlugin)("extendify-temps-more-menu-trigger",{render:(0,v.compose)([(0,e.withSelect)((function(e){return{previewStatus:(0,e("extendify-templates/data").getLibraryPreviewStatus)()}})),(0,e.withDispatch)((function(e,t){var r=t.previewStatus,n=e("extendify-templates/data").setLibraryPreviewStatus;return{toggleTemplatesLibraryPreview:function(){n(!r)}}}))])((function(e){var t=e.previewStatus,r=e.toggleTemplatesLibraryPreview;return wp.element.createElement(h.PluginSidebarMoreMenuItem,{isPrimary:t,onClick:r,className:"etfy-lib-menu",icon:wp.element.createElement("span",{className:"components-menu-items__item-icon"},wp.element.createElement(d,{icon:"library"}))},(0,p.__)("Library",m))}))});const g=wp.components;function w(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function E(e){return function(e){if(Array.isArray(e))return b(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return b(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?b(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(!e){if("undefined"==typeof window)return!1;e=window}var t=e.navigator.platform;return-1!==t.indexOf("Mac")||(0,u.includes)(["iPad","iPhone"],t)}var x="alt",_="ctrl",P="meta",A="shift",T={primary:function(e){return e()?[P]:[_]},primaryShift:function(e){return e()?[A,P]:[_,A]},primaryAlt:function(e){return e()?[x,P]:[_,x]},secondary:function(e){return e()?[A,x,P]:[_,A,x]},access:function(e){return e()?[_,x]:[A,x]},ctrl:function(){return[_]},alt:function(){return[x]},ctrlShift:function(){return[_,A]},shift:function(){return[A]},shiftAlt:function(){return[A,x]}},k=((0,u.mapValues)(T,(function(e){return function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:S;return[].concat(E(e(r)),[t.toLowerCase()]).join("+")}})),(0,u.mapValues)(T,(function(e){return function(t){var r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:S,a=n(),o=(w(r={},x,a?"⌥":"Alt"),w(r,_,a?"⌃":"Ctrl"),w(r,P,"⌘"),w(r,A,a?"⇧":"Shift"),r),i=e(n).reduce((function(e,t){var r=(0,u.get)(o,t,t);return[].concat(E(e),a?[r]:[r,"+"])}),[]),s=(0,u.capitalize)(t);return[].concat(E(i),[s])}})));function O(e){return[x,_,P,A].filter((function(t){return e["".concat(t,"Key")]}))}(0,u.mapValues)(k,(function(e){return function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:S;return e(t,r).join("")}})),(0,u.mapValues)(T,(function(e){return function(t){var r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:S,a=n(),o=(w(r={},A,"Shift"),w(r,P,a?"Command":"Control"),w(r,_,"Control"),w(r,x,a?"Option":"Alt"),w(r,",",(0,p.__)("Comma")),w(r,".",(0,p.__)("Period")),w(r,"`",(0,p.__)("Backtick")),r);return[].concat(E(e(n)),[t]).map((function(e){return(0,u.capitalize)((0,u.get)(o,e,e))})).join(a?" ":" + ")}})),(0,u.mapValues)(T,(function(e){return function(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:S,a=e(n),o=O(t);return!(0,u.xor)(a,o).length&&(r?t.key===r:(0,u.includes)(a,t.key.toLowerCase()))}}));var C=r(184),R=r.n(C);const j=(0,v.compose)([(0,e.withSelect)((function(e,t){var r=t.template;return{shortCode:(0,u.get)(r,"fields.code"),currentType:(0,e("extendify-templates/data").getAppliedFilter)("type")}})),(0,e.withDispatch)((function(e,t){var r=t.template,n=e("extendify-templates/data"),a=n.setCurrentPreviewTemplate,o=n.setCurrentScreen;return{onSelect:function(){a(r),o("single-template")}}}))])((function(e){var t,r,n=e.template,a=e.onSelect,o=e.currentType,i=[(0,u.get)(n,"fields.screenshot[0].url"),(0,u.get)(n,"fields.title"),(0,u.get)(n,"fields.categories")],s=i[0],c=i[1],l=i[2],p=R()((t={"etfy-template":!0},!0,(r="etfy-type-".concat(o))in t?Object.defineProperty(t,r,{value:true,enumerable:!0,configurable:!0,writable:!0}):t[r]=true,t));return wp.element.createElement(g.TabbableContainer,{tabIndex:"0","aria-pressed":"false",onClick:a,onKeyDown:function(e){return(0,u.isEqual)(e.keyCode,13)&&a()},className:"etfy-template-main"},wp.element.createElement(g.Card,{className:p},wp.element.createElement(g.CardMedia,{className:"etfy-template-media",style:{backgroundImage:"url(".concat(s,")")}})),wp.element.createElement("div",{className:"etfy-template-body"},wp.element.createElement("h2",null,c),wp.element.createElement("span",null,l.join(", "))))}));function I(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,a=!1,o=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){a=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw o}}return r}}(e,t)||function(e,t){if(e){if("string"==typeof e)return N(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?N(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function L(e){var t=(0,u.get)(e,"categories"),r=(0,u.get)(e,"search"),n=(0,u.get)(e,"type"),a=(0,u.isEmpty)(t)?"TRUE()":t.map((function(e){return'SEARCH("'.concat(e,'", {categories}) = 1')})).join(","),o=(0,u.isEmpty)(r)?"TRUE()":'OR(FIND(LOWER("'.concat(r,'"), LOWER(title)) != 0, FIND(LOWER("').concat(r,'"), LOWER({categories})) != 0)'),i=(0,u.isEmpty)(n)?"TRUE()":'{type}="'.concat(n,'"'),s="IF(AND(".concat(a,", ").concat(o,", ").concat(i,"), TRUE())");return(0,u.isEmpty)(o)&&(0,u.isEmpty)(i)&&(0,u.isEmpty)(a)&&(s=""),s.replace(/\r?\n|\r/g,"")}function q(e,t){return!(!(0,u.isString)(e)||!(0,u.isString)(t))&&(e=(0,u.toLower)(e),-1!==(t=(0,u.toLower)(t)).indexOf(e))}function B(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=window.wp.blocks.createBlock;return e.map((function(e){var r=I(Array.isArray(e)?e:[e.name,e.attributes,e.innerBlocks],3),n=r[0],a=r[1],o=r[2];return t(n,a,B(void 0===o?[]:o))}))}function D(t){if(!t)throw Error("Template not found");return(0,(0,e.dispatch)("core/block-editor").insertBlocks)(B((0,window.wp.blocks.parse)((0,u.get)(t,"fields.code")))).then((function(){window.dispatchEvent(new CustomEvent("extendify-sdk::template-inserted",{detail:{template:t},bubbles:!0}))}))}var F=r(669);function U(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function M(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const K=function(e,t){return X.post("templates",function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?U(Object(r),!0).forEach((function(t){M(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):U(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({filterByFormula:L(e),pageSize:9,categories:(0,u.get)(e,"categories"),search:(0,u.get)(e,"search"),type:(0,u.get)(e,"type")},t))},W=function(e){var t;return X.post("templates/".concat(e.id),{template_id:e.id,pageSize:9,template_name:null===(t=e.fields)||void 0===t?void 0:t.title})},H=function(){return X.get("plugins")},V=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=new FormData;return t.append("plugins",JSON.stringify(e)),X.post("plugins",t,{headers:{"Content-Type":"multipart/form-data"}})},$=function(){return X.get("active-plugins")},z=function(){return X.get("categories")};var X=r.n(F)().create({baseURL:window.extendifySdkData.root,headers:{"X-WP-Nonce":window.extendifySdkData.nonce,"X-Requested-With":"XMLHttpRequest","X-Extendify":!0}});function J(e){return Object.prototype.hasOwnProperty.call(e,"data")?e.data:e}function Y(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function G(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){Y(o,n,a,i,s,"next",e)}function s(e){Y(o,n,a,i,s,"throw",e)}i(void 0)}))}}function Q(e){return Z.apply(this,arguments)}function Z(){return(Z=G(regeneratorRuntime.mark((function t(r){var n,a,o,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if((a=null!==(n=(0,u.get)(r,"fields.required_plugins"))&&void 0!==n?n:[]).length){t.next=3;break}return t.abrupt("return",!1);case 3:return t.t0=Object,t.next=6,H();case 6:return t.t1=t.sent,o=t.t0.keys.call(t.t0,t.t1),i=!!a.length&&a.filter((function(e){return!o.some((function(t){return t.includes(e)}))})),(0,(0,e.dispatch)("extendify-templates/data").setReloadRequirements)({required:+i.length}),t.abrupt("return",i.length);case 12:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function ee(e){return te.apply(this,arguments)}function te(){return(te=G(regeneratorRuntime.mark((function t(r){var n,a,o,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if((a=null!==(n=(0,u.get)(r,"fields.required_plugins"))&&void 0!==n?n:[]).length){t.next=3;break}return t.abrupt("return",!1);case 3:return t.t0=Object,t.next=6,$();case 6:if(t.t1=t.sent,o=t.t0.values.call(t.t0,t.t1),!(i=!!a.length&&a.filter((function(e){return!o.some((function(t){return t.includes(e)}))})))){t.next=14;break}return t.next=12,Q(r);case 12:if(!t.sent){t.next=14;break}return t.abrupt("return",!1);case 14:return(0,(0,e.dispatch)("extendify-templates/data").setReloadRequirements)({required:+i.length}),t.abrupt("return",i.length);case 17:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function re(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}X.interceptors.response.use((function(e){return function(e){return Object.prototype.hasOwnProperty.call(e,"soft_error")&&window.dispatchEvent(new CustomEvent("extendify-sdk::softerror-encountered",{detail:e.soft_error,bubbles:!0})),e}(J(e))}),(function(e){return function(e){return console.error(e.response),Promise.reject(J(e.response))}(e)})),X.interceptors.request.use((function(e){return function(e){return e.headers["X-Extendify-Dev-Mode"]=window.location.search.indexOf("DEVMODE")>-1,e}(function(e){return e.params=(0,u.mapValues)(e.params,encodeURIComponent),e}(function(e){var t=window.wp.data.select("extendify-templates/data").getCurrentImports;return e.params&&(e.params.remaining_imports=t()),e}(e)))}),(function(e){return e}));var ne=function(){var e,t,r,n,a=(r=(0,f.useState)(""),n=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,a=!1,o=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){a=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw o}}return r}}(r,n)||function(e,t){if(e){if("string"==typeof e)return re(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?re(e,t):void 0}}(r,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=a[0],i=a[1],s=l.getState();return delete s.templates,(0,f.useEffect)((function(){s.reloadRequirements.insertCurrentTemplate=1;var e=o.length?null:JSON.stringify(s);window.sessionStorage.setItem("extendify-sdk-reload-session",e)}),[o,s]),V(null==s||null===(e=s.currentPreviewTemplate)||void 0===e||null===(t=e.fields)||void 0===t?void 0:t.required_plugins).then((function(){window.dispatchEvent(new CustomEvent("extendfy::install-required-complete"))})).catch((function(e){var t=e.response;i(t.data.message)})),o?wp.element.createElement(React.Fragment,null,wp.element.createElement(g.Modal,{style:{maxWidth:"500px"},title:(0,p.__)("Error installing plugins",m),isDismissible:!1},(0,p.__)("You have encountered an error that we cannot recover from. Please try again.",m),wp.element.createElement("br",null),wp.element.createElement(g.Notice,{isDismissible:!1,status:"error"},o),wp.element.createElement(g.Button,{isPrimary:!0,onClick:function(){(0,f.render)(wp.element.createElement(ie,{previousState:s}),document.querySelector("#extendify-root"))}},(0,p.__)("Go back",m)))):wp.element.createElement(React.Fragment,null,wp.element.createElement(g.Modal,{title:(0,p.__)("Installing plugins",m),isDismissible:!1},wp.element.createElement(g.Button,{style:{width:"100%"},disabled:!0,isPrimary:!0,isBusy:!0,onClick:function(){}},(0,p.__)("Installing...",m))))};function ae(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function oe(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var ie=function(t){var r,n,a,o,i,s,u,c,l,d,y=(0,e.dispatch)("extendify-templates/data"),h=y.setSpecificState,v=y.setCurrentPreviewTemplate,w=(0,e.select)("extendify-templates/data").getCurrentPreviewTemplate,b=(l=(0,f.useState)(!0),d=2,function(e){if(Array.isArray(e))return e}(l)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,a=!1,o=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){a=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw o}}return r}}(l,d)||function(e,t){if(e){if("string"==typeof e)return oe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?oe(e,t):void 0}}(l,d)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),E=b[0],S=b[1],x=w(),_=function(){t.forceOpen||(S(!1),t.previousState&&(h(t.previousState),v(x)),(0,f.render)(wp.element.createElement(tt,null),document.querySelector("#extendify-root")))},P=function(){var e,t=(e=regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:S(!1),(0,f.render)(wp.element.createElement(ne,null),document.querySelector("#extendify-root"));case 2:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){ae(o,n,a,i,s,"next",e)}function s(e){ae(o,n,a,i,s,"throw",e)}i(void 0)}))});return function(){return t.apply(this,arguments)}}(),A=null!==(r=null===(n=t.previousState)||void 0===n||null===(a=n.currentPreviewTemplate)||void 0===a||null===(o=a.fields)||void 0===o?void 0:o.type)&&void 0!==r?r:"template";return wp.element.createElement(React.Fragment,null,E&&wp.element.createElement(g.Modal,{title:null!==(i=t.title)&&void 0!==i?i:(0,p.__)("Install required plugins",m),closeButtonLabel:(0,p.__)("No thanks, take me back",m),onRequestClose:_},wp.element.createElement("p",{style:{maxWidth:"400px"}},null!==(s=t.message)&&void 0!==s?s:(0,p.__)((0,p.sprintf)("There is just one more step. This %s requires the following to be automatically installed:",A),m)),(null===(u=t.message)||void 0===u?void 0:u.length)>0||wp.element.createElement("ul",null,wp.element.createElement("li",null,"Editor Plus")),wp.element.createElement(g.ButtonGroup,null,wp.element.createElement(g.Button,{isPrimary:!0,onClick:P},null!==(c=t.buttonLabel)&&void 0!==c?c:(0,p.__)("Install Plugins",m)),t.forceOpen||wp.element.createElement(g.Button,{isTertiary:!0,onClick:_,style:{boxShadow:"none",margin:"0 4px"}},(0,p.__)("No thanks, take me back",m)))))};function se(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function ue(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){se(o,n,a,i,s,"next",e)}function s(e){se(o,n,a,i,s,"throw",e)}i(void 0)}))}}var ce=function(){var e=ue(regeneratorRuntime.mark((function e(t){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=l.getState(),e.next=3,Q(t);case 3:return e.t0=!e.sent,e.t1=function(){return ue(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)})))()},e.t2=function(){return ue(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e){(0,f.render)(wp.element.createElement(ie,{previousState:r}),document.querySelector("#extendify-root")),window.addEventListener("extendfy::install-required-complete",(function(){e()}))})));case 1:case"end":return e.stop()}}),e)})))()},e.abrupt("return",{id:"hasRequiredPlugins",pass:e.t0,allow:e.t1,deny:e.t2});case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();function le(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function pe(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){le(o,n,a,i,s,"next",e)}function s(e){le(o,n,a,i,s,"throw",e)}i(void 0)}))}}function fe(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var me=function(){var e,t,r,n,a=(r=(0,f.useState)(""),n=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,a=!1,o=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){a=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw o}}return r}}(r,n)||function(e,t){if(e){if("string"==typeof e)return fe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?fe(e,t):void 0}}(r,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=a[0],i=a[1],s=l.getState();return delete s.templates,(0,f.useEffect)((function(){s.reloadRequirements.insertCurrentTemplate=1;var e=o.length?null:JSON.stringify(s);window.sessionStorage.setItem("extendify-sdk-reload-session",e)}),[o,s]),V(null==s||null===(e=s.currentPreviewTemplate)||void 0===e||null===(t=e.fields)||void 0===t?void 0:t.required_plugins).then(pe(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new Promise((function(e){return setTimeout(e,1500)}));case 2:window.dispatchEvent(new CustomEvent("extendfy::activate-required-complete"));case 3:case"end":return e.stop()}}),e)})))).catch((function(e){var t=e.response;i(t.data.message)})),o?wp.element.createElement(React.Fragment,null,wp.element.createElement(g.Modal,{style:{maxWidth:"500px"},title:(0,p.__)("Error Activating plugins",m),isDismissible:!1},(0,p.__)("You have encountered an error that we cannot recover from. Please try again.",m),wp.element.createElement("br",null),wp.element.createElement(g.Notice,{isDismissible:!1,status:"error"},o),wp.element.createElement(g.Button,{isPrimary:!0,onClick:function(){(0,f.render)(wp.element.createElement(he,{previousState:s}),document.querySelector("#extendify-root"))}},(0,p.__)("Go back",m)))):wp.element.createElement(React.Fragment,null,wp.element.createElement(g.Modal,{title:(0,p.__)("Activating plugins",m),isDismissible:!1},wp.element.createElement(g.Button,{style:{width:"100%"},disabled:!0,isPrimary:!0,isBusy:!0,onClick:function(){}},(0,p.__)("Activating...",m))))};function de(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function ye(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var he=function(t){var r,n,a,o,i,s,u,c=(0,e.dispatch)("extendify-templates/data"),l=c.setSpecificState,d=c.setCurrentPreviewTemplate,y=(0,e.select)("extendify-templates/data").getCurrentPreviewTemplate,h=(s=(0,f.useState)(!0),u=2,function(e){if(Array.isArray(e))return e}(s)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,a=!1,o=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){a=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw o}}return r}}(s,u)||function(e,t){if(e){if("string"==typeof e)return ye(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ye(e,t):void 0}}(s,u)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),v=h[0],w=h[1],b=y(),E=function(){w(!1),l(t.previousState),d(b),(0,f.render)(wp.element.createElement(tt,null),document.querySelector("#extendify-root"))},S=function(){var e,t=(e=regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:w(!1),(0,f.render)(wp.element.createElement(me,null),document.querySelector("#extendify-root"));case 2:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){de(o,n,a,i,s,"next",e)}function s(e){de(o,n,a,i,s,"throw",e)}i(void 0)}))});return function(){return t.apply(this,arguments)}}(),x=null!==(r=null===(n=t.previousState)||void 0===n||null===(a=n.currentPreviewTemplate)||void 0===a||null===(o=a.fields)||void 0===o?void 0:o.type)&&void 0!==r?r:"template";return wp.element.createElement(React.Fragment,null,v&&wp.element.createElement(g.Modal,{title:(0,p.__)("Activate required plugins",m),closeButtonLabel:(0,p.__)("No thanks, return to library",m),onRequestClose:E},wp.element.createElement("p",{style:{maxWidth:"400px"}},null!==(i=t.message)&&void 0!==i?i:(0,p.__)((0,p.sprintf)("There is just one more step. This %s requires the following plugins to be activated:",x),m)),wp.element.createElement("ul",null,wp.element.createElement("li",null,"Editor Plus")),wp.element.createElement(g.ButtonGroup,null,wp.element.createElement(g.Button,{isPrimary:!0,onClick:S},(0,p.__)("Activate Plugins",m)),t.showClose&&wp.element.createElement(g.Button,{isTertiary:!0,onClick:E,style:{boxShadow:"none",margin:"0 4px"}},(0,p.__)("No thanks, return to library",m)))))};function ve(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function ge(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){ve(o,n,a,i,s,"next",e)}function s(e){ve(o,n,a,i,s,"throw",e)}i(void 0)}))}}var we=function(){var e=ge(regeneratorRuntime.mark((function e(t){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=l.getState(),e.next=3,ee(t);case 3:return e.t0=!e.sent,e.t1=function(){return ge(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)})))()},e.t2=function(){return ge(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e){(0,f.render)(wp.element.createElement(he,{previousState:r,showClose:!0}),document.querySelector("#extendify-root")),window.addEventListener("extendfy::activate-required-complete",(function(){e()}))})));case 1:case"end":return e.stop()}}),e)})))()},e.abrupt("return",{id:"hasPluginsActivated",pass:e.t0,allow:e.t1,deny:e.t2});case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();function be(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function Ee(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Se=function(){var t,r,n=(t=(0,f.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,a=!1,o=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){a=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw o}}return r}}(t,r)||function(e,t){if(e){if("string"==typeof e)return Ee(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ee(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),a=n[0],o=n[1],i=(0,(0,e.select)("core/editor").isEditedPostDirty)(),s=function(){var t,r=(t=regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o(!0),t.next=3,(0,e.dispatch)("core/editor").savePost();case 3:o(!1);case 4:case"end":return t.stop()}}),t)})),function(){var e=this,r=arguments;return new Promise((function(n,a){var o=t.apply(e,r);function i(e){be(o,n,a,i,s,"next",e)}function s(e){be(o,n,a,i,s,"throw",e)}i(void 0)}))});return function(){return r.apply(this,arguments)}}(),u=function(){location.reload()};return i?wp.element.createElement(React.Fragment,null,wp.element.createElement(g.Modal,{title:(0,p.__)("Reload required",m),isDismissible:!1},wp.element.createElement("p",{style:{maxWidth:"400px"}},(0,p.__)("Just one more thing! We need to reload the page to continue.",m)),wp.element.createElement(g.ButtonGroup,null,wp.element.createElement(g.Button,{isPrimary:!0,onClick:u,disabled:a},(0,p.__)("Reload page",m)),wp.element.createElement(g.Button,{isSecondary:!0,onClick:s,isBusy:a,style:{margin:"0 4px"}},(0,p.__)("Save changes",m))))):(u(),null)};function xe(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function _e(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){xe(o,n,a,i,s,"next",e)}function s(e){xe(o,n,a,i,s,"throw",e)}i(void 0)}))}}var Pe=function(){var e=_e(regeneratorRuntime.mark((function e(){var t,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=l.getState(),e.abrupt("return",{id:"needsPageReload",pass:!(null!=r&&null!==(t=r.reloadRequirements)&&void 0!==t&&t.required),allow:function(){return _e(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)})))()},deny:function(){return _e(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(){(0,f.render)(wp.element.createElement(Se,null),document.querySelector("#extendify-root"))})));case 1:case"end":return e.stop()}}),e)})))()}});case 2:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();function Ae(e,t){var r;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return Te(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Te(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:a}}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 o,i=!0,s=!1;return{s:function(){r=e[Symbol.iterator]()},n:function(){var e=r.next();return i=e.done,e},e:function(e){s=!0,o=e},f:function(){try{i||null==r.return||r.return()}finally{if(s)throw o}}}}function Te(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function ke(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function Oe(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){ke(o,n,a,i,s,"next",e)}function s(e){ke(o,n,a,i,s,"throw",e)}i(void 0)}))}}function Ce(e){return function(){return new Re(e.apply(this,arguments))}}function Re(e){var t,r;function n(t,r){try{var o=e[t](r),i=o.value,s=i instanceof je;Promise.resolve(s?i.wrapped:i).then((function(e){s?n("return"===t?"return":"next",e):a(o.done?"return":"normal",e)}),(function(e){n("throw",e)}))}catch(e){a("throw",e)}}function a(e,a){switch(e){case"return":t.resolve({value:a,done:!0});break;case"throw":t.reject(a);break;default:t.resolve({value:a,done:!1})}(t=t.next)?n(t.key,t.arg):r=null}this._invoke=function(e,a){return new Promise((function(o,i){var s={key:e,arg:a,resolve:o,reject:i,next:null};r?r=r.next=s:(t=r=s,n(e,a))}))},"function"!=typeof e.return&&(this.return=void 0)}function je(e){this.wrapped=e}function Ie(){return(Ie=Oe(regeneratorRuntime.mark((function e(t){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=Ne(t);case 1:return e.next=4,r.next();case 4:if(!e.sent.done){e.next=7;break}return e.abrupt("break",9);case 7:e.next=1;break;case 9:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ne(e){return Le.apply(this,arguments)}function Le(){return(Le=Ce(regeneratorRuntime.mark((function e(t){var r,n,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=Ae(t),e.prev=1,r.s();case 3:if((n=r.n()).done){e.next=9;break}return a=n.value,e.next=7,a();case 7:e.next=3;break;case 9:e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),r.e(e.t0);case 14:return e.prev=14,r.f(),e.finish(14);case 17:case"end":return e.stop()}}),e,null,[[1,11,14,17]])})))).apply(this,arguments)}function qe(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}"function"==typeof Symbol&&Symbol.asyncIterator&&(Re.prototype[Symbol.asyncIterator]=function(){return this}),Re.prototype.next=function(e){return this._invoke("next",e)},Re.prototype.throw=function(e){return this._invoke("throw",e)},Re.prototype.return=function(e){return this._invoke("return",e)};const Be=(0,v.compose)([(0,v.withState)({restrictions:[]}),(0,e.withSelect)((function(e){var t=e("extendify-templates/data"),r=t.getCurrentPreviewTemplate,n=t.getAppliedFilter,a=t.getCurrentImports,o=t.getMaxImports,i=t.getAuthenticationStatus,s=e("core/editor").getEditedPostAttribute,c=r(),l=(0,u.get)(c,"fields.code");return{template:r(),currentCategory:n("categories"),shortCode:l,postMeta:s("meta"),currentImports:a(),maxImports:o(),isAuthenticated:i()}})),(0,e.withDispatch)((function(e,t){var r=t.currentCategory,n=t.template,a=t.currentImports,o=t.restrictions,i=e("extendify-templates/data"),s=i.setFilters,c=i.setCurrentScreen,l=i.setCurrentPreviewTemplate,f=i.setLibraryPreviewStatus,m=i.setImportsCount;return{onImport:function(){(function(e){return Ie.apply(this,arguments)})(o).then((function(){f(!1),D(n).then((function(){var t=e("core/notices").createNotice,r=a-1;m(r),localStorage.setItem("etfy__library_imports_left",r),t("info",(0,p.__)("Template Added"),{isDismissible:!0,type:"snackbar"})}))}))},applyCategory:function(e){(0,u.isEqual)(e,(0,u.head)(r))||s({categories:[e]}),l({}),c("templates")}}}))])((function(t){var r,n,a=t.template,o=t.onImport,i=t.applyCategory,s=t.setState,c=t.currentImports,l=t.isAuthenticated,d=[(0,u.get)(a,"fields.screenshot[0].url"),(0,u.get)(a,"fields.title"),(0,u.get)(a,"fields.categories"),(0,u.get)(a,"fields.required_plugins",[])],y=d[0],h=d[1],v=d[2],w=d[3],b=0<c,E=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{hasRequiredPlugins:ce,hasPluginsActivated:we,needsPageReload:Pe,stack:[],check:function(e){var r=this;return Oe(regeneratorRuntime.mark((function n(){var a,o,i;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:a=Ae(t),n.prev=1,i=regeneratorRuntime.mark((function t(){var n,a;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=o.value,t.next=3,r["".concat(n)](e);case 3:a=t.sent,setTimeout((function(){r.stack.push(a.pass?a.allow:a.deny)}),0);case 5:case"end":return t.stop()}}),t)})),a.s();case 4:if((o=a.n()).done){n.next=8;break}return n.delegateYield(i(),"t0",6);case 6:n.next=4;break;case 8:n.next=13;break;case 10:n.prev=10,n.t1=n.catch(1),a.e(n.t1);case 13:return n.prev=13,a.f(),n.finish(13);case 16:case"end":return n.stop()}}),n,null,[[1,10,13,16]])})))()},reset:function(){this.stack=[],(0,(0,e.dispatch)("extendify-templates/data").setReloadRequirements)({required:0})}}}(["hasRequiredPlugins","hasPluginsActivated","needsPageReload"]),S=(r=(0,f.useState)(!1),n=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,a=!1,o=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){a=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw o}}return r}}(r,n)||function(e,t){if(e){if("string"==typeof e)return qe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?qe(e,t):void 0}}(r,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),x=S[0],_=S[1];return(0,f.useEffect)((function(){return E.check(a).then((function(){s({restrictions:E.stack}),_(!0)})),function(){E.reset(),_(!1)}}),[a]),a?wp.element.createElement("div",{className:"etfy-template-preview"},wp.element.createElement("div",{className:"etfy-template-media"},wp.element.createElement("img",{src:y})),wp.element.createElement("div",{className:"etfy-template-details"},x?wp.element.createElement(React.Fragment,null,!b&&!l&&wp.element.createElement(g.Button,{className:"etfy-upgrade-btn",href:"https://extendify.com/?utm_source=sdk&utm_medium=free_beta_2&utm_campaign=sdk_ref",target:"__blank"},(0,p.__)("Sign up for free to add",m)),(l||b)&&wp.element.createElement(g.Button,{isPrimary:!0,onClick:o},(0,p.__)("Add",m))):wp.element.createElement(g.Button,{disabled:!0},(0,p.__)("Loading...",m)),wp.element.createElement("div",null,wp.element.createElement("h2",{className:"etfy-template-title"},h),wp.element.createElement("div",{className:"etfy-template-categories"},(0,u.map)(v,(function(e,t){return wp.element.createElement(g.Button,{isLink:!0,key:t,className:"etfy-template-category",onClick:function(){return i(e)}},(0,p.__)(e,m))}))),w.length?wp.element.createElement(React.Fragment,null,wp.element.createElement("hr",null),wp.element.createElement("div",{className:"etfy-template-required-plugins"},wp.element.createElement("strong",null,"Plugins required: "),wp.element.createElement("ul",{style:{display:"inline"}},(0,u.map)(w,(function(e,t){return wp.element.createElement("li",{style:{display:"inline"},key:t},(0,p.__)("Editor Plus",m))}))))):null))):null}));function De(e){return function(e){if(Array.isArray(e))return Fe(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Fe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Fe(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Fe(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Ue=(0,v.compose)([(0,v.withState)({loading:!1,error:!1}),(0,e.withSelect)((function(e){var t=e("extendify-templates/data");return{getTemplates:t.getTemplates,filters:(0,t.getAppliedFilters)()}})),(0,e.withDispatch)((function(e){return{setTemplates:e("extendify-templates/data").setTemplates}}))])((function(e){var t,r=e.getTemplates,n=e.filters,a=e.loading,o=e.setTemplates,i=e.setState,s=function(){var e=r(),t=(0,u.get)(e,"offset");(0,u.isEmpty)(t)||a||(i({loading:!0,error:!1}),K(n,{offset:t}).then((function(t){var r=(0,u.get)(t,"offset"),n=(0,u.get)(t,"records");o({offset:r,records:[].concat(De((0,u.get)(e,"records")),De(n))}),i({loading:!1,error:!1})})).catch((function(){i({loading:!1,error:!0})})))},c=function(e){var t=e.target;t.scrollHeight-t.scrollTop===t.clientHeight&&s()};return(0,f.useEffect)((function(){var e=document.querySelector(".etfy-templates-library-modal-root");if(e)return e.addEventListener("scroll",c),function(){return e.removeEventListener("scroll",c,{passive:!0})}}),[]),null!==(t=r())&&void 0!==t&&t.offset?wp.element.createElement("div",{className:"etfy-load-more"},wp.element.createElement(g.Button,{isBusy:a,disabled:a,onClick:s,isDefault:!0},a?(0,p.__)("Loading",m):(0,p.__)("Load More",m))):null})),Me=(0,v.compose)([(0,e.withSelect)((function(e){return{currentSearch:(0,e("extendify-templates/data").getAppliedFilter)("search")}})),(0,e.withDispatch)((function(){return{}}))])((function(e){var t=e.currentSearch;return wp.element.createElement("div",{className:"etfy-not-results-found__root"},wp.element.createElement("h2",null,(0,p.__)('Your search "'.concat(t,'" - did not match any designs.'))),wp.element.createElement("p",null,(0,p.__)("Try searching again or select one of the categories from the list on the left.")))})),Ke=(0,v.compose)([(0,e.withSelect)((function(e){var t=e("extendify-templates/data"),r=t.getTemplates,n=t.getCurrentPreviewTemplate,a=t.getLoadingStatus,o=t.getAppliedFilter;return{templates:r(),shouldPreviewTemplate:!(0,u.isEmpty)(n()),loadingStatus:a("templates"),currentCategory:o("categories")}}))])((function(e){var t=e.templates,r=e.shouldPreviewTemplate,n=e.loadingStatus,a=e.currentCategory,o=R()({"etfy-templates-library-content":!0,"etfy-templates-library-grid":!r}),i=R()({"etfy-templates-library-content-root":!0,"etfy-templates-loading":n}),s=(0,u.get)(t,"records");return wp.element.createElement("div",{className:i},!r&&!n&&wp.element.createElement("div",{className:"etfy-templates-description--small"},wp.element.createElement("h3",null,"Templates",wp.element.createElement("span",null,"|"),(0,u.head)(a))),(0,u.isEmpty)(s)&&!n&&wp.element.createElement(Me,null),wp.element.createElement("div",{className:o},n?null:r?wp.element.createElement(Be,null):wp.element.createElement((function(){return(0,u.isEmpty)(s)?null:s.map((function(e,t){return wp.element.createElement(j,{key:t,template:e})}))}),null),n&&wp.element.createElement("div",{className:"etfy-loading"},wp.element.createElement(g.Spinner,null))),!r&&!n&&wp.element.createElement(Ue,null))})),We=wp.blockEditor,He=function(e){var t=e.className,r=e.onChange,n=e.value,a=e.placeholder,o=e.onKeyDown,i=void 0===o?u.noop:o;return wp.element.createElement("div",{className:R()("block-editor-inserter__search",t)},(0,u.isFunction)(We.__experimentalSearchForm)?wp.element.createElement(We.__experimentalSearchForm,{placeholder:a,onChange:function(e){return r(e)},autoComplete:"off",value:n||""}):wp.element.createElement(g.TextControl,{style:{padding:"8px 8px"},onChange:r,onKeyDown:i,placeholder:a,value:n,autoComplete:"off"}))},Ve=function(e){return wp.element.createElement("div",{className:"etfy-templates-library-sidebar-menu"},(0,u.has)(e,"title")&&!(0,u.isEmpty)(e.title)&&wp.element.createElement("h2",null,e.title),e.children)},$e=(0,v.compose)([(0,e.withSelect)((function(){var e=window.wp.data.select("extendify-templates/data"),t=e.getMaxImports,r=e.getCurrentImports;return{maxImports:t(),currentImports:r()}}))])((function(e){var t=e.maxImports,r=e.currentImports;return wp.element.createElement(g.Flex,{className:"etfy-imports-counter",justify:"flex-start"},wp.element.createElement("h4",null,(0,p.__)("Imports Left:",m)),wp.element.createElement("span",null,"".concat(r," / ").concat(t)))})),ze=(0,v.compose)([(0,v.withState)({apiKey:"",loading:!1,error:!1}),(0,e.withDispatch)((function(e){return{setApiKey:e("extendify-templates/data").setApiKey}}))])((function(e){var t=e.apiKey,r=e.setState,n=e.setApiKey,a=e.loading,o=e.error,i=e.onSuccess,s=e.onError;return wp.element.createElement("div",{className:"etfy-auth-api-form"},wp.element.createElement(g.TextControl,{className:R()({"etfy-auth-field":!0,"etfy-auth-error":o}),value:t,onChange:function(e){return r({apiKey:e})},placeholder:(0,p.__)("API Key",m)}),wp.element.createElement(g.Button,{isPrimary:!0,onClick:function(){(0,u.isEmpty)(t)||(r({loading:!0,error:!1}),setTimeout((function(){(0,u.isEqual)("3458290385902375729843",t)?(r({loading:!1,error:!1}),n(t),localStorage.setItem("etfy_library__key",t),i()):(r({loading:!1,error:!0}),s())}),500))},isBusy:a},a?(0,p.__)("Activating",m):(0,p.__)("Activate",m)))})),Xe=(0,v.compose)([g.withNotices,(0,v.withState)({displayApiForm:!1}),(0,e.withSelect)((function(e){return{isAuthenticated:(0,e("extendify-templates/data").getAuthenticationStatus)()}}))])((function(e){var t=e.displayApiForm,r=e.setState,n=e.noticeOperations,a=e.noticeUI,o=e.isAuthenticated;return wp.element.createElement("div",{className:"etfy-library-auth"},wp.element.createElement("div",{className:"etfy-library-auth-notices"},a),o?null:wp.element.createElement(React.Fragment,null,wp.element.createElement($e,null),wp.element.createElement("div",{className:"etfy-library-auth__header"},wp.element.createElement(g.Button,{className:"etfy-upgrade__btn",href:"https://extendify.com/?utm_source=sdk&utm_medium=free_beta&utm_campaign=sdk_ref",target:"__blank"},(0,p.__)("Sign up for free",m)),wp.element.createElement(g.Button,{className:"etfy-add-key__btn",onClick:function(){return r({displayApiForm:!t})}},t?(0,p.__)("Close"):(0,p.__)("Log in"))),t&&wp.element.createElement(ze,{onError:function(){return n.createErrorNotice((0,p.__)("You have entered an invalid API key",m))},onSuccess:function(){return n.createNotice({content:(0,p.__)("Activation key added successfully!",m),status:"success"})}})))}));function Je(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,a=!1,o=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){a=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw o}}return r}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Ye(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ye(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ye(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Ge=(0,v.compose)([(0,v.withState)({searchState:""}),(0,e.withSelect)((function(e){var t=e("extendify-templates/data"),r=t.getTemplateTypes,n=t.getAppliedFilter,a=t.getTemplates;return{types:r(),currentType:n("type"),currentCategories:n("categories"),currentSearch:n("search"),templates:a()}})),(0,e.withDispatch)((function(e){var t=e("extendify-templates/data");return{setFilters:t.setFilters,setCurrentPreviewTemplate:t.setCurrentPreviewTemplate,setCurrentScreen:t.setCurrentScreen}}))])((function(e){var t=e.types,r=e.setFilters,n=e.currentType,a=e.currentSearch,o=e.currentCategories,i=e.setCurrentPreviewTemplate,s=e.searchState,c=e.setState,l=e.setCurrentScreen,d=e.templates,y=Je((0,f.useState)([]),2),h=y[0],v=y[1],w=Je((0,f.useState)(""),2),b=w[0],E=w[1],S=h.filter((function(e){return q(a,e)}));(0,f.useEffect)((function(){z().then((function(e){return v(e)})).catch((function(e){var t=e.message;return E(t)}))}),[]);var x=(0,f.useRef)((0,u.debounce)((function(e){r({search:e,categories:[]}),l("templates"),i({})}),500)).current,_=function(e){var t=0===(0,u.get)(d,"records.length");t&&c({searchState:""}),o.includes(e)||r({categories:e?[e]:[],search:t?"":a}),i({}),l("templates")};(0,f.useEffect)((function(){return c({searchState:a})}),[]);var P=!(0===S.length&&(0,u.get)(d,"records.length")>0&&!(0,u.isEmpty)(a));return wp.element.createElement("div",{className:"etfy-templates-library-sidebar"},wp.element.createElement("div",{className:"etfy-templates-library-sidebar__wrapper"},wp.element.createElement("div",{className:"etfy-templates-library-top__area"},wp.element.createElement(Xe,null),wp.element.createElement(He,{value:s,placeholder:(0,p.__)("What are you looking for?",m),onChange:function(e){c({searchState:e}),x(e)}}),wp.element.createElement("hr",{className:"etfy-divider"})),wp.element.createElement(Ve,{title:(0,p.__)("Type",m)},(0,u.map)(t,(function(e,t){return wp.element.createElement(g.MenuItem,{onClick:function(){return function(e){(0,u.isEqual)(n,e)||r({type:e,categories:o.length?[(0,u.head)(o)]:[]}),i({})}(e)},className:R()({"etfy-menu-item":!0,"etfy-selected-category":(0,u.isEqual)((0,u.toLower)(e),n)}),key:t},(0,u.capitalize)(e))}))),P&&wp.element.createElement(Ve,{title:(0,p.__)("Categories",m)},wp.element.createElement((function(e){return b.length?b:h.length?wp.element.createElement(React.Fragment,null,wp.element.createElement(g.MenuItem,{className:R()({"etfy-selected-category":!o.length,"etfy-menu-item":!0}),onClick:function(){return _()}},(0,p.__)("All",m)),(0,u.map)(e.categories,(function(e,t){var r=(0,u.includes)(o,e),n=!!(0,u.isEmpty)(a)||q(a,e);return 0===(0,u.get)(d,"records.length")&&(n=!0),n&&wp.element.createElement(g.MenuItem,{key:t,className:R()({"etfy-selected-category":r,"etfy-menu-item":!0}),onClick:function(){return _(e)}},(0,u.capitalize)(e))}))):(0,p.__)("Loading categories...",m)}),{categories:h,type:n}))))}));function Qe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ze(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Qe(Object(r),!0).forEach((function(t){et(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Qe(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function et(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const tt=(0,v.compose)([(0,e.withSelect)((function(e){var t=e("extendify-templates/data"),r=t.getLibraryPreviewStatus,n=t.getAppliedFilters,a=t.getCurrentPreviewTemplate,o=t.getCurrentScreen;return{previewStatus:r(),appliedFilters:n(),currentScreen:o(),isPreviewingTemplate:function(){var e=a();return!(0,u.isEmpty)(e)}}})),(0,e.withDispatch)((function(e,t){var r=t.currentScreen,n=e("extendify-templates/data"),a=n.setLibraryPreviewStatus,o=n.setTemplates,i=n.setLoadingStatus,s=n.setCurrentPreviewTemplate,c=n.setCurrentScreen;return{goBack:function(){s({}),(0,u.isEqual)(r,"single-template")&&c("templates"),(0,u.isEqual)(r,"templates")&&c("menu")},closeLibraryModal:function(){a(!1)},setTemplates:o,setLoadingStatus:i}}))])((function(e){var t=e.previewStatus,r=e.closeLibraryModal,n=e.appliedFilters,a=e.setTemplates,o=e.setLoadingStatus,i=e.isPreviewingTemplate,s=e.currentScreen,c=e.goBack,l=(0,f.useRef)(!1),y=(0,f.useRef)(!0);return(0,f.useEffect)((function(){l.current&&t?(o("templates",!0),K(n,{initial:+y.current}).then((function(e){var t=(0,u.get)(e,"offset");a(Ze(Ze({},e),{},{offset:(0,u.isEmpty)(t)?"":t})),o("templates",!1),y.current&&(y.current=!1)})).catch((function(){a({records:[],offset:""}),o("templates",!1)}))):l.current=!0}),[n,t]),t?wp.element.createElement(g.Modal,{shouldCloseOnClickOutside:!1,icon:wp.element.createElement(g.Icon,{icon:"arrow-left-alt2",onClick:c,className:"etfy-back-button"}),title:(0,p.__)(wp.element.createElement(d,{icon:"library"})),className:"etfy-templates-library-modal-root ".concat("etfy-screen-".concat(s)),onRequestClose:r,closeLabel:(0,p.__)("close",m)},wp.element.createElement("div",{className:R()(et({"etfy-templates-library-modal":!0,"etfy-previewing-template":i()},"etfy-screen-".concat(s),!0))},wp.element.createElement(Ge,null),wp.element.createElement(Ke,null))):null}));function rt(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function nt(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){rt(o,n,a,i,s,"next",e)}function s(e){rt(o,n,a,i,s,"throw",e)}i(void 0)}))}}window.wp.domReady((function(){var t,r=JSON.parse(window.sessionStorage.getItem("extendify-sdk-reload-session"));r&&(t=r,window._wpLoadBlockEditor.then((function(){var r;if(window.sessionStorage.removeItem("extendify-sdk-reload-session"),function(t){var r=(0,e.dispatch)("extendify-templates/data"),n=r.setSpecificState,a=r.setCurrentPreviewTemplate;n(t),a(null==t?void 0:t.currentPreviewTemplate)}(t),null!=t&&null!==(r=t.reloadRequirements)&&void 0!==r&&r.insertCurrentTemplate){var n=(0,e.dispatch)("extendify-templates/data"),a=n.setLibraryPreviewStatus,o=n.setImportsCount,i=(0,e.select)("extendify-templates/data").getCurrentImports;a(!1),setTimeout((function(){(null==t?void 0:t.currentPreviewTemplate)&&D(t.currentPreviewTemplate).then((function(){var t=(0,e.dispatch)("core/notices").createNotice,r=i()-1;o(r),localStorage.setItem("etfy__library_imports_left",r),t("info",(0,p.__)("Template Added"),{isDismissible:!0,type:"snackbar"})}))}),0)}})));var n=document.createElement("div");n.id="extendify-root",document.querySelector("#editor").insertAdjacentElement("afterend",n),(0,f.render)(wp.element.createElement(tt,null),n)}));var at={register:function(){var e=this;window.addEventListener("extendify-sdk::softerror-encountered",(function(t){e[(0,u.camelCase)(t.detail.type)](t.detail)}))},versionOutdated:function(e){(0,f.render)(wp.element.createElement(ie,{title:e.data.title,message:e.data.message,buttonLabel:e.data.buttonLabel,forceOpen:!0}),document.querySelector("#extendify-root")),window.addEventListener("extendfy::install-required-complete",nt(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return window.sessionStorage.removeItem("extendify-sdk-reload-session"),e.next=3,new Promise((function(e){return setTimeout(e,1500)}));case 3:(0,f.render)(wp.element.createElement(Se,null),document.querySelector("#extendify-root"));case 4:case"end":return e.stop()}}),e)}))))}};window.addEventListener("extendify-sdk::template-inserted",(function(e){var t;W(null===(t=e.detail)||void 0===t?void 0:t.template)})),at.register()})()})();
extendify-sdk/public/build/extendify-sdk.js.LICENSE.txt ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ /*!
2
+ Copyright (c) 2017 Jed Watson.
3
+ Licensed under the MIT License (MIT), see
4
+ http://jedwatson.github.io/classnames
5
+ */
extendify-sdk/readme.md ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Extendify Sdk
2
+ ## Development
3
+ ### Requirements
4
+ |Prerequisite| How to check | How to install |
5
+ |--|--| -- |
6
+ | PHP >= 5.5.9 | ``php -v`` | [php.net](https://www.php.net/manual/en/install.php) |
7
+ |Node.js >= 6.x.x | ``node -v`` |[nodejs.org](https://nodejs.org/en/) |
8
+
9
+ ### Installation
10
+ run `composer install`
11
+ run ``npm ci`` in the command line for installing packages/dependencies. Or run ``npm update`` for updating dependencies
12
+
13
+ ### Development
14
+ - Run ``npm run build`` to run build
15
+ - Run ``npm run watch`` to command to compile and watch source files for changes while developing.
extendify-sdk/readme.txt ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ === Extendify Sdk ===
2
+ Requires at least: 5.4
3
+ Stable tag: 1.7
4
+ Requires PHP: 5.6
5
+ Tested up to: 5.7.0
extendify-sdk/routes/api.php ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Api routes
4
+ */
5
+
6
+ if (!defined('ABSPATH')) {
7
+ die('No direct access.');
8
+ }
9
+
10
+ use Extendify\ExtendifySdk\ApiRouter;
11
+ use Extendify\ExtendifySdk\Controllers\PluginController;
12
+ use Extendify\ExtendifySdk\Controllers\CategoryController;
13
+ use Extendify\ExtendifySdk\Controllers\TemplateController;
14
+
15
+ \add_action(
16
+ 'rest_api_init',
17
+ function () {
18
+ ApiRouter::get('/active-plugins', [PluginController::class, 'active']);
19
+ ApiRouter::get('/plugins', [PluginController::class, 'index']);
20
+ ApiRouter::post('/plugins', [PluginController::class, 'install']);
21
+
22
+ ApiRouter::get('/categories', [CategoryController::class, 'index']);
23
+ ApiRouter::post('/templates', [TemplateController::class, 'index']);
24
+ ApiRouter::post('/templates/(?P<template_id>[a-zA-Z0-9-]+)', [TemplateController::class, 'single']);
25
+ }
26
+ );
extendify-sdk/src/gutenberg/api/Categories.js ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ import { Axios as api } from '.'
2
+
3
+ const Categories = {
4
+ getAll() {
5
+ return api.get('categories')
6
+ },
7
+ }
8
+
9
+ export default Categories
extendify-sdk/src/gutenberg/api/Plugins.js ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { Axios as api } from '.'
2
+
3
+ const Plugins = {
4
+ getInstalled() {
5
+ return api.get('plugins')
6
+ },
7
+ installAndActivate(plugins = []) {
8
+ const formData = new FormData()
9
+ formData.append('plugins', JSON.stringify(plugins))
10
+ return api.post(
11
+ 'plugins', formData, {
12
+ headers: {
13
+ 'Content-Type': 'multipart/form-data',
14
+ },
15
+ },
16
+ )
17
+ },
18
+ getActivated() {
19
+ return api.get('active-plugins')
20
+ },
21
+ }
22
+
23
+ export default Plugins
extendify-sdk/src/gutenberg/api/Templates.js ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { createTemplatesFilterFormula } from '../functions/index'
2
+ import { get } from 'lodash'
3
+ import { Axios as api } from '.'
4
+
5
+ const Templates = {
6
+ get(filters, params) {
7
+ return api.post('templates', {
8
+ filterByFormula: createTemplatesFilterFormula(filters),
9
+ pageSize: 9,
10
+ categories: get(filters, 'categories'),
11
+ search: get(filters, 'search'),
12
+ type: get(filters, 'type'),
13
+ ...params,
14
+ })
15
+ },
16
+ import(template) {
17
+ return api.post(`templates/${template.id}`, {
18
+ template_id: template.id,
19
+ pageSize: 9,
20
+ template_name: template.fields?.title,
21
+ })
22
+ },
23
+ }
24
+
25
+ export default Templates
extendify-sdk/src/gutenberg/api/index.js ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import axios from 'axios'
2
+ import Templates from './Templates'
3
+ import Plugins from './Plugins'
4
+ import Categories from './Categories'
5
+ import { mapValues } from 'lodash'
6
+
7
+ const Axios = axios.create({
8
+ baseURL: window.extendifySdkData.root,
9
+ headers: {
10
+ 'X-WP-Nonce': window.extendifySdkData.nonce,
11
+ 'X-Requested-With': 'XMLHttpRequest',
12
+ 'X-Extendify': true,
13
+ },
14
+ })
15
+
16
+ function findResponse(response) {
17
+ return Object.prototype.hasOwnProperty.call(response, 'data')
18
+ ? response.data
19
+ : response
20
+ }
21
+
22
+ function handleErrors(error) {
23
+ console.error(error.response)
24
+ // TODO: add a global error message system
25
+ return Promise.reject(findResponse(error.response))
26
+ }
27
+
28
+ function addDefaults(request) {
29
+ const { getCurrentImports } = window.wp.data.select('extendify-templates/data')
30
+ if (request.params) {
31
+ request.params.remaining_imports = getCurrentImports()
32
+ }
33
+ return request
34
+ }
35
+
36
+ function escapeParams(request) {
37
+ request.params = mapValues(request.params, encodeURIComponent)
38
+ return request
39
+ }
40
+
41
+ function checkDevMode(request) {
42
+ request.headers['X-Extendify-Dev-Mode'] = window.location.search.indexOf('DEVMODE') > -1
43
+ return request
44
+ }
45
+
46
+ function checkForSoftError(response) {
47
+ if (Object.prototype.hasOwnProperty.call(response, 'soft_error')) {
48
+ window.dispatchEvent(new CustomEvent('extendify-sdk::softerror-encountered', {
49
+ detail: response.soft_error,
50
+ bubbles: true,
51
+ }))
52
+ }
53
+ return response
54
+ }
55
+
56
+ Axios.interceptors.response.use((response) => checkForSoftError(findResponse(response)),
57
+ (error) => handleErrors(error))
58
+
59
+ // TODO: setup a pipe function instead of this nested pattern
60
+ Axios.interceptors.request.use((request) => checkDevMode(escapeParams(addDefaults(request))),
61
+ (error) => error)
62
+
63
+ export {
64
+ Axios, Templates, Plugins, Categories,
65
+ }
extendify-sdk/src/gutenberg/assets/icons/index.js ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { get } from 'lodash'
2
+
3
+ function Icon({ icon }) {
4
+ const icons = {
5
+ library: (
6
+ <svg xmlns="http://www.w3.org/2000/svg" width={20} height={20} viewBox="0 0 20 20" fill="none">
7
+ <g clipPath="url(#clip0)">
8
+ <mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x={-4} y={0} width={29} height={28}>
9
+ <rect
10
+ width="19.6666"
11
+ height="19.6474"
12
+ transform="matrix(0.699908 0.714233 -0.724976 0.688774 10.2439 0)"
13
+ fill="black"
14
+ />
15
+ </mask>
16
+ <g mask="url(#mask0)">
17
+ <rect
18
+ x="0.00339341"
19
+ y="0.701607"
20
+ width="18.6666"
21
+ height="18.6474"
22
+ transform="matrix(0.715941 0.698161 -0.709154 0.705054 10.4294 -8.1563)"
23
+ stroke="black"
24
+ />
25
+ </g>
26
+ <rect
27
+ width="11.6128"
28
+ height="11.5957"
29
+ transform="matrix(0.710545 0.703466 -0.714551 0.699772 10.0079 0.414024)"
30
+ fill="black"
31
+ />
32
+ <rect
33
+ width="7.53985"
34
+ height="3.68769"
35
+ transform="matrix(0.708475 -0.705736 0.716585 0.697499 4.20924 8.58513)"
36
+ fill="white"
37
+ />
38
+ </g>
39
+ <defs>
40
+ <clipPath id="clip0">
41
+ <rect width={20} height={20} fill="white" />
42
+ </clipPath>
43
+ </defs>
44
+ </svg>
45
+ ),
46
+ }
47
+
48
+ return get(icons, icon)
49
+ }
50
+
51
+ export default Icon
extendify-sdk/src/gutenberg/base/templates-library/index.js ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import TemplatesLibraryModal from '../../components/library-modal/index'
2
+ import { render } from '@wordpress/element'
3
+ import { dispatch, select } from '@wordpress/data'
4
+ import { __ } from '@wordpress/i18n'
5
+ import { hydrateTemplateLibrary, injectTemplate } from '../../functions'
6
+
7
+ window.wp.domReady(() => {
8
+ // Hydrate the state with the user's last state pre-reload
9
+ const stateHydration = JSON.parse(window.sessionStorage.getItem('extendify-sdk-reload-session'))
10
+ stateHydration && maybeHydrateAndInsertPendingTemplate(stateHydration)
11
+
12
+ // Insert into the editor
13
+ const extendify = document.createElement('div')
14
+ extendify.id = 'extendify-root'
15
+ document.querySelector('#editor').insertAdjacentElement('afterend', extendify)
16
+ render(<TemplatesLibraryModal />, extendify)
17
+ })
18
+
19
+ function maybeHydrateAndInsertPendingTemplate(state) {
20
+ window._wpLoadBlockEditor.then(() => {
21
+ // Remove the state from storage
22
+ window.sessionStorage.removeItem('extendify-sdk-reload-session')
23
+
24
+ hydrateTemplateLibrary(state)
25
+
26
+ // If we need to insert the template on load
27
+ if (state?.reloadRequirements?.insertCurrentTemplate) {
28
+ const { setLibraryPreviewStatus, setImportsCount } = dispatch('extendify-templates/data')
29
+ const { getCurrentImports } = select('extendify-templates/data')
30
+ setLibraryPreviewStatus(false)
31
+ setTimeout(() => {
32
+ state?.currentPreviewTemplate && injectTemplate(state.currentPreviewTemplate).then(() => {
33
+ const { createNotice } = dispatch('core/notices')
34
+ const newImportsCount = getCurrentImports() - 1
35
+ setImportsCount(newImportsCount)
36
+ localStorage.setItem('etfy__library_imports_left', newImportsCount)
37
+ createNotice(
38
+ 'info', __('Template Added'), {
39
+ isDismissible: true,
40
+ type: 'snackbar',
41
+ },
42
+ )
43
+ })
44
+ }, 0)
45
+ }
46
+ })
47
+ }
extendify-sdk/src/gutenberg/components/library-auth/api-form.js ADDED
@@ -0,0 +1,89 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+
7
+ import { TextControl, Button } from '@wordpress/components'
8
+ import { __ } from '@wordpress/i18n'
9
+ import { withState, compose } from '@wordpress/compose'
10
+ import { withDispatch } from '@wordpress/data'
11
+ import { isEmpty, isEqual } from 'lodash'
12
+
13
+ /**
14
+ *
15
+ * Custom Imports
16
+ *
17
+ */
18
+
19
+ import { TEXT_DOMAIN } from '../../global'
20
+ import classnames from 'classnames'
21
+
22
+ function ApiForm({ apiKey, setState, setApiKey, loading, error, onSuccess, onError }) {
23
+ const saveKey = () => {
24
+ const fakeKey = '3458290385902375729843'
25
+
26
+ // checking if the api key is not empty
27
+ if (isEmpty(apiKey)) return
28
+
29
+ setState({
30
+ loading: true, error: false,
31
+ })
32
+
33
+ // faking an api request
34
+ setTimeout(() => {
35
+ if (isEqual(fakeKey, apiKey)) {
36
+ setState({
37
+ loading: false, error: false,
38
+ })
39
+
40
+ setApiKey(apiKey)
41
+ // saving this key in localStorage
42
+ localStorage.setItem('etfy_library__key', apiKey)
43
+
44
+ onSuccess()
45
+ } else {
46
+ setState({
47
+ loading: false, error: true,
48
+ })
49
+ onError()
50
+ }
51
+ }, 500)
52
+ }
53
+
54
+ return (
55
+ <div className="etfy-auth-api-form">
56
+ <TextControl
57
+ className={classnames({
58
+ 'etfy-auth-field': true,
59
+ 'etfy-auth-error': error,
60
+ })}
61
+ value={apiKey}
62
+ onChange={(newApiKey) => setState({
63
+ apiKey: newApiKey,
64
+ })}
65
+ placeholder={__('API Key', TEXT_DOMAIN)}
66
+ />
67
+ <Button isPrimary onClick={saveKey} isBusy={loading}>
68
+ {loading
69
+ ? __('Activating', TEXT_DOMAIN)
70
+ : __('Activate', TEXT_DOMAIN)}
71
+ </Button>
72
+ </div>
73
+ )
74
+ }
75
+
76
+ export default compose([
77
+ withState({
78
+ apiKey: '',
79
+ loading: false,
80
+ error: false,
81
+ }),
82
+ withDispatch((dispatch) => {
83
+ const { setApiKey } = dispatch('extendify-templates/data')
84
+
85
+ return {
86
+ setApiKey,
87
+ }
88
+ }),
89
+ ])(ApiForm)
extendify-sdk/src/gutenberg/components/library-auth/index.js ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { Button, withNotices } from '@wordpress/components'
2
+ import { __ } from '@wordpress/i18n'
3
+ import { TEXT_DOMAIN } from '../../global'
4
+ import { withState, compose } from '@wordpress/compose'
5
+ import { withSelect } from '@wordpress/data'
6
+ import ImportsCounter from '../library-imports-counter'
7
+ import ApiForm from './api-form'
8
+
9
+ function LibraryAuth({ displayApiForm, setState, noticeOperations, noticeUI, isAuthenticated }) {
10
+ const toggleApiForm = () => setState({
11
+ displayApiForm: !displayApiForm,
12
+ })
13
+
14
+ return (
15
+ <div className="etfy-library-auth">
16
+ <div className="etfy-library-auth-notices">{noticeUI}</div>
17
+ {!isAuthenticated
18
+ ? (
19
+ <>
20
+ <ImportsCounter />
21
+ <div className="etfy-library-auth__header">
22
+ <Button
23
+ className="etfy-upgrade__btn"
24
+ href={'https://extendify.com/?utm_source=sdk&utm_medium=free_beta&utm_campaign=sdk_ref'}
25
+ target="__blank"
26
+ >
27
+ {__('Sign up for free', TEXT_DOMAIN)}
28
+ </Button>
29
+ <Button className="etfy-add-key__btn" onClick={toggleApiForm}>
30
+ {displayApiForm
31
+ ? __('Close')
32
+ : __('Log in')}
33
+ </Button>
34
+ </div>
35
+ {displayApiForm && (
36
+ <ApiForm
37
+ onError={() =>
38
+ noticeOperations.createErrorNotice(__('You have entered an invalid API key', TEXT_DOMAIN))
39
+ }
40
+ onSuccess={() =>
41
+ noticeOperations.createNotice({
42
+ content: __('Activation key added successfully!', TEXT_DOMAIN),
43
+ status: 'success',
44
+ })
45
+ }
46
+ />
47
+ )}
48
+ </>
49
+ )
50
+ : null}
51
+ </div>
52
+ )
53
+ }
54
+
55
+ export default compose([
56
+ withNotices,
57
+ withState({
58
+ displayApiForm: false,
59
+ }),
60
+ withSelect((select) => {
61
+ const { getAuthenticationStatus } = select('extendify-templates/data')
62
+
63
+ return {
64
+ isAuthenticated: getAuthenticationStatus(),
65
+ }
66
+ }),
67
+ ])(LibraryAuth)
extendify-sdk/src/gutenberg/components/library-auth/style.scss ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .etfy-auth-api-form {
2
+ margin-bottom: $grid-unit-40;
3
+
4
+ .etfy-auth-field {
5
+ margin-bottom: $grid-unit-20;
6
+ }
7
+ }
8
+
9
+ .etfy-library-auth__header {
10
+ display: inline-block;
11
+ margin-bottom: $grid-unit-30;
12
+
13
+ .etfy-upgrade__btn {
14
+ margin-right: $grid-unit-10;
15
+ }
16
+
17
+ .etfy-upgrade__btn {
18
+ @include successButton();
19
+ }
20
+ .etfy-add-key__btn {
21
+ background-color: $gray-200;
22
+ border: 1px solid $gray-300;
23
+ }
24
+ }
extendify-sdk/src/gutenberg/components/library-content/index.js ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Custom Imports
4
+ *
5
+ */
6
+
7
+ import Template from '../library-template/index'
8
+ import TemplatePreview from '../library-template-preview/index'
9
+ import LoadMoreFilter from '../library-load-more/index'
10
+ import classnames from 'classnames'
11
+ import NotFound from '../library-not-found/index'
12
+
13
+ /**
14
+ *
15
+ * Wordpress Dependencies
16
+ *
17
+ */
18
+
19
+ import { compose } from '@wordpress/compose'
20
+ import { Spinner } from '@wordpress/components'
21
+ import { withSelect } from '@wordpress/data'
22
+ import {
23
+ isEmpty, get, head,
24
+ } from 'lodash'
25
+
26
+ function TemplatesLibraryContent({ templates, shouldPreviewTemplate, loadingStatus, currentCategory }) {
27
+ const classes = classnames({
28
+ 'etfy-templates-library-content': true,
29
+ 'etfy-templates-library-grid': !shouldPreviewTemplate, // because grid should only be applied when templates display
30
+ })
31
+
32
+ const rootClasses = classnames({
33
+ 'etfy-templates-library-content-root': true,
34
+ 'etfy-templates-loading': loadingStatus,
35
+ })
36
+
37
+ const templateRecords = get(templates, 'records')
38
+
39
+ const TemplatesGrid = () =>
40
+ !isEmpty(templateRecords)
41
+ ? templateRecords.map((template, index) => <Template key={index} template={template} />)
42
+ : null
43
+
44
+ return (
45
+ <div className={rootClasses}>
46
+ {!shouldPreviewTemplate && !loadingStatus && (
47
+ <div className="etfy-templates-description--small">
48
+ <h3>
49
+ Templates<span>|</span>
50
+ {head(currentCategory)}
51
+ </h3>
52
+ </div>
53
+ )}
54
+ {isEmpty(templateRecords) && !loadingStatus && <NotFound />}
55
+ <div className={classes}>
56
+ {!loadingStatus
57
+ ? !shouldPreviewTemplate
58
+ ? <TemplatesGrid />
59
+ : <TemplatePreview />
60
+ : null}
61
+ {loadingStatus && (
62
+ <div className="etfy-loading">
63
+ <Spinner />
64
+ </div>
65
+ )}
66
+ </div>
67
+ {!shouldPreviewTemplate && !loadingStatus && <LoadMoreFilter />}
68
+ </div>
69
+ )
70
+ }
71
+
72
+ export default compose([
73
+ withSelect((select) => {
74
+ const { getTemplates, getCurrentPreviewTemplate, getLoadingStatus, getAppliedFilter } = select('extendify-templates/data')
75
+
76
+ return {
77
+ templates: getTemplates(),
78
+ shouldPreviewTemplate: !isEmpty(getCurrentPreviewTemplate()),
79
+ loadingStatus: getLoadingStatus('templates'),
80
+ currentCategory: getAppliedFilter('categories'),
81
+ }
82
+ }),
83
+ ])(TemplatesLibraryContent)
extendify-sdk/src/gutenberg/components/library-content/style.scss ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .etfy-templates-library-content-root {
2
+ width: 70%;
3
+ height: 100%;
4
+ display: block;
5
+ margin-bottom: $grid-unit-40;
6
+
7
+ @include breakpoint(medium) {
8
+ width: 100%;
9
+ }
10
+
11
+ .etfy-templates-description--small {
12
+ display: none;
13
+ h3 {
14
+ span {
15
+ margin: 0 $grid-unit-10;
16
+ }
17
+ }
18
+
19
+ @include breakpoint(medium) {
20
+ display: block;
21
+ }
22
+ }
23
+
24
+ & .etfy-templates-library-content.etfy-templates-library-grid {
25
+ display: grid;
26
+ grid-template-columns: repeat(2, 1fr);
27
+ column-gap: $grid-unit-30;
28
+ row-gap: $grid-unit-50;
29
+
30
+ @include breakpoint(medium) {
31
+ grid-template-columns: 1fr;
32
+ column-gap: $grid-unit-20;
33
+ }
34
+ }
35
+
36
+ &.etfy-templates-loading {
37
+ position: relative;
38
+ padding: calc(#{$grid-unit-60} * 2) 0px;
39
+ height: 50vh;
40
+ min-height: 50vh;
41
+
42
+ .etfy-loading {
43
+ position: absolute;
44
+ top: 50%;
45
+ left: 50%;
46
+ transform: translate(-50%, -50%);
47
+ }
48
+ }
49
+ }
extendify-sdk/src/gutenberg/components/library-imports-counter/index.js ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+
7
+ import { __ } from '@wordpress/i18n'
8
+ import { Flex } from '@wordpress/components'
9
+ import { withSelect } from '@wordpress/data'
10
+ import { compose } from '@wordpress/compose'
11
+
12
+ /**
13
+ *
14
+ * Custom Imports
15
+ *
16
+ */
17
+
18
+ import { TEXT_DOMAIN } from '../../global/'
19
+
20
+ function LibraryImportsCounter({ maxImports, currentImports }) {
21
+ return (
22
+ <Flex className="etfy-imports-counter" justify="flex-start">
23
+ <h4>{__('Imports Left:', TEXT_DOMAIN)}</h4>
24
+ <span>{`${currentImports} / ${maxImports}`}</span>
25
+ </Flex>
26
+ )
27
+ }
28
+
29
+ export default compose([
30
+ withSelect(() => {
31
+ const { getMaxImports, getCurrentImports } = window.wp.data.select('extendify-templates/data')
32
+
33
+ return {
34
+ maxImports: getMaxImports(),
35
+ currentImports: getCurrentImports(),
36
+ }
37
+ }),
38
+ ])(LibraryImportsCounter)
extendify-sdk/src/gutenberg/components/library-imports-counter/style.scss ADDED
File without changes
extendify-sdk/src/gutenberg/components/library-load-more/index.js ADDED
@@ -0,0 +1,113 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+ import { Button } from '@wordpress/components'
7
+ import { compose, withState } from '@wordpress/compose'
8
+ import { withSelect, withDispatch } from '@wordpress/data'
9
+ import { get, isEmpty } from 'lodash'
10
+ import { useEffect } from '@wordpress/element'
11
+ import { __ } from '@wordpress/i18n'
12
+
13
+ /**
14
+ *
15
+ * Custom Imports
16
+ *
17
+ */
18
+
19
+ import { Templates as TemplatesApi } from '../../api'
20
+ import { TEXT_DOMAIN } from '../../global/index'
21
+
22
+ function LoadMoreFilter({ getTemplates, filters, loading, setTemplates, setState }) {
23
+ const loadMore = () => {
24
+ const templates = getTemplates()
25
+ let offset = get(templates, 'offset')
26
+
27
+ if (isEmpty(offset) || loading) return
28
+
29
+ setState({
30
+ loading: true, error: false,
31
+ })
32
+ TemplatesApi.get(filters, {
33
+ offset,
34
+ })
35
+ .then((data) => {
36
+ const newOffset = get(data, 'offset')
37
+ const newTemplates = get(data, 'records')
38
+
39
+ setTemplates({
40
+ offset: newOffset,
41
+ records: [...get(templates, 'records'), ...newTemplates],
42
+ })
43
+
44
+ setState({
45
+ loading: false, error: false,
46
+ })
47
+ })
48
+ .catch(() => {
49
+ setState({
50
+ loading: false, error: true,
51
+ })
52
+ })
53
+ }
54
+
55
+ const handleScroll = (event) => {
56
+ const { target } = event
57
+
58
+ const reachedEnd = target.scrollHeight - target.scrollTop === target.clientHeight
59
+
60
+ if (reachedEnd) {
61
+ loadMore()
62
+ }
63
+ }
64
+
65
+ useEffect(() => {
66
+ let container = document.querySelector('.etfy-templates-library-modal-root')
67
+
68
+ if (!container) return
69
+
70
+ container.addEventListener('scroll', handleScroll)
71
+
72
+ return () => container.removeEventListener(
73
+ 'scroll', handleScroll, {
74
+ passive: true,
75
+ },
76
+ )
77
+ // TODO: optimize this?
78
+ // eslint-disable-next-line react-hooks/exhaustive-deps
79
+ }, [])
80
+
81
+ return getTemplates()?.offset
82
+ ? (
83
+ <div className="etfy-load-more">
84
+ <Button isBusy={loading} disabled={loading} onClick={loadMore} isDefault>
85
+ {loading
86
+ ? __('Loading', TEXT_DOMAIN)
87
+ : __('Load More', TEXT_DOMAIN)}
88
+ </Button>
89
+ </div>
90
+ )
91
+ : null
92
+ }
93
+
94
+ export default compose([
95
+ withState({
96
+ loading: false,
97
+ error: false,
98
+ }),
99
+ withSelect((select) => {
100
+ const { getTemplates, getAppliedFilters } = select('extendify-templates/data')
101
+
102
+ return {
103
+ getTemplates: getTemplates,
104
+ filters: getAppliedFilters(),
105
+ }
106
+ }),
107
+ withDispatch((dispatch) => {
108
+ const { setTemplates } = dispatch('extendify-templates/data')
109
+ return {
110
+ setTemplates,
111
+ }
112
+ }),
113
+ ])(LoadMoreFilter)
extendify-sdk/src/gutenberg/components/library-load-more/style.scss ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ .etfy-load-more {
2
+ text-align: center;
3
+ margin-top: $grid-unit-20;
4
+ }
extendify-sdk/src/gutenberg/components/library-modal/index.js ADDED
@@ -0,0 +1,163 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+
7
+ import { __ } from '@wordpress/i18n'
8
+ import { compose } from '@wordpress/compose'
9
+ import { Modal, Icon } from '@wordpress/components'
10
+ import { withSelect, withDispatch } from '@wordpress/data'
11
+ import { useEffect, useRef } from '@wordpress/element'
12
+ import {
13
+ isEmpty, isEqual, get,
14
+ } from 'lodash'
15
+
16
+ /**
17
+ *
18
+ * Custom Imports
19
+ *
20
+ */
21
+ import { TEXT_DOMAIN } from '../../global'
22
+ import TemplatesLibraryContent from '../library-content/index'
23
+ import TemplatesLibrarySidebar from '../library-sidebar/index'
24
+ import { Templates } from '../../api'
25
+ import classnames from 'classnames'
26
+ import CustomIcon from '../../assets/icons'
27
+
28
+ function TemplatesLibraryModal({
29
+ previewStatus,
30
+ closeLibraryModal,
31
+ appliedFilters,
32
+ setTemplates,
33
+ setLoadingStatus,
34
+ isPreviewingTemplate,
35
+ currentScreen,
36
+ goBack,
37
+ }) {
38
+ const didMountRef = useRef(false)
39
+ const isInitialRequest = useRef(true)
40
+
41
+ const handleAPICalls = () => {
42
+ setLoadingStatus('templates', true)
43
+
44
+ Templates.get(appliedFilters, {
45
+ initial: +isInitialRequest.current,
46
+ })
47
+ .then((data) => {
48
+ const newOffset = get(data, 'offset')
49
+ setTemplates({
50
+ ...data,
51
+ offset: isEmpty(newOffset)
52
+ ? ''
53
+ : newOffset,
54
+ })
55
+ setLoadingStatus('templates', false)
56
+
57
+ if (isInitialRequest.current) {
58
+ isInitialRequest.current = false
59
+ }
60
+ })
61
+ .catch(() => {
62
+ setTemplates({
63
+ records: [],
64
+ offset: '',
65
+ })
66
+ setLoadingStatus('templates', false)
67
+ })
68
+ }
69
+
70
+ useEffect(() => {
71
+ // for not firing on initial render
72
+
73
+ if (didMountRef.current && previewStatus) {
74
+ handleAPICalls()
75
+ } else {
76
+ didMountRef.current = true
77
+ }
78
+ // TODO: optimize this?
79
+ // eslint-disable-next-line react-hooks/exhaustive-deps
80
+ }, [appliedFilters, previewStatus])
81
+
82
+ return previewStatus
83
+ ? (
84
+ <Modal
85
+ shouldCloseOnClickOutside={false}
86
+ icon={<Icon icon="arrow-left-alt2" onClick={goBack} className="etfy-back-button" />}
87
+ title={__(<CustomIcon icon="library" />)}
88
+ className={`etfy-templates-library-modal-root ${`etfy-screen-${currentScreen}`}`}
89
+ onRequestClose={closeLibraryModal}
90
+ closeLabel={__('close', TEXT_DOMAIN)}
91
+ >
92
+ <div
93
+ className={classnames({
94
+ 'etfy-templates-library-modal': true,
95
+ 'etfy-previewing-template': isPreviewingTemplate(),
96
+ [`etfy-screen-${currentScreen}`]: true,
97
+ })}
98
+ >
99
+ <TemplatesLibrarySidebar />
100
+ <TemplatesLibraryContent />
101
+ </div>
102
+ </Modal>
103
+ )
104
+ : null
105
+ }
106
+
107
+ export default compose([
108
+ withSelect((select) => {
109
+ const { getLibraryPreviewStatus, getAppliedFilters, getCurrentPreviewTemplate, getCurrentScreen } = select('extendify-templates/data')
110
+
111
+ return {
112
+ previewStatus: getLibraryPreviewStatus(),
113
+ appliedFilters: getAppliedFilters(),
114
+ currentScreen: getCurrentScreen(),
115
+
116
+ /**
117
+ * If the user is currently previewing a template
118
+ */
119
+ isPreviewingTemplate() {
120
+ const currentPreviewTemplate = getCurrentPreviewTemplate()
121
+ return !isEmpty(currentPreviewTemplate)
122
+ },
123
+ }
124
+ }),
125
+ withDispatch((dispatch, { currentScreen }) => {
126
+ const {
127
+ setLibraryPreviewStatus,
128
+ setTemplates,
129
+ setLoadingStatus,
130
+ setCurrentPreviewTemplate,
131
+ setCurrentScreen,
132
+ } = dispatch('extendify-templates/data')
133
+
134
+ return {
135
+
136
+ /**
137
+ * Will go back from the current screen
138
+ */
139
+
140
+ goBack() {
141
+ setCurrentPreviewTemplate({})
142
+
143
+ if (isEqual(currentScreen, 'single-template')) {
144
+ setCurrentScreen('templates')
145
+ }
146
+
147
+ if (isEqual(currentScreen, 'templates')) {
148
+ setCurrentScreen('menu')
149
+ }
150
+ },
151
+
152
+ /**
153
+ * Will close the templates Library Modal
154
+ */
155
+
156
+ closeLibraryModal() {
157
+ setLibraryPreviewStatus(false)
158
+ },
159
+ setTemplates,
160
+ setLoadingStatus,
161
+ }
162
+ }),
163
+ ])(TemplatesLibraryModal)
extendify-sdk/src/gutenberg/components/library-modal/style.scss ADDED
@@ -0,0 +1,66 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .etfy-templates-library-modal-root {
2
+ height: 100%;
3
+
4
+ .etfy-back-button {
5
+ cursor: pointer;
6
+ text-decoration: none;
7
+ color: #000;
8
+ display: none;
9
+ margin-right: $grid-unit-20;
10
+
11
+ @include breakpoint(medium) {
12
+ display: block;
13
+ }
14
+ }
15
+
16
+ .components-modal__content {
17
+ max-width: 100%;
18
+ width: 1500px;
19
+
20
+ .etfy-templates-library-modal {
21
+ display: flex;
22
+ flex-direction: row;
23
+ margin-top: $grid-unit-40;
24
+
25
+ & > div:not(:first-child) {
26
+ margin-left: $grid-unit-60;
27
+ }
28
+
29
+ @include breakpoint(small) {
30
+ flex-direction: column;
31
+
32
+ & > div:not(:first-child) {
33
+ margin-left: 0;
34
+ }
35
+ }
36
+ }
37
+ }
38
+ }
39
+
40
+ .etfy-screen-single-template {
41
+ .etfy-back-button {
42
+ display: block;
43
+ }
44
+ }
45
+
46
+ .etfy-screen-menu {
47
+ .etfy-back-button {
48
+ @include breakpoint(medium) {
49
+ display: none;
50
+ }
51
+ }
52
+ .etfy-templates-library-content-root {
53
+ @include breakpoint(medium) {
54
+ display: none;
55
+ }
56
+ }
57
+ }
58
+
59
+ .etfy-screen-templates,
60
+ .etfy-screen-single-template {
61
+ .etfy-templates-library-sidebar {
62
+ @include breakpoint(medium) {
63
+ display: none;
64
+ }
65
+ }
66
+ }
extendify-sdk/src/gutenberg/components/library-not-found/index.js ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+
7
+ import { compose } from '@wordpress/compose'
8
+ import { withSelect, withDispatch } from '@wordpress/data'
9
+ import { __ } from '@wordpress/i18n'
10
+
11
+ /**
12
+ *
13
+ * Custom Imports
14
+ *
15
+ */
16
+
17
+ function NotFound({ currentSearch }) {
18
+ return (
19
+ <div className="etfy-not-results-found__root">
20
+ <h2>{__(`Your search "${currentSearch}" - did not match any designs.`)}</h2>
21
+ <p>{__('Try searching again or select one of the categories from the list on the left.')}</p>
22
+ </div>
23
+ )
24
+ }
25
+
26
+ export default compose([
27
+ withSelect((select) => {
28
+ const { getAppliedFilter } = select('extendify-templates/data')
29
+
30
+ return {
31
+ currentSearch: getAppliedFilter('search'),
32
+ }
33
+ }),
34
+ withDispatch(() => {
35
+ return {}
36
+ }),
37
+ ])(NotFound)
extendify-sdk/src/gutenberg/components/library-not-found/style.scss ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ .etfy-not-results-found__root {
2
+ & h2 {
3
+ line-height: $default-line-height;
4
+ }
5
+ }
extendify-sdk/src/gutenberg/components/library-search/index.js ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+
7
+ import { TextControl } from '@wordpress/components'
8
+ import { __experimentalSearchForm as SearchForm } from '@wordpress/block-editor'
9
+ import { noop, isFunction } from 'lodash'
10
+
11
+ /**
12
+ * External dependencies
13
+ */
14
+
15
+ import classnames from 'classnames'
16
+
17
+ function TemplatesLibrarySearchForm({ className, onChange, value, placeholder, onKeyDown = noop }) {
18
+ return (
19
+ <div className={classnames('block-editor-inserter__search', className)}>
20
+ {isFunction(SearchForm)
21
+ ? (
22
+ <SearchForm
23
+ placeholder={placeholder}
24
+ onChange={(newSearch) => onChange(newSearch)}
25
+ autoComplete="off"
26
+ value={value || ''}
27
+ />
28
+ )
29
+ : (
30
+ <TextControl
31
+ style={{
32
+ padding: '8px 8px',
33
+ }}
34
+ onChange={onChange}
35
+ onKeyDown={onKeyDown}
36
+ placeholder={placeholder}
37
+ value={value}
38
+ autoComplete="off"
39
+ />
40
+ )}
41
+ </div>
42
+ )
43
+ }
44
+
45
+ export default TemplatesLibrarySearchForm
extendify-sdk/src/gutenberg/components/library-sidebar-section/index.js ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+
7
+ import { has, isEmpty } from 'lodash';
8
+
9
+ function TemplatesLibrarySidebarMenu(props) {
10
+ return (
11
+ <div className="etfy-templates-library-sidebar-menu">
12
+ {has(props, 'title') && !isEmpty(props.title) && <h2>{props.title}</h2>}
13
+ {props.children}
14
+ </div>
15
+ );
16
+ }
17
+
18
+ export default TemplatesLibrarySidebarMenu;
extendify-sdk/src/gutenberg/components/library-sidebar-section/style.scss ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ .etfy-templates-library-sidebar-menu {
2
+ .etfy-selected-category {
3
+ background-color: $gray-100;
4
+ .etfy-menu-item {
5
+ &:hover {
6
+ box-shadow: 0 0 0 1.5px var(--wp-admin-theme-color) inset;
7
+ }
8
+ }
9
+ }
10
+ }
extendify-sdk/src/gutenberg/components/library-sidebar/index.js ADDED
@@ -0,0 +1,227 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+
7
+ import { __ } from '@wordpress/i18n'
8
+ import { MenuItem } from '@wordpress/components'
9
+ import { compose, withState } from '@wordpress/compose'
10
+ import {
11
+ useRef, useEffect, useState,
12
+ } from '@wordpress/element'
13
+ import { withSelect, withDispatch } from '@wordpress/data'
14
+ import {
15
+ map, isEqual, includes, toLower, capitalize, head, isEmpty, debounce, get,
16
+ } from 'lodash'
17
+
18
+ /**
19
+ *
20
+ * Custom Imports
21
+ *
22
+ */
23
+
24
+ import { TEXT_DOMAIN } from '../../global'
25
+ import Search from '../library-search/index'
26
+ import SidebarSection from '../library-sidebar-section/index'
27
+ import { search } from '../../functions/index'
28
+ import classnames from 'classnames'
29
+ import LibraryAuth from '../library-auth'
30
+ import { Categories } from '../../api'
31
+
32
+ function TemplatesLibrarySidebar({
33
+ types,
34
+ setFilters,
35
+ currentType,
36
+ currentSearch,
37
+ currentCategories,
38
+ setCurrentPreviewTemplate,
39
+ searchState,
40
+ setState,
41
+ setCurrentScreen,
42
+ templates,
43
+ }) {
44
+ const [categories, setCategories] = useState([])
45
+ const [errorMessage, setErrorMessage] = useState('')
46
+ const relevantCategories = categories.filter((cat) => search(currentSearch, cat))
47
+
48
+ useEffect(() => {
49
+ Categories.getAll()
50
+ .then((data) => setCategories(data))
51
+ .catch(({ message }) => setErrorMessage(message))
52
+ }, [])
53
+
54
+ // debouncing search query with 500ms
55
+ const dispatchSearchQuery = useRef(debounce((query) => {
56
+ setFilters({
57
+ search: query, categories: [],
58
+ })
59
+ setCurrentScreen('templates')
60
+ setCurrentPreviewTemplate({})
61
+ }, 500)).current
62
+
63
+ const applyCategory = (category) => {
64
+ const clearSearch = get(templates, 'records.length') === 0
65
+ ? true
66
+ : false
67
+
68
+ if (clearSearch) {
69
+ setState({
70
+ searchState: '',
71
+ })
72
+ }
73
+
74
+ if (currentCategories.includes(category)) {
75
+ setCurrentPreviewTemplate({})
76
+ } else {
77
+ setFilters({
78
+ categories: category
79
+ ? [category]
80
+ : [],
81
+ search: clearSearch
82
+ ? ''
83
+ : currentSearch,
84
+ })
85
+ setCurrentPreviewTemplate({})
86
+ }
87
+
88
+ setCurrentScreen('templates')
89
+ }
90
+
91
+ const applyType = (type) => {
92
+ if (isEqual(currentType, type)) {
93
+ setCurrentPreviewTemplate({})
94
+ } else {
95
+ setFilters({
96
+ type,
97
+ categories: currentCategories.length
98
+ ? [head(currentCategories)]
99
+ : [],
100
+ })
101
+
102
+ setCurrentPreviewTemplate({})
103
+ }
104
+ }
105
+
106
+ const CategoriesFilter = (props) => {
107
+ if (errorMessage.length) {
108
+ return errorMessage
109
+ }
110
+ if (!categories.length) {
111
+ return __('Loading categories...', TEXT_DOMAIN)
112
+ }
113
+ return <>
114
+ <MenuItem
115
+ className={classnames({
116
+ 'etfy-selected-category': !currentCategories.length,
117
+ 'etfy-menu-item': true,
118
+ })}
119
+ onClick={() => applyCategory()}
120
+ >
121
+ {__('All', TEXT_DOMAIN)}
122
+ </MenuItem>
123
+ {map(props.categories, (category, index) => {
124
+ const hasCurrentCategory = includes(currentCategories, category)
125
+
126
+ // if the current category matches the current search query
127
+ let isSearchRelevant = !isEmpty(currentSearch)
128
+ ? search(currentSearch, category)
129
+ : true
130
+
131
+ if (get(templates, 'records.length') === 0) {
132
+ isSearchRelevant = true
133
+ }
134
+
135
+ return (
136
+ isSearchRelevant && (
137
+ <MenuItem
138
+ key={index}
139
+ className={classnames({
140
+ 'etfy-selected-category': hasCurrentCategory,
141
+ 'etfy-menu-item': true,
142
+ })}
143
+ onClick={() => applyCategory(category)}
144
+ >
145
+ {capitalize(category)}
146
+ </MenuItem>
147
+ )
148
+ )
149
+ })}
150
+ </>
151
+ }
152
+
153
+ useEffect(() => setState({
154
+ searchState: currentSearch,
155
+ // TODO: optimize this?
156
+ // eslint-disable-next-line react-hooks/exhaustive-deps
157
+ }), [])
158
+
159
+ const shouldShowCategories =
160
+ relevantCategories.length === 0 && get(templates, 'records.length') > 0 && !isEmpty(currentSearch)
161
+ ? false
162
+ : true
163
+
164
+ return (
165
+ <div className="etfy-templates-library-sidebar">
166
+ <div className="etfy-templates-library-sidebar__wrapper">
167
+ <div className="etfy-templates-library-top__area">
168
+ <LibraryAuth />
169
+ <Search
170
+ value={searchState}
171
+ placeholder={__('What are you looking for?', TEXT_DOMAIN)}
172
+ onChange={(newSearch) => {
173
+ setState({
174
+ searchState: newSearch,
175
+ })
176
+ dispatchSearchQuery(newSearch)
177
+ }}
178
+ />
179
+ <hr className="etfy-divider" />
180
+ </div>
181
+ <SidebarSection title={__('Type', TEXT_DOMAIN)}>
182
+ {map(types, (type, index) => (
183
+ <MenuItem
184
+ onClick={() => applyType(type)}
185
+ className={classnames({
186
+ 'etfy-menu-item': true,
187
+ 'etfy-selected-category': isEqual(toLower(type), currentType),
188
+ })}
189
+ key={index}
190
+ >
191
+ {capitalize(type)}
192
+ </MenuItem>
193
+ ))}
194
+ </SidebarSection>
195
+ {shouldShowCategories && (
196
+ <SidebarSection title={__('Categories', TEXT_DOMAIN)}>
197
+ <CategoriesFilter categories={categories} type={currentType} />
198
+ </SidebarSection>
199
+ )}
200
+ </div>
201
+ </div>
202
+ )
203
+ }
204
+
205
+ export default compose([
206
+ withState({
207
+ searchState: '',
208
+ }),
209
+ withSelect((select) => {
210
+ const { getTemplateTypes, getAppliedFilter, getTemplates } = select('extendify-templates/data')
211
+
212
+ return {
213
+ types: getTemplateTypes(),
214
+ currentType: getAppliedFilter('type'),
215
+ currentCategories: getAppliedFilter('categories'),
216
+ currentSearch: getAppliedFilter('search'),
217
+ templates: getTemplates(),
218
+ }
219
+ }),
220
+ withDispatch((dispatch) => {
221
+ const { setFilters, setCurrentPreviewTemplate, setCurrentScreen } = dispatch('extendify-templates/data')
222
+
223
+ return {
224
+ setFilters, setCurrentPreviewTemplate, setCurrentScreen,
225
+ }
226
+ }),
227
+ ])(TemplatesLibrarySidebar)
extendify-sdk/src/gutenberg/components/library-sidebar/style.scss ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .etfy-templates-library-sidebar {
2
+ width: 30%;
3
+ height: 75vh;
4
+ top: 90px;
5
+ overflow-y: auto;
6
+ overflow-x: hidden;
7
+ position: sticky;
8
+ padding: 0px $grid-unit-20 0px 1px;
9
+
10
+ @include breakpoint(medium) {
11
+ height: 100%;
12
+ padding-right: 0px;
13
+ }
14
+
15
+ .etfy-templates-library-sidebar__wrapper {
16
+ position: sticky;
17
+ }
18
+
19
+ @include breakpoint(medium) {
20
+ width: 100%;
21
+ }
22
+
23
+ .etfy-templates-library-top__area {
24
+ position: sticky;
25
+ top: 0px;
26
+ background-color: $white;
27
+ }
28
+
29
+ .etfy-divider {
30
+ margin: $grid-unit-30 0;
31
+ }
32
+
33
+ .block-editor-inserter__search {
34
+ padding: 0px;
35
+ padding-top: $grid-unit-05;
36
+ svg {
37
+ height: 100%;
38
+ }
39
+
40
+ .block-editor-inserter__search-icon {
41
+ right: 10px !important;
42
+ }
43
+ }
44
+ }
extendify-sdk/src/gutenberg/components/library-template-preview/index.js ADDED
@@ -0,0 +1,192 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+
7
+ import { compose, withState } from '@wordpress/compose'
8
+ import { __ } from '@wordpress/i18n'
9
+ import { TEXT_DOMAIN } from '../../global/index'
10
+ import { withSelect, withDispatch } from '@wordpress/data'
11
+ import { Button } from '@wordpress/components'
12
+ import {
13
+ get, map, isEqual, head,
14
+ } from 'lodash'
15
+ import { injectTemplate } from '../../functions'
16
+ import { Middleware, AuthorizationCheck } from '../../middleware'
17
+ import { useState, useEffect } from '@wordpress/element'
18
+
19
+ function TemplateLibraryPreview({ template, onImport, applyCategory, setState, currentImports, isAuthenticated }) {
20
+ // destructuring current template
21
+ const [url, title, categories, requiredPlugins] = [
22
+ get(template, 'fields.screenshot[0].url'),
23
+ get(template, 'fields.title'),
24
+ get(template, 'fields.categories'),
25
+ get(
26
+ template, 'fields.required_plugins', [],
27
+ ),
28
+ ]
29
+ const canImport = 0 < currentImports
30
+ const canImportMiddleware = Middleware(['hasRequiredPlugins', 'hasPluginsActivated', 'needsPageReload'])
31
+ const [ready, setReady] = useState(false)
32
+ useEffect(() => {
33
+ canImportMiddleware.check(template).then(() => {
34
+ setState({
35
+ restrictions: canImportMiddleware.stack,
36
+ })
37
+ setReady(true)
38
+ })
39
+ return () => {
40
+ canImportMiddleware.reset()
41
+ setReady(false)
42
+ }
43
+ // TODO: optimize this?
44
+ // eslint-disable-next-line react-hooks/exhaustive-deps
45
+ }, [template])
46
+
47
+ return template ?
48
+ (
49
+ <div className="etfy-template-preview">
50
+ <div className="etfy-template-media">
51
+ <img src={url} />
52
+ </div>
53
+ <div className="etfy-template-details">
54
+ {/* TODO Needs refactoring */}
55
+ {ready
56
+ ? (
57
+ <>
58
+ {!canImport && !isAuthenticated && (
59
+ <Button className="etfy-upgrade-btn" href={'https://extendify.com/?utm_source=sdk&utm_medium=free_beta_2&utm_campaign=sdk_ref'} target="__blank">
60
+ {__('Sign up for free to add', TEXT_DOMAIN)}
61
+ </Button>
62
+ )}
63
+ {(isAuthenticated || canImport) && (
64
+ <Button isPrimary onClick={onImport}>
65
+ {__('Add', TEXT_DOMAIN)}
66
+ </Button>
67
+ )}
68
+ </>
69
+ )
70
+ : (
71
+ <Button disabled>{__('Loading...', TEXT_DOMAIN)}</Button>
72
+ )}
73
+
74
+ <div>
75
+ <h2 className="etfy-template-title">{title}</h2>
76
+ <div className="etfy-template-categories">
77
+ {map(categories, (category, index) => (
78
+ <Button
79
+ isLink
80
+ key={index}
81
+ className="etfy-template-category"
82
+ onClick={() => applyCategory(category)}
83
+ >
84
+ {__(category, TEXT_DOMAIN)}
85
+ </Button>
86
+ ))}
87
+ </div>
88
+ {requiredPlugins.length ?
89
+ (
90
+ <>
91
+ <hr />
92
+ <div className="etfy-template-required-plugins">
93
+ <strong>Plugins required: </strong>
94
+ <ul style={{
95
+ display: 'inline',
96
+ }}>
97
+ {map(requiredPlugins, (_plugin, index) => (
98
+ <li style={{
99
+ display: 'inline',
100
+ }} key={index}>
101
+ {/* TODO: This is hardcoded until we define a better way to manage plugin dependecies via Airtable! */}
102
+ {__('Editor Plus', TEXT_DOMAIN)}
103
+ </li>
104
+ ))}
105
+ </ul>
106
+ </div>
107
+ </>
108
+ )
109
+ : null}
110
+ </div>
111
+ </div>
112
+ </div>
113
+ )
114
+ : null
115
+ }
116
+
117
+ export default compose([
118
+ withState({
119
+ restrictions: [],
120
+ }),
121
+ withSelect((select) => {
122
+ const {
123
+ getCurrentPreviewTemplate,
124
+ getAppliedFilter,
125
+ getCurrentImports,
126
+ getMaxImports,
127
+ getAuthenticationStatus,
128
+ } = select('extendify-templates/data')
129
+ const { getEditedPostAttribute } = select('core/editor')
130
+
131
+ const template = getCurrentPreviewTemplate()
132
+ const shortCode = get(template, 'fields.code')
133
+
134
+ return {
135
+ template: getCurrentPreviewTemplate(),
136
+ currentCategory: getAppliedFilter('categories'),
137
+ shortCode,
138
+ postMeta: getEditedPostAttribute('meta'),
139
+ currentImports: getCurrentImports(),
140
+ maxImports: getMaxImports(),
141
+ isAuthenticated: getAuthenticationStatus(),
142
+ }
143
+ }),
144
+ withDispatch((dispatch, { currentCategory, template, currentImports, restrictions }) => {
145
+ const {
146
+ setFilters,
147
+ setCurrentScreen,
148
+ setCurrentPreviewTemplate,
149
+ setLibraryPreviewStatus,
150
+ setImportsCount,
151
+ } = dispatch('extendify-templates/data')
152
+
153
+ return {
154
+ onImport() {
155
+ AuthorizationCheck(restrictions).then(() => {
156
+ setLibraryPreviewStatus(false)
157
+ injectTemplate(template).then(() => {
158
+ const { createNotice } = dispatch('core/notices')
159
+ // updating imports count
160
+ const newImportsCount = currentImports - 1
161
+ setImportsCount(newImportsCount)
162
+ localStorage.setItem('etfy__library_imports_left', newImportsCount)
163
+
164
+ createNotice(
165
+ 'info', __('Template Added'), {
166
+ isDismissible: true,
167
+ type: 'snackbar',
168
+ },
169
+ )
170
+ })
171
+ })
172
+ },
173
+
174
+ /**
175
+ * Will apply the given category and removes the currently
176
+ * preview template
177
+ * @param {string} category
178
+ */
179
+ applyCategory(category) {
180
+ if (!isEqual(category, head(currentCategory))) {
181
+ // re fetches if the new category is selected
182
+ setFilters({
183
+ categories: [category],
184
+ })
185
+ }
186
+
187
+ setCurrentPreviewTemplate({})
188
+ setCurrentScreen('templates')
189
+ },
190
+ }
191
+ }),
192
+ ])(TemplateLibraryPreview)
extendify-sdk/src/gutenberg/components/library-template-preview/style.scss ADDED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .etfy-template-preview {
2
+ display: flex;
3
+ flex-direction: row;
4
+
5
+ & > div:not(:first-child) {
6
+ margin: 0px 0px 0px $grid-unit-40;
7
+ }
8
+
9
+ @include breakpoint(small) {
10
+ flex-direction: column-reverse;
11
+
12
+ & > div:not(:first-child) {
13
+ margin: 0px 0px $grid-unit-40 0px;
14
+ }
15
+ }
16
+
17
+ .etfy-template-media {
18
+ width: 60%;
19
+
20
+ img {
21
+ /**FLUID IMAGE**/
22
+ width: 100%;
23
+ height: 100%;
24
+ }
25
+
26
+ @include breakpoint(small) {
27
+ width: 100%;
28
+ }
29
+ }
30
+
31
+ .etfy-template-details {
32
+ width: 40%;
33
+ top: 80px;
34
+ position: sticky;
35
+ height: 100%;
36
+
37
+ @include breakpoint(small) {
38
+ width: 100%;
39
+ display: flex;
40
+ flex-direction: row-reverse;
41
+ justify-content: space-between;
42
+ align-items: center;
43
+ position: relative;
44
+ top: 0px;
45
+ }
46
+
47
+ .etfy-template-title {
48
+ margin: $grid-unit-40 0px;
49
+
50
+ @include breakpoint(small) {
51
+ margin: $grid-unit-20 0px;
52
+ }
53
+ }
54
+
55
+ .etfy-template-category {
56
+ margin-right: $grid-unit-05;
57
+ }
58
+
59
+
60
+ .etfy-upgrade-btn {
61
+ background-color: $gray-200;
62
+ border: 1px solid $gray-300;
63
+ }
64
+ }
65
+ hr {
66
+ margin: $grid-unit-20 0;
67
+ }
68
+ .etfy-template-required-plugins {
69
+
70
+ }
71
+ }
extendify-sdk/src/gutenberg/components/library-template/index.js ADDED
@@ -0,0 +1,89 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Should Be used for displaying single template
4
+ * fetched from API
5
+ *
6
+ */
7
+
8
+ /**
9
+ *
10
+ * Wordpress Dependencies
11
+ *
12
+ */
13
+
14
+ import { isEqual, get } from 'lodash'
15
+ import { compose } from '@wordpress/compose'
16
+ import { ENTER } from '@wordpress/keycodes'
17
+ import {
18
+ Card, CardMedia, TabbableContainer,
19
+ } from '@wordpress/components'
20
+ import { withSelect, withDispatch } from '@wordpress/data'
21
+
22
+ /**
23
+ *
24
+ * Custom Imports
25
+ *
26
+ */
27
+ import classnames from 'classnames'
28
+
29
+ function LibraryTemplate({ template, onSelect, currentType }) {
30
+ // destructing template data
31
+ const [url, title, categories] = [
32
+ get(template, 'fields.screenshot[0].url'),
33
+ get(template, 'fields.title'),
34
+ get(template, 'fields.categories'),
35
+ ]
36
+
37
+ const templateClass = classnames({
38
+ 'etfy-template': true,
39
+ [`etfy-type-${currentType}`]: true,
40
+ })
41
+
42
+ return (
43
+ <TabbableContainer
44
+ tabIndex="0"
45
+ aria-pressed="false"
46
+ onClick={onSelect}
47
+ onKeyDown={(e) => isEqual(e.keyCode, ENTER) && onSelect()}
48
+ className="etfy-template-main"
49
+ >
50
+ <Card className={templateClass}>
51
+ <CardMedia className="etfy-template-media" style={{
52
+ backgroundImage: `url(${url})`,
53
+ }} />
54
+ </Card>
55
+ <div className="etfy-template-body">
56
+ <h2>{title}</h2>
57
+ <span>{categories.join(', ')}</span>
58
+ </div>
59
+ </TabbableContainer>
60
+ )
61
+ }
62
+
63
+ export default compose([
64
+ withSelect((select, { template }) => {
65
+ const shortCode = get(template, 'fields.code')
66
+ const { getAppliedFilter } = select('extendify-templates/data')
67
+
68
+ return {
69
+ shortCode,
70
+ currentType: getAppliedFilter('type'),
71
+ }
72
+ }),
73
+ withDispatch((dispatch, { template }) => {
74
+ const { setCurrentPreviewTemplate, setCurrentScreen } = dispatch('extendify-templates/data')
75
+
76
+ return {
77
+
78
+ /**
79
+ * Will set the current template for preview
80
+ * @return {void}
81
+ */
82
+
83
+ onSelect() {
84
+ setCurrentPreviewTemplate(template)
85
+ setCurrentScreen('single-template')
86
+ },
87
+ }
88
+ }),
89
+ ])(LibraryTemplate)
extendify-sdk/src/gutenberg/components/library-template/style.scss ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .etfy-template-main {
2
+ &:focus {
3
+ box-shadow: 0 0 0 1.5px var(--wp-admin-theme-color);
4
+ }
5
+
6
+ .etfy-template {
7
+ cursor: pointer;
8
+ .etfy-template-header {
9
+ display: flex;
10
+ flex-direction: row;
11
+ justify-content: space-between;
12
+ }
13
+
14
+ .etfy-template-media {
15
+ background-size: cover;
16
+ min-height: 315px;
17
+ }
18
+
19
+ &.etfy-type-pattern {
20
+ .etfy-template-media {
21
+ background-repeat: no-repeat;
22
+ background-position-y: 50%;
23
+ background-size: contain;
24
+ }
25
+ }
26
+ }
27
+ }
extendify-sdk/src/gutenberg/functions/index.js ADDED
@@ -0,0 +1,112 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import {
2
+ isEmpty, isString, toLower, get,
3
+ } from 'lodash'
4
+ import { dispatch } from '@wordpress/data'
5
+
6
+ /**
7
+ * Will create query accepted string airtable formula with given fields
8
+ *
9
+ * @return {string} formula
10
+ */
11
+
12
+ export function createTemplatesFilterFormula(filters) {
13
+ const categories = get(filters, 'categories'),
14
+ search = get(filters, 'search'),
15
+ type = get(filters, 'type')
16
+
17
+ const CategoriesFilter =
18
+ isEmpty(categories)
19
+ ? 'TRUE()'
20
+ : categories.map((filter) => `SEARCH("${filter}", {categories}) = 1`).join(',')
21
+
22
+ const searchFilter = isEmpty(search)
23
+ ? 'TRUE()'
24
+ : `OR(FIND(LOWER("${search}"), LOWER(title)) != 0, FIND(LOWER("${search}"), LOWER({categories})) != 0)`
25
+
26
+ const typeFilter = isEmpty(type)
27
+ ? 'TRUE()'
28
+ : `{type}="${type}"`
29
+
30
+ let formula = `IF(AND(${CategoriesFilter}, ${searchFilter}, ${typeFilter}), TRUE())`
31
+ if (isEmpty(searchFilter) && isEmpty(typeFilter) && isEmpty(CategoriesFilter)) {
32
+ formula = ''
33
+ }
34
+
35
+ return formula.replace(/\r?\n|\r/g, '')
36
+ }
37
+
38
+ /**
39
+ * Will check if the given string contains the search string
40
+ *
41
+ * @param {string} string
42
+ * @param {string} searchString
43
+ */
44
+
45
+ export function search(string, searchString) {
46
+ // type validation
47
+ if (!isString(string) || !isString(searchString)) {
48
+ return false
49
+ }
50
+
51
+ // changing case
52
+ string = toLower(string)
53
+ searchString = toLower(searchString)
54
+
55
+ // comparing
56
+ return -1 !== searchString.indexOf(string)
57
+ ? true
58
+ : false
59
+ }
60
+
61
+ /**
62
+ * Given an array of InnerBlocks templates or Block Objects,
63
+ * returns an array of created Blocks from them.
64
+ * It handles the case of having InnerBlocks as Blocks by
65
+ * converting them to the proper format to continue recursively.
66
+ *
67
+ * @param {Array} innerBlocksOrTemplate Nested blocks or InnerBlocks templates.
68
+ *
69
+ * @return {Object[]} Array of Block objects.
70
+ */
71
+ export function createBlocksFromInnerBlocksTemplate(innerBlocksOrTemplate = []) {
72
+ const { createBlock } = window.wp.blocks
73
+
74
+ // TODO: This should return the native implementation if available here
75
+
76
+ return innerBlocksOrTemplate.map((innerBlock) => {
77
+ const innerBlockTemplate = Array.isArray(innerBlock)
78
+ ? innerBlock
79
+ : [innerBlock.name, innerBlock.attributes, innerBlock.innerBlocks]
80
+ const [name, attributes, innerBlocks = []] = innerBlockTemplate
81
+ return createBlock(
82
+ name, attributes, createBlocksFromInnerBlocksTemplate(innerBlocks),
83
+ )
84
+ })
85
+ }
86
+
87
+ export function hydrateTemplateLibrary(state) {
88
+ const { setSpecificState, setCurrentPreviewTemplate } = dispatch('extendify-templates/data')
89
+
90
+ // Reset the state
91
+ setSpecificState(state)
92
+
93
+ // Setting this again will trigger any insert middleware
94
+ setCurrentPreviewTemplate(state?.currentPreviewTemplate)
95
+ }
96
+ export function injectTemplate(template) {
97
+ if (!template) {
98
+ throw Error('Template not found')
99
+ }
100
+ const { insertBlocks } = dispatch('core/block-editor')
101
+ const { parse } = window.wp.blocks
102
+ const parsedTemplate = parse(get(template, 'fields.code'))
103
+ const createdBlocks = createBlocksFromInnerBlocksTemplate(parsedTemplate)
104
+ return insertBlocks(createdBlocks).then(() => {
105
+ window.dispatchEvent(new CustomEvent('extendify-sdk::template-inserted', {
106
+ detail: {
107
+ template,
108
+ },
109
+ bubbles: true,
110
+ }))
111
+ })
112
+ }
extendify-sdk/src/gutenberg/global/index.js ADDED
@@ -0,0 +1 @@
 
1
+ export const TEXT_DOMAIN = 'extendify-templates-inserter';
extendify-sdk/src/gutenberg/listeners/index.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ import { templateHandler } from './template-inserted'
2
+ import { softErrorHandler } from './softerror-encountered'
3
+
4
+ templateHandler.register()
5
+ softErrorHandler.register()
extendify-sdk/src/gutenberg/listeners/softerror-encountered.js ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { camelCase } from 'lodash'
2
+ import { RequiredPluginsModal } from '../middleware/hasRequiredPlugins/RequiredPluginsModal'
3
+ import { ReloadRequiredModal } from '../middleware/needsPageReload/ReloadRequiredModal'
4
+ import { render } from '@wordpress/element'
5
+
6
+ export const softErrorHandler = {
7
+ register() {
8
+ window.addEventListener('extendify-sdk::softerror-encountered', (event) => {
9
+ this[camelCase(event.detail.type)](event.detail)
10
+ })
11
+ },
12
+ versionOutdated(error) {
13
+ render(<RequiredPluginsModal
14
+ title={error.data.title}
15
+ message={error.data.message}
16
+ buttonLabel={error.data.buttonLabel}
17
+ forceOpen={true}
18
+ />,
19
+ document.querySelector('#extendify-root'))
20
+
21
+ // Listen for activation complete, then open the reload modal
22
+ window.addEventListener('extendfy::install-required-complete', async () => {
23
+ window.sessionStorage.removeItem('extendify-sdk-reload-session')
24
+ await new Promise((resolve) => setTimeout(resolve, 1500))
25
+ render(<ReloadRequiredModal />, document.querySelector('#extendify-root'))
26
+ })
27
+ },
28
+ }
extendify-sdk/src/gutenberg/listeners/template-inserted.js ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ import { Templates } from '../api'
2
+
3
+ export const templateHandler = {
4
+ register() {
5
+ window.addEventListener('extendify-sdk::template-inserted', (event) => {
6
+ Templates.import(event.detail?.template)
7
+ })
8
+ },
9
+ }
extendify-sdk/src/gutenberg/middleware/hasPluginsActivated/ActivatePluginsModal.js ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { __, sprintf } from '@wordpress/i18n'
2
+ import { TEXT_DOMAIN } from '../../global'
3
+ import TemplatesLibraryModal from '../../components/library-modal/index'
4
+ import { dispatch, select } from '@wordpress/data'
5
+ import {
6
+ Modal, Button, ButtonGroup,
7
+ } from '@wordpress/components'
8
+ import { useState } from '@wordpress/element'
9
+ import { render } from '@wordpress/element'
10
+ import { ActivatingModal } from './ActivatingModal'
11
+
12
+ export const ActivatePluginsModal = (props) => {
13
+ const { setSpecificState, setCurrentPreviewTemplate } = dispatch('extendify-templates/data')
14
+ const { getCurrentPreviewTemplate } = select('extendify-templates/data')
15
+ const [isOpen, setOpen] = useState(true)
16
+ const previouslyViewedTemplate = getCurrentPreviewTemplate()
17
+
18
+ // Closing the modal will reset the library state
19
+ const closeModal = () => {
20
+ setOpen(false)
21
+ setSpecificState(props.previousState)
22
+ setCurrentPreviewTemplate(previouslyViewedTemplate)
23
+ render(<TemplatesLibraryModal />, document.querySelector('#extendify-root'))
24
+ }
25
+
26
+ const installPlugins = async () => {
27
+ setOpen(false)
28
+ render(<ActivatingModal />, document.querySelector('#extendify-root'))
29
+ }
30
+ const type = props.previousState?.currentPreviewTemplate?.fields?.type ?? 'template'
31
+ return (
32
+ <>
33
+ {isOpen && (
34
+ <Modal
35
+ title={__('Activate required plugins', TEXT_DOMAIN)}
36
+ closeButtonLabel={__('No thanks, return to library', TEXT_DOMAIN)}
37
+ onRequestClose={closeModal}
38
+ >
39
+ <p style={{
40
+ maxWidth: '400px',
41
+ }}>
42
+ {props.message ?? __(sprintf('There is just one more step. This %s requires the following plugins to be activated:',
43
+ type),
44
+ TEXT_DOMAIN)}
45
+ </p>
46
+ {/* TODO: leaving this hard coded until we can update the airtable data structure */}
47
+ <ul>
48
+ <li>Editor Plus</li>
49
+ </ul>
50
+ <ButtonGroup>
51
+ <Button isPrimary onClick={installPlugins}>
52
+ {__('Activate Plugins', TEXT_DOMAIN)}
53
+ </Button>
54
+ {props.showClose && <Button isTertiary onClick={closeModal} style={{
55
+ boxShadow: 'none', margin: '0 4px',
56
+ }}>
57
+ {__('No thanks, return to library', TEXT_DOMAIN)}
58
+ </Button>}
59
+ </ButtonGroup>
60
+ </Modal>
61
+ )}
62
+ </>
63
+ )
64
+ }
extendify-sdk/src/gutenberg/middleware/hasPluginsActivated/ActivatingModal.js ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { __ } from '@wordpress/i18n'
2
+ import {
3
+ Modal, Button, Notice,
4
+ } from '@wordpress/components'
5
+ import { TEXT_DOMAIN } from '../../global'
6
+ import {
7
+ useEffect, useState, render,
8
+ } from '@wordpress/element'
9
+ import store from '../../store'
10
+ import { Plugins } from '../../api'
11
+ import { ActivatePluginsModal } from './ActivatePluginsModal'
12
+
13
+ export const ActivatingModal = () => {
14
+ const [errorMessage, setErrorMessage] = useState('')
15
+ const previousState = store.getState()
16
+ delete previousState.templates
17
+ useEffect(() => {
18
+ previousState.reloadRequirements.insertCurrentTemplate = 1
19
+ const sessionState = errorMessage.length
20
+ ? null
21
+ : JSON.stringify(previousState)
22
+ window.sessionStorage.setItem('extendify-sdk-reload-session', sessionState)
23
+ }, [errorMessage, previousState])
24
+
25
+ const goBack = () => {
26
+ render(<ActivatePluginsModal previousState={previousState} />, document.querySelector('#extendify-root'))
27
+ }
28
+
29
+ Plugins.installAndActivate(previousState?.currentPreviewTemplate?.fields?.required_plugins)
30
+ .then(async () => {
31
+ await new Promise((resolve) => setTimeout(resolve, 1500))
32
+ window.dispatchEvent(new CustomEvent('extendfy::activate-required-complete'))
33
+ })
34
+ .catch(({ response }) => {
35
+ setErrorMessage(response.data.message)
36
+ })
37
+
38
+ return errorMessage
39
+ ? (
40
+ <>
41
+ <Modal
42
+ style={{
43
+ maxWidth: '500px',
44
+ }}
45
+ title={__('Error Activating plugins', TEXT_DOMAIN)}
46
+ isDismissible={false}
47
+ >
48
+ {__('You have encountered an error that we cannot recover from. Please try again.', TEXT_DOMAIN)}
49
+ <br />
50
+ <Notice isDismissible={false} status="error">
51
+ {errorMessage}
52
+ </Notice>
53
+ <Button isPrimary onClick={goBack}>
54
+ {__('Go back', TEXT_DOMAIN)}
55
+ </Button>
56
+ </Modal>
57
+ </>
58
+ )
59
+ : (
60
+ <>
61
+ <Modal title={__('Activating plugins', TEXT_DOMAIN)} isDismissible={false}>
62
+ <Button style={{
63
+ width: '100%',
64
+ }} disabled isPrimary isBusy onClick={() => {}}>
65
+ {__('Activating...', TEXT_DOMAIN)}
66
+ </Button>
67
+ </Modal>
68
+ </>
69
+ )
70
+ }
extendify-sdk/src/gutenberg/middleware/hasPluginsActivated/index.js ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { checkIfUserNeedsToActivatePlugins } from '../helpers'
2
+ import { ActivatePluginsModal } from './ActivatePluginsModal'
3
+ import { render } from '@wordpress/element'
4
+ import store from '../../store'
5
+
6
+ export const hasPluginsActivated = async (template) => {
7
+ const previousState = store.getState()
8
+ return {
9
+ id: 'hasPluginsActivated',
10
+ pass: !(await checkIfUserNeedsToActivatePlugins(template)),
11
+ async allow() {},
12
+ async deny() {
13
+ return new Promise((resolve) => {
14
+ render(<ActivatePluginsModal previousState={previousState} showClose={true}/>,
15
+ document.querySelector('#extendify-root'))
16
+ window.addEventListener('extendfy::activate-required-complete', () => {
17
+ resolve()
18
+ })
19
+ })
20
+ },
21
+ }
22
+ }
extendify-sdk/src/gutenberg/middleware/hasRequiredPlugins/InstallingModal.js ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { __ } from '@wordpress/i18n'
2
+ import {
3
+ Modal, Button, Notice,
4
+ } from '@wordpress/components'
5
+ import { TEXT_DOMAIN } from '../../global'
6
+ import {
7
+ useEffect, useState, render,
8
+ } from '@wordpress/element'
9
+ import store from '../../store'
10
+ import { Plugins } from '../../api'
11
+ import { RequiredPluginsModal } from './RequiredPluginsModal'
12
+
13
+ export const InstallingModal = () => {
14
+ const [errorMessage, setErrorMessage] = useState('')
15
+ const previousState = store.getState()
16
+ delete previousState.templates
17
+ useEffect(() => {
18
+ previousState.reloadRequirements.insertCurrentTemplate = 1
19
+ const sessionState = errorMessage.length
20
+ ? null
21
+ : JSON.stringify(previousState)
22
+ window.sessionStorage.setItem('extendify-sdk-reload-session', sessionState)
23
+ }, [errorMessage, previousState])
24
+
25
+ const goBack = () => {
26
+ render(<RequiredPluginsModal previousState={previousState} />, document.querySelector('#extendify-root'))
27
+ }
28
+
29
+ Plugins.installAndActivate(previousState?.currentPreviewTemplate?.fields?.required_plugins)
30
+ .then(() => {
31
+ window.dispatchEvent(new CustomEvent('extendfy::install-required-complete'))
32
+ })
33
+ .catch(({ response }) => {
34
+ setErrorMessage(response.data.message)
35
+ })
36
+
37
+ return errorMessage
38
+ ? (
39
+ <>
40
+ <Modal
41
+ style={{
42
+ maxWidth: '500px',
43
+ }}
44
+ title={__('Error installing plugins', TEXT_DOMAIN)}
45
+ isDismissible={false}
46
+ >
47
+ {__('You have encountered an error that we cannot recover from. Please try again.', TEXT_DOMAIN)}
48
+ <br />
49
+ <Notice isDismissible={false} status="error">
50
+ {errorMessage}
51
+ </Notice>
52
+ <Button isPrimary onClick={goBack}>
53
+ {__('Go back', TEXT_DOMAIN)}
54
+ </Button>
55
+ </Modal>
56
+ </>
57
+ )
58
+ : (
59
+ <>
60
+ <Modal title={__('Installing plugins', TEXT_DOMAIN)} isDismissible={false}>
61
+ <Button style={{
62
+ width: '100%',
63
+ }} disabled isPrimary isBusy onClick={() => {}}>
64
+ {__('Installing...', TEXT_DOMAIN)}
65
+ </Button>
66
+ </Modal>
67
+ </>
68
+ )
69
+ }
extendify-sdk/src/gutenberg/middleware/hasRequiredPlugins/RequiredPluginsModal.js ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { __, sprintf } from '@wordpress/i18n'
2
+ import { TEXT_DOMAIN } from '../../global'
3
+ import TemplatesLibraryModal from '../../components/library-modal/index'
4
+ import { dispatch, select } from '@wordpress/data'
5
+ import {
6
+ Modal, Button, ButtonGroup,
7
+ } from '@wordpress/components'
8
+ import { useState } from '@wordpress/element'
9
+ import { render } from '@wordpress/element'
10
+ import { InstallingModal } from './InstallingModal'
11
+
12
+ export const RequiredPluginsModal = (props) => {
13
+ const { setSpecificState, setCurrentPreviewTemplate } = dispatch('extendify-templates/data')
14
+ const { getCurrentPreviewTemplate } = select('extendify-templates/data')
15
+ const [isOpen, setOpen] = useState(true)
16
+ const previouslyViewedTemplate = getCurrentPreviewTemplate()
17
+
18
+ // Closing the modal will reset the library state
19
+ const closeModal = () => {
20
+ if (props.forceOpen) {
21
+ return
22
+ }
23
+ setOpen(false)
24
+ if (props.previousState) {
25
+ setSpecificState(props.previousState)
26
+ setCurrentPreviewTemplate(previouslyViewedTemplate)
27
+ }
28
+ render(<TemplatesLibraryModal />, document.querySelector('#extendify-root'))
29
+ }
30
+
31
+ const installPlugins = async () => {
32
+ setOpen(false)
33
+ render(<InstallingModal />, document.querySelector('#extendify-root'))
34
+ }
35
+ const type = props.previousState?.currentPreviewTemplate?.fields?.type ?? 'template'
36
+ return (
37
+ <>
38
+ {isOpen && (
39
+ <Modal
40
+ title={props.title ?? __('Install required plugins', TEXT_DOMAIN)}
41
+ closeButtonLabel={__('No thanks, take me back', TEXT_DOMAIN)}
42
+ onRequestClose={closeModal}
43
+ >
44
+ <p style={{
45
+ maxWidth: '400px',
46
+ }}>
47
+ {props.message ?? __(sprintf('There is just one more step. This %s requires the following to be automatically installed:',
48
+ type),
49
+ TEXT_DOMAIN)}
50
+ </p>
51
+ {/* TODO: leaving this hard coded until we can update the airtable data structure */}
52
+ {props.message?.length > 0 || <ul>
53
+ <li>Editor Plus</li>
54
+ </ul>}
55
+ <ButtonGroup>
56
+ <Button isPrimary onClick={installPlugins}>
57
+ {props.buttonLabel ?? __('Install Plugins', TEXT_DOMAIN)}
58
+ </Button>
59
+ {props.forceOpen || <Button isTertiary onClick={closeModal} style={{
60
+ boxShadow: 'none', margin: '0 4px',
61
+ }}>
62
+ {__('No thanks, take me back', TEXT_DOMAIN)}
63
+ </Button>}
64
+ </ButtonGroup>
65
+ </Modal>
66
+ )}
67
+ </>
68
+ )
69
+ }
extendify-sdk/src/gutenberg/middleware/hasRequiredPlugins/index.js ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { checkIfUserNeedsToInstallPlugins } from '../helpers'
2
+ import { RequiredPluginsModal } from './RequiredPluginsModal'
3
+ import { render } from '@wordpress/element'
4
+ import store from '../../store'
5
+
6
+ export const hasRequiredPlugins = async (template) => {
7
+ const previousState = store.getState()
8
+ return {
9
+ id: 'hasRequiredPlugins',
10
+ pass: !(await checkIfUserNeedsToInstallPlugins(template)),
11
+ async allow() {},
12
+ async deny() {
13
+ return new Promise((resolve) => {
14
+ render(<RequiredPluginsModal previousState={previousState} />,
15
+ document.querySelector('#extendify-root'))
16
+ window.addEventListener('extendfy::install-required-complete', () => {
17
+ resolve()
18
+ })
19
+ })
20
+ },
21
+ }
22
+ }
extendify-sdk/src/gutenberg/middleware/helpers.js ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { Plugins } from '../api'
2
+ import { get } from 'lodash'
3
+ import { dispatch } from '@wordpress/data'
4
+ export async function checkIfUserNeedsToInstallPlugins(template) {
5
+ // TODO: for now assume required plugins is valid data (from Airtable)!
6
+ const required = get(template, 'fields.required_plugins') ?? []
7
+ if (!required.length) {
8
+ return false
9
+ }
10
+ let installed = Object.keys(await Plugins.getInstalled())
11
+
12
+ // if no dependencies are required, then this will be false automatically
13
+ const weNeedInstalls = required.length
14
+ ? required.filter((plugin) => {
15
+ // TODO: if we have better data to work with this can be more literal
16
+ return !installed.some((k) => {
17
+ return k.includes(plugin)
18
+ })
19
+ })
20
+ : false
21
+
22
+ // This instructs the system to reload "later"
23
+ const { setReloadRequirements } = dispatch('extendify-templates/data')
24
+ setReloadRequirements({
25
+ required: +weNeedInstalls.length,
26
+ })
27
+
28
+ return weNeedInstalls.length
29
+ }
30
+
31
+ export async function checkIfUserNeedsToActivatePlugins(template) {
32
+ // TODO: for now assume required plugins is valid data (from Airtable)!
33
+ const required = get(template, 'fields.required_plugins') ?? []
34
+ if (!required.length) {
35
+ return false
36
+ }
37
+ let activated = Object.values(await Plugins.getActivated())
38
+ // if no dependencies are required, then this will be false automatically
39
+ const weNeedActivations = required.length
40
+ ? required.filter((plugin) => {
41
+ // TODO: if we have better data to work with this can be more literal
42
+ return !activated.some((k) => {
43
+ return k.includes(plugin)
44
+ })
45
+ })
46
+ : false
47
+
48
+ // if the plugins we need to have activated are not even installed, handle them elsewhere
49
+ if (weNeedActivations) {
50
+ // This call is a bit more expensive so only run it if needed
51
+ if (await checkIfUserNeedsToInstallPlugins(template)) {
52
+ return false
53
+ }
54
+ }
55
+
56
+ // This instructs the system to reload "later"
57
+ const { setReloadRequirements } = dispatch('extendify-templates/data')
58
+ setReloadRequirements({
59
+ required: +weNeedActivations.length,
60
+ })
61
+
62
+ return weNeedActivations.length
63
+ }
extendify-sdk/src/gutenberg/middleware/index.js ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { hasRequiredPlugins } from './hasRequiredPlugins'
2
+ import { hasPluginsActivated } from './hasPluginsActivated'
3
+ import { needsPageReload } from './needsPageReload'
4
+ import { dispatch } from '@wordpress/data'
5
+
6
+ export const Middleware = (middleware = []) => {
7
+ return {
8
+ hasRequiredPlugins: hasRequiredPlugins,
9
+ hasPluginsActivated: hasPluginsActivated,
10
+ needsPageReload: needsPageReload,
11
+ stack: [],
12
+ async check(template) {
13
+ for (const m of middleware) {
14
+ let cb = await this[`${m}`](template)
15
+ setTimeout(() => {
16
+ this.stack.push(cb.pass
17
+ ? cb.allow
18
+ : cb.deny)
19
+ }, 0)
20
+ }
21
+ },
22
+ reset() {
23
+ this.stack = []
24
+
25
+ // This is a bit hardcoded, and should probably add a cleanup functionality to each middleware
26
+ const { setReloadRequirements } = dispatch('extendify-templates/data')
27
+ setReloadRequirements({
28
+ required: 0,
29
+ })
30
+ },
31
+ }
32
+ }
33
+
34
+ export async function AuthorizationCheck(pipes) {
35
+ const middleware = MiddlewareGenerator(pipes)
36
+ while (true) {
37
+ const result = await middleware.next()
38
+
39
+ // TODO: Could probably have a check for errors here
40
+ if (result.done) {
41
+ break
42
+ }
43
+ }
44
+ }
45
+ export async function* MiddlewareGenerator(middleware) {
46
+ for (const m of middleware) {
47
+ yield await m()
48
+ }
49
+ }
extendify-sdk/src/gutenberg/middleware/needsPageReload/ReloadRequiredModal.js ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { __ } from '@wordpress/i18n'
2
+ import { TEXT_DOMAIN } from '../../global'
3
+ import {
4
+ Modal, Button, ButtonGroup,
5
+ } from '@wordpress/components'
6
+ import { useState } from '@wordpress/element'
7
+ import { dispatch, select } from '@wordpress/data'
8
+
9
+ export const ReloadRequiredModal = () => {
10
+ const [isSaving, setSaving] = useState(false)
11
+ const { isEditedPostDirty } = select('core/editor')
12
+ const hasUnsavedChanges = isEditedPostDirty()
13
+ const saveChanges = async () => {
14
+ setSaving(true)
15
+ await dispatch('core/editor').savePost()
16
+ setSaving(false)
17
+ }
18
+ const reload = () => {
19
+ location.reload()
20
+ }
21
+ if (!hasUnsavedChanges) {
22
+ reload()
23
+ return null
24
+ }
25
+ return (
26
+ <>
27
+ <Modal title={__('Reload required', TEXT_DOMAIN)} isDismissible={false}>
28
+ <p style={{
29
+ maxWidth: '400px',
30
+ }}>
31
+ {__('Just one more thing! We need to reload the page to continue.', TEXT_DOMAIN)}
32
+ </p>
33
+ <ButtonGroup>
34
+ <Button isPrimary onClick={reload} disabled={isSaving}>
35
+ {__('Reload page', TEXT_DOMAIN)}
36
+ </Button>
37
+ <Button isSecondary onClick={saveChanges} isBusy={isSaving} style={{
38
+ margin: '0 4px',
39
+ }}>
40
+ {__('Save changes', TEXT_DOMAIN)}
41
+ </Button>
42
+ </ButtonGroup>
43
+ </Modal>
44
+ </>
45
+ )
46
+ }
extendify-sdk/src/gutenberg/middleware/needsPageReload/index.js ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { render } from '@wordpress/element'
2
+ import { ReloadRequiredModal } from './ReloadRequiredModal'
3
+ import store from '../../store'
4
+
5
+ export const needsPageReload = async () => {
6
+ const state = store.getState()
7
+ return {
8
+ id: 'needsPageReload',
9
+ pass: !state?.reloadRequirements?.required,
10
+ async allow() {},
11
+ async deny() {
12
+ // This one doesn't resolve since we will force a page reload
13
+ return new Promise(() => {
14
+ render(<ReloadRequiredModal />, document.querySelector('#extendify-root'))
15
+ })
16
+ },
17
+ }
18
+ }
extendify-sdk/src/gutenberg/plugins/header-btn/index.js ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * @description Renders Template Library Trigger in Gutenberg Editor Header
4
+ *
5
+ */
6
+
7
+ /**
8
+ *
9
+ * Wordpress Dependencies
10
+ *
11
+ */
12
+
13
+ import { __ } from '@wordpress/i18n'
14
+ import { dispatch } from '@wordpress/data'
15
+ import { renderToString } from '@wordpress/element'
16
+
17
+ /**
18
+ *
19
+ * Custom Dependencies
20
+ *
21
+ */
22
+
23
+ import { TEXT_DOMAIN } from '../../global'
24
+ import Icon from '../../assets/icons'
25
+
26
+ function insertHeaderButton() {
27
+ // just to keep it cleaner - we refer to our link by id for speed of lookup on DOM.
28
+ var link_id = 'extendify-templates-inserter-btn'
29
+
30
+ // prepare our custom link's html.
31
+ var link_html =
32
+ '<div id="extendify-templates-inserter"><button type="button" id="' +
33
+ link_id +
34
+ '" class="components-button">' +
35
+ renderToString(<Icon icon="library" />) +
36
+ __('Library', TEXT_DOMAIN) +
37
+ '</button></div>'
38
+
39
+ // check if gutenberg's editor root element is present.
40
+ var editorEl = document.getElementById('editor')
41
+ if (!editorEl) {
42
+ // do nothing if there's no gutenberg root element on page.
43
+ return
44
+ }
45
+
46
+ window.wp.data.subscribe(function () {
47
+ setTimeout(function () {
48
+ if (!document.getElementById(link_id)) {
49
+ var toolbalEl = editorEl.querySelector('.edit-post-header-toolbar')
50
+ if (toolbalEl instanceof HTMLElement) {
51
+ toolbalEl.insertAdjacentHTML('beforeend', link_html)
52
+
53
+ // hooking the template library toggle event
54
+ document.querySelector('#' + link_id).addEventListener('click', function () {
55
+ const { setLibraryPreviewStatus } = dispatch('extendify-templates/data')
56
+
57
+ setLibraryPreviewStatus(true)
58
+ })
59
+ }
60
+ }
61
+ }, 1)
62
+ })
63
+ }
64
+
65
+ window.wp.domReady(insertHeaderButton)
extendify-sdk/src/gutenberg/plugins/header-btn/style.scss ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ #extendify-templates-inserter {
2
+ display: flex;
3
+ flex-direction: column;
4
+ justify-content: center;
5
+
6
+ svg {
7
+ margin-right: $grid-unit-10;
8
+ fill: none; /** overwriting gutenberg svg fill **/
9
+ }
10
+ }
extendify-sdk/src/gutenberg/plugins/index.js ADDED
@@ -0,0 +1,2 @@
 
 
1
+ import './header-btn/index';
2
+ import './more-menu-btn/index';
extendify-sdk/src/gutenberg/plugins/more-menu-btn/index.js ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /***
2
+ * @description Adds Templates Library Trigger in Gutenberg More Menu Dropdown
3
+ */
4
+
5
+ /**
6
+ *
7
+ * Wordpress Dependencies
8
+ *
9
+ */
10
+
11
+ import { registerPlugin } from '@wordpress/plugins'
12
+ import { PluginSidebarMoreMenuItem } from '@wordpress/edit-post'
13
+ import { __ } from '@wordpress/i18n'
14
+ import { compose } from '@wordpress/compose'
15
+ import { withSelect, withDispatch } from '@wordpress/data'
16
+
17
+ /**
18
+ *
19
+ * Custom Imports
20
+ *
21
+ */
22
+ import { TEXT_DOMAIN } from '../../global'
23
+ import Icon from '../../assets/icons'
24
+
25
+ registerPlugin('extendify-temps-more-menu-trigger', {
26
+ render: compose([
27
+ withSelect((select) => {
28
+ const { getLibraryPreviewStatus } = select('extendify-templates/data')
29
+
30
+ return {
31
+ previewStatus: getLibraryPreviewStatus(),
32
+ }
33
+ }),
34
+ withDispatch((dispatch, { previewStatus }) => {
35
+ const { setLibraryPreviewStatus } = dispatch('extendify-templates/data')
36
+
37
+ return {
38
+
39
+ /**
40
+ *
41
+ * Will toggle the templates library preview status
42
+ *
43
+ */
44
+
45
+ toggleTemplatesLibraryPreview() {
46
+ setLibraryPreviewStatus(!previewStatus)
47
+ },
48
+ }
49
+ }),
50
+ ])(({ previewStatus, toggleTemplatesLibraryPreview }) => (
51
+ <PluginSidebarMoreMenuItem
52
+ isPrimary={previewStatus}
53
+ onClick={toggleTemplatesLibraryPreview}
54
+ className="etfy-lib-menu"
55
+ icon={
56
+ <span className="components-menu-items__item-icon">
57
+ <Icon icon="library" />
58
+ </span>
59
+ }
60
+ >
61
+ {__('Library', TEXT_DOMAIN)}
62
+ </PluginSidebarMoreMenuItem>
63
+ )),
64
+ })
extendify-sdk/src/gutenberg/plugins/more-menu-btn/style.scss ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ .etfy-lib-menu {
2
+ svg {
3
+ fill: none; /** overwriting gutenberg svg fill **/
4
+ }
5
+ }
extendify-sdk/src/gutenberg/scss/_mixins.scss ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * SCSS Utility for creating breakpoints inline
4
+ *
5
+ * @example
6
+ * .class {
7
+ ...css
8
+ @include breakpoint(large) {
9
+ display:block;
10
+ }
11
+ }
12
+ *
13
+ **/
14
+
15
+ @mixin breakpoint($class) {
16
+ @if $class == huge {
17
+ @media (max-width: $break-huge) {
18
+ @content;
19
+ }
20
+ } @else if $class == wide {
21
+ @media (max-width: $break-wide) {
22
+ @content;
23
+ }
24
+ } @else if $class == xlarge {
25
+ @media (max-width: $break-xlarge) {
26
+ @content;
27
+ }
28
+ } @else if $class == large {
29
+ @media (max-width: $break-large) {
30
+ @content;
31
+ }
32
+ } @else if $class == medium {
33
+ @media (max-width: $break-medium) {
34
+ @content;
35
+ }
36
+ } @else if $class == small {
37
+ @media (max-width: $break-small) {
38
+ @content;
39
+ }
40
+ } @else if $class == mobile {
41
+ @media (max-width: $break-mobile) {
42
+ @content;
43
+ }
44
+ } @else if $class == zoomed-in {
45
+ @media (max-width: $break-zoomed-in) {
46
+ @content;
47
+ }
48
+ } @else {
49
+ @warn "Breakpoint mixin supports: wide, xlarge, large, medium, small, mobile, zoomed-in";
50
+ }
51
+ }
52
+
53
+ @mixin successButton() {
54
+ background-color: $alert-green;
55
+ color: $white;
56
+ outline: $white;
57
+
58
+ &:focus {
59
+ color: $white;
60
+ box-shadow: none !important;
61
+ }
62
+ }
extendify-sdk/src/gutenberg/scss/_variables.scss ADDED
File without changes
extendify-sdk/src/gutenberg/store/actions/index.js ADDED
@@ -0,0 +1,118 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Template Library Actions
4
+ *
5
+ */
6
+ // import { initialState } from '../reducer/index'
7
+
8
+ const actions = {
9
+
10
+ /**
11
+ * Will set the given library in the base state
12
+ *
13
+ * @param {object} library
14
+ */
15
+
16
+ setLibraryPreviewStatus(status) {
17
+ return {
18
+ type: 'SET_LIBRARY_PREVIEW_STATUS',
19
+ status,
20
+ }
21
+ },
22
+
23
+ /**
24
+ * Will update the templates with the given one
25
+ *
26
+ * @param {array} templates
27
+ */
28
+
29
+ setTemplates(templates) {
30
+ return {
31
+ type: 'SET_TEMPLATES',
32
+ templates,
33
+ }
34
+ },
35
+
36
+ /**
37
+ *
38
+ * Will set the loading status of
39
+ * the given key
40
+ *
41
+ */
42
+
43
+ setLoadingStatus(key, status) {
44
+ return {
45
+ type: 'SET_LOADING_STATUS',
46
+ key,
47
+ status,
48
+ }
49
+ },
50
+
51
+ /**
52
+ * Will set the given template in the preview
53
+ * @param {object} template
54
+ */
55
+
56
+ setCurrentPreviewTemplate(template) {
57
+ return {
58
+ type: 'SET_PREVIEW_TEMPLATE',
59
+ template,
60
+ }
61
+ },
62
+
63
+ /**
64
+ * Will set current filters
65
+ * @param {object} filter - Filter object to update
66
+ */
67
+
68
+ setFilters(filters) {
69
+ return {
70
+ type: 'SET_FILTERS',
71
+ filters,
72
+ }
73
+ },
74
+
75
+ setLastAppliedFilters(filters) {
76
+ return {
77
+ type: 'SET_LAST_APPLIED_FILTERS',
78
+ filters,
79
+ }
80
+ },
81
+
82
+ setCurrentScreen(screen) {
83
+ return {
84
+ type: 'SET_SCREEN',
85
+ screen,
86
+ }
87
+ },
88
+
89
+ setReloadRequirements(reload) {
90
+ return {
91
+ type: 'SET_RELOAD_REQUIREMENTS',
92
+ reload,
93
+ }
94
+ },
95
+
96
+ setSpecificState(state) {
97
+ return {
98
+ type: 'SET_STATE',
99
+ state,
100
+ }
101
+ },
102
+
103
+ setApiKey(key) {
104
+ return {
105
+ type: 'SET_KEY',
106
+ key,
107
+ }
108
+ },
109
+
110
+ setImportsCount(newImports) {
111
+ return {
112
+ type: 'SET_IMPORTS',
113
+ imports: newImports,
114
+ }
115
+ },
116
+ }
117
+
118
+ export default actions
extendify-sdk/src/gutenberg/store/controls/index.js ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Templates Library Controls
4
+ *
5
+ */
6
+
7
+ const controls = {};
8
+
9
+ export default controls;
extendify-sdk/src/gutenberg/store/index.js ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+
7
+ import { registerStore } from '@wordpress/data'
8
+
9
+ /**
10
+ *
11
+ * Custom Imports
12
+ *
13
+ */
14
+
15
+ import rootReducer from './reducer/index'
16
+ import actions from './actions/index'
17
+ import selectors from './selectors/index'
18
+ import resolvers from './resolvers/index'
19
+ import controls from './controls/index'
20
+
21
+ // configuring custom store
22
+ const STORE_NAME = 'extendify-templates/data'
23
+
24
+ /**
25
+ * Block editor data store configuration.
26
+ *
27
+ * @see https://github.com/WordPress/gutenberg/blob/master/packages/data/README.md#registerStore
28
+ *
29
+ * @type {Object}
30
+ */
31
+
32
+ const storeConfig = {
33
+ reducer: rootReducer,
34
+ actions,
35
+ selectors,
36
+ resolvers,
37
+ controls,
38
+ }
39
+
40
+ const store = registerStore(STORE_NAME, storeConfig)
41
+
42
+ export default store
extendify-sdk/src/gutenberg/store/reducer/index.js ADDED
@@ -0,0 +1,167 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Main Templates Library Reducer
4
+ *
5
+ */
6
+
7
+ export const initialState = {
8
+
9
+ /**
10
+ * Weather to preview the library or not
11
+ */
12
+
13
+ previewStatus: false,
14
+
15
+ /***
16
+ * Templates Data
17
+ */
18
+ templates: {
19
+ loading: false,
20
+ error: false,
21
+ records: [],
22
+ offset: '',
23
+ },
24
+
25
+ /**
26
+ * Available Template Types
27
+ */
28
+
29
+ templateTypes: ['pattern', 'template'],
30
+
31
+ /**
32
+ * Currently applied templates library filters
33
+ */
34
+
35
+ templateFilters: {
36
+ categories: [],
37
+ type: 'template',
38
+ search: '',
39
+ },
40
+
41
+ /**
42
+ * Template that is currently being previewed
43
+ */
44
+ currentPreviewTemplate: {},
45
+
46
+ /**
47
+ * current screen can be
48
+ * used for navigating in smaller viewport
49
+ * [ "menu", "templates", "single-template" ]
50
+ */
51
+ currentScreen: 'menu',
52
+
53
+ reloadRequirements: {
54
+ required: false,
55
+ insertCurrentTemplate: false,
56
+ },
57
+
58
+ /**
59
+ *
60
+ * Library Api key
61
+ *
62
+ */
63
+
64
+ apiKey: localStorage.getItem('etfy_library__key') ?? '',
65
+
66
+ /**
67
+ *
68
+ * For Import Counting
69
+ *
70
+ */
71
+
72
+ maxImports: 3,
73
+ currentImports: localStorage.getItem('etfy__library_imports_left') ?? 3,
74
+ }
75
+
76
+ export default function (state = initialState, action) {
77
+ switch (action.type) {
78
+ case 'SET_LIBRARY_PREVIEW_STATUS':
79
+ {
80
+ return {
81
+ ...state,
82
+ previewStatus: action.status,
83
+ }
84
+ }
85
+
86
+ case 'SET_TEMPLATES':
87
+ {
88
+ return {
89
+ ...state,
90
+ templates: {
91
+ ...state.templates,
92
+ ...action.templates,
93
+ },
94
+ }
95
+ }
96
+
97
+ case 'SET_PREVIEW_TEMPLATE':
98
+ {
99
+ return {
100
+ ...state,
101
+ currentPreviewTemplate: action.template,
102
+ }
103
+ }
104
+
105
+ case 'SET_FILTERS':
106
+ {
107
+ return {
108
+ ...state,
109
+ templateFilters: {
110
+ ...state.templateFilters,
111
+ ...action.filters,
112
+ },
113
+ }
114
+ }
115
+
116
+ case 'SET_LOADING_STATUS':
117
+ {
118
+ switch (action.key) {
119
+ case 'templates':
120
+ return {
121
+ ...state,
122
+ templates: {
123
+ ...state.templates,
124
+ loading: action.status,
125
+ },
126
+ }
127
+ }
128
+ break
129
+ }
130
+
131
+ case 'SET_SCREEN':
132
+ {
133
+ return {
134
+ ...state,
135
+ currentScreen: action.screen,
136
+ }
137
+ }
138
+
139
+ case 'SET_RELOAD_REQUIREMENTS': {
140
+ return {
141
+ ...state,
142
+ reloadRequirements: action.reload,
143
+ }
144
+ }
145
+
146
+ case 'SET_KEY':
147
+ {
148
+ return {
149
+ ...state,
150
+ apiKey: action.key,
151
+ }
152
+ }
153
+
154
+ case 'SET_STATE':
155
+ return action.state
156
+
157
+ case 'SET_IMPORTS': {
158
+ return {
159
+ ...state,
160
+ currentImports: action.imports,
161
+ }
162
+ }
163
+
164
+ default:
165
+ return state
166
+ }
167
+ }
extendify-sdk/src/gutenberg/store/resolvers/index.js ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Dependencies
4
+ *
5
+ */
6
+
7
+ // import { select } from '@wordpress/data'
8
+
9
+ /**
10
+ *
11
+ * Custom Imports
12
+ *
13
+ */
14
+
15
+ // import actions from '../actions/index'
16
+
17
+ /**
18
+ *
19
+ * Templates Library Store Resolvers
20
+ *
21
+ */
22
+
23
+ const resolvers = {}
24
+
25
+ export default resolvers
extendify-sdk/src/gutenberg/store/selectors/index.js ADDED
@@ -0,0 +1,138 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import {
2
+ get, isString, has,
3
+ } from 'lodash'
4
+
5
+ /***
6
+ *
7
+ * Templates Library Store Selectors
8
+ *
9
+ */
10
+
11
+ const selectors = {
12
+
13
+ /**
14
+ * Get Current Preview Status of Templates Library
15
+ */
16
+
17
+ getLibraryPreviewStatus(state) {
18
+ return get(state, 'previewStatus')
19
+ },
20
+
21
+ /**
22
+ * Fetches Templates From API
23
+ */
24
+
25
+ getTemplates(state) {
26
+ return get(state, 'templates')
27
+ },
28
+
29
+ /**
30
+ *
31
+ * Will return loading status of the state
32
+ * matching the given key
33
+ *
34
+ */
35
+
36
+ getLoadingStatus(state, key) {
37
+ switch (key) {
38
+ case 'templates':
39
+ return get(state, 'templates.loading')
40
+
41
+ default:
42
+ return false
43
+ }
44
+ },
45
+
46
+ /**
47
+ * @return {string[]} available template types
48
+ */
49
+ getTemplateTypes(state) {
50
+ return get(state, 'templateTypes')
51
+ },
52
+
53
+ /**
54
+ * Will return the current applied template
55
+ * @param {string} key - Filter to return
56
+ * @return {any} requiredFilter
57
+ */
58
+
59
+ getAppliedFilter(state, key) {
60
+ if (!isString(key)) {
61
+ return
62
+ }
63
+
64
+ const currentFilters = get(state, 'templateFilters')
65
+
66
+ if (!has(currentFilters, key)) {
67
+ return false
68
+ }
69
+
70
+ return get(currentFilters, key)
71
+ },
72
+
73
+ /**
74
+ * Will provide all currently applied filters
75
+ *
76
+ * @return {object} filters
77
+ */
78
+
79
+ getAppliedFilters(state) {
80
+ return get(state, 'templateFilters')
81
+ },
82
+
83
+ /**
84
+ * @return {object} currently previewing template
85
+ */
86
+
87
+ getCurrentPreviewTemplate(state) {
88
+ return get(state, 'currentPreviewTemplate')
89
+ },
90
+
91
+ getCurrentScreen(state) {
92
+ return get(state, 'currentScreen')
93
+ },
94
+
95
+ /**
96
+ *
97
+ * @return {string} apiKey
98
+ *
99
+ */
100
+
101
+ getApiKey(state) {
102
+ return get(state, 'apiKey')
103
+ },
104
+
105
+ /**
106
+ *
107
+ * @return {number} currentImports
108
+ *
109
+ */
110
+
111
+ getCurrentImports(state) {
112
+ return get(state, 'currentImports')
113
+ },
114
+
115
+ /**
116
+ *
117
+ * @return {number} maxImports
118
+ *
119
+ */
120
+
121
+ getMaxImports(state) {
122
+ return get(state, 'maxImports')
123
+ },
124
+
125
+ /**
126
+ *
127
+ * @return {boolean} authenticationStatus
128
+ *
129
+ */
130
+
131
+ getAuthenticationStatus(state) {
132
+ return get(state, 'apiKey')
133
+ ? true
134
+ : false
135
+ },
136
+ }
137
+
138
+ export default selectors
extendify-sdk/src/index.js ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Custom Store
4
+ *
5
+ */
6
+
7
+ import './gutenberg/store/index';
8
+
9
+ /***
10
+ *
11
+ * Plugins
12
+ *
13
+ */
14
+
15
+ import './gutenberg/plugins/index';
16
+
17
+ /***
18
+ *
19
+ * Base Features
20
+ *
21
+ */
22
+
23
+ import './gutenberg/base/templates-library/index';
24
+
25
+ import './gutenberg/listeners'
extendify-sdk/src/style.scss ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * Wordpress Base Styling
4
+ *
5
+ **/
6
+
7
+ @import 'node_modules/@wordpress/base-styles/colors';
8
+ @import 'node_modules/@wordpress/base-styles/variables';
9
+ @import 'node_modules/@wordpress/base-styles/mixins';
10
+ @import 'node_modules/@wordpress/base-styles/breakpoints';
11
+ @import 'node_modules/@wordpress/base-styles/animations';
12
+ @import 'node_modules/@wordpress/base-styles/z-index';
13
+
14
+ /**
15
+ *
16
+ * SCSS Partials
17
+ *
18
+ **/
19
+
20
+ @import './gutenberg/scss/variables';
21
+ @import './gutenberg/scss/mixins';
22
+
23
+ /**
24
+ *
25
+ * Components
26
+ *
27
+ **/
28
+
29
+ @import './gutenberg/components/library-modal/style.scss';
30
+ @import './gutenberg/components/library-content/style.scss';
31
+ @import './gutenberg/components/library-template/style.scss';
32
+ @import './gutenberg/components/library-sidebar/style.scss';
33
+ @import './gutenberg/components/library-sidebar-section/style.scss';
34
+ @import './gutenberg/components/library-template-preview/style.scss';
35
+ @import './gutenberg/components/library-load-more/style.scss';
36
+ @import './gutenberg/components/library-not-found/style.scss';
37
+ @import './gutenberg/components/library-imports-counter/style.scss';
38
+ @import './gutenberg/components/library-auth/style.scss';
39
+
40
+ /**
41
+ *
42
+ * Plugins
43
+ *
44
+ **/
45
+
46
+ @import './gutenberg/plugins/header-btn/style.scss';
47
+ @import './gutenberg/plugins/more-menu-btn/style.scss';
extendify-sdk/vendor/autoload.php ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // autoload.php @generated by Composer
4
+
5
+ require_once __DIR__ . '/composer/autoload_real.php';
6
+
7
+ return ComposerAutoloaderInit340a6822f05e2bfceab6432d90c2eeaa::getLoader();
extendify-sdk/vendor/composer/ClassLoader.php ADDED
@@ -0,0 +1,445 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ * This file is part of Composer.
5
+ *
6
+ * (c) Nils Adermann <naderman@naderman.de>
7
+ * Jordi Boggiano <j.boggiano@seld.be>
8
+ *
9
+ * For the full copyright and license information, please view the LICENSE
10
+ * file that was distributed with this source code.
11
+ */
12
+
13
+ namespace Composer\Autoload;
14
+
15
+ /**
16
+ * ClassLoader implements a PSR-0, PSR-4 and classmap class loader.
17
+ *
18
+ * $loader = new \Composer\Autoload\ClassLoader();
19
+ *
20
+ * // register classes with namespaces
21
+ * $loader->add('Symfony\Component', __DIR__.'/component');
22
+ * $loader->add('Symfony', __DIR__.'/framework');
23
+ *
24
+ * // activate the autoloader
25
+ * $loader->register();
26
+ *
27
+ * // to enable searching the include path (eg. for PEAR packages)
28
+ * $loader->setUseIncludePath(true);
29
+ *
30
+ * In this example, if you try to use a class in the Symfony\Component
31
+ * namespace or one of its children (Symfony\Component\Console for instance),
32
+ * the autoloader will first look for the class under the component/
33
+ * directory, and it will then fallback to the framework/ directory if not
34
+ * found before giving up.
35
+ *
36
+ * This class is loosely based on the Symfony UniversalClassLoader.
37
+ *
38
+ * @author Fabien Potencier <fabien@symfony.com>
39
+ * @author Jordi Boggiano <j.boggiano@seld.be>
40
+ * @see http://www.php-fig.org/psr/psr-0/
41
+ * @see http://www.php-fig.org/psr/psr-4/
42
+ */
43
+ class ClassLoader
44
+ {
45
+ // PSR-4
46
+ private $prefixLengthsPsr4 = array();
47
+ private $prefixDirsPsr4 = array();
48
+ private $fallbackDirsPsr4 = array();
49
+
50
+ // PSR-0
51
+ private $prefixesPsr0 = array();
52
+ private $fallbackDirsPsr0 = array();
53
+
54
+ private $useIncludePath = false;
55
+ private $classMap = array();
56
+ private $classMapAuthoritative = false;
57
+ private $missingClasses = array();
58
+ private $apcuPrefix;
59
+
60
+ public function getPrefixes()
61
+ {
62
+ if (!empty($this->prefixesPsr0)) {
63
+ return call_user_func_array('array_merge', array_values($this->prefixesPsr0));
64
+ }
65
+
66
+ return array();
67
+ }
68
+
69
+ public function getPrefixesPsr4()
70
+ {
71
+ return $this->prefixDirsPsr4;
72
+ }
73
+
74
+ public function getFallbackDirs()
75
+ {
76
+ return $this->fallbackDirsPsr0;
77
+ }
78
+
79
+ public function getFallbackDirsPsr4()
80
+ {
81
+ return $this->fallbackDirsPsr4;
82
+ }
83
+
84
+ public function getClassMap()
85
+ {
86
+ return $this->classMap;
87
+ }
88
+
89
+ /**
90
+ * @param array $classMap Class to filename map
91
+ */
92
+ public function addClassMap(array $classMap)
93
+ {
94
+ if ($this->classMap) {
95
+ $this->classMap = array_merge($this->classMap, $classMap);
96
+ } else {
97
+ $this->classMap = $classMap;
98
+ }
99
+ }
100
+
101
+ /**
102
+ * Registers a set of PSR-0 directories for a given prefix, either
103
+ * appending or prepending to the ones previously set for this prefix.
104
+ *
105
+ * @param string $prefix The prefix
106
+ * @param array|string $paths The PSR-0 root directories
107
+ * @param bool $prepend Whether to prepend the directories
108
+ */
109
+ public function add($prefix, $paths, $prepend = false)
110
+ {
111
+ if (!$prefix) {
112
+ if ($prepend) {
113
+ $this->fallbackDirsPsr0 = array_merge(
114
+ (array) $paths,
115
+ $this->fallbackDirsPsr0
116
+ );
117
+ } else {
118
+ $this->fallbackDirsPsr0 = array_merge(
119
+ $this->fallbackDirsPsr0,
120
+ (array) $paths
121
+ );
122
+ }
123
+
124
+ return;
125
+ }
126
+
127
+ $first = $prefix[0];
128
+ if (!isset($this->prefixesPsr0[$first][$prefix])) {
129
+ $this->prefixesPsr0[$first][$prefix] = (array) $paths;
130
+
131
+ return;
132
+ }
133
+ if ($prepend) {
134
+ $this->prefixesPsr0[$first][$prefix] = array_merge(
135
+ (array) $paths,
136
+ $this->prefixesPsr0[$first][$prefix]
137
+ );
138
+ } else {
139
+ $this->prefixesPsr0[$first][$prefix] = array_merge(
140
+ $this->prefixesPsr0[$first][$prefix],
141
+ (array) $paths
142
+ );
143
+ }
144
+ }
145
+
146
+ /**
147
+ * Registers a set of PSR-4 directories for a given namespace, either
148
+ * appending or prepending to the ones previously set for this namespace.
149
+ *
150
+ * @param string $prefix The prefix/namespace, with trailing '\\'
151
+ * @param array|string $paths The PSR-4 base directories
152
+ * @param bool $prepend Whether to prepend the directories
153
+ *
154
+ * @throws \InvalidArgumentException
155
+ */
156
+ public function addPsr4($prefix, $paths, $prepend = false)
157
+ {
158
+ if (!$prefix) {
159
+ // Register directories for the root namespace.
160
+ if ($prepend) {
161
+ $this->fallbackDirsPsr4 = array_merge(
162
+ (array) $paths,
163
+ $this->fallbackDirsPsr4
164
+ );
165
+ } else {
166
+ $this->fallbackDirsPsr4 = array_merge(
167
+ $this->fallbackDirsPsr4,
168
+ (array) $paths
169
+ );
170
+ }
171
+ } elseif (!isset($this->prefixDirsPsr4[$prefix])) {
172
+ // Register directories for a new namespace.
173
+ $length = strlen($prefix);
174
+ if ('\\' !== $prefix[$length - 1]) {
175
+ throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
176
+ }
177
+ $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
178
+ $this->prefixDirsPsr4[$prefix] = (array) $paths;
179
+ } elseif ($prepend) {
180
+ // Prepend directories for an already registered namespace.
181
+ $this->prefixDirsPsr4[$prefix] = array_merge(
182
+ (array) $paths,
183
+ $this->prefixDirsPsr4[$prefix]
184
+ );
185
+ } else {
186
+ // Append directories for an already registered namespace.
187
+ $this->prefixDirsPsr4[$prefix] = array_merge(
188
+ $this->prefixDirsPsr4[$prefix],
189
+ (array) $paths
190
+ );
191
+ }
192
+ }
193
+
194
+ /**
195
+ * Registers a set of PSR-0 directories for a given prefix,
196
+ * replacing any others previously set for this prefix.
197
+ *
198
+ * @param string $prefix The prefix
199
+ * @param array|string $paths The PSR-0 base directories
200
+ */
201
+ public function set($prefix, $paths)
202
+ {
203
+ if (!$prefix) {
204
+ $this->fallbackDirsPsr0 = (array) $paths;
205
+ } else {
206
+ $this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths;
207
+ }
208
+ }
209
+
210
+ /**
211
+ * Registers a set of PSR-4 directories for a given namespace,
212
+ * replacing any others previously set for this namespace.
213
+ *
214
+ * @param string $prefix The prefix/namespace, with trailing '\\'
215
+ * @param array|string $paths The PSR-4 base directories
216
+ *
217
+ * @throws \InvalidArgumentException
218
+ */
219
+ public function setPsr4($prefix, $paths)
220
+ {
221
+ if (!$prefix) {
222
+ $this->fallbackDirsPsr4 = (array) $paths;
223
+ } else {
224
+ $length = strlen($prefix);
225
+ if ('\\' !== $prefix[$length - 1]) {
226
+ throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
227
+ }
228
+ $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
229
+ $this->prefixDirsPsr4[$prefix] = (array) $paths;
230
+ }
231
+ }
232
+
233
+ /**
234
+ * Turns on searching the include path for class files.
235
+ *
236
+ * @param bool $useIncludePath
237
+ */
238
+ public function setUseIncludePath($useIncludePath)
239
+ {
240
+ $this->useIncludePath = $useIncludePath;
241
+ }
242
+
243
+ /**
244
+ * Can be used to check if the autoloader uses the include path to check
245
+ * for classes.
246
+ *
247
+ * @return bool
248
+ */
249
+ public function getUseIncludePath()
250
+ {
251
+ return $this->useIncludePath;
252
+ }
253
+
254
+ /**
255
+ * Turns off searching the prefix and fallback directories for classes
256
+ * that have not been registered with the class map.
257
+ *
258
+ * @param bool $classMapAuthoritative
259
+ */
260
+ public function setClassMapAuthoritative($classMapAuthoritative)
261
+ {
262
+ $this->classMapAuthoritative = $classMapAuthoritative;
263
+ }
264
+
265
+ /**
266
+ * Should class lookup fail if not found in the current class map?
267
+ *
268
+ * @return bool
269
+ */
270
+ public function isClassMapAuthoritative()
271
+ {
272
+ return $this->classMapAuthoritative;
273
+ }
274
+
275
+ /**
276
+ * APCu prefix to use to cache found/not-found classes, if the extension is enabled.
277
+ *
278
+ * @param string|null $apcuPrefix
279
+ */
280
+ public function setApcuPrefix($apcuPrefix)
281
+ {
282
+ $this->apcuPrefix = function_exists('apcu_fetch') && filter_var(ini_get('apc.enabled'), FILTER_VALIDATE_BOOLEAN) ? $apcuPrefix : null;
283
+ }
284
+
285
+ /**
286
+ * The APCu prefix in use, or null if APCu caching is not enabled.
287
+ *
288
+ * @return string|null
289
+ */
290
+ public function getApcuPrefix()
291
+ {
292
+ return $this->apcuPrefix;
293
+ }
294
+
295
+ /**
296
+ * Registers this instance as an autoloader.
297
+ *
298
+ * @param bool $prepend Whether to prepend the autoloader or not
299
+ */
300
+ public function register($prepend = false)
301
+ {
302
+ spl_autoload_register(array($this, 'loadClass'), true, $prepend);
303
+ }
304
+
305
+ /**
306
+ * Unregisters this instance as an autoloader.
307
+ */
308
+ public function unregister()
309
+ {
310
+ spl_autoload_unregister(array($this, 'loadClass'));
311
+ }
312
+
313
+ /**
314
+ * Loads the given class or interface.
315
+ *
316
+ * @param string $class The name of the class
317
+ * @return bool|null True if loaded, null otherwise
318
+ */
319
+ public function loadClass($class)
320
+ {
321
+ if ($file = $this->findFile($class)) {
322
+ includeFile($file);
323
+
324
+ return true;
325
+ }
326
+ }
327
+
328
+ /**
329
+ * Finds the path to the file where the class is defined.
330
+ *
331
+ * @param string $class The name of the class
332
+ *
333
+ * @return string|false The path if found, false otherwise
334
+ */
335
+ public function findFile($class)
336
+ {
337
+ // class map lookup
338
+ if (isset($this->classMap[$class])) {
339
+ return $this->classMap[$class];
340
+ }
341
+ if ($this->classMapAuthoritative || isset($this->missingClasses[$class])) {
342
+ return false;
343
+ }
344
+ if (null !== $this->apcuPrefix) {
345
+ $file = apcu_fetch($this->apcuPrefix.$class, $hit);
346
+ if ($hit) {
347
+ return $file;
348
+ }
349
+ }
350
+
351
+ $file = $this->findFileWithExtension($class, '.php');
352
+
353
+ // Search for Hack files if we are running on HHVM
354
+ if (false === $file && defined('HHVM_VERSION')) {
355
+ $file = $this->findFileWithExtension($class, '.hh');
356
+ }
357
+
358
+ if (null !== $this->apcuPrefix) {
359
+ apcu_add($this->apcuPrefix.$class, $file);
360
+ }
361
+
362
+ if (false === $file) {
363
+ // Remember that this class does not exist.
364
+ $this->missingClasses[$class] = true;
365
+ }
366
+
367
+ return $file;
368
+ }
369
+
370
+ private function findFileWithExtension($class, $ext)
371
+ {
372
+ // PSR-4 lookup
373
+ $logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext;
374
+
375
+ $first = $class[0];
376
+ if (isset($this->prefixLengthsPsr4[$first])) {
377
+ $subPath = $class;
378
+ while (false !== $lastPos = strrpos($subPath, '\\')) {
379
+ $subPath = substr($subPath, 0, $lastPos);
380
+ $search = $subPath . '\\';
381
+ if (isset($this->prefixDirsPsr4[$search])) {
382
+ $pathEnd = DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1);
383
+ foreach ($this->prefixDirsPsr4[$search] as $dir) {
384
+ if (file_exists($file = $dir . $pathEnd)) {
385
+ return $file;
386
+ }
387
+ }
388
+ }
389
+ }
390
+ }
391
+
392
+ // PSR-4 fallback dirs
393
+ foreach ($this->fallbackDirsPsr4 as $dir) {
394
+ if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) {
395
+ return $file;
396
+ }
397
+ }
398
+
399
+ // PSR-0 lookup
400
+ if (false !== $pos = strrpos($class, '\\')) {
401
+ // namespaced class name
402
+ $logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1)
403
+ . strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR);
404
+ } else {
405
+ // PEAR-like class name
406
+ $logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext;
407
+ }
408
+
409
+ if (isset($this->prefixesPsr0[$first])) {
410
+ foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) {
411
+ if (0 === strpos($class, $prefix)) {
412
+ foreach ($dirs as $dir) {
413
+ if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
414
+ return $file;
415
+ }
416
+ }
417
+ }
418
+ }
419
+ }
420
+
421
+ // PSR-0 fallback dirs
422
+ foreach ($this->fallbackDirsPsr0 as $dir) {
423
+ if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
424
+ return $file;
425
+ }
426
+ }
427
+
428
+ // PSR-0 include paths.
429
+ if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) {
430
+ return $file;
431
+ }
432
+
433
+ return false;
434
+ }
435
+ }
436
+
437
+ /**
438
+ * Scope isolated include.
439
+ *
440
+ * Prevents access to $this/self from included files.
441
+ */
442
+ function includeFile($file)
443
+ {
444
+ include $file;
445
+ }
extendify-sdk/vendor/composer/InstalledVersions.php ADDED
@@ -0,0 +1,654 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+ namespace Composer;
14
+
15
+ use Composer\Autoload\ClassLoader;
16
+ use Composer\Semver\VersionParser;
17
+
18
+
19
+
20
+
21
+
22
+
23
+ class InstalledVersions
24
+ {
25
+ private static $installed = array (
26
+ 'root' =>
27
+ array (
28
+ 'pretty_version' => 'dev-main',
29
+ 'version' => 'dev-main',
30
+ 'aliases' =>
31
+ array (
32
+ ),
33
+ 'reference' => 'ac2cfec95277e7980dfcf8dfde5cd858f1023e03',
34
+ 'name' => 'extendify/extendify-sdk',
35
+ ),
36
+ 'versions' =>
37
+ array (
38
+ 'dealerdirect/phpcodesniffer-composer-installer' =>
39
+ array (
40
+ 'pretty_version' => 'v0.7.1',
41
+ 'version' => '0.7.1.0',
42
+ 'aliases' =>
43
+ array (
44
+ ),
45
+ 'reference' => 'fe390591e0241955f22eb9ba327d137e501c771c',
46
+ ),
47
+ 'doctrine/instantiator' =>
48
+ array (
49
+ 'pretty_version' => '1.4.0',
50
+ 'version' => '1.4.0.0',
51
+ 'aliases' =>
52
+ array (
53
+ ),
54
+ 'reference' => 'd56bf6102915de5702778fe20f2de3b2fe570b5b',
55
+ ),
56
+ 'extendify/extendify-sdk' =>
57
+ array (
58
+ 'pretty_version' => 'dev-main',
59
+ 'version' => 'dev-main',
60
+ 'aliases' =>
61
+ array (
62
+ ),
63
+ 'reference' => 'ac2cfec95277e7980dfcf8dfde5cd858f1023e03',
64
+ ),
65
+ 'johnpbloch/wordpress-core' =>
66
+ array (
67
+ 'pretty_version' => '5.7.0',
68
+ 'version' => '5.7.0.0',
69
+ 'aliases' =>
70
+ array (
71
+ ),
72
+ 'reference' => '8b057056692ca196aaa7a7ddd915f29426922c6d',
73
+ ),
74
+ 'myclabs/deep-copy' =>
75
+ array (
76
+ 'pretty_version' => '1.10.2',
77
+ 'version' => '1.10.2.0',
78
+ 'aliases' =>
79
+ array (
80
+ ),
81
+ 'reference' => '776f831124e9c62e1a2c601ecc52e776d8bb7220',
82
+ 'replaced' =>
83
+ array (
84
+ 0 => '1.10.2',
85
+ ),
86
+ ),
87
+ 'nikic/php-parser' =>
88
+ array (
89
+ 'pretty_version' => 'v4.10.4',
90
+ 'version' => '4.10.4.0',
91
+ 'aliases' =>
92
+ array (
93
+ ),
94
+ 'reference' => 'c6d052fc58cb876152f89f532b95a8d7907e7f0e',
95
+ ),
96
+ 'phar-io/manifest' =>
97
+ array (
98
+ 'pretty_version' => '2.0.1',
99
+ 'version' => '2.0.1.0',
100
+ 'aliases' =>
101
+ array (
102
+ ),
103
+ 'reference' => '85265efd3af7ba3ca4b2a2c34dbfc5788dd29133',
104
+ ),
105
+ 'phar-io/version' =>
106
+ array (
107
+ 'pretty_version' => '3.1.0',
108
+ 'version' => '3.1.0.0',
109
+ 'aliases' =>
110
+ array (
111
+ ),
112
+ 'reference' => 'bae7c545bef187884426f042434e561ab1ddb182',
113
+ ),
114
+ 'phpcompatibility/php-compatibility' =>
115
+ array (
116
+ 'pretty_version' => '9.3.5',
117
+ 'version' => '9.3.5.0',
118
+ 'aliases' =>
119
+ array (
120
+ ),
121
+ 'reference' => '9fb324479acf6f39452e0655d2429cc0d3914243',
122
+ ),
123
+ 'phpcompatibility/phpcompatibility-paragonie' =>
124
+ array (
125
+ 'pretty_version' => '1.3.1',
126
+ 'version' => '1.3.1.0',
127
+ 'aliases' =>
128
+ array (
129
+ ),
130
+ 'reference' => 'ddabec839cc003651f2ce695c938686d1086cf43',
131
+ ),
132
+ 'phpcompatibility/phpcompatibility-wp' =>
133
+ array (
134
+ 'pretty_version' => '2.1.1',
135
+ 'version' => '2.1.1.0',
136
+ 'aliases' =>
137
+ array (
138
+ ),
139
+ 'reference' => 'b7dc0cd7a8f767ccac5e7637550ea1c50a67b09e',
140
+ ),
141
+ 'phpdocumentor/reflection-common' =>
142
+ array (
143
+ 'pretty_version' => '2.2.0',
144
+ 'version' => '2.2.0.0',
145
+ 'aliases' =>
146
+ array (
147
+ ),
148
+ 'reference' => '1d01c49d4ed62f25aa84a747ad35d5a16924662b',
149
+ ),
150
+ 'phpdocumentor/reflection-docblock' =>
151
+ array (
152
+ 'pretty_version' => '5.2.2',
153
+ 'version' => '5.2.2.0',
154
+ 'aliases' =>
155
+ array (
156
+ ),
157
+ 'reference' => '069a785b2141f5bcf49f3e353548dc1cce6df556',
158
+ ),
159
+ 'phpdocumentor/type-resolver' =>
160
+ array (
161
+ 'pretty_version' => '1.4.0',
162
+ 'version' => '1.4.0.0',
163
+ 'aliases' =>
164
+ array (
165
+ ),
166
+ 'reference' => '6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0',
167
+ ),
168
+ 'phpspec/prophecy' =>
169
+ array (
170
+ 'pretty_version' => '1.13.0',
171
+ 'version' => '1.13.0.0',
172
+ 'aliases' =>
173
+ array (
174
+ ),
175
+ 'reference' => 'be1996ed8adc35c3fd795488a653f4b518be70ea',
176
+ ),
177
+ 'phpunit/php-code-coverage' =>
178
+ array (
179
+ 'pretty_version' => '9.2.6',
180
+ 'version' => '9.2.6.0',
181
+ 'aliases' =>
182
+ array (
183
+ ),
184
+ 'reference' => 'f6293e1b30a2354e8428e004689671b83871edde',
185
+ ),
186
+ 'phpunit/php-file-iterator' =>
187
+ array (
188
+ 'pretty_version' => '3.0.5',
189
+ 'version' => '3.0.5.0',
190
+ 'aliases' =>
191
+ array (
192
+ ),
193
+ 'reference' => 'aa4be8575f26070b100fccb67faabb28f21f66f8',
194
+ ),
195
+ 'phpunit/php-invoker' =>
196
+ array (
197
+ 'pretty_version' => '3.1.1',
198
+ 'version' => '3.1.1.0',
199
+ 'aliases' =>
200
+ array (
201
+ ),
202
+ 'reference' => '5a10147d0aaf65b58940a0b72f71c9ac0423cc67',
203
+ ),
204
+ 'phpunit/php-text-template' =>
205
+ array (
206
+ 'pretty_version' => '2.0.4',
207
+ 'version' => '2.0.4.0',
208
+ 'aliases' =>
209
+ array (
210
+ ),
211
+ 'reference' => '5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28',
212
+ ),
213
+ 'phpunit/php-timer' =>
214
+ array (
215
+ 'pretty_version' => '5.0.3',
216
+ 'version' => '5.0.3.0',
217
+ 'aliases' =>
218
+ array (
219
+ ),
220
+ 'reference' => '5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2',
221
+ ),
222
+ 'phpunit/phpunit' =>
223
+ array (
224
+ 'pretty_version' => '9.5.4',
225
+ 'version' => '9.5.4.0',
226
+ 'aliases' =>
227
+ array (
228
+ ),
229
+ 'reference' => 'c73c6737305e779771147af66c96ca6a7ed8a741',
230
+ ),
231
+ 'sebastian/cli-parser' =>
232
+ array (
233
+ 'pretty_version' => '1.0.1',
234
+ 'version' => '1.0.1.0',
235
+ 'aliases' =>
236
+ array (
237
+ ),
238
+ 'reference' => '442e7c7e687e42adc03470c7b668bc4b2402c0b2',
239
+ ),
240
+ 'sebastian/code-unit' =>
241
+ array (
242
+ 'pretty_version' => '1.0.8',
243
+ 'version' => '1.0.8.0',
244
+ 'aliases' =>
245
+ array (
246
+ ),
247
+ 'reference' => '1fc9f64c0927627ef78ba436c9b17d967e68e120',
248
+ ),
249
+ 'sebastian/code-unit-reverse-lookup' =>
250
+ array (
251
+ 'pretty_version' => '2.0.3',
252
+ 'version' => '2.0.3.0',
253
+ 'aliases' =>
254
+ array (
255
+ ),
256
+ 'reference' => 'ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5',
257
+ ),
258
+ 'sebastian/comparator' =>
259
+ array (
260
+ 'pretty_version' => '4.0.6',
261
+ 'version' => '4.0.6.0',
262
+ 'aliases' =>
263
+ array (
264
+ ),
265
+ 'reference' => '55f4261989e546dc112258c7a75935a81a7ce382',
266
+ ),
267
+ 'sebastian/complexity' =>
268
+ array (
269
+ 'pretty_version' => '2.0.2',
270
+ 'version' => '2.0.2.0',
271
+ 'aliases' =>
272
+ array (
273
+ ),
274
+ 'reference' => '739b35e53379900cc9ac327b2147867b8b6efd88',
275
+ ),
276
+ 'sebastian/diff' =>
277
+ array (
278
+ 'pretty_version' => '4.0.4',
279
+ 'version' => '4.0.4.0',
280
+ 'aliases' =>
281
+ array (
282
+ ),
283
+ 'reference' => '3461e3fccc7cfdfc2720be910d3bd73c69be590d',
284
+ ),
285
+ 'sebastian/environment' =>
286
+ array (
287
+ 'pretty_version' => '5.1.3',
288
+ 'version' => '5.1.3.0',
289
+ 'aliases' =>
290
+ array (
291
+ ),
292
+ 'reference' => '388b6ced16caa751030f6a69e588299fa09200ac',
293
+ ),
294
+ 'sebastian/exporter' =>
295
+ array (
296
+ 'pretty_version' => '4.0.3',
297
+ 'version' => '4.0.3.0',
298
+ 'aliases' =>
299
+ array (
300
+ ),
301
+ 'reference' => 'd89cc98761b8cb5a1a235a6b703ae50d34080e65',
302
+ ),
303
+ 'sebastian/global-state' =>
304
+ array (
305
+ 'pretty_version' => '5.0.2',
306
+ 'version' => '5.0.2.0',
307
+ 'aliases' =>
308
+ array (
309
+ ),
310
+ 'reference' => 'a90ccbddffa067b51f574dea6eb25d5680839455',
311
+ ),
312
+ 'sebastian/lines-of-code' =>
313
+ array (
314
+ 'pretty_version' => '1.0.3',
315
+ 'version' => '1.0.3.0',
316
+ 'aliases' =>
317
+ array (
318
+ ),
319
+ 'reference' => 'c1c2e997aa3146983ed888ad08b15470a2e22ecc',
320
+ ),
321
+ 'sebastian/object-enumerator' =>
322
+ array (
323
+ 'pretty_version' => '4.0.4',
324
+ 'version' => '4.0.4.0',
325
+ 'aliases' =>
326
+ array (
327
+ ),
328
+ 'reference' => '5c9eeac41b290a3712d88851518825ad78f45c71',
329
+ ),
330
+ 'sebastian/object-reflector' =>
331
+ array (
332
+ 'pretty_version' => '2.0.4',
333
+ 'version' => '2.0.4.0',
334
+ 'aliases' =>
335
+ array (
336
+ ),
337
+ 'reference' => 'b4f479ebdbf63ac605d183ece17d8d7fe49c15c7',
338
+ ),
339
+ 'sebastian/recursion-context' =>
340
+ array (
341
+ 'pretty_version' => '4.0.4',
342
+ 'version' => '4.0.4.0',
343
+ 'aliases' =>
344
+ array (
345
+ ),
346
+ 'reference' => 'cd9d8cf3c5804de4341c283ed787f099f5506172',
347
+ ),
348
+ 'sebastian/resource-operations' =>
349
+ array (
350
+ 'pretty_version' => '3.0.3',
351
+ 'version' => '3.0.3.0',
352
+ 'aliases' =>
353
+ array (
354
+ ),
355
+ 'reference' => '0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8',
356
+ ),
357
+ 'sebastian/type' =>
358
+ array (
359
+ 'pretty_version' => '2.3.1',
360
+ 'version' => '2.3.1.0',
361
+ 'aliases' =>
362
+ array (
363
+ ),
364
+ 'reference' => '81cd61ab7bbf2de744aba0ea61fae32f721df3d2',
365
+ ),
366
+ 'sebastian/version' =>
367
+ array (
368
+ 'pretty_version' => '3.0.2',
369
+ 'version' => '3.0.2.0',
370
+ 'aliases' =>
371
+ array (
372
+ ),
373
+ 'reference' => 'c6c1022351a901512170118436c764e473f6de8c',
374
+ ),
375
+ 'squizlabs/php_codesniffer' =>
376
+ array (
377
+ 'pretty_version' => '3.6.0',
378
+ 'version' => '3.6.0.0',
379
+ 'aliases' =>
380
+ array (
381
+ ),
382
+ 'reference' => 'ffced0d2c8fa8e6cdc4d695a743271fab6c38625',
383
+ ),
384
+ 'symfony/polyfill-ctype' =>
385
+ array (
386
+ 'pretty_version' => 'v1.22.1',
387
+ 'version' => '1.22.1.0',
388
+ 'aliases' =>
389
+ array (
390
+ ),
391
+ 'reference' => 'c6c942b1ac76c82448322025e084cadc56048b4e',
392
+ ),
393
+ 'theseer/tokenizer' =>
394
+ array (
395
+ 'pretty_version' => '1.2.0',
396
+ 'version' => '1.2.0.0',
397
+ 'aliases' =>
398
+ array (
399
+ ),
400
+ 'reference' => '75a63c33a8577608444246075ea0af0d052e452a',
401
+ ),
402
+ 'webmozart/assert' =>
403
+ array (
404
+ 'pretty_version' => '1.10.0',
405
+ 'version' => '1.10.0.0',
406
+ 'aliases' =>
407
+ array (
408
+ ),
409
+ 'reference' => '6964c76c7804814a842473e0c8fd15bab0f18e25',
410
+ ),
411
+ 'wordpress/core-implementation' =>
412
+ array (
413
+ 'provided' =>
414
+ array (
415
+ 0 => '5.7.0',
416
+ ),
417
+ ),
418
+ ),
419
+ );
420
+ private static $canGetVendors;
421
+ private static $installedByVendor = array();
422
+
423
+
424
+
425
+
426
+
427
+
428
+
429
+ public static function getInstalledPackages()
430
+ {
431
+ $packages = array();
432
+ foreach (self::getInstalled() as $installed) {
433
+ $packages[] = array_keys($installed['versions']);
434
+ }
435
+
436
+
437
+ if (1 === \count($packages)) {
438
+ return $packages[0];
439
+ }
440
+
441
+ return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
442
+ }
443
+
444
+
445
+
446
+
447
+
448
+
449
+
450
+
451
+
452
+ public static function isInstalled($packageName)
453
+ {
454
+ foreach (self::getInstalled() as $installed) {
455
+ if (isset($installed['versions'][$packageName])) {
456
+ return true;
457
+ }
458
+ }
459
+
460
+ return false;
461
+ }
462
+
463
+
464
+
465
+
466
+
467
+
468
+
469
+
470
+
471
+
472
+
473
+
474
+
475
+
476
+ public static function satisfies(VersionParser $parser, $packageName, $constraint)
477
+ {
478
+ $constraint = $parser->parseConstraints($constraint);
479
+ $provided = $parser->parseConstraints(self::getVersionRanges($packageName));
480
+
481
+ return $provided->matches($constraint);
482
+ }
483
+
484
+
485
+
486
+
487
+
488
+
489
+
490
+
491
+
492
+
493
+ public static function getVersionRanges($packageName)
494
+ {
495
+ foreach (self::getInstalled() as $installed) {
496
+ if (!isset($installed['versions'][$packageName])) {
497
+ continue;
498
+ }
499
+
500
+ $ranges = array();
501
+ if (isset($installed['versions'][$packageName]['pretty_version'])) {
502
+ $ranges[] = $installed['versions'][$packageName]['pretty_version'];
503
+ }
504
+ if (array_key_exists('aliases', $installed['versions'][$packageName])) {
505
+ $ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']);
506
+ }
507
+ if (array_key_exists('replaced', $installed['versions'][$packageName])) {
508
+ $ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
509
+ }
510
+ if (array_key_exists('provided', $installed['versions'][$packageName])) {
511
+ $ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
512
+ }
513
+
514
+ return implode(' || ', $ranges);
515
+ }
516
+
517
+ throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
518
+ }
519
+
520
+
521
+
522
+
523
+
524
+ public static function getVersion($packageName)
525
+ {
526
+ foreach (self::getInstalled() as $installed) {
527
+ if (!isset($installed['versions'][$packageName])) {
528
+ continue;
529
+ }
530
+
531
+ if (!isset($installed['versions'][$packageName]['version'])) {
532
+ return null;
533
+ }
534
+
535
+ return $installed['versions'][$packageName]['version'];
536
+ }
537
+
538
+ throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
539
+ }
540
+
541
+
542
+
543
+
544
+
545
+ public static function getPrettyVersion($packageName)
546
+ {
547
+ foreach (self::getInstalled() as $installed) {
548
+ if (!isset($installed['versions'][$packageName])) {
549
+ continue;
550
+ }
551
+
552
+ if (!isset($installed['versions'][$packageName]['pretty_version'])) {
553
+ return null;
554
+ }
555
+
556
+ return $installed['versions'][$packageName]['pretty_version'];
557
+ }
558
+
559
+ throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
560
+ }
561
+
562
+
563
+
564
+
565
+
566
+ public static function getReference($packageName)
567
+ {
568
+ foreach (self::getInstalled() as $installed) {
569
+ if (!isset($installed['versions'][$packageName])) {
570
+ continue;
571
+ }
572
+
573
+ if (!isset($installed['versions'][$packageName]['reference'])) {
574
+ return null;
575
+ }
576
+
577
+ return $installed['versions'][$packageName]['reference'];
578
+ }
579
+
580
+ throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
581
+ }
582
+
583
+
584
+
585
+
586
+
587
+ public static function getRootPackage()
588
+ {
589
+ $installed = self::getInstalled();
590
+
591
+ return $installed[0]['root'];
592
+ }
593
+
594
+
595
+
596
+
597
+
598
+
599
+
600
+ public static function getRawData()
601
+ {
602
+ return self::$installed;
603
+ }
604
+
605
+
606
+
607
+
608
+
609
+
610
+
611
+
612
+
613
+
614
+
615
+
616
+
617
+
618
+
619
+
620
+
621
+
622
+
623
+ public static function reload($data)
624
+ {
625
+ self::$installed = $data;
626
+ self::$installedByVendor = array();
627
+ }
628
+
629
+
630
+
631
+
632
+ private static function getInstalled()
633
+ {
634
+ if (null === self::$canGetVendors) {
635
+ self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders');
636
+ }
637
+
638
+ $installed = array();
639
+
640
+ if (self::$canGetVendors) {
641
+ foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
642
+ if (isset(self::$installedByVendor[$vendorDir])) {
643
+ $installed[] = self::$installedByVendor[$vendorDir];
644
+ } elseif (is_file($vendorDir.'/composer/installed.php')) {
645
+ $installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
646
+ }
647
+ }
648
+ }
649
+
650
+ $installed[] = self::$installed;
651
+
652
+ return $installed;
653
+ }
654
+ }
extendify-sdk/vendor/composer/LICENSE ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ Copyright (c) Nils Adermann, Jordi Boggiano
3
+
4
+ Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ of this software and associated documentation files (the "Software"), to deal
6
+ in the Software without restriction, including without limitation the rights
7
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ copies of the Software, and to permit persons to whom the Software is furnished
9
+ to do so, subject to the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be included in all
12
+ copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20
+ THE SOFTWARE.
21
+
extendify-sdk/vendor/composer/autoload_classmap.php ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // autoload_classmap.php @generated by Composer
4
+
5
+ $vendorDir = dirname(dirname(__FILE__));
6
+ $baseDir = dirname($vendorDir);
7
+
8
+ return array(
9
+ );
extendify-sdk/vendor/composer/autoload_namespaces.php ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // autoload_namespaces.php @generated by Composer
4
+
5
+ $vendorDir = dirname(dirname(__FILE__));
6
+ $baseDir = dirname($vendorDir);
7
+
8
+ return array(
9
+ );
extendify-sdk/vendor/composer/autoload_psr4.php ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // autoload_psr4.php @generated by Composer
4
+
5
+ $vendorDir = dirname(dirname(__FILE__));
6
+ $baseDir = dirname($vendorDir);
7
+
8
+ return array(
9
+ 'Extendify\\ExtendifySdk\\' => array($baseDir . '/app'),
10
+ );
extendify-sdk/vendor/composer/autoload_real.php ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // autoload_real.php @generated by Composer
4
+
5
+ class ComposerAutoloaderInit340a6822f05e2bfceab6432d90c2eeaa
6
+ {
7
+ private static $loader;
8
+
9
+ public static function loadClassLoader($class)
10
+ {
11
+ if ('Composer\Autoload\ClassLoader' === $class) {
12
+ require __DIR__ . '/ClassLoader.php';
13
+ }
14
+ }
15
+
16
+ /**
17
+ * @return \Composer\Autoload\ClassLoader
18
+ */
19
+ public static function getLoader()
20
+ {
21
+ if (null !== self::$loader) {
22
+ return self::$loader;
23
+ }
24
+
25
+ spl_autoload_register(array('ComposerAutoloaderInit340a6822f05e2bfceab6432d90c2eeaa', 'loadClassLoader'), true, true);
26
+ self::$loader = $loader = new \Composer\Autoload\ClassLoader();
27
+ spl_autoload_unregister(array('ComposerAutoloaderInit340a6822f05e2bfceab6432d90c2eeaa', 'loadClassLoader'));
28
+
29
+ $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
30
+ if ($useStaticLoader) {
31
+ require_once __DIR__ . '/autoload_static.php';
32
+
33
+ call_user_func(\Composer\Autoload\ComposerStaticInit340a6822f05e2bfceab6432d90c2eeaa::getInitializer($loader));
34
+ } else {
35
+ $map = require __DIR__ . '/autoload_namespaces.php';
36
+ foreach ($map as $namespace => $path) {
37
+ $loader->set($namespace, $path);
38
+ }
39
+
40
+ $map = require __DIR__ . '/autoload_psr4.php';
41
+ foreach ($map as $namespace => $path) {
42
+ $loader->setPsr4($namespace, $path);
43
+ }
44
+
45
+ $classMap = require __DIR__ . '/autoload_classmap.php';
46
+ if ($classMap) {
47
+ $loader->addClassMap($classMap);
48
+ }
49
+ }
50
+
51
+ $loader->register(true);
52
+
53
+ return $loader;
54
+ }
55
+ }
extendify-sdk/vendor/composer/autoload_static.php ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // autoload_static.php @generated by Composer
4
+
5
+ namespace Composer\Autoload;
6
+
7
+ class ComposerStaticInit340a6822f05e2bfceab6432d90c2eeaa
8
+ {
9
+ public static $prefixLengthsPsr4 = array (
10
+ 'E' =>
11
+ array (
12
+ 'Extendify\\ExtendifySdk\\' => 23,
13
+ ),
14
+ );
15
+
16
+ public static $prefixDirsPsr4 = array (
17
+ 'Extendify\\ExtendifySdk\\' =>
18
+ array (
19
+ 0 => __DIR__ . '/../..' . '/app',
20
+ ),
21
+ );
22
+
23
+ public static function getInitializer(ClassLoader $loader)
24
+ {
25
+ return \Closure::bind(function () use ($loader) {
26
+ $loader->prefixLengthsPsr4 = ComposerStaticInit340a6822f05e2bfceab6432d90c2eeaa::$prefixLengthsPsr4;
27
+ $loader->prefixDirsPsr4 = ComposerStaticInit340a6822f05e2bfceab6432d90c2eeaa::$prefixDirsPsr4;
28
+
29
+ }, null, ClassLoader::class);
30
+ }
31
+ }
extendify-sdk/vendor/composer/installed.json ADDED
@@ -0,0 +1 @@
 
1
+ []
extendify-sdk/vendor/composer/installed.php ADDED
@@ -0,0 +1,395 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php return array (
2
+ 'root' =>
3
+ array (
4
+ 'pretty_version' => 'dev-main',
5
+ 'version' => 'dev-main',
6
+ 'aliases' =>
7
+ array (
8
+ ),
9
+ 'reference' => 'ac2cfec95277e7980dfcf8dfde5cd858f1023e03',
10
+ 'name' => 'extendify/extendify-sdk',
11
+ ),
12
+ 'versions' =>
13
+ array (
14
+ 'dealerdirect/phpcodesniffer-composer-installer' =>
15
+ array (
16
+ 'pretty_version' => 'v0.7.1',
17
+ 'version' => '0.7.1.0',
18
+ 'aliases' =>
19
+ array (
20
+ ),
21
+ 'reference' => 'fe390591e0241955f22eb9ba327d137e501c771c',
22
+ ),
23
+ 'doctrine/instantiator' =>
24
+ array (
25
+ 'pretty_version' => '1.4.0',
26
+ 'version' => '1.4.0.0',
27
+ 'aliases' =>
28
+ array (
29
+ ),
30
+ 'reference' => 'd56bf6102915de5702778fe20f2de3b2fe570b5b',
31
+ ),
32
+ 'extendify/extendify-sdk' =>
33
+ array (
34
+ 'pretty_version' => 'dev-main',
35
+ 'version' => 'dev-main',
36
+ 'aliases' =>
37
+ array (
38
+ ),
39
+ 'reference' => 'ac2cfec95277e7980dfcf8dfde5cd858f1023e03',
40
+ ),
41
+ 'johnpbloch/wordpress-core' =>
42
+ array (
43
+ 'pretty_version' => '5.7.0',
44
+ 'version' => '5.7.0.0',
45
+ 'aliases' =>
46
+ array (
47
+ ),
48
+ 'reference' => '8b057056692ca196aaa7a7ddd915f29426922c6d',
49
+ ),
50
+ 'myclabs/deep-copy' =>
51
+ array (
52
+ 'pretty_version' => '1.10.2',
53
+ 'version' => '1.10.2.0',
54
+ 'aliases' =>
55
+ array (
56
+ ),
57
+ 'reference' => '776f831124e9c62e1a2c601ecc52e776d8bb7220',
58
+ 'replaced' =>
59
+ array (
60
+ 0 => '1.10.2',
61
+ ),
62
+ ),
63
+ 'nikic/php-parser' =>
64
+ array (
65
+ 'pretty_version' => 'v4.10.4',
66
+ 'version' => '4.10.4.0',
67
+ 'aliases' =>
68
+ array (
69
+ ),
70
+ 'reference' => 'c6d052fc58cb876152f89f532b95a8d7907e7f0e',
71
+ ),
72
+ 'phar-io/manifest' =>
73
+ array (
74
+ 'pretty_version' => '2.0.1',
75
+ 'version' => '2.0.1.0',
76
+ 'aliases' =>
77
+ array (
78
+ ),
79
+ 'reference' => '85265efd3af7ba3ca4b2a2c34dbfc5788dd29133',
80
+ ),
81
+ 'phar-io/version' =>
82
+ array (
83
+ 'pretty_version' => '3.1.0',
84
+ 'version' => '3.1.0.0',
85
+ 'aliases' =>
86
+ array (
87
+ ),
88
+ 'reference' => 'bae7c545bef187884426f042434e561ab1ddb182',
89
+ ),
90
+ 'phpcompatibility/php-compatibility' =>
91
+ array (
92
+ 'pretty_version' => '9.3.5',
93
+ 'version' => '9.3.5.0',
94
+ 'aliases' =>
95
+ array (
96
+ ),
97
+ 'reference' => '9fb324479acf6f39452e0655d2429cc0d3914243',
98
+ ),
99
+ 'phpcompatibility/phpcompatibility-paragonie' =>
100
+ array (
101
+ 'pretty_version' => '1.3.1',
102
+ 'version' => '1.3.1.0',
103
+ 'aliases' =>
104
+ array (
105
+ ),
106
+ 'reference' => 'ddabec839cc003651f2ce695c938686d1086cf43',
107
+ ),
108
+ 'phpcompatibility/phpcompatibility-wp' =>
109
+ array (
110
+ 'pretty_version' => '2.1.1',
111
+ 'version' => '2.1.1.0',
112
+ 'aliases' =>
113
+ array (
114
+ ),
115
+ 'reference' => 'b7dc0cd7a8f767ccac5e7637550ea1c50a67b09e',
116
+ ),
117
+ 'phpdocumentor/reflection-common' =>
118
+ array (
119
+ 'pretty_version' => '2.2.0',
120
+ 'version' => '2.2.0.0',
121
+ 'aliases' =>
122
+ array (
123
+ ),
124
+ 'reference' => '1d01c49d4ed62f25aa84a747ad35d5a16924662b',
125
+ ),
126
+ 'phpdocumentor/reflection-docblock' =>
127
+ array (
128
+ 'pretty_version' => '5.2.2',
129
+ 'version' => '5.2.2.0',
130
+ 'aliases' =>
131
+ array (
132
+ ),
133
+ 'reference' => '069a785b2141f5bcf49f3e353548dc1cce6df556',
134
+ ),
135
+ 'phpdocumentor/type-resolver' =>
136
+ array (
137
+ 'pretty_version' => '1.4.0',
138
+ 'version' => '1.4.0.0',
139
+ 'aliases' =>
140
+ array (
141
+ ),
142
+ 'reference' => '6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0',
143
+ ),
144
+ 'phpspec/prophecy' =>
145
+ array (
146
+ 'pretty_version' => '1.13.0',
147
+ 'version' => '1.13.0.0',
148
+ 'aliases' =>
149
+ array (
150
+ ),
151
+ 'reference' => 'be1996ed8adc35c3fd795488a653f4b518be70ea',
152
+ ),
153
+ 'phpunit/php-code-coverage' =>
154
+ array (
155
+ 'pretty_version' => '9.2.6',
156
+ 'version' => '9.2.6.0',
157
+ 'aliases' =>
158
+ array (
159
+ ),
160
+ 'reference' => 'f6293e1b30a2354e8428e004689671b83871edde',
161
+ ),
162
+ 'phpunit/php-file-iterator' =>
163
+ array (
164
+ 'pretty_version' => '3.0.5',
165
+ 'version' => '3.0.5.0',
166
+ 'aliases' =>
167
+ array (
168
+ ),
169
+ 'reference' => 'aa4be8575f26070b100fccb67faabb28f21f66f8',
170
+ ),
171
+ 'phpunit/php-invoker' =>
172
+ array (
173
+ 'pretty_version' => '3.1.1',
174
+ 'version' => '3.1.1.0',
175
+ 'aliases' =>
176
+ array (
177
+ ),
178
+ 'reference' => '5a10147d0aaf65b58940a0b72f71c9ac0423cc67',
179
+ ),
180
+ 'phpunit/php-text-template' =>
181
+ array (
182
+ 'pretty_version' => '2.0.4',
183
+ 'version' => '2.0.4.0',
184
+ 'aliases' =>
185
+ array (
186
+ ),
187
+ 'reference' => '5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28',
188
+ ),
189
+ 'phpunit/php-timer' =>
190
+ array (
191
+ 'pretty_version' => '5.0.3',
192
+ 'version' => '5.0.3.0',
193
+ 'aliases' =>
194
+ array (
195
+ ),
196
+ 'reference' => '5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2',
197
+ ),
198
+ 'phpunit/phpunit' =>
199
+ array (
200
+ 'pretty_version' => '9.5.4',
201
+ 'version' => '9.5.4.0',
202
+ 'aliases' =>
203
+ array (
204
+ ),
205
+ 'reference' => 'c73c6737305e779771147af66c96ca6a7ed8a741',
206
+ ),
207
+ 'sebastian/cli-parser' =>
208
+ array (
209
+ 'pretty_version' => '1.0.1',
210
+ 'version' => '1.0.1.0',
211
+ 'aliases' =>
212
+ array (
213
+ ),
214
+ 'reference' => '442e7c7e687e42adc03470c7b668bc4b2402c0b2',
215
+ ),
216
+ 'sebastian/code-unit' =>
217
+ array (
218
+ 'pretty_version' => '1.0.8',
219
+ 'version' => '1.0.8.0',
220
+ 'aliases' =>
221
+ array (
222
+ ),
223
+ 'reference' => '1fc9f64c0927627ef78ba436c9b17d967e68e120',
224
+ ),
225
+ 'sebastian/code-unit-reverse-lookup' =>
226
+ array (
227
+ 'pretty_version' => '2.0.3',
228
+ 'version' => '2.0.3.0',
229
+ 'aliases' =>
230
+ array (
231
+ ),
232
+ 'reference' => 'ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5',
233
+ ),
234
+ 'sebastian/comparator' =>
235
+ array (
236
+ 'pretty_version' => '4.0.6',
237
+ 'version' => '4.0.6.0',
238
+ 'aliases' =>
239
+ array (
240
+ ),
241
+ 'reference' => '55f4261989e546dc112258c7a75935a81a7ce382',
242
+ ),
243
+ 'sebastian/complexity' =>
244
+ array (
245
+ 'pretty_version' => '2.0.2',
246
+ 'version' => '2.0.2.0',
247
+ 'aliases' =>
248
+ array (
249
+ ),
250
+ 'reference' => '739b35e53379900cc9ac327b2147867b8b6efd88',
251
+ ),
252
+ 'sebastian/diff' =>
253
+ array (
254
+ 'pretty_version' => '4.0.4',
255
+ 'version' => '4.0.4.0',
256
+ 'aliases' =>
257
+ array (
258
+ ),
259
+ 'reference' => '3461e3fccc7cfdfc2720be910d3bd73c69be590d',
260
+ ),
261
+ 'sebastian/environment' =>
262
+ array (
263
+ 'pretty_version' => '5.1.3',
264
+ 'version' => '5.1.3.0',
265
+ 'aliases' =>
266
+ array (
267
+ ),
268
+ 'reference' => '388b6ced16caa751030f6a69e588299fa09200ac',
269
+ ),
270
+ 'sebastian/exporter' =>
271
+ array (
272
+ 'pretty_version' => '4.0.3',
273
+ 'version' => '4.0.3.0',
274
+ 'aliases' =>
275
+ array (
276
+ ),
277
+ 'reference' => 'd89cc98761b8cb5a1a235a6b703ae50d34080e65',
278
+ ),
279
+ 'sebastian/global-state' =>
280
+ array (
281
+ 'pretty_version' => '5.0.2',
282
+ 'version' => '5.0.2.0',
283
+ 'aliases' =>
284
+ array (
285
+ ),
286
+ 'reference' => 'a90ccbddffa067b51f574dea6eb25d5680839455',
287
+ ),
288
+ 'sebastian/lines-of-code' =>
289
+ array (
290
+ 'pretty_version' => '1.0.3',
291
+ 'version' => '1.0.3.0',
292
+ 'aliases' =>
293
+ array (
294
+ ),
295
+ 'reference' => 'c1c2e997aa3146983ed888ad08b15470a2e22ecc',
296
+ ),
297
+ 'sebastian/object-enumerator' =>
298
+ array (
299
+ 'pretty_version' => '4.0.4',
300
+ 'version' => '4.0.4.0',
301
+ 'aliases' =>
302
+ array (
303
+ ),
304
+ 'reference' => '5c9eeac41b290a3712d88851518825ad78f45c71',
305
+ ),
306
+ 'sebastian/object-reflector' =>
307
+ array (
308
+ 'pretty_version' => '2.0.4',
309
+ 'version' => '2.0.4.0',
310
+ 'aliases' =>
311
+ array (
312
+ ),
313
+ 'reference' => 'b4f479ebdbf63ac605d183ece17d8d7fe49c15c7',
314
+ ),
315
+ 'sebastian/recursion-context' =>
316
+ array (
317
+ 'pretty_version' => '4.0.4',
318
+ 'version' => '4.0.4.0',
319
+ 'aliases' =>
320
+ array (
321
+ ),
322
+ 'reference' => 'cd9d8cf3c5804de4341c283ed787f099f5506172',
323
+ ),
324
+ 'sebastian/resource-operations' =>
325
+ array (
326
+ 'pretty_version' => '3.0.3',
327
+ 'version' => '3.0.3.0',
328
+ 'aliases' =>
329
+ array (
330
+ ),
331
+ 'reference' => '0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8',
332
+ ),
333
+ 'sebastian/type' =>
334
+ array (
335
+ 'pretty_version' => '2.3.1',
336
+ 'version' => '2.3.1.0',
337
+ 'aliases' =>
338
+ array (
339
+ ),
340
+ 'reference' => '81cd61ab7bbf2de744aba0ea61fae32f721df3d2',
341
+ ),
342
+ 'sebastian/version' =>
343
+ array (
344
+ 'pretty_version' => '3.0.2',
345
+ 'version' => '3.0.2.0',
346
+ 'aliases' =>
347
+ array (
348
+ ),
349
+ 'reference' => 'c6c1022351a901512170118436c764e473f6de8c',
350
+ ),
351
+ 'squizlabs/php_codesniffer' =>
352
+ array (
353
+ 'pretty_version' => '3.6.0',
354
+ 'version' => '3.6.0.0',
355
+ 'aliases' =>
356
+ array (
357
+ ),
358
+ 'reference' => 'ffced0d2c8fa8e6cdc4d695a743271fab6c38625',
359
+ ),
360
+ 'symfony/polyfill-ctype' =>
361
+ array (
362
+ 'pretty_version' => 'v1.22.1',
363
+ 'version' => '1.22.1.0',
364
+ 'aliases' =>
365
+ array (
366
+ ),
367
+ 'reference' => 'c6c942b1ac76c82448322025e084cadc56048b4e',
368
+ ),
369
+ 'theseer/tokenizer' =>
370
+ array (
371
+ 'pretty_version' => '1.2.0',
372
+ 'version' => '1.2.0.0',
373
+ 'aliases' =>
374
+ array (
375
+ ),
376
+ 'reference' => '75a63c33a8577608444246075ea0af0d052e452a',
377
+ ),
378
+ 'webmozart/assert' =>
379
+ array (
380
+ 'pretty_version' => '1.10.0',
381
+ 'version' => '1.10.0.0',
382
+ 'aliases' =>
383
+ array (
384
+ ),
385
+ 'reference' => '6964c76c7804814a842473e0c8fd15bab0f18e25',
386
+ ),
387
+ 'wordpress/core-implementation' =>
388
+ array (
389
+ 'provided' =>
390
+ array (
391
+ 0 => '5.7.0',
392
+ ),
393
+ ),
394
+ ),
395
+ );
extendify-sdk/webpack.config.js ADDED
@@ -0,0 +1,140 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ const webpack = require('webpack')
2
+ const path = require('path')
3
+ const NODE_ENV = process.env.NODE_ENV || 'development'
4
+ const MiniCssExtractPlugin = require('mini-css-extract-plugin')
5
+ const ImageminPlugin = require('imagemin-webpack')
6
+ const RemoveEmptyScriptsPlugin = require('webpack-remove-empty-scripts')
7
+
8
+ /**
9
+ * Utility methods for use when generating build configuration objects.
10
+ */
11
+ const { join } = require('path')
12
+
13
+ /**
14
+ * Given a string, returns a new string with dash separators converted to
15
+ * camel-case equivalent. This is not as aggressive as `_.camelCase`, which
16
+ * which would also upper-case letters following numbers.
17
+ *
18
+ * @param {string} string Input dash-delimited string.
19
+ *
20
+ * @return {string} Camel-cased string.
21
+ */
22
+ const camelCaseDash = (string) => string.replace(/-([a-z])/g, (_match, letter) => letter.toUpperCase())
23
+
24
+ /**
25
+ * Define externals to load components through the wp global.
26
+ */
27
+ const externals = [
28
+ 'api-fetch',
29
+ 'block-editor',
30
+ 'blocks',
31
+ 'components',
32
+ 'compose',
33
+ 'data',
34
+ 'date',
35
+ 'htmlEntities',
36
+ 'hooks',
37
+ 'edit-post',
38
+ 'element',
39
+ 'editor',
40
+ 'i18n',
41
+ 'plugins',
42
+ 'viewport',
43
+ 'ajax',
44
+ 'codeEditor',
45
+ 'rich-text',
46
+ ].reduce(
47
+ (externals, name) => ({
48
+ ...externals,
49
+ [`@wordpress/${name}`]: `wp.${camelCaseDash(name)}`,
50
+ }),
51
+ {
52
+ wp: 'wp',
53
+ lodash: 'lodash', // WP loads lodash already.
54
+ fetch: 'fetch', // Used in our debugger sidebar.
55
+ react: 'React',
56
+ 'react-dom': 'ReactDOM',
57
+ },
58
+ )
59
+
60
+ module.exports = externals
61
+
62
+ module.exports = {
63
+ mode: NODE_ENV,
64
+ entry: {
65
+ ['extendify-sdk']: ['./src/index.js', './src/style.scss'],
66
+ },
67
+ output: {
68
+ path: path.join(__dirname, './public/build'),
69
+ filename: '[name].js',
70
+ },
71
+ externals: {
72
+ lodash: 'lodash',
73
+ ...externals,
74
+ },
75
+
76
+ module: {
77
+ rules: [
78
+ {
79
+ test: /\.svg$/,
80
+ use: ['@svgr/webpack'], // Settings are in .svgrrc
81
+ },
82
+ {
83
+ test: /.js?$/,
84
+ use: [
85
+ {
86
+ loader: 'babel-loader',
87
+ options: {
88
+ presets: ['@babel/preset-env'],
89
+ plugins: [
90
+ '@babel/plugin-transform-async-to-generator',
91
+ '@babel/plugin-proposal-object-rest-spread',
92
+ [
93
+ '@babel/plugin-transform-react-jsx',
94
+ {
95
+ pragma: 'wp.element.createElement',
96
+ },
97
+ ],
98
+ ],
99
+ },
100
+ },
101
+ ],
102
+ exclude: /node_modules/,
103
+ },
104
+ {
105
+ test: /\.(css|scss)$/,
106
+ use: [
107
+ {
108
+ loader: MiniCssExtractPlugin.loader,
109
+ },
110
+ 'css-loader',
111
+ {
112
+ loader: 'postcss-loader',
113
+ options: {
114
+ postcssOptions: {
115
+ plugins: ["postcss-preset-env"],
116
+ }
117
+ },
118
+ },
119
+ 'sass-loader',
120
+ ],
121
+ },
122
+ ],
123
+ },
124
+ plugins: [
125
+ new webpack.DefinePlugin({
126
+ 'process.env.NODE_ENV': JSON.stringify(NODE_ENV),
127
+ }),
128
+ new MiniCssExtractPlugin({
129
+ filename: '[name].css',
130
+ }),
131
+ new RemoveEmptyScriptsPlugin(),
132
+ new ImageminPlugin({
133
+ bail: false,
134
+ cache: true,
135
+ imageminOptions: {
136
+ plugins: [['pngquant', { quality: [0.5, 0.5] }]],
137
+ },
138
+ }),
139
+ ],
140
+ }
readme.txt CHANGED
@@ -3,8 +3,8 @@ Contributors: munirkamal, freemius
3
  Tags: block, gutenberg block, acf block, gutenberg, acf, editor
4
  Requires at least: 5.0
5
  Requires PHP: 5.6
6
- Tested up to: 5.5.1
7
- Stable tag: 2.5.1
8
  License: GPLv2 or later
9
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -80,6 +80,27 @@ Visit <a href="https://www.acfblocks.com/?utm_source=wp-repo&utm_medium=link&utm
80
 
81
  <strong>Important Note:</strong> ACF Blocks is built on-top of Advanced Custom Fields Pro. This plugin requires ACF Pro to function. Make sure you have ACF Pro installed and activated.
82
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83
  == Installation ==
84
 
85
  <strong>Important Note:</strong> ACF Blocks is built on-top of Advanced Custom Fields Pro. This plugin requires ACF Pro to function. Make sure you have ACF Pro installed and activated.
@@ -144,8 +165,8 @@ Absolutely! You can definitely use the ACF Blocks on yours as well as your clien
144
 
145
  == Changelog ==
146
 
147
- = 2.5.1 =
148
- * Updated Freemius SDK
149
 
150
  = 2.5.0 =
151
  * Added Random Image Block (Free)
3
  Tags: block, gutenberg block, acf block, gutenberg, acf, editor
4
  Requires at least: 5.0
5
  Requires PHP: 5.6
6
+ Tested up to: 5.7
7
+ Stable tag: 2.6.0
8
  License: GPLv2 or later
9
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
10
 
80
 
81
  <strong>Important Note:</strong> ACF Blocks is built on-top of Advanced Custom Fields Pro. This plugin requires ACF Pro to function. Make sure you have ACF Pro installed and activated.
82
 
83
+ ## Template and Pattern Library
84
+
85
+ ACF Blocks Suite now includes access to the Extendify template and pattern library that can be accessed by clicking the "Library" button in the menu bar of the editor. We provide a variety of templates and patterns to serve different use cases and are adding more templates every week.
86
+
87
+ Note: Templates and patterns rely on blocks and styling applied by the Editor Plus plugin. The Editor Plus plugin is required when importing a template or pattern. If you uninstall Editor Plus, the templates and patterns will still display on your site, but the styling may be affected. Additionally, stock images included in the templates are hosted on GutenbergHub.com. We recommend replacing the images or adding them to your media library directly.
88
+
89
+ ## Privacy
90
+
91
+ ACF Blocks Suite uses a custom API to fetch templates and patterns from the Extendify template and pattern library. To improve the service and stability we store logs which may contain the following:
92
+
93
+ * browser type
94
+ * referring site
95
+ * date and time of request
96
+ * category selection or search term
97
+ * anonymized IP address
98
+
99
+ API requests are only made when a user clicks on the Library button.
100
+
101
+ For more details on our privacy policy: https://acfblocks.com/privacy-policy/
102
+ For more details on our terms of service: https://acfblocks.com/terms-of-service/
103
+
104
  == Installation ==
105
 
106
  <strong>Important Note:</strong> ACF Blocks is built on-top of Advanced Custom Fields Pro. This plugin requires ACF Pro to function. Make sure you have ACF Pro installed and activated.
165
 
166
  == Changelog ==
167
 
168
+ = 2.6.0 =
169
+ * New: Access to the Extendify template and pattern library
170
 
171
  = 2.5.0 =
172
  * Added Random Image Block (Free)